[STDC_HEADERS]: Include stddef.h.
[bpt/emacs.git] / src / ChangeLog
1 2006-04-08 Eli Zaretskii <eliz@gnu.org>
2
3 * alloc.c [STDC_HEADERS]: Include stddef.h.
4
5 * lisp.h (PSEUDOVECSIZE): Fix last change.
6
7 2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
8
9 * process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
10 `raw_status_high', and `raw_status_low' with plain integers, and move
11 them to the end of the structure.
12
13 * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
14 pseudovector's size field so only the Lisp_Object fields get GC'd.
15
16 * process.c (update_status, make_process, Fdelete_process)
17 (Fprocess_status, list_processes_1, start_process_unwind)
18 (create_process, Fmake_network_process, server_accept_connection)
19 (wait_reading_process_output, send_process, Fprocess_running_child_p)
20 (process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
21 (sigchld_handler, status_notify): Adjust to new non-Lisp fields for
22 `pid' and `raw_status'.
23 (Fprocess_id, Fsignal_process): Same, and additionally use floats when
24 representing PIDs that are larger than most-positive-fixnum.
25
26 * keymap.c (describe_map): Only use XINT if we checked INTEGERP.
27
28 * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
29
30 2006-04-08 Eli Zaretskii <eliz@gnu.org>
31
32 * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
33
34 2006-04-03 Paul Eggert <eggert@cs.ucla.edu>
35
36 * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
37 ../lib-src/b2m.c and ../lib-src/editfns.c.
38 (Fcurrent_time_string): Use it.
39 Document that the year might not consume 4 columns if it's outside
40 the range 1000-9999.
41 Check for asctime failure.
42 Don't assume that the output string length is always exactly 24.
43
44 2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
45
46 * macterm.c (XTread_socket): Initialize variable `f' before its use.
47
48 2006-04-03 Kenichi Handa <handa@m17n.org>
49
50 * image.c: Include "charset.h" and "coding.h".
51 (x_find_image_file): Return an encoded file name.
52
53 2006-04-01 Eli Zaretskii <eliz@gnu.org>
54
55 * configure: Regenerated.
56
57 2006-03-31 Kenichi Handa <handa@m17n.org>
58
59 * xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
60
61 2006-03-30 Dan Nicolaescu <dann@ics.uci.edu>
62
63 * xdisp.c (syms_of_xdisp): Fix variable name.
64
65 2006-03-30 Kenichi Handa <handa@m17n.org>
66
67 * xterm.c (x_term_init): Delete superfluous UNGCPRO.
68
69 2006-03-29 Juanma Barranquero <lekktu@gmail.com>
70
71 * keyboard.c (process_tool_bar_item): Reorder dummy args.
72
73 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
74
75 * keyboard.c (tool_bar_items): Use map_keymap.
76 (process_tool_bar_item): Add dummy args to fit the required interface.
77
78 2006-03-25 Eli Zaretskii <eliz@gnu.org>
79
80 * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
81 to zero before calling debug_print or safe_debug_print.
82
83 * print.c (print_output_debug_flag): New global variable.
84 (Fexternal_debugging_output) [WINDOWSNT]: Don't call
85 OutputDebugString if print_output_debug_flag is zero.
86
87 2006-03-24 Paul Eggert <eggert@cs.ucla.edu>
88
89 * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
90 (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
91 (Fdecode_time): Cast tm_year to EMACS_INT.
92 (Fcurrent_time_string): Report an invalid time specification if
93 the argument is invalid. Also, check for out-of-range time stamps.
94
95 2006-03-24 Kim F. Storm <storm@cua.dk>
96
97 * xterm.c (handle_one_xevent):
98 * w32term.c (w32_read_socket):
99 * macterm.c (XTread_socket): Don't let key-press clear mouse face
100 on in toolbar window if mouse-highlight is an integer.
101
102 * fns.c (sxhash_list): Include last non-nil CDR in hash.
103
104 2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
105
106 * macmenu.c (enum mac_menu_kind): New enum.
107 (min_menu_id): New variable.
108 (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
109 (MIN_SUBMENU_ID): Remove defines. All uses are replaced with
110 min_menu_id and enumerators in enum mac_menu_kind.
111 (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
112 All uses changed. Add range check for menu ID.
113 (fill_menubar): Add range check for menu ID.
114 [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
115 GetEventParameter.
116 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
117 for each menu kind.
118
119 2006-03-22 Kim F. Storm <storm@cua.dk>
120
121 * xdisp.c: Undo 2006-03-21 change.
122
123 * term.c: Define aliases for append_glyph and produce_stretch_glyph
124 when `static' is defined to avoid name clash with those in xdisp.c.
125
126 * process.c (Faccept_process_output): Fix to comply with lisp reference.
127 Change arg "timeout" to "seconds" and allow both integer and float value.
128 Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
129 rather than microseconds. Fix doc string accordingly.
130
131 2006-03-21 Ken Raeburn <raeburn@raeburn.org>
132
133 * xdisp.c (store_next_glyph): Rename from append_glyph.
134 (generate_stretch_glyph): Rename from produce_stretch_glyph.
135 All callers changed accordingly.
136
137 2006-03-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
138
139 * xterm.c: x_session_initialized new variable.
140 (x_term_init): Use x_session_initialized to check if
141 x_session_initialize should be called.
142 (x_initialize): Initialize x_session_initialized.
143
144 2006-03-21 Kim F. Storm <storm@cua.dk>
145
146 * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
147 bitmap here, but ...
148 (update_window_fringes): ... here, so we can test if it has changed.
149
150 2006-03-20 Andreas Schwab <schwab@suse.de>
151
152 * dispnew.c (init_display): Check DISPLAY here.
153
154 * emacs.c (main): Don't check here.
155
156 * xterm.c (x_display_ok): Don't use DISPLAY env var.
157
158 2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
159
160 * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
161 mixup (YAILOM).
162
163 2006-03-20 Eli Zaretskii <eliz@gnu.org>
164
165 * emacs.c (main): Fix last change.
166
167 2006-03-20 Kenichi Handa <handa@m17n.org>
168
169 * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
170
171 * keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
172
173 * xfns.c (xg_set_icon): Remove unnecessary GCPRO.
174
175 * xterm.c (x_term_init): Remove unnecessary GCPRO.
176
177 2006-03-19 Kim F. Storm <storm@cua.dk>
178
179 * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
180 so it doesn't associate overlay string with following glyph by default.
181 Allow integer property value to specify explicit number of buffer
182 positions associate with overlay string.
183
184 2006-03-18 Chong Yidong <cyd@stupidchicken.com>
185
186 * xterm.c (x_display_ok): Fix minor bug and compilation warnings.
187
188 2006-03-18 Nozomu Ando <nand@mac.com>
189
190 * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
191 (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
192 (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
193 Don't redefine.
194
195 * m/mips.h: Don't use unexmips on NetBSD.
196 (LIBS_MACHINE): Move definition lower, so it doesn't use
197 LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
198 C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
199
200 * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
201 (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
202 option is broken (e.g., MIPS/NetBSD).
203
204 2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change)
205
206 * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
207 Remove the HAVE_X_WINDOWS conditional.
208
209 2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change)
210
211 * emacs.c (main): If user asks for a display that is unavailable,
212 simulate -nw.
213
214 * xterm.c (x_display_ok): New function.
215
216 * xterm.h: Add prototype for x_display_ok.
217
218 2006-03-18 Eli Zaretskii <eliz@gnu.org>
219
220 * w32fns.c (Fw32_select_font): Doc fix.
221
222 2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
223
224 * image.c [MAC_OS] (XPutPixel, XGetPixel)
225 [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
226 version when depth is 32.
227 (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
228 New function.
229 (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
230 (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
231
232 * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
233 Create GWorld in ARGB pixel format.
234 (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
235 Remove functions.
236 (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
237 instead of mac_copy_area/mac_copy_area_with_mask.
238
239 2006-03-15 Kim F. Storm <storm@cua.dk>
240
241 * xdisp.c (extend_face_to_end_of_line): Always add space glyph to
242 empty row. Fixes memory corruption revealed by 2006-03-02 change.
243 (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
244 (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
245 width is exactly the same as the window width. Don't count a final
246 empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
247
248 2006-03-15 Juanma Barranquero <lekktu@gmail.com>
249
250 * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
251 conditional on HAVE_NTGUI, not WINDOWS_NT.
252
253 2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
254
255 * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
256
257 * fringe.c (mac_init_fringe) [MAC_OS]: New function.
258
259 * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
260 (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
261 (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
262 (mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
263 (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
264 (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
265 instead of mac_draw_bitmap.
266 (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
267 define_fringe_bitmap and destroy_fringe_bitmap.
268
269 2006-03-14 Chong Yidong <cyd@stupidchicken.com>
270
271 * xterm.c (x_uncatch_errors): Block input for entire function.
272
273 2006-03-12 Jason Rumney <jasonr@gnu.org>
274
275 * w32fns.c (Fx_create_frame): Remove call to
276 Qface_set_after_frame_default (from xfns.c 2003-05-26).
277
278 * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
279 finished with the menu.
280
281 * w32term.c: Sync 2005-10-24 xterm.c changes.
282 (last_mouse_glyph_frame): New var.
283 (note_mouse_movement): Say mouse moved if current frame differs
284 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
285 (w32_mouse_position): Set last_mouse_glyph_frame.
286 Remove OLD_REDISPLAY_CODE block.
287
288 2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
289
290 * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
291
292 * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
293 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
294
295 * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
296
297 * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
298
299 * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
300 (x_draw_composite_glyph_string_foreground)
301 (x_draw_image_foreground): Undo previous changes.
302 (x_draw_hollow_cursor): Likewise. Subtract 1 from the last
303 argument of mac_draw_rectangle.
304 (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
305 (mac_draw_string_common, mac_draw_image_string_cg): Use them.
306 (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
307 (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
308 [USE_CG_DRAWING]: New functions.
309 (mac_draw_line, mac_erase_rectangle, mac_clear_window)
310 (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
311 (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
312 (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
313 (mac_copy_area, mac_scroll_area, x_scroll_bar_create)
314 (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
315 (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
316
317 2006-03-12 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
318
319 * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
320
321 2006-03-11 Jason Rumney <jasonr@gnu.org>
322
323 * w32fns.c (signal_user_input): New function.
324 (post_character_message): Use it for keyboard input.
325 (w32_msg_pump): Use it for mouse input.
326
327 2006-03-11 Luc Teirlinck <teirllm@auburn.edu>
328
329 * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
330 (window_scroll_pixel_based, syms_of_window): Adapt to above change.
331
332 2006-03-11 Eli Zaretskii <eliz@gnu.org>
333
334 * w32fns.c (w32_wnd_proc): Ignore middle and extra button events
335 if a menu is already active (the menubar_active flag is on).
336
337 2006-03-11 David Ponce <david@dponce.com>
338
339 * xfns.c (x_create_tip_frame): Preserve received parms by copying them.
340
341 2006-03-11 Eli Zaretskii <eliz@gnu.org>
342
343 * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
344 the list of unused display error handling functions.
345
346 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
347 HAVE_X_WINDOWS.
348 (internal_condition_case, internal_condition_case_1)
349 (internal_condition_case_2): Call x_catching_errors only if
350 HAVE_X_WINDOWS.
351
352 * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
353 Don't include sys/resource.h unless defined.
354
355 2006-03-11 Richard Stallman <rms@gnu.org>
356
357 * keymap.c (describe_map): Shorten string to indicate shadowed binding.
358
359 * vm-limit.c (get_lim_data, lim_data, data_space_start):
360 Move from mem-limits.h.
361 (enum warnlevel): New data type.
362 (check_memory_limits): Rewrite the logic about warnings.
363 Use standard `struct rlimit'. Check return values for nonsense.
364 (memory_warnings): Always clear lim_data.
365
366 * mem-limits.h (get_lim_data, lim_data, data_space_start):
367 Move to vm-limit.c.
368
369 * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
370
371 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
372 (internal_condition_case_1, internal_condition_case_2):
373 Abort if within unclosed x_catch_errors.
374
375 2006-03-11 Romain Francoise <romain@orebokech.com>
376
377 * process.c (Vprocess_adaptive_read_buffering): Doc fix.
378
379 2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
380
381 * lisp.h: Remove duplicate prototypes. Make the prototype of
382 getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
383
384 2006-03-11 Eli Zaretskii <eliz@gnu.org>
385
386 * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
387 argument of XDrawRectangle.
388
389 * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
390
391 * macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
392 (x_draw_glyph_string_foreground)
393 (x_draw_composite_glyph_string_foreground)
394 (x_draw_image_foreground): Don't subtract 1 from width and height
395 arguments to mac_draw_rectangle.
396 (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
397
398 2006-03-10 Kim F. Storm <storm@cua.dk>
399
400 * alloc.c (USE_POSIX_MEMALIGN): Fix last change.
401
402 2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca>
403
404 * alloc.c (USE_POSIX_MEMALIGN): New macro.
405 (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
406
407 2006-03-09 Kenichi Handa <handa@m17n.org>
408
409 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
410 ASCII component of a composition.
411
412 2006-03-08 Luc Teirlinck <teirllm@auburn.edu>
413
414 * window.c: Declare preserve_y as a static global variable.
415 (window_scroll_pixel_based): No longer declare preserve_y;
416 it is global now.
417 (syms_of_window): Set preserve_y to -1.
418
419 2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
420
421 * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
422 depth is 32.
423 [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
424 depth is 32.
425
426 2006-03-06 Chong Yidong <cyd@stupidchicken.com>
427
428 * xdisp.c (handle_invisible_prop): Don't update it->position with
429 a buffer position if we're in a display string.
430
431 2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
432
433 * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
434 (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
435
436 * macfns.c (x_default_scroll_bar_color_parameter)
437 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
438 Remove unnecessary prototypes.
439 (x_set_scroll_bar_default_width):
440 Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
441 (mac_set_scroll_bar_width): New function.
442 (mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
443
444 * macterm.c (get_control_part_bounds): Fix type of return value.
445 (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
446 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
447 scroll bar if it is not tall enough to display scroll bar thumb.
448 [USE_CARBON_EVENTS] (mac_convert_event_ref)
449 (mac_handle_command_event, mac_handle_window_event)
450 (mac_handle_mouse_event): Check error code of GetEventParameter.
451 (convert_fn_keycode) [MAC_OSX]: Likewise.
452
453 2006-03-05 Andreas Schwab <schwab@suse.de>
454
455 * xselect.c (x_catch_errors_unwind): Fix missing return value.
456
457 2006-03-02 Kim F. Storm <storm@cua.dk>
458
459 * frame.h (struct frame): New member n_tool_bar_rows.
460
461 * xdisp.c: Minimize the unpleasent visual impact of the requirement
462 that non-toolkit tool-bars must occupy an integral number of screen
463 lines, by distributing the rows evenly over the tool-bar screen area.
464 (Vtool_bar_border): New variable.
465 (syms_of_xdisp): DEFVAR_LISP it.
466 (display_tool_bar_line): Add HEIGHT arg for desired row height.
467 Make tool-bar row the desired height. Use default face for border
468 below tool-bar.
469 (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of
470 actual tool-bar rows.
471 (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
472 Adjust the height of the tool-bar rows to fill tool-bar screen area.
473 (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
474 is resized.
475
476 2006-03-01 Luc Teirlinck <teirllm@auburn.edu>
477
478 * search.c (Fregexp_quote): Do not precede a literal `]' with two
479 backslashes to try to make clear that it has a literal meaning; it
480 does not do that. (It could close a character alternative
481 containing a backslash.)
482
483 2006-02-28 Chong Yidong <cyd@stupidchicken.com>
484
485 * xselect.c (x_catch_errors_unwind): New function.
486 (x_reply_selection_request): Put x_uncatch_errors in an unwind.
487 (Fx_get_atom_name): Call x_uncatch_errors earlier.
488
489 * window.c (Qscroll_up, Qscroll_down): New syms.
490 (window_scroll_pixel_based): Make preserve_y static to avoid
491 getting point stuck when scrolling 1 line.
492
493 2006-02-26 Chong Yidong <cyd@stupidchicken.com>
494
495 * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
496
497 * xterm.c (x_load_font, x_term_init, XTmouse_position)
498 (handle_one_xevent, x_connection_closed, x_list_fonts):
499 No arg for x_uncatch_errors.
500
501 * xselect.c (x_own_selection, x_decline_selection_request)
502 (x_reply_selection_request, x_get_foreign_selection)
503 (Fx_get_atom_name, Fx_send_client_event): Likewise.
504
505 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
506 Likewise.
507
508 2006-02-26 Luc Teirlinck <teirllm@auburn.edu>
509
510 * lread.c: Declare Vload_file_rep_suffixes instead of
511 deleted variable default_suffixes.
512 (Fget_load_suffixes): New function.
513 (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
514 No longer use deleted variable default_suffixes. Update docstring.
515 (syms_of_lread): defsubr Sget_load_suffixes.
516 Expand `load-suffixes' docstring.
517 Delete default_suffixes and DEFVAR_LISP the new variable
518 `load-file-rep-suffixes'.
519
520 * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
521 of Vload_suffixes.
522
523 * lisp.h: EXFUN Fget_load_suffixes.
524 Extern Vload_file_rep_suffixes.
525
526 * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
527 with lisp.h.
528
529 2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
530
531 * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
532 qualifier which was trying to avoid the bug that was fixed by
533 yesterday's changes to xterm.c.
534
535 2006-02-25 Chong Yidong <cyd@stupidchicken.com>
536
537 * xterm.h (x_catch_errors) Return value changed to void.
538 (x_uncatch_errors): Delete unused count argument.
539
540 * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
541 it can be called in a signal handler.
542 (x_catch_errors_unwind): Function deleted.
543 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
544 (x_check_errors): Call x_uncatch_errors before signalling error.
545
546 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
547 (x_connection_closed, x_list_fonts): Use new versions of
548 x_catch_errors and x_uncatch_errors.
549
550 * xselect.c (x_own_selection, x_decline_selection_request)
551 (x_reply_selection_request, x_get_foreign_selection)
552 (Fx_get_atom_name, Fx_send_client_event): Likewise.
553
554 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
555 Likewise.
556
557 * eval.c (record_unwind_protect): Add an assertion.
558
559 2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
560
561 * process.c (Fmake_network_process): Init the process's mark.
562
563 2006-02-25 Kim F. Storm <storm@cua.dk>
564
565 * buffer.c (modify_overlay): Force redisplay if we modify an
566 overlay at the end of the buffer.
567
568 2006-02-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
569
570 * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
571 nil the image file has been removed, in that case use the (cached)
572 pixmap.
573
574 2006-02-24 Kenichi Handa <handa@m17n.org>
575
576 * fileio.c (Finsert_file_contents): When a text is replaced
577 partially, be sure to set point before the inserted characters.
578
579 2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change)
580
581 * xfns.c (Fx_file_dialog): Return a decoded file name.
582
583 2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
584
585 * dispnew.c (update_text_area): Avoid needless redraw of rightmost
586 glyph whose face is extended to the text area end.
587
588 * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
589 values if control is not visible or values are not changed.
590
591 2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
592
593 * window.c (Fwindow_list): Check `window' before doing XWINDOW.
594 The default `window' should not be "on a different frame".
595
596 2006-02-22 Kim F. Storm <storm@cua.dk>
597
598 * indent.c (Fvertical_motion): Only try to move back if we can.
599
600 2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
601
602 * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
603 n_clip_rects.
604
605 * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
606 xmenu.c.
607
608 * macterm.c (GC_CLIP_REGION): Remove macro.
609 (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
610 All uses changed. Don't do clipping if n_clip_rects is zero.
611 (mac_set_clip_rectangles): Use xassert instead of abort.
612 Set n_clip_rects. Don't make clip_region empty when number of
613 clipping rectangles is zero.
614 (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
615 calling mac_set_clip_rectangles.
616 (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
617 avoid multiple redraws.
618
619 2006-02-22 Kim F. Storm <storm@cua.dk>
620
621 * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
622
623 2006-02-21 Kim F. Storm <storm@cua.dk>
624
625 * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
626
627 2006-02-21 Zhang Wei <brep@newsmth.org>
628
629 * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
630 returning it.
631
632 2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
633
634 * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
635 (standard_bitmaps): Use it.
636
637 2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
638
639 * macterm.c (mac_draw_string_common): Remove arg MODE. New arg
640 BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero.
641 (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
642 [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
643 mac_draw_string_cg. New arg BG_WIDTH. All uses changed.
644 Draw background if BG_WIDTH is not zero. Use float constants as
645 divisors instead of double. Use alloca instead of xmalloc/xfree.
646 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
647 [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
648 mac_draw_image_string* functions.
649 (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
650 some fonts when srcCopy text transfer mode might be used.
651 (mac_begin_clip, mac_end_clip): Check if region is empty.
652 (mac_set_clip_rectangles): When resetting clip region, make it
653 empty instead of disposing of it.
654
655 2006-02-20 Stefan Monnier <monnier@iro.umontreal.ca>
656
657 * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
658 Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8).
659
660 2006-02-20 Kim F. Storm <storm@cua.dk>
661
662 * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
663
664 * buffer.h (struct buffer): New members fringe_indicator_alist and
665 fringe_cursor_alist.
666
667 * buffer.c (init_buffer_once): Set dummy default values for
668 fringe-indicator-alist and fringe-cursor-alist. The proper
669 default values are set by pre-loading fringe.el.
670 (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
671 fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
672 corresponding default- variables.
673
674 * fringe.c (enum fringe_bitmap_type): Remove. Change all uses
675 to use `int'.
676 (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
677 Define explicitly.
678 (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
679 (Qhollow_small): New variables.
680 (syms_of_fringe): Intern and staticpro them.
681 (question_mark_bits): Rename from unknown_bits.
682 (left_curly_arrow_bits): Rename from continuation_bits.
683 (right_curly_arrow_bits): Rename from continued_bits.
684 (left_triangle_bits): Rename from ov_bits.
685 (right_triangle_bits): Add.
686 (filled_rectangle_bits): Rename from filled_box_cursor_bits.
687 (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
688 (filled_square_bits): Add.
689 (vertical_bar_bits): Rename from bar_cursor_bits.
690 (horizontal_bar_bits): Rename from hbar_cursor_bits.
691 (empty_line_bits): Rename from zv_bits.
692 (standard_bitmaps): Update to use new names.
693 (draw_fringe_bitmap_1): Make static.
694 (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
695 to map from logical cursors and indicators to physical bitmaps.
696 (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
697 bitmaps using symbol names instead of bitmap numbers.
698 (update_window_fringes): Use logical indicator symbol names
699 instead of bitmap numbers for logical. Add bitmap cache.
700 (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
701
702 2006-02-20 Chong Yidong <cyd@stupidchicken.com>
703
704 * regex.c: Revert 2006-02-19 change.
705 (xmalloc, xrealloc): Define these when not linked to Emacs.
706 Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
707
708 2006-02-19 Luc Teirlinck <teirllm@auburn.edu>
709
710 * regex.c (extend_range_table_work_area): Fix typo.
711
712 2006-02-19 Richard M. Stallman <rms@gnu.org>
713
714 * xterm.c (x_catch_errors): Use xmalloc.
715
716 * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
717 (regex_compile): Likewise.
718 (regcomp): Use xmalloc.
719
720 * gtkutil.c (malloc_widget_value): Use xmalloc.
721
722 * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
723 (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
724
725 * xmenu.c (digest_single_submenu): When pane_string is empty,
726 do initialize save_wv.
727
728 2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
729
730 * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
731 w->update_mode_line if arg F is not the selected frame.
732
733 * macmenu.c (popup_activated_flag, submenu_id)
734 (next_menubar_widget_id): Remove variables.
735 (initialize_frame_menubar): Remove function.
736 (pop_down_menu, mac_menu_show): Simplify save value.
737 (dispose_menus): New function.
738 (pop_down_menu, fill_menubar): Use it.
739 (fill_submenu): Remove function. All uses changed to fill_menu.
740 (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg
741 POS. Don't call SetMenuItemHierarchicalID here.
742 (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be
743 used next. Call SetMenuItemHierarchicalID here.
744 (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu
745 objects if needed. Reuse existing menu bar titles if possible.
746 (set_frame_menubar): Don't clean up menu objects here.
747
748 2006-02-18 Chong Yidong <cyd@stupidchicken.com>
749
750 * window.c (window_min_size_1): Ensure room for the scroll bar and
751 fringes.
752
753 2006-02-17 Romain Francoise <romain@orebokech.com>
754
755 * puresize.h (BASE_PURESIZE): Increment to 1200000.
756
757 2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca>
758
759 * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
760 addition of the BLOCK_INPUTs.
761
762 2006-02-17 Juanma Barranquero <lekktu@gmail.com>
763
764 * window.c (Fset_window_scroll_bars): Doc fix.
765
766 2006-02-17 Kenichi Handa <handa@m17n.org>
767
768 * xdisp.c (display_mode_element): Call display_string with correct
769 PREC arg (which must be a number of characters, not column width).
770
771 2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
772
773 * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
774
775 * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
776
777 * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
778
779 2006-02-14 Richard M. Stallman <rms@gnu.org>
780
781 * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
782
783 * m/ibms390x.h: New file.
784
785 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
786
787 * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
788 value of x-gtk-whole-detached-tool-bar.
789 (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
790
791 * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
792
793 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
794
795 * xterm.c (x_x_to_emacs_modifiers): Make non-static.
796
797 * xterm.h: Declare x_x_to_emacs_modifiers.
798
799 * gtkutil.c (xg_tool_bar_button_cb): New function.
800 (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
801 store modifiers in event.
802 (update_frame_tool_bar): Connect button-release-event to
803 xg_tool_bar_button_cb.
804
805 2006-02-13 Richard M. Stallman <rms@gnu.org>
806
807 * .gdbinit (xwindow): Update the code to show the window box.
808
809 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
810
811 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
812
813 2006-02-12 Richard M. Stallman <rms@gnu.org>
814
815 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
816
817 2006-02-11 Eli Zaretskii <eliz@gnu.org>
818
819 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
820 (syms_of_keyboard): DEVFAR_LISP and initialize it.
821 (parse_tool_bar_item, parse_menu_item): If that variable is
822 non-nil, don't disable menu items and tool-bar buttons.
823
824 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
825
826 * doc.c (Fsubstitute_command_keys): Doc fix.
827
828 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
829
830 * data.c (Findirect_function): Rewrite docstring.
831 Fix omission bug: Declare new arg NOERROR.
832
833 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
834
835 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
836 if window_desc is not set yet.
837 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
838 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
839 parameter `visibility' is `icon'.
840 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
841 instead of "fontset-mac".
842 (Fx_focus_frame): New defun.
843 (syms_of_macfns): Defsubr it.
844
845 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
846 for unfocused frame.
847 (x_raise_frame): Call BringToFront instead of SelectWindow.
848 (x_lower_frame): Use NULL instead of nil.
849 (x_make_frame_visible): Don't call SelectWindow.
850 (XTread_socket): Increment handling_signal at the start, decrement
851 it at the end.
852 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
853 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
854
855 2006-02-10 Kim F. Storm <storm@cua.dk>
856
857 * data.c (Findirect_function): Add NOERROR arg. All callers changed
858 to pass Qnil for NOERROR.
859
860 * keymap.c (current_minor_maps_error): Remove.
861 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
862 instead of using internal_condition_case_1+current_minor_maps_error.
863
864 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
865
866 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
867 frames for GTK, in that case it is the tool bar. This is so that
868 highlighted text get reset properly.
869
870 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
871
872 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
873
874 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
875
876 * window.c (adjust_window_trailing_edge): Check that shrinking
877 does not set a window to size zero or less.
878
879 2006-02-08 Miles Bader <miles@gnu.org>
880
881 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
882 of Fget_text_property (other field functions work with overlays as
883 well as text-properties).
884
885 2006-02-07 Kenichi Handa <handa@m17n.org>
886
887 * dispextern.h (unibyte_display_via_language_environment): Extern it.
888
889 * xterm.h (unibyte_display_via_language_environment):
890 * w32term.h (unibyte_display_via_language_environment):
891 * macterm.h (unibyte_display_via_language_environment): Delete extern.
892
893 2006-02-07 Kenichi Handa <handa@m17n.org>
894
895 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
896 (produce_glyphs): Set the character to print in
897 it->char_to_display. Handle unibyte-display-via-language-environment.
898 (produce_stretch_glyph): Set character to print in it->char_to_display.
899
900 2006-02-06 Kenichi Handa <handa@m17n.org>
901
902 * lread.c (openp): Initialize encoded_fn before GCPRO it.
903
904 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
905
906 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
907
908 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
909 Cast bitfield value to EMACS_INT, to suppress gcc warning.
910
911 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
912 defining.
913
914 2006-02-03 Kim F. Storm <storm@cua.dk>
915
916 * xdisp.c: Cache last merged escape glyph face.
917 (last_escape_glyph_frame, last_escape_glyph_face_id)
918 (last_escape_glyph_merged_face_id): New variables.
919 (get_next_display_element): Use/update them.
920 (redisplay_internal): Reset them before redisplay.
921
922 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
923 Only recheck faces after displaying ellipsis.
924
925 2006-02-02 Kenichi Handa <handa@m17n.org>
926
927 * coding.c (decode_composition_emacs_mule): Fix handling of
928 incorrect format data.
929
930 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
931
932 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
933 (gtk_toolbar_insert) so we can have tool bars of different sizes.
934
935 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
936
937 * data.c (Flistp): Doc fix.
938
939 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
940
941 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
942 Fix typos in docstrings.
943
944 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
945
946 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
947
948 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
949
950 * alloc.c (make_interval, allocate_string)
951 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
952 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
953 global variables.
954
955 2006-01-27 Eli Zaretskii <eliz@gnu.org>
956
957 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
958 the MSDOS definition.
959
960 2006-01-26 Richard M. Stallman <rms@gnu.org>
961
962 * alloc.c (check_pure_size): Make overflow message an "error message".
963
964 * keymap.c (Fmap_keymap): Doc fix.
965
966 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
967 unless they were cleared out.
968
969 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
970
971 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
972
973 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
974 (find_field): Set before_field to after_field when pos is at BEGV.
975 (Fline_beginning_position, Fline_end_position):
976 Clarify confusing doc string.
977
978 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
979 string.
980
981 2006-01-26 Kenichi Handa <handa@m17n.org>
982
983 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
984 current_dir, and error_file. On reporting an error, decode them
985 back.
986
987 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
988
989 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
990 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
991 Don't check for quit, since any loop will go through fail or jump.
992
993 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
994
995 * alloc.c (allocate_string_data): Update next_free immediately, to
996 reduce risk of memory clobberage.
997
998 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
999
1000 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
1001 display when point moves across an ellipsis. If there are
1002 adjacent invisible texts, don't lose the second one's ellipsis.
1003 (x_produce_glyphs): Doc fix.
1004
1005 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
1006
1007 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
1008
1009 2006-01-23 Kim F. Storm <storm@cua.dk>
1010
1011 * xdisp.c (handle_single_display_spec): Fix handling of space
1012 property on char from string: set *position rather than
1013 it->current.pos.
1014 (produce_stretch_glyph): Reduce width of stretch glyphs so they
1015 don't get wider than the window (unless truncate-lines is on).
1016
1017 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
1018
1019 * xterm.c: Avoid allocating Lisp data from a signal handler.
1020 (x_error_message): New var to replace x_error_message_string.
1021 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
1022 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
1023 (syms_of_xterm): Use it instead of x_error_message_string.
1024
1025 * alloc.c (lisp_align_free): Add an assertion.
1026 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
1027 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
1028 a signal handler.
1029
1030 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
1031
1032 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
1033
1034 2006-01-21 Romain Francoise <romain@orebokech.com>
1035
1036 * xdisp.c (get_window_cursor_type): Fix last change.
1037 Update copyright year.
1038
1039 2006-01-20 Eli Zaretskii <eliz@gnu.org>
1040
1041 * lread.c (Fload): Don't leak the file descriptor returned by
1042 openp if we are going to signal an error.
1043
1044 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
1045 directly to _close.
1046 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
1047 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
1048 to _read.
1049 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
1050 directly to _write.
1051
1052 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
1053 if it is NULL.
1054
1055 2006-01-20 Kenichi Handa <handa@m17n.org>
1056
1057 * puresize.h (BASE_PURESIZE): Increment to 1190000.
1058
1059 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
1060
1061 * xdisp.c (get_window_cursor_type): Use cursor type specified by
1062 the selected buffer for the echo area too.
1063
1064 2006-01-19 Richard M. Stallman <rms@gnu.org>
1065
1066 * keymap.c (Fmap_keymap): Doc fix.
1067
1068 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
1069
1070 * keyboard.c (echo_char): Don't omit the space between first two
1071 echoed chars.
1072
1073 * minibuf.c (read_minibuf): Fix previous change.
1074
1075 2006-01-19 Kenichi Handa <handa@m17n.org>
1076
1077 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
1078
1079 2006-01-17 Richard M. Stallman <rms@gnu.org>
1080
1081 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
1082 value in f->param_alist.
1083
1084 2006-01-15 Andreas Schwab <schwab@suse.de>
1085
1086 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
1087
1088 2006-01-13 Richard M. Stallman <rms@gnu.org>
1089
1090 * Makefile.in: Define new macro WINDOW_SUPPORT.
1091 (lisp): Use it.
1092 (SOME_MACHINE_LISP): Add conditionally loaded files.
1093
1094 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1095
1096 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1097 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
1098 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
1099 decomposed form.
1100
1101 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
1102 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
1103 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
1104 macro. Also try member ifr_addr when getting netmask.
1105
1106 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
1107
1108 * fileio.c (Fexpand_file_name): Remove redundant tests.
1109 Fix elimination of // so that it doesn't prevent elimination of an
1110 immediately following /. or /..
1111
1112 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1113
1114 * gtkutil.c (xg_toggle_notify_cb): New function.
1115 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
1116 xg_toggle_notify_cb.
1117 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
1118 parameter value changes so the toggle button gets updated.
1119
1120 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
1121
1122 * .gdbinit: Fix typo.
1123
1124 2006-01-05 Eli Zaretskii <eliz@gnu.org>
1125
1126 * .gdbinit: Fix last change.
1127
1128 2006-01-05 Kim F. Storm <storm@cua.dk>
1129
1130 * process.c (Fmake_network_process): Use AF_INET instead of
1131 AF_UNSPEC when AF_INET6 is not defined.
1132
1133 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1134
1135 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
1136 Don't check that the other type is known file-related one.
1137
1138 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
1139 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
1140 OS X 10.4 and later.
1141
1142 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1143
1144 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
1145 let GTK do all image processing. Importing Emacs own pixmaps to GTK
1146 looks bad for inactive tool bar items with some Gnome themes.
1147
1148 2006-01-04 Eli Zaretskii <eliz@gnu.org>
1149
1150 * .gdbinit: Avoid a warning message when x_error_quitter is not
1151 compiled in.
1152
1153 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
1154 for w32.
1155
1156 2006-01-04 Kim F. Storm <storm@cua.dk>
1157
1158 * process.c: Add IPv6 support.
1159 (Qipv4, Qipv6): New vars.
1160 (syms_of_process): Intern and staticpro them.
1161 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
1162 with or without port number. Handle 4 element vector as IPv4 address
1163 without port number.
1164 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
1165 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
1166 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
1167 request that address family only. :family nil or omitted means to
1168 determine address family from the specified :host and :service.
1169 (ifflag_table): Add missing OpenBSD IFF_ flags.
1170 (server_accept_connection): Handle IPv6 addresses.
1171 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
1172
1173 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
1174 determine which breakpoints to set.
1175
1176 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
1177
1178 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
1179
1180 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
1181
1182 2006-01-03 Romain Francoise <romain@orebokech.com>
1183
1184 * emacs.c (main): Update copyright year.
1185
1186 2006-01-03 Ken Raeburn <raeburn@gnu.org>
1187
1188 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
1189 nil for the call to internal_delete_file.
1190
1191 2006-01-01 Ken Raeburn <raeburn@gnu.org>
1192
1193 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
1194 to nil for the call to Fwrite_region.
1195
1196 2005-12-31 Richard M. Stallman <rms@gnu.org>
1197
1198 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
1199
1200 2005-12-31 Eli Zaretskii <eliz@gnu.org>
1201
1202 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
1203
1204 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
1205
1206 * textprop.c (set_text_properties): Reword description of return value.
1207 Return Qnil if caller wants to remove all text properties from a
1208 string and the string already has no intervals.
1209
1210 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
1211
1212 * term.c (visible_cursor): New boolean var.
1213 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
1214 visible_cursor.
1215 (syms_of_term): Export the new var as "visible-cursor".
1216
1217 2005-12-30 Eli Zaretskii <eliz@gnu.org>
1218
1219 * .gdbinit: Tell users not to worry about GDB warnings that some
1220 functions do not exist in the binary.
1221
1222 2005-12-30 Andreas Schwab <schwab@suse.de>
1223
1224 * process.c (Fnetwork_interface_info): Correctly terminate the
1225 loop over ifflag_table.
1226
1227 2005-12-29 Richard M. Stallman <rms@gnu.org>
1228
1229 * lread.c (readevalloop): Test for reading a whole buffer
1230 before actually reading anything. Handle all cases, including
1231 START = END = nil and an already-narrowed buffer.
1232 Convert END to a marker if it is a number.
1233
1234 * keymap.c (describe_map): Put sparse map elements into an array,
1235 sort them, then output a sequence of identical bindings on one line.
1236 (struct describe_map_elt): New data type.
1237 (describe_map_compare): New function.
1238
1239 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1240
1241 * gtkutil.c (xg_get_file_with_chooser): Change message shown
1242 in file chooser.
1243
1244 2005-12-27 Richard M. Stallman <rms@gnu.org>
1245
1246 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
1247 not the current one.
1248
1249 * minibuf.c (Fminibuffer_message): Doc fix.
1250 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
1251
1252 * eval.c (do_autoload): Ignore elements of Vautoload_queue
1253 where car is not symbol.
1254
1255 2005-12-27 Kenichi Handa <handa@m17n.org>
1256
1257 * charset.c (lisp_string_width): Check multibyteness of STRING.
1258
1259 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1260
1261 * xfns.c: x_show_hidden_files, new variable.
1262 (syms_of_xfns): Defvar it.
1263
1264 * gtkutil.c (xg_toggle_visibility_cb): New function.
1265 (xg_get_file_with_chooser): Add toggle hidden files and a message
1266 to the new file chooser dialog. Show hidden files if
1267 x_show_hidden_files is non-zero.
1268
1269 2005-12-26 Richard M. Stallman <rms@gnu.org>
1270
1271 * keyboard.h: Undo previous change.
1272
1273 * Makefile.in (undo.o): Undo previous change.
1274
1275 * undo.c: Undo previous change.
1276
1277 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
1278
1279 * keyboard.h: extern last_point_position_window.
1280
1281 * undo.c: include keyboard.h.
1282
1283 * Makefile.in (undo.o): Depend on keyboard.h.
1284
1285 2005-12-26 Richard M. Stallman <rms@gnu.org>
1286
1287 * commands.h (last_point_position_window): Declare.
1288
1289 * undo.c: Depend on window.h.
1290 (record_point): Save old point from the correct window.
1291
1292 * keyboard.c (last_point_position_window): New variable.
1293 (command_loop_1): Set last_point_position_window.
1294 (syms_of_keyboard): Init it.
1295
1296 * Makefile.in (undo.o): Depend on window.h.
1297
1298 2005-12-25 Richard M. Stallman <rms@gnu.org>
1299
1300 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
1301 to undo a `provide'.
1302
1303 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
1304
1305 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
1306
1307 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
1308 define for FreeBSD on this platform.
1309
1310 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1311
1312 * macterm.h (TYPE_FILE_NAME): New define.
1313 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
1314
1315 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
1316 Add prototypes. Make static.
1317 (mac_aedesc_to_lisp): Initialize err to noErr.
1318 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
1319 (init_coercion_handler): New functions.
1320 (Fmac_coerce_ae_data): Use coercion of Apple event data for
1321 translation from/to file names.
1322
1323 * macterm.c: Don't include sys/param.h.
1324 (init_coercion_handler): Add extern.
1325 [MAC_OS8] (main): Call init_coercion_handler.
1326 (mac_initialize) [MAC_OSX]: Likewise.
1327 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
1328 Apple event data for translation from/to file names.
1329
1330 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
1331
1332 * image.c [MAC_OS] (find_image_fsspec): Likewise.
1333
1334 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
1335
1336 * insdel.c (insert, insert_and_inherit, insert_before_markers)
1337 (insert_before_markers_and_inherit): Make sure FROM is correct
1338 when `after-change-functions' are called.
1339
1340 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1341
1342 * xfns.c (Fx_uses_old_gtk_dialog): New function.
1343
1344 * gtkutil.c (xg_uses_old_file_dialog): New function.
1345 (xg_get_file_name): Use xg_uses_old_file_dialog.
1346
1347 * gtkutil.h: Declare xg_uses_old_file_dialog.
1348
1349 2005-12-22 Richard M. Stallman <rms@gnu.org>
1350
1351 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
1352
1353 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1354
1355 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
1356
1357 * macgui.h (XCharStruct): Remove member `valid_p'.
1358 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
1359 (XCharStructRow): New typedef.
1360 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
1361 New macros.
1362 (struct MacFontStruct): Add member `bounds'. Remove member
1363 `per_char'. All uses for QuichDraw Text fonts are changed to
1364 `bounds.per_char'. ATSUI font bounds are represented as an array
1365 `bounds.rows' of XCharStructRow's, each of which consists of a
1366 bitmap of valid entries and an array of char bounds.
1367
1368 * macterm.c (mac_per_char_metric): Add prototype.
1369 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
1370 (mac_query_char_extents): New function.
1371 (x_per_char_metric): Use it.
1372 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
1373 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
1374 Use mac_per_char_metric instead of x_per_char_metric.
1375 (mac_text_extents_16): New function.
1376 (mac_compute_glyph_string_overhangs): Use it.
1377 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
1378
1379 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1380
1381 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
1382 (Fminibuffer_completion_help): Remove duplicates before display.
1383
1384 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1385
1386 * print.c (print_preprocess): Don't lose print_depth levels while
1387 iterating.
1388
1389 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1390
1391 * macmenu.c (Qmac_apple_event): Add extern.
1392 (set_frame_menubar, mac_menu_show keymp_panes)
1393 (single_keymap_panes, list_of_panes, list_of_item)
1394 (single_menu_item): Add argument types to prototypes.
1395 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
1396 (struct skp): New struct (from xmenu.c).
1397 (single_keymap_panes, single_menu_item, list_of_panes)
1398 (list_of_item): Sync with xmenu.c.
1399 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
1400 POSITION if it is mac-apple-event event.
1401 (menubar_selection_callback): Don't use menu_command_in_progress.
1402 (set_frame_menubar): First parse all submenus, then make
1403 widget_value trees from them. Don't allocate any widget_value
1404 objects until we are done with the parsing.
1405 (parse_single_submenu, digest_single_submenu): New functions.
1406 (single_submenu): Function deleted, replaced by those two.
1407 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
1408 create or dispose of EventHandlerUPP. Install hander to all submenus.
1409 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
1410 instead of ENCODE_SYSTEM.
1411 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
1412 integer values.
1413 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
1414 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
1415 format menu item string. Don't use NULL for integer value.
1416
1417 * macterm.h (struct mac_output): Remove unused member
1418 menu_command_in_progress.
1419
1420 2005-12-20 Juri Linkov <juri@jurta.org>
1421
1422 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
1423 position is non-nil, else set it to nil.
1424
1425 * macmenu.c (Fx_popup_menu): Add `else' to set
1426 Vmenu_updating_frame to nil only if position is nil.
1427
1428 * w32menu.c (Fx_popup_menu): Add `else' to set
1429 Vmenu_updating_frame to nil only if position is nil.
1430
1431 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1432
1433 * keyboard.c (make_lispy_event): Drag-and-drop items are now
1434 stored in member `args' of struct input_event.
1435
1436 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
1437
1438 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
1439 stored in member `args' of struct input_event.
1440
1441 * w32term.c (construct_drag_n_drop): Likewise.
1442
1443 * macterm.c (mac_do_receive_drag): Likewise.
1444 (x_use_underline_position_properties): Undo 2005-07-13 change.
1445 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
1446 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
1447 (mac_pass_command_to_system, mac_pass_control_to_system):
1448 New boolean variables renamed from Lisp_Object ones
1449 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
1450 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
1451 All uses changed.
1452 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
1453 Make them user options.
1454 (mac_handle_command_event, mac_store_services_event):
1455 Call create_apple_event_from_event_ref without 5th argument.
1456 (backtranslate_modified_keycode): Mask off modifier keys that are
1457 mapped to some Emacs modifiers before passing it to KeyTranslate.
1458 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
1459 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
1460 Fix docstrings of `mac-*-modifier'.
1461
1462 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
1463 (do_applescript): Change argument types to Lisp_Object.
1464 All uses changed.
1465
1466 * macterm.h (create_apple_event_from_event_ref): Remove 5th
1467 argument from extern.
1468
1469 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1470
1471 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
1472 the answer, return `lambda', not nil.
1473
1474 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1475
1476 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
1477 enclosed in $(ARGQUOTE)s should not be split between two lines, as
1478 that will break with GNU Make >3.80, when sh.exe is used and
1479 arg quoting is with '..'.
1480
1481 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
1482
1483 * print.c (print_preprocess): Just signal an error if print_depth
1484 is exceeded.
1485
1486 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1487
1488 * .gdbinit: Set a breakpoint on w32_abort.
1489
1490 2005-12-16 Juri Linkov <juri@jurta.org>
1491
1492 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
1493 created from minibuffer_completion_contents.
1494 (minibuffer_completion_contents): Remove.
1495 (do_completion, Fminibuffer_complete_word)
1496 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
1497 with Fminibuffer_completion_contents.
1498 (syms_of_minibuf): Add Sminibuffer_completion_contents.
1499 (Fdisplay_completion_list): Doc fix.
1500 (display_completion_list_1): Use `nil' for second arg of
1501 `Fdisplay_completion_list'.
1502
1503 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1504
1505 * xfns.c (compute_tip_xy): Handle negative dx and dy.
1506
1507 * w32fns.c (compute_tip_xy): Ditto.
1508
1509 * macfns.c (compute_tip_xy): Ditto.
1510
1511 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
1512
1513 * print.c (print_preprocess): Go to a deeper print_depth to avoid
1514 print_object loop.
1515
1516 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
1517
1518 * coding.c (code_convert_region_unwind): GCPRO arg.
1519
1520 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1521
1522 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
1523 i.e. dy is offset from top of frame instead of bottom.
1524
1525 * macfns.c (compute_tip_xy): Ditto.
1526
1527 * w32fns.c (compute_tip_xy): Ditto.
1528
1529 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
1530 (xg_get_image_for_pixmap, xg_create_frame_widgets)
1531 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
1532
1533 * xmenu.c (menubar_selection_callback): Do nothing if the callback
1534 is for an unselected radio menu item.
1535
1536 2005-12-11 Richard M. Stallman <rms@gnu.org>
1537
1538 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
1539
1540 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
1541
1542 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
1543 (Flookup_key): Doc fix.
1544 (syms_of_keymap) <function-key-map>: Doc fix.
1545
1546 * fns.c (Frequire): Treat evaluating from a source file
1547 like loading the file.
1548
1549 * floatfns.c (Flog): Doc fix.
1550
1551 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
1552 when we change the buffer.
1553
1554 2005-12-11 Juri Linkov <juri@jurta.org>
1555
1556 * minibuf.c (display_completion_list_1):
1557 Call `minibuffer_completion_contents' instead of using `nil' as
1558 second arg of `Fdisplay_completion_list'.
1559 (keys_of_minibuf): Unbind SPC in
1560 Vminibuffer_local_filename_completion_map (see also related
1561 change on 2005-12-06).
1562
1563 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1564
1565 * emacs.c (main) [MAC_OS8]: Undo previous change.
1566
1567 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
1568 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
1569
1570 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1571
1572 * Makefile.in (macselect.o): Depend on keymap.h.
1573
1574 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
1575 syms_of_macselect.
1576
1577 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
1578 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
1579
1580 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
1581 (syms_of_keyboard) [MAC_OS]: Initialize it.
1582 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
1583
1584 * mac.c (Qundecoded_file_name): New variable.
1585 (syms_of_mac): Initialize it.
1586 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
1587 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
1588 (Fmac_coerce_ae_data): New defun.
1589 (syms_of_mac): Defsubr it.
1590
1591 * macselect.c: Include keymap.h.
1592 (mac_ready_for_apple_events): New variable.
1593 (Vmac_apple_event_map, Qmac_apple_event_class)
1594 (Qmac_apple_event_id): New variables.
1595 (syms_of_macselect): Initialize them.
1596 (Qundefined, mac_store_apple_event): Add externs.
1597 (struct apple_event_binding): New struct.
1598 (find_event_binding_fun, find_event_binding)
1599 (mac_find_apple_event_spec, defer_apple_events)
1600 (mac_handle_apple_event, init_apple_event_handler)
1601 (copy_scrap_flavor_data): New functions.
1602 (Fmac_process_deferred_apple_events): New defun.
1603 (syms_of_macselect): Defsubr it.
1604 (mac_store_services_event): Fix extern.
1605 (mac_handle_service_event): Don't allocate Lisp objects during
1606 asynchronous input processing. Use mac_store_services_event
1607 instead of mac_store_application_menu_event.
1608
1609 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
1610 (Qpreferences): Remove variables.
1611 (syms_of_macterm) : Don't initialize them.
1612 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
1613 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
1614 (init_required_apple_events, do_ae_open_application)
1615 (do_ae_print_documents, do_ae_open_documents)
1616 (do_ae_quit_application): Remove functions and prototypes.
1617 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
1618 (mac_find_apple_event_spec): Add externs.
1619 (mac_store_application_menu_event): Remove function.
1620 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
1621 (mac_handle_command_event): Create Apple event from Carbon event.
1622 Use mac_store_apple_event instead of mac_store_application_menu_event.
1623 [MAC_OSX] (mac_store_services_event): Likewise.
1624 (struct SelectionRange, SelectionRange): Remove struct and typedef.
1625 [MAC_OS8] (main): Call init_apple_event_handler instead of
1626 init_required_apple_events.
1627 (mac_initialize) [MAC_OSX]: Likewise.
1628 [!USE_CARBON_EVENTS] (mac_wait_next_event):
1629 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
1630
1631 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
1632 Add externs.
1633 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
1634 (Fmac_get_preference): Add EXFUN.
1635
1636 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
1637 event.
1638
1639 2005-12-09 Richard M. Stallman <rms@gnu.org>
1640
1641 * xfns.c (Fx_create_frame): Reinstate previous change.
1642
1643 2005-12-09 Eli Zaretskii <eliz@gnu.org>
1644
1645 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
1646 GDB to the abort dialog.
1647
1648 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
1649
1650 * indent.c (Fvertical_motion): Force move if starting on
1651 stretch glyph.
1652
1653 2005-12-08 Richard M. Stallman <rms@gnu.org>
1654
1655 * lread.c (read_escape) <\s>: Don't treat strings specially.
1656
1657 * xfns.c (Fx_create_frame): Comment out previous change.
1658
1659 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1660
1661 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
1662 when needed.
1663
1664 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
1665
1666 * minibuf.c (keys_of_minibuf): Just unbind SPC in
1667 Vminibuffer_local_filename_completion_map rather than forcing it
1668 explicitly to the same binding as the global map.
1669
1670 2005-12-06 Ken Raeburn <raeburn@gnu.org>
1671
1672 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
1673 * bytecode.c (Fbyte_code): Likewise.
1674 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
1675 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
1676 * undo.c (truncate_undo_list): Likewise.
1677
1678 2005-12-05 Richard M. Stallman <rms@gnu.org>
1679
1680 * window.c (enlarge_window): Eliminate arg preserve_before.
1681 Assume it is 0. All callers changed.
1682 (Fenlarge_window, Fshrink_window): Likewise.
1683
1684 2005-12-02 Eli Zaretskii <eliz@gnu.org>
1685
1686 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
1687 fit below.
1688
1689 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1690
1691 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
1692
1693 * xfns.c (x_real_positions): int ign => unsigned int.
1694 (xg_set_icon_from_xpm_data): Remove unused variable err.
1695 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
1696 to remove compiler warning.
1697 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
1698
1699 2005-12-02 David Reitter <david.reitter@gmail.com>
1700
1701 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
1702 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
1703 and Vminibuffer_local_must_match_filename_map keymaps.
1704 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
1705
1706 * keymap.c (Vminibuffer_local_filename_completion_map)
1707 (Vminibuffer_local_must_match_filename_map): New variables.
1708 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
1709 parent to be Vminibuffer_local_completion_map and
1710 Vminibuffer_local_must_match_map, respectively.
1711
1712 * commands.h (Vminibuffer_local_filename_completion_map)
1713 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
1714
1715 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
1716
1717 * window.c (Fset_window_configuration): Don't accidentally copy the
1718 window-point of one window to another.
1719
1720 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1721
1722 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
1723
1724 2005-11-30 Kim F. Storm <storm@cua.dk>
1725
1726 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
1727 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
1728 passing it to `emacs_write'.
1729
1730 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
1731
1732 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
1733
1734 2005-11-27 Richard M. Stallman <rms@gnu.org>
1735
1736 * window.c (adjust_window_trailing_edge): New function.
1737 (Fadjust_window_trailing_edge): New function.
1738 (syms_of_window): Defsubr it.
1739 (window_deletion_count): New variable.
1740 (delete_window): Update window_deletion_count.
1741
1742 2005-11-26 Eli Zaretskii <eliz@gnu.org>
1743
1744 * minibuf.c (syms_of_minibuf): Mention the extension of
1745 `completion-auto-help's meaning by complete.el.
1746
1747 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
1748
1749 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
1750 Handle :inherit property as a lisp expression.
1751
1752 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1753
1754 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
1755 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
1756 Qsuper, and Qmodifier_value.
1757 (Vmac_control_modifier, Vmac_option_modifier)
1758 (Vmac_command_modifier, Vmac_function_modifier)
1759 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
1760 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
1761 (Vmac_charset_info_alist): Doc fixes.
1762
1763 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1764
1765 * emacs.c (main) [MAC_OSX]: Change working directory to home
1766 directory if `-psn_*' option is specified.
1767
1768 * mac.c (DECODE_UTF_8): Remove macro.
1769 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
1770 created from cfstring_to_lisp.
1771 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
1772 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
1773
1774 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
1775 Add prototype.
1776
1777 2005-11-21 Ken Raeburn <raeburn@gnu.org>
1778
1779 * keymap.c (shadow_lookup): Use make_number to pass a number to
1780 Fsubstring.
1781
1782 2005-11-21 Juri Linkov <juri@jurta.org>
1783
1784 * puresize.h (BASE_PURESIZE): Increment to 1180000.
1785
1786 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
1787
1788 * xfaces.c (Finternal_set_lisp_face_attribute):
1789 Use :ignore-defface for new frame defaults when `unspecified' is
1790 supplied.
1791 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
1792 (merge_face_vectors): Don't do :ignore-defface overwriting here.
1793 (Finternal_merge_in_global_face): Do it here.
1794
1795 2005-11-20 Juri Linkov <juri@jurta.org>
1796
1797 * charset.c (invalid_character): Use Lisp-readable syntax
1798 for octal and hex. Reorder decimal, octal and hex values.
1799
1800 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
1801
1802 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
1803 this type is recognised when debugging.
1804
1805 2005-11-19 Andreas Schwab <schwab@suse.de>
1806
1807 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
1808 Lisp_Cons and Lisp_Float.
1809
1810 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1811
1812 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
1813 New variable.
1814 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
1815 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
1816 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
1817 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
1818
1819 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
1820
1821 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
1822
1823 * xfaces.c (Qignore_defface): New variable.
1824 (syms_of_xfaces): Provide `:ignore-defface'.
1825 (IGNORE_DEFFACE_P): New macro.
1826 (check_lface_attrs, lface_fully_specified_p)
1827 (Finternal_set_lisp_face_attribute)
1828 (Fface_attribute_relative_p, Fmerge_face_attribute):
1829 Handle Qignore_defface as a possible value.
1830 (merge_face_vectors): The merged face is `unspecified' if the
1831 mergee specifies `:ignore-defface'.
1832
1833 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
1834
1835 * lread.c (readevalloop): Add missing GCPROs.
1836
1837 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
1838
1839 * xfns.c (xg_set_icon_from_xpm_data): New function.
1840
1841 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
1842 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
1843
1844 * xterm.c (x_bitmap_icon): Use the xpm if available.
1845
1846 * image.c (x_create_bitmap_from_xpm_data): New function.
1847 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
1848
1849 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
1850
1851 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
1852
1853 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
1854
1855 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
1856
1857 2005-11-15 Andreas Schwab <schwab@suse.de>
1858
1859 * lisp.h (struct Lisp_Cons): Make cdr a union.
1860 (XCDR_AS_LVALUE): Adjust.
1861 (struct Lisp_Float): Make data a union.
1862 (XFLOAT_DATA): Adjust.
1863
1864 * alloc.c (free_float): Make free list chaining aliasing-safe.
1865 (make_float): Likewise.
1866 (free_cons): Likewise.
1867 (Fcons): Likewise.
1868 (check_cons_list): Likewise.
1869 (Fmake_symbol): Likewise.
1870 (allocate_misc): Likewise.
1871 (free_misc): Likewise.
1872 (gc_sweep): Likewise.
1873
1874 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1875
1876 * mac.c (HASHKEY_QUERY_CACHE): New define.
1877 (xrm_create_database, xrm_q_put_resource): Empty query cache.
1878 (xrm_get_resource): Use query cache.
1879
1880 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
1881 inhibit_window_system is set.
1882
1883 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1884
1885 * macgui.h (USE_CG_TEXT_DRAWING): New define.
1886 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
1887 and cg_glyphs.
1888
1889 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
1890 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
1891 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
1892 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
1893 not used and font substitution never occurs for ASCII and Latin-1
1894 characters.
1895 (XLoadQueryFont): Maximum and minimum metrics are now those among
1896 ASCII characters.
1897 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
1898 height adjustments for Courier, Helvetica, and Times.
1899
1900 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
1901
1902 2005-11-11 David Reitter <david.reitter@gmail.com>
1903
1904 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
1905 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
1906 Vmac_control_modifier / mac-control-modifier,
1907 Vmac_option_modifier / mac-option-modifier,
1908 Vmac_command_modifier / mac-command-modifier.
1909 (mac_to_emacs_modifiers): Use the new style modifier
1910 variables. Return UInt32 (modifiers are longs now.)
1911 (backtranslate_modified_keycode): New function (refactoring).
1912 (XTread_socket): Use new modifier variables and refactored function.
1913 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
1914 no dedicated meta key. Not in use anyway.)
1915 (convert_fn_keycode): Map Fn-keys to their original keycode
1916 using a table (english keyboard only).
1917
1918 2005-11-11 Kim F. Storm <storm@cua.dk>
1919
1920 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
1921 Add post hook to "backtrace" to always dump lisp call stack to
1922 increase chance of people sending it to us when reporting bugs.
1923
1924 * doc.c (Fsubstitute_command_keys): Doc fix.
1925
1926 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
1927
1928 * xdisp.c (handle_stop): Skip overlay string handling if
1929 ignore_overlay_strings_at_pos_p is set.
1930 (set_iterator_to_next): At end of display vector, set
1931 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
1932 string, so we skip those overlay strings at current pos.
1933
1934 2005-11-10 Lars Hansen <larsh@soem.dk>
1935
1936 * fileio.c (file-regular-p): Doc fix.
1937
1938 2005-11-10 Kim F. Storm <storm@cua.dk>
1939
1940 * alloc.c (valid_lisp_object_p): New function to validate that
1941 an object is really a valid Lisp_Object.
1942
1943 * lisp.h (valid_lisp_object_p): Add prototype.
1944
1945 * print.c (safe_debug_print): New function to be called from gdb
1946 to print Lisp objects; use valid_lisp_object_p to avoid crashing
1947 if user tries to print something which is not a Lisp object.
1948
1949 * .gdbinit (pp, pp1): Use safe_debug_print.
1950 (pv, pv1): New commands to print value of a lisp variable.
1951
1952 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
1953
1954 * .gdbinit (pp1): New user-defined function.
1955
1956 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1957
1958 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
1959
1960 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
1961 related variables for dumped executable.
1962
1963 * unexmacosx.c (unexec_write_zero): New function.
1964 (copy_data_segment): Clear uninitialized local variables in
1965 statically linked libraries.
1966
1967 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
1968
1969 2005-11-09 Juri Linkov <juri@jurta.org>
1970
1971 * keymap.c (shadow_lookup): If Flookup_key returns a number,
1972 call it again with a sub-key-sequence, and if its return value
1973 is non-nil (sub-key is bound), return nil.
1974
1975 2005-11-08 Kim F. Storm <storm@cua.dk>
1976
1977 * process.c (Fsignal_process): Recognize signal names with and
1978 without SIG prefix, e.g. SIGHUP and HUP.
1979
1980 * search.c (search_buffer): No need to initialize base_pat.
1981
1982 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
1983
1984 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
1985 Don't abuse the `mini' arg. Use the `obj' arg instead.
1986
1987 2005-11-04 Kim F. Storm <storm@cua.dk>
1988
1989 * xdisp.c (show_mouse_face): Clear mouse face to eol.
1990
1991 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
1992
1993 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
1994 font-lock.elc and jit-lock.elc.
1995
1996 2005-11-03 Richard M. Stallman <rms@gnu.org>
1997
1998 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
1999 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
2000 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
2001
2002 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
2003
2004 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
2005
2006 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2007
2008 * window.c (Fdisplay_buffer): Fix last change to not use
2009 a dedicated window.
2010
2011 2005-11-01 Kim F. Storm <storm@cua.dk>
2012
2013 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
2014 Instead, rotate the bottom angle bitmap 180 degrees to indicate
2015 that the bottom row does not end in a newline.
2016
2017 2005-11-01 Andreas Schwab <schwab@suse.de>
2018
2019 * unexelf.c (unexec): Handle .plt section in BSS segment.
2020
2021 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2022
2023 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
2024
2025 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
2026 determine whether to consider dedicated windows as well.
2027 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
2028 (Fdisplay_buffer): Do consider dedicated windows in those cases where
2029 we will split the window rather than reuse it.
2030 Don't try to use windows on other displays.
2031
2032 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
2033
2034 * puresize.h (BASE_PURESIZE): Increment to 1170000.
2035
2036 2005-10-31 Romain Francoise <romain@orebokech.com>
2037
2038 * macfns.c: Update copyright year.
2039 * m/gould.h: Likewise.
2040
2041 2005-10-30 Kim F. Storm <storm@cua.dk>
2042
2043 * xdisp.c (display_line): Restore it->current_x and call
2044 extend_face_to_end_of_line when last glyph doesn't fit on line.
2045 (set_glyph_string_background_width): Remove specific tests here
2046 to see if face background should extend to end of line. Simplify.
2047
2048 2005-10-30 Richard M. Stallman <rms@gnu.org>
2049
2050 * alloc.c (BYTES_USED): Use uordblks, not arena.
2051 (bytes_used_when_reconsidered): New variable.
2052 (emacs_blocked_free): Set that.
2053
2054 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
2055
2056 * alloc.c (emacs_blocked_free): Fix typo.
2057
2058 2005-10-29 Richard M. Stallman <rms@gnu.org>
2059
2060 * data.c (Fmake_variable_frame_local): Doc fix.
2061
2062 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
2063 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
2064 controls whether to save and restore mode_line_proptrans_alist.
2065 Callers changed.
2066 (unwind_format_mode_line): Work with that feature.
2067 (redisplay_internal): Don't call prepare_menu_bars if memory full.
2068 (move_elt_to_front): New function.
2069 (display_mode_element): Use move_elt_to_front.
2070 Don't bother munging text props on a null string.
2071 Delete obsolete elts from mode_line_proptrans_alist.
2072 (decode_mode_spec): Test Vmemory_full, not spare_memory.
2073 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
2074
2075 * lisp.h (memory_full_cons_threshold): Declare.
2076 (internal_lisp_condition_case): Declare.
2077
2078 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
2079 (Fmemory_full_p): Function deleted.
2080 (syms_of_alloc): Don't defsubr it.
2081 (memory_full_cons_threshold): New variable.
2082 (spare_memory): Now a vector of 7 elts.
2083 (buffer_memory_full): Don't set Vmemory_full here.
2084 (xfree): Don't try to refill here.
2085 (emacs_blocked_free): Record BYTES_USED in local var.
2086 (memory_full): Now free all the slots in spare_memory.
2087 (refill_memory_reserve): Allocate each slot in spare_memory.
2088 (init_alloc_once): Call refill_memory_reserve.
2089
2090 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
2091
2092 * eval.c (internal_lisp_condition_case): New function.
2093 (Fcondition_case): Use internal_lisp_condition_case.
2094 (Feval): Test Vmemory_full and memory_full_cons_threshold.
2095 (Ffuncall): Likewise.
2096
2097 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
2098
2099 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
2100
2101 * syntax.c (Fparse_partial_sexp): Fix docstring.
2102
2103 2005-10-28 Romain Francoise <romain@orebokech.com>
2104
2105 * puresize.h (BASE_PURESIZE): Increment to 1130000.
2106
2107 2005-10-28 Richard M. Stallman <rms@gnu.org>
2108
2109 * xfns.c (syms_of_xfns): Provide `x' as feature.
2110
2111 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
2112
2113 * editfns.c (Fformat): Don't include string padding
2114 between info[n].start and info[n].end.
2115
2116 * alloc.c (spare_memory): No longer static.
2117 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
2118
2119 * puresize.h (BASE_PURESIZE): Increment to 1120000.
2120
2121 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
2122
2123 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
2124
2125 * fringe.c (update_window_fringes): Handle case where buffer ends
2126 with a newline.
2127
2128 2005-10-27 Kenichi Handa <handa@m17n.org>
2129
2130 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
2131
2132 2005-10-24 Kenichi Handa <handa@m17n.org>
2133
2134 * charset.h (charset_mule_unicode_0100_24ff)
2135 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2136 Extern them.
2137
2138 * charset.c (charset_mule_unicode_0100_24ff)
2139 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2140 New variables.
2141 (Fsetup_special_charsets): Initialize them.
2142
2143 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
2144 supported Unicode characters.
2145
2146 2005-10-25 Jason Rumney <jasonr@gnu.org>
2147
2148 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
2149
2150 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2151
2152 * image.c [MAC_OS] (image_load_qt_1): Check image size.
2153 Use GraphicsImportGetImageDescription instead of
2154 GraphicsImportGetNaturalBounds.
2155 [MAC_OSX] (image_load_quartz2d): Check image size.
2156 [MAC_OS] (xpm_load_image): Likewise.
2157
2158 * macterm.c (last_mouse_glyph_frame): New var.
2159 (note_mouse_movement): Say mouse moved if current frame differs
2160 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2161 (XTmouse_position): Set last_mouse_glyph_frame.
2162 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
2163 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
2164 Use EndianU16_BtoN.
2165 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
2166 (x_per_char_metric, XLoadQueryFont)
2167 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
2168 glyph bounds.
2169 (mac_to_x_fontname, mac_do_list_fonts)
2170 (mac_initialize_display_info): Change screen resolutions to 72dpi.
2171
2172 2005-10-25 Masatake YAMATO <jet@gyve.org>
2173
2174 * minibuf.c (Fdisplay_completion_list): Small doc fix.
2175
2176 2005-10-24 Kim F. Storm <storm@cua.dk>
2177
2178 * xterm.c: Undo 2005-10-23 change.
2179 (last_mouse_glyph_frame): New var.
2180 (note_mouse_movement): Say mouse moved if current frame differs
2181 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2182 (XTmouse_position): Set last_mouse_glyph_frame.
2183 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
2184 last_mouse_glyph] on mouse up/down event.
2185
2186 * editfns.c (Fcompare_buffer_substrings): Fix last change.
2187
2188 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2189
2190 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
2191
2192 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2193
2194 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
2195 so tool tips don't interfere with press on tool bar button.
2196
2197 2005-10-23 Richard M. Stallman <rms@gnu.org>
2198
2199 * casetab.c (Fset_case_table): Doc fix.
2200
2201 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
2202 (readevalloop): Compute ENTIRE properly.
2203 (syms_of_lread) <load-history>: Doc fix.
2204
2205 2005-10-21 Richard M. Stallman <rms@gnu.org>
2206
2207 * lread.c (Fload): Simplify gcpro structure.
2208 Gcpro FOUND as well as FILE, but not EFOUND.
2209 Unless preloading, record FOUND instead of FILE in Vload_history.
2210 Rename repeat local FILE to MSG_FILE.
2211 (syms_of_lread) <load-history>: Doc fix.
2212
2213 2005-10-21 Kenichi Handa <handa@m17n.org>
2214
2215 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
2216
2217 2005-10-20 Kim F. Storm <storm@cua.dk>
2218
2219 * buffer.c (clone_per_buffer_values): Remove unused var tem.
2220 (init_buffer): Remove unused vars dotstat, pwdstat.
2221
2222 * ccl.c (check_ccl_update): Remove unused var vp.
2223
2224 * fileio.c (auto_save_error): Call SAFE_FREE.
2225
2226 * fns.c (Fchar_table_range): Remove unused var i.
2227
2228 * minibuf.c (display_completion_list_1): New wrapper function
2229 for Fdisplay_completion_list.
2230 (Fminibuffer_completion_help): Use it.
2231
2232 * term.c (encode_terminal_code): Remove unused var src_start.
2233
2234 * window.c (Fwindow_tree): Remove unused var alist.
2235
2236 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
2237
2238 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
2239
2240 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
2241
2242 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
2243
2244 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
2245
2246 2005-10-20 Andreas Schwab <schwab@suse.de>
2247
2248 * minibuf.c (Fdisplay_completion_list): Doc fix.
2249
2250 2005-10-19 Kim F. Storm <storm@cua.dk>
2251
2252 * image.c (check_image_size): Handle integer Vmax_image_size value
2253 directly as max pixel value. Use default frame size for null frame.
2254 (syms_of_image) <max-image-size>: Describe integer value.
2255
2256 2005-10-19 Romain Francoise <romain@orebokech.com>
2257
2258 * emacs.c (main): Update copyright year.
2259
2260 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
2261
2262 * image.c (Vmax_image_size): New variable.
2263 (check_image_size): New function.
2264 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
2265 (gif_load, gs_load): Use it.
2266 (lookup_image): Try loading again if previous load failed.
2267 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
2268 to display in, NULL if none.
2269 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
2270 argument.
2271
2272 2005-10-18 Richard M. Stallman <rms@gnu.org>
2273
2274 * search.c (Fstring_match): Doc fix.
2275
2276 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2277
2278 * macterm.c (note_mouse_movement): Use PtInRect.
2279 (XTread_socket): Also ignore mouse motion just before a button
2280 release event. Don't process button release event when mouse is
2281 not grabbed.
2282
2283 2005-10-16 Masatake YAMATO <jet@gyve.org>
2284
2285 * minibuf.c (Fdisplay_completion_list): Add new optional
2286 argument COMMON_SUBSTRING. Bind `completion-common-substring'
2287 to the optional argument during running `completion-setup-hook'.
2288
2289 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2290
2291 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
2292 Allow nil as argument.
2293 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
2294 for encoding arguments as UTF-16 in native byte order, no BOM.
2295
2296 * macfns.c (Fx_create_frame): Add debugging code.
2297 (Fx_show_tip): Set frame pixel width and height.
2298
2299 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
2300 (FRAME_NORMAL_GC): New macro.
2301 (mac_draw_line, mac_clear_area, mac_clear_window)
2302 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
2303 (mac_draw_image_string, mac_draw_image_string_16): Rename from
2304 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
2305 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
2306 All uses changed.
2307 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
2308 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
2309 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
2310 (mac_draw_string_16, mac_draw_image_string)
2311 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
2312 (mac_scroll_area): Drawing functions now take frame as destination.
2313 All uses changed.
2314 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
2315 (x_draw_fringe_bitmap): Set clipping area in face->gc.
2316
2317 * macterm.h (mac_clear_area): Add extern.
2318
2319 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2320
2321 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
2322 changes for xterm.c.
2323
2324 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
2325
2326 2005-10-14 Kenichi Handa <handa@m17n.org>
2327
2328 * search.c (search_buffer): Give up BM search on case-fold-search
2329 if one of a target character has a case-equivalence of different
2330 charset even if that target charcter is an ASCII.
2331
2332 * casefiddle.c (casify_object): Fix for the case that case
2333 conversion change the byte length.
2334
2335 2005-10-14 Kim F. Storm <storm@cua.dk>
2336
2337 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
2338 (handle_one_xevent): Only clear help_echo_string; restore it if
2339 note_mouse_movement didn't record any mouse movement.
2340
2341 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
2342 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
2343
2344 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
2345 (Fposn_at_x_y): Fix calculation of x coordinate.
2346 (Fposn_at_point): Return nil if point is hscrolled out of view.
2347
2348 2005-10-13 Andreas Schwab <schwab@suse.de>
2349
2350 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
2351 non-interactive mode.
2352
2353 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2354
2355 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
2356
2357 2005-10-12 Kim F. Storm <storm@cua.dk>
2358
2359 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
2360
2361 2005-10-12 Romain Francoise <romain@orebokech.com>
2362
2363 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
2364
2365 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2366
2367 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
2368 get end of text rows. Obtain header-line/mode-line rows directly.
2369
2370 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
2371 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
2372
2373 2005-10-12 Kim F. Storm <storm@cua.dk>
2374
2375 * xdisp.c (remember_mouse_glyph): New generic version based on
2376 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
2377 properly handle all different window areas.
2378
2379 * dispextern.h (remember_mouse_glyph): Add prototype.
2380
2381 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
2382 (note_mouse_movement, XTmouse_position): Use generic
2383 remember_mouse_glyph, add last_mouse_glyph arg.
2384
2385 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
2386 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
2387 (note_mouse_movement, w32_mouse_position): Use generic
2388 remember_mouse_glyph, add last_mouse_glyph arg.
2389
2390 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
2391 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
2392 (XTmouse_position): Adapt to use generic remember_mouse_glyph
2393 instead of pixel_to_glyph_coords.
2394
2395 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
2396 Fix x position for ON_TEXT when left margin width > 0.
2397
2398 2005-10-11 Kim F. Storm <storm@cua.dk>
2399
2400 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
2401
2402 * keyboard.c (make_lispy_position): Fix buffer calculations for
2403 mouse click or movement in right fringe and the margins.
2404
2405 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
2406
2407 * image.c (fn_jpeg_stdio_src): Don't define it.
2408 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
2409 (our_common_init_source): Rename from `our_init_source'.
2410 (our_common_term_source): Rename from `our_term_source'.
2411 (our_memory_fill_input_buffer): Rename from
2412 `our_fill_input_buffer'.
2413 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
2414 (jpeg_memory_src): Use the new names.
2415 (struct jpeg_stdio_mgr): New struct.
2416 (JPEG_STDIO_BUFFER_SIZE): New constant.
2417 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
2418 (jpeg_file_src): New functions.
2419 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
2420
2421 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2422
2423 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
2424 (fm_font_family_alist): New variable.
2425 (syms_of_macterm): Initialize and staticpro it.
2426 (decode_mac_font_name): Replace '-' in family name with '_' if it
2427 occurs just once. Lower family name.
2428 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
2429 All uses changed. Remove argument MF and code conversion for it.
2430 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
2431 to CHARSET. Parse font size. Lower family name. Return integer
2432 value for status of parsing.
2433 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
2434 Don't use Fdowncase because family name is already lowered by
2435 decode_mac_font_name.
2436 (init_font_name_table): Always call decode_mac_font_name.
2437 Add pair of family name and its reference to fm_font_family_alist.
2438 (mac_clear_font_name_table): Clear fm_font_family_alist.
2439 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
2440 Lookup fm_font_family_alist to get font family reference.
2441 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
2442 name is already lowered by parse_x_font_name.
2443
2444 2005-10-11 Kim F. Storm <storm@cua.dk>
2445
2446 * xterm.c (glyph_rect): Return 0 if position is outside text area.
2447
2448 * keyboard.c (make_lispy_position): Fix buffer position calculation for
2449 mouse click or movement in fringe.
2450
2451 2005-10-10 Jason Rumney <jasonr@gnu.org>
2452
2453 * xterm.c (remember_mouse_glyph): New function.
2454 (note_mouse_movement): Use it to remember the current glyph if changed.
2455 (XTmouse_position): Fix calculation of fake glyph under mouse.
2456 Move code to calculate glyph under mouse into remember_mouse_glyph.
2457
2458 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2459
2460 * emacs.c (USAGE3, standard_args): -nb => -nbi.
2461
2462 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
2463
2464 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
2465 (next_frame, prev_frame, set_term_frame_name): Make static.
2466
2467 * window.c (Fwindow_tree): Fix spelling.
2468
2469 2005-10-09 Romain Francoise <romain@orebokech.com>
2470
2471 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
2472
2473 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2474
2475 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
2476 Add options -nb, --no-bitmap-icon.
2477
2478 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
2479
2480 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2481
2482 * macgui.h (MAX_CLIP_RECTS): New define.
2483 (struct _XGC): New member clip_region.
2484 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
2485 clip_rects.
2486
2487 * macterm.c (GC_CLIP_REGION): New macro.
2488 (saved_port_clip_region): New variable.
2489 (mac_begin_clip, mac_end_clip): New functions.
2490 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
2491 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
2492 (mac_copy_area_with_mask, mac_scroll_area): Use them.
2493 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
2494 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
2495 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
2496 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
2497 rectangles stored in gc.
2498 (XFreeGC): Dispose of clipping region.
2499 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
2500 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
2501 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
2502 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
2503 (x_draw_bar_cursor): Use them.
2504 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
2505 get multiple clipping rectangles.
2506
2507 * macterm.h (mac_term_init): Add types to extern.
2508 (struct mac_output): Remove members mWP and pending_menu_activation.
2509 Put members scroll_bar_foreground_pixel and
2510 scroll_bar_background_pixel in #if 0.
2511 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
2512
2513 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
2514 Add debugging code.
2515
2516 2005-10-08 Kim F. Storm <storm@cua.dk>
2517
2518 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
2519
2520 2005-10-07 Kim F. Storm <storm@cua.dk>
2521
2522 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
2523 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
2524 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
2525
2526 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2527
2528 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
2529 to for_overlaps. Now occupy 3 bits.
2530 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
2531 (OVERLAPS_ERASED_CURSOR): New defines.
2532 (struct redisplay_interface): Add new OVERLAPS arg to member
2533 fix_overlapping_area.
2534 (x_fix_overlapping_area): Add new OVERLAPS arg.
2535 (get_glyph_string_clip_rects): Add extern.
2536
2537 * dispnew.c (redraw_overlapping_rows):
2538 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
2539
2540 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
2541 for_overlaps.
2542 (get_glyph_string_clip_rects): New function created from
2543 get_glyph_string_clip_rect. Set clipping rectangles according to the
2544 value of for_overlaps. Enable to store multiple clipping rectangles.
2545 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
2546 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
2547 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
2548 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
2549 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
2550 calculating clipping rectangles later. Call x_fix_overlapping_area
2551 with new OVERLAPS arg to draw only erased cursor area.
2552 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
2553 to draw overlaps in both preceding and succeeding rows.
2554
2555 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
2556 struct glyph_string to for_overlaps.
2557
2558 2005-10-04 Richard M. Stallman <rms@gnu.org>
2559
2560 * alloc.c (refill_memory_reserve): Conditionalize the body,
2561 not the function's existence.
2562
2563 2005-10-04 Kim F. Storm <storm@cua.dk>
2564
2565 * window.c (window_split_tree): New function.
2566 (Fwindow_split_tree): New defun.
2567 (syms_of_window): Defsubr it.
2568
2569 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2570
2571 * macterm.c (mac_invert_rectangle): New function.
2572 (XTflash): Use it.
2573
2574 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
2575
2576 * regex.h (re_char): Don't expose it in the interface.
2577 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
2578
2579 * regex.c (re_char): Move it back here.
2580 (re_set_whitespace_regexp): Change the arg's type to not use it.
2581
2582 * keyboard.c (make_lispy_event): If point has moved between down and up
2583 event, make it a drag, not a click, to mirror what
2584 mouse-drag-region expects.
2585
2586 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
2587
2588 * lisp.h (fatal): Undo previous change.
2589 * term.c (fatal): Undo previous change.
2590
2591 2005-10-01 Richard M. Stallman <rms@gnu.org>
2592
2593 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
2594
2595 2005-10-01 Kim F. Storm <storm@cua.dk>
2596
2597 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
2598
2599 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2600
2601 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
2602
2603 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
2604 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
2605 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
2606 Try ATSUI-compatible 12pt Monaco font first.
2607
2608 * macgui.h (struct _XCharStruct): New member valid_p.
2609 (STORE_XCHARSTRUCT): Set valid_p.
2610 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
2611
2612 * macterm.c (mac_draw_string_common, x_per_char_metric)
2613 (mac_compute_glyph_string_overhangs, init_font_name_table)
2614 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
2615 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
2616 (x_draw_glyph_string_background)
2617 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
2618 XDrawImageString. Always draw background and foreground separately.
2619 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
2620 functions for one-byte chars when using ATSUI-compatible fonts.
2621 (atsu_font_id_hash) [USE_ATSUI]: New variable.
2622 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
2623 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
2624 max_char_or_byte2 more in detail.
2625 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
2626
2627 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
2628
2629 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
2630 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
2631
2632 * unexelf.c (fatal): Fix prototype.
2633
2634 * term.c (fatal): Implement using varargs.
2635
2636 * regex.c (re_char): Move typedef ...
2637 * regex.h (re_char): ... here.
2638 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
2639
2640 * emacs.c (malloc_set_state): Fix return type.
2641 (endif): Fix type.
2642
2643 * lisp.h (fatal): Add argument types.
2644
2645 * dispextern.h (fatal): Delete prototype.
2646
2647 * systime.h (make_time): Prototype moved from ...
2648 * editfns.c (make_time): ... here.
2649
2650 * editfns.c: Move systime.h include after lisp.h.
2651 * dired.c:
2652 * xsmfns.c:
2653 * process.c: Likewise.
2654
2655 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
2656 Add parameter types.
2657 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
2658 (emacs_blocked_free): Change definition to match __free_hook.
2659 (emacs_blocked_malloc): Change definition to match __malloc_hook.
2660 (emacs_blocked_realloc): Change definition to match __realloc_hook.
2661
2662 2005-09-30 Romain Francoise <romain@orebokech.com>
2663
2664 * minibuf.c (Fread_buffer): Follow convention for reading from the
2665 minibuffer with a default value. Doc fix.
2666
2667 2005-09-29 Juri Linkov <juri@jurta.org>
2668
2669 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
2670 Rename argument name `string' to `format-string'.
2671 (Fformat): Doc fix.
2672
2673 2005-09-28 Kim F. Storm <storm@cua.dk>
2674
2675 * image.c (gif_load): Fix size of allocated image buffer
2676 for images where a sub-image may be larger than the image's
2677 total height/width specifications.
2678
2679 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2680
2681 * macgui.h (struct _XCharStruct): Each member now takes short value.
2682
2683 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
2684
2685 * xfaces.c (lookup_derived_face): Add parameter type.
2686
2687 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
2688
2689 * marker.c (verify_bytepos): Add parameter type.
2690
2691 * process.c (get_operating_system_release): Move prototype ...
2692
2693 * systime.h (get_operating_system_release): ... here.
2694
2695 * xterm.c (handle_one_xevent): Refer to union field to match the
2696 type required by the function definition.
2697 (set_vertical_scroll_bar): Move prototype ...
2698
2699 * xterm.h: ... here.
2700
2701 * fns.c (internal_equal, seed_random): Fix prototypes.
2702 (internal_equal): Add missing parameter.
2703
2704 2005-09-25 Richard M. Stallman <rms@gnu.org>
2705
2706 * keyboard.c (update_menu_bindings): Variable deleted.
2707 (syms_of_keyboard): Don't defvar it.
2708 (parse_menu_item): Don't test it.
2709
2710 2005-09-23 Richard M. Stallman <rms@gnu.org>
2711
2712 * editfns.c (Fformat): Explicitly test for end of format string
2713 and don't use `index'.
2714
2715 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
2716
2717 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
2718 Define BROKEN_GET_CURRENT_DIR_NAME.
2719
2720 * sysdep.c (get_current_dir_name): Also define if
2721 BROKEN_GET_CURRENT_DIR_NAME.
2722
2723 * m/ibmrs6000.h: Test for USG5, not USG5_4.
2724
2725 2005-09-22 Kim F. Storm <storm@cua.dk>
2726
2727 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
2728 (message2): Fix commentary. Ok to use alloca'ed memory.
2729 Still not ok to use Lisp string data (because of GC).
2730 (set_message): Add comment why GC cannot happen.
2731
2732 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2733
2734 * macterm.c (xlfdpat_block_match_1): Fix assertion.
2735 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
2736 variants for a scalable font multiple times.
2737
2738 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2739
2740 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
2741 Setup slave tty options before forking.
2742
2743 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2744
2745 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
2746 positions have been set for the frame (as is done for frames in
2747 special-display-buffer-names).
2748
2749 2005-09-19 Kim F. Storm <storm@cua.dk>
2750
2751 * editfns.c (Fformat): Don't scan past end of format string that
2752 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
2753
2754 2005-09-18 Andreas Schwab <schwab@suse.de>
2755
2756 * window.h (struct window): Remove height_fixed_p, no longer set.
2757
2758 * window.c (make_window): Don't initialize height_fixed_p.
2759 (window_fixed_size_p): Don't use it.
2760
2761 2005-09-18 John Paul Wallington <jpw@pobox.com>
2762
2763 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
2764
2765 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2766
2767 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
2768
2769 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
2770 New variables.
2771 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
2772 file selection.
2773
2774 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
2775
2776 2005-09-17 Eli Zaretskii <eliz@gnu.org>
2777
2778 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
2779 (obj): Use XMENU_OBJ, not a literal xmenu.o.
2780
2781 2005-09-16 Romain Francoise <romain@orebokech.com>
2782
2783 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
2784
2785 2005-09-15 Richard M. Stallman <rms@gnu.org>
2786
2787 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
2788 (display_mode_element): Instead of `lisp_string' and `this',
2789 record `offset' and increment that.
2790 `last_offset' replaces `last'.
2791
2792 * Makefile.in (XMENU_OBJ): Variable deleted.
2793 (obj): Use xmenu.o unconditionally.
2794 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
2795
2796 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
2797
2798 2005-09-15 Kim F. Storm <storm@cua.dk>
2799
2800 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
2801 (reseat_at_next_visible_line_start): Likewise (in xassert).
2802
2803 2005-09-14 Romain Francoise <romain@orebokech.com>
2804
2805 * fileio.c (write_region_inhibit_fsync): New variable.
2806 (Fwrite_region): Use it to skip call to fsync.
2807 (syms_of_fileio): Initialize it.
2808
2809 2005-09-14 Kenichi Handa <handa@m17n.org>
2810
2811 * coding.c (code_convert_region_unwind): Argument format changed.
2812 (run_pre_post_conversion_on_str): If pre-write-conversion function
2813 changed the current buffer, delete the new buffer.
2814 (run_pre_write_conversin_on_c_str): Likewise.
2815
2816 * fileio.c (Fexpand_file_name): Check multibyteness of
2817 default_directory.
2818
2819 2005-09-13 Kenichi Handa <handa@m17n.org>
2820
2821 * composite.c (compose_chars_in_text): Delete it.
2822
2823 * composite.h (compose_chars_in_text): Delete extern.
2824
2825 2005-09-13 Kim F. Storm <storm@cua.dk>
2826
2827 * print.c (print_error_message): Fix last change.
2828
2829 2005-09-12 Kim F. Storm <storm@cua.dk>
2830
2831 * composite.c (compose_chars_in_text): Fix setup of `pend'.
2832 Unconditionally reload `ptr' and `pend' after eval.
2833
2834 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
2835
2836 * print.c (print_error_message): Pass copy of caller name to
2837 message_dolog.
2838
2839 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
2840
2841 2005-09-12 Kenichi Handa <handa@m17n.org>
2842
2843 * xdisp.c (display_mode_element): Be sure to make variables THIS
2844 and LISP_STRING point into a string data of ELT.
2845
2846 2005-09-12 Kim F. Storm <storm@cua.dk>
2847
2848 * editfns.c (Ftranslate_region_internal): Reload `tt' after
2849 signal_after_change that may have GC'ed.
2850 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
2851
2852 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
2853 after insert while runs signal_after_change.
2854
2855 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
2856 declaration to where it is used.
2857
2858 * w32.c (check_windows_init_file): Fix allocation of error buffer.
2859
2860 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
2861 (x_set_name_internal): Call x_encode_text with new FREEP arg to
2862 know if xfree is needed instead of guessing.
2863
2864 * xterm.h (x_encode_text): Remove prototype.
2865
2866 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
2867
2868 * w32term.c (x_bitmap_icon): Load small icons too.
2869
2870 2005-09-10 Romain Francoise <romain@orebokech.com>
2871
2872 * buffer.c (init_buffer): Grow buffer to add directory separator
2873 and terminal zero. Fix typos.
2874
2875 2005-09-10 Eli Zaretskii <eliz@gnu.org>
2876
2877 * buffer.c (init_buffer): Fix error message for failed call to
2878 get_current_dir_name.
2879 (get_current_dir_name): Remove prototype.
2880
2881 * xsmfns.c (get_current_dir_name): Remove prototype.
2882
2883 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
2884 Add prototype.
2885
2886 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
2887 Don't #undef NULL after including blockinput.h.
2888
2889 * config.in: Regenerated.
2890
2891 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
2892
2893 Remove the MAXPATHLEN limitations:
2894
2895 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
2896 New function.
2897
2898 * buffer.c (init_buffer): Use it.
2899
2900 * xsmfns.c (smc_save_yourself_CB): Ditto.
2901
2902 2005-09-09 Kim F. Storm <storm@cua.dk>
2903
2904 * doc.c (Fsubstitute_command_keys): Lookup key binding for
2905 commands that are remapped from some other command.
2906
2907 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
2908 flag in disabled rows below the window.
2909
2910 * frame.h (struct frame): New member updated_p.
2911
2912 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
2913 member. Remove local `updated' array and associated variables.
2914
2915 2005-09-07 Kim F. Storm <storm@cua.dk>
2916
2917 * xdisp.c (handle_display_prop): Respect overlay window property.
2918
2919 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
2920 Fixes crash reported by YAMAMOTO Mitsuharu.
2921
2922 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2923
2924 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
2925 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
2926 (xlfdpat_block_match_1, xlfdpat_match): New functions.
2927 (xlfdpat_block_match): New macro.
2928 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
2929 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
2930 (add_font_name_table_entry): Increase font_name_table_size more
2931 rapidly.
2932 (mac_c_string_match): Remove function.
2933 (mac_do_list_fonts): Use XLFD pattern match instead of regular
2934 expression match.
2935
2936 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
2937
2938 2005-09-03 Richard M. Stallman <rms@gnu.org>
2939
2940 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
2941 (move_it_in_display_line_to): Stop after last char on line even
2942 on a windowing terminal, if that's the specified stop position.
2943
2944 * fns.c (Fsort): Doc fix.
2945
2946 * editfns.c (Fpropertize): Don't insist that properties be symbols.
2947
2948 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
2949
2950 * dired.c (directory_files_internal_unwind, directory_files_internal)
2951 (file_name_completion): Use a Save_Value object rather than a cons of
2952 two 16bit ints to store the DIR*.
2953 (directory_files_internal, file_name_completion): Handle both EINTR and
2954 EAGAIN consistently after `readdir'.
2955
2956 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
2957
2958 * intervals.c (update_interval): Add position info in error.
2959
2960 * dispnew.c (window_to_frame_hpos, update_window):
2961 Avoid gcc warning about unused variable `f'.
2962
2963 2005-08-31 Jason Rumney <jasonr@gnu.org>
2964
2965 * w32menu.c (add_menu_item): If unicode_append_menu returns an
2966 error, revert to using AppendMenu.
2967
2968 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2969
2970 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
2971 All uses changed.
2972 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
2973 cases.
2974 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
2975 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
2976 Use posix_pathname_to_fsspec.
2977 [MAC_OS] (xpm_load_image): Fill in background_transparent field
2978 while we have mask.
2979
2980 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
2981
2982 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
2983
2984 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
2985
2986 * syntax.c (update_syntax_table): Properly reproduce the special +1
2987 setting of e_property at the end of the buffer when bumping into the
2988 INTERVALS_AT_ONCE limit.
2989
2990 2005-08-27 Eli Zaretskii <eliz@gnu.org>
2991
2992 * emacs.c (USAGE1): Fix the description of the -Q option.
2993
2994 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
2995
2996 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
2997
2998 2005-08-26 Kim F. Storm <storm@cua.dk>
2999
3000 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
3001 Don't move PT to new window start.
3002
3003 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3004
3005 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
3006 ICONIFY/DEICONIFY_EVENT.
3007
3008 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
3009 Restore background color.
3010 (mac_handle_visibility_change): New function.
3011 (x_make_frame_invisible, x_iconify_frame)
3012 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
3013 [USE_CARBON_EVENTS] (mac_handle_window_event)
3014 (install_window_handler): Handle visibility change events.
3015 (x_make_frame_visible): Don't reposition window if it is iconified
3016 or asked for visible before. Select and uncollapse window when it
3017 is made visible.
3018 (x_make_frame_invisible): Don't reset x_highlight_frame.
3019 (x_iconify_frame): Likewise. Make invisible frame visible before
3020 it is iconified.
3021 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
3022 (do_window_update): Don't change visibility of invisible frame.
3023
3024 2005-08-22 Juri Linkov <juri@jurta.org>
3025
3026 * term.c (turn_on_face): Check for TS_set_foreground and
3027 TS_set_background depending on standout_mode. Simplify.
3028
3029 2005-08-21 Kim F. Storm <storm@cua.dk>
3030
3031 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
3032 bitmaps on fully visible rows.
3033
3034 * fringe.c (update_window_fringes): Replace FORCE_P arg with
3035 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
3036 and return 0.
3037
3038 * xdisp.c (redisplay_window): Call update_window_fringes with
3039 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
3040
3041 2005-08-20 Richard M. Stallman <rms@gnu.org>
3042
3043 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
3044 (resize_mini_window): Set w->start, and PT, so as to display the tail
3045 end of the buffer, if it doesn't all fit.
3046
3047 2005-08-18 Kim F. Storm <storm@cua.dk>
3048
3049 * xdisp.c (calc_pixel_width_or_height): Use actual display
3050 resolution when available instead of Vdisplay_pixels_per_inch.
3051
3052 2005-08-17 Kim F. Storm <storm@cua.dk>
3053
3054 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
3055
3056 * dispnew.c (buffer_posn_from_coords): Check that target row is
3057 within matrix.
3058
3059 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3060
3061 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
3062 xg_set_frame_icon and call it.
3063
3064 * gtkutil.c (xg_set_frame_icon): New function.
3065
3066 * gtkutil.h (xg_set_frame_icon): Declare it.
3067
3068 2005-08-16 Kim F. Storm <storm@cua.dk>
3069
3070 * dispnew.c (increment_row_positions): Skip non-enabled rows.
3071
3072 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
3073 (Fcurrent_window_configuration): Use VECSIZE macro instead.
3074
3075 2005-08-15 Richard M. Stallman <rms@gnu.org>
3076
3077 * xdisp.c (message3_nolog): Clear echo_message_buffer.
3078
3079 2005-08-15 Kim F. Storm <storm@cua.dk>
3080
3081 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
3082
3083 * process.c (deactivate_process, status_notify, read_process_output)
3084 (update_status, status_convert, decode_status, allocate_pty)
3085 (make_process, remove_process, list_processes_1)
3086 (create_process_1, unwind_request_sigio, read_process_output)
3087 (send_process, keyboard_bit_set): Declare static.
3088 (Fdelete_process): Simplify. Pass process to status_notify, so we
3089 don't try to read output from it.
3090 (status_notify): New arg deleting_process--don't try to read
3091 output from that process.
3092
3093 * lisp.h (deactivate_process, status_notify, read_process_output):
3094 Remove prototypes.
3095
3096 2005-08-14 Richard M. Stallman <rms@gnu.org>
3097
3098 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
3099 define_image_type.
3100
3101 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3102
3103 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
3104 (xg_get_image_for_pixmap): Move some code to
3105 xg_get_pixbuf_from_pix_and_mask, and call it.
3106
3107 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
3108
3109 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
3110 to get an GTK icon and set it with GTK functions to avoid having GTK
3111 override an icon set with just X functions.
3112
3113 2005-08-11 Richard M. Stallman <rms@gnu.org>
3114
3115 * image.c (syms_of_image): Init image_types here, and call
3116 define_image_type.
3117 (init_image): Not here.
3118
3119 2005-08-09 Richard M. Stallman <rms@gnu.org>
3120
3121 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
3122
3123 * lisp.h (QUIT): Throw t to Vthrow_on_input.
3124
3125 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
3126
3127 * floatfns.c (Fexpt): Use floats for negative exponent.
3128
3129 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3130
3131 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
3132 should not be there, causing menu display errors with GTK 2.6.9.
3133
3134 2005-08-07 Richard M. Stallman <rms@gnu.org>
3135
3136 * floatfns.c (Fexpt): Undo previous change.
3137
3138 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
3139 so it can be used with various state vectors.
3140
3141 * emacs.c (endif): Convert -script into -scriptload.
3142 (standard_args): Add -scriptload. Allow -basic-display with one dash.
3143
3144 * fns.c (syms_of_fns): Add `emacs' to features.
3145
3146 * term.c (set_terminal_modes): If no TS_termcap_modes string,
3147 output newlines to scroll the old screen contents off the screen.
3148
3149 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
3150
3151 * floatfns.c (Fexpt): Use floats for negative exponent.
3152 Reported by D Goel.
3153
3154 2005-08-02 Richard M. Stallman <rms@gnu.org>
3155
3156 * frame.c (Fframe_char_width): Doc fix.
3157
3158 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
3159
3160 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
3161 Defvar it.
3162
3163 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
3164
3165 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
3166 (my_create_window, my_create_tip_window): Make static.
3167
3168 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
3169 (my_set_foreground_window, my_destroy_window): Make static.
3170
3171 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
3172
3173 Merge gnulib getopt implementation into Emacs.
3174
3175 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
3176 now part of lib-src.
3177
3178 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
3179
3180 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
3181
3182 2005-07-25 Jason Rumney <jasonr@gnu.org>
3183
3184 * w32menu.c (w32_menu_display_help): Suppress tooltip when
3185 navigating menus with the keyboard.
3186
3187 2005-07-23 Richard M. Stallman <rms@gnu.org>
3188
3189 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
3190
3191 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
3192 gc_relative_threshold, one by one.
3193
3194 * keyboard.c (read_char): Test gc_cons_threshold.
3195 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
3196
3197 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
3198 gc_relative_threshold, one by one.
3199
3200 * alloc.c (gc_cons_threshold): Not static.
3201 (gc_cons_combined_threshold): Var deleted.
3202 (gc_relative_threshold): New variable.
3203 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
3204 instead of gc_cons_combined_threshold.
3205
3206 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
3207 (gc_cons_combined_threshold): Declaration deleted.
3208
3209 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3210
3211 * mac.c: Don't include stdlib.h or string.h.
3212 (Fdo_applescript, Fmac_file_name_to_posix)
3213 (Fmac_file_name_to_posix): Doc fixes.
3214 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
3215 (Fmac_code_convert_string): Likewise.
3216 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
3217 if the executable is not contained in a bundle.
3218
3219 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
3220 (gray_width, gray_height): Remove defines.
3221 (gray_bits, gray_bitmap_width, gray_bitmap_height)
3222 (gray_bitmap_bits): Remove variables.
3223 (lispy_function_keys): Remove extern.
3224 (free_frame_menubar): Add extern.
3225 (x_window_to_frame): Remove function.
3226 (unwind_create_tip_frame): Add declaration.
3227 (x_set_name_internal): New function.
3228 (x_set_name, x_set_title): Use it.
3229 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
3230 (Fx_display_pixel_height, Fx_display_planes)
3231 (Fx_display_color_cells, Fx_server_max_request_size)
3232 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3233 (Fx_display_mm_height, Fx_display_mm_width)
3234 (Fx_display_backing_store, Fx_display_visual_class)
3235 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
3236
3237 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3238
3239 * macselect.c (Fx_own_selection_internal): Follow error conventions.
3240 (Fx_get_selection_internal, Fx_selection_owner_p)
3241 (Fx_selection_exists_p): Doc fixes.
3242 (syms_of_macselect) <selection-converter-alist>: Likewise.
3243
3244 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
3245
3246 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
3247
3248 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
3249 (Fccl_execute_on_string): Likewise; add usage info.
3250
3251 * composite.c (Fcompose_region_internal)
3252 (Fcompose_string_internal):
3253 Improve argument/docstring consistency.
3254
3255 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
3256 Fix typos in docstrings.
3257
3258 * textprop.c (Fnext_char_property_change)
3259 (Fprevious_char_property_change): Doc fixes.
3260
3261 * window.c (Fset_window_margins, Fset_window_fringes):
3262 Improve argument/docstring consistency.
3263
3264 * xfaces.c (Finternal_lisp_face_p): Doc fix.
3265
3266 2005-07-21 Andreas Schwab <schwab@suse.de>
3267
3268 * eval.c (restore_stack_limits): Return a value.
3269
3270 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
3271
3272 * eval.c (Fdefvar): Doc fix.
3273
3274 2005-07-20 Kim F. Storm <storm@cua.dk>
3275
3276 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
3277 Use make_save_value to unwind protect stream.
3278
3279 * lread.c (Fload, load_unwind):
3280 Use make_save_value to unwind protect stream.
3281
3282 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
3283
3284 * eval.c (Fprog2, Fcalled_interactively_p),
3285 (syms_of_eval) <debug-on-quit>: Doc fixes.
3286 (syms_of_eval) <max-specpdl-size>:
3287 (Finteractive_p): Fix typos in docstrings.
3288
3289 2005-07-19 Kim F. Storm <storm@cua.dk>
3290
3291 * w32fns.c (Vx_hand_shape): Variable removed.
3292 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
3293
3294 2005-07-19 Kenichi Handa <handa@m17n.org>
3295
3296 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
3297
3298 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
3299
3300 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
3301
3302 2005-07-18 Kim F. Storm <storm@cua.dk>
3303
3304 * frame.h (struct frame): New member already_hscrolled_p.
3305
3306 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
3307 to avoid redisplay looping hscrolling back and forth ad infinitum.
3308
3309 2005-07-18 Juri Linkov <juri@jurta.org>
3310
3311 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
3312 * keymap.c (Fminor_mode_key_binding):
3313 * macterm.c (mac-emulate-three-button-mouse):
3314 Delete duplicate duplicate words.
3315
3316 2005-07-18 Ken Raeburn <raeburn@gnu.org>
3317
3318 * minibuf.c (Ftest_completion): Fix odd syntax in test.
3319
3320 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3321
3322 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
3323
3324 * macgui.h (struct _XGC): New struct.
3325 (GC): Use it.
3326 (GCForeground, GCBackground, GCFont): Use X11 mask values.
3327 (XCreateGC, XParseGeometry): Move externs to macterm.h.
3328
3329 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
3330 (XSetFont): Add declaration.
3331 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
3332 Remove functions.
3333 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
3334 New defines.
3335 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
3336 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
3337 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
3338 Use them.
3339 (mac_erase_rectangle): New function.
3340 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
3341 (x_draw_stretch_glyph_string): Use it.
3342 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
3343 (XSetBackground, XSetFont): Adjust for new GC implementation.
3344 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
3345 (XTset_vertical_scroll_bar): Clear area under scroll bar.
3346
3347 * macterm.h (struct mac_display_info): Change types of
3348 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
3349 (XCreateGC, XParseGeometry): Move externs from macgui.h.
3350
3351 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
3352
3353 2005-07-16 Richard M. Stallman <rms@gnu.org>
3354
3355 * buffer.c (Fmake_overlay): Doc fix.
3356
3357 2005-07-16 Eli Zaretskii <eliz@gnu.org>
3358
3359 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
3360 Vw32_valid_locale_ids, and Vw32_valid_codepages.
3361
3362 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3363
3364 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
3365 Use Fstring_as_unibyte instead of string_make_unibyte.
3366
3367 2005-07-15 Richard M. Stallman <rms@gnu.org>
3368
3369 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
3370
3371 2005-07-15 Kim F. Storm <storm@cua.dk>
3372
3373 * xdisp.c: Fix redisplay loop in last change.
3374 (IT_POS_VALID_AFTER_MOVE_P): New macro.
3375 (move_it_vertically_backward, move_it_by_lines): Use it.
3376
3377 2005-07-14 Jason Rumney <jasonr@gnu.org>
3378
3379 * w32.c (init_environment): Default HOME directory to user's
3380 appdata directory if possible.
3381
3382 2005-07-14 Kim F. Storm <storm@cua.dk>
3383
3384 * .gdbinit (pitx): Fix output format. Print string charpos.
3385
3386 * lread.c (syms_of_lread): Initialize seen_list.
3387
3388 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
3389
3390 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
3391 Staticpro re_match_object.
3392
3393 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3394
3395 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
3396 dereference.
3397
3398 * macterm.c (mac_window_to_frame): Remove duplicate define.
3399
3400 2005-07-14 Kenichi Handa <handa@m17n.org>
3401
3402 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
3403 (code_convert_region): Adjust for the above change.
3404 (set_conversion_work_buffer): If the work buffer is already in
3405 use, generate a new buffer and return it. Otherwise return Qnil.
3406 (run_pre_post_conversion_on_str): Adjust for the above change.
3407 (run_pre_write_conversin_on_c_str): Likewise.
3408
3409 2005-07-13 Kim F. Storm <storm@cua.dk>
3410
3411 * xdisp.c (start_display): Don't reseat to next visible line start
3412 if current start position is in a string or image.
3413 (move_it_vertically_backward): Be sure to move out of strings and
3414 images when moving it2 forward.
3415 (move_it_by_lines): When moving forward, move to next buffer
3416 position if we end up in a string or image. When moving backward,
3417 count rows moved over when moving to start of current row in case
3418 row starts in middle of a string or image. Also move further
3419 backward if we end up in a string or image.
3420 (try_cursor_movement): If overlay string spans multiple lines,
3421 move backward to set cursor on start of an overlay string.
3422 (cursor_row_p): Row is ok if cursor is at newline from string, but
3423 string starts on this line (so we always position cursor at start
3424 of string).
3425
3426 * indent.c (Fvertical_motion): If start position is on an image,
3427 don't move back if we move too far (that's almost certain to happen).
3428
3429 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
3430 row in minibuffer windows.
3431 (try_window): Don't check margins in minibuffer windows.
3432
3433 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3434
3435 * macterm.c: Don't include stdlib.h or composite.h.
3436 (x_use_underline_position_properties, last_mouse_press_frame)
3437 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
3438 (syms_of_macterm, mac_initialize): Don't initialize them.
3439 (waiting_for_input, initial_argv, initial_argc)
3440 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
3441 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
3442 (extra_keyboard_modifiers): Fix type in extern.
3443 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
3444 (x_scroll_bar_report_motion): Add argument types to declaration.
3445 (mac_compute_glyph_string_overhangs): Add declaration.
3446 (disable_mouse_highlight): Remove unused variable.
3447 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
3448 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
3449 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
3450 All callers changed.
3451 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
3452 timestamp.
3453 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
3454 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
3455 only when its width is less than the height.
3456 (XTredeem_scroll_bar): Sync with xterm.c.
3457 (font_name_table, font_name_table_size, font_name_count):
3458 Make static.
3459 (drag_and_drop_file_list): Remove variable. Previous use is now
3460 local to function.
3461 (do_ae_open_documents): Move DRAG_N_DROP event construction part
3462 from XTread_socket.
3463 (XTread_socket): Consolidate setting of event timestamp.
3464 Move DRAG_N_DROP event construction part to do_ae_open_documents.
3465 Support extra_keyboard_modifiers.
3466
3467 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
3468 beginning with that for ASCII.
3469
3470 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
3471
3472 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
3473 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
3474 (syms_of_alloc): Declare gc-cons-percentage.
3475
3476 * eval.c (Feval, Ffuncall):
3477 * keyboard.c (read_char):
3478 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
3479
3480 * lisp.h (gc_cons_combined_threshold): Declare.
3481
3482 2005-07-12 Kim F. Storm <storm@cua.dk>
3483
3484 * coding.c (Qprocess_argument):
3485 * coding.h (Qprocess_argument): Remove unused var.
3486
3487 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
3488
3489 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3490
3491 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
3492 Endian.h.
3493 [!MAC_OSX] (fchmod, fchown): New functions.
3494 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
3495 Use SBYTES and EndianU32_BtoN.
3496 (mac_get_object_from_code): Return 4 byte string even if argument
3497 is 0. Use make_unibyte_string and EndianU32_NtoB.
3498 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
3499 (Fmac_set_file_type): Fix documents and argument declarations.
3500 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
3501
3502 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
3503
3504 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
3505
3506 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3507
3508 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
3509 Lucid if X_I18N, font otherwise.
3510
3511 2005-07-10 Steven Tamm <steventamm@mac.com>
3512
3513 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
3514 (Fmac_set_file_type, Fmac_set_file_creator): Add.
3515 (mac_get_object_from_code, mac_get_code_from_arg): Add.
3516
3517 2005-07-10 Richard M. Stallman <rms@gnu.org>
3518
3519 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
3520 (syms_of_lread): Set up eval-buffer-list.
3521 (Feval_buffer, Feval_region): Bind eval-buffer-list.
3522
3523 2005-07-08 Richard M. Stallman <rms@gnu.org>
3524
3525 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
3526
3527 2005-07-08 Kim F. Storm <storm@cua.dk>
3528
3529 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
3530 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
3531
3532 2005-07-07 Kim F. Storm <storm@cua.dk>
3533
3534 * window.c (Frecenter): Fix last change (set iarg before use).
3535
3536 2005-07-06 Richard M. Stallman <rms@gnu.org>
3537
3538 * window.c (Frecenter): When arg is inside the scroll margin,
3539 move it out of the margin.
3540
3541 2005-07-06 Jason Rumney <jasonr@gnu.org>
3542
3543 * w32console.c (initialize_w32_display): Detect when the console
3544 dimensions are insane, and default to 80x25 instead.
3545 (w32_use_full_screen_buffer): Default to NIL.
3546
3547 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3548
3549 * macterm.c (mac_draw_vertical_window_border): Use foreground of
3550 VERTICAL_BORDER_FACE_ID for vertical border line.
3551 (mac_encode_char): Call check_ccl_update in advance.
3552 (mac_to_x_fontname, x_font_name_to_mac_font_name)
3553 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
3554 Don't assume that font family length is less than 32.
3555 (x_compute_min_glyph_bounds): Make static.
3556 (x_load_font): Never set fonts_changed_p to zero.
3557
3558 2005-07-04 Lute Kamstra <lute@gnu.org>
3559
3560 * Update FSF's address in GPL notices.
3561
3562 2005-07-03 Richard M. Stallman <rms@gnu.org>
3563
3564 * xdisp.c (try_window): Fix previous change in how it handles
3565 a partially-visible line or one only partly past the margin.
3566
3567 * window.c (window_scroll_pixel_based): Take account
3568 of this_scroll_margin when finding point when scrolling up.
3569
3570 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
3571
3572 * window.c (window_scroll_pixel_based, window_scroll_line_based):
3573 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
3574 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
3575
3576 2005-07-02 Juri Linkov <juri@jurta.org>
3577
3578 * w32term.c (w32_draw_vertical_window_border): Use foreground of
3579 VERTICAL_BORDER_FACE_ID for vertical border line.
3580
3581 2005-07-02 Eli Zaretskii <eliz@gnu.org>
3582
3583 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
3584 fchmod so that chmod doesn't get called on MSDOS before the file
3585 is closed.
3586
3587 2005-07-01 Jason Rumney <jasonr@gnu.org>
3588
3589 * w32term.c (cleartype_active): New flag for enabling sub-pixel
3590 workaround.
3591 (w32_initialize): Initialize it.
3592 (w32_native_per_char_metric): Allow a couple of extra pixels when
3593 Cleartype is active.
3594
3595 * w32term.c (w32_initialize): Move check for screen reader here
3596 from syms_of_w32term.
3597
3598 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3599
3600 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
3601 is not zero.
3602
3603 2005-07-01 Masatake YAMATO <jet@gyve.org>
3604
3605 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
3606
3607 2005-06-30 Juri Linkov <juri@jurta.org>
3608
3609 * xdisp.c (x_draw_vertical_border): If left fringe is not present
3610 decrease x coord of vertical border by 1 pixel to not occupy text
3611 area of the right window.
3612
3613 * xterm.c (x_draw_vertical_window_border): Use foreground of
3614 VERTICAL_BORDER_FACE_ID for vertical border line.
3615
3616 * term.c (turn_on_face): In standout mode apply specified
3617 fg to bg, and specified bg to fg (this makes the logic of
3618 inversion on terminal consistent with X).
3619
3620 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
3621
3622 * eval.c (user_variable_p_eh): New function.
3623 (Fuser_variable_p): Use it. Clarify docstring.
3624 Return t for aliases of user options, nil for alias loops.
3625
3626 2005-06-27 Richard M. Stallman <rms@gnu.org>
3627
3628 * eval.c (Fdefvar): Improve error message.
3629
3630 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3631
3632 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
3633 change.
3634
3635 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
3636
3637 * eval.c (Fdefvar): Don't try to set constant symbols.
3638
3639 2005-06-25 Richard M. Stallman <rms@gnu.org>
3640
3641 * macfns.c (Fx_show_tip): Pass new arg to try_window.
3642
3643 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
3644
3645 * xfns.c (Fx_show_tip): Pass new arg to try_window.
3646
3647 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
3648 (redisplay_window): Handle try_window reporting point in scroll margin.
3649
3650 * dispextern.h (try_window): Declare new arg.
3651
3652 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
3653 Use fchmod to copy the file modes.
3654 (Frename_file): Don't copy UID and GID here;
3655 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
3656
3657 * eval.c (call_debugger): Take full care of extending stack limits
3658 to make space for the debugger, and restore the change afterward.
3659 Bind debug-on-error to nil.
3660 (restore_stack_limits): New subroutine.
3661 (Fsignal): Extend specpdl bound along with eval depth bound,
3662 for calling edebug. Don't do either one, for calling debugger.
3663 (find_handler_clause): Don't bind debug-on-error here.
3664 Don't unbind anything either.
3665 Temporarily advance max_specpdl_size for calling
3666 internal_with_output_to_temp_buffer.
3667 (grow_specpdl): Don't alter max_specpdl_size before signaling
3668 an error.
3669 (syms_of_eval) <max-specpdl-size>: Doc fix.
3670
3671 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
3672
3673 2005-06-24 Eli Zaretskii <eliz@gnu.org>
3674
3675 * fileio.c (Frename_file): Undo last change: no need to ifdef away
3676 chown on DOS_NT platforms.
3677
3678 * w32.c (sys_chown): New function.
3679
3680 * s/ms-w32.h (chown): New; define to sys_chown.
3681
3682 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
3683
3684 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
3685 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
3686
3687 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
3688
3689 2005-06-23 Richard M. Stallman <rms@gnu.org>
3690
3691 * xdisp.c (get_next_display_element): Finish reversing the tests of
3692 Vnobreak_char_display.
3693
3694 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
3695 All uses changed.
3696 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
3697 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
3698
3699 * fileio.c (Frename_file): Preserve owner and group, if possible,
3700 when copying.
3701
3702 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
3703
3704 * abbrev.c (Funexpand_abbrev):
3705 * category.c (Fmake_category_set):
3706 * dispnew.c (Fsleep_for, Fsit_for):
3707 * editfns.c (Fsubst_char_in_region):
3708 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
3709 * frame.c (make_frame_without_minibuffer):
3710 * lread.c (read_vector):
3711 * macfns.c (check_x_frame):
3712 * process.c (Fstop_process, Fcontinue_process):
3713 * search.c (Freplace_match):
3714 * syntax.c (Fstring_to_syntax):
3715 * w32fns.c (check_x_frame, check_x_display_info):
3716 * xfaces.c (x_supports_face_attributes_p):
3717 * xselect.c (Fx_own_selection_internal): Follow error conventions.
3718
3719 * image.c (fn_png_init_io): Don't define it.
3720 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
3721 (png_read_from_file): New function, based on png_read_from_memory.
3722 (png_load): Use it, instead of fn_png_init_io.
3723
3724 2005-06-23 Kim F. Storm <storm@cua.dk>
3725
3726 * search.c (Fmatch_data): Remove evaporate option.
3727 (Fset_match_data): Do not mention evaporate option in doc string.
3728 Add commentary explaining evaporate arg (for internal use only).
3729 (unwind_set_match_data): Add comment on evaporate use.
3730
3731 2005-06-22 Miles Bader <miles@gnu.org>
3732
3733 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
3734 (realize_basic_faces, syms_of_xfaces): Update references to it.
3735 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
3736 to `VERTICAL_BORDER_FACE_ID'.
3737 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
3738
3739 2005-06-21 Juri Linkov <juri@jurta.org>
3740
3741 * dispextern.h: Add extern Qframe_set_background_mode.
3742
3743 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
3744 Qframe_set_background_mode.
3745
3746 * frame.c (Fmodify_frame_parameters):
3747 Call frame-set-background-mode after changing the background color
3748 on non-window non-dos branch.
3749
3750 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
3751
3752 * fns.c (Fchar_table_range):
3753 * process.c (Fmake_network_process): Fix spellings.
3754
3755 2005-06-20 Kim F. Storm <storm@cua.dk>
3756
3757 * fns.c (Fsort): Doc fix.
3758
3759 2005-06-20 Miles Bader <miles@gnu.org>
3760
3761 * xfaces.c (Qvertical_divider): New variable.
3762 (realize_basic_faces): Realize its face.
3763 (syms_of_xfaces): Initialize it.
3764
3765 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
3766
3767 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
3768 window-separator on ttys using `vertical-divider' face by default.
3769
3770 2005-06-17 Richard M. Stallman <rms@gnu.org>
3771
3772 * xdisp.c (get_next_display_element):
3773 Reverse test of Vshow_nonbreak_escape.
3774
3775 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
3776 (Ftty_no_underline): New function.
3777 (syms_of_term): defsubr it.
3778
3779 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
3780
3781 * dispnew.c (spec_glyph_lookup_face): New function.
3782 (build_frame_matrix_from_leaf_window): Use it.
3783
3784 * dispextern.h (spec_glyph_lookup_face): Add declaration.
3785
3786 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
3787
3788 2005-06-12 Richard M. Stallman <rms@gnu.org>
3789
3790 * keyboard.c (read_char): After catching a longjmp,
3791 call restore_getcjmp.
3792
3793 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
3794
3795 * xselect.c (lisp_data_to_selection_data): Fix spelling.
3796
3797 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3798
3799 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
3800 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
3801 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
3802 events.
3803 (XTread_socket): Don't pass keyboard events with the option
3804 modifier to the system when Vmac_command_key_is_meta is nil or
3805 Vmac_option_modifier is non-nil.
3806 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
3807 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
3808 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
3809 handler function.
3810 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
3811 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
3812 handler part to mac_handle_mouse_event.
3813
3814 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
3815
3816 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
3817 NEW-ALIAS and BASE-VARIABLE, respectively.
3818
3819 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
3820
3821 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
3822 (get_phys_cursor_geometry, format_mode_line_unwind_data)
3823 (get_line_height_property, x_produce_glyphs): Remove unused vars.
3824
3825 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
3826
3827 2005-06-13 Eli Zaretskii <eliz@gnu.org>
3828
3829 * w32term.c (x_use_underline_position_properties): New variable.
3830 (x_draw_glyph_string): Remind in a comment to change doc string of
3831 x-use-underline-position-properties if/when underline positioning
3832 is implemented.
3833 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
3834 and initialize it to nil.
3835
3836 2005-06-12 Jason Rumney <jasonr@gnu.org>
3837
3838 * w32fns.c (NEWOPENFILENAME): New struct.
3839 (Fx_file_dialog): Use it to trick the system into giving us up to
3840 date dialogs on systems that are documented to support it.
3841 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
3842
3843 2005-06-12 Eli Zaretskii <eliz@gnu.org>
3844
3845 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
3846 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
3847
3848 2005-06-11 Eli Zaretskii <eliz@gnu.org>
3849
3850 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
3851 to CreateDIBSection to avoid a compiler warning.
3852 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
3853 warning.
3854 (png_load): Cast return values of fn_png_create_read_struct and
3855 fn_png_create_info_struct, to avoid compiler warnings on W32.
3856 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
3857 to avoid compiler warnings.
3858 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
3859 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
3860 avoid a compiler warning.
3861 (tiff_load): Cast return values of fn_TIFFOpen and
3862 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
3863 to IMAGE_BACKGROUND to avoid a compiler warning.
3864 (gif_load): Cast return values of fn_DGifOpenFileName and
3865 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
3866 IMAGE_BACKGROUND to avoid a compiler warning.
3867 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
3868 before redefining.
3869
3870 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
3871 the call to CreateDIBSection, to avoid a compiler warning.
3872
3873 2005-06-11 Jason Rumney <jasonr@gnu.org>
3874
3875 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
3876 minibuffer.
3877 * macfns.c (Fx_file_dialog): Likewise.
3878
3879 2005-06-10 Eli Zaretskii <eliz@gnu.org>
3880
3881 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
3882
3883 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
3884
3885 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
3886 * w32fns.c (syms_of_w32fns): Fix spellings.
3887
3888 2005-06-10 Eli Zaretskii <eliz@gnu.org>
3889
3890 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
3891 `verbose'; print diagnostic messages only if it is non-zero.
3892 All callers changed to pass a zero value unless DEBUG_DUMP is defined
3893 in the environment.
3894 (copy_executable_and_dump_data): Print section names with %.8s.
3895
3896 2005-06-10 Masatake YAMATO <jet@gyve.org>
3897
3898 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
3899 when mouse_face is not given.
3900
3901 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
3902
3903 * window.c (Fselect_window): Adapt call to Fselect_frame.
3904
3905 * lisp.h: Update EXFUN of Fselect_frame.
3906
3907 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
3908
3909 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
3910 no_enter.
3911 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
3912 Adapt to above change.
3913
3914 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
3915
3916 * fns.c (Fmemq, Fmaphash): Doc fixes.
3917
3918 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
3919
3920 * xfaces.c (Fdisplay_supports_face_attributes_p):
3921 Fix typo in docstring.
3922
3923 2005-06-08 Steven Tamm <steventamm@mac.com>
3924
3925 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
3926 used by gcc4 on intel mac.
3927
3928 2005-06-09 Kim F. Storm <storm@cua.dk>
3929
3930 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
3931 in REUSE list if non-nil; free them if equal to evaporate.
3932 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
3933 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
3934 (restore_search_regs): Rename from restore_match_data. Uses changed.
3935 (unwind_set_match_data): New function.
3936 (record_unwind_save_match_data): New function like save-match-data.
3937
3938 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
3939 (record_unwind_save_match_data): Add prototype.
3940 (restore_search_regs): Rename from restore_match_data.
3941
3942 * composite.c (compose_chars_in_text):
3943 * eval.c (do_autoload):
3944 * macmenu.c (set_frame_menubar):
3945 * process.c (read_process_output, exec_sentinel):
3946 * xmenu.c (set_frame_menubar):
3947 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
3948 * w32menu.c (set_frame_menubar):
3949 Use record_unwind_save_match_data.
3950
3951 2005-06-08 Richard M. Stallman <rms@gnu.org>
3952
3953 * xdisp.c (get_next_display_element): Alter previous change:
3954 Distinguish Vshow_nonbreak_escape = t or not t.
3955 For t, use escape_glyph once again, as before previous change.
3956 Use space or hyphen for display, instead of the non-ASCII char.
3957 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
3958
3959 * process.c (Fstart_process): Don't touch command_channel_p slot.
3960
3961 * process.h (struct process): Delete command_channel_p.
3962
3963 2005-06-07 Masatake YAMATO <jet@gyve.org>
3964
3965 * xdisp.c (note_mode_line_or_margin_highlight):
3966 Check the overlapping of re-rendering area to avoid flickering.
3967 (note_mouse_highlight): Call clear_mouse_face if PART
3968 is not ON_MODE_LINE nor ON_HEADER_LINE.
3969
3970 2005-06-07 Kim F. Storm <storm@cua.dk>
3971
3972 * process.c: Improve commentary for adaptive read buffering.
3973
3974 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
3975
3976 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
3977 if available.
3978
3979 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3980
3981 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
3982 New functions for popping down menus on C-g.
3983 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
3984
3985 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
3986 non-static.
3987
3988 * config.in: Add HAVE_CANCELMENUTRACKING.
3989
3990 2005-06-06 Eli Zaretskii <eliz@gnu.org>
3991
3992 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
3993
3994 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
3995
3996 * w32proc.c (RVA_TO_PTR): New macro.
3997
3998 * w32heap.c (RVA_TO_PTR): No need to #undef now.
3999
4000 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
4001 Depend on w32heap.h.
4002
4003 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
4004
4005 * keyboard.c (command_loop_1): Update Vthis_original_command.
4006
4007 2005-06-06 Richard M. Stallman <rms@gnu.org>
4008
4009 * xmenu.c (popup_get_selection): Undo previous change.
4010
4011 2005-06-06 Juri Linkov <juri@jurta.org>
4012
4013 * xdisp.c (Qno_break_space): New variable.
4014 (syms_of_xdisp): Initialize it.
4015 (get_next_display_element): Add no-break space and soft hypen
4016 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
4017 Use `no-break-space' face for no-break spaces.
4018
4019 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4020
4021 * window.c (delete_window): Handle the case where a h/vchild has
4022 a h/vchild.
4023
4024 2005-06-05 Eli Zaretskii <eliz@gnu.org>
4025
4026 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
4027 call to pfn_setsockopt, cast optval to `const char *'.
4028
4029 2005-06-04 Eli Zaretskii <eliz@gnu.org>
4030
4031 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
4032 (open_unc_volume): Cast return value of map_w32_filename, to avoid
4033 compiler warnings.
4034
4035 * s/ms-w32.h (fileno): Don't define if already defined.
4036
4037 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
4038
4039 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
4040
4041 2005-06-04 Richard M. Stallman <rms@gnu.org>
4042
4043 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
4044
4045 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4046
4047 * macmenu.c (cleanup_popup_menu): New function.
4048 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
4049 mac_menu_show Quit:s.
4050 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
4051 a dialog).
4052
4053 2005-06-04 Kim F. Storm <storm@cua.dk>
4054
4055 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
4056
4057 * callproc.c (Fcall_process): Don't use alloca to gradually
4058 increase size of buf, as it effectively uses twice the necessary
4059 space on the stack. Instead, pre-allocate buf of full size, and
4060 gradually increase the read size.
4061
4062 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
4063
4064 * eval.c (unbind_to): Preserve value of Vquit_flag.
4065
4066 * xterm.c (handle_one_xevent): Also ignore mouse motion just
4067 before a button release event.
4068
4069 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
4070
4071 * xfaces.c (Finternal_lisp_face_equal_p): Really report
4072 on faces in a frame, if the argument FRAME is non-nil.
4073 Improve argument/docstring consistency.
4074
4075 2005-06-02 Kim F. Storm <storm@cua.dk>
4076
4077 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
4078 (x_consider_frame_title, Fformat_mode_line): Save offset into
4079 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
4080
4081 2005-06-01 Kim F. Storm <storm@cua.dk>
4082
4083 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
4084
4085 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4086
4087 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
4088 resolution fields for scalable fonts to 0.
4089
4090 * xfaces.c (build_scalable_font_name): Round pixel size to the
4091 nearest integer.
4092
4093 2005-06-01 Kim F. Storm <storm@cua.dk>
4094
4095 * xdisp.c (display_mode_line): Support nested calls to redisplay
4096 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
4097
4098 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
4099
4100 * fileio.c (Finsert_file_contents):
4101 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4102
4103 2005-05-31 Kim F. Storm <storm@cua.dk>
4104
4105 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
4106 (mode_line_noprop_ptr): Rename from frame_title_*.
4107 (store_mode_line_noprop_char): Rename from store_frame_title_char.
4108 (store_mode_line_noprop): Rename from store_frame_title.
4109 (mode_line_target): New enum to specify current output target
4110 for mode line formatting.
4111 (display_mode_element): Test it rather than frame_title_ptr and
4112 mode_line_string_list to determine where output should go.
4113 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
4114 (Vmode_line_unwind_vector): New variable.
4115 (format_mode_line_unwind_data, unwind_format_mode_line):
4116 New functions for unwind protection in mode line formatting.
4117 (x_consider_frame_title): Use them and new local var 'title_start'
4118 to support nested calls to format-mode-line and redisplay.
4119 Set mode_line_target to MODE_LINE_TITLE.
4120 (Fformat_mode_line): Use them and new local var 'string_start' to
4121 support nested calls to format-mode-line and redisplay.
4122 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
4123 Don't trim trailing dashes.
4124 (decode_mode_spec): Don't make infinite number of trailing dashes
4125 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
4126 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
4127 mode_line_string_face_prop, and Vmode_line_unwind_vector.
4128 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
4129 Initialize mode_line_target to MODE_LINE_DISPLAY.
4130
4131 2005-05-29 Richard M. Stallman <rms@gnu.org>
4132
4133 * buffer.c (Fbuffer_local_value): Call indirect_variable.
4134
4135 2005-05-28 Masatake YAMATO <jet@gyve.org>
4136
4137 * xdisp.c (note_mode_line_or_margin_highlight): Change the
4138 pointer to a hand cursor when hoovering over a mouse-face.
4139
4140 2005-05-27 Kenichi Handa <handa@m17n.org>
4141
4142 * xterm.c (x_encode_char): Call check_ccl_update in advance.
4143
4144 * ccl.c: Now an element of Vccl_program_table is a vector of
4145 length 4, not 3.
4146 (ccl_get_compiled_code): New arg idx. Caller changed.
4147 Adjust for the change of Vccl_program_table.
4148 (setup_ccl_program): Adjust for the change of Vccl_program_table.
4149 (check_ccl_update): New function.
4150 (Fregister_ccl_program): Use ASET to set an element of a vector.
4151 Adjusted for the change of Vccl_program_table.
4152
4153 * ccl.h (struct ccl_program): New member idx.
4154 (check_ccl_update): Extern it.
4155
4156 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
4157
4158 * image.c (Vimage_library_alist): Move from image.el.
4159 (syms_of_image): Defvar it.
4160 (lookup_image_type): Use it.
4161
4162 * buffer.c (Fbuffer_local_value): Make argument name match its use
4163 in docstring.
4164
4165 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
4166
4167 * keyboard.c (Frecursive_edit): Fix typo in docstring.
4168 (Fposn_at_x_y): Make argument name match its use in docstring.
4169
4170 2005-05-26 Lute Kamstra <lute@gnu.org>
4171
4172 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
4173
4174 2005-05-24 Masatake YAMATO <jet@gyve.org>
4175
4176 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
4177 as loop sentinels.
4178
4179 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
4180
4181 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
4182 select frame title ("Question"/"Information").
4183 (xdialog_show): Use it.
4184
4185 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
4186
4187 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
4188
4189 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
4190 a third argument (Qnil).
4191
4192 * lisp.h: x-popup-dialog can have three arguments.
4193
4194 * editfns.c (Fmessage_box): Use "Information" for frame title.
4195
4196 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
4197
4198 * termcap.c [VMS]: Include <starlet.h>.
4199
4200 2005-05-23 Masatake YAMATO <jet@gyve.org>
4201
4202 * xdisp.c (note_mode_line_or_margin_highlight): Add code
4203 for mouse-face. Change the type of the first argument from `window'
4204 to `Lisp_Object'.
4205 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
4206 window instead of w.
4207
4208 2005-05-22 Andreas Schwab <schwab@suse.de>
4209
4210 * process.c (send_process): Move misplaced volatile.
4211
4212 2005-05-21 Richard M. Stallman <rms@gnu.org>
4213
4214 * xdisp.c (display_mode_element): If we're processing a list and
4215 padding is specified, put it after the last element.
4216
4217 2005-05-21 Eli Zaretskii <eliz@gnu.org>
4218
4219 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
4220 "superroot" on DOS_NT systems.
4221
4222 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
4223
4224 * process.c (send_process): Restore the SIGPIPE handler if we
4225 catch a SIGPIPE.
4226
4227 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
4228
4229 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
4230 misleading comments).
4231 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
4232
4233 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4234
4235 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
4236 Correct the right value.
4237
4238 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
4239
4240 * keyboard.c (syms_of_keyboard): Remove Lisp variables
4241 post-command-idle-hook and post-command-idle-delay.
4242 (command_loop_1): Don't try to execute post-command-idle-hook.
4243
4244 2005-05-16 Kim F. Storm <storm@cua.dk>
4245
4246 * xdisp.c (handle_display_prop): Handle empty replacement.
4247 (handle_single_display_spec): Return -1 for empty replacement.
4248
4249 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
4250
4251 * .gdbinit (pitx): Print more info about iterator.
4252
4253 2005-05-16 Andreas Schwab <schwab@suse.de>
4254
4255 * unexmacosx.c (unexec_realloc): Move declarations before statements.
4256
4257 2005-05-14 Richard M. Stallman <rms@gnu.org>
4258
4259 * xdisp.c (message3): Call cancel_echoing.
4260
4261 * alloc.c (Fmemory_full_p): New function.
4262 (syms_of_alloc): defsubr it.
4263
4264 * process.c (send_process_trap): Unblock SIGPIPE.
4265 (send_process): Reset SIGPIPE handler before reporting error.
4266
4267 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
4268
4269 * emacs.c (syms_of_emacs): Fix doc string for system-type.
4270
4271 2005-05-13 Richard M. Stallman <rms@gnu.org>
4272
4273 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
4274 (Finsert_file_contents): If we read 0 bytes from a special file,
4275 unlock the visited file if we locked it.
4276 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
4277 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
4278
4279 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4280
4281 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
4282
4283 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
4284 Regard toolkit scroll bar thumb drag events as squeezable and prevent
4285 redisplay from being paused by them.
4286
4287 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
4288 [!MAC_OSX] (target_ticks): Remove variable.
4289 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
4290 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
4291 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
4292 event occurs before timeout, behave as if the function were interrupted.
4293 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
4294 handling using Time Manager routines.
4295 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
4296 New variables.
4297 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
4298 (setitimer): New functions.
4299
4300 * macfns.c, macmenu.c: Don't include signal.h.
4301
4302 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
4303 Rename from get_control_part_bound. All callers changed.
4304 (x_scroll_bar_clear): New function.
4305 (x_clear_frame): Use it.
4306 (XTset_vertical_scroll_bar): Don't call Draw1Control.
4307 (x_scroll_bar_handle_click): Change type of second argument from
4308 int to ControlPartCode.
4309 (check_alarm): Remove declaration.
4310 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
4311 (XTread_socket): Use ControlPartCode instead of SInt16.
4312
4313 2005-05-13 Nozomu Ando <nand@mac.com>
4314
4315 * unexmacosx.c: Include assert.h.
4316 (MACOSX_MALLOC_MULT16): New define.
4317 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
4318 ptr is in unexec regions by checking it is multiple of 16.
4319 (unexec_malloc_header_t): New typedef.
4320 (unexec_malloc, unexec_realloc, unexec_free): Store and use
4321 allocated size information in unexec_malloc_header.
4322
4323 2005-05-10 Richard M. Stallman <rms@gnu.org>
4324
4325 * xterm.c (noinclude): Add #undef.
4326
4327 * image.c, xfns.c, xmenu.c: Don't include signal.h.
4328
4329 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
4330
4331 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
4332 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
4333 Doc fixes.
4334
4335 * dired.c (Ffile_name_completion): Make argument name
4336 match its use in docstring.
4337
4338 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
4339
4340 * eval.c (Fdefvaralias): Remove any pre-existing
4341 variable-documentation property of the alias.
4342
4343 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
4344
4345 * xfns.c (start_hourglass): Do nothing when running on a tty.
4346
4347 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
4348
4349 * fns.c (Fchar_table_range): Fix typos in docstring.
4350
4351 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4352
4353 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
4354
4355 2005-05-06 Eli Zaretskii <eliz@gnu.org>
4356
4357 * lread.c (Flocate_file_internal): Doc fix.
4358
4359 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
4360
4361 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4362
4363 * macselect.c (x_own_selection): Accept Lisp string as result of
4364 selection converter function.
4365 (x_clear_frame_selections): Don't call x-lost-selection-functions
4366 if Emacs is not owner of the selection.
4367 (Vmac_services_selection): Put variable and initialization in
4368 #ifdef MAC_OSX.
4369 (syms_of_macselect) [MAC_OSX]: Set default value of
4370 Vmac_services_selection to PRIMARY.
4371
4372 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
4373 (mac_handle_tool_bar_click): Remove unused function and declaration.
4374 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
4375 (install_scroll_bar_timer, set_scroll_bar_timer)
4376 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
4377 (get_control_part_bound, x_scroll_bar_handle_press)
4378 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
4379 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
4380 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
4381 (scroll_bar_timer_event_posted_p): New variables.
4382 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
4383 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
4384 (x_scroll_bar_create): Set control reference with NewControl.
4385 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
4386 Initialize track_top and track_height to nil.
4387 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
4388 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
4389 (XTset_vertical_scroll_bar): Don't make space between scroll bar
4390 and associated window.
4391 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
4392 from window config.
4393 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4394 Set track_top and track_height to nil when scroll bar size is changed.
4395 Recalculate them if they are nil.
4396 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
4397 clicked control is a scroll bar.
4398 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
4399 event handler functions. Don't add modifiers to scroll bar click
4400 events. Call scroll bar release handler when window is deactivated.
4401 (mac_initialize): Remove unused code for X toolkit.
4402 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
4403 Initialize Vx_toolkit_scroll_bars to nil.
4404
4405 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4406 New members track_top and track_height.
4407
4408 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
4409 init_process when including sys/select.h.
4410
4411 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
4412
4413 * eval.c (Fdefvaralias): Doc fix.
4414
4415 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
4416
4417 2005-05-05 Kim F. Storm <storm@cua.dk>
4418
4419 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
4420 default value.
4421 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
4422 Fix type of cursor-in-non-selected-windows.
4423
4424 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4425
4426 * mac.c: #undef init_process so not to conflict with system headers.
4427
4428 2005-05-02 Richard M. Stallman <rms@gnu.org>
4429
4430 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
4431
4432 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
4433
4434 * xdisp.c (Vcursor_in_non_selected_windows)
4435 (Qcursor_in_non_selected_windows): Vars deleted.
4436 (syms_of_xdisp): Don't initialize them.
4437 (get_window_cursor_type): Use cursor_in_non_selected_windows
4438 buffer slot.
4439
4440 2005-05-02 Kim F. Storm <storm@cua.dk>
4441
4442 * macros.c (executing_kbd_macro_index): Rename from
4443 executing_macro_index. All uses changed.
4444 (executing_kbd_macro_iterations): Rename from
4445 executing_macro_iterations. All uses changed.
4446 (executing_kbd_macro): Rename from executing_macro.
4447 All uses changed.
4448 (syms_of_macros): Rename Lisp var executing-macro-index to
4449 executing-kbd-macro-index.
4450
4451 * xdisp.c (move_it_in_display_line_to): Fix last change.
4452
4453 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4454
4455 * xmenu.c (Fx_popup_menu): Doc fix.
4456
4457 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
4458
4459 2005-05-02 Jason Rumney <jasonr@gnu.org>
4460
4461 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
4462
4463 2005-05-02 Nozomu Ando <nand@mac.com>
4464
4465 * sysselect.h: Fix typo.
4466
4467 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
4468
4469 * charset.c (Fchars_in_region): Remove as obsolete.
4470
4471 2005-05-01 Kim F. Storm <storm@cua.dk>
4472
4473 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
4474 TO_CHARPOS. This may happen if last glyphs was an image or stretch
4475 glyph.
4476
4477 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4478
4479 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
4480
4481 2005-05-01 Richard M. Stallman <rms@gnu.org>
4482
4483 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
4484 If user cancels the menu, quit unless FOR_CLICK.
4485
4486 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
4487 All uses changed.
4488 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
4489 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
4490 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
4491 * commands.h (Vexecuting_kbd_macro): Likewise.
4492
4493 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
4494
4495 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
4496
4497 2005-04-30 Richard M. Stallman <rms@gnu.org>
4498
4499 * fileio.c (Ffind_file_name_handler): Handle the `operations'
4500 property of the file name handler.
4501 (Qoperations): New variable.
4502 (syms_of_fileio): Initialize and staticpro it.
4503
4504 * xdisp.c (set_message_1): Delete xassert.
4505
4506 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4507
4508 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
4509
4510 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
4511
4512 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
4513 before/after including Carbon.h if there is a working mktime.
4514
4515 2005-04-28 Kim F. Storm <storm@cua.dk>
4516
4517 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
4518 Fix cyclic alias check. If alias loop is detected, signal
4519 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
4520
4521 2005-04-28 Lute Kamstra <lute@gnu.org>
4522
4523 * eval.c (do_autoload): Record only autoloads in the autoload
4524 property of symbols.
4525
4526 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
4527
4528 * emacs.c (USAGE1): Add --basic-display and --quick options.
4529
4530 2005-04-27 Kim F. Storm <storm@cua.dk>
4531
4532 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
4533
4534 2005-04-26 Richard M. Stallman <rms@gnu.org>
4535
4536 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
4537 (syms_of_window): Doc fixes.
4538
4539 * indent.c (Fvertical_motion): Undo previous change.
4540
4541 2005-04-26 Kenichi Handa <handa@m17n.org>
4542
4543 * fns.c (char_table_range): New function.
4544 (Fchar_table_range): Signal an error if characters in the range
4545 have inconsistent values. Don't check the parent.
4546
4547 2005-04-25 Kenichi Handa <handa@m17n.org>
4548
4549 * fontset.c (fontset_set): Fix previous change.
4550
4551 2005-04-24 Richard M. Stallman <rms@gnu.org>
4552
4553 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
4554
4555 2005-04-24 Eli Zaretskii <eliz@gnu.org>
4556
4557 * regex.c (re_search_2, re_match_2_internal): Convert second arg
4558 of RE_TRANSLATE to int, to shut up GCC warnings.
4559
4560 * fileio.c (Fcopy_file): Doc fix.
4561 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
4562 not needed.
4563
4564 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4565
4566 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
4567 (SOME_MACHINE_OBJECTS): Likewise.
4568 (mac.o): Depend on ccl.h.
4569 (macselect.o): New target.
4570
4571 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
4572 Call syms_of_macselect.
4573
4574 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
4575
4576 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
4577 (QCLIPBOARD): Remove variable.
4578 (syms_of_mac): Don't initialize it.
4579 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
4580 Remove functions.
4581 (syms_of_mac): Don't defsubr them.
4582 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
4583 (QHFS_plus_D, QHFS_plus_C): New variables.
4584 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
4585 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
4586 (cfstring_create_normalized): New functions.
4587 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
4588 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
4589
4590 * macterm.c (handling_window_update, terminate_flag):
4591 Remove variables.
4592 (do_window_update, do_ae_quit_application, XTread_socket):
4593 Don't use them.
4594 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
4595 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
4596 (init_service_handler): Move to macselect.c. Remove declarations.
4597 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
4598 (Qapplication, Qabout): New variables.
4599 (syms_of_mac): Initialize them.
4600 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
4601 (Qperform): New variables.
4602 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
4603 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
4604 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
4605 (mac_store_application_menu_event, init_menu_bar): New functions.
4606 [USE_CARBON_EVENTS] (mac_handle_command_event)
4607 (init_command_handler): New functions.
4608 (mac_handle_window_event): Return noErr on window update event.
4609 (do_ae_quit_application): Call mac_store_application_menu_event.
4610 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
4611 and init_menu_bar.
4612
4613 * macterm.h (x_clear_frame_selections): Add extern.
4614
4615 * macselect.c: New file for selection processing on Mac OS.
4616
4617 2005-04-23 Richard M. Stallman <rms@gnu.org>
4618
4619 * fileio.c (Fcopy_file): New arg MUSTBENEW.
4620 (Frename_file): Pass new arg to Fcopy_file.
4621
4622 * window.c (window_size_fixed): Variable deleted.
4623 (syms_of_window): Initialize window-size-fixed to nil.
4624 But don't DEFVAR window_size_fixed.
4625
4626 2005-04-23 Andreas Schwab <schwab@suse.de>
4627
4628 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
4629 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
4630 use lib64 instead of lib.
4631 (_LP64) [_ARCH_PPC64]: Define if not defined.
4632
4633 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
4634
4635 * s/ms-w32.h (HAVE_PWD_H): Define.
4636
4637 2005-04-22 Kenichi Handa <handa@m17n.org>
4638
4639 * fns.c (copy_sub_char_table): Explicitly copy the default value
4640 of the sub-chartable.
4641
4642 * fontset.c (fontset_set): When a sub-chartable is created,
4643 explicitly sets the defalt value.
4644
4645 2005-04-22 Kim F. Storm <storm@cua.dk>
4646
4647 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
4648 (Fsafe_plist_get): Rename to Fplist_get.
4649 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
4650 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
4651
4652 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
4653
4654 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
4655 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4656 Use Fplist_get instead of Fsafe_plist_get.
4657
4658 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
4659
4660 2005-04-21 Miles Bader <miles@gnu.org>
4661
4662 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
4663
4664 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
4665
4666 * sysdep.c: Remove reference to defunct vms-pwd.h.
4667 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
4668 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
4669
4670 * config.in: Regenerate.
4671
4672 2005-04-20 Kenichi Handa <handa@m17n.org>
4673
4674 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
4675 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
4676 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
4677
4678 * alloc.c (make_sub_char_table): Argument changed to initial
4679 value of the slots.
4680
4681 * data.c (Faref): Handle special slots used as default values of
4682 ascii, eight-bit-control, eight-bit-control. Don't ignore a
4683 default value set for a group of characters.
4684 (Faset): Signal an error if IDXVAL is not a valid character code.
4685 Make a sub-chartable with correct initial value.
4686
4687 * fns.c (Fset_char_table_range): Don't set slots used as default
4688 values for ascii, eight-bit-control, eight-bit-graphic.
4689 Don't call Faref with charset-id.
4690 (Fset_char_table_default): Document how to treat normal character
4691 argument. Handle special slots used as default values of ascii,
4692 eight-bit-control, eight-bit-control. Make a sub chartable if
4693 necessary.
4694
4695 2005-04-20 Kenichi Handa <handa@m17n.org>
4696
4697 * search.c (boyer_moore): Fix previous change.
4698
4699 2005-04-19 Kim F. Storm <storm@cua.dk>
4700
4701 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
4702 face unless last visible char and first invisible char have the
4703 same face. Also use default face if saved_face_id is undefined.
4704
4705 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4706
4707 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
4708 `full_name'.
4709 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
4710 mac_scriptcode member.
4711
4712 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
4713 (syms_of_mac): Don't initialize them.
4714 (Vmac_charset_info_alist): New variable.
4715 (syms_of_mac): Defvar it.
4716 (create_text_encoding_info_alist): New function.
4717 (decode_mac_font_name, mac_to_x_fontname)
4718 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
4719 code the correspondence among XLFD charsets, Mac script codes, and
4720 Emacs coding systems. Use Vmac_charset_info_alist and result of
4721 create_text_encoding_info_alist instead.
4722 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
4723 routines also on Mac OS Classic.
4724 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
4725 Use add_font_name_table_entry.
4726 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
4727 specified. Derive unspecified scalable fields from specified one.
4728 (x_list_fonts): Consider Valternate_fontname_alist.
4729 (kDefaultFontSize): Change value from 9 to 12.
4730 (XLoadQueryFont): Get decoded font family, font face, and charset
4731 from x_font_name_to_mac_font_name. Set full name of loaded font.
4732 (mac_unload_font): Free `full_name' member.
4733 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
4734 NULL. Copy full_name member of struct MacFontStruct to that of
4735 struct font_info.
4736
4737 2005-04-19 Kim F. Storm <storm@cua.dk>
4738
4739 * xdisp.c (handle_stop): Set saved_face_id to current face if
4740 selective_display_ellipsis_p so ellipsis will be shown in same
4741 face as preceding text.
4742 (setup_for_ellipsis): Don't set saved_face_id here.
4743 (next_element_from_display_vector): Default to saved_face_id.
4744
4745 * fns.c (Fsafe_get): New function.
4746 (syms_of_fns): Defsubr it.
4747
4748 * lisp.h (Fsafe_get): EXFUN it.
4749
4750 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
4751 loops in case of bad face property lists. Limit number of face
4752 alias lookups to 10 (in case of face alias loops).
4753
4754 2005-04-18 Kim F. Storm <storm@cua.dk>
4755
4756 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
4757 It replaces the corresponding member from struct window, as a
4758 window may now show multiple overlay arrows.
4759 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
4760
4761 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
4762 Compare overlay_arrow_bitmap than overlay_arrow_p members.
4763
4764 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
4765 rather than from window.
4766 (update_window_fringes): Compare overlay_arrow_bitmap rather than
4767 overlay_arrow_p members.
4768 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
4769 if not default.
4770
4771 * window.h (struct window): Remove member overlay_arrow_bitmap.
4772
4773 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
4774
4775 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
4776 Calls changed. Don't check for overlay-arrow-bitmap property here.
4777 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
4778 fringe is present, return Lisp integer for bitmap (or -1 for default).
4779 Fix value of overlay-arrow-bitmap property to be a symbol, use
4780 lookup_fringe_bitmap to parse it.
4781 (display_line): Change call to overlay_arrow_at_row. Store integer
4782 return value as overlay bitmap in row rather than window.
4783 Only show overlay arrow if row displays text, or if no other overlay
4784 arrow is seen in window (if overlay marker is at point-max).
4785
4786 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
4787
4788 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
4789
4790 2005-04-18 Lute Kamstra <lute@gnu.org>
4791
4792 * lread.c (Vloads_in_progress): Static.
4793 * fns.c (Vloads_in_progress): Remove extern.
4794 (load_in_progress): Add extern.
4795 (Frequire): Use load_in_progress instead of Vloads_in_progress.
4796
4797 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
4798
4799 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
4800
4801 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4802
4803 * macterm.c (XTread_socket): Don't beep on keyboard input even if
4804 no frame is visible.
4805
4806 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
4807
4808 * term.c (struct keys): Add support for shifted keys.
4809
4810 2005-04-16 Richard M. Stallman <rms@gnu.org>
4811
4812 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
4813 (set_message): Call with_echo_area_buffer with WHICH = 0.
4814 (set_message_1): Erase the echo area buffer first thing.
4815 (echo_area_display): Don't clear echo_message_buffer.
4816
4817 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4818
4819 * Makefile.in (mac.o): Depend on charset.h and coding.h.
4820
4821 * mac.c: Include charset.h and coding.h.
4822 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
4823 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
4824 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
4825
4826 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
4827
4828 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
4829
4830 * macterm.c (x_autoselect_window_p): Remove variable.
4831 (last_window): New variable.
4832 (XTreassert_line_highlight, x_change_line_highlight):
4833 Remove declarations.
4834 (mac_focus_changed, x_detect_focus_change): New functions and
4835 declarations.
4836 (XTextExtents16, front_emacs_window): Remove function.
4837 (mac_focus_frame): New function.
4838 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
4839 (mac_check_for_quit_char): Use it instead of front_emacs_window.
4840 (x_scroll_bar_report_motion): Obtain window from control owner.
4841 (x_make_frame_invisible): Set window manager size hint.
4842 (do_mouse_moved): Remove function.
4843 (XTread_socket): Move its contents here. Generate select-window
4844 event on mouse movement if needed. Use x_detect_focus_change on
4845 activate/deactivate events. Don't deiconify frame or invalidate
4846 window rectangle when dnd items are dropped.
4847 Don't activate/deactivate root control.
4848 (frame_highlight, frame_unhighlight): Activate/deactivate root
4849 control here.
4850 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
4851
4852 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
4853 New extern.
4854
4855 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
4856
4857 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
4858 (lisp): Use it.
4859 (SOME_MACHINE_LISP): Add tooltip.
4860
4861 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4862
4863 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
4864 Don't include TextEncodingConverter.h.
4865 (mac_system_script_code, Vmac_system_locale): New variables.
4866 (syms_of_mac): Defvar them.
4867 (mac_get_system_locale): New function.
4868
4869 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
4870 Use ENCODE_SYSTEM to encode title bar string.
4871 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
4872 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
4873 Use CFStringGetSystemEncoding to get system default string encoding.
4874
4875 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
4876 TextEncodingConverter.h.
4877
4878 2005-04-13 Steven Tamm <steventamm@mac.com>
4879
4880 * macterm.c (syms_of_macterm): Remove redundant definition of
4881 mac-pass-control-to-system.
4882
4883 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
4884
4885 * window.c (Fset_window_configuration): Be careful when you choose
4886 among several possible points for the new_current_buffer.
4887
4888 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4889
4890 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
4891 poll_for_input_1. Set interrupt_input_pending to 1 instead.
4892 (Qlanguage_change) [MAC_OS]: New variable.
4893 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
4894 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
4895
4896 * macterm.c (mac_keyboard_text_encoding)
4897 (current_mac_keyboard_text_encoding): Remove variables.
4898 (XTread_socket): Store language-change event if keyboard script change
4899 is detected. Don't convert input to `mac_keyboard_text_encoding'.
4900 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
4901
4902 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
4903
4904 2005-04-10 Richard M. Stallman <rms@gnu.org>
4905
4906 * emacs.c (standard_args): Rename --bare-bones to --quick.
4907 Add -D aka --basic-display.
4908
4909 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
4910
4911 2005-04-09 Richard M. Stallman <rms@gnu.org>
4912
4913 * keymap.c (where_is_internal): Convert a string used as event type
4914 into "(any string)".
4915
4916 * lread.c (Vloads_in_progress): Not static.
4917 * fns.c (Vloads_in_progress): Add extern.
4918 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
4919
4920 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
4921
4922 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
4923
4924 2005-04-09 Lute Kamstra <lute@gnu.org>
4925
4926 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
4927 within the accessible part of the buffer.
4928
4929 2005-04-09 Kim F. Storm <storm@cua.dk>
4930
4931 * lread.c (readevalloop): Add args START and END as region in
4932 current buffer to read. Callers changed.
4933 When specified, narrow to this region only when reading,
4934 not during eval. Track next point to read from during eval.
4935 Also restore point to "real" buffer position before eval.
4936 (Feval_region): Don't save excursion and restriction here, and
4937 don't narrow to region. Just pass region to readevalloop.
4938 Note: Point is now preserved even when PRINTFLAG is nil.
4939
4940 2005-04-08 Kim F. Storm <storm@cua.dk>
4941
4942 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
4943
4944 2005-04-06 Kim F. Storm <storm@cua.dk>
4945
4946 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
4947
4948 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4949
4950 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
4951 (Fmac_get_preference): Doc fix.
4952
4953 * macfns.c (Fx_create_frame, x_create_tip_frame):
4954 Add "fontset-mac" to fallback font/fontsets.
4955
4956 2005-04-04 Kim F. Storm <storm@cua.dk>
4957
4958 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
4959
4960 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
4961 Call it again after autoload.
4962
4963 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4964
4965 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
4966 mallopt.
4967
4968 * ralloc.c (r_alloc_init): Ditto.
4969
4970 2005-04-01 Kenichi Handa <handa@m17n.org>
4971
4972 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
4973 (Vascii_eqv_table): Extern them.
4974
4975 * casetab.c (set_case_table): If standard is nonzero, setup
4976 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
4977
4978 * search.c (looking_at_1): Use current_buffer->case_canon_table,
4979 not DOWNCASE_TABLE.
4980 (string_match_1): Likewise.
4981 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
4982 Vascii_downcase_table.
4983 (fast_string_match_ignore_case): Likewise.
4984 (search_buffer): Fix checking of boyer-moore usability.
4985 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
4986 No need of tranlating characters in PAT. Fix calculation of
4987 simple_translate.
4988
4989 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
4990
4991 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
4992 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
4993 Use XtNtopShadowPixel and XtNbottomShadowPixel.
4994 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
4995 really work and that breaks with some versions of Xaw3d.
4996
4997 2005-03-31 Kenichi Handa <handa@m17n.org>
4998
4999 * coding.c (syms_of_coding): Fix previous change.
5000
5001 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
5002
5003 * fileio.c (search_embedded_absfilename): Fix last change.
5004
5005 2005-03-25 Kenichi Handa <handa@m17n.org>
5006
5007 * coding.c (syms_of_coding): Suggest to use set-coding-category in
5008 the docstring of coding-category-list.
5009
5010 2005-03-31 Kim F. Storm <storm@cua.dk>
5011
5012 * keyboard.c (Qmouse_fixup_help_message): New var.
5013 (syms_of_keyboard): Intern and staticpro it.
5014 (show_help_echo): Apply mouse-fixup-help-message to help string.
5015
5016 2005-03-30 Kim F. Storm <storm@cua.dk>
5017
5018 * xdisp.c (display_line): Allow multiple overlay arrows in window.
5019
5020 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5021
5022 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
5023 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
5024 (Ffile_name_absolute_p): Use it.
5025 (search_embedded_absfilename): New fun, extracted from
5026 Fsubstitute_in_file_name. Use file_name_absolute_p.
5027 Free the pw data after use.
5028 (Fsubstitute_in_file_name): Use it.
5029 After cutting a prefix, re-check file-name-handler.
5030
5031 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
5032
5033 * w32term.h (x_output): Add focus_state.
5034
5035 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
5036 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
5037
5038 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
5039
5040 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
5041 Use Fexit_minibuffer.
5042 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
5043
5044 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5045
5046 * dired.c (Ffile_attributes): Add a missing gcpro.
5047
5048 * alloc.c (make_number): The arg can be bigger than `int'.
5049 * lisp.h (make_number): Make prototype more precise.
5050
5051 * process.c, dired.c (Vfile_name_coding_system)
5052 (Vdefault_file_name_coding_system):
5053 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
5054 (Vdefault_file_name_coding_system): Remove unused declarations.
5055
5056 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5057
5058 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
5059 if it failed to pop up (Gnome "show pointer on ctrl" option makes
5060 menus fail to pop up).
5061
5062 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5063
5064 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
5065 Just prepend a backslash without replacing the NBSP by an SPC.
5066
5067 2005-03-22 Kim F. Storm <storm@cua.dk>
5068
5069 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
5070 * dispextern.h (lookup_derived_face): Fix prototype.
5071 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
5072
5073 * xdisp.c (handle_single_display_spec): Derive left-fringe and
5074 right-fringe face from fringe face.
5075
5076 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
5077 Derive face from fringe face.
5078
5079 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5080
5081 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
5082
5083 2005-03-22 David Kastrup <dak@gnu.org>
5084
5085 * textprop.c (Fnext_char_property_change)
5086 (Fprevious_char_property_change): Allow marker as limit.
5087 (Fnext_single_char_property_change)
5088 (Fprevious_single_char_property_change): Check that limit is a
5089 number in strings.
5090 (Fnext_single_char_property_change): Coerce position to integer.
5091 (Fprevious_single_char_property_change): Same here.
5092
5093 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
5094
5095 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
5096
5097 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
5098
5099 * frame.c (Fignore_event): Remove.
5100 (syms_of_frame): Don't defsubr it.
5101
5102 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
5103 redundant `ignore-event'.
5104
5105 2005-03-19 Eli Zaretskii <eliz@gnu.org>
5106
5107 * unexec.c (write_segment, unexec): Move these functions to avoid
5108 forward references (which cause errors with "gcc -gcoff").
5109
5110 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5111
5112 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
5113 that it doesn't become "tooltip". The specbind is enough.
5114
5115 * xrdb.c (x_load_resources): Use different char *helv when I18N
5116 is present.
5117
5118 2005-03-17 Kenichi Handa <handa@m17n.org>
5119
5120 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
5121
5122 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5123
5124 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
5125 Use xic_create_fontsetname even for non-Motif menus.
5126 Don't forget to free the fontsetname.
5127
5128 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
5129
5130 2005-03-17 Richard M. Stallman <rms@gnu.org>
5131
5132 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
5133
5134 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
5135 (Fmake_symbolic_link): Use G to read the new file name.
5136
5137 * callint.c (Finteractive): Document G option.
5138 (Fcall_interactively): Implement G option.
5139
5140 * buffer.c (buffer_lisp_local_variables): New function,
5141 broken out from Fbuffer_local_variables.
5142 (clone_per_buffer_values): Use buffer_lisp_local_variables.
5143
5144 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5145
5146 * xfns.c (xic_create_fontsetname): Add `motif' argument.
5147 Always return a freshly allocated string.
5148 (xic_create_xfontset): Adjust call.
5149
5150 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
5151 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
5152 (dump_realized_face): Fix warning.
5153
5154 * emacs.c (Fkill_emacs): YAILOM.
5155
5156 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
5157
5158 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5159
5160 * mac.c (HASHKEY_TERMINAL): Remove.
5161 (HASHKEY_MAX_NID): New macro.
5162 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
5163 argument.
5164 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
5165 (xrm_create_database, xrm_q_put_resource)
5166 (xrm_merge_string_database, xrm_q_get_resource_1)
5167 (xrm_q_get_resource): Change resource database representation so
5168 that it may not use multiple hash tables for a single database.
5169 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
5170
5171 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
5172
5173 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
5174
5175 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
5176 locale-coding-system, as was already done for WINDOWSNT.
5177
5178 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
5179 translation for chars in the 0-255 range.
5180
5181 2005-03-16 Lute Kamstra <lute@gnu.org>
5182
5183 * floatfns.c (Ffloor): Doc fix.
5184
5185 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5186
5187 * mac.c: Include macterm.h instead of directly including Carbon.h.
5188 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
5189 (Qarray, Qdictionary): New variables.
5190 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5191 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
5192 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
5193 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
5194 in callback for CFDictionaryApplyFunction.
5195 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5196 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5197 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
5198 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
5199 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
5200 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5201 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
5202 (skip_white_space, parse_comment, parse_include_file)
5203 (parse_binding, parse_component, parse_resource_name, parse_value)
5204 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
5205 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
5206 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
5207 New functions.
5208
5209 * macfns.c (mac_get_rdb_resource): Remove function.
5210 (x_get_string_resource): Use xrm_get_resource.
5211
5212 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
5213
5214 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
5215 name_list_element.
5216 (mac_make_rdb): Create resource database from preferences and
5217 argument string.
5218 (mac_term_init): Save resource database to cddr part of
5219 name_list_element.
5220
5221 * macterm.h (xrm_merge_string_database, xrm_get_resource)
5222 (xrm_get_preference_database): Add externs.
5223 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5224 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5225 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
5226
5227 * process.c (init_process): Change `#ifdef DARWIN' to `#if
5228 defined (DARWIN) || defined (MAC_OSX)'
5229
5230 * s/darwin.h (DARWIN): Don't define.
5231
5232 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5233
5234 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
5235 Remove unused variables.
5236 (syms_of_macfns): Don't initialize them. Likewise for
5237 Qface_set_after_frame_default. Defvar and initialize
5238 Vx_window_horizontal_drag_shape.
5239 (x_set_mouse_color): Change mouse pointer shape.
5240 (mac_window) [!MAC_OSX]: Create root control.
5241 (Fx_create_frame): Remove initializations of mouse pointer shapes.
5242 (hourglass_started): New function (from xfns.c).
5243 (start_hourglass, cancel_hourglass): Put function body in #ifdef
5244 MAC_OSX.
5245 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
5246 indicator for each non-tooltip frame if needed, and show it.
5247 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
5248
5249 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
5250 Controls.h. Use ThemeCursor instead of CursHandle.
5251
5252 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
5253 Remove functions and declarations.
5254 (mac_set_colors): Take argument for saving background color.
5255 All callers changed.
5256 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
5257 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
5258 background color.
5259 (x_update_end, mac_do_track_drag): Don't reset background color.
5260 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
5261 Use SetThemeCursor.
5262 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
5263 indicator control to the upper-right corner of the window.
5264 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
5265 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
5266 (do_window_update): Update controls after updating content area.
5267 (mac_handle_window_event): Remove unused extern.
5268 (XTread_socket): Check both control handle and control part code
5269 to determine whether a scroll bar is clicked. Activate/deactivate
5270 root control instead of contained scroll bar controls.
5271 (make_mac_terminal_frame): Use ThemeCursor constants.
5272
5273 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
5274 New member hourglass_control.
5275 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
5276 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
5277
5278 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5279
5280 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
5281 coincides with that in Apple X11 except `clear', `enter' on
5282 laptops, and fn + `enter' on laptops.
5283
5284 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
5285
5286 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
5287 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
5288 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
5289
5290 * xfns.c (xic_defaut_fontset): New constant.
5291 (xic_create_fontsetname): New function.
5292 Extracted from create_frame_xic. Try to generate a slightly
5293 better fontset.
5294 (xic_create_xfontset): Use it.
5295 (create_frame_xic): Simplify.
5296
5297 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
5298
5299 * fileio.c (Fmake_symbolic_link): Fix last change.
5300
5301 2005-03-11 Richard M. Stallman <rms@gnu.org>
5302
5303 * fileio.c (Frename_file, Fadd_name_to_file)
5304 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
5305 expand the basename of FILE relative to it.
5306
5307 2005-03-11 Kenichi Handa <handa@m17n.org>
5308
5309 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
5310 before calling setup_coding_system so that autoloading of a coding
5311 system work.
5312
5313 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5314
5315 * xfns.c (hourglass_started): New function.
5316
5317 * dispextern.h: Declare hourglass_started.
5318
5319 * keyboard.c (Fexecute_extended_command): Restart hourglass
5320 after call to Fcompleting_read if already started.
5321
5322 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
5323 GTK main loop is entered in xterm.c, thus doing the redraw.
5324
5325 2005-03-10 Kim F. Storm <storm@cua.dk>
5326
5327 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
5328
5329 2005-03-08 Kenichi Handa <handa@m17n.org>
5330
5331 * frame.c (x_set_font): Call set_default_ascii_font if an
5332 available font is found.
5333
5334 * fontset.c (set_default_ascii_font): New function.
5335 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
5336
5337 * fontset.h (set_default_ascii_font): Extern it.
5338
5339 2005-03-07 Kim F. Storm <storm@cua.dk>
5340
5341 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
5342 (clear_image_cache_count): New var.
5343 (redisplay_internal): Don't clear face and image caches in the
5344 middle of redisplay; do it afterwards.
5345
5346 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
5347
5348 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
5349 is valid. If not, clear phys_cursor_on_p and return.
5350
5351 2005-03-07 Andreas Schwab <schwab@suse.de>
5352
5353 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
5354
5355 2005-03-06 Richard M. Stallman <rms@gnu.org>
5356
5357 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
5358
5359 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
5360 (Feval, Ffuncall): Use CHECK_CONS_LIST.
5361
5362 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
5363
5364 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
5365 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
5366
5367 2005-03-05 Juri Linkov <juri@jurta.org>
5368
5369 * emacs.c (USAGE1): Replace Info node name "command arguments"
5370 with "emacs invocation".
5371 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
5372 allow arguments `--color' and `MODE' to be separated by space.
5373 Add --no-blinking-cursor, -nbc.
5374 (standard_args): Add -nbc, --no-blinking-cursor.
5375
5376 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5377
5378 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
5379 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
5380 * fileio.c (Fexpand_file_name) [VMS]:
5381 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
5382 * doc.c (munge_doc_file_name) [VMS]: Likewise.
5383 (Fsnarf_documentation): Call munge_doc_file_name.
5384
5385 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5386
5387 * s/vms.h (FILE_SYSTEM_CASE): New macro.
5388 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
5389 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
5390
5391 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5392
5393 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
5394 defined (MAC_OSX) && defined (HAVE_CARBON)'.
5395
5396 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
5397
5398 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5399 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
5400 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
5401 (mac_clear_font_name_table): Move extern to macterm.h.
5402
5403 * macfns.c (install_window_handler): Move extern to macterm.h.
5404 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
5405 valid. Don't check !NILP (dir) because it is already checked with
5406 CHECK_STRING.
5407 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
5408 specifying the default location and obtaining the selected filename.
5409
5410 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5411
5412 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
5413 are included via Carbon.h.
5414
5415 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
5416 Define USE_CARBON_EVENTS to 1.
5417 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
5418 (x_free_frame_resources): Call remove_window_handler for
5419 non-tooltip windows.
5420 [TARGET_API_MAC_CARBON]: Don't include headers that are included
5421 via Carbon.h.
5422 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
5423 (mac_do_receive_dragUPP): New variables.
5424 (mac_handle_service_event, init_service_handler): Put declarations
5425 and definitions in #ifdef MAC_OSX.
5426 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
5427 drag-and-drop handler functions and register them.
5428 (remove_window_handler): New function.
5429 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
5430 Use fsspec_to_posix_pathname.
5431 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
5432 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
5433 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
5434 Set default cursors.
5435 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
5436 init_service_handler or init_quit_char_handler.
5437 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
5438
5439 * macterm.h (install_window_handler, remove_window_handler)
5440 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
5441 (mac_clear_font_name_table): New externs.
5442
5443 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5444
5445 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
5446 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
5447 (Fexpand_file_name): Likewise.
5448
5449 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5450
5451 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
5452 no longer special-case VMS. Add bogus return value.
5453
5454 2005-03-02 Kim F. Storm <storm@cua.dk>
5455
5456 * dispextern.h (XASSERTS): Define to 0 if not already defined.
5457 (xassert) [!XASSERTS]: Define dummy version.
5458
5459 2005-03-02 Kim F. Storm <storm@cua.dk>
5460
5461 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
5462 Reported by David Kastrup.
5463
5464 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
5465
5466 * xdisp.c (get_next_display_element): Fix control and escape
5467 glyph from display vector.
5468
5469 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
5470
5471 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
5472
5473 2005-02-27 Richard M. Stallman <rms@gnu.org>
5474
5475 * xdisp.c (fast_find_position): Rename END to BEG.
5476 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
5477
5478 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5479
5480 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
5481 gtk_window_resize and x_wm_set_size_hint.
5482
5483 2005-02-25 Kim F. Storm <storm@cua.dk>
5484
5485 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
5486
5487 * xdisp.c (init_from_display_pos): Don't read past end of
5488 it->overlay_strings array.
5489
5490 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
5491
5492 * buffer.c (syms_of_buffer): Fix typo.
5493
5494 2005-02-23 Lute Kamstra <lute@gnu.org>
5495
5496 * buffer.c (Foverlay_buffer): Doc fix.
5497
5498 2005-02-22 Kim F. Storm <storm@cua.dk>
5499
5500 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
5501 and symbol keys in alists and hash tables.
5502
5503 * xdisp.c (fast_find_position): Fix search for start of overlay.
5504
5505 2005-02-21 Kim F. Storm <storm@cua.dk>
5506
5507 * window.c (window_scroll_pixel_based): When scrolling backwards,
5508 handle partial visible line at end of window even when we hit PT.
5509
5510 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
5511
5512 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
5513
5514 2005-02-21 Kim F. Storm <storm@cua.dk>
5515
5516 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
5517 I think those asserts are bogus if buffer contains invisible text
5518 or images.
5519
5520 2005-02-21 David Kastrup <dak@gnu.org>
5521
5522 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
5523
5524 2005-02-20 Kim F. Storm <storm@cua.dk>
5525
5526 * xdisp.c (pos_visible_p): Be sure to move to the specified
5527 position. Always get the full ascent / descent of the
5528 corresponding row, to return reliable rtop and rbot values.
5529 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
5530 Must look one character back, as back_to_previous_line_start
5531 returns position after the newline.
5532 (move_it_vertically_backward): Fix heuristic for when to move further
5533 back in case line_height * 2/3 is larger than window height.
5534 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
5535 as it does not do anything anymore. Add arg current_matrix_p to
5536 use current matrix rather than desired matrix when set.
5537 (try_cursor_movement): Don't scroll to make cursor row fully
5538 visible if cursor didn't move. This avoids unexpected recentering
5539 in case of blinking cursor or accepting process output.
5540 Use current matrix to check cursor row visibility.
5541 (redisplay_window): Fix whether to recenter or move to top in case
5542 cursor line is taller than window height.
5543 (find_first_unchanged_at_end_row): Stop search if we reach a row
5544 which not enabled (instead of abort).
5545
5546 2005-02-18 Kim F. Storm <storm@cua.dk>
5547
5548 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
5549 to be nil in a :box attribute value list; customize prints that
5550 as lisp value when no box color is specified.
5551
5552 * .gdbinit (pitx, pit): Pretty print display iterator.
5553 (prowx, prow): Pretty print glyph row.
5554 (pcursorx, pcursor): Pretty print a window cursor.
5555 (pwinx, pwin): Pretty print struct window.
5556
5557 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
5558
5559 * alloc.c (BLOCK_BYTES): Harmless typo.
5560
5561 2005-02-17 Andreas Schwab <schwab@suse.de>
5562
5563 * xfns.c (hack_wm_protocols): Use correct type for last parameter
5564 of XGetWindowProperty to avoid aliasing issues.
5565 (Fx_window_property): Likewise.
5566
5567 * xselect.c (Fx_disown_selection_internal): Use union of struct
5568 input_event and struct selection_input_event to avoid aliasing issues.
5569
5570 * xterm.c (handle_one_xevent): Use union of struct input_event and
5571 struct selection_input_event to avoid aliasing issues.
5572 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
5573
5574 2005-02-17 Kim F. Storm <storm@cua.dk>
5575
5576 * dispextern.h (enum it_method): New enum.
5577 (GET_FROM_*): Its members.
5578 (struct it): Change member method from function pointer to enum.
5579
5580 * xdisp.c (check_it, init_from_display_pos, handle_stop)
5581 (setup_for_ellipsis, handle_single_display_spec)
5582 (handle_composition_prop, next_overlay_string)
5583 (get_overlay_strings, reseat_1, reseat_to_string)
5584 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
5585 (in_display_vector_p, display_line, get_next_display_element):
5586 Change it->method from function pointer to enum.
5587 (get_next_element): New array to map it->method to function.
5588 (get_next_display_element): Use it.
5589 (set_iterator_to_next): Use switch instead of if/else chain.
5590
5591 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
5592
5593 * w32select.c: Summary: Thorough rework to implement Unicode
5594 clipboard operations and delayed rendering.
5595
5596 Drop last_clipboard_text and related code, keep track of
5597 ownership via clipboard_owner instead. Drop old #if0 sections.
5598
5599 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
5600 (clipboard_owner, modifying_clipboard, cfg_coding_system)
5601 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
5602 (current_coding_system, current_requires_encoding)
5603 (current_num_nls, current_clipboard_type, current_lcid):
5604 New static variables.
5605
5606 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
5607 (render, render_all, run_protected, lisp_error_handler)
5608 (owner_callback, create_owner, setup_config)
5609 (enum_locale_callback, cp_from_locale, coding_from_cp):
5610 New local functions.
5611
5612 (term_w32select, globals_of_w32select): New global functions.
5613
5614 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
5615 clipboard_owner instead. Use delayed rendering and provide
5616 all text formats. Provide CF_LOCALE if necessary.
5617
5618 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
5619 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
5620 available. Force DOS line-ends for decoding.
5621
5622 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
5623
5624 (syms_of_w32select): Init and register new variables.
5625
5626 * w32.h: Add prototypes for globals_of_w32select and
5627 term_w32select. Make the neighboring K&R declarations into
5628 prototypes, too.
5629
5630 * emacs.c: Include w32.h to get function prototypes.
5631 (main): Call globals_of_w32select.
5632
5633 * w32.c (term_ntproc): Call term_w32select.
5634
5635 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
5636
5637 2005-02-16 Kim F. Storm <storm@cua.dk>
5638
5639 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
5640 at end of display vector.
5641
5642 2005-02-15 Richard M. Stallman <rms@gnu.org>
5643
5644 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
5645 for mode and header lines.
5646
5647 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
5648
5649 * keymap.h (describe_map_tree): Change decl.
5650
5651 * keyboard.c (command_loop_1): Always use safe_run_hooks
5652 to run Qdeferred_action_function.
5653
5654 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
5655 (describe_map, describe_vector): Likewise. When it's 1,
5656 don't omit shadowed bindings, instead mark them as shadowed.
5657
5658 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
5659 for describe_map_tree. Pass 1 for MENTION_SHADOW.
5660
5661 * data.c (Fsetq_default): Allow no arg case.
5662
5663 2005-02-14 Kenichi Handa <handa@m17n.org>
5664
5665 * coding.c (encode_coding_string): Always return a unibyte string.
5666 If NOCOPY is nonzero and there's no need of encoding, make STR
5667 unibyte directly.
5668
5669 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
5670 multibyte string, signal an error instead of aborting.
5671
5672 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
5673
5674 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
5675
5676 2005-02-12 Kim F. Storm <storm@cua.dk>
5677
5678 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
5679
5680 2005-02-10 Kim F. Storm <storm@cua.dk>
5681
5682 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
5683 if it moves outside window or it doesn't display text.
5684
5685 2005-02-09 Kim F. Storm <storm@cua.dk>
5686
5687 * undo.c (Fprimitive_undo): Check that undo function does not
5688 switch buffer.
5689
5690 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5691
5692 * xselect.c (selection_data_to_lisp_data): For the special case
5693 type == XA_ATOM, data contains array of int, not array of Atom.
5694 (x_property_data_to_lisp, selection_data_to_lisp_data):
5695 Comment update: data must be array of int for format == 32.
5696
5697 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
5698
5699 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
5700
5701 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5702
5703 * xfns.c (Fx_change_window_property): Use long array when format is 32.
5704 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
5705 convert long array returned from XGetWindowProperty to an int array.
5706 (x_set_tool_bar_lines): Check that width and height is greater than
5707 zero before clearing area.
5708
5709 * xselect.c (x_reply_selection_request): Pass long array to
5710 XChangeProperty so that 64 bit longs are handeled correctly.
5711 (x_get_window_property): If format is 32 and long is bigger than 32
5712 bits convert data from XGetWindowProperty from long array to int array.
5713 (lisp_data_to_selection_data): When the input is a vector and the
5714 format is 32, allocate a long array even if long is bigger than 32 bits.
5715 (x_fill_property_data): Use char, short and long as the man page
5716 for XChangeProperty specifies. This way the data returned is OK for
5717 both 32 and 64 bit machines.
5718 (x_handle_dnd_message): Calculate size correctly even for 64 bit
5719 machines.
5720 (Fx_send_client_event): Undo change from 2005-02-05,
5721 x_fill_property_data now handles that case.
5722
5723 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
5724 reason for the approach in the code.
5725
5726 2005-02-07 Kim F. Storm <storm@cua.dk>
5727
5728 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
5729
5730 2005-02-06 Richard M. Stallman <rms@gnu.org>
5731
5732 * eval.c (Frun_hook_with_args)
5733 (Frun_hook_with_args_until_success)
5734 (Frun_hook_with_args_until_failure): Doc fixes.
5735
5736 2005-02-05 Andreas Schwab <schwab@suse.de>
5737
5738 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
5739
5740 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5741
5742 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
5743 the longs in a XClientMessageEvent correctly when long is 64 bits.
5744
5745 2005-02-05 Eli Zaretskii <eliz@gnu.org>
5746
5747 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
5748 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
5749
5750 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5751
5752 * xmenu.c (menubar_selection_callback): Force out GTK buffered
5753 events so the menu event comes after them. This is to prevent sit-for
5754 from exiting on buffered events directly after a menu selection,
5755 lisp code for Help => About Emacs uses sit-for.
5756
5757 * gtkutil.c (create_menus): Connect selection-done event instead of
5758 the deactivate event to deactivate_cb. This will make the last
5759 leave event come before the call to deactivate_cb, so the leave
5760 event does not make sit-for exit after a menu selection.
5761
5762 2005-02-03 Kim F. Storm <storm@cua.dk>
5763
5764 * dispnew.c (build_frame_matrix_from_leaf_window)
5765 [!GLYPH_DEBUG]: Fix xassert.
5766
5767 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
5768
5769 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
5770
5771 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5772
5773 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
5774 the compiling OS version.
5775
5776 * macfns.c (x_create_tip_frame): Likewise.
5777
5778 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
5779
5780 2005-02-03 Richard M. Stallman <rms@gnu.org>
5781
5782 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
5783
5784 * xdisp.c (echo_area_display): Clear echo_message_buffer.
5785
5786 * buffer.c (Fbury_buffer): Doc fix.
5787
5788 2005-02-02 Steven Tamm <steventamm@mac.com>
5789
5790 * macfns.c (unwind_create_frame): Fix compile error due to
5791 xassert being uncondition, but predicate is.
5792 * dispnew.c (update_window): Fix compile error due to
5793 xassert being uncondition, but predicate is.
5794
5795 2005-02-02 Miles Bader <miles@gnu.org>
5796
5797 * dispextern.h (xassert): Enable unconditionally.
5798
5799 2005-02-02 Kim F. Storm <storm@cua.dk>
5800
5801 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
5802
5803 2005-02-02 Kenichi Handa <handa@m17n.org>
5804
5805 * casefiddle.c (casify_object): Enable changing characters of
5806 different byte length.
5807 (casify_region): Fix loop condition, args to replace_range_2, and
5808 update opoint_byte.
5809
5810 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
5811
5812 2005-02-01 Kim F. Storm <storm@cua.dk>
5813
5814 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
5815 stack before calling handle_display_prop.
5816
5817 2005-01-31 Kim F. Storm <storm@cua.dk>
5818
5819 * undo.c (Qapply): New lisp var.
5820 (syms_of_undo): Intern and staticpro it.
5821 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
5822 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
5823
5824 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
5825
5826 2005-01-30 Jesper Harder <harder@phys.au.dk>
5827
5828 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
5829 <mac-emulate-three-button-mouse>: Fix docstring indentation.
5830
5831 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
5832
5833 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
5834 Increase value to 3 Meg.
5835
5836 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5837
5838 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
5839 button events are not received otherwise.
5840
5841 2005-01-29 Richard M. Stallman <rms@gnu.org>
5842
5843 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
5844
5845 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
5846
5847 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
5848
5849 * keymap.c (access_keymap): YAILOM.
5850
5851 2005-01-27 Kim F. Storm <storm@cua.dk>
5852
5853 * xdisp.c (get_phys_cursor_geometry): New function to calculate
5854 phys cursor position and size for hollow cursor. Position is
5855 aligned with get_glyph_string_clip_rect and ensures that a hollow
5856 cursor is shown, even when the actual glyph is not visible.
5857
5858 * dispextern.h (get_phys_cursor_geometry): Add prototype.
5859
5860 * xterm.c (x_clip_to_row): Ensure y >= 0.
5861 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5862
5863 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5864
5865 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5866
5867 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
5868
5869 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
5870
5871 2005-01-27 Kim F. Storm <storm@cua.dk>
5872
5873 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
5874 glyph, even when row is only partially visible and actual cursor
5875 position is not visible.
5876
5877 2005-01-24 Richard M. Stallman <rms@gnu.org>
5878
5879 * xterm.c (x_error_quitter): No longer static, and moved after
5880 x_error_handler.
5881
5882 2005-01-24 Kim F. Storm <storm@cua.dk>
5883
5884 * xdisp.c (move_it_by_lines): If we move forward after going too
5885 far back, cancel move if end position is same as start position.
5886
5887 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5888
5889 * dispextern.h (struct glyph_string): New members clip_head and
5890 clip_tail.
5891
5892 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
5893 region to the area between clip_head and clip_tail.
5894 (draw_glyphs): Record the area that need to be actually redrawn to
5895 the new variables clip_head and clip_tail when there are
5896 overhangs. Set values of these variables to the corresponding
5897 members in struct glyph_string. Refine x coordinates for
5898 notice_overwritten_cursor using clip_head and clip_tail.
5899
5900 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
5901
5902 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
5903 QDTextBounds.
5904 (x_draw_glyph_string): Don't fill the background of the successor
5905 of a glyph with a right overhang if the successor will draw a cursor.
5906 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
5907 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
5908
5909 2005-01-24 Kim F. Storm <storm@cua.dk>
5910
5911 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
5912 direction if window height was smaller than next-screen-context-lines.
5913 Now always scroll at least one line in the requested direction.
5914 Ensure that we actually do scroll backwards when requested to do so.
5915
5916 * xdisp.c (redisplay_window): Only try to make cursor line fully
5917 visible once (to avoid redisplay loop).
5918
5919 2005-01-23 Kim F. Storm <storm@cua.dk>
5920
5921 * window.c (Fpos_visible_in_window_p): Simplify return value for
5922 partially visible rows.
5923 (window_scroll_pixel_based): Adapt to that change.
5924
5925 * window.c (window_scroll_pixel_based): Force moving to next line
5926 if scrolling doesn't move start point, e.g. if looking at tall image.
5927
5928 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5929 Clear last_height before calling line_bottom_y to get real height.
5930 Fix calculation of y.
5931
5932 2005-01-22 Steven Tamm <steventamm@mac.com>
5933
5934 * s/darwin.h: Removed PTY_ITERATION from here.
5935 (DARWIN): Define.
5936
5937 * process.c (init_process): Default process-connection-type to
5938 nil on darwin 6 or less, t if it is 7 or higher. This way the
5939 broken pty behavior is still allowed on darwin 6 for interactive
5940 processes for people that know what they are doing.
5941
5942 2005-01-22 Kim F. Storm <storm@cua.dk>
5943
5944 * window.c (auto_window_vscroll_p): New boolean.
5945 (syms_of_window): DEFVAR_BOOL it.
5946 (Fpos_visible_in_window_p): Extend return value to include RTOP
5947 and RBOT values if FULLY is nil.
5948 (window_scroll_pixel_based): Adjust vscroll for partially visible
5949 rows if auto_window_vscroll_p is set.
5950 (Fset_window_vscroll): Do nothing if vscroll is not modified.
5951
5952 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
5953 to return number of partially invisible pixels at top and bottom
5954 of the dislay row at POS.
5955
5956 * lisp.h (pos_visible_p): Fix prototype.
5957
5958 2005-01-21 Richard M. Stallman <rms@gnu.org>
5959
5960 * fileio.c (Fcopy_file): Doc fix.
5961
5962 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5963
5964 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
5965 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
5966 start of function for older compilers.
5967
5968 2005-01-20 Richard M. Stallman <rms@gnu.org>
5969
5970 * editfns.c (Fmessage): If arg is "", return "" (as before).
5971
5972 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
5973
5974 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
5975 variable.
5976
5977 2005-01-20 Steven Tamm <steventamm@mac.com>
5978
5979 * editfns.c (Voperating_system_release): Add.
5980 (init_editfns): Assign new variable operating-system-release
5981 based on call to uname if available.
5982 (get_operating_system_release): Add function to
5983 allow c-level access to operating system release.
5984
5985 * config.h: Regenerated.
5986
5987 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
5988 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
5989 using ptys as '7'.
5990
5991 2005-01-20 Kim F. Storm <storm@cua.dk>
5992
5993 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
5994
5995 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
5996 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
5997
5998 * macterm.c (x_draw_glyph_string_box): Likewise.
5999
6000 * w32term.c (x_draw_glyph_string_box): Likewise.
6001
6002 * indent.c (Fvertical_motion): Temporarily disable selective display.
6003
6004 2005-01-19 Kim F. Storm <storm@cua.dk>
6005
6006 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
6007 image property.
6008
6009 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
6010
6011 2005-01-18 Kim F. Storm <storm@cua.dk>
6012
6013 * xdisp.c (fast_find_position): Backtrack to find first row if
6014 charpos is inside a display overlay that spans multiple lines.
6015
6016 2005-01-18 Kenichi Handa <handa@m17n.org>
6017
6018 * coding.c (decode_coding_iso2022): Translate invalid codes if
6019 translation-table is specified.
6020
6021 2005-01-18 Kim F. Storm <storm@cua.dk>
6022
6023 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
6024 change. If handle_display_prop indicates newline is replaced by
6025 image or text, move back to start of relevant overlay or interval
6026 and continue scan from there. Simplify.
6027
6028 2005-01-17 Kim F. Storm <storm@cua.dk>
6029
6030 * dispnew.c (mode_line_string, marginal_area_string):
6031 Fix off-by-one error in search for glyph.
6032
6033 2005-01-16 Kim F. Storm <storm@cua.dk>
6034
6035 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
6036
6037 2005-01-16 Steven Tamm <steventamm@mac.com>
6038
6039 * macterm.c (mac_to_x_fontname): Remove spurious argument.
6040
6041 2005-01-16 Andreas Schwab <schwab@suse.de>
6042
6043 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
6044
6045 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6046
6047 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
6048 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
6049
6050 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6051
6052 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
6053 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
6054 New flags for readable_events.
6055 (get_filtered_input_pending, readable_filtered_events): Remove.
6056 (tracking_off): Call readable_events and get_input_pending with
6057 flag READABLE_EVENTS_DO_TIMERS_NOW.
6058 (readable_events): Move code from old readable_filtered_events here,
6059 but check new READABLE_EVENTS_* in argument flags instead of previous
6060 two boolean arguments do_timers_now and filter_events.
6061 If we are doing mouse tracking and the mouse moved, return only if
6062 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
6063 (swallow_events): Call get_input_pending with flag
6064 READABLE_EVENTS_DO_TIMERS_NOW.
6065 (get_input_pending): Move code from old get_filtered_input_pending
6066 here. Replace boolean arguments do_timers_now, filter_events with
6067 flags, and pass flags to readable_events. Document new
6068 READABLE_EVENTS_* flags.
6069 (detect_input_pending_ignore_squeezables): New function.
6070 (detect_input_pending_run_timers): Call get_input_pending with flag
6071 READABLE_EVENTS_DO_TIMERS_NOW.
6072 (Finput_pending_p): Call get_input_pending with flags
6073 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
6074
6075 * dispnew.c (update_window, update_frame_1): Replace calls to
6076 detect_input_pending with detect_input_pending_ignore_squeezables
6077 so that redisplay is not paused if the event queue contains only
6078 mouse movements.
6079
6080 * lisp.h: Declare detect_input_pending_ignore_squeezables.
6081
6082 2005-01-15 Steven Tamm <steventamm@mac.com>
6083
6084 * macterm.c (Vmac_use_core_graphics): Declare variable for
6085 mac-allow-anti-aliasing.
6086 (syms_of_macterm): DEFVAR_LISP and initialize it.
6087 (mac_draw_string_common): Use core graphics text rendering if
6088 mac-allow-anti-aliasing is enabled.
6089
6090 * macfns.c (Fx_file_dialog): Save As dialog includes only the
6091 file name in the text box.
6092
6093 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6094
6095 * macfns.c (x_set_foreground_color, x_set_background_color):
6096 Sync with xfns.c.
6097 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
6098 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
6099 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
6100
6101 2005-01-14 Kim F. Storm <storm@cua.dk>
6102
6103 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
6104
6105 2005-01-13 Richard M. Stallman <rms@gnu.org>
6106
6107 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
6108 if Voverriding_terminal_local_map is non-nil.
6109
6110 * keyboard.c (syms_of_keyboard): Doc fix.
6111
6112 2005-01-13 Kim F. Storm <storm@cua.dk>
6113
6114 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
6115 (specify 0 for FACE instead). Reorder arg list. Doc fix.
6116
6117 2005-01-12 Richard M. Stallman <rms@gnu.org>
6118
6119 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
6120 face property for characters that don't specify one.
6121
6122 * fns.c (Frequire): Record in load-history unconditionally.
6123
6124 2005-01-10 Kim F. Storm <storm@cua.dk>
6125
6126 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
6127
6128 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
6129 Callers changed.
6130 Add support to merge with lisp face id too (if face_name is t).
6131
6132 * xdisp.c (get_next_display_element, next_element_from_display_vector):
6133 Don't lookup lface_id from display table glyphs here; instead use
6134 merge_faces to merge the lisp face id into current face.
6135
6136 2005-01-09 Kim F. Storm <storm@cua.dk>
6137
6138 * dispextern.h (struct it): New member dpvec_face_id.
6139 (merge_into_realized_face): Add prototype.
6140
6141 * xfaces.c (merge_into_realized_face): New function. Used to
6142 merge escape-glyph face or face from display table into current face.
6143
6144 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
6145 (syms_of_xdisp): DEFVAR_LISP it.
6146 (escape_glyph_face): Remove var.
6147 (redisplay_window): Don't initialize it.
6148 (setup_for_ellipsis, get_next_display_element):
6149 Set it->dpvec_face_id to -1.
6150 (get_next_display_element): Test Vshow_nonbreak_escape.
6151 Do not setup escape_glyph_face.
6152 Properly merge escape-glyph face or face from display table with
6153 current face for escape and control characters.
6154 Set it->dpvec_face_id to relevant face id instead of adding it to each
6155 element of display vector.
6156 (next_element_from_display_vector): If it->dpvec_face_id is set,
6157 use that instead of lface_id from glyph itself.
6158
6159 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6160
6161 * xterm.h (struct x_output): New member, toolbar_detached.
6162
6163 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
6164 38.
6165 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
6166 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
6167 (xg_create_tool_bar): Initialize toolbar_detached.
6168 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
6169 toolbar_detached is zero.
6170
6171 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6172
6173 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
6174 gtk_menu_popup if not for_click, so callbacks for the menu are called.
6175
6176 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
6177 (xg_tool_bar_callback, xg_tool_bar_help_callback)
6178 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
6179
6180 * xselect.c (x_get_foreign_selection, x_fill_property_data)
6181 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
6182 XFLOAT_DATA to get extract number from Lisp object.
6183
6184 2005-01-07 Kim F. Storm <storm@cua.dk>
6185
6186 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
6187 Set stop_charpos to current charpos instead of 0.
6188
6189 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
6190
6191 * xdisp.c (Fformat_mode_line): First arg now required.
6192
6193 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6194
6195 * macterm.c (XLoadQueryFont): Correctly handle 0 size
6196 font widths that are returned from some Japanese fonts.
6197
6198 2005-01-06 Kim F. Storm <storm@cua.dk>
6199
6200 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
6201 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
6202 (destroy_fringe_bitmap): Set fringe_faces element to nil.
6203 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
6204 fringe_faces array and init elements to nil.
6205 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
6206 non-persistent face id.
6207 (mark_fringe_data): New function for GC.
6208
6209 * alloc.c (mark_fringe_data): Declare extern.
6210 (Fgarbage_collect): Call mark_fringe_data.
6211
6212 * alloc.c (overrun_check_free): Invalidate freed memory if
6213 XMALLOC_CLEAR_FREE_MEMORY is defined.
6214
6215 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6216
6217 * macfns.c: Include sys/param.h.
6218 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
6219 and function.
6220 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
6221 of filename string. Set event callback function when creating
6222 dialog boxes. Add code conversions for filenames. Don't dispose
6223 of apple event descriptor record if failed to create it.
6224
6225 * macterm.c: Include sys/param.h.
6226 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
6227 kEventWindowUpdate.
6228 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
6229 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
6230 of FSSpec from apple event descriptor record.
6231 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
6232 size of filename string.
6233 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
6234 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
6235 file dialog is in action.
6236 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
6237 Reject only when there are no filename items. Set background color
6238 before (un)highlighting the window below the dragged items.
6239 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
6240
6241 2005-01-05 Romain Francoise <romain@orebokech.com>
6242
6243 * term.c (encode_terminal_code): Fix buffer size computation.
6244
6245 2005-01-04 Richard M. Stallman <rms@gnu.org>
6246
6247 * xdisp.c (Fformat_mode_line): Doc fix.
6248
6249 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
6250
6251 * alloc.c (refill_memory_reserve): Move.
6252 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
6253 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
6254
6255 2005-01-03 Richard M. Stallman <rms@gnu.org>
6256
6257 * window.c (window_scroll_pixel_based): Don't correct preserve_y
6258 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
6259
6260 2005-01-03 Jason Rumney <jasonr@gnu.org>
6261
6262 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
6263 fontp->space_width to FONT_WIDTH so they are valid.
6264
6265 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
6266 average width. Set fontp->average_width and fontp->space_width to
6267 their appropriate values.
6268
6269 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6270 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6271 fontp->space_width.
6272
6273 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6274
6275 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
6276 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
6277 metrics for max and min bounds.
6278 (x_load_font): Correctly calculate average font width metrics.
6279
6280 2005-01-02 Richard M. Stallman <rms@gnu.org>
6281
6282 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
6283
6284 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6285
6286 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
6287
6288 2004-12-31 Richard M. Stallman <rms@gnu.org>
6289
6290 * xdisp.c (setup_for_ellipsis, get_next_display_element):
6291 Set it->ellipsis_p to 1 or 0.
6292 (display_line): Record whether row ends in mid-ellipsis.
6293 (set_cursor_from_row): If ends in ellipsis, find start of it.
6294 (cursor_row_p): If PT's at the end of the ellipsis the row
6295 ends within, don't display cursor on this row.
6296
6297 * dispextern.h (struct it): New element ellipsis_p.
6298 (struct glyph_row): New element ends_in_ellipsis_p.
6299
6300 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
6301 position if we're reading from something other than the buffer.
6302
6303 * window.c (window_scroll_pixel_based): Only look at
6304 Vscroll_preserve_screen_position if the old PT can't be kept.
6305 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
6306
6307 2004-12-30 Kim F. Storm <storm@cua.dk>
6308
6309 * xdisp.c (get_line_height_property): New function extracted from
6310 original calc_line_height_property.
6311 (calc_line_height_property): Rework. Handle t and (nil . ratio).
6312 (x_produce_glyphs): Use them to handle line-height and
6313 line-spacing according to new height spec.
6314 (Qtotal): Remove.
6315 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
6316
6317 2004-12-30 Kenichi Handa <handa@m17n.org>
6318
6319 * fileio.c (Finsert_file_contents): Don't use
6320 current_buffer->buffer_file_coding_system even if REPLACE is
6321 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
6322
6323 * fontset.h (struct font_info): New members space_width and
6324 average_width.
6325
6326 * frame.h (struct frame): New member space_width.
6327 (FRAME_SPACE_WIDTH): New macro.
6328
6329 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
6330
6331 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6332 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6333 fontp->space_width.
6334 (x_load_font): Calculate fontp->space_width and fontp->average_width.
6335 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
6336
6337 * xdisp.c (x_produce_glyphs): Calculate tab width by
6338 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
6339
6340 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
6341
6342 * macterm.c (SelectionRange): Add Xcode position apple event struct.
6343 (do_ae_open_documents): Handle Xcode-style file position open events.
6344
6345 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
6346
6347 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
6348
6349 2004-12-29 Richard M. Stallman <rms@gnu.org>
6350
6351 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
6352
6353 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6354
6355 * macfns.c (install_window_handler): Modify extern to return OSErr
6356 value.
6357 (mac_window): Handle return value of install_window_handler.
6358
6359 * macterm.c (reflect_byte): Remove function.
6360 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
6361 Lookup table instead.
6362 (mac_do_font_lists): Simplify calculation of the longest
6363 nonspecial string.
6364 (init_mac_drag_n_drop): Remove function and declaration.
6365 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
6366 init_mac_drag_n_drop.
6367 (mac_do_track_drag): New function and declaration.
6368 (install_window_handler): Return OSErr value.
6369 (install_window_handler) [TARGET_API_MAC_CARBON]:
6370 Register handlers for tracking/receiving drag-and-drop items.
6371 (do_ae_open_documents): Generate unibyte strings for filenames.
6372 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
6373 Reject only non-filename items. Set event modifiers, and return value.
6374
6375 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6376
6377 * coding.c (decode_coding): Fix previous change.
6378
6379 2004-12-28 Richard M. Stallman <rms@gnu.org>
6380
6381 * xdisp.c (back_to_previous_visible_line_start):
6382 Don't call handle_display_prop.
6383
6384 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6385
6386 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
6387 (decode_coding_emacs_mule, encode_coding_emacs_mule)
6388 (decode_coding_iso2022, encode_designation_at_bol)
6389 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
6390 (decode_coding): Constify arguments and local vars.
6391
6392 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6393
6394 * xmenu.c (popup_get_selection): Only pop down dialogs
6395 on C-g and Escape.
6396 (popup_get_selection): Remove parameter down_on_keypress.
6397 (create_and_show_popup_menu, create_and_show_dialog):
6398 Remove parameter down_on_keypress to popup_get_selection.
6399
6400 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6401
6402 * dispextern.h: Change HAVE_CARBON to MAC_OS.
6403 (struct glyph_string): Likewise.
6404
6405 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
6406 mac_initialize.
6407
6408 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
6409 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
6410
6411 * fns.c (vector): Change MAC_OSX to MAC_OS.
6412
6413 * frame.c (x_set_frame_parameters, x_report_frame_params)
6414 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
6415 (x_set_border_width, Vdefault_frame_scroll_bars):
6416 Change HAVE_CARBON to MAC_OS.
6417
6418 * image.c [MAC_OS]: Include sys/stat.h.
6419 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
6420 QuickTimeComponents.h.
6421
6422 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
6423 [!MAC_OSX] (select): Use mac_wait_next_event.
6424 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
6425 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
6426 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6427 (mac_clear_font_name_table): Add extern.
6428 (Fmac_clear_font_name_table): New defun.
6429 (syms_of_mac): Defsubr it.
6430 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
6431 [MAC_OSX] (select_and_poll_event): New function.
6432 [MAC_OSX] (sys_select): Use it.
6433 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
6434 [MAC_OSX && SELECT_USE_CFSOCKET]
6435 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
6436 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
6437 RunLoop for simultaneously monitoring two kinds of inputs, window
6438 events and process outputs, without periodically polling.
6439
6440 * macfns.c (mac_initialized): Remove extern.
6441 (stricmp): Put in #if 0. All callers changed to use xstricmp in
6442 xfaces.c.
6443 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
6444 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
6445 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
6446 (mac_get_rdb_resource): New function (from w32reg.c).
6447 (x_get_string_resource): Use it.
6448 (install_window_handler): Add extern.
6449 (mac_window): New function.
6450 (Fx_create_frame): Use it instead of make_mac_frame.
6451 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
6452 (Fx_open_connection, Fx_close_connection): New defuns.
6453 (syms_of_macfns): Defsubr them.
6454 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
6455 Add kWindowNoUpdatesAttribute to the window attribute.
6456 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
6457 (x_create_tip_frame): Don't call ShowWindow.
6458 (Fx_show_tip): Call ShowWindow.
6459 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
6460 TARGET_API_MAC_CARBON'.
6461 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
6462 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
6463
6464 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
6465 (Window): Typedef to WindowPtr and move outside `#if
6466 TARGET_API_MAC_CARBON'.
6467 (XSizeHints): New struct.
6468
6469 * macterm.c (x_update_begin, x_update_end)
6470 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
6471 frame.
6472 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
6473 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
6474 (construct_mouse_click): Put in #if 0.
6475 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
6476 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
6477 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6478 (activate_scroll_bars, deactivate_scroll_bars)
6479 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
6480 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
6481 if the position is neither user-specified nor program-specified.
6482 (x_free_frame_resources): Free size_hints.
6483 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
6484 (mac_clear_font_name_table): New function.
6485 (mac_do_list_fonts): Initialize font_name_table if needed.
6486 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
6487 around mac_do_list_fonts.
6488 (mac_unload_font): New function.
6489 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
6490 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
6491 and definitions with #if TARGET_API_MAC_CARBON.
6492 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
6493 (install_window_handler): Add decl.
6494 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
6495 window. Use UpdateControls. Get the rectangle that should be
6496 updated and restrict the target of expose_frame to it.
6497 (do_grow_window): Set minimum height/width according to size_hints.
6498 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
6499 (do_zoom_window): Don't use x_set_window_size.
6500 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
6501 (install_window_handler): New function.
6502 [!USE_CARBON_EVENTS] (mouse_region): New variable.
6503 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
6504 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
6505 GetEventDispatcherTarget inside BLOCK_INPUT.
6506 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
6507 Update mouse_region when mouse is moved.
6508 (make_mac_frame): Remove.
6509 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
6510 Initialize mouse pointer shapes. Change values of f->left_pos and
6511 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
6512 Don't call ShowWindow.
6513 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
6514 Vinvocation_name and Vsystem_name.
6515 (mac_make_rdb): New function (from w32term.c).
6516 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
6517 already been opened. Don't pass argument to
6518 mac_initialize_display_info. Don't set dpyinfo->height/width.
6519 Add entries to x_display_list and x_display_name_list.
6520 (x_delete_display): New function.
6521 (mac_initialize): Don't call mac_initialize_display_info.
6522 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
6523
6524 * macterm.h (check_mac): Add extern.
6525 (struct mac_output): New member size_hints.
6526 (FRAME_SIZE_HINTS): New macro.
6527 (mac_unload_font): Add extern.
6528
6529 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
6530
6531 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
6532
6533 2004-12-27 Richard M. Stallman <rms@gnu.org>
6534
6535 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
6536 (syms_of_buffer): Don't defsubr it.
6537
6538 * process.c (list_processes_1): Set undo_list instead
6539 of calling Fbuffer_disable_undo.
6540
6541 * xdisp.c (single_display_spec_string_p): Rename from
6542 single_display_prop_string_p.
6543 (single_display_spec_intangible_p): Rename from
6544 single_display_prop_intangible_p.
6545 (handle_single_display_spec): Rename from handle_single_display_prop.
6546 Rewritten to be easier to understand.
6547
6548 Change in load-history format. Functions now get (defun . NAME),
6549 and variables get just NAME.
6550
6551 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
6552
6553 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
6554 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
6555 (Qdefvar): Var deleted.
6556 (syms_of_eval): Don't initialze it.
6557
6558 * lread.c (syms_of_lread) <load-history>: Doc fix.
6559
6560 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6561
6562 * xmenu.c (popup_get_selection): Pop down on C-g.
6563 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
6564 pops down menu on C-g.
6565 (xdialog_show): If dialog popped down and no button in the dialog was
6566 pushed, call Fsignal to quit.
6567 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
6568 Fsignal to quit.
6569
6570 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
6571
6572 * gtkutil.c (xg_initialize): Install bindings for C-g so that
6573 dialogs and menus pop down.
6574
6575 2004-12-27 Kenichi Handa <handa@m17n.org>
6576
6577 * coding.c (code_convert_region): Fix calculation of `ratio'.
6578
6579 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6580
6581 * gtkutil.c (update_frame_tool_bar): Make the value of
6582 tool-bar-button-margin control margins of images in tool bar.
6583
6584 * alloc.c (check_depth): New variable.
6585 (overrun_check_malloc, overrun_check_realloc): Only add
6586 overhead and write check pattern if check_depth is 1 (to handle
6587 recursive calls). Increase/decrease check_depth in entry/exit.
6588 (overrun_check_free): Only check for overhead if check_depth is 1.
6589 Increase/decrease check_depth in entry/exit.
6590
6591 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6592
6593 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
6594 before touching input_available_clear_time, to avoid accessing it
6595 from multiple threads.
6596
6597 2004-12-23 Jason Rumney <jasonr@gnu.org>
6598
6599 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
6600 of JPEG library.
6601
6602 2004-12-22 Richard M. Stallman <rms@gnu.org>
6603
6604 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
6605
6606 * lisp.h (Vundo_outer_limit): Fix decl.
6607
6608 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
6609 Uses changed.
6610 (syms_of_undo): Initialize appropriately.
6611 (truncate_undo_list): If it's nil, there's no limit.
6612
6613 2004-12-22 Kenichi Handa <handa@m17n.org>
6614
6615 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
6616
6617 2004-12-21 Richard M. Stallman <rms@gnu.org>
6618
6619 * eval.c (unwind_to_catch): Clear immediate_quit.
6620
6621 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
6622 specially as `\ ' and `\-'.
6623
6624 * keyboard.c (kbd_buffer_store_event_hold):
6625 In the code for while-no-input, handle immediate_quit.
6626
6627 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
6628 Call that at the very start.
6629 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
6630 (syms_of_alloc): Don't define undo-limit,
6631 undo-strong-limit and undo-outer-limit here.
6632
6633 * undo.c (truncate_undo_list): Return void.
6634 Take just one argument, the buffer.
6635 Make it current, and inhibit recursive GC.
6636 Access and update the undo list directly; return void.
6637 Refer to the undo...limit variables directly.
6638 Test undo_outer_limit only after counting the whole current command.
6639 When it's exceeded, call the function in undo-outer-limit-function.
6640 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
6641 (Vundo_outer_limit_function): New variable.
6642 (syms_of_undo): Define undo-limit, undo-strong-limit
6643 and undo-outer-limit here, and undo-outer-limit-function.
6644 Doc fixes.
6645
6646 * lisp.h (truncate_undo_list): Update decl.
6647
6648 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
6649
6650 * fileio.c (Fread_file_name): Delete duplicates in
6651 file-name-history when history_delete_duplicates is true.
6652
6653 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6654
6655 * macterm.c (mac_do_list_fonts): Fix memory leak
6656
6657 2004-12-20 Richard M. Stallman <rms@gnu.org>
6658
6659 * regex.c (re_match_2_internal) <symend, wordend>:
6660 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
6661
6662 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6663
6664 * macterm.c (endif, x_font_name_to_mac_font_name):
6665 Use maccentraleurroman instead of maccentraleuropean
6666 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
6667 quickly finding a specific font without needing regexps.
6668
6669 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6670
6671 * syssignal.h: Declare main_thread.
6672 (SIGNAL_THREAD_CHECK): New macro.
6673
6674 * keyboard.c (input_available_signal): Move thread checking code
6675 to macro SIGNAL_THREAD_CHECK and call that macro.
6676 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
6677
6678 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
6679
6680 * emacs.c: Define main_thread.
6681 (main): Initialize main_thread.
6682 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
6683 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
6684
6685 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
6686
6687 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
6688
6689 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
6690
6691 * process.c (send_process_trap, sigchld_handler):
6692 Call SIGNAL_THREAD_CHECK.
6693
6694 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
6695
6696 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
6697
6698 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
6699 returning when xg_ignore_gtk_scrollbar is true.
6700
6701 2004-12-14 Kim F. Storm <storm@cua.dk>
6702
6703 * keyboard.c (read_char): Save and restore echo_string when
6704 handling input method.
6705
6706 2004-12-13 Richard M. Stallman <rms@gnu.org>
6707
6708 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
6709
6710 * keyboard.c (Vthrow_on_input): New variable.
6711 (syms_of_keyboard): Defvar and initialize it.
6712 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
6713
6714 * lisp.h (QUIT): Check for Vthrow_on_input.
6715 (Vthrow_on_input): Declare it.
6716
6717 2004-12-13 Kim F. Storm <storm@cua.dk>
6718
6719 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
6720 vector.
6721
6722 2004-12-12 Richard M. Stallman <rms@gnu.org>
6723
6724 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
6725
6726 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
6727 (Ftry_completion): Really use outer `zero'; eliminate inner one.
6728
6729 2004-12-12 Kenichi Handa <handa@m17n.org>
6730
6731 * term.c (encode_terminal_code): Fix previous change.
6732
6733 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
6734
6735 * keyboard.c (handle_async_input): Remove pthread mutex handling.
6736 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
6737
6738 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
6739 in macro arguments.
6740
6741 * minibuf.c (Ftry_completion, Fall_completions): Don't use
6742 XFASTINT blindly.
6743
6744 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
6745
6746 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6747
6748 * w32term.c (x_calc_absolute_position): Remove calculation of
6749 difference between inner and outer window. Don't subtract difference
6750 for left and top calculations.
6751
6752 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
6753 for left and top calculations. Remove call to x_real_positions.
6754 [Bug report by Drew Adams in November]
6755 (x_check_expected_move): Do not set change_gravity to 1 when calling
6756 x_set_offset.
6757
6758 2004-12-08 Richard M. Stallman <rms@gnu.org>
6759
6760 * xdisp.c (get_next_display_element): Use `escape-glyph' for
6761 control chars and escaped octal codes.
6762 (Qescape_glyph): New variable.
6763 (syms_of_xdisp): Initialize it.
6764 (escape_glyph_face): New variable.
6765 (redisplay_window): Initialize it.
6766
6767 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
6768
6769 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
6770 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
6771
6772 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6773
6774 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
6775 reset_malloc_hooks.
6776
6777 * keyboard.c (handle_async_input, input_available_signal):
6778 Add ! defined (SYSTEM_MALLOC) around thread code.
6779
6780 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
6781
6782 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
6783
6784 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
6785
6786 * config.in: Regenerate.
6787
6788 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6789
6790 * xmenu.c (Fx_popup_menu): Correct documentation about position.
6791 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
6792 if not given by a mouse click to correspond with x-popup-menu
6793 documentation.
6794
6795 * config.in: Regenerate.
6796
6797 * gtkutil.c: Include signal.h and syssignal.h.
6798 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
6799
6800 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
6801 new variables main_thread and alloc_mutex,
6802 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
6803 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
6804 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
6805 (UN)BLOCK_INPUT.
6806 (emacs_blocked_free, emacs_blocked_malloc)
6807 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
6808 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
6809 (reset_malloc_hooks): New function.
6810
6811 * lisp.h: Declare reset_malloc_hooks.
6812
6813 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
6814
6815 * keyboard.c: Conditionally include pthread.h
6816 (handle_async_input, input_available_signalt): If not in the main
6817 thread, block signal, send signal to main thread and return.
6818
6819 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6820 Set current folder in file chooser if default_filename is a directory.
6821
6822 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
6823
6824 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
6825 Remove redundant correctness checks.
6826 (regex_compile): Fix up error codes for \{..\} expressions.
6827
6828 2004-12-05 Richard M. Stallman <rms@gnu.org>
6829
6830 * regex.c (regex_compile): Fix end-of-pattern case for space.
6831
6832 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6833
6834 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
6835 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
6836 crashes with invalid characters.
6837 * macmenu.c (add_menu_item): Use it.
6838 * image.c (image_load_quartz2d): Likewise.
6839 * macfns.c (x_set_name, x_set_title): Likewise.
6840 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
6841 creating them each time for labels.
6842
6843 2004-12-02 Richard M. Stallman <rms@gnu.org>
6844
6845 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
6846 don't use it here.
6847
6848 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
6849 (interactive_p): Skip Scalled_interactively_p frames
6850 like Sinteractive_p frames.
6851 (unwind_to_catch): Clear handling_signal.
6852
6853 * data.c (Fmake_variable_buffer_local): Doc fix.
6854 (Fmake_local_variable): Doc fix.
6855
6856 * insdel.c (insert_from_string_before_markers)
6857 (insert_from_string): Don't modify buffer on empty insertion.
6858
6859 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
6860
6861 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6862
6863 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
6864 menu text as UTF8 fails.
6865
6866 2004-12-01 Kim F. Storm <storm@cua.dk>
6867
6868 * alloc.c: Add commentary for last change.
6869 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
6870 sizeof(size_t) != 4.
6871 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
6872 Use them. Also clear header and trailer of freed memory.
6873 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
6874 (string_overrun_cookie): Rename from string_overrun_pattern.
6875 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
6876
6877 2004-12-01 Andreas Schwab <schwab@suse.de>
6878
6879 * lisp.h: Declare string_to_multibyte.
6880
6881 2004-12-01 Kenichi Handa <handa@m17n.org>
6882
6883 * w32console.c (w32con_write_glyphs): Decide coding here.
6884 Adjusted for the change of encode_terminal_code.
6885
6886 * term.c (encode_terminal_code): Don't make it "static".
6887
6888 2004-11-30 Kenichi Handa <handa@m17n.org>
6889
6890 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
6891 (encode_terminal_code): Argument changed. Encode all
6892 characters at once, and return a pointer to the result of encoding.
6893 (write_glyphs): Decide coding here. Adjusted for the above change.
6894 (insert_glyphs): Likewise.
6895 (term_init): Initialize encode_terminal_bufsize to 0.
6896
6897 * coding.c (Vcode_conversion_workbuf_name): New variable.
6898 (syms_of_coding): Initialize and staticpro it.
6899 (set_conversion_work_buffer): New function.
6900 (run_pre_post_conversion_on_str): Use it.
6901 (run_pre_write_conversin_on_c_str): New function.
6902
6903 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
6904
6905 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6906
6907 * keyboard.c: Don't undef SIGIO
6908 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
6909 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
6910 (macfns.o): Don't depend on ccl.h.
6911 * macfns.c (mac_frame_parm_handlers): Set handlers for
6912 Qleft_fringe and Qright_fringe.
6913 * macterm.c (mac_fill_rectangle_to_pixmap)
6914 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
6915 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
6916 Put in #if 0.
6917 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
6918 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
6919 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
6920 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
6921 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
6922 XDrawImageString. Always draw background and foreground separately.
6923 (x_draw_image_foreground): Use clipping instead of computing the
6924 intersection rectangle.
6925 (x_draw_image_glyph_string): Don't draw an image with mask to a
6926 pixmap.
6927 (x_redisplay_interface): Set flush_display_optional member to 0.
6928 (XTread_socket): Correctly reset the TEConverter
6929 object.
6930
6931 2004-11-30 Kim F. Storm <storm@cua.dk>
6932
6933 * lisp.h: New defines to enable buffer overrun checking.
6934 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
6935 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
6936
6937 * alloc.c: Add more checks for buffer overruns.
6938 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
6939 xmalloc_overrun_check_trailer, overrun_check_malloc)
6940 overrun_check_realloc, overrun_check_free): Add.
6941 (GC_STRING_EXTRA, string_overrun_pattern): Add.
6942 (check_sblock, allocate_string_data, compact_small_strings):
6943 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
6944 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
6945 (check_string_free_list): Add.
6946 (allocate_string, sweep_strings): Call check_string_free_list.
6947
6948 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
6949 XMALLOC_OVERRUN_CHECK to avoid crash during load.
6950
6951 2004-11-29 Kim F. Storm <storm@cua.dk>
6952
6953 * fns.c (concat): Use SAFE_ALLOCA.
6954
6955 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
6956
6957 * sysdep.c (emacs_write): Don't use QUIT.
6958
6959 2004-11-29 Kenichi Handa <handa@m17n.org>
6960
6961 * buffer.c (init_buffer): Set current_buffer->directory to a
6962 multibyte string made by string_to_multibyte.
6963
6964 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
6965
6966 2004-11-27 Andreas Schwab <schwab@suse.de>
6967
6968 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
6969
6970 * s/gnu-linux.h: Enable no-op gcpros on ia64.
6971 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
6972
6973 * filelock.c (lock_file_1): Call get_boot_time early.
6974 Increase buffer size.
6975
6976 2004-11-27 Eli Zaretskii <eliz@gnu.org>
6977
6978 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
6979 is not defined.
6980
6981 2004-11-27 Kim F. Storm <storm@cua.dk>
6982
6983 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
6984 marker out of doc string.
6985
6986 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
6987
6988 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
6989 which was not mentioned in the log.
6990
6991 2004-11-26 Kim F. Storm <storm@cua.dk>
6992
6993 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
6994 angle bitmaps at top/bottom line.
6995
6996 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
6997 set it when it->method is set to next_element_from_display_vector.
6998 (setup_for_ellipsis): Add LEN argument. Callers changed.
6999 Set it->saved_face_id.
7000 (get_next_display_element): Use loop instead of recursion.
7001 Set it->saved_face_id. Combine duplicate code for ctr chars.
7002 (next_element_from_display_vector): Do not set it->saved_face_id.
7003 (next_element_from_ellipsis): Use setup_for_ellipsis.
7004
7005 2004-11-26 Eli Zaretskii <eliz@gnu.org>
7006
7007 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
7008 prevent compiler warnings.
7009
7010 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
7011
7012 * keyboard.c (command_loop_1): Print a message describing the key
7013 the user just pressed when this key has no binding.
7014
7015 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
7016 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
7017
7018 * lread.c (readchar): Check QUIT when `getc' is interrupted.
7019
7020 2004-11-24 Richard M. Stallman <rms@gnu.org>
7021
7022 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
7023
7024 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
7025
7026 2004-11-24 Kim F. Storm <storm@cua.dk>
7027
7028 * xdisp.c (move_it_in_display_line_to, display_line):
7029 Restore saved_face_id also when truncate-lines or hscrolled.
7030
7031 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7032
7033 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
7034 x-use-old-gtk-file-dialog.
7035
7036 * xfns.c: Define x_use_old_gtk_file_dialog.
7037 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
7038 outside ifdef USE_GTK.
7039
7040 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
7041
7042 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
7043 Don't use XFASTINT blindly.
7044
7045 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
7046
7047 * indent.c (skip_invisible): Avoid non-idempotent side-effects
7048 in macro arguments.
7049
7050 * keymap.c (Flookup_key): Check INTEGERP before XINT.
7051
7052 * lread.c (oblookup): Don't use XFASTINT blindly.
7053
7054 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
7055 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
7056
7057 2004-11-23 Kim F. Storm <storm@cua.dk>
7058
7059 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
7060 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
7061
7062 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
7063 signal_p is zero and face name is unknown.
7064 (Fx_list_fonts): Don't signal error in lookup_named_face.
7065 (Fface_font): Signal error in lookup_named_face.
7066 (ascii_face_of_lisp_face): Likewise.
7067
7068 * dispextern.h (lookup_named_face): Fix prototype.
7069
7070 * xdisp.c (handle_single_display_prop): Don't signal error in
7071 lookup_named_face for unknown fringe face name.
7072 (highlight_trailing_whitespace): Don't signal error in
7073 lookup_named_face if trailing-whitespace face unknown.
7074 (calc_line_height_property): Don't signal error in
7075 lookup_named_face if specified face name is unknown.
7076
7077 * fringe.c (update_window_fringes): Show top row indicator if
7078 window has header-line. Don't show arrow at bob and eob
7079 if the boundary indicators are not used.
7080 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
7081
7082 * window.c (set_window_buffer): Clear display_error_modiff.
7083
7084 2004-11-22 Kim F. Storm <storm@cua.dk>
7085
7086 * fringe.c (update_window_fringes): Provide sensible fall-back
7087 value for non-nil indicate-buffer-boundaries setting.
7088
7089 2004-11-22 Markus Rost <rost@ias.edu>
7090
7091 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
7092
7093 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
7094
7095 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
7096
7097 2004-11-21 Kim F. Storm <storm@cua.dk>
7098
7099 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
7100
7101 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
7102 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7103
7104 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
7105 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7106
7107 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
7108 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7109
7110 * xdisp.c (move_it_in_display_line_to, display_line):
7111 Restore saved_face_id if overflow-newline-into-fringe is enabled and
7112 line is continued before or in middle of element from display vector.
7113
7114 * indent.c (Fvertical_motion): Fix last change. Use another
7115 method to detect if iterator moved too far ahead after reseat.
7116
7117 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
7118 expand matrix width for overflow in zero-width area.
7119 (append_glyph, append_composite_glyph, produce_image_glyph)
7120 (append_stretch_glyph): Use it to avoid loop in redisplay.
7121 (note_mode_line_or_margin_highlight): Don't let help-echo from
7122 string override help-echo from image map.
7123
7124 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
7125
7126 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
7127 * callint.c (Fcall_interactively): Ditto.
7128
7129 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
7130
7131 * minibuf.c (Fminibuffer_complete_and_exit):
7132 Fixup the case of the completed value, for case-indep completion.
7133
7134 2004-11-20 Richard M. Stallman <rms@gnu.org>
7135
7136 * lisp.h (Fread_from_minibuffer): Add arg in decl.
7137
7138 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
7139 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
7140
7141 * search.c (Vsearch_spaces_regexp):
7142 Rename from Vsearch_whitespace_regexp. All uses changed.
7143
7144 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
7145
7146 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
7147
7148 2004-11-19 Richard M. Stallman <rms@gnu.org>
7149
7150 * search.c (Vsearch_whitespace_regexp): New variable.
7151 (syms_of_search): Defvar it.
7152 (compile_pattern_1): Call re_set_whitespace_regexp with it.
7153 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
7154 is non-nil.
7155 (struct regexp_cache): New element whitespace_regexp.
7156 (syms_of_search): Initialize whitespace_regexp elements.
7157 (compile_pattern): Compare whitespace_regexp elements.
7158 (compile_pattern_1): Set whitespace_regexp elements.
7159
7160 * regex.c (regex_compile): Substitute whitespace_regexp
7161 for spaces, if it is nonzero.
7162 (whitespace_regexp): New variable.
7163 (re_set_whitespace_regexp): New function.
7164
7165 2004-11-19 Kim F. Storm <storm@cua.dk>
7166
7167 * indent.c (Fvertical_motion): Fix last change.
7168
7169 2004-11-18 Kim F. Storm <storm@cua.dk>
7170
7171 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
7172 Instead, move back again if reseating moves too far ahead.
7173
7174 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
7175
7176 * xdisp.c (message3): Call clear_message.
7177
7178 2004-11-17 Kim F. Storm <storm@cua.dk>
7179
7180 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
7181
7182 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7183
7184 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
7185
7186 * xmenu.c (x_menu_in_use): Remove.
7187 (x_menu_set_in_use): Also set popup_activated_flag.
7188
7189 * xfns.c (Fx_file_dialog): Call popup_activated instead of
7190 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
7191
7192 * xterm.h (x_menu_in_use): Remove.
7193
7194 2004-11-16 Richard M. Stallman <rms@gnu.org>
7195
7196 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
7197 Use map-keymap-internal to implement that.
7198
7199 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
7200
7201 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
7202
7203 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
7204 a window before using XWINDOW.
7205
7206 * window.c (make_window, Fselect_window, make_dummy_parent)
7207 (save_window_save):
7208 * frame.c (make_frame):
7209 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
7210
7211 * lisp.h (NILP): Use EQ rather than XFASTINT.
7212
7213 2004-11-16 Kim F. Storm <storm@cua.dk>
7214
7215 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
7216
7217 * indent.c (Fvertical_motion): Fix last change. Only reseat when
7218 moving backwards.
7219
7220 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
7221
7222 * dispextern.h: Extern reseat_at_previous_visible_line_start.
7223
7224 2004-11-16 Kenichi Handa <handa@m17n.org>
7225
7226 * xdisp.c (display_mode_element): Fix previous change (calculate
7227 end position of substring to display correctly).
7228
7229 2004-11-16 Kim F. Storm <storm@cua.dk>
7230
7231 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
7232 Reported by Andrew M. Scott.
7233
7234 2004-11-15 Kim F. Storm <storm@cua.dk>
7235
7236 * fns.c (Fsafe_plist_get): New defun.
7237 (syms_of_fns): Defsubr it.
7238
7239 * lisp.h (Fsafe_plist_get): Add EXFUN.
7240
7241 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
7242 Use Fsafe_plist_get.
7243 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7244 Fix image map element parsing. Use Fsafe_plist_get.
7245
7246 2004-11-15 Richard M. Stallman <rms@gnu.org>
7247
7248 * xdisp.c (get_next_display_element): Fix previous change.
7249
7250 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7251
7252 * window.c (shrink_windows): Handle special case of one window left
7253 when trying to shrink the final reminder. Grow windows if
7254 total_removed is less than total_shrink.
7255
7256 * xmenu.c (pop_down_menu): Remove global variable current_menu,
7257 extract pointer from arg with XSAVE_VALUE.
7258 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
7259 Construct arg to record_unwind_protect with make_save_value.
7260
7261 2004-11-13 Richard M. Stallman <rms@gnu.org>
7262
7263 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
7264 (get_next_display_element): Fix previous change to apply only to \n.
7265
7266 * indent.c (Fvertical_motion): Scan to PT from start of line to
7267 make iterator consistent.
7268
7269 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7270
7271 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7272
7273 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
7274
7275 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
7276 Record unwind with clean_up_file_dialog.
7277
7278 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
7279 Declare.
7280
7281 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
7282
7283 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7284
7285 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
7286 (xg_file_sel_destroy): Remove.
7287 (xg_file_response_cb, pop_down_file_dialog)
7288 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
7289 New functions.
7290 (xg_get_file_with_chooser, xg_get_file_with_selection):
7291 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
7292 Move common code to xg_get_file_name. Return widget created.
7293 (xg_get_file_name): Set name, transient for, modal and destroy
7294 with parent here. Connect response signal to xg_file_response_cb,
7295 connect delete-event to gtk_true. Record pop_down_file_dialog
7296 for unwind. Do event loop and call x_menu_wait_for_event in loop.
7297 (xg_create_widget): Make dialogs modal.
7298
7299 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
7300 Lisp_Object.
7301 (popup_get_selection): Move unwind protect ...
7302 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7303 Move destroy of widget to pop_down_menu.
7304 (popup_widget_loop): Move unwind protect ...
7305 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7306 Move destroy of widget to pop_down_menu.
7307 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
7308 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
7309 x_mouse_leave and grabbed = 0 to pop_down_menu.
7310
7311 2004-11-13 Kim F. Storm <storm@cua.dk>
7312
7313 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
7314 (syms_of_xdisp): DEFVAR_BOOL it.
7315 (make_cursor_line_fully_visible, try_cursor_movement)
7316 (try_window_id): Use it.
7317
7318 2004-11-12 Kim F. Storm <storm@cua.dk>
7319
7320 * dispextern.h (struct glyph_row): New member extra_line_spacing.
7321 (struct it): New member max_extra_line_spacing.
7322 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
7323 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
7324 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
7325 part of last line is only extra line spacing (so the text on the
7326 line is fully visible). Use helper macros.
7327 Add W arg (to use them). All callers changed.
7328 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
7329 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
7330
7331 * window.c (window_scroll_pixel_based, Frecenter):
7332 Use move_it_vertically_backward directly.
7333 (Frecenter): Fix calculation of new start pos for negative arg.
7334 Before, the new start pos was sometimes chosen too far back, so
7335 the last line became only partially visible, and thus would be
7336 either only semi-visible or automatically scrolled to the middle
7337 of the window by redisplay.
7338
7339 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
7340 (move_it_vertically_backward): Don't recure to move further back.
7341 (move_it_vertically): Remove superfluous condition.
7342 (move_it_by_lines): Clear last_height when moved 0 lines.
7343 (resize_mini_window): Use it.max_extra_line_spacing.
7344 (display_tool_bar_line): Clear row->extra_line_spacing.
7345 (try_scrolling): Use move_it_vertically_backward directly.
7346 (redisplay_window): Likewise.
7347 (compute_line_metrics): Set row->extra_line_spacing.
7348 (display_line, display_string): Likewise.
7349 (x_produce_glyphs): Update it->max_extra_line_spacing.
7350
7351 * xmenu.c (pop_down_menu): Return nil.
7352
7353 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7354
7355 * xmenu.c (x_menu_wait_for_event): New function.
7356 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
7357 to handle timers.
7358 (popup_widget_loop): Add argument do_timers.
7359 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
7360 do_timers to popup_widget_loop.
7361 (xmenu_show): Call XMenuActivateSetWaitFunction so that
7362 x_menu_wait_for_event is called by XMenuActivate.
7363 (create_and_show_popup_menu): Pass 1 for do_timers to
7364 popup_get_selection.
7365 (pop_down_menu): New function.
7366 (popup_get_selection, popup_widget_loop): Unwind protect to
7367 pop_down_menu.
7368 (popup_widget_loop): Add argument widget.
7369 (create_and_show_popup_menu, create_and_show_dialog): Pass new
7370 argument widget to popup_widget_loop.
7371
7372 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
7373
7374 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
7375
7376 2004-11-09 Kim F. Storm <storm@cua.dk>
7377
7378 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
7379 Fix various comments referring to XEvents instead of input events.
7380 (x_queue_event): Fix format strings.
7381 (x_stop_queuing_selection_requests): Likewise.
7382
7383 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
7384 (pint2hrstr): Add extra braces to silence compiler.
7385
7386 * print.c (print_object): Fix format string.
7387
7388 * lread.c (read1): Fix next_char matching.
7389
7390 * lisp.h (Fdelete): Add EXFUN.
7391 (replace_range_2): Add prototype.
7392
7393 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
7394
7395 * intervals.h (NULL_INTERVAL_P): Add separate version when
7396 ENABLE_CHECKING is not defined to silence compiler.
7397 (compare_string_intervals): Add prototype.
7398
7399 * fringe.c (destroy_fringe_bitmap): Fix return type.
7400 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
7401
7402 * emacs.c (Fdump_emacs): Fix format string.
7403
7404 * doc.c: Include <ctype.h>.
7405 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
7406
7407 * data.c (store_symval_forwarding): Remove unused variables.
7408
7409 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
7410
7411 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7412
7413 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
7414 to ${OLDXMENU}.
7415
7416 2004-11-09 Kim F. Storm <storm@cua.dk>
7417
7418 * process.c (Fmake_network_process): Remove kludge for interrupted
7419 connects on BSD. If connect is interrupted, just close socket and
7420 start over rather than sleeping and retry with same socket.
7421
7422 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7423
7424 * .cvsignore: Add buildobj.lst.
7425
7426 * doc.c: New variable Vbuild_files.
7427 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
7428 file names from buildobj.lst. Only attach docstrings from files
7429 that are in Vbuild_files.
7430 (syms_of_doc): Defvar Vbuild_files.
7431
7432 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
7433 and w32*.o.
7434 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
7435 (mostlyclean): Rm buildobj.lst
7436
7437 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
7438 is linked.
7439
7440 2004-11-09 Kim F. Storm <storm@cua.dk>
7441
7442 * fringe.c (update_window_fringes): Update fringe bitmaps if
7443 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
7444 also update previous row to get rid of misc. artifacts.
7445
7446 2004-11-08 Kim F. Storm <storm@cua.dk>
7447
7448 * xdisp.c (fast_find_position): Fix start pos if header line present.
7449 (note_mouse_highlight): Clear mouse face if we move out of text area.
7450
7451 2004-11-08 Eli Zaretskii <eliz@gnu.org>
7452
7453 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
7454 Don't include <sys/time.h> explicitly.
7455 Include <stdio.h> unconditionally, not just on MacOS.
7456
7457 2004-11-08 Kenichi Handa <handa@m17n.org>
7458
7459 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
7460 don't pay attention to '\' before '*'.
7461 (fontset_pattern_regexp): Change the meaning of the second arg.
7462 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
7463 (check_fontset_name): Try NAME as literal at first, and if it
7464 failes, try NAME as pattern.
7465
7466 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7467
7468 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
7469
7470 2004-11-07 Andreas Schwab <schwab@suse.de>
7471
7472 * lisp.h (Fmsdos_downcase_filename): Declare.
7473 * dired.c (Fmsdos_downcase_filename): Don't declare here.
7474 * fileio.c: Likewise.
7475
7476 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7477
7478 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
7479 comparisons with integers instead of Lisp_Object address.
7480 (Fmsdos_set_keyboard): Declare argument allkeys.
7481
7482 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
7483
7484 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
7485 int/Lisp_Object mixup.
7486
7487 * fileio.c: Ditto.
7488
7489 2004-11-06 Steven Tamm <steventamm@mac.com>
7490
7491 * editfns.c: Need to include sys/time.h before resource.h on darwin.
7492
7493 2004-11-06 Richard M. Stallman <rms@gnu.org>
7494
7495 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
7496
7497 * xfaces.c (merge_named_face): GCPRO the face_name in the
7498 named_merge_point struct that we make.
7499 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
7500
7501 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
7502 before deciding whether to inactivate mark.
7503
7504 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
7505
7506 * config.in: Regenerate (add HAVE_GETRUSAGE).
7507 * editfns.c (Fget_internal_run_time): New function.
7508 (syms_of_data): Defsubr it.
7509 * fns.c (sxhash): As far as possible, merge calculation of
7510 hash code for symbols and strings.
7511
7512 2004-11-06 Eli Zaretskii <eliz@gnu.org>
7513
7514 * frame.c (syms_of_frame): Fix the example in the doc string.
7515
7516 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7517
7518 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
7519
7520 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
7521 (create_and_show_dialog): Revert change from 2004-10-31.
7522
7523 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
7524
7525 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
7526
7527 2004-11-05 Kim F. Storm <storm@cua.dk>
7528
7529 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
7530
7531 * fileio.c (Ffile_modes): Doc fix.
7532 (auto_save_1): Check for Ffile_modes nil value.
7533
7534 2004-11-05 Kim F. Storm <storm@cua.dk>
7535
7536 * xselect.c (struct selection_event_queue, selection_queue)
7537 (x_queue_selection_requests, x_queue_event)
7538 (x_start_queuing_selection_requests)
7539 (x_stop_queuing_selection_requests): Add new queue for selection
7540 input events to replace previous XEvent queue in xterm.c.
7541 (queue_selection_requests_unwind): Adapt to new queue.
7542 (x_reply_selection_request): Adapt to new queue.
7543 Unexpect wait_object in case of x errors (memory leak).
7544 (x_handle_selection_request, x_handle_selection_clear): Make static.
7545 (x_handle_selection_event): New function. May queue selection events.
7546 (wait_for_property_change_unwind): Use save_value instead of cons.
7547 Clear property_change_reply_object.
7548 (wait_for_property_change): Abort if already waiting.
7549 Use save_value instead of cons for unwind data.
7550 (x_handle_property_notify): Skip events already arrived, but don't
7551 free them, as "arrived" field is checked by wait_for_property_change,
7552 and it will be freed by unwind or explicit unexpect_property_change.
7553 (x_get_foreign_selection): Add to new queue.
7554 (receive_incremental_selection): Don't unexpect wait_object when done
7555 as it has already been freed by previous wait_for_property_change.
7556
7557 * xterm.h (x_start_queuing_selection_requests)
7558 (x_stop_queuing_selection_requests, x_handle_selection_request)
7559 (x_handle_selection_clear): Remove prototypes.
7560 (x_handle_selection_event): Add prototype.
7561
7562 * xterm.c (handle_one_xevent): Don't queue X selection events
7563 here, it may be too late if we start queuing after we have already
7564 stored some selection events into the kbd buffer.
7565 (struct selection_event_queue, queue, x_queue_selection_requests)
7566 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
7567 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
7568 (x_catch_errors_unwind): Block input around final XSync.
7569
7570 * keyboard.h (kbd_buffer_unget_event): Add prototype.
7571
7572 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
7573 (kbd_buffer_unget_event): New function.
7574 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
7575 and use x_handle_selection_event.
7576 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
7577
7578 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7579
7580 * xselect.c (TRACE3): New debug macro.
7581 (x_reply_selection_request): Use it.
7582 (receive_incremental_selection): In call to TRACE0, the name of
7583 a symbol is in xname.
7584
7585 2004-11-05 Kim F. Storm <storm@cua.dk>
7586
7587 * fontset.c (fontset_pattern_regexp): Use unsigned char.
7588
7589 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7590
7591 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
7592
7593 * gtkutil.h (use_old_gtk_file_dialog): Declare.
7594
7595 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
7596 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
7597 * xfns.c (syms_of_xfns): ... to here.
7598
7599 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
7600 it doesn't start with /.
7601
7602 2004-11-04 Kenichi Handa <handa@m17n.org>
7603
7604 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
7605 treat it as a literal character.
7606
7607 2004-11-03 Kim F. Storm <storm@cua.dk>
7608
7609 * .gdbinit (ppt): New function.
7610
7611 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7612
7613 * xterm.c (x_window_to_scroll_bar): Only call
7614 xg_get_scroll_id_for_window if toolkit scroll bars are used.
7615
7616 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
7617 of save.
7618
7619 2004-11-02 Andreas Schwab <schwab@suse.de>
7620
7621 * window.c (Fscroll_right): Fix last change.
7622
7623 2004-11-02 Kim F. Storm <storm@cua.dk>
7624
7625 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
7626
7627 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7628
7629 * callproc.c (Fcall_process): Block input around vfork.
7630
7631 2004-11-02 Kim F. Storm <storm@cua.dk>
7632
7633 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
7634 (syms_of_eval): Defsubr it.
7635
7636 2004-11-02 Richard M. Stallman <rms@gnu.org>
7637
7638 * insdel.c (replace_range_2): New function.
7639
7640 * casefiddle.c (casify_region): Handle changes in byte-length
7641 using replace_range_2.
7642
7643 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
7644
7645 * xdisp.c (back_to_previous_visible_line_start):
7646 Subtract 1 from pos when checking previous newline for invisibility.
7647
7648 * window.c (window_scroll_pixel_based): Update preserve_y
7649 for header line if any.
7650 (Fscroll_left, Fscroll_right): Don't call interactive_p;
7651 use a new second argument instead.
7652
7653 * eval.c (Fcall_interactive_p): New function.
7654 (interactive_p): Don't test INTERACTIVE here.
7655 (Finteractive_p): Doc fix.
7656
7657 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
7658
7659 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7660
7661 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
7662 comparing font names.
7663
7664 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7665
7666 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
7667 Fx_file_dialog if only directories should be read.
7668
7669 * lisp.h: Fx_file_dialog takes 5 parameters.
7670
7671 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
7672 Add parameter only_dir_p.
7673 In Motif version, don't put DEFAULT_FILENAME in filter part of the
7674 dialog, just text field part. Do not add DEFAULT_FILENAME
7675 to list of files if it isn't there.
7676 In GTK version, pass only_dir_p parameter to xg_get_file_name.
7677
7678 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
7679 Check only_dir_p instead of comparing prompt to "Dired". When using
7680 a save dialog, add option kNavDontConfirmReplacement, change title
7681 to "Enter name", change text for save button to "Ok".
7682
7683 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
7684 Check only_dir_p instead of comparing prompt to "Dired".
7685
7686 * gtkutil.c (xg_get_file_with_chooser)
7687 (xg_get_file_with_selection): New functions, only defined ifdef
7688 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
7689 respectively.
7690 (xg_get_file_name): Add parameter only_dir_p.
7691 Call xg_get_file_with_chooser or xg_get_file_with_selection
7692 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
7693 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
7694
7695 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
7696
7697 * config.in: Rebuild (added HAVE_GTK_FILE_*).
7698
7699 2004-11-01 Kim F. Storm <storm@cua.dk>
7700
7701 * process.c (connect_wait_mask, num_pending_connects):
7702 Only declare and use them if NON_BLOCKING_CONNECT is defined.
7703 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
7704 (IF_NON_BLOCKING_CONNECT): New helper macro.
7705 (wait_reading_process_output): Only declare and use local vars
7706 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
7707
7708 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
7709
7710 * w32term.c (x_scroll_run): Delete region objects after use.
7711
7712 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7713
7714 * xmenu.c: Add prototypes for forward function declarations.
7715 (popup_get_selection): Remove parameter do_timers, remove call to
7716 timer_check.
7717 (create_and_show_popup_menu, create_and_show_dialog):
7718 Remove parameter do_timers from call to popup_get_selection.
7719
7720 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
7721 tool_bar_items and assign the result to f->tool_bar_items if
7722 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
7723 tool_bar_items to assignment of result.
7724
7725 * atimer.c (alarm_signal_handler): Do not call set_alarm if
7726 pending_atmers is non-zero.
7727
7728 2004-10-31 Kim F. Storm <storm@cua.dk>
7729
7730 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
7731
7732 2004-10-28 Will <will@glozer.net>
7733
7734 * macterm.c: Allow user to assign key modifiers to the Mac Option
7735 key via a 'mac-option-modifier' variable.
7736
7737 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7738
7739 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
7740 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
7741 (x_handle_selection_request, x_handle_selection_clear)
7742 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
7743
7744 2004-10-28 Richard M. Stallman <rms@gnu.org>
7745
7746 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
7747
7748 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
7749
7750 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
7751
7752 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
7753 comment-starter over a 1-char one.
7754
7755 2004-10-27 Richard M. Stallman <rms@gnu.org>
7756
7757 * xdisp.c (get_next_display_element): In mode lines,
7758 treat newline and tab like other control characters.
7759
7760 * editfns.c (Fmessage): Doc fix.
7761
7762 * indent.c (vmotion): When moving up, check the newline before.
7763 Make prevline an int, not a Lisp_Object.
7764
7765 2004-10-27 Kim F. Storm <storm@cua.dk>
7766
7767 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
7768 Only allocate info and discarded tables once.
7769
7770 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
7771 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
7772 (SAFE_FREE): Test it to determine if we need to unwind to free.
7773 Remove size arg. All users changed.
7774 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
7775
7776 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7777
7778 * gtkutil.c: Put empty line between comment and function body.
7779 (xg_destroy_widgets): Rename from remove_from_container.
7780 Just destroy all widgets in list. Argument wcont removed.
7781 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
7782 instead of remove_from_container.
7783 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
7784 (free_frame_tool_bar): Add comment.
7785
7786 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
7787 is not NULL before strcmp.
7788
7789 2004-10-26 Kim F. Storm <storm@cua.dk>
7790
7791 * callint.c (Fcall_interactively): Add 'U' code to get the
7792 up-event discarded by a previous 'k' or 'K' argument.
7793
7794 2004-10-26 David Kastrup <dak@gnu.org>
7795
7796 * buffer.c (syms_of_buffer): Fix a few typos.
7797
7798 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7799
7800 * xsmfns.c: Put empty line between comment and function body.
7801 Use two spaces before comment end.
7802
7803 2004-10-25 Kenichi Handa <handa@m17n.org>
7804
7805 * fontset.c (fontset_pattern_regexp): Optimize for the case that
7806 PATTERN is full XLFD.
7807
7808 2004-10-24 Kenichi Handa <handa@m17n.org>
7809
7810 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
7811
7812 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
7813 (regex_compile): Return REG_ERANGEX if appropriate.
7814
7815 2004-10-22 Kenichi Handa <handa@m17n.org>
7816
7817 * editfns.c (Ftranslate_region_internal): New function.
7818 (syms_of_editfns): Defsubr it.
7819
7820 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7821
7822 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
7823
7824 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7825
7826 * xterm.h (x_output): New member `xic_base_fontname'.
7827 (FRAME_XIC_BASE_FONTNAME): New macro.
7828 (xic_free_xfontset): Declare.
7829
7830 * xfns.c (xic_create_xfontset): Share fontsets between frames
7831 based on base_fontname.
7832 (xic_free_xfontset): New function.
7833 (free_frame_xic): Use it.
7834 (xic_set_xfontset): Ditto.
7835
7836 * xterm.c (xim_destroy_callback): Ditto.
7837
7838
7839 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
7840
7841 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
7842
7843 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7844
7845 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
7846 XSync.
7847
7848 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
7849 New variables and constant.
7850 (main): Calculate heap_bss_diff. If we are dumping and the
7851 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
7852 and exec ourself again.
7853 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
7854 print a warning.
7855
7856 * lastfile.c: Make my_endbss and my_endbss_static available on all
7857 platforms.
7858
7859 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
7860 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
7861
7862 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
7863
7864 * data.c (Flocal_variable_if_set_p): Doc fix.
7865
7866 2004-10-19 Jason Rumney <jasonr@gnu.org>
7867
7868 * w32.c (init_environment): Set emacs_dir correctly when running
7869 emacs from the build directory.
7870
7871 2004-10-19 Richard M. Stallman <rms@gnu.org>
7872
7873 * editfns.c (Fdelete_and_extract_region):
7874 If region is empty, return null string.
7875
7876 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7877
7878 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
7879 and canon_width.
7880 (xg_frame_cleared): Remove.
7881
7882 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
7883 (xg_find_top_left_in_fixed): Remove.
7884 (xg_create_scroll_bar): Put an event box widget between
7885 the scroll bar widget and the edit widget.
7886 (xg_show_scroll_bar): Show the parent widget (the event box).
7887 (xg_remove_scroll_bar): Destroy parent (the event box) also.
7888 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
7889 Move the parent (the event box) widget inside the fixed widget.
7890 Move window clear to xterm.c.
7891
7892 * gtkutil.h (xg_frame_cleared): Remove.
7893
7894 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
7895 (x_scroll_bar_create, XTset_vertical_scroll_bar):
7896 Remove arguments left and width to xg_update_scrollbar_pos.
7897 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
7898
7899 2004-10-19 Kenichi Handa <handa@m17n.org>
7900
7901 * xdisp.c (display_mode_element): Fix display of wide chars.
7902
7903 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7904
7905 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
7906 gdk_window_clear and move gdk_window_process_all_updates after
7907 clear so events are sent to the X server in correct order.
7908
7909 2004-10-18 Kenichi Handa <handa@m17n.org>
7910
7911 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
7912 comparing font names.
7913 (fs_query_fontset): Use fast_string_match for comparing fontset names.
7914 (list_fontsets): Likewise.
7915
7916 * search.c (fast_string_match_ignore_case): New function.
7917
7918 * lisp.h (fast_string_match_ignore_case): Extern it.
7919
7920 2004-10-17 Kim F. Storm <storm@cua.dk>
7921
7922 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
7923 than bitmap if there is not left fringe.
7924 (get_overlay_arrow_glyph_row): Also used on windows system.
7925 (display_line): Display overlay string if no left fringe.
7926
7927 2004-10-16 Jason Rumney <jasonr@gnu.org>
7928
7929 * w32fns.c (w32_font_match): Encode font name being matched.
7930
7931 2004-10-16 Richard M. Stallman <rms@gnu.org>
7932
7933 * window.c (Fspecial_display_p): Doc fix.
7934
7935 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
7936
7937 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
7938 Don't ignore menus, because where-is-internal already does it for us.
7939
7940 2004-10-15 Kim F. Storm <storm@cua.dk>
7941
7942 * xdisp.c (redisplay_window): Only update fringes and vertical
7943 border on window frames.
7944
7945 2004-10-14 Andreas Schwab <schwab@suse.de>
7946
7947 * m/ia64.h (DATA_SEG_BITS): Don't define.
7948
7949 2004-10-14 Kim F. Storm <storm@cua.dk>
7950
7951 * xterm.h: Include Xutil.h after keysym.h to work around bug
7952 in some X versions.
7953
7954 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
7955
7956 * fns.c (map_char_table): Add missing gcpros.
7957
7958 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
7959
7960 * keymap.c (get_keymap): An autoload form is not a keymap.
7961
7962 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
7963
7964 2004-10-13 Kim F. Storm <storm@cua.dk>
7965
7966 * callproc.c (Fcall_process): Simplify handling of display arg.
7967 Resume `display_on_the_fly' once a coding system is determined.
7968
7969 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
7970
7971 2004-10-12 Kim F. Storm <storm@cua.dk>
7972
7973 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
7974 caller, such as call-process, is not going to poll for input.
7975 (calc_line_height_property): Handle case where it->object is nil.
7976
7977 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
7978
7979 2004-10-12 Kenichi Handa <handa@m17n.org>
7980
7981 * xdisp.c (get_next_display_element):
7982 If unibyte_display_via_language_environment is zero, display 8-bit
7983 chars in octal in unibyte buffer.
7984
7985 2004-10-12 Kim F. Storm <storm@cua.dk>
7986
7987 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
7988 are no ordinary bindings.
7989
7990 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7991
7992 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
7993
7994 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7995
7996 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
7997 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
7998 (make_mac_frame): Add BLOCK_INPUT around the making of a
7999 terminal frame.
8000 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
8001 * macgui.h (mktime): Use emacs_mktime.
8002 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
8003 Make a cancel file-open dialog be like C-g.
8004 * mac.c (mktime): Use emacs_mktime.
8005 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
8006 (Fmac_paste_function): Add better error handling for carbon cut/paste.
8007
8008 2004-10-10 Kim F. Storm <storm@cua.dk>
8009
8010 * keyboard.c (timer_resume_idle): New function to resume idle
8011 timer without resetting timers on the idle list.
8012 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
8013 (timer_start_idle, timer_stop_idle): Declare static.
8014 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
8015
8016 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
8017
8018 2004-10-08 Steven Tamm <steventamm@mac.com>
8019
8020 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
8021 * macterm.c (mac_check_for_quit_char): Remove warning for using
8022 NULL where 0 should be used.
8023 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
8024 objc/malloc.h
8025 * mac.c: Include time.h for Tiger compatibility.
8026
8027 2004-10-07 Kim F. Storm <storm@cua.dk>
8028
8029 * xdisp.c (redisplay_window): Fix flicker on vertical line between
8030 windows. Update vertical line after drawing window fringes, but
8031 only if actually drawing any bitmaps--or there is no fringe.
8032
8033 * xterm.c (x_update_window_end): Likewise.
8034 * macterm.c (x_update_window_end): Likewise.
8035 * w32term.c (x_update_window_end): Likewise.
8036
8037 * fringe.c (draw_window_fringes): Return value now indicates if
8038 any fringe bitmaps were redrawn (or there are no fringes).
8039
8040 * dispextern.h (draw_window_fringes): Update prototype.
8041
8042 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8043
8044 * macfns.c (mac_get_window_bounds): Add extern.
8045 (x_real_positions): Use mac_get_window_bounds.
8046
8047 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
8048 xmenu.c (YAILOM).
8049
8050 * macterm.c [!MAC_OSX]: Include Windows.h.
8051 (front_emacs_window): Rename from mac_front_window. All uses
8052 changed. Return the frontmost non-tooltip emacs window.
8053 (mac_get_window_bounds): New function.
8054 (x_calc_absolute_position): Use the difference of width and height
8055 between the inner and outer window.
8056 (x_set_offset): Specify window position by the coordinae of the
8057 outer window. Adjust the position if the title bar is completely
8058 outside the screen.
8059 (app_is_suspended, app_sleep_time): Remove unused variables.
8060 (do_app_resume, do_app_suspend): Remove their contents because
8061 window-activate/deactivate events will do the job.
8062 (do_zoom_window): Remove unused variables. Make compliant to the
8063 standard way of zooming. Set f->left_pos and f->top_pos.
8064 (XTread_socket): Don't use argument `expected'. Don't use
8065 FrontWindow to determine the clicked window. Exclude unprocessed
8066 mouseUp cases in the early stage. Add parentheses to fix operator
8067 precedence.
8068 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
8069
8070 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
8071
8072 * config.in: Regenerate.
8073
8074 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
8075 HAVE_EXECSHIELD.
8076
8077 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8078
8079 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
8080 a row if Alt or Meta has been found for that row. Also stop scanning
8081 for Keysyms for that row.
8082
8083 2004-10-04 Kim F. Storm <storm@cua.dk>
8084
8085 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
8086 to list. Include overlay arrow bitmap in return value.
8087
8088 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
8089 bars with fractional column width. If scroll bar separates two
8090 windows, move it towards the window it belongs to. Only update
8091 the padding area below the scroll bar widget when necessary,
8092 i.e. when scroll bar widget is created, moved, or resized.
8093
8094 * xdisp.c (define_frame_cursor1): Do not change frame cursor
8095 while tracking/dragging mouse.
8096 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
8097
8098 * window.c (coordinates_in_window): Relax check for cursor
8099 on vertial border between mode lines.
8100 (Fset_window_fringes): Do not allow negative widths.
8101 (Fset_window_scroll_bars): Likewise.
8102
8103 * .gdbinit (pp): Shorthand for p ARG + pr.
8104 (ff): New command: flush frame updates (X only).
8105
8106 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
8107
8108 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
8109
8110 2004-09-30 Kenichi Handa <handa@m17n.org>
8111
8112 * process.c (send_process): Free composition data.
8113
8114 * fileio.c (Finsert_file_contents): Free composition data.
8115
8116 * coding.c (code_convert_region): Don't skip ASCIIs if there are
8117 compositions to encode.
8118 (encode_coding_string): Likewise. Free composition data.
8119
8120 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
8121
8122 * coding.c (code_convert_region): Free composition data.
8123
8124 2004-09-29 Kim F. Storm <storm@cua.dk>
8125
8126 * fringe.c: Remove limit on number of bitmaps.
8127 (fringe_bitmaps, fringe_faces): Change to pointers.
8128 (max_fringe_bitmaps): New var.
8129 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
8130 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
8131
8132 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
8133 (struct glyph_row): Reorder fringe_bitmap related fields.
8134 (struct it): Likewise.
8135
8136 * w32term.c (fringe_bmp): Change to pointer.
8137 (max_fringe_bmp): New var.
8138 (w32_define_fringe_bitmap): Expand fringe_bmp.
8139 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
8140 (w32_destroy_fringe_bitmap): Likewise.
8141
8142 2004-09-29 Kim F. Storm <storm@cua.dk>
8143
8144 * fringe.c: Simplify last change.
8145 (lookup_fringe_bitmap): New function.
8146 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
8147 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
8148 Keep standard bitmaps in Vfringe_bitmaps.
8149 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
8150 (Fset_fringe_bitmap_face): Likewise.
8151
8152 * dispextern.h (lookup_fringe_bitmap): Add prototype.
8153 (valid_fringe_bitmap_p): Remove prototype.
8154
8155 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
8156
8157 2004-09-29 Kim F. Storm <storm@cua.dk>
8158
8159 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
8160 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
8161
8162 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
8163
8164 * fringe.c (Vfringe_bitmaps): New variable.
8165 (syms_of_fringe): DEFVAR_LISP it.
8166 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
8167 Change arg to Lisp_Object and fail if not an integer.
8168 (get_fringe_bitmap_name, resolve_fringe_bitmap)
8169 (destroy_fringe_bitmap): New functions.
8170 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
8171 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
8172 clear its fringe property.
8173 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
8174 Fdestroy_fringe_bitmap.
8175 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
8176 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
8177 and set fringe property. Signal error if no free slots.
8178 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
8179 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
8180
8181 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
8182 symbols with a fringe property.
8183
8184 2004-09-27 Kim F. Storm <storm@cua.dk>
8185
8186 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
8187 Doc fix. Format may now be a symbol or alist, not a cons.
8188
8189 * fringe.c (update_window_fringes): Handle new formats of
8190 indicate-buffer-boundaries (symbol or alist). No longer
8191 allow a simple cons.
8192 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
8193
8194 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8195
8196 * config.in: Rebuild.
8197
8198 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8199
8200 * config.in: Rebuild.
8201
8202 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
8203
8204 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
8205
8206 * xterm.c (x_term_init): Work around a bug in some X servers.
8207
8208 2004-09-18 Richard M. Stallman <rms@gnu.org>
8209
8210 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
8211
8212 * xdisp.c (try_window_reusing_current_matrix):
8213 Handle the case where we reach the old displayed text,
8214 out of sync with the old line boundary.
8215
8216 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
8217
8218 * fileio.c (Finsert_file_contents): Fix case of replacement in a
8219 narrowed buffer.
8220
8221 2004-09-14 Kim F. Storm <storm@cua.dk>
8222
8223 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
8224
8225 * xfaces.c (Qface_no_inherit): New var.
8226 (syms_of_xfaces): Intern and staticpro it.
8227 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
8228 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
8229 Don't increment face_change_count when face has non-nil
8230 face-no-inherit property.
8231
8232 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
8233
8234 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
8235 (Fbyte_code): Remove dead code after `wrong_type_argument'.
8236
8237 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
8238 before doing the mark_stack_check_gcpros since they're not on the stack.
8239
8240 2004-09-12 Kim F. Storm <storm@cua.dk>
8241
8242 * editfns.c (Fformat): Handle format strings with multiple text
8243 properties. Reverse text property list from the format string,
8244 so the positions are in increasing order.
8245
8246 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8247
8248 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
8249 x_uncatch_errors so that possible protocol errors are delivered.
8250
8251 2004-09-10 Eli Zaretskii <eliz@gnu.org>
8252
8253 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
8254 blockinput.h.
8255 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
8256 charset.h, and coding.h
8257 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
8258 (term.o): Depend on window.h and keymap.h.
8259 (abbrev.o): Depend on syntax.h.
8260 (callint.o): Depend on keymap.h.
8261 (casefiddle.o): Depend on charset.h and keymap.h.
8262 (category.o): Depend on keymap.h.
8263 (coding.o): Depend on dispextern.h.
8264 (cmds.o): Depend on keyboard.h and keymap.h.
8265 (dispnew.o): Depend on indent.h and intervals.h.
8266 (doc.o): Depend on keymap.h.
8267 (editfns.o): Depend on frame.h.
8268 (emacs.o): Depend on dispextern.h.
8269 (fileio.o): Don't depend on ccl.h.
8270 (filelock.o): Depend on charset.h and coding.h.
8271 (frame.o): Depend on w32term.h and macterm.h.
8272 (insdel.o): Depend on region-cache.h.
8273 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
8274 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
8275 (search.o): Depend on $(INTERVALS_SRC).
8276 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
8277 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
8278 xterm.h, w32term.h, and macterm.h.
8279 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
8280 w32term.h, and macterm.h.
8281 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
8282 region-cache.h, xterm.h, w32term.h, and macterm.h.
8283 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
8284 (data.o): Depend on frame.h.
8285 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
8286 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
8287 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
8288 (intervals.o): Depend on keymap.h.
8289
8290 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
8291 Add debugging print-out to termscript.
8292
8293 2004-09-09 Richard M. Stallman <rms@gnu.org>
8294
8295 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
8296
8297 2004-09-08 Richard M. Stallman <rms@gnu.org>
8298
8299 * window.c (Fset_window_buffer): Doc fix.
8300
8301 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
8302
8303 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
8304
8305 * minibuf.c (history_delete_duplicates): New variable.
8306 (read_minibuf): Use it.
8307 (syms_of_minibuf): Create the corresponding lisp variable.
8308
8309 2004-09-08 Kim F. Storm <storm@cua.dk>
8310
8311 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
8312 overlay just before point.
8313
8314 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
8315
8316 * buffer.h (struct buffer): Add auto_save_file_format field.
8317 * buffer.c (reset_buffer, init_buffer_once):
8318 Handle auto_save_file_format field.
8319 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
8320 `buffer-auto-save-file-format'.
8321 * fileio.c: Delete declaration for removed Vauto_save_file_format.
8322 (build_annotations): Adapt to replacement of
8323 `auto-save-file-format' with the new buffer-local variable
8324 `buffer-auto-save-file-format'.
8325 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
8326
8327 2004-09-07 Jason Rumney <jasonr@gnu.org>
8328
8329 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
8330
8331 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
8332 Handle Unicode menu titles.
8333
8334 2004-09-07 Kim F. Storm <storm@cua.dk>
8335
8336 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
8337 property from text property or overlay strings at point.
8338
8339 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8340
8341 * xmenu.c (update_submenu_strings): YAILOM.
8342 (set_frame_menubar): Make sure last_i is initialized.
8343
8344 2004-09-03 Jason Rumney <jasonr@gnu.org>
8345
8346 * w32menu.c (_widget_value): Add lname and lkey.
8347 (digest_single_submenu): Set lname and lkey in widget_value
8348 instead of name and key.
8349 (update_submenu_strings): New function.
8350 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8351 call update_submenu_strings.
8352
8353 * w32menu.c (globals_of_w32menu): Check for Unicode API.
8354 (digest_single_submenu, w32_menu_show): Encode menu strings as
8355 UTF-8 if Unicode API is available.
8356 (utf8to16): New function.
8357 (add_menu_item): Use it when calling Unicode API.
8358
8359 2004-09-03 Kim F. Storm <storm@cua.dk>
8360
8361 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
8362 in overlay or text-property strings; set cursor on corresponding
8363 glyph rather than at end of the string.
8364
8365 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8366
8367 * macfns.c (x_real_positions): Save the current window port and
8368 set a new one before obtaining the global coordinate.
8369 Use FRAME_MAC_WINDOW.
8370 (x_set_name, x_set_title): Encode title to UTF8.
8371 Use SetWindowTitleWithCFString.
8372 (Fx_server_version): Get correct OS version.
8373
8374 * macmenu.c (add_menu_item): Remove unused variable `i'.
8375 Don't let separator items destroy refence constants of other menu items.
8376
8377 * macterm.c (x_update_end): Move SetPortWindowPort to inside
8378 BLOCK_INPUT.
8379 (x_set_offset): Use FRAME_MAC_WINDOW.
8380
8381 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
8382 nontext_cursor if it is on a scroll bar.
8383
8384 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
8385 Carbon support.
8386 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
8387 Use LIBS_CARBON.
8388
8389 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8390
8391 * xfns.c (x_set_name_internal): New function. Check if we shall call
8392 xfree before ENCODE_UTF_8.
8393 (x_set_name, x_set_title): Call x_set_name_internal.
8394
8395 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
8396
8397 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
8398 reload it.
8399
8400 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8401
8402 * macmenu.c (_widget_value): Add lname and lkey.
8403 (single_submenu): Set lname and lkey in widget_value
8404 instead of name and key.
8405 (update_submenu_strings): New function.
8406 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8407 call update_submenu_strings.
8408
8409 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
8410 instead of name and key.
8411 (update_submenu_strings): New function.
8412 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8413 call update_submenu_strings.
8414
8415 * gtkutil.h (_widget_value): Added lname and lkey.
8416
8417 2004-08-30 Steven Tamm <steventamm@mac.com>
8418
8419 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
8420 by using different names for inner loop variables.
8421
8422 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8423
8424 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
8425 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
8426
8427 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
8428 tool bar items is 0.
8429
8430 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8431
8432 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
8433 strings in menu items.
8434 (single_submenu): Use ENCODE_MENU_STRING
8435 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
8436 button release isn't passed to event loop
8437 (add_menu_item): Use SetMenuItemWithCFString
8438
8439 2004-08-26 Steven Tamm <steventamm@mac.com>
8440
8441 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
8442 tool-bar/menu click.
8443 * macfns.c (Fx_file_dialog): Implement using NavServices.
8444
8445 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8446
8447 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
8448
8449 * xfns.c (x_window_to_frame, x_any_window_to_frame)
8450 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8451 (x_top_window_to_frame): Return 0 if wdesc is None.
8452
8453 2004-08-22 Richard M. Stallman <rms@gnu.org>
8454
8455 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
8456 HAVE_TERMIOS]: If there's no char for this signal, drop through
8457 and use system calls.
8458
8459 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
8460
8461 2004-08-20 Kim F. Storm <storm@cua.dk>
8462
8463 * process.c (wait_reading_process_output): Rename from
8464 wait_reading_process_input. All uses changed.
8465 (wait_reading_process_output_1): Rename from
8466 wait_reading_process_input_1. All uses changed.
8467
8468 * dispnew.c (Fsleep_for): Remove obsolete code.
8469
8470 2004-08-20 Kenichi Handa <handa@m17n.org>
8471
8472 * syntax.c (skip_chars): Fix for unibyte case.
8473
8474 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
8475
8476 * syntax.c (char_quoted): Mixup byte/char pos.
8477 (back_comment): Fixup globals in all cases.
8478
8479 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8480
8481 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
8482 passing it to gtk_window_set_title.
8483
8484 2004-08-19 Kim F. Storm <storm@cua.dk>
8485
8486 * process.c (wait_reading_process_input): Clean up.
8487 Add wait_for_cell, wait_proc, and just_wait_proc args
8488 to avoid overloading `read_kbd' and `do_display' args.
8489 Change read_kbd arg to int. All callers changed.
8490
8491 * process.c (process_send_signal): Use CDISABLE.
8492
8493 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
8494
8495 2004-08-18 Kim F. Storm <storm@cua.dk>
8496
8497 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
8498 forward to wait_reading_process_input via DO_DISPLAY arg.
8499 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
8500 object, only process output from that process; also inhibit
8501 running timers if DO_DISPLAY==-2.
8502
8503 2004-08-17 Kim F. Storm <storm@cua.dk>
8504
8505 * process.c (process_send_signal): Fix last change--use
8506 _POSIX_VDISABLE instead of CVDISABLE when available.
8507
8508 2004-08-16 Richard M. Stallman <rms@gnu.org>
8509
8510 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
8511 Set VQUIT and VINTR chars to the standard ones if they are unset.
8512 [AIX]: Don't do that here. And don't force VINTR to standard
8513 when SIGNALS_VIA_CHARACTERS.
8514
8515 * process.c (process_send_signal)
8516 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
8517 Do nothing if the character is CVDISABLE.
8518
8519 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
8520
8521 * intervals.c (move_if_not_intangible):
8522 Force POSITION to be between BEGV and ZV.
8523
8524 2004-08-14 John Paul Wallington <jpw@gnu.org>
8525
8526 * buffer.c (Frestore_buffer_modified_p): Doc fix.
8527
8528 * fileio.c (Fread_file_name): Doc fix.
8529
8530 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
8531
8532 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
8533
8534 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
8535
8536 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
8537
8538 * keyboard.c: Declare Qdisabled_command_function instead of
8539 Qdisabled_command_hook.
8540 (Fcommand_execute): Use Qdisabled_command_function instead of
8541 Qdisabled_command_hook.
8542 (syms_of_keyboard): Ditto.
8543
8544 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
8545
8546 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
8547 (syms_of_keymap) <key-translation-map>: Doc fixes.
8548
8549 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
8550
8551 * window.c (window_list_1): YAILOM.
8552
8553 * fileio.c (make_temp_name): Handle multibyte prefixes.
8554
8555 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
8556
8557 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
8558 Doc fix.
8559
8560 2004-08-03 Kenichi Handa <handa@m17n.org>
8561
8562 * coding.c (decode_coding_string): Adjust coding->consumed, and
8563 etc. with shrinked_bytes.
8564
8565 2004-08-03 Kim F. Storm <storm@cua.dk>
8566
8567 * indent.c (compute_motion): Fix check for full width window
8568 in non-window case. Do not count left truncation glyph on
8569 window systems.
8570
8571 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
8572
8573 * data.c (Finteractive_form): Doc fix.
8574
8575 2004-08-02 Kim F. Storm <storm@cua.dk>
8576
8577 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
8578 properly accounting for continuation glyph on non-window systems.
8579 (Fcompute_motion): Use actual window width if WIDTH is nil, and
8580 actual window width/height if TOPOS is nil, properly accounting for
8581 continuation glyphs on non-window systems, and optional header lines.
8582 (vmotion): Let compute_motion calculate actual window width.
8583
8584 * window.c (window_scroll_line_based): Let compute_motion
8585 calculate actual window width.
8586
8587 2004-08-02 Kim F. Storm <storm@cua.dk>
8588
8589 * process.c (read_process_output): Use whole read buffer.
8590 Don't trigger adaptive read buffering on errors.
8591
8592 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
8593
8594 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
8595
8596 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
8597
8598 * callint.c (Fcall_interactively): Doc fix.
8599
8600 2004-07-30 Richard M. Stallman <rms@gnu.org>
8601
8602 * abbrev.c (Fexpand_abbrev): Undo previous change.
8603
8604 2004-07-30 Kim F. Storm <storm@cua.dk>
8605
8606 * editfns.c (Fformat): Allocate extra (dummy) element in info.
8607
8608 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
8609
8610 * eval.c (Fdefvar, Fdefconst): Doc fixes.
8611
8612 2004-07-27 Kim F. Storm <storm@cua.dk>
8613
8614 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
8615 we have ensured that the glyph fits on the current line (or returned
8616 MOVE_LINE_CONTINUED otherwise).
8617
8618 2004-07-26 Kim F. Storm <storm@cua.dk>
8619
8620 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
8621 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
8622 if target position is at end of display line but char is not a newline.
8623
8624 2004-07-25 Richard M. Stallman <rms@gnu.org>
8625
8626 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
8627 instead of ON_VERTICAL_BORDER, when on scroll bar.
8628 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
8629
8630 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
8631
8632 * window.c (Fcoordinates_in_window_p):
8633 Take account of FRAME_INTERNAL_BORDER_WIDTH.
8634
8635 * alloc.c (check_cons_list): New function (contents commented out).
8636
8637 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
8638
8639 * xfaces.c (Fcolor_supported_p): Doc fix.
8640
8641 * frame.c (Fselect_frame, Fset_frame_selected_window)
8642 (Fframe_visible_p, Fraise_frame): Doc fixes.
8643
8644 2004-07-24 Richard M. Stallman <rms@gnu.org>
8645
8646 * keyboard.h (not_single_kboard_state): Declare.
8647
8648 * fileio.c (Fwrite_region): Doc fix.
8649
8650 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
8651
8652 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
8653 only when a real abbrev is present.
8654
8655 * xfns.c (x_icon_verify): New function.
8656 (Fx_create_frame): Use it.
8657
8658 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
8659
8660 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
8661
8662 2004-07-21 Kim F. Storm <storm@cua.dk>
8663
8664 * window.h (struct glyph_matrix): New members nrows_scale_factor
8665 and ncols_scale_factor.
8666
8667 * window.c (make_window): Initialize nrows_scale_factor and
8668 ncols_scale_factor members.
8669
8670 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
8671 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
8672 (required_matrix_height): Apply nrows_scale_factor.
8673 (required_matrix_width): Apply ncols_scale_factor.
8674
8675 * xdisp.c (display_line): Increment nrows_scale_factor and set
8676 fonts_changed_p if past last allocated row.
8677 (append_glyph, append_composite_glyph, produce_image_glyph)
8678 (append_stretch_glyph): Increment ncols_scale_factor and set
8679 fonts_changed_p if current area is full.
8680
8681 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8682
8683 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
8684
8685 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
8686
8687 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
8688 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
8689 (Fset_window_start, Fscroll_up, Fscroll_down)
8690 (Fother_window_for_scrolling, Fscroll_other_window)
8691 (Fsave_window_excursion, Fset_window_vscroll)
8692 (syms_of_window) <window-size-fixed>: Doc fixes.
8693
8694 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8695
8696 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
8697 ENCODE_SYSTEM for filenames.
8698
8699 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8700
8701 * mac.c (sys_select): Block input around call to
8702 ReceiveNextEvent to prevent breakage. Correctly handle
8703 blocking on event queue only by calling ReceiveNextEvent
8704 instead of select (since GUI events aren't on an fd).
8705 (sys_read): Remove function
8706 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
8707
8708 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8709
8710 * mac.c (sys_select): Redo sys_select to use alarm-based
8711 polling instead of 1 sec timeouts (like solaris).
8712
8713 * macterm.c (x_make_frame_visible): Comment in polling on
8714 frame creation.
8715
8716 * keyboard.c: Undef SIGIO on Carbon
8717
8718 * atimer.c (alarm_signal_handler): Call alarm handlers after
8719 scheduling.
8720
8721 * eval.c (Feval): Remove quit_char test
8722
8723 * process.c (wait_reading_process_input): Remove clearing
8724 stdin for select call on process input.
8725
8726 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
8727
8728 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
8729 capitalization error in docstring.
8730
8731 2004-07-17 Juanma Barranquero <lektu@terra.es>
8732
8733 * keyboard.c (not_single_kboard_state): Do nothing unless
8734 MULTI_KBOARD is defined.
8735
8736 2004-07-17 Richard M. Stallman <rms@gnu.org>
8737
8738 * window.c (coordinates_in_window): Inside the window but outside
8739 its box to the L or R, return ON_VERTICAL_BORDER.
8740 (window_list_1): Rotate the list to start with WINDOW.
8741
8742 * print.c (print_preprocess): Test for print_depth at limit
8743 before entering in being_printed.
8744
8745 * keyboard.c (not_single_kboard_state): New function.
8746 (stuff_buffered_input): Now no-op only if no SIGTSTP.
8747
8748 * frame.c (Fdelete_frame): If we're in single_bboard_state on
8749 this kboard, and we delete its last frame, go to any_kboard_state.
8750
8751 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
8752
8753 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8754
8755 * w32fns.c (Fx_file_dialog): Encode strings in system coding
8756 system before passing them to OS functions for display.
8757
8758 2004-07-15 David Kastrup <dak@gnu.org>
8759
8760 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
8761 Apparently fixes an abort condition.
8762
8763 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
8764
8765 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
8766 instead of a cons.
8767
8768 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8769
8770 * keyboard.c (echo_dash): Do nothing if there already is a dash
8771 at the end of the echo string.
8772
8773 2004-07-12 Kim F. Storm <storm@cua.dk>
8774
8775 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
8776 if GC_MARK_STACK.
8777
8778 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
8779
8780 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
8781
8782 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
8783 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
8784 (Freplace_buffer_in_windows, Fset_window_buffer)
8785 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
8786 (syms_of_window): Expand docstring of `display-buffer-function'.
8787
8788 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
8789
8790 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
8791 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
8792 that time values of the type (HIGH . LOW) are considered obsolete.
8793
8794 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
8795
8796 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
8797 docstring.
8798
8799 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
8800
8801 2004-07-06 John Paul Wallington <jpw@gnu.org>
8802
8803 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
8804
8805 * fns.c (Fclear_string): Signal an error if STRING is not a string.
8806
8807 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8808
8809 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
8810 instead of CGMainDisplayID (only in OSX 10.2 and later).
8811
8812 2004-07-04 John Paul Wallington <jpw@gnu.org>
8813
8814 * fileio.c (read_file_name_completion_ignore_case): New variable.
8815 (syms_of_fileio): Declare and initialise it.
8816 (Fread_file_name): Bind `completion-ignore-case' to respect it.
8817
8818 2004-07-03 Eli Zaretskii <eliz@gnu.org>
8819
8820 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
8821 for event.x and event.y.
8822
8823 2004-07-01 Kenichi Handa <handa@m17n.org>
8824
8825 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
8826 after getting a new string by pre-write-conversion.
8827
8828 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
8829
8830 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
8831 (x_calc_absolute_position): Remove unused var `child'.
8832
8833 * xfaces.c (x_supports_face_attributes_p)
8834 (Fdisplay_supports_face_attributes_p): YAILOM.
8835 (tty_supports_face_attributes_p): Remove unused var `i'.
8836
8837 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
8838 back_unibyte_ok.
8839
8840 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
8841
8842 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
8843
8844 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
8845
8846 2004-06-30 Andreas Schwab <schwab@suse.de>
8847
8848 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
8849 (Finit_image_library): Pass LIBRARIES through to
8850 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
8851 (lookup_image_type): Pass Qnil as second argument to
8852 Finit_image_library.
8853
8854 * lisp.h (Finit_image_library): Declare.
8855
8856 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8857
8858 * macterm.c (do_window_activate, do_window_deactivate): Remove.
8859 (XTread_socket): Send mouse button events to the toolbox
8860 dispatcher even when the mouse is grabbed. Don't process window
8861 activate events for non-Emacs windows. Replace function calls to
8862 do_window_activate and do_window_deactivate with their contents.
8863 Reset mouse grabbing status when a window is deactivated.
8864
8865 2004-06-29 Steven Tamm <steventamm@mac.com>
8866
8867 * macterm.c (mac_get_emulated_btn)
8868 (mac_event_to_emacs_modifiers): Fix emulated mouse button
8869 support to correctly mask out modifiers.
8870
8871 2004-06-29 David Kastrup <dak@gnu.org>
8872
8873 * search.c (Fset_match_data): Allow buffer before end of list
8874 which can happen if set-match-data is using a pre-consed list.
8875
8876 2004-06-28 Steven Tamm <steventamm@mac.com>
8877
8878 * macterm.c (XTread_socket): Correctly set the frame position
8879 after the window is moved.
8880
8881 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8882
8883 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
8884 gpix and gmask just before return to avoid memory leak.
8885 (xg_get_image_for_pixmap): Add workaround for monochrome displays
8886 so insensitive and activated icons look ok.
8887
8888 2004-06-27 Jason Rumney <jasonr@gnu.org>
8889
8890 * w32fns.c (file_dialog_callback): Disable edit control if set
8891 to directories only on CDN_INITDONE message.
8892 (Fx_file_dialog): Default to directories only when prompt starts
8893 with "Dired".
8894
8895 2004-06-25 Kim F. Storm <storm@cua.dk>
8896
8897 * alloc.c (allocate_misc): Update total_free_markers.
8898 (free_misc): New function.
8899 (safe_alloca_unwind, free_marker): Use it.
8900
8901 * lisp.h (free_misc): Add prototype.
8902
8903 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
8904
8905 2004-06-24 Richard M. Stallman <rms@gnu.org>
8906
8907 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
8908 (syms_of_emacs): Lisp variables deleted.
8909
8910 2004-06-23 David Kastrup <dak@gnu.org>
8911
8912 * search.c (Freplace_match): Adjust the match-data more thoroughly
8913 when replacing strings in the buffer.
8914 (Fmatch_data): When INTEGERS is non-nil and the last match was in
8915 a buffer, add the buffer as last element to the match data.
8916 (Fset_match_data): If an additional element of the match-data is a
8917 buffer, restore it to last_thing_searched.
8918 (save_search_regs): Save last_thing_searched as part of the match data.
8919 (restore_match_data): Restore it again.
8920
8921 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
8922
8923 * keymap.c (Ftext_char_description): Doc fix.
8924 * doc.c (Fsnarf_documentation): Doc fix.
8925
8926 2004-06-22 Kim F. Storm <storm@cua.dk>
8927
8928 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
8929
8930 * lisp.h (struct Lisp_Save_Value): New member dogc.
8931 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
8932 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
8933 (SAFE_FREE_LISP): New macro.
8934
8935 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
8936 (make_save_value): Init new dogc member.
8937 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
8938
8939 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
8940 SAFE_FREE_LISP macros.
8941
8942 2004-06-22 Kim F. Storm <storm@cua.dk>
8943
8944 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
8945 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
8946 in that memory area are unknown to GC. Add comments.
8947
8948 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
8949
8950 2004-06-21 Kim F. Storm <storm@cua.dk>
8951
8952 * lisp.h (MAX_ALLOCA): Define here.
8953 (safe_alloca_unwind): Add prototype.
8954 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
8955
8956 * alloc.c (safe_alloca_unwind): New function.
8957
8958 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
8959
8960 * charset.c (Fstring): Use SAFE_ALLOCA.
8961
8962 * coding.c (MAX_ALLOCA): Remove define.
8963
8964 * data.c (MAX_ALLOCA): Remove define.
8965 (Faset): Use SAFE_ALLOCA.
8966
8967 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
8968
8969 * fns.c (string_make_multibyte, string_to_multibyte)
8970 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
8971 (MAX_ALLOCA): Remove define.
8972 (Fbase64_encode_region, Fbase64_encode_string)
8973 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
8974 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
8975 memory leak if encoding fails.
8976
8977 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
8978
8979 2004-06-21 Eli Zaretskii <eliz@gnu.org>
8980
8981 * print.c (Fwith_output_to_temp_buffer): Doc fix.
8982
8983 2004-06-20 Richard M. Stallman <rms@gnu.org>
8984
8985 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
8986
8987 * search.c (match_limit): Cleaner err msg when no match data available.
8988
8989 * window.c (syms_of_window): Doc fix.
8990
8991 * keyboard.c (command_loop_1): Handle values `only' and `identity'
8992 for Vtransient_mark_mode.
8993
8994 * buffer.c (syms_of_buffer): Doc fix.
8995
8996 2004-06-21 David Kastrup <dak@gnu.org>
8997
8998 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
8999 and unbinding of `case-fold-search' according to
9000 `completion-ignore-case' around calls of string-match and
9001 predicates, respectively. Should give satisfactory performance
9002 in all relevant cases.
9003
9004 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9005
9006 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
9007 clip_x/y_origin.
9008
9009 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
9010
9011 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
9012
9013 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
9014 on Mac OSX.
9015
9016 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
9017
9018 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
9019
9020 2004-06-16 Kim F. Storm <storm@cua.dk>
9021
9022 * dispextern.h (Vimage_types): Remove extern.
9023
9024 2004-06-16 Miles Bader <miles@gnu.org>
9025
9026 * image.c (lookup_image_type): Initialize image type if necessary.
9027
9028 2004-06-15 Kim F. Storm <storm@cua.dk>
9029
9030 * xdisp.c (try_cursor_movement): Exclude header line from scroll
9031 margin at top of window.
9032 (try_window_reusing_current_matrix): Calculate proper cursor position
9033 after scrolling up with non-zero scroll margin, as the old cursor
9034 position corresponds to value of PT before executing this command.
9035 (try_window_id): Consider scroll margin at bottom of window too;
9036 otherwise we fail to scroll when hl-line-mode is enabled.
9037
9038 * syntax.c (skip_chars): Only recognize [:class:] when it has the
9039 proper format and class is a lower-case word.
9040
9041 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9042
9043 * gtkutil.c (xg_get_image_for_pixmap): New function.
9044 (xg_get_gdk_pixmap_and_mask): Remove.
9045 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
9046 xg_get_gdk_pixmap_and_mask.
9047
9048 * xterm.h (struct x_display_info): Typo in comment fixed.
9049
9050 2004-06-14 Juanma Barranquero <lektu@terra.es>
9051
9052 * dispextern.h (Vimage_types): Make it conditional on
9053 HAVE_WINDOW_SYSTEM.
9054
9055 * image.c (Vimage_types): Move from xdisp.c.
9056 (Vimage_type_cache): New variable.
9057 (define_image_type): New argument indicating whether an image
9058 library was loaded; cache loaded status and return t on success,
9059 nil otherwise.
9060 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
9061 (w32_delayed_load): New function to load an image library from a
9062 list of possible filenames.
9063 (init_xpm_functions, init_png_functions, init_jpeg_functions)
9064 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
9065 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
9066 (Finit_image_library): New function, extracted from `init_image'.
9067 Try to initialize an image library on demand and cache whether we
9068 were successful or not.
9069 (syms_of_image): Initialize `Vimage_types' and
9070 `Vimage_type_cache'. Add recognized image types to Vimage_types.
9071 Export `init-image-library'.
9072 (init_image): Remove initialization of all image types, except xbm
9073 and pbm.
9074
9075 * xdisp.c (Vimage_types): Delete (moved to image.c).
9076
9077 2004-06-14 Andreas Schwab <schwab@suse.de>
9078
9079 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9080 Avoid calling specbind when completion-regexp-list is empty.
9081
9082 2004-06-13 Richard M. Stallman <rms@gnu.org>
9083
9084 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9085 (re_wctype, re_iswctype, re_wctype_to_bit):
9086 Non-function definitions moved here from regex.c.
9087
9088 * regex.c (re_wctype, re_iswctype): Function defs longer static.
9089 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9090 (re_wctype, re_iswctype, re_wctype_to_bit):
9091 Non-function definitions moved to regex.h.
9092
9093 * window.c (Fselect_window): Doc fix.
9094
9095 * syntax.c: Include regex.h.
9096 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
9097 If requested, make a list of classes, then check the scanned
9098 chars for membership in them.
9099 (in_classes): New function.
9100 Doc fix.
9101
9102 * keyboard.c (cmd_error): Don't call any_kboard_state
9103 if inside a recursive edit level.
9104
9105 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9106
9107 * keyboard.c (command_loop): Call any_kboard_state before
9108 command_loop_2 when at top level.
9109
9110 2004-06-13 Andreas Schwab <schwab@suse.de>
9111
9112 * print.c (print_object): Always use %ld for printing EMACS_INT.
9113
9114 * keyboard.c (cancel_hourglass_unwind): Return a value.
9115 (modify_event_symbol): Always use %ld for printing EMACS_INT.
9116 (Fexecute_extended_command): Likewise.
9117
9118 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
9119 avoid clashes.
9120 (SYNTAX): Likewise.
9121 (SYNTAX_WITH_FLAGS): Likewise.
9122 (SYNTAX_MATCH): Likewise.
9123
9124 * syntax.c (char_quoted): Avoid warning about undefined operation.
9125 (find_defun_start): Likewise.
9126 (scan_lists): Likewise.
9127 (INC_FROM): Likewise.
9128 (scan_sexps_forward): Likewise.
9129
9130 * image.c: Include <ctype.h>.
9131
9132 * xfaces.c (face_attr_equal_p): Declare parameters.
9133
9134 2004-06-13 Kenichi Handa <handa@m17n.org>
9135
9136 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
9137
9138 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
9139
9140 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
9141
9142 2004-06-12 Kenichi Handa <handa@m17n.org>
9143
9144 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
9145 ccl_prog_stack_struct and update it.
9146 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
9147 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
9148 ccl->eof_ic on EOF.
9149 (ccl_debug_hook): New function.
9150 (struct ccl_prog_stack): New member eof_ic.
9151 (ccl_driver): Handle EOF in subrountine call correctly.
9152
9153 2004-06-11 Kenichi Handa <handa@m17n.org>
9154
9155 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
9156
9157 2004-06-11 Kim F. Storm <storm@cua.dk>
9158
9159 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
9160
9161 2004-06-11 Juanma Barranquero <lektu@terra.es>
9162
9163 * keyboard.c (Fposn_at_point): Doc fix.
9164
9165 2004-06-11 David Kastrup <dak@gnu.org>
9166
9167 * search.c (match_limit): Don't flag an error if match-data
9168 exceeding the allocated search_regs.num_regs gets requested, just
9169 return Qnil.
9170
9171 2004-06-08 Miles Bader <miles@gnu.org>
9172
9173 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
9174
9175 2004-06-07 Juanma Barranquero <lektu@terra.es>
9176
9177 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
9178 (Fcurrent_time_string, Fcurrent_time_zone)
9179 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
9180
9181 2004-06-07 Miles Bader <miles@gnu.org>
9182
9183 * xfaces.c (struct named_merge_point): New type.
9184 (push_named_merge_point): New function.
9185 (merge_named_face): New function.
9186 (merge_face_ref, face_at_buffer_position, face_at_string_position):
9187 Use `merge_named_face'.
9188 (merge_face_inheritance): Function removed.
9189 (merge_face_ref): Rename from `merge_face_vector_with_property'.
9190 Add new `err_msgs' and `named_merge_points' args. Return error
9191 status. Only print error messages if ERR_MSGS is true. Don't try to
9192 do :inherit attribute validation.
9193 (merge_face_heights): Handle `unspecified' in both directions.
9194 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
9195 Call `merge_face_ref' instead of `merge_face_inheritance'.
9196 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
9197 (compute_char_face, face_at_buffer_position)
9198 (face_at_string_position): Call `merge_face_ref' instead of
9199 `merge_face_vector_with_property'.
9200
9201 2004-06-07 Kenichi Handa <handa@m17n.org>
9202
9203 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
9204 the necessary places.
9205
9206 2004-06-07 Kim F. Storm <storm@cua.dk>
9207
9208 * process.c (Fdelete_process): Undo 2004-05-28 change.
9209 Instead, call status_notify also for network process.
9210 (status_message): Use process instead of status as arg.
9211 Give messages "deleted" or "connection broken by remote peer" for
9212 an exited network process.
9213 (status_notify): Change call to status_message.
9214 (read_process_output): Increase readmax to 4096. Do not increase
9215 buffer size for datagram channels (default is now large enough).
9216
9217 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9218
9219 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
9220 problem due to newly defined variable.
9221
9222 2004-06-06 Miles Bader <miles@gnu.org>
9223
9224 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
9225 immediately if non-interactive or not initialized.
9226
9227 2004-06-05 Richard M. Stallman <rms@gnu.org>
9228
9229 * minibuf.c (Fcompleting_read): Doc fix.
9230
9231 2004-06-05 Andreas Schwab <schwab@suse.de>
9232
9233 * macfns.c (x_create_tip_frame): Fix declaration after statement.
9234
9235 2004-06-05 Juanma Barranquero <lektu@terra.es>
9236
9237 * keymap.c (Fdescribe_vector): Fix docstring.
9238 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
9239
9240 2004-06-05 Miles Bader <miles@gnu.org>
9241
9242 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
9243 attributes have different values than the default face.
9244
9245 2004-06-04 Eli Zaretskii <eliz@gnu.org>
9246
9247 * xfaces.c (x_supports_face_attributes_p): Make this function
9248 conditional on HAVE_WINDOW_SYSTEM.
9249 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
9250 Don't call x_supports_face_attributes_p if it was not compiled in.
9251
9252 2004-06-04 Miles Bader <miles@gnu.org>
9253
9254 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
9255 from Ftty_supports_face_attributes_p.
9256 (x_supports_face_attributes_p): New function.
9257 (Ftty_supports_face_attributes_p): Function deleted.
9258 (Fdisplay_supports_face_attributes_p): New function.
9259 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
9260 (face_attr_equal_p): New function.
9261 (lface_equal_p): Use it.
9262
9263 2004-06-03 Juanma Barranquero <lektu@terra.es>
9264
9265 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
9266 (Vw32_color_map): Fix typo in docstring.
9267 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
9268 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
9269 Make argument names match their use in docstring.
9270
9271 2004-06-02 Juanma Barranquero <lektu@terra.es>
9272
9273 Work around bugs/problems with MinGW builds of graphics libraries
9274 called from MSVC builds of Emacs.
9275
9276 * image.c (lookup_image): Make pointer to img static.
9277 (png_read_from_memory): Disable "global" optimization.
9278
9279 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
9280
9281 * eval.c (Fcondition_case): Fix usage. Simplify.
9282
9283 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
9284
9285 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9286
9287 * macfns.c: Don't include ccl.h.
9288 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
9289 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
9290 TextUtils.h.
9291 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
9292 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
9293 display height/width.
9294 (compute_tip_xy, Vx_max_tooltip_size): Declare.
9295 (unwind_create_tip_frame, compute_tip_xy): New functions.
9296 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
9297 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
9298 and last_show_tip_args.
9299
9300 * macgui.h [!MAC_OSX]: Include Gestalt.h.
9301 (Cursor, No_Cursor): New defines.
9302 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
9303 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
9304
9305 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
9306
9307 * macterm.c: Don't include Gestalt.h.
9308 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
9309 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
9310 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
9311 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
9312 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
9313 (construct_mouse_click, XTmouse_position)
9314 (x_scroll_bar_report_motion, x_calc_absolute_position)
9315 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
9316 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
9317 (note_mouse_movement): Clear the mouse face and reset the pointer
9318 shape when the pointer goes outside the frame without grabbing.
9319 (mac_front_window): New function.
9320 (mac_window_to_frame): New macro.
9321 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
9322 (do_window_activate, do_window_deactivate, do_app_resume)
9323 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
9324 (do_zoom_window, mac_do_receive_drag, XTread_socket)
9325 (mac_check_for_quit_char): Use mac_front_window and/or
9326 mac_window_to_frame.
9327 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
9328 scroll-bar click event.
9329 (mac_define_frame_cursor): Change the pointer shape.
9330 (x_free_frame_resources): Reset tip_window to NULL when it is
9331 disposed of.
9332 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
9333 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
9334 (do_window_update): Don't do anything if the updated window is the
9335 tooltip window.
9336 (do_mouse_moved): Handle mouse movement events here (previously in
9337 XTread_socket). Clear the mouse face if
9338 dpyinfo->mouse_face_hidden is set.
9339 (do_os_event, do_events): Remove (now in XTread_socket).
9340 (XTread_socket): Immediately return if interrupt_input_blocked.
9341 Loop until all the events in the queue are processed.
9342 Rearrange codes for mouse grabbing. Add tooltip support. Include the
9343 contents of do_os_event and do_events. Remove mouse movement
9344 handling (now in do_mouse_moved). Add the case where
9345 Vmouse_highlight has an integer value.
9346 (NewMacWindow): Remove.
9347 (make_mac_frame): Do what NewMacWindow previously did. Don't do
9348 excess initializations.
9349 (make_mac_terminal_frame): Previous initializations in
9350 make_mac_frame are moved here.
9351 (mac_initialize_display_info):
9352 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
9353
9354 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
9355 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
9356
9357 2004-05-29 Richard M. Stallman <rms@gnu.org>
9358
9359 * lisp.h (truncate_undo_list): Update decl.
9360
9361 * alloc.c (undo_outer_limit): New variable.
9362 (syms_of_alloc): Defvar it.
9363 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
9364
9365 * undo.c (truncate_undo_list): New arg LIMITSIZE.
9366
9367 * alloc.c (lisp_align_malloc): Check for base == 0
9368 regardless of HAVE_POSIX_MEMALIGN.
9369 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
9370
9371 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9372
9373 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
9374 (marker_blocks_pending_free): Remove.
9375 (Fgarbage_collect): Sweep after cleaning up undo-lists.
9376 Mark the undo lists after claning them up.
9377 Don't free block in marker_blocks_pending_free.
9378 (mark_buffer): Don't mark undo_list.
9379 (gc_sweep): Sweep hash-tables and strings first.
9380 Do free marker blocks that are empty.
9381
9382 2004-05-28 Jim Blandy <jimb@redhat.com>
9383
9384 * regex.c (print_partial_compiled_pattern): Add missing 'break'
9385 after 'case wordend'. For symbeg and symend, print to stderr,
9386 like the other cases.
9387
9388 2004-05-28 Noah Friedman <friedman@splode.com>
9389
9390 * process.c (Fdelete_process): Do not call remove_process.
9391
9392 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9393
9394 * alloc.c (struct backtrace): Remove.
9395 (Fgarbage_collect): Use the new mark_backtrace.
9396
9397 * eval.c (mark_backtrace): New function.
9398
9399 * minibuf.c (run_exit_minibuf_hook): New function.
9400 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
9401 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
9402
9403 2004-05-27 Kim F. Storm <storm@cua.dk>
9404
9405 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
9406 over display properties, e.g. images, that replace buffer text.
9407
9408 2004-05-25 Kim F. Storm <storm@cua.dk>
9409
9410 * alloc.c (marker_blocks_pending_free): New var.
9411 (gc_sweep): Store free marker blocks on that list.
9412 (Fgarbage_collect): Free them after undo-list cleanup.
9413
9414 * process.c (wait_reading_process_input): Check connect_wait_mask
9415 before actually accepting connection in case it has already been
9416 accepted due to recursion.
9417
9418 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9419
9420 * coding.c (Fset_safe_terminal_coding_system_internal):
9421 Set suppress_error in safe_terminal_coding, not terminal_coding.
9422
9423 2004-05-22 Richard M. Stallman <rms@gnu.org>
9424
9425 * alloc.c (Fmake_string): Doc fix.
9426
9427 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
9428 and the alist pairs too.
9429
9430 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
9431
9432 * emacs.c (main): Update copyright year.
9433
9434 * fileio.c (Fread_file_name): Expand DIR if not absolute.
9435
9436 * insdel.c (del_range_2, replace_range): Don't write an anchor
9437 if the gap is empty.
9438
9439 * xdisp.c (try_scrolling): If scroll-up-aggressively or
9440 scroll-down-aggressively is small but positive, put point
9441 near the screen edge.
9442
9443 2004-05-22 Juanma Barranquero <lektu@terra.es>
9444
9445 * keymap.c (Fdefine_key): Doc fix.
9446
9447 2004-05-22 Kim F. Storm <storm@cua.dk>
9448
9449 * alloc.c (struct backtrace): Add debug_on_exit member.
9450 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
9451 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
9452 the removed cons cells.
9453 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
9454 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
9455 any cons cells pointing to unallocated stings.
9456 Do not lisp_free any marker blocks, as there may still be pointers
9457 to them from buffer undo lists at this stage of GC.
9458
9459 * keyboard.c (struct backtrace): Add debug_on_exit member.
9460 (Fcommand_execute): Clear it.
9461
9462 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
9463
9464 * intervals.c (lookup_char_property): Do not prematurely return nil.
9465
9466 2004-05-19 Jim Blandy <jimb@redhat.com>
9467
9468 Add support for new '\_<' and '\_>' regexp operators, matching the
9469 beginning and end of symbols.
9470
9471 * regex.c (enum syntaxcode): Add Ssymbol.
9472 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
9473 (re_opcode_t): New opcodes `symbeg' and `symend'.
9474 (print_partial_compiled_pattern): Print the new opcodes properly.
9475 (regex_compile): Parse the new operators.
9476 (analyse_first): Skip sym(beg|end) (they match only the empty string).
9477 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
9478 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
9479 (re_match_2_internal): Match symbeg and symend.
9480
9481 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
9482
9483 2004-05-19 Kim F. Storm <storm@cua.dk>
9484
9485 * .gdbinit (xsymbol): Fix last change.
9486
9487 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
9488
9489 * .gdbinit (xprintstr): New fun.
9490 (xstring, xprintsym): Use it.
9491
9492 * w32proc.c (create_child): Use INTMASK.
9493
9494 * alloc.c (Fgarbage_collect): Do all the marking before flushing
9495 unmarked elements of the undo list.
9496
9497 2004-05-18 David Ponce <david@dponce.com>
9498
9499 * print.c (print): Reset print_depth before to call print_object.
9500
9501 2004-05-18 Jason Rumney <jasonr@gnu.org>
9502
9503 * w32console.c: Prefix RIF functions with w32con_ to avoid
9504 namespace clash with functions in term.c and w32term.c.
9505
9506 * w32menu.c (add_menu_item, w32_menu_display_help)
9507 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
9508
9509 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
9510
9511 2004-05-18 Eli Zaretskii <eliz@gnu.org>
9512
9513 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
9514
9515 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
9516 with make_number.
9517 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
9518 with XINT.
9519
9520 2004-05-18 Kim F. Storm <storm@cua.dk>
9521
9522 * blockinput.h (INPUT_BLOCKED_P): New macros.
9523
9524 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
9525 (Ftop_level): Unblock input if blocked.
9526
9527 * buffer.h (GET_OVERLAYS_AT): New macro.
9528 * msdos.c (IT_note_mouse_highlight): Use it.
9529 * textprop.c (get_char_property_and_overlay): Use it.
9530 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
9531 * xfaces.c (face_at_buffer_position): Use it.
9532
9533 * print.c (print_object): Increase buf size.
9534
9535 2004-05-17 Jason Rumney <jasonr@gnu.org>
9536
9537 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
9538 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
9539 Lisp_Object using i member.
9540 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
9541 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
9542 consistently.
9543
9544 * w32proc.c (create_child): Use make_number instead of masking pid.
9545
9546 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
9547 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
9548 Use EQ to compare Lisp_Objects.
9549 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
9550
9551 * w32term.c (w32_num_mouse_buttons): Rename from
9552 Vw32_num_mouse_buttons and make it an int.
9553
9554 * w32.c (init_environment): Use it.
9555
9556 * w32fns.c (w32_wnd_proc): Likewise.
9557
9558 * w32proc.c (w32_pipe_read_delay): Rename from
9559 Vw32_pipe_read_delay and make it an int.
9560
9561 * w32.c (_sys_read_ahead): Use it.
9562
9563 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
9564
9565 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
9566
9567 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
9568 (key_event): Don't mix Lisp_Object and int.
9569
9570 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
9571
9572 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
9573 modifiers in language change event.
9574
9575 2004-05-17 Kim F. Storm <storm@cua.dk>
9576
9577 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
9578 Such objects may be freed markers which still exist on an undo list.
9579
9580 2004-05-16 Juanma Barranquero <lektu@terra.es>
9581
9582 * data.c (Fset_default): Make argument names match their use in
9583 docstring.
9584
9585 2004-05-15 Andreas Schwab <schwab@suse.de>
9586
9587 * emacs.c (gdb_array_mark_flag): Define.
9588 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
9589
9590 2004-05-15 Eli Zaretskii <eliz@gnu.org>
9591
9592 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
9593 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
9594 defined for the MS-DOS build.
9595
9596 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
9597
9598 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
9599
9600 2004-05-14 Kenichi Handa <handa@m17n.org>
9601
9602 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
9603
9604 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9605
9606 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
9607 section to frame.c section.
9608 (Fxw_display_color_p, Fx_file_dialog): Declare if
9609 HAVE_WINDOW_SYSTEM defined.
9610
9611 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
9612
9613 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
9614
9615 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
9616 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
9617 (XTread_socket): Fix int/Lisp_Object mixup.
9618 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
9619
9620 * macterm.h (struct frame, struct face, struct image)
9621 (display_x_get_resource, Fx_display_color_p)
9622 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
9623 Add prototypes.
9624
9625 2004-05-14 Kim F. Storm <storm@cua.dk>
9626
9627 * process.c (wait_reading_process_input): Make reentrant.
9628 Make Available and Connecting non-static. Save and restore value
9629 of waiting_for_user_input_p.
9630
9631 2004-05-13 Kim F. Storm <storm@cua.dk>
9632
9633 * keyboard.c (mark_kboards): Don't mark x and y members
9634 that are overloaded in selection request events.
9635
9636 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
9637
9638 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
9639
9640 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
9641
9642 * window.c (Fdisplay_buffer, Fsplit_window)
9643 (split-height-threshold): Doc fix.
9644
9645 2004-05-13 Juanma Barranquero <lektu@terra.es>
9646
9647 * xfaces.c (Ftty_supports_face_attributes_p)
9648 (Finternal_copy_lisp_face): Fix typo in docstring.
9649 (Finternal_get_lisp_face_attribute): Fix docstring.
9650
9651 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9652
9653 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
9654
9655 2004-05-11 Steven Tamm <steventamm@mac.com>
9656
9657 * macfns.c (Fx_create_frame): Default to using tool-bar by
9658 setting tool-bar-lines to 1 in default-frame-alist.
9659
9660 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9661
9662 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
9663 (xpm_get_color_table_v, xpm_make_color_table_h)
9664 (xpm_put_color_table_h, xpm_get_color_table_h)
9665 (xpm_str_to_color_key, xpm_load_image, xpm_load)
9666 (syms_of_image): Support XPM on Carbon Emacs. Does not
9667 depend on libXpm, but only supports XPM version 3 without extensions.
9668
9669 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9670
9671 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
9672 instead of FRAME_X_P
9673
9674 2004-05-11 Kim F. Storm <storm@cua.dk>
9675
9676 * process.c (read_process_output): Grow decoding_buf when needed;
9677 this could cause a crash in allocate_string and compact_small_strings.
9678
9679 2004-04-29 Jim Blandy <jimb@redhat.com>
9680
9681 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
9682 against proper opcode.
9683
9684 2004-05-10 Juanma Barranquero <lektu@terra.es>
9685
9686 * process.c (Fstart_process): Fix docstring.
9687
9688 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
9689 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
9690 (Fsplit_char, Fchar_charset): Make argument names match their use
9691 in docstring.
9692
9693 2004-05-10 Richard M. Stallman <rms@gnu.org>
9694
9695 * print.c (print_preprocess): Use being_printed, loop_count and
9696 halftail to detect overdeep nesting and cyclic cdr chains.
9697
9698 2004-05-10 Andreas Schwab <schwab@suse.de>
9699
9700 * lisp.h (Fmake_symbolic_link): Declare.
9701
9702 * fileio.c (Frename_file): Remove extra argument in call to
9703 Fmake_symbolic_link.
9704
9705 2004-05-10 Kim F. Storm <storm@cua.dk>
9706
9707 * xdisp.c (calc_line_height_property): Use string position when
9708 object is a string.
9709
9710 2004-05-10 Kenichi Handa <handa@m17n.org>
9711
9712 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
9713 inhibit-modification-hooks to t temporarily before calling
9714 Ferase_buffer.
9715
9716 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
9717 inhibit-modification-hooks to t temporarily before calling
9718 Ferase_buffer.
9719
9720 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
9721 inhibit-modification-hooks to t temporarily before calling
9722 Ferase_buffer.
9723
9724 * fns.c (count_combining): Delete it.
9725 (concat): Don't check combining bytes.
9726
9727 2004-05-09 Jason Rumney <jasonr@gnu.org>
9728
9729 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
9730 (globals_of_w32fns): Set it.
9731
9732 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
9733
9734 * data.c (Fquo): Simplify.
9735
9736 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
9737
9738 * data.c (Fquo): If any argument is float, do the computation in
9739 floating point.
9740
9741 2004-05-08 Juanma Barranquero <lektu@terra.es>
9742
9743 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
9744 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
9745 Fix spelling of Emacs on docstring.
9746 (Fset_process_coding_system, Fprocess_coding_system)
9747 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
9748 Make argument names match their use in docstring.
9749 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
9750 Fix docstring.
9751
9752 * editfns.c (Finsert_buffer_substring): Make argument names match their
9753 use in docstring.
9754
9755 * syntax.c (Fmodify_syntax_entry): Fix docstring.
9756
9757 2004-05-07 Steven Tamm <steventamm@mac.com>
9758
9759 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
9760 around call to ReceiveEvent to avoid certain crashes.
9761
9762 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9763
9764 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
9765 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
9766 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
9767 Save/restore the current graphics port and device handle when
9768 drawing into an offscreen graphics world.
9769
9770 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
9771 (gif_load): Likewise.
9772
9773 2004-05-07 Juanma Barranquero <lektu@terra.es>
9774
9775 * window.c (Fset_window_buffer): Fix docstring.
9776
9777 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
9778
9779 * emacs.c (main) [VMS]: Fix var ref.
9780
9781 2004-05-06 Romain Francoise <romain@orebokech.com>
9782
9783 * data.c (Fsetq_default): Fix docstring.
9784
9785 2004-05-06 Jason Rumney <jasonr@gnu.org>
9786
9787 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
9788 to avoid name clash.
9789
9790 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9791
9792 * fileio.c (barf_or_query_if_file_exists): Use lstat.
9793 (Frename_file): Handle renaming of symlinks across file systems.
9794 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
9795
9796 2004-05-04 Kim F. Storm <storm@cua.dk>
9797
9798 * xdisp.c (Qtotal): New var.
9799 (syms_of_xdisp): Intern and staticpro it.
9800 (calc_line_height_property): New arg total. Set it if
9801 line-spacing property has format (total . VALUE).
9802 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
9803 Handle total line-spacing property.
9804
9805 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9806
9807 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
9808 "under" scroll bar when size/position changes.
9809
9810 2004-05-03 Jason Rumney <jasonr@gnu.org>
9811
9812 * makefile.nt: Remove.
9813
9814 2004-05-02 Eli Zaretskii <eliz@gnu.org>
9815
9816 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
9817 Avoid compiler warnings.
9818
9819 * Makefile.in (region-cache.o): Depend on config.h.
9820
9821 2004-05-02 Romain Francoise <romain@orebokech.com>
9822
9823 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
9824 with continuation lines, too.
9825
9826 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
9827
9828 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
9829
9830 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
9831
9832 * xdisp.c (calc_line_height_property): YAILOM (yet another
9833 int/Lisp_Object mixup).
9834
9835 2004-05-01 Eli Zaretskii <eliz@gnu.org>
9836
9837 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
9838 undo bad effect of pack(4) in some versions of system headers.
9839
9840 2004-05-01 Jason Rumney <jasonr@gnu.org>
9841
9842 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
9843
9844 2004-04-30 Kim F. Storm <storm@cua.dk>
9845
9846 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
9847 (syms_of_buffer) <cursor-type>: Doc fix.
9848
9849 * dispextern.h (struct it): Remove member use_default_face.
9850 Add members override_ascent, override_descent, override_boff.
9851
9852 * xdisp.c (init_iterator): Handle line-spacing float value.
9853 Initialize override_ascent member.
9854 (append_space_for_newline): Reset override_ascent.
9855 Remove use_default_face.
9856 (calc_line_height_property): New function to calculate value of
9857 line-height and line-spacing properties. Look at overlays, too.
9858 Set override_ascent, override_descent, override_boff members when
9859 using another face than the current face. Float values are now
9860 relative to the frame default font, by default; accept a cons
9861 of ratio and face name to specify value relative to a specific face.
9862 (x_produce_glyphs): Use calc_line_height_property.
9863 Use override_ascent etc. when set to handle different face heights.
9864 A negative line-spacing property value is interpreted as a total
9865 line height, rather than inter-line spacing.
9866 (note_mouse_highlight): Allocate room for 40 overlays initially.
9867
9868 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
9869
9870 * data.c (Fsubr_name): New fun.
9871 (syms_of_data): Defsubr it.
9872
9873 2004-04-29 Kim F. Storm <storm@cua.dk>
9874
9875 * xdisp.c (null_glyph_slice): New var.
9876 (append_glyph, append_composite_glyph, append_stretch_glyph):
9877 Use it to initialize glyph slice.
9878
9879 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
9880
9881 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
9882 (on_hot_spot_p): Make sure we always return a value.
9883 (Flookup_image_map): Remove unused var ix and iy.
9884 (note_mode_line_or_margin_highlight): Remove unused var `image'.
9885
9886 2004-04-27 Eli Zaretskii <eliz@gnu.org>
9887
9888 * msdos.c (init_environment): If one of the TMP... environment
9889 variables is set to a drive letter without a trailing slash,
9890 append a slash.
9891
9892 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
9893
9894 * editfns.c (lisp_time_argument): Provide externally.
9895
9896 * fileio.c (Fset_file_times): New function.
9897 (syms_of_fileio): Intern and staticpro it.
9898
9899 2004-04-27 Kim F. Storm <storm@cua.dk>
9900
9901 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
9902 header line strings.
9903
9904 * dispextern.h (struct it): New member use_default_face.
9905
9906 * xdisp.c (Qline_height): New variable.
9907 (syms_of_xdisp): Intern and staticpro it.
9908 (append_space_for_newline): Partially undo 2004-04-25 change;
9909 add default_face_p arg, and restore callers.
9910 Clear it->use_default_face after use.
9911 (x_produce_glyphs): Set default font for ascii char if
9912 it->use_default_font is set. Change line-spacing property to set
9913 just extra line spacing. Handle new line-height property.
9914
9915 2004-04-26 Andreas Schwab <schwab@suse.de>
9916
9917 * print.c (print_object): Print non-ascii characters in bool
9918 vector representation as octal escapes.
9919
9920 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
9921 * print.c (print_object): Use it instead of BITS_PER_CHAR for
9922 bool vectors.
9923 * lread.c (read1): Likewise.
9924 * alloc.c (Fmake_bool_vector): Likewise.
9925 * data.c (Faref, Faset): Likewise.
9926 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
9927 (mapcar1): Likewise.
9928
9929 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9930
9931 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
9932
9933 2004-04-26 Miles Bader <miles@gnu.org>
9934
9935 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
9936
9937 2004-04-26 Juanma Barranquero <lektu@terra.es>
9938
9939 * buffer.c (Fpop_to_buffer): Fix docstring.
9940
9941 2004-04-26 Steven Tamm <steventamm@mac.com>
9942
9943 * lread.c (init_lread): Don't display missing lisp directory
9944 warnings with Carbon Emacs because self-contained bundled Emacs
9945 may be built without correct installation path.
9946
9947 2004-04-25 Kim F. Storm <storm@cua.dk>
9948
9949 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
9950
9951 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
9952
9953 * xdisp.c (append_space_for_newline): Rename from append_space.
9954 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
9955 (x_produce_glyphs): Handle line-spacing property on newline char.
9956 If value is t, adjust ascent and descent to fit current row height.
9957 If value is an integer or float, set extra_line_spacing to integer
9958 value, or to float value x current line height.
9959
9960 2004-04-23 Kenichi Handa <handa@m17n.org>
9961
9962 * fontset.c (Finternal_char_font): If POSITION is nil, return
9963 font for displaying CH with the default face.
9964
9965 2004-04-23 Juanma Barranquero <lektu@terra.es>
9966
9967 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
9968
9969 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9970
9971 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
9972 Don't make assumptions about the relative place of i and val.
9973 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
9974
9975 2004-04-21 Kim F. Storm <storm@cua.dk>
9976
9977 * dispextern.h (struct glyph_slice): New struct.
9978 (struct glyph): New member slice.
9979 (GLYPH_SLICE_EQUAL_P): New macro.
9980 (GLYPH_EQUAL_P): Use it.
9981 (struct glyph_string): New member slice.
9982 (struct it_slice): New struct.
9983 (struct it): New member slice, add member to stack too.
9984 New member constrain_row_ascent_descent_p.
9985 (image_ascent): Add prototype.
9986
9987 * dispnew.c (buffer_posn_from_coords): Return full image width
9988 and height even for image slices (posn is relative to full image).
9989 (marginal_area_string): Adjust x0,y0 for image slice.
9990
9991 * image.c (image_ascent): Add slice arg; calculate ascent for
9992 image slice (or full image).
9993
9994 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
9995 (syms_of_keyboard): Defsubr them.
9996
9997 * lisp.h (pos_visible_p): Fix prototype.
9998
9999 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10000 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10001 (x_draw_image_foreground, x_draw_image_relief)
10002 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10003 Draw sliced images.
10004
10005 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
10006 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10007 (x_draw_image_foreground, x_draw_image_relief)
10008 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
10009 Draw sliced images.
10010
10011 * w32term.h (image_ascent): Remove prototype.
10012
10013 * window.c (Fpos_visible_in_window_p): Return pixel position if
10014 PARTIALLY arg is non-nil. Simplify. Doc fix.
10015 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
10016 to return/set vscroll in pixels.
10017
10018 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
10019
10020 * xdisp.c (Qslice): New variable.
10021 (syms_of_xdisp): Intern and staticpro it.
10022 (pos_visible_p): Return pixel position in new x and y args.
10023 (init_iterator): Reset it->slice info.
10024 (handle_display_prop): Parse (slice ...) property.
10025 (push_it, pop_it): Save/restore slice info.
10026 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
10027 force repositioning of tall row if window is vscrolled, as that
10028 would reset vscroll.
10029 (append_space): Set it->constrain_row_ascent_descent_p to avoid
10030 increasing row height if row is non-empty.
10031 (fill_image_glyph_string): Copy slice info.
10032 (take_vertical_position_into_account): Simplify.
10033 (produce_image_glyph): Handle iterator slice info, setup glyph
10034 slice info. Do not force minimum line height.
10035 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
10036 do not increase height (ascent/descent) of non-empty row when
10037 adding normal character glyph; instead reduce glyph ascent/descent
10038 appropriately; if row is higher than current glyph, adjust glyph
10039 descent/ascent to reposition glyph within the existing row.
10040 Likewise, when char is newline, only set ascent/descent if row is
10041 currently empty.
10042 (note_mouse_highlight): Handle hotspots with sliced image.
10043
10044 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10045 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10046 (x_draw_image_foreground, x_draw_image_relief)
10047 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10048 Draw sliced images.
10049
10050 * xterm.h (image_ascent): Remove prototype.
10051
10052 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
10053
10054 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
10055
10056 2004-04-20 John Paul Wallington <jpw@gnu.org>
10057
10058 * fns.c (Fassoc, Feql): Fix indentation.
10059
10060 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
10061
10062 2004-04-19 John Paul Wallington <jpw@gnu.org>
10063
10064 * fns.c (Feql): New function.
10065 (syms_of_fns): Defsubr it.
10066
10067 2004-04-18 Jason Rumney <jasonr@gnu.org>
10068
10069 * w32select.c (Fw32_set_clipboard_data): Get sequence number
10070 after closing the clipboard.
10071
10072 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
10073
10074 * buffer.c (Fbuffer_base_buffer): Doc fix.
10075
10076 2004-04-17 Kim F. Storm <storm@cua.dk>
10077
10078 * keymap.c (Fkey_description): Add optional PREFIX arg.
10079 Combine prefix with KEYS to make up the full key sequence to describe.
10080 Correlate meta_prefix_char and following (simple) key to describe
10081 as meta modifier. All callers changed.
10082 (describe_map): Rename arg `keys' to `prefix'. Remove local
10083 `elt_prefix' var. Use Fkey_description with prefix instead of
10084 elt_prefix combined with Fsingle_key_description.
10085 (describe_vector): Declare static. Replace arg `elt_prefix' with
10086 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
10087 if !KEYMAP_P. Use Fkey_description with prefix instead of
10088 Fsingle_key_description.
10089
10090 * keymap.h (Fkey_description): Fix prototype.
10091 (describe_vector): Remove prototype.
10092
10093 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
10094
10095 * image.c (PNG_BG_COLOR_SHIFT): Remove.
10096 (png_load): Fix calculation of transparent background color on X
10097 and W32 platforms.
10098
10099 2004-04-16 Juanma Barranquero <lektu@terra.es>
10100
10101 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
10102 not too large before computing how much to scroll.
10103
10104 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
10105
10106 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
10107
10108 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
10109
10110 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
10111 Add hyperlink to Elisp manual to the docstring.
10112
10113 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
10114
10115 * callint.c (fix_command): Use XDCR.
10116
10117 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
10118
10119 * window.c (Fget_lru_window): Doc fix.
10120
10121 2004-04-14 Kim F. Storm <storm@cua.dk>
10122
10123 * editfns.c (Fformat): Fix allocation size of precision array.
10124
10125 * dispnew.c (update_window): Only set changed_p if
10126 scrolling_window actually did scroll.
10127 (scrolling_window): Only return 1 if we actually did scroll.
10128
10129 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
10130 height to glyph height when cursor row is not fully visible.
10131 (make_cursor_line_fully_visible): Add FORCE_P arg to return
10132 failure in case row is higher than window. Callers changed.
10133 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
10134 Try to scroll partially visible, higher-than-window cursor row.
10135 (redisplay_window): Always try to scroll partially visible,
10136 higher-than-window cursor row - both initially and again with
10137 centering_position = 0.
10138 Clear desired matrix before retrying with centering_position = 0.
10139
10140 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
10141
10142 * syntax.c (scan_lists): Simplify backward string scan.
10143 Fix off-by-one boundary check for string and comment fences.
10144
10145 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
10146
10147 * sheap.c, unexcw.c: New files.
10148
10149 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
10150
10151 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
10152 base buffer has been killed. Correct the error message if the
10153 base buffer does not exist.
10154
10155 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
10156
10157 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
10158 Cygwin itself. Add support for Xaw3d scrollbars.
10159
10160 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
10161
10162 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
10163
10164 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
10165 before Cygwin unexec.
10166
10167 * Makefile.in: Link changes for Cygwin unexec() support.
10168
10169 2004-04-12 Andreas Schwab <schwab@suse.de>
10170
10171 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
10172
10173 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
10174
10175 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
10176 IGNORE argument equals NAME. Doc fix.
10177
10178 2004-04-11 Masatake YAMATO <jet@gyve.org>
10179
10180 * buffer.c (fix_start_end_in_overlays): Make overlays
10181 empty if they are backwards.
10182
10183 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10184
10185 * xfaces.c (face_color_supported_p): Fix compilation without X11.
10186
10187 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
10188
10189 * doc.c (Fsnarf_documentation): Ignore new file name entries.
10190
10191 2004-04-06 Kim F. Storm <storm@cua.dk>
10192
10193 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10194 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
10195
10196 * w32term.c (w32_read_socket): Set mouse_face_hidden after
10197 clearing highlight.
10198
10199 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10200
10201 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
10202 clearing highlight.
10203
10204 * indent.c (vmotion): Do not reserve one column for continuation
10205 marks on window frames.
10206
10207 2004-04-04 Eli Zaretskii <eliz@gnu.org>
10208
10209 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
10210 from GCC.
10211
10212 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10213
10214 * .gdbinit-union: Remove.
10215
10216 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
10217 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
10218 ($nonvalbits): Remove.
10219 ($valmask): Set it by calling xreload to avoid redundancy.
10220
10221 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
10222 (gdb_emacs_intbits): Remove.
10223
10224 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10225
10226 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
10227
10228 2004-03-30 Kenichi Handa <handa@m17n.org>
10229
10230 * editfns.c (Fformat): Fix initialization of the array info.
10231
10232 2004-03-30 Kim F. Storm <storm@cua.dk>
10233
10234 * xterm.c (x_mouse_click_focus_ignore_position): New var.
10235 (syms_of_xterm): DEFVAR_BOOL it.
10236 (ignore_next_mouse_click_timeout): New var.
10237 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
10238 Use it to filter mouse clicks following focus event.
10239
10240 2004-03-29 David Ponce <david@dponce.com>
10241
10242 * callint.c (Fcall_interactively): Fix last change.
10243
10244 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
10245
10246 * eval.c (Fcommandp): Simplify.
10247
10248 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
10249 Extend to handle all kinds of functions.
10250
10251 * lisp.h (Finteractive_form): Declare.
10252
10253 * callint.c (Fcall_interactively): Use it.
10254
10255 2004-03-26 Kim F. Storm <storm@cua.dk>
10256
10257 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
10258 to catch errors in calc_pixel_width_or_height during redisplay.
10259
10260 2004-03-26 Masatake YAMATO <jet@gyve.org>
10261
10262 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
10263
10264 * lisp.h (fix_start_end_in_overlays): Likewise.
10265
10266 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
10267
10268 * editfns.c (Ftranspose_regions): Likewise.
10269
10270 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10271
10272 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
10273
10274 2004-03-19 Richard M. Stallman <rms@gnu.org>
10275
10276 * s/sol2-6.h: Delete previous change.
10277
10278 2004-03-19 Kim F. Storm <storm@cua.dk>
10279
10280 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
10281 to_charpos corresponds to newline in right fringe. Use local
10282 BUFFER_POS_REACHED_P macro.
10283
10284 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10285
10286 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
10287 to compile on non-window system.
10288
10289 2004-03-19 Kim F. Storm <storm@cua.dk>
10290
10291 * dispextern.h (calc_pixel_width_or_height): Add prototype.
10292
10293 * image.c (Qcenter): Move to xdisp.c.
10294
10295 * xdisp.c (Qcenter): Declare here.
10296 (syms_of_xdisp): Intern and staticpro it.
10297 (handle_single_display_prop): Allow space display property on all
10298 platforms.
10299 (display_mode_line): Set mode_line_p before displaying line.
10300 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
10301 handling. Remove complex cases for fringes and scroll-bars.
10302 Add left, right, and center alignment positions. Add text (area)
10303 width/height. Return width or height for image specs.
10304 (produce_stretch_glyph): Improve handling of :align-to. Is now
10305 relative to left of text area by default, but other base offsets
10306 can be specified -- also for text lines.
10307
10308 * term.c (produce_glyphs): Handle IT_STRETCH.
10309 (produce_stretch_glyph): New function to handle space width and
10310 align-to display properties on non-window systems.
10311
10312 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10313
10314 * fileio.c (Fread_file_name): Set completion-ignore-case for
10315 case-insensitive systems.
10316
10317 2004-03-14 Masatake YAMATO <jet@gyve.org>
10318
10319 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
10320 when keymap and cursor are setup.
10321
10322 2004-03-14 Steven Tamm <steventamm@mac.com>
10323
10324 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
10325
10326 2004-03-14 Kim F. Storm <storm@cua.dk>
10327
10328 * dispextern.h (x_find_image_file): Add prototype.
10329
10330 * image.c (x_find_image_file): Make extern.
10331
10332 * xfns.c (x_find_image_file): Remove prototype.
10333
10334 2004-03-13 Eli Zaretskii <eliz@gnu.org>
10335
10336 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
10337
10338 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
10339
10340 2004-03-12 Richard M. Stallman <rms@gnu.org>
10341
10342 * fns.c (internal_equal): New arg PROPS controls comparing
10343 text properties. All callers changed.
10344 (Fequal_including_properties): New function.
10345 (syms_of_fns): defsubr it.
10346
10347 2004-03-12 Kim F. Storm <storm@cua.dk>
10348
10349 Fix image support on MAC. From YAMAMOTO Mitsuharu.
10350
10351 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
10352 (image_background, image_background_transparent): Fix prototypes.
10353
10354 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
10355
10356 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
10357 (x_query_font, x_find_ccl_program, x_set_window_size)
10358 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10359 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10360 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
10361
10362 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
10363 (x_query_font, x_find_ccl_program, x_set_window_size)
10364 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10365 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10366 (mac_draw_line_to_pixmap): Add prototypes.
10367
10368 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10369
10370 * macterm.c (XTread_socket): Fix mouse click on tool bar.
10371
10372 2004-03-11 Kim F. Storm <storm@cua.dk>
10373
10374 * dispextern.h: Move image related prototypes from xfns.c section
10375 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
10376 HAVE_X_WINDOWS.
10377
10378 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
10379 Move gtkutil.o to new GTK_OBJ list.
10380 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
10381 (GTK_OBJ) [USE_GTK]: New declaration.
10382 (obj): Add $(GTK_OBJ) to list.
10383
10384 2004-03-11 Steven Tamm <steventamm@mac.com>
10385
10386 * image.c [MAC_OSX]: Include sys/stat.h.
10387
10388 * macfns.c (syms_of_macfns): Remove definitions of things now
10389 defined in image.c.
10390
10391 2004-03-11 Kim F. Storm <storm@cua.dk>
10392
10393 The following changes consolidates the identical/similar image
10394 support code previously found in xfns.c, w32fns.c, and macfns.c
10395 into a new file image.c.
10396
10397 * makefile.w32-in (OBJ1): Add image.o.
10398 ($(BLD)/image.$(O)): Add dependencies.
10399
10400 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
10401 (image.o): Add dependencies.
10402
10403 * image.c: New file with consolidated image support code.
10404 (COLOR_TABLE_SUPPORT): New define to control whether
10405 color table support is available (X only).
10406 (Bitmap_Record): Common name for x_bitmap_record,
10407 w32_bitmap_record, and mac_bitmap_record.
10408 (XImagePtr): Common name for pointer to XImage or equivalent.
10409 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
10410 to XImagePtr on X+MAC, and to HDC on W32.
10411 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
10412 (NO_PIXMAP): Common name for "None" or equivalent.
10413 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
10414 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
10415 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
10416 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
10417 Define with suitable equivalents on W32 and MAC for code sharing.
10418 (XDrawLine): Define on MAC for code sharing.
10419 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
10420 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
10421 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10422 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10423 (x_reference_bitmap, x_create_bitmap_from_data)
10424 (x_create_bitmap_from_file, x_destroy_bitmap)
10425 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10426 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10427 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10428 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10429 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10430 (define_image_type, lookup_image_type, valid_image_p)
10431 (image_error, enum image_value_type, struct image_keyword)
10432 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10433 (make_image, free_image, prepare_image_for_display, image_ascent)
10434 (four_corners_best, image_background, image_background_transparent)
10435 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10436 (make_image_cache, free_image_cache, clear_image_cache)
10437 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10438 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10439 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10440 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10441 (init_image_func_pointer, image_load_quartz2d)
10442 (struct ct_color, init_color_table, free_color_table)
10443 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10444 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10445 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10446 (x_disable_image, x_build_heuristic_mask)
10447 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10448 (TIFF support, GIF support, Ghostscript support): Consolidate image
10449 code from xfns.c, w32fns.c, and macfns.c.
10450 (syms_of_image): Consolidate image related symbol setup here.
10451 (init_image): Consolidate image related initializations here.
10452
10453 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
10454 and init_image. Remove call to init_xfns.
10455
10456 * macterm.h (struct mac_bitmap_record): Add file member.
10457 Not currently used, but simplifies code sharing.
10458
10459 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10460 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10461 (x_reference_bitmap, x_create_bitmap_from_data)
10462 (x_create_bitmap_from_file, x_destroy_bitmap)
10463 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10464 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10465 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10466 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10467 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10468 (define_image_type, lookup_image_type, valid_image_p)
10469 (image_error, enum image_value_type, struct image_keyword)
10470 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10471 (make_image, free_image, prepare_image_for_display, image_ascent)
10472 (four_corners_best, image_background, image_background_transparent)
10473 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10474 (make_image_cache, free_image_cache, clear_image_cache)
10475 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10476 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10477 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10478 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10479 (init_image_func_pointer, image_load_quartz2d)
10480 (struct ct_color, init_color_table, free_color_table)
10481 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10482 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10483 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10484 (x_disable_image, x_build_heuristic_mask)
10485 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10486 (TIFF support, GIF support, Ghostscript support): Merge with image
10487 code from xfns.c and macfns.c into image.c.
10488 (syms_of_xfns): Move image related symbols to image.c.
10489 (init_external_image_libraries, init_xfns): Remove; initialization
10490 moved to init_image in image.c.
10491
10492 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10493 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10494 (x_reference_bitmap, x_create_bitmap_from_data)
10495 (x_create_bitmap_from_file, x_destroy_bitmap)
10496 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10497 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10498 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10499 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10500 (define_image_type, lookup_image_type, valid_image_p)
10501 (image_error, enum image_value_type, struct image_keyword)
10502 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10503 (make_image, free_image, prepare_image_for_display, image_ascent)
10504 (four_corners_best, image_background, image_background_transparent)
10505 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10506 (make_image_cache, free_image_cache, clear_image_cache)
10507 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10508 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10509 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10510 (struct ct_color, init_color_table, free_color_table)
10511 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10512 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10513 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10514 (x_disable_image, x_build_heuristic_mask)
10515 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10516 (TIFF support, GIF support, Ghostscript support): Merge with image
10517 code from xfns.c and macfns.c into image.c.
10518 (syms_of_xfns): Move image related symbols to image.c.
10519 (init_external_image_libraries, init_xfns): Remove; initialization
10520 moved to init_image in image.c.
10521
10522 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10523 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10524 (x_reference_bitmap, x_create_bitmap_from_data)
10525 (x_create_bitmap_from_file, x_destroy_bitmap)
10526 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10527 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10528 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10529 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10530 (define_image_type, lookup_image_type, valid_image_p)
10531 (image_error, enum image_value_type, struct image_keyword)
10532 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10533 (make_image, free_image, prepare_image_for_display, image_ascent)
10534 (four_corners_best, image_background, image_background_transparent)
10535 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10536 (make_image_cache, free_image_cache, clear_image_cache)
10537 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10538 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10539 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10540 (struct ct_color, init_color_table, free_color_table)
10541 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10542 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10543 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10544 (x_disable_image, x_build_heuristic_mask)
10545 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10546 (TIFF support, GIF support, Ghostscript support): Merge with
10547 w32fns.c and macfns.c image code into image.c.
10548 (syms_of_xfns): Move image related symbols to image.c.
10549 (init_xfns): Remove; initialization moved to init_image in image.c.
10550
10551 * lisp.h (syms_of_image, init_image): Add protoypes.
10552 (init_xfns): Remove prototype.
10553
10554 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10555 (x_reference_bitmap, x_create_bitmap_from_data)
10556 (x_create_bitmap_from_file, x_destroy_bitmap)
10557 (x_create_bitmap_mask): Move prototypes from dispextern.h.
10558 (gamma_correct) [MAC_OS]: Add prototype.
10559
10560 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10561 (x_reference_bitmap, x_create_bitmap_from_data)
10562 (x_create_bitmap_from_file, x_destroy_bitmap)
10563 (x_create_bitmap_mask): Move prototypes to dispextern.h.
10564
10565 2004-03-09 Kenichi Handa <handa@etlken2>
10566
10567 * coding.c (decode_coding_emacs_mule): Handle insufficent source
10568 correctly.
10569
10570 2004-03-04 Richard M. Stallman <rms@gnu.org>
10571
10572 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
10573
10574 * window.c (Fdisplay_buffer): Doc fix.
10575
10576 * buffer.c (Fpop_to_buffer): Doc fix.
10577
10578 2004-03-03 Kim F. Storm <storm@cua.dk>
10579
10580 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
10581
10582 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
10583
10584 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
10585
10586 2004-03-02 Richard M. Stallman <rms@gnu.org>
10587
10588 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
10589
10590 2004-03-02 Kenichi Handa <handa@m17n.org>
10591
10592 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
10593
10594 2004-03-02 Kim F. Storm <storm@cua.dk>
10595
10596 * window.h (struct window): New member overlay_arrow_bitmap.
10597
10598 * window.c (make_window): Initialize overlay_arrow_bitmap.
10599
10600 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
10601 implement and integrate multiple overlay arrows with redisplay.
10602 (syms_of_xdisp): DEFVAR_LISP and initialize it.
10603 (last_arrow_position, last_arrow_string): Replace by properties.
10604 (Qlast_arrow_position, Qlast_arrow_string)
10605 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
10606 (syms_of_xdisp): Intern and staticpro them.
10607 (overlay_arrow_string_or_property, update_overlay_arrows)
10608 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
10609 (overlay_arrow_at_row): New functions for multiple overlay arrows.
10610 (redisplay_internal): Use them instead of directly accessing
10611 Voverlay_arrow_position etc. for multiple overlay arrows.
10612 (mark_window_display_accurate): Use update_overlay_arrows.
10613 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
10614 (try_window_id): Use overlay_arrows_changed_p.
10615 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
10616 (display_line): Use overlay_arrow_at_row to check multiple
10617 overlay arrows, and get relevant overlay-arrow-string and
10618 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
10619 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
10620 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
10621
10622 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
10623 (update_window_fringes): Remove unused code.
10624
10625 2004-03-01 Jason Rumney <jasonr@gnu.org>
10626
10627 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
10628
10629 2004-03-01 Juanma Barranquero <lektu@terra.es>
10630
10631 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
10632
10633 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
10634
10635 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10636
10637 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
10638 how many colors can be displayed.
10639
10640 2004-03-01 Kenichi Handa <handa@m17n.org>
10641
10642 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
10643 correctly.
10644
10645 2004-02-28 Kim F. Storm <storm@cua.dk>
10646
10647 * dispnew.c (update_window): Update header line also if there are
10648 no other changes in window (move code after set_cursor label).
10649
10650 * lisp.h (mark_window_display_accurate): Remove prototype.
10651
10652 * window.c (window_loop, Fforce_window_update): Force mode line
10653 updates by setting prevent_redisplay_optimizations_p and
10654 update_mode_lines.
10655
10656 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10657
10658 * xfns.c (x_window): Fix indentation.
10659
10660 * xterm.c (x_calc_absolute_position): Call x_real_positions
10661 to get WM window sizes and use those to calculate position.
10662 (x_set_offset): Remove code commented out.
10663
10664 2004-02-28 Miles Bader <miles@gnu.org>
10665
10666 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
10667
10668 2004-02-28 Kim F. Storm <storm@cua.dk>
10669
10670 * keyboard.c (kbd_buffer_store_event_hold): New function to store
10671 an event into kbd fifo, but with special handling of quit event;
10672 a quit event is saved for later, and further events are discarded
10673 until the saved quit event has been processed.
10674 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
10675 (gen_help_event): Store help event in kbd fifo.
10676 (NREAD_INPUT_EVENTS): Remove.
10677 (read_avail_input): Adapt to new read_socket_hook interface.
10678 Remove allocation and initialization of local input_event buffer,
10679 as read_socket_hook stores events directly in fifo. Allocate and
10680 initialize local hold_quit event to handle postponed quit event
10681 (and store it if set by kbd_buffer_store_event_hold).
10682
10683 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
10684 (gen_help_event): Fix prototype.
10685
10686 * macterm.c (XTread_socket): Remove bufp_r and
10687 numcharsp args. Add hold_quit arg.
10688 Rework to use just one, local, inev input_event. Store inev
10689 directly in fifo using kbd_buffer_store_event_hold.
10690
10691 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
10692 (read_input_waiting): Adapt to new read_socket_hook interface.
10693 Remove allocation and initialization of local input_event buffer,
10694 as read_socket_hook stores events directly in fifo. Allocate and
10695 initialize local hold_quit event to handle postponed quit event
10696 (and store it if set by kbd_buffer_store_event_hold).
10697
10698 * term.c (read_socket_hook): Fix arg list.
10699
10700 * termhooks.h (read_socket_hook): Fix prototype.
10701
10702 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
10703 numcharsp args. Add hold_quit arg.
10704 Rework to use just one, local, inev input_event. Store inev
10705 directly in fifo using kbd_buffer_store_event_hold.
10706
10707 * w32inevt.h (w32_console_mouse_position): Fix prototype.
10708
10709 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
10710 Add hold_quit arg. Rework to use just one, local, inev
10711 input_event. Store inev directly in fifo using
10712 kbd_buffer_store_event_hold. Update count in one place.
10713 Postpone call to gen_help_event until inev is stored; use new
10714 local do_help for this.
10715 Remove local emacs_event in handing of ButtonPress event; just use
10716 inev instead (so no reason to copy it later).
10717
10718 * xsmfns.c (x_session_check_input): Remove numchars arg.
10719
10720 * xterm.c (x_focus_changed, x_detect_focus_change):
10721 Remove numchars arg. Always store event into bufp arg.
10722 Return nothing. Callers changed accordingly.
10723 (glyph_rect): Simplify.
10724 (STORE_KEYSYM_FOR_DEBUG): New macro.
10725 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
10726 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
10727 (current_hold_quit) [USE_GTK]: Add.
10728 (event_handler_gdk): Adapt to new handle_one_xevent.
10729 (handle_one_xevent): Remove bufp_r and numcharsp args.
10730 Add hold_quit arg. Rework to use just one, local, inev
10731 input_event. Store inev directly in fifo using
10732 kbd_buffer_store_event_hold. Update count in one place.
10733 Postpone call to gen_help_event until inev is stored; use new
10734 local do_help for this.
10735 Simplify handling of keysyms (consolidate common code). Fix bug
10736 where count was updated with nchars instead of nbytes.
10737 Remove local emacs_event in handing of ButtonPress event; just use
10738 inev instead (so no reason to copy it later).
10739 Remove `out' label. Rename label `ret' to `done'; add various
10740 `goto done' to clarify code flow in deeply nested blocks.
10741 (x_dispatch_event): Simplify as handle_one_xevent now calls
10742 kbd_buffer_store_event itself.
10743 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
10744 arg. Call handle_one_xevent with new arglist. Store event from
10745 x_session_check_input in fifo.
10746 [USE_GTK]: Setup current_hold_quit.
10747 Decrement handling_signal before unblocking input.
10748 (x_initialize) [USE_GTK]: Initialize current_count.
10749
10750 * xterm.h (x_session_check_input): Fix prototype.
10751
10752 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10753
10754 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
10755
10756 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
10757 macgui.h).
10758
10759 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
10760
10761 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
10762 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
10763 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
10764 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
10765 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
10766 (Bitmap): Remove typedef.
10767 (Pixmap): Change int to GWorldPtr.
10768
10769 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10770
10771 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10772 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
10773 New #define to extract 16-bit depth color components from unsigned
10774 long representation.
10775 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
10776 colors used for masks.
10777 (struct mac_display_info): Add color_p. Remove n_cbits.
10778
10779 * macfns.c: Include sys/types.h and sys/stat.h.
10780 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
10781 Include QuickTime/QuickTime.h.
10782 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
10783 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
10784 functions defined in macterm.c.
10785 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
10786 (ZPixmap): New #define for compatibility with xfns.c.
10787 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10788 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10789 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
10790 New functions.
10791 (four_corners_best, x_create_x_image_and_pixmap)
10792 (x_destroy_x_image, unwind_create_frame, x_disable_image)
10793 (x_edge_detection, init_color_table, colors_in_color_table)
10794 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
10795 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
10796 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
10797 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
10798 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
10799 long mixup.
10800 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
10801 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
10802 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
10803 (x_set_cursor_type, Fxw_color_values, valid_image_p)
10804 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
10805 (x_alloc_image_color, clear_image_cache, lookup_image)
10806 (x_find_image_file, xbm_read_bitmap_file_data)
10807 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
10808 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
10809 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
10810 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
10811 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
10812 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
10813 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
10814 #if 0.
10815 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
10816 #if 0. Free white_relief.gc and black_relief.gc.
10817 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
10818 New functions (from xfns.c).
10819 (Fx_create_frame): Record unwind_create_frame.
10820 (Fxw_display_color_p): Use dpyinfo->color_p.
10821 (Fx_display_grayscale_p, Fx_display_planes): Don't use
10822 dpyinfo->n_cbits.
10823 (Fx_display_color_cells): Use dpyinfo->n_planes;
10824 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
10825 (Qheuristic, cross_disabled_images, emboss_matrix)
10826 (laplace_matrix): New variables (from xfns.c).
10827 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
10828 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
10829 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
10830 (image_background_transparent): New function (from xfns.c).
10831 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10832 (image_load_quicktime): Add declaration.
10833 [MAC_OSX] (image_load_quartz2d): Likewise.
10834 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
10835 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
10836 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
10837 (xbm_load_image_from_file, x_laplace_read_row)
10838 (x_laplace_write_row, pbm_read_file): Remove functions.
10839 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
10840 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
10841 (colors_in_color_table): Sync with xfns.c (although not used).
10842 (lookup_rgb_color): Don't lookup color table. Just do gamma
10843 correction.
10844 (COLOR_INTENSITY): New #define (from xfns.c).
10845 (x_disable_image): New function (from xfns.c).
10846 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10847 (x_build_heuristic_mask): Sync with xfns.c.
10848 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10849 (HAVE_PBM): Remove #ifdef.
10850 (pbm_load): Sync with xfns.c. Set img->width and img->height
10851 before IMAGE_BACKGROUND.
10852 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
10853 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
10854 Don't enclose with #if HAVE_PNG.
10855 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
10856 symbol _CGImageCreateWithPNGDataProvider is defined.
10857 Otherwise use image_load_quicktime.
10858 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
10859 [HAVE_PNG] (png_load): Sync with xfns.c.
10860 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10861 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
10862 HAVE_JPEG.
10863 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
10864 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
10865 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
10866 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
10867 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
10868 (tiff_image_p, tiff_load): Don't enclose declarations with #if
10869 HAVE_TIFF.
10870 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
10871 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
10872 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
10873 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
10874 New functions (from xfns.c).
10875 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
10876 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
10877 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
10878 Don't enclose with #if HAVE_GIF.
10879 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
10880 animated gif. Otherwise use image_load_quicktime.
10881 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
10882 gif_DrawText to avoid conflict with QuickdrawText.h.
10883 [HAVE_GIF] (gif_load): Sync with xfns.c.
10884 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
10885 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
10886 Ghostscript is not supported yet).
10887 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
10888 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
10889 cross_disabled_images (from xfns.c). Remove #if 0 for supported
10890 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
10891 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
10892 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
10893 HAVE_PNG. Call EnterMovies to support animated gifs.
10894 Call init_image_func_pointer to bind a symbol
10895 _CGImageCreateWithPNGDataProvider if it is defined.
10896
10897 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10898 (x_draw_bar_cursor): Sync declaration with xterm.c.
10899 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
10900 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
10901 graphics).
10902 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
10903 (mac_draw_line_to_pixmap, XCreatePixmap)
10904 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
10905 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
10906 New functions.
10907 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
10908 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
10909 Cast bits to char *.
10910 (reflect_byte): New function (from w32fns.c).
10911 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
10912 due to byte alignment.
10913 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
10914 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
10915 (XSetForeground): Remove static (now used in macfns.c).
10916 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
10917 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
10918 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
10919 (x_draw_glyph_string_box, x_draw_image_foreground)
10920 (x_draw_image_foreground_1, x_draw_image_glyph_string)
10921 (x_draw_stretch_glyph_string, x_draw_glyph_string)
10922 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
10923 Sync with xterm.c.
10924 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
10925 than the xterm.c version when a strictly horizontal or vertical
10926 line is drawn.
10927 (XTset_terminal_window): Add static.
10928 (x_make_frame_visible): Add UNBLOCK_INPUT.
10929 (x_free_frame_resources): New funcion (from xterm.c).
10930 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
10931 occurs in tool bar area.
10932 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
10933 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
10934 Initialize image cache.
10935 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
10936 Enclose unused functions with #if 0.
10937 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
10938 (decode_mac_font_name): New function to apply code conversions
10939 from a mac font name to an XLFD font name according to its script code.
10940 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
10941 font name to a mac font name according to REGISTRY and ENCODING fields.
10942 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
10943 whose name starts with `.'.
10944 (init_font_name_table): Use decode_mac_font_name. Add both
10945 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
10946 of a font is smJapanese.
10947 (mac_do_list_fonts): New function to list fonts that match a given
10948 pattern.
10949 (x_list_fonts, XLoadQueryFont): Use it.
10950 (XLoadQueryFont): Set rbearing field for each variable width
10951 character to avoid needless redraw.
10952 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
10953
10954 2004-02-26 Kim F. Storm <storm@cua.dk>
10955
10956 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
10957 as read_socket_hook handler on X aborts if buffer is too small
10958 and W32 handler doesn't always check buffer limit.
10959
10960 * xdisp.c (handle_single_display_prop): Handle left-fringe and
10961 right-fringe similar to a display margin image. Specifically,
10962 the characters having the fringe prop are no longer shown, and
10963 we use IT_IMAGE/next_element_from_image with image_id = -1 to
10964 do this. Set fringe bitmap face_id in it->face_id.
10965 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
10966 still realize it->face (i.e. the fringe bitmap face).
10967
10968 2004-02-25 Miles Bader <miles@gnu.org>
10969
10970 * xdisp.c (check_it): Check string/string_pos consistency.
10971 (init_iterator): Initialize string-related fields properly.
10972
10973 2004-02-11 Miles Bader <miles@gnu.org>
10974
10975 * xdisp.c (produce_image_glyph): Force negative descents to zero.
10976
10977 2004-02-10 Miles Bader <miles@gnu.org>
10978
10979 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
10980 BLOCK_INPUT can be nested, so it doesn't make much sense.
10981
10982 2004-02-24 Michael Mauger <mmaug@yahoo.com>
10983
10984 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
10985 (xbm_read_bitmap_data): Use unsigned char for image data.
10986
10987 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
10988
10989 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
10990
10991 2004-02-22 Jason Rumney <jasonr@gnu.org>
10992
10993 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
10994 correctly over other bitmaps.
10995
10996 2004-02-21 Eli Zaretskii <eliz@gnu.org>
10997
10998 * emacs.c (USAGE1): Split into two halves.
10999 (USAGE2): Second half of the old USAGE1.
11000 (USAGE3): Rename from USAGE2.
11001 (USAGE4): Rename from USAGE3.
11002
11003 2004-02-21 Juri Linkov <juri@jurta.org>
11004
11005 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
11006 Fix --multibyte. Move --help, --version to USAGE2. Add alias
11007 --file. Fix -f, -l. Sort options. Untabify.
11008 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
11009
11010 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
11011
11012 * category.c (Fdefine_category, Fcategory_docstring)
11013 (Fget_unused_category, Fset_category_table)
11014 (Fcategory_set_mnemonics): Doc fixes.
11015
11016 2004-02-20 Kim F. Storm <storm@cua.dk>
11017
11018 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
11019 The following changes are relative to the 2004-01-21 revision.
11020 (NREAD_INPUT_EVENTS): Define as max number of input events to read
11021 in one call to read_socket_hook. Value is 8.
11022 (read_avail_input): Separate and rework handling of read_socket_hook
11023 and non-read_socket_hook cases. Use smaller input_event buffer
11024 in read_socket_hook case, and repeat if full buffer is read.
11025 Use new local variable 'discard' to skip input after C-g.
11026 In non-read_socket_hook case, just use a single input_event, and
11027 call kbd_buffer_store_event on the fly for each character.
11028
11029 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11030
11031 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
11032 Remove unused `gu' alternative.
11033
11034 2004-02-19 Andreas Schwab <schwab@suse.de>
11035
11036 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
11037 warning.
11038
11039 2004-02-18 Kim F. Storm <storm@cua.dk>
11040
11041 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
11042 Fix last change.
11043
11044 2004-02-17 Kim F. Storm <storm@cua.dk>
11045
11046 * xdisp.c (fast_find_position): Fix return value of new version;
11047 it was inverted compared to the 21.1 version.
11048 (get_window_cursor_type): Don't look at glyph if NULL.
11049 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
11050
11051 * keyboard.c: Rework previous change; it didn't consider that the
11052 buf array was allocated on the stack.
11053 (prev_read): Remove variable.
11054 (read_avail_input_buf): New static event buffer array.
11055 (in_read_avail_input): New static variable to handle re-entrancy.
11056 (read_avail_input): Change buf to pinter to read_avail_input_buf.
11057 Use in_read_avail_input to handle re-entrance; when re-entered,
11058 fully initialize and use tmp_buf array instead of read_avail_input_buf.
11059 Do not initialize read_avail_input_buf in full here; instead assume it
11060 is always cleared on entry. To ensure that, we clear (just) the
11061 entries that were used before we return.
11062 (init_keyboard): Initialize read_avail_input_buf here.
11063
11064 2004-02-16 Jesper Harder <harder@ifa.au.dk>
11065
11066 * cmds.c (Fend_of_line): Doc fix.
11067
11068 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
11069
11070 * keyboard.c (prev_read): New static variable.
11071 (read_avail_input): Use it to zero out only those slots in buf[]
11072 that were used last time we were called.
11073
11074 2004-02-16 Eli Zaretskii <eliz@gnu.org>
11075
11076 * Makefile.in (obj): Move fringe.o from here...
11077 (XOBJ, MAC_OBJ): ...to here.
11078
11079 2004-02-16 Stephen Eglen <stephen@gnu.org>
11080
11081 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
11082
11083 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
11084
11085 * data.c (Fbyteorder):
11086 * fringe.c (Fdefine_fringe_bitmap):
11087 * xdisp.c (handle_single_display_prop):
11088 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
11089
11090 2004-02-16 Jason Rumney <jasonr@gnu.org>
11091
11092 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
11093
11094 2004-02-15 Steven Tamm <steventamm@mac.com>
11095
11096 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
11097 controlling emulation of a three button mouse with option and
11098 command keys.
11099 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
11100 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
11101
11102 2004-02-15 Kim F. Storm <storm@cua.dk>
11103
11104 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
11105
11106 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
11107 Perform byte-swapping.
11108
11109 2004-02-14 Kim F. Storm <storm@cua.dk>
11110
11111 * dispextern.h (struct draw_fringe_bitmap_params): Change member
11112 bits from char to short to facilitate wider bitmaps.
11113 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
11114 member.
11115
11116 * fringe.c (struct fringe_bitmap): Change member bits from char to
11117 short to facilitate 16 bits wide bitmaps. Modify all standard
11118 bitmaps accordingly.
11119 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
11120 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
11121 (draw_fringe_bitmap): Ditto.
11122 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
11123 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
11124 handle up to 16 bits wide bitmaps.
11125 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
11126 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
11127
11128 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
11129 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
11130 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
11131
11132 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
11133 so it is no longer necessary to expand them here.
11134
11135 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
11136
11137 2004-02-12 Kim F. Storm <storm@cua.dk>
11138
11139 * window.c (Fwindow_fringes): Doc fix.
11140
11141 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11142
11143 * xselect.c (x_get_foreign_selection): Add new optional parameter
11144 time_stamp.
11145 (Fx_get_selection_internal): Ditto, pass time_stamp to
11146 x_get_foreign_selection.
11147
11148 * data.c (Fbyteorder): New function.
11149
11150 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11151
11152 * atimer.c: Move include stdio.h to same place as in other files.
11153
11154 * region-cache.c: Ditto.
11155
11156 * sysdep.c: Ditto.
11157
11158 * xfaces.c: Ditto.
11159
11160 2004-02-09 Sam Steingold <sds@gnu.org>
11161
11162 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
11163
11164 2004-02-09 Kim F. Storm <storm@cua.dk>
11165
11166 * fringe.c: New file. Move original fringe related declarations
11167 and code from dispextern.h and xdisp.c here.
11168 Rework code to support user defined fringe bitmaps, redefining
11169 standard bitmaps, ability to overlay user defined bitmap with
11170 overlay arrow bitmap, and add faces to bitmaps.
11171 (Voverflow_newline_into_fringe): Declare here.
11172 (enum fringe_bitmap_align): New enum.
11173 (..._bits): All bitmaps are now defined without bitswapping; that
11174 is now done in init_fringe_once (if necessary).
11175 (standard_bitmaps): New array with specifications for the
11176 standard fringe bitmaps.
11177 (fringe_faces): New array.
11178 (valid_fringe_bitmap_id_p): New function.
11179 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
11180 (draw_fringe_bitmap): New function which draws fringe bitmap,
11181 possibly overlaying bitmap with cursor in right fringe or the
11182 overlay arrow in the left fringe.
11183 (update_window_fringes): Do not handle overlay arrow here.
11184 Compare and copy fringe bitmap faces.
11185 (init_fringe_bitmap): New function.
11186 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
11187 define and destroy user defined fringe bitmaps.
11188 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
11189 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
11190 (syms_of_fringe): New function. Defsubr new DEFUNs.
11191 DEFVAR_LISP Voverflow_newline_into_fringe.
11192 (init_fringe_once, init_fringe): New functions.
11193 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
11194
11195 * Makefile.in (obj): Add fringe.o.
11196 (fringe.o): New dependencies.
11197
11198 * dispextern.h (FRINGE_ID_BITS): New definition for number of
11199 bits allocated to hold a fringe number. Increase number of bits
11200 from 4 to 8 to allow user defined fringe bitmaps.
11201 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
11202 left_user_fringe_face_id, right_user_fringe_bitmap,
11203 right_user_fringe_face_id.
11204 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
11205 Move to new file fringe.c.
11206 (MAX_FRINGE_BITMAPS): Define here.
11207 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
11208 and overlay_p. Change member which to int.
11209 (struct redisplay_interface): New members define_fringe_bitmap
11210 and destroy_fringe_bitmap.
11211 (valid_fringe_bitmap_id_p): Add prototype.
11212 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
11213
11214 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
11215 arrows.
11216 (update_frame): Do flush_display if force_flush_display_p to
11217 ensure display (specifically fringes) are updated in a timely
11218 manner when resizing the frame by dragging the mouse.
11219 (update_window_line): Update row if overlay arrow changed.
11220 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
11221 or overlay arrow changed.
11222
11223 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
11224 syms_of_fringe, and init_fringe.
11225
11226 * frame.h (struct frame): New member force_flush_display_p.
11227
11228 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
11229 Add prototypes.
11230
11231 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
11232 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
11233 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
11234 Use cursor color for displaying cursor in fringe.
11235 (x_redisplay_interface): Add null handlers for
11236 define_fringe_bitmap and destroy_fringe_bitmap functions.
11237
11238 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
11239 xterm.c to handle overlayed fringe bitmaps and to use cursor color
11240 for displaying cursor in fringe.
11241 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
11242 specific functions to define and destroy fringe bitmaps in fringe_bmp.
11243 (w32_redisplay_interface): Add them to redisplay_interface.
11244 (w32_term_init): Call w32_init_fringe instead of explicitly
11245 defining fringe bitmaps in fringe_bmp array.
11246 (x_delete_display): Call w32_reset_fringes instead of explicitly
11247 destroying fringe bitmaps in fringe_bmp array.
11248
11249 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
11250 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
11251 (continued_bits, continuation_bits, ov_bits, first_line_bits)
11252 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
11253 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
11254 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
11255 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
11256 Move fringe handling vars and code to new file fringe.c.
11257 (handle_display_prop): Handle left-fringe and right-fringe
11258 display properties; store user fringe bitmaps in iterator.
11259 (move_it_in_display_line_to): Handle cursor in fringe at eob.
11260 (clear_garbaged_frames): Set force_flush_display_p if resized.
11261 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
11262 (display_line): Handle cursor in fringe at eob.
11263 (display_line): Set row user fringe bitmaps from iterator.
11264
11265 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
11266 Use cursor color for displaying cursor in fringe.
11267 (x_redisplay_interface): Add null handlers for
11268 define_fringe_bitmap and destroy_fringe_bitmap functions.
11269
11270 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11271
11272 * macfns.c (Fx_change_window_property): Make doc string and
11273 parameters same as for X version.
11274
11275 * w32fns.c (Fx_change_window_property): Ditto.
11276
11277 2004-02-07 Kim F. Storm <storm@cua.dk>
11278
11279 * xdisp.c (hscroll_window_tree): Position cursor near to right
11280 margin in hscrolled window when jumping to end of line (rather
11281 than centering cursor).
11282
11283 * process.c (wait_reading_process_input): Don't do adaptive read
11284 buffering if waiting for a specific process.
11285
11286 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
11287
11288 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
11289 (Fread_minibuffer, Feval_minibuffer)
11290 (Fread_string, Fread_no_blanks_input)
11291 (Fcompleting_read): Doc fixes.
11292 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
11293 completion-regexp-list. Define Qcase_fold_search and staticpro it.
11294 (read_minibuf): Fix initial comment.
11295 (Ftry_completion, Fall_completions, Ftest_completion): Bind
11296 case-fold-search to the value of completion-ignore-case when
11297 checking completion-regexp-list.
11298 (Fdisplay_completion_list): Make it handle arguments that are
11299 symbols. Doc fix.
11300
11301 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11302
11303 * xterm.h: Add declaration of free_frame_menubar.
11304
11305 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
11306 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
11307 (Fx_change_window_property): Add declaration of parameters type and
11308 format. Remove unused variable cons.
11309
11310 * xselect.c: Include stdio.h.
11311
11312 2004-02-05 Kenichi Handa <handa@m17n.org>
11313
11314 * fns.c (Fset_char_table_range): Fix previous change.
11315
11316 * buffer.c (Fset_buffer_multibyte): Fix docstring.
11317
11318 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
11319
11320 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
11321
11322 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
11323
11324 * keymap.c (Vmouse_events): Rename from Vmenu_events.
11325 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
11326
11327 2004-02-04 Kenichi Handa <handa@m17n.org>
11328
11329 * fns.c (Fset_char_table_range): Handle charsets ascii,
11330 eight-bit-control, and eight-bit-graphic correctly.
11331
11332 2004-02-03 Jason Rumney <jasonr@gnu.org>
11333
11334 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
11335
11336 * w32fns.c (x_to_w32_font): Likewise.
11337
11338 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11339
11340 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
11341 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
11342
11343 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
11344 ClientMessages.
11345
11346 * xselect.c: Include termhooks.h and X11/Xproto.h
11347 (x_check_property_data, x_fill_property_data)
11348 (x_property_data_to_lisp, mouse_position_for_drop)
11349 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
11350 (Fx_send_client_event): Move here from xfns.c.
11351 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
11352
11353 * xfns.c (x-send-client-message): Move to xselect.c
11354 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
11355 OUTER_P.
11356 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
11357 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
11358 if vector_ret_p is true.
11359 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
11360
11361 2004-02-02 Eli Zaretskii <eliz@gnu.org>
11362
11363 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
11364 basename of FILE relative to it, not FILE itself.
11365
11366 2004-02-02 Kenichi Handa <handa@m17n.org>
11367
11368 * coding.c (coding_restore_composition): Check invalid
11369 composition data more rigidly.
11370
11371 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
11372
11373 * fileio.c (Fread_file_name_internal): Correctly handle the case
11374 where insert-default-directory is nil.
11375 (Fread_file_name): Always return an empty string if the user exits
11376 with an empty minibuffer. Adapt the docstring accordingly.
11377 (syms_of_fileio): Adapt the docstring of insert-default-directory
11378 to the change in Fread_file_name.
11379
11380 2004-01-29 Eli Zaretskii <eliz@gnu.org>
11381
11382 * alloca.c [!alloca]: Fix the prototype for xfree.
11383
11384 2004-01-29 Kenichi Handa <handa@m17n.org>
11385
11386 * fns.c (string_char_to_byte): Optimize for ASCII only string.
11387 (string_byte_to_char): Likewise.
11388
11389 2004-01-28 Peter Runestig <peter@runestig.com>
11390
11391 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
11392
11393 2004-01-27 Steven Tamm <steventamm@mac.com>
11394
11395 * unexmacosx.c (unexec_copy): Do not copy more than was
11396 requested to prevent overwriting during unexec.
11397
11398 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11399
11400 * process.c (sigchld_handler): Add comment about not calling malloc.
11401
11402 * process.h: Add extern to synch_process_termsig.
11403
11404 2004-01-27 Steven Tamm <steventamm@mac.com>
11405
11406 * macterm.c (make_mac_frame, make_mac_terminal_frame):
11407 Move setting of scroll bars from make_mac_frame to
11408 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
11409
11410 2004-01-26 Richard M. Stallman <rms@gnu.org>
11411
11412 * search.c (Freplace_match): Handle nonexistent
11413 back-references properly.
11414
11415 2004-01-03 Richard M. Stallman <rms@gnu.org>
11416
11417 * window.c (decode_any_window): New function.
11418 (Fwindow_height, Fwindow_width, Fwindow_edges)
11419 (Fwindow_pixel_edges, Fwindow_inside_edges)
11420 (Fwindow_inside_pixel_edges): Use decode_any_window.
11421
11422 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11423
11424 * process.h: synch_process_termsig new variable.
11425
11426 * callproc.c: Define synch_process_termsig.
11427 (Fcall_process): Initiate synch_process_termsig to zero and
11428 check if non-zero and get signal name after subprocess has ended.
11429
11430 * process.c (sigchld_handler): Set synch_process_termsig
11431 if terminated by a signal. synch_process_death setting removed.
11432
11433 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
11434
11435 2004-01-26 Andreas Schwab <schwab@suse.de>
11436
11437 * print.c (print_preprocess): Declare size as EMACS_INT to not
11438 lose bits.
11439 (print_object): Likewise.
11440 * alloc.c (Fpurecopy): Likewise.
11441
11442 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
11443
11444 * window.c (Fwindow_minibuffer_p): Doc fix.
11445
11446 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
11447
11448 * editfns.c (Fformat): Make both passes accept the same set of flags.
11449
11450 2004-01-23 Kenichi Handa <handa@m17n.org>
11451
11452 * fns.c (Fmd5): If OBJECT is a buffer different from the current
11453 one, set buffer to OBJECT temporarily.
11454
11455 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11456
11457 * keyboard.c (kbd_buffer_gcpro): Remove.
11458 (kbd_buffer_store_event, clear_event, Fdiscard_input)
11459 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
11460 Don't initialize and/or maintain the variable any more. It was made
11461 redundant by my commit of 2003-06-15.
11462
11463 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
11464
11465 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11466
11467 * lisp.h: Add undef DECL_ALIGN.
11468
11469 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11470
11471 * process.c (wait_reading_process_input) [SYNC_INPUT]:
11472 Check interrupt_input_pending explicitly.
11473
11474 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
11475
11476 * keyboard.c (handle_async_input): New fun,
11477 extracted from input_available_signal.
11478 (input_available_signal, reinvoke_input_signal): Use it.
11479
11480 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
11481
11482 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
11483
11484 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
11485 manipulation macros for when tags are in the lower bits.
11486 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
11487 (DECL_ALIGN): New macro.
11488 (DEFUN): Use it.
11489
11490 * lisp.h [ENABLE_CHECKING]: Don't force union type.
11491
11492 * s/darwin.h (__attribute__): Remove outdated workaround.
11493
11494 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
11495
11496 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
11497 Don't check range of malloc address.
11498 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
11499
11500 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
11501
11502 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
11503
11504 2004-01-19 Kenichi Handa <handa@m17n.org>
11505
11506 * fontset.c (fontset_font_pattern): Fix previous change.
11507
11508 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
11509
11510 * xdisp.c (Voverflow_newline_into_fringe)
11511 (move_it_in_display_line_to, redisplay_internal)
11512 (update_window_fringes, redisplay_window, display_line, window):
11513 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
11514 that it compiles without a window-system.
11515 * dispnew.c (direct_output_for_insert, update_window): Likewise.
11516
11517 2004-01-16 Kim F. Storm <storm@cua.dk>
11518
11519 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
11520
11521 * buffer.c (init_buffer_once): Set buffer_defaults and
11522 buffer_local_flags for indicate_buffer_boundaries.
11523 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
11524 default- variable for it.
11525
11526 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
11527 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
11528 New members exact_window_width_line_p and cursor_in_fringe_p for
11529 overflowing newlines into right fringe.
11530 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
11531 and indicate_bottom_line_p for buffer boundaries and scrolling.
11532 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
11533 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
11534 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
11535 and HOLLOW_SQUARE_BITMAP.
11536 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
11537 Add prototypes.
11538
11539 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
11540 instead of related indicator fields.
11541 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
11542 (direct_output_for_insert): Handle exact width lines like
11543 contined lines. Call update_window_fringes.
11544 (update_window): Call update_window_fringes.
11545 (scrolling_window): Don't skip desired rows with changed bitmaps.
11546 Check if fringe bitmaps changes when assigning scrolled rows.
11547
11548 * xdisp.c (Voverflow_newline_into_fringe): New variable.
11549 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
11550 (move_it_in_display_line_to): Overflow newline into fringe for
11551 rows that are exactly as wide as the window.
11552 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
11553 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
11554 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
11555 (fringe_bitmaps): Add new bitmaps.
11556 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
11557 Select proper bitmap for cursor in fringe when appropriate.
11558 Handle alignment of bitmap to top or bottom of row.
11559 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
11560 done by update_window_fringes.
11561 (update_window_fringes, draw_window_fringes): New functions.
11562 (redisplay_internal): Call update_window_fringes in case only
11563 cursor row is updated.
11564 (redisplay_window): Call update_window_fringes.
11565 Explicitly call draw_window_fringes if redisplay was done using
11566 the current matrix or the overlay arrow is in the window.
11567 (try_window_reusing_current_matrix): Mark scrolled rows for
11568 fringe update (to update buffer-boundaries / scrolling icons).
11569 (find_last_unchanged_at_beg_row): Handle exact width lines line
11570 continued lines.
11571 (display_line): Overflow newline into fringe for rows that are
11572 exactly as wide as the window. Don't append space for newline
11573 in this case.
11574 (notice_overwritten_cursor): Explicitly clear cursor bitmap
11575 in fringe as if it had been overwritten.
11576 (erase_phys_cursor): Erase cursor bitmap in fringe.
11577 (syms_of_xdisp): Mark show-trailing-whitespace and
11578 void-text-area-pointer as user options.
11579 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
11580
11581 * xterm.c (x_update_window_end): Call draw_window_fringes.
11582 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11583 in row instead of actually drawing fringe bitmaps.
11584 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11585 (x_draw_window_cursor): Draw cursor in fringe.
11586
11587 * w32term.c (x_update_window_end): Call draw_window_fringes.
11588 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11589 in row instead of actually drawing fringe bitmaps.
11590 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11591 (w32_draw_window_cursor): Draw cursor in fringe.
11592
11593 * macterm.c (x_update_window_end): Call draw_window_fringes.
11594 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
11595 in row instead of actually drawing fringe bitmaps.
11596 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
11597 (mac_draw_window_cursor): Draw cursor in fringe.
11598
11599 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11600
11601 * xterm.c (handle_one_xevent): Don't handle characters that are part
11602 of an old style (XLookupString) compose sequence.
11603
11604 2004-01-15 Kenichi Handa <handa@m17n.org>
11605
11606 * search.c (Freplace_match): Use make_multibyte_string or
11607 make_unibyte_string according to the buffer multibyteness.
11608
11609 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
11610
11611 * alloc.c (struct interval_block, struct string_block)
11612 (struct symbol_block, struct marker_block, live_string_p)
11613 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
11614 Better preserve alignment for objects in blocks.
11615 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
11616
11617 * lread.c (defvar_per_buffer): Remove dead declaration.
11618
11619 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
11620 space size.
11621
11622 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11623
11624 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
11625 if a key press should pop down. Only pop down if a key is pressed
11626 outside the menu/dialog.
11627 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
11628 popup_get_selection.
11629 (create_and_show_dialog): Pass 1 for down_on_keypress to
11630 popup_get_selection.
11631
11632 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11633
11634 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
11635 BLOCK/UNBLOCK_INPUT.
11636
11637 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11638
11639 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
11640 specified.
11641
11642 2004-01-08 Kenichi Handa <handa@m17n.org>
11643
11644 * editfns.c (Fformat): Fix '&' to '&&'.
11645
11646 2004-01-08 Andreas Schwab <schwab@suse.de>
11647
11648 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
11649 size if PSEUDOVECTOR_FLAG is set.
11650
11651 2004-01-07 Kenichi Handa <handa@m17n.org>
11652
11653 * charset.c (Fdeclare_equiv_charset): Fix docstring.
11654
11655 * fontset.c (fontset_ref_via_base): Fix previous change.
11656
11657 2004-01-07 Kim F. Storm <storm@cua.dk>
11658
11659 * process.c (read_process_output): Only activate adaptive
11660 buffering if we read less than 256 bytes at a time.
11661
11662 2004-01-06 Kim F. Storm <storm@cua.dk>
11663
11664 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
11665 object and image object. Return glyph width and height.
11666 (mode_line_string, marginal_area_string): Ditto.
11667
11668 * dispextern.h (buffer_posn_from_coords, mode_line_string)
11669 (marginal_area_string): Fix prototypes.
11670
11671 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
11672 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
11673 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
11674
11675 * keyboard.c (make_lispy_position): Use modified mode_line_string,
11676 buffer_posn_from_coords, and marginal_area_string functions to
11677 include both string object and image object in the lispy position.
11678 Also add actual glyph width and height to position.
11679 (read_key_sequence): Use real buffer position from mouse
11680 event to find keymap property even when click is in marginal area.
11681
11682 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
11683 mode_line_string and marginal_area_string functions to handle
11684 both string object and image object properties.
11685
11686 2004-01-06 Andreas Schwab <schwab@suse.de>
11687
11688 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
11689 character.
11690
11691 2004-01-02 Andreas Schwab <schwab@suse.de>
11692
11693 * macterm.c (emacs_options, x_initialized, same_x_server):
11694 Remove unused (and duplicated) definitions.
11695
11696 2004-01-02 Kim F. Storm <storm@cua.dk>
11697
11698 * process.h (struct Lisp_Process): New members for adaptive read
11699 buffering: adaptive_read_buffering, read_output_delay, and
11700 read_output_skip.
11701
11702 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
11703 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
11704 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
11705 (process_output_delay_count, process_output_skip): New vars.
11706 (Vprocess_adaptive_read_buffering): New variable.
11707 (make_process): Initialize adaptive read buffering members.
11708 (Fstart_process): Set adaptive_read_buffering member.
11709 (deactivate_process): Cleanup adaptive read buffering.
11710 (wait_reading_process_input): Temporarily omit delayed
11711 subprocesses from the set of file descriptors to read from;
11712 adjust the select timeout if we skipped any subprocesses.
11713 (read_process_output): Increase adaptive read buffering delay if
11714 we read less than a full buffer; reduce delay when we read a
11715 full buffer.
11716 (send_process): Simplify using local Lisp_Process var.
11717 Reset adaptive read buffering delay after write.
11718 (init_process): Initialize process_output_delay_count and
11719 process_output_skip.
11720 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
11721
11722 2004-01-01 Jason Rumney <jasonr@gnu.org>
11723
11724 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
11725
11726 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
11727
11728 * print.c (Ferror_message_string): Add hyperlink in the docstring
11729 to the definition of `signal' in the Elisp manual.
11730 * eval.c (Fsignal): Ditto.
11731
11732 2003-12-29 James Clark <jjc@jclark.com>
11733
11734 * fns.c (internal_equal): Return t for two NaN arguments.
11735
11736 2003-12-29 Richard M. Stallman <rms@gnu.org>
11737
11738 * data.c (store_symval_forwarding): Handle setting
11739 default-fill-column, etc., by changing the value in
11740 buffers that use the default.
11741
11742 * minibuf.c (Fset_minibuffer_window): Doc fix.
11743
11744 * fileio.c (choose_write_coding_system): Ignore auto_saving
11745 if using the visited file for auto saves.
11746 (Fwrite_region): Don't update SAVE_MODIFF
11747 if auto-saving in visited file.
11748
11749 2003-12-29 Kenichi Handa <handa@m17n.org>
11750
11751 * dispextern.h (face_font_available_p): Extern it.
11752
11753 * fontset.c (Voverriding_fontspec_alist): New variable.
11754 (lookup_overriding_fontspec): New function.
11755 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
11756 (fontset_font_pattern): Likewise.
11757 (regulalize_fontname): New function.
11758 (Fset_fontset_font): Call regulalize_fontname.
11759 (Fset_overriding_fontspec_internal): New function.
11760 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
11761 Defsubr Sset_overriding_fontspec_internal.
11762
11763 * xfaces.c (face_font_available_p): New function.
11764
11765 2003-12-28 Richard M. Stallman <rms@gnu.org>
11766
11767 * buffer.c (Fother_buffer): Don't crash if BUF is nil
11768 or if its name is nil.
11769
11770 * buffer.c (Fkill_buffer): Don't delete auto-save file
11771 if it's the same as the visited file.
11772
11773 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
11774
11775 * coding.c (Fcheck_coding_system): Doc fix.
11776
11777 2003-12-28 Kim F. Storm <storm@cua.dk>
11778
11779 * Makefile.in (eval.o): Depend on dispextern.h.
11780
11781 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
11782 image glyph using image's ascent.
11783 (mode_line_string): Return image glyph as object clicked on.
11784 Adjust y0 for image glyph using image's ascent.
11785
11786 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
11787 (struct glyph): New members, ascent and descent. Used to save
11788 this glyph's ascent and descent, instead of having.
11789 (struct glyph): Declare member face_id using FACE_ID_BITS.
11790 (find_hot_spot): Add prototype.
11791
11792 * keyboard.c (Qimage): Remove extern (now in lisp.h).
11793 (QCmap): Declare extern.
11794 (make_lispy_position): When position is inside image hot-spot,
11795 use hot-spot element's id as posn element.
11796
11797 * lisp.h (IMAGEP): New macro to test for image object type.
11798 (Qimage): Declare extern.
11799
11800 * macfns.c (Qimage): Remove extern (now in lisp.h).
11801 (valid_image_p, parse_image_spec): Use IMAGEP macro.
11802
11803 * macterm.c (Qface, Qmouse_face): Remove unused externs.
11804
11805 * w32fns.c (Qimage): Remove extern (now in lisp.h).
11806 (valid_image_p, parse_image_spec): Use IMAGEP macro.
11807
11808 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
11809
11810 * w32term.c (Qface, Qmouse_face): Remove unused externs.
11811
11812 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
11813 pointer types.
11814 (Qrelative_width, Qalign_to): Remove unused variables.
11815 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
11816 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
11817 image maps.
11818 (x_y_to_hpos_vpos): Return glyph relative coordinates through
11819 new dx and dy args.
11820 Remove buffer_only_p arg (always 0). Simplify code accordingly.
11821 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
11822 than row's ascent and height, to get sensible height on tall rows.
11823 (build_desired_tool_bar_string): Remove Qimage extern.
11824 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
11825 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
11826 image glyph is alone on the last line.
11827 (append_glyph, append_composite_glyph, produce_image_glyph)
11828 (append_stretch_glyph): Set glyph's ascent and descent.
11829 (on_hot_spot_p): New function to check if position is inside an
11830 rectangular, circular, or polygon-shaped image hot-spot,
11831 (find_hot_spot): New function to search for image hot-spot.
11832 (Flookup_image_map): New defun to search for image hot-spot.
11833 (define_frame_cursor1): New aux function to determine frame pointer.
11834 (note_mode_line_or_margin_highlight, note_mouse_highlight):
11835 Handle `pointer' text property and :pointer image property to
11836 control frame pointer shape. Detect image hot-spots for pointer
11837 and help_echo properties. Use define_frame_cursor1.
11838 (note_mouse_highlight): Use Vvoid_text_area_pointer.
11839 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
11840 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
11841
11842 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
11843
11844 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
11845 (Qimage): Remove extern (now in lisp.h).
11846 (valid_image_p, parse_image_spec): Use IMAGEP macro.
11847
11848 * xmenu.c (show_help_event): Remove unused code.
11849
11850 * xterm.c (Qface, Qmouse_face): Remove unused externs.
11851 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
11852 row's ascent and descent, to get a sensible height on tall rows.
11853
11854 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
11855
11856 * minibuf.c (Fcompleting_read): Undo previous change.
11857
11858 2003-12-25 Lars Hansen <larsh@math.ku.dk>
11859
11860 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
11861 Arguments GCPRO'ed in call to file name handler.
11862
11863 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
11864
11865 * termcap.c (tgetst1): Scan for "%pN"; if all
11866 N are continuous in [1,9], remove all "%pN".
11867
11868 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11869
11870 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
11871
11872 * xfaces.c (lface_fully_specified_p): Take into account that
11873 MAC OS always have unspecified stipple.
11874
11875 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
11876
11877 * tparam.c (tparam1): Add handling for `%pN', which
11878 means use param N for the next substitution.
11879
11880 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
11881
11882 * xfaces.c (Fcolor_gray_p): Fix omission bug:
11883 In case `frame' is nil, consult the selected frame.
11884 (Fcolor_supported_p): Likewise.
11885
11886 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
11887
11888 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
11889 Doc fixes.
11890
11891 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
11892 and an integer. Adapt the introductory comment accordingly.
11893 (Fread_from_minibuffer): Delete code moved into read_minibuf.
11894 Doc fix.
11895 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
11896 read_minibuf.
11897 (Fcompleting_read): Delete code moved into read_minibuf.
11898 (Ftest_completion): Make it handle obarrays and hash tables correctly.
11899
11900 2003-12-03 Kenichi Handa <handa@m17n.org>
11901
11902 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
11903 encoding sequence.
11904
11905 2003-12-01 Kenichi Handa <handa@m17n.org>
11906
11907 * composite.c (syms_of_composite): Don't make the compostion hash
11908 table week.
11909
11910 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
11911
11912 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
11913 * textprop.c (Fget_char_property_and_overlay): New function.
11914 (syms_of_textprop): Defsubr it.
11915
11916 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11917
11918 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
11919 to compile on terminal configuration.
11920
11921 * fileio.c (Fread_file_name): Check use_file_dialog also before
11922 calling Fx_file_dialog.
11923
11924 * fns.c (use_file_dialog): New variable.
11925 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
11926
11927 2003-11-29 Kim F. Storm <storm@cua.dk>
11928
11929 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
11930 (syms_of_msdos): Don't intern and staticpro them.
11931
11932 2003-11-27 Kim F. Storm <storm@cua.dk>
11933
11934 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
11935 coordinates relative to glyph at posn. If glyph is an image,
11936 return that as object at posn. Callers changed.
11937 (mode_line_string, marginal_area_string): Calculate and return
11938 pixel coordinates relative to glyph. Callers changed.
11939
11940 * dispextern.h (buffer_posn_from_coords, mode_line_string)
11941 (marginal_area_string): Fix prototypes.
11942 (window_box_left_offset, window_box_right_offset): Add prototypes.
11943
11944 * frame.h (get_specified_cursor_type, get_window_cursor_type):
11945 Remove prototypes.
11946
11947 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
11948
11949 * keyboard.c (make_lispy_position): Add x and y coordinates
11950 relative to the current glyph as 7th element of position.
11951 If glyph is an image, return it in the object element.
11952 (read_key_sequence): Skip checks for keymap property in cases
11953 where POSN_STRING is not a string (e.g. an image).
11954
11955 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
11956 (Vshow_text_cursor_in_void): New variable.
11957 (glyph_to_pixel_coords): Don't use negative hpos.
11958 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
11959 (append_stretch_glyph): Change ascent arg to be actual value
11960 in pixels rather than ratio to height. Callers changed.
11961 (calc_pixel_width_or_height): New aux function, implementing
11962 pixel based artihmetic for glyph widths and heights.
11963 (produce_stretch_glyph): Use calc_pixel_width_or_height for
11964 :width, :height, :align-to, and :ascent, thus allowing these to
11965 be specified in pixels as well as multiples of characters.
11966 Don't produce stretch glyphs with zero width or height.
11967 (get_specified_cursor_type): Declare static.
11968 (get_window_cursor_type): Declare static. Add glyph arg to be
11969 able to know when cursor is on an image; always substitute
11970 hollow-box cursor for filled-box cursor on images, to avoid
11971 negative images and flicker when blinking the cursor.
11972 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
11973 (note_mode_line_or_margin_highlight): Use non-text cursor rather
11974 than vertical scroll-bar cursor in display margins.
11975 (note_mouse_highlight): Use non-text cursor rather than text
11976 cursor in fringes and over images in the text area.
11977 Use non-text cursor when mouse pointer is outside editable text,
11978 i.e. in the void after end-of-line or end-of-buffer; this was
11979 already done for W32, but is now standard for all systems --
11980 user can toggle show-text-cursor-in-void to get old behaviour.
11981 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
11982 Vdisplay_pixels_per_inch.
11983
11984 2003-11-25 Andreas Schwab <schwab@suse.de>
11985
11986 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
11987 EMACS_INT to not lose bits.
11988 (Ffillarray): Don't set bits beyond the size of a bool vector.
11989
11990 2003-11-25 Kim F. Storm <storm@cua.dk>
11991
11992 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
11993 define this defun on systems that cannot use stderr as lvalue.
11994
11995 2003-11-24 Gerd Moellmann <gerd@gnu.org>
11996
11997 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
11998 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
11999 ld's default is incompatible with unexec.
12000
12001 2003-11-23 Kim F. Storm <storm@cua.dk>
12002
12003 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
12004 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
12005 (Fforce_window_update): New defun.
12006 (syms_of_window): Defsubr it.
12007 (Fset_window_margins, Fset_window_fringes): Doc fix.
12008
12009 * print.c (Fredirect_debugging_output): New defun.
12010 (syms_of_print): Defsubr it.
12011
12012 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
12013
12014 * fns.c (Fset_char_table_parent): Doc fix.
12015
12016 2003-11-22 Kim F. Storm <storm@cua.dk>
12017
12018 * dispnew.c (buffer_posn_from_coords): Return actual row/column
12019 for glyph clicked on, rather than (unused) pixel positions.
12020 (mode_line_string, marginal_area_string): Change X and Y args to
12021 pointers for returning actual row/column for glyph clicked on.
12022 Simplify and optimize loops.
12023
12024 * dispextern.h (mode_line_string, marginal_area_string):
12025 Update prototypes.
12026
12027 * keyboard.c (make_lispy_position): New function for generating
12028 mouse click positions from frame and pixel coordinates.
12029 Enhanced to return buffer position and actual row/column for
12030 events outside the text area using updated mode_line_string and
12031 marginal_area_string functions.
12032 Return left-fringe and right-fringe clicks as such, rather than
12033 clicks in text area.
12034 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
12035 pixel_to_glyph_coords, as we never use the results.
12036 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
12037 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
12038 Eliminate unused code in WHEEL_EVENT handling.
12039 (make_lispy_movement): Use make_lispy_position.
12040
12041 * window.c (coordinates_in_window): Remove redundant tests.
12042 Fix returned X pixel value for left-margin.
12043
12044 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
12045 mode_line_string and marginal_area_string parameters.
12046
12047 2003-11-22 Lars Hansen <larsh@math.ku.dk>
12048
12049 * w32.c (struct the_group, getgrgid): Add.
12050 * mac.c (struct my_group, getgrgid): Add.
12051
12052 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12053
12054 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
12055
12056 2003-11-21 Lars Hansen <larsh@math.ku.dk>
12057
12058 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
12059 include in call to file name handler. Optionally translate numeric
12060 UID and GID to strings. Update docstring.
12061 (directory_files_internal): Add parameter ID-FORMAT.
12062 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
12063 include in call to file name handler and call to
12064 directory_files_internal. Update Docstring.
12065 (Fdirectory_files): Add dummy parameter in call to
12066 directory_files_internal.
12067 * lisp.h (Qinteger): Add.
12068 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
12069 (Ffile_attributes): Add parameter.
12070 * data.c (Qinteger): Export.
12071
12072 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12073
12074 * fns.c (Freverse, Fnreverse): Doc fixes.
12075
12076 2003-11-19 Kim F. Storm <storm@cua.dk>
12077
12078 * xdisp.c (init_iterator): Initialize it->start to position
12079 before reseating (in case start position is invisible).
12080 (init_to_row_start): Set it->start to row-start.
12081 (redisplay_window): Accept optional_new_start if start position
12082 is invisible (in which case IT_CHARPOS overshoots PT).
12083 (display_line): Setup row->start from it->start (rather than
12084 it->current which is wrong if first char on line is invisible).
12085 When done, reseat it->start to it->current (= start of next row).
12086 (expose_area): Fix exposure of text area when first char (e.g. TAB)
12087 is only partially visible.
12088
12089 * dispextern.h (struct it): New member start.
12090
12091 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
12092
12093 * alloc.c (make_float, Fcons): Clear the markbit at init time.
12094 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
12095 of block_index outside of the macro call.
12096 (Fgarbage_collect): Remove null code.
12097
12098 * m/amdx86-64.h: Don't redefine XPNTR.
12099
12100 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
12101 of VALMASK.
12102
12103 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
12104 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
12105 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
12106
12107 * lisp.h (VALMASK): Only define for non-union type.
12108 (MARKBIT): Remove.
12109 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
12110 (XTYPE): Define unconditionally.
12111 (XSETTYPE): Remove one more remnant.
12112 (EQ): Define differently for the union and non-union cases.
12113 (INTMASK): New bit mask.
12114 (struct Lisp_Marker): Move down to prepare for upcoming patch.
12115 (GC_EQ): Delegate to EQ.
12116
12117 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
12118
12119 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12120
12121 * xterm.c (x_window_to_scroll_bar): Move check of display to
12122 where window_id is compared.
12123
12124 2003-11-17 Kim F. Storm <storm@cua.dk>
12125
12126 * dispextern.h (struct it): New member first_vpos.
12127
12128 * xdisp.c (start_display): Set it->first_vpos.
12129 (try_window_id): Use first_vpos to start display in first _text_
12130 line if no reusable lines at start of window with header line.
12131
12132 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12133
12134 * w32fns.c (XPutPixel):
12135 * w32bdf.c (w32_init_bdf_font):
12136 * sunfns.c (sel_read):
12137 * process.c (Fmake_network_process):
12138 * frame.c (store_frame_param):
12139 * fontset.c (Fset_fontset_font):
12140 * emacs.c (shut_down_emacs):
12141 * ccl.c (ccl_driver): Remove period at end of error message.
12142
12143 * config.in: Regenerate.
12144
12145 * xfns.c (x_window_to_frame, x_any_window_to_frame)
12146 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12147 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
12148 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
12149 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
12150
12151 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
12152
12153 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
12154 (XTmouse_position, handle_one_xevent): Pass Display* to
12155 x_window_to_scroll_bar.
12156 (x_window_to_scroll_bar): Take a Display* argument.
12157 Check that display for frame is equal to Display* argument.
12158 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
12159 x_display_info_for_display instead. Use Display in xev instead
12160 of GDK_DISPLAY.
12161 (x_dispatch_event): Call x_display_info_for_display.
12162 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
12163 (x_connection_closed): Call xg_display_close for GTK.
12164 (x_term_init): Call xg_display_open for additional displays.
12165 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
12166 for GTK.
12167
12168 * xmenu.c (single_menu_item, mouse_position_for_popup)
12169 (x_activate_menubar): Formatting adjustments.
12170
12171 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
12172 adjustments.
12173
12174 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
12175 (xg_display_close, xg_create_default_cursor)
12176 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
12177 handling.
12178 (xg_left_ptr_cursor): Remove.
12179 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
12180 cursor here.
12181 (xg_win_to_widget): Take Display* argument, call
12182 gdk_xid_table_lookup_for_display.
12183 (xg_create_frame_widgets, xg_get_file_name, create_menus)
12184 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
12185 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
12186 in FRAME_X_DISPLAY_INFO.
12187 (xg_get_scroll_id_for_window): Take Display* argument.
12188 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
12189 (xg_initialize): Remove xg_left_ptr_cursor.
12190
12191 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
12192 Display* argument.
12193 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
12194
12195 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12196
12197 * xterm.c (x_detect_focus_change): Do not change focus frame for
12198 Enter/LeaveNotify if the current focus frame has explicit focus.
12199
12200 2003-11-14 Kim F. Storm <storm@cua.dk>
12201
12202 * dispnew.c (update_text_area): Fix redisplay error when hscroll
12203 is active and first glyph is only partially visible.
12204
12205 2003-11-13 Kenichi Handa <handa@m17n.org>
12206
12207 * xdisp.c (select_frame_for_redisplay): New function.
12208 (redisplay_internal): Record also selected_frame for
12209 unwind_redisplay. Call select_frame_for_redisplay before
12210 redrawing each frame.
12211 (unwind_redisplay): Argument changed to a cons.
12212
12213 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
12214
12215 * fns.c (Fstring_to_multibyte): Doc fix.
12216
12217 2003-11-11 Kenichi Handa <handa@m17n.org>
12218
12219 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12220
12221 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12222
12223 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
12224 program specified positions.
12225
12226 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12227
12228 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
12229
12230 2003-11-08 Kenichi Handa <handa@m17n.org>
12231
12232 * Makefile.in (lisp): Add kannada.el.
12233 (shortlisp): Likewise.
12234
12235 2003-11-07 Kenichi Handa <handa@m17n.org>
12236
12237 * coding.c (coding_allocate_composition_data):
12238 Reset coding->composing to COMPOSITION_NO.
12239 (coding_restore_composition): Detect invalid composition data.
12240 Give Fstring and Fvector a Lispy integer, not C int.
12241
12242 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
12243
12244 * floatfns.c (Flogb): Don't use VALMASK.
12245
12246 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
12247 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
12248
12249 * lisp.h (XINT): Move the cast to clarify what is going on.
12250 (GCTYPEMASK, XSETTYPE): Remove.
12251 (XGCTYPE): Make it an alias of XTYPE.
12252
12253 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12254
12255 * xterm.c (x_term_init): Fix formatting.
12256
12257 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12258
12259 * gtkutil.h (xg_have_tear_offs): Declare.
12260 (xg_keep_popup, xg_did_tearoff): Remove.
12261
12262 * gtkutil.c: Remove variable xg_did_tearoff.
12263 (xg_have_tear_offs): New function.
12264 (tearoff_remove): Just decrease xg_detached_menus.
12265 (tearoff_activate): Increase xg_detached_menus and call
12266 tearoff_remove when tearoff is removed.
12267 (xg_keep_popup): Remove function.
12268 (create_menus): Give add_tearoff_p as argument to recursive
12269 call to create_menus.
12270 (xg_create_widget): Use variables instead of multiple
12271 strcmp. Tell create_menus to create tear off only for
12272 menu bar menus.
12273 (xg_update_menubar): Change title for a detached menu also.
12274 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
12275 of deep_p.
12276 (xg_initialize): Initialize xg_detached_menus, remove
12277 initialization of xg_did_tearoff.
12278
12279 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
12280 xg_have_tear_offs returns non-zero.
12281 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
12282 call to xg_keep_popup.
12283
12284 2003-11-01 Andrew Choi <akochoi@shaw.ca>
12285
12286 * macterm.c (XTread_socket): Handle menubar selection and grow
12287 window only for mouseDown events.
12288
12289 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12290
12291 * xterm.c (x_term_init): For GTK part, increase x_initialized
12292 to check for more than one display. Use error instead of return 0.
12293
12294 2003-10-31 Andrew Choi <akochoi@shaw.ca>
12295
12296 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
12297 (copy_dysymtab): Call it.
12298
12299 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
12300
12301 * eval.c (Fdefvaralias): Doc fix.
12302
12303 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
12304
12305 * data.c (Fsetplist): Doc fix.
12306
12307 2003-10-14 Lute Kamstra <lute@gnu.org>
12308
12309 * window.c (Fset_window_fringes): Clarify docstring.
12310
12311 2003-10-14 Kim F. Storm <storm@cua.dk>
12312
12313 * window.c (Fset_window_margins): Simplify arg checking.
12314
12315 2003-10-13 Richard M. Stallman <rms@gnu.org>
12316
12317 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
12318 (print_partial_compiled_pattern): Replace assert with a printout.
12319 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
12320
12321 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
12322
12323 * window.c (Fset_window_margins): Allow only integers as args.
12324 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
12325 Doc fixes.
12326
12327 2003-10-13 Lute Kamstra <lute@gnu.org>
12328
12329 * window.c (Fset_window_fringes): Elaborate docstring.
12330
12331 2003-10-12 Andrew Choi <akochoi@shaw.ca>
12332
12333 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
12334
12335 * s/darwin.h (GC_MARK_STACK): Define.
12336
12337 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12338
12339 * window.c (shrink_windows): New function.
12340 (size_window): Call shrink_windows to calculate window sizes when
12341 shrinking frame with more than one window.
12342
12343 2003-10-12 Kim F. Storm <storm@cua.dk>
12344
12345 * xdisp.c (compute_fringe_widths): Doc fix.
12346
12347 2003-10-08 Kenichi Handa <handa@m17n.org>
12348
12349 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
12350
12351 2003-10-07 Kenichi Handa <handa@m17n.org>
12352
12353 * coding.c (Qcoding_system_define_form): New variable.
12354 (syms_of_coding): Intern and staticpro it.
12355 (Fcheck_coding_system): Try to autoload the definition of
12356 CODING-SYSTEM.
12357
12358 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
12359
12360 * fns.c (Frequire): Doc fix.
12361
12362 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12363
12364 * xfns.c (Fx_send_client_event): New function as a base for
12365 manipulating extended window manager hints.
12366 (Fx_send_client_event): Remove unused variable s.
12367
12368 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
12369 that function is removed.
12370
12371 * xterm.c (x_set_offset): Use move_offset_left/top instead of
12372 x/y_pixels_outer_diff.
12373 (x_check_expected_move): Calculate move_offset_left/top.
12374
12375 * xterm.h (struct x_output): New members: move_offset_top/left.
12376
12377 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
12378 call x_set_offset directly.
12379
12380 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
12381
12382 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
12383
12384 * xterm.c (x_delete_display): Free font names and font_encoder
12385 in dpyinfo->font_table.
12386
12387 * xfns.c (Fx_close_connection): Only call XFreeFont here.
12388 Move xfree of font names to x_delete_display.
12389
12390 * xterm.h (struct x_display_info): New member, wm_type.
12391 (struct x_output): New members, expected_top/left and
12392 check_expected_move.
12393
12394 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
12395 is received.
12396 (handle_one_xevent): Rename x_check_expected_move from
12397 x_check_fullscreen_move.
12398 (x_set_offset): Only add WM decoration sizes to modified_top/left
12399 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
12400 (x_check_expected_move): Rename from x_check_fullscreen_move.
12401 Removed fullscreen specific code. Use check_expected_move,
12402 expected_left/top instead. Also, set wm_type.
12403 (x_term_init): Initialize wm_type to unknown.
12404
12405 * frame.c (x_fullscreen_move): Remove addition of WM decoration
12406 sizes to move_x/y.
12407
12408 2003-10-03 Kenichi Handa <handa@m17n.org>
12409
12410 * macterm.c (x_load_font): Clear all members of FONTP before start
12411 filling them.
12412
12413 2003-10-02 Kenichi Handa <handa@m17n.org>
12414
12415 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
12416 before calling find_ccl_program_func. Call find_ccl_program_func
12417 only when fontp->font_encoder is not NULL.
12418
12419 * xterm.c (x_load_font): Clear all members of FONTP before start
12420 filling them.
12421
12422 2003-10-03 John Paul Wallington <jpw@gnu.org>
12423
12424 * keymap.c (map_keymap): Don't abort when binding is a vector.
12425
12426 2003-10-02 Jason Rumney <jasonr@gnu.org>
12427
12428 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
12429 Sync dependencies with Makefile.in.
12430 (alloca.o): Remove.
12431
12432 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
12433 filling them.
12434
12435 * w32bdf.c (w32_load_bdf_font): Likewise.
12436
12437 2003-09-30 Richard M. Stallman <rms@gnu.org>
12438
12439 * term.c (set_tty_color_mode): Calculate current_mode_spec
12440 regardless of value of VAL.
12441
12442 * intervals.c (graft_intervals_into_buffer):
12443 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
12444 Handle over_used when splitting UNDER.
12445
12446 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12447
12448 * regex.c (regex_compile): Free the stack when returning from function.
12449
12450 2003-09-28 Kenichi Handa <handa@m17n.org>
12451
12452 * fontset.c (Finternal_char_font): Change return value to
12453 cons (FONT-NAME . GLYPH-CODE).
12454
12455 2003-09-28 Eli Zaretskii <eliz@gnu.org>
12456
12457 * term.c (tty_setup_colors): Treat any negative argument as -1.
12458
12459 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
12460
12461 * process.c (send_process): Delete unused temp_buf.
12462
12463 2003-09-26 Dave Love <fx@gnu.org>
12464
12465 * xterm.c (x_bitmap_mask): Declare.
12466
12467 2003-09-25 Dave Love <fx@gnu.org>
12468
12469 * Makefile.in (fns.o): Depend on md5.h.
12470
12471 2003-09-25 Kim F. Storm <storm@cua.dk>
12472
12473 * window.c (set_window_buffer): Fix redisplay problems when
12474 switching between buffers with different display margin widths.
12475
12476 2003-09-23 Kim F. Storm <storm@cua.dk>
12477
12478 * process.c (set_socket_option): Fix :bindtodevice option.
12479 (Fset_network_process_option): Update process contact list when
12480 setting option succeeds.
12481 (Fmake_network_process): Doc fix.
12482
12483 2003-09-23 Dave Love <fx@gnu.org>
12484
12485 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
12486
12487 2003-09-22 Eli Zaretskii <eliz@gnu.org>
12488
12489 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
12490 color mode is an integer number (it could be -1).
12491
12492 2003-09-22 Richard M. Stallman <rms@gnu.org>
12493
12494 * intervals.c (graft_intervals_into_buffer): Correct the main loop
12495 in the case where OVER is longer than UNDER.
12496
12497 2003-09-22 Masatake YAMATO <jet@gyve.org>
12498
12499 * window.c (Fset_window_scroll_bars): Validate the value of
12500 `vertical_type'.
12501
12502 2003-09-21 Kim F. Storm <storm@cua.dk>
12503
12504 * frame.c (Vdefault_frame_scroll_bars): New variable.
12505 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
12506 (syms_of_frame): DEFVAR_LISP it, and initialize according to
12507 window-system default scroll bar position.
12508
12509 * window.c (Fwindow_scroll_bars): Doc fix.
12510
12511 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12512
12513 * xterm.c (x_set_offset): Take window manager decorations into account.
12514
12515 2003-09-19 Richard M. Stallman <rms@gnu.org>
12516
12517 * atimer.h: Don't include lisp.h.
12518 (P_): Define it here (as well as elsewhere).
12519
12520 * print.c (Fprin1_to_string): Move the PRINTPREPARE
12521 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
12522
12523 * data.c (Fvariable_binding_locus): New function.
12524 (syms_of_data): defsubr it.
12525 (Flocal_variable_p): Delete duplicate call to indirect_variable.
12526
12527 2003-09-18 Dave Love <fx@gnu.org>
12528
12529 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
12530
12531 * process.c (Fnetwork_interface_info): Fix type error.
12532 (Fnetwork_interface_list): Doc fix.
12533 (read_process_output, read_process_output): Delete unused var.
12534
12535 2003-09-17 Kim F. Storm <storm@cua.dk>
12536
12537 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
12538 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
12539 (Fnetwork_interface_info): Check that ifreq struct has required
12540 fields before accessing them; this requires that those fields are
12541 defined as macros, which may be too restrictive on some platforms,
12542 but it is better than failing on other platforms.
12543 (syms_of_process): Only defsubr above fns when included.
12544
12545 2003-09-17 Dave Love <fx@gnu.org>
12546
12547 * unexalpha.c: Don't include varargs.h.
12548
12549 2003-09-17 Kim F. Storm <storm@cua.dk>
12550
12551 * process.c (Fset_process_sentinel): Add sentinel to childp plist
12552 for network process.
12553 (socket_options): Add `:' prefix to option names. Add optbit field.
12554 (set_socket_option): Remove no_error arg and special handling of s < 0.
12555 Return 1<<optbit for known option, 0 for unknown.
12556 Do not interpret 0 as false for boolean option (only nil).
12557 Pass failed option and value to report_file_error.
12558 (Fset_network_process_options): Replace by Fset_network_process_option.
12559 (Fset_network_process_option): New function to set just one option.
12560 (Fmake_network_process): Allow :coding arg to be a cons.
12561 Allow :server arg to be an integer specifying backlog size.
12562 Remove :options arg, and allow options to be specified directly
12563 as :KEY, VALUE pairs. Parse these options before binding socket.
12564 As before, :reuseaddr t is default for a server process, but this
12565 can now be disabled by specifying :reuseaddr nil.
12566 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
12567 (init_process): Availability of network options is now checked with
12568 simpler syntax (featurep 'make-network-process :OPTION); use loop to
12569 setup features.
12570 (syms_of_process): Fix defsubr's for the replaced functions.
12571
12572 2003-09-16 Dave Love <fx@gnu.org>
12573
12574 * Makefile.in: Depend on coding.h.
12575
12576 2003-09-14 Kim F. Storm <storm@cua.dk>
12577
12578 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
12579 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
12580 (syms_of_process): Defsubr them.
12581
12582 * config.in: Regenerate.
12583
12584 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
12585
12586 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
12587 * m/news-r6.h (XUNMARK): Remove.
12588 * m/mips.h (XUNMARK): Remove.
12589 * m/mips-siemens.h (XUNMARK): Remove.
12590 * m/iris4d.h (XUNMARK): Remove.
12591 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
12592
12593 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
12594
12595 * lisp.h (VALBITS): Don't remove 1 for the markbit.
12596 (union Lisp_Object): Use unsigned int for types. Remove markbit.
12597 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
12598 (XTYPE): Use unsigned right-shift.
12599 (XMARKBIT, XMARK, XUNMARK): Remove.
12600
12601 * alloc.c (init_intervals, init_symbol, init_marker):
12602 Don't preallocate anything.
12603 (Fgarbage_collect, mark_object): Ignore the markbit.
12604
12605 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
12606
12607 2003-09-08 Lute Kamstra <lute@gnu.org>
12608
12609 * xdisp.c (pint2hrstr): New function.
12610 (decode_mode_spec): Add `%i' and `%I' specs.
12611 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
12612 for `mode-line-format'.
12613
12614 2003-09-07 Andreas Schwab <schwab@suse.de>
12615
12616 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
12617 avoid warning.
12618
12619 2003-09-07 Eli Zaretskii <eliz@gnu.org>
12620
12621 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
12622
12623 2003-09-03 Kim F. Storm <storm@cua.dk>
12624
12625 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
12626 change (superseded by 2002-08-30 change); the default blink-off
12627 cursor is now again "no cursor".
12628
12629 2003-09-01 Jason Rumney <jasonr@gnu.org>
12630
12631 * makefile.w32-in (alloca.o): Remove.
12632 (coding.o): Depend on intervals.h
12633 (emacs.o, bytecode.o): Depend on window.h
12634
12635 2003-09-01 Dave Love <fx@gnu.org>
12636
12637 * Makefile.in (alloca.o): Remove commands.
12638 (coding.o): Depend on intervals.h composite.h window.h.
12639 (emacs.o): Depend on window.h keyboard.h keymap.h.
12640 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
12641 (bytecode.o): Depend on window.h.
12642
12643 2003-08-31 Jason Rumney <jasonr@gnu.org>
12644
12645 * w32term.c (w32_per_char_metric): Allow cached metrics to be
12646 returned even when font_type is unknown.
12647
12648 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
12649
12650 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12651
12652 * xterm.c (x_term_init): Initialize new fields in x_display_info.
12653
12654 * xterm.h (struct x_display_info): Add red/green/blue_bits and
12655 *_offset.
12656
12657 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
12658 calculate pixel value.
12659
12660 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
12661
12662 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
12663 Don't tell redisplay display is accurate when it's actually been
12664 paused for pending input.
12665
12666 2003-08-29 Richard M. Stallman <rms@gnu.org>
12667
12668 * dispnew.c (adjust_glyph_matrix): Call window_box
12669 whenever W is nonzero.
12670
12671 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
12672 (Fkill_local_variable, Fmake_variable_frame_local)
12673 (Flocal_variable_p, Flocal_variable_if_set_p):
12674 Use indirect_variable to trace thru variable aliases.
12675
12676 * config.in: Updated.
12677
12678 * callint.c (Fcall_interactively): Save and restore
12679 Vthis_command, Vthis_original_command, real_this_command,
12680 and current_kboard->Vlast_command.
12681
12682 * abbrev.c (Fexpand_abbrev): Insert before deleting.
12683
12684 2003-08-29 Gerd Moellmann <gerd@gnu.org>
12685
12686 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
12687
12688 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
12689
12690 * coding.c (decode_coding_iso2022): Initialize local variable c2.
12691 (decode_coding_sjis_big5): Likewise.
12692
12693 2003-08-27 Jason Rumney <jasonr@gnu.org>
12694
12695 * w32.c (sys_pipe): Protect against file descriptor overflow.
12696
12697 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
12698
12699 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
12700
12701 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
12702
12703 * xfns.c (Vgtk_version_string): New variable.
12704 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
12705
12706 2003-08-24 Eli Zaretskii <eliz@gnu.org>
12707
12708 * term.c (term_init): Remove `const' from buffer_size's declaration.
12709
12710 * Makefile.in (msdos.o): Depend on intervals.h.
12711
12712 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
12713
12714 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12715
12716 * xterm.h (struct x_display_info): New fields: client_leader_window
12717 and Xatom_wm_client_leader.
12718
12719 * xterm.c (x_initialize): Move call to x_session_initialize to ...
12720 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
12721
12722 * xsmfns.c (create_client_leader_window): New function.
12723 (x_session_initialize): Call create_client_leader_window, take
12724 dpyinfo as argument.
12725
12726 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
12727
12728 * Makefile.in (xsmfns.o): Add more depenedencies.
12729
12730 2003-08-21 Dave Love <fx@gnu.org>
12731
12732 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
12733
12734 2003-08-21 Kenichi Handa <handa@m17n.org>
12735
12736 * term.c (term_init): Fix previous change; don't rely on the
12737 length of `buffer' if TERMINFO is defined.
12738
12739 2003-08-20 Dave Love <fx@gnu.org>
12740
12741 * atimer.h: Include lisp.h.
12742
12743 * lisp.h (EMACS_LISP_H): New.
12744 (popup_activated_flag): Don't declare.
12745
12746 * alloca.c: Some merging with gnulib. Change logic and doc
12747 concerning (x)malloc/(x)free -- no longer Emacs-specific.
12748 [DO_BLOCK_INPUT]: Don't include lisp.h.
12749 (xmalloc, xfree): Declare.
12750 (malloc): Don't declare.
12751
12752 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
12753 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
12754 atimer.h, blockinput.h.
12755
12756 * alloc.c (lisp_align_malloc): Change type of `aligned'.
12757
12758 * alloca.s: Remove.
12759
12760 2003-08-19 Gerd Moellmann <gerd@gnu.org>
12761
12762 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
12763 use -lncurses.
12764
12765 * term.c (term_init): Use a buffer of size 4096 for tgetent since
12766 FreeBSD returns something longer than 2044. Abort if the end of
12767 the buffer is overwritten.
12768
12769 2003-08-19 Miles Bader <miles@gnu.org>
12770
12771 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
12772
12773 2003-08-19 Gerd Moellmann <gerd@gnu.org>
12774
12775 * alloc.c (lisp_align_malloc): Check for memory full when
12776 allocating ablocks, which also avoids freeing a pointer into an
12777 ablocks structure.
12778
12779 * puresize.h (BASE_PURESIZE): Increase to 1100000.
12780
12781 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
12782
12783 2003-08-16 Richard M. Stallman <rms@gnu.org>
12784
12785 * editfns.c (Fencode_time): Doc fix.
12786
12787 2003-08-16 David Ponce <david@dponce.com>
12788
12789 * fileio.c (Fwrite_region): Fix conditional expression to issue
12790 the right message.
12791
12792 2003-08-16 Juri Linkov <juri@jurta.org>
12793
12794 * syntax.c (Fforward_word): Argument changed to optional.
12795 Set default value to 1.
12796
12797 2003-08-15 Kenichi Handa <handa@m17n.org>
12798
12799 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
12800 what autoscaled.
12801 (best_matching_font): Once we find a better scalable font, set
12802 non_scalable_has_exact_height_p to 1.
12803 (try_font_list): Call try_alternative_families to try any family
12804 with the given registry.
12805
12806 2003-08-09 Andreas Schwab <schwab@suse.de>
12807
12808 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
12809
12810 * print.c (print_string): Fix printing of multibyte string with
12811 nontrivial printcharfun.
12812
12813 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12814
12815 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
12816
12817 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
12818
12819 2003-07-31 Kenichi Handa <handa@m17n.org>
12820
12821 * process.c (read_process_output): Return the actually read bytes
12822 instead of the result of decoding.
12823
12824 2003-07-31 Kenichi Handa <handa@m17n.org>
12825
12826 * xterm.h (struct x_bitmap_record): New member have_mask.
12827
12828 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
12829 to 0.
12830 (x_create_bitmap_from_file): Likewise.
12831 (x_destroy_bitmap): Check have_mask member before freeing a mask.
12832 (x_destroy_all_bitmaps): Likewise.
12833 (x_create_bitmap_mask): Set have_mask member to 1.
12834
12835 2003-07-30 Richard M. Stallman <rms@gnu.org>
12836
12837 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
12838
12839 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12840
12841 * gtkutil.c (xg_mark_data): Update calls to mark_object.
12842
12843 2003-07-29 Richard M. Stallman <rms@gnu.org>
12844
12845 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
12846 Conditionalize XIM code on HAVE_XIM.
12847
12848 * fns.c (Fclear_string): New function.
12849 (syms_of_fns): defsubr it.
12850
12851 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
12852
12853 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
12854
12855 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
12856
12857 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
12858
12859 * buffer.c (delete_all_overlays): New function.
12860 * buffer.h (delete_all_overlays): Declare.
12861 * coding.c (run_pre_post_conversion_on_str):
12862 * print.c (temp_output_buffer_setup):
12863 * fileio.c (Finsert_file_contents):
12864 * minibuf.c (get_minibuffer): Use it.
12865
12866 2003-07-22 Andrew Choi <akochoi@shaw.ca>
12867
12868 * unexmacosx.c (unexec_regions_sort_compare):
12869 (unexec_regions_merge): New functions. Sort and merge unexec
12870 regions before dumping them.
12871
12872 2003-07-22 Dave Love <fx@gnu.org>
12873
12874 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
12875
12876 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
12877
12878 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
12879 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
12880 MARKBIT as the gcmarkbit for strings.
12881
12882 2003-07-21 Richard M. Stallman <rms@gnu.org>
12883
12884 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
12885
12886 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
12887 (syms_of_fns): Corresponding change.
12888
12889 * alloc.c (syms_of_alloc): Doc fixes.
12890
12891 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
12892
12893 * s/netbsd.h: Use -Wl syntax.
12894
12895 2003-07-17 Richard M. Stallman <rms@gnu.org>
12896
12897 * xterm.c (xim_initialize): Redo 6/24 change.
12898
12899 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
12900
12901 * buffer.c (copy_overlays): Use EMACS_INT for positions.
12902 (Fswitch_to_buffer): Don't signal an error when switching to the same
12903 buffer in a dedicated window.
12904
12905 * alloc.c: Use bitmaps for cons, as was done for floats.
12906 (init_float, init_cons): Let the normal code allocate the first block.
12907 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
12908 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
12909 New macros.
12910 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
12911 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
12912 (live_cons_p): Check the pointer is not past the `conses' array.
12913 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
12914 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
12915 (survives_gc_p): Use CONS_MARKED_P and simplify.
12916 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
12917
12918 2003-07-13 Paul Eggert <eggert@twinsun.com>
12919
12920 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
12921 puts it into BSS instead, at least on Solaris 8 and 9.
12922 This is a valid optimization, and it may occur on other platforms,
12923 so Emacs should not assume that initializing a static variable to
12924 zero puts it into data.
12925 * alloc.c (pure, staticvec):
12926 Initialize these arrays to nonzero, so that they're not
12927 put into BSS by that optimization.
12928
12929 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
12930
12931 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
12932 (lisp_align_malloc): Use posix_memalign is available.
12933 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
12934 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
12935 for consistency. Update users.
12936
12937 2003-07-13 Richard M. Stallman <rms@gnu.org>
12938
12939 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
12940
12941 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
12942
12943 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
12944 and use the Gtk+ function gtk_window_icon_from_file if available.
12945
12946 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
12947 handle mask of bitmaps.
12948 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
12949 mask property.
12950 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
12951
12952 * xterm.h (xg_set_icon): New function.
12953
12954 2003-07-12 Paul Eggert <eggert@twinsun.com>
12955
12956 * unexelf.c (unexec): Consider a section to precede the .bss
12957 section if its addresses overlap that of .bss.
12958
12959 2003-07-12 Richard M. Stallman <rms@gnu.org>
12960
12961 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
12962
12963 * config.in (HAVE_CRTIN): Add #undef.
12964 (INLINE): Really inline only if OPTIMIZE is defined.
12965
12966 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
12967 END_FILES_1.
12968 (START_FILES_1, END_FILES_1): New macros (conditional).
12969 (LD_SWITCH_SYSTEM_TEMACS): Define.
12970
12971 * s/openbsd.h: Don't include bsd4-3.h.
12972 (TERMINFO): Define.
12973 (LIBS_TERMCAP): Define.
12974 (LD_SWITCH_SYSTEM): Define (two definitions).
12975
12976 * xfns.c: Include libpng/png.h instead of png.h.
12977
12978 2003-07-11 Andreas Schwab <schwab@suse.de>
12979
12980 * buffer.c (modify_overlay): Update prototype.
12981 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
12982 Likewise.
12983
12984 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12985
12986 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
12987 (struct interval): Move to intervals.h.
12988 (struct Lisp_Marker): Use EMACS_INT for position info.
12989 (forward_point): Remove prototype of defunct function.
12990 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
12991 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
12992 (syms_of_textprop, set_text_properties): Remove prototypes that are
12993 already in intervals.h.
12994
12995 * intervals.h (struct interval): Move from lisp.h.
12996 Use EMACS_INT for position and size info.
12997
12998 * coding.c: Include intervals.h for Fset_text_properties.
12999
13000 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13001 position and length information.
13002
13003 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13004
13005 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13006 position and length information.
13007
13008 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13009
13010 Change overlays_after and overlays_before so the overlays themselves
13011 are linked into lists, rather than using cons cells. After all each
13012 Lisp_Misc already occupies 5 words, so we can add a `next' field to
13013 Lisp_Overlay for free and save up one cons cell per overlay (not
13014 to mention one indirection when traversing the list of overlay).
13015
13016 * lisp.h (struct Lisp_Overlay): New field `next'.
13017
13018 * buffer.h (struct buffer): Change overlays_before and overlays_after
13019 from Lisp lists of overlays to pointers to overlays.
13020
13021 * buffer.c (overlay_strings, recenter_overlay_lists):
13022 Fix typo in eassert in last commit.
13023 (unchain_overlay): New function.
13024 (add_overlay_mod_hooklist): Use AREF.
13025 (copy_overlays, reset_buffer, overlays_at, overlays_in)
13026 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
13027 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
13028 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
13029 (report_overlay_modification, evaporate_overlays, init_buffer_once):
13030 Adjust to new type of overlays_(before|after).
13031
13032 * alloc.c (mark_object): Mark the new `next' field of overlays.
13033 (mark_buffer): Manually mark the overlays_(after|before) fields.
13034
13035 * coding.c (run_pre_post_conversion_on_str):
13036 * editfns.c (overlays_around):
13037 * xdisp.c (load_overlay_strings):
13038 * fileio.c (Finsert_file_contents):
13039 * indent.c (current_column):
13040 * insdel.c (signal_before_change, signal_after_change):
13041 * intervals.c (set_point_both):
13042 * print.c (temp_output_buffer_setup): Use new type for
13043 overlays_(before|after).
13044
13045 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
13046
13047 * buffer.c (report_overlay_modification): Don't run hooks while
13048 traversing the list of overlays.
13049
13050 * buffer.h (struct buffer): Use an int for overlay_center.
13051 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13052 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13053
13054 * buffer.c (reset_buffer, recenter_overlay_lists)
13055 (adjust_overlays_for_insert, adjust_overlays_for_delete)
13056 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
13057 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
13058 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13059 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13060
13061 * xdisp.c (fast_find_position): Remove unused var.
13062
13063 * cmds.c (Qexpand_abbrev): New sym.
13064 (syms_of_cmds): Initialize it.
13065 (internal_self_insert): Use it to call expand-abbrev.
13066
13067 2003-07-09 Kim F. Storm <storm@cua.dk>
13068
13069 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
13070 was configured with --without-xim.
13071 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
13072
13073 2003-07-07 Richard M. Stallman <rms@gnu.org>
13074
13075 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
13076
13077 * alloc.c (Fgarbage_collect): Doc fix.
13078
13079 2003-07-07 Nozomu Ando <nand@mac.com>
13080
13081 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
13082
13083 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13084
13085 * minibuf.c (read_minibuf): UNGCPRO before returning.
13086 (Ftry_completion, Fall_completions): Doc fix.
13087
13088 * alloc.c (live_float_p): Check that p is not past the `floats' array,
13089 now that `floats' is not the last element of the struct any more.
13090
13091 2003-07-06 Jason Rumney <jasonr@gnu.org>
13092
13093 * w32term.h (ClipboardSequence_Proc): New type.
13094
13095 * w32fns.c (clipboard_sequence_fn): New variable.
13096 (globals_of_w32fns): Initialize it.
13097
13098 * w32select.c (last_clipboard_sequence_number): New variable.
13099 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
13100 number if possible.
13101
13102 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13103
13104 * m/amdx86-64.h (MARKBIT):
13105 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
13106 MARKBIT and ARRAY_MARK_FLAG any more.
13107
13108 * m/hp800.h (XSETMARKBIT):
13109 * m/sr2k.h (XSETMARKBIT):
13110 * lisp.h (XSETMARKBIT): Remove unused macro.
13111
13112 * lisp.h (mark_object): Change prototype.
13113
13114 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
13115 (last_marked): Change accordingly.
13116 (mark_interval, mark_maybe_object, mark_maybe_pointer)
13117 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
13118 (mark_buffer): Update calls to mark_object.
13119
13120 * bytecode.c (mark_byte_stack):
13121 * fns.c (sweep_weak_table):
13122 * keyboard.c (mark_kboards): Update calls to mark_object.
13123
13124 2003-07-06 Jason Rumney <jasonr@gnu.org>
13125
13126 * alloc.c (struct ablock): Only include padding when there is some.
13127
13128 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
13129
13130 * alloc.c (ALIGN): Add casts to simplify usage.
13131 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
13132 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
13133 (struct ablock, struct ablocks): New types.
13134 (free_ablock): New global var.
13135 (lisp_align_malloc, lisp_align_free): New functions.
13136 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
13137 (struct float_block): Reorder and add gcmarkbits.
13138 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
13139 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
13140 (init_float, make_float): Use lisp_align_malloc.
13141 (free_float, live_float_p): Don't use `type' any more.
13142 (make_float): Use FLOAT_UNMARK to access to mark bit.
13143 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
13144 Use FLOAT_MARKED_P to access the mark bit.
13145 (pure_alloc): Simplify use of ALIGN.
13146 (mark_object): Use FLOAT_MARK to access the mark bit.
13147 (gc_sweep): Use new macros to access the float's mark bit.
13148 (init_alloc_once): Init free_ablock.
13149
13150 * lisp.h (struct Lisp_Float): Remove unused field `type'.
13151
13152 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
13153
13154 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
13155 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
13156 (allocate_buffer): Move.
13157 (string_bytes): Don't mask markbit of `size_byte'.
13158 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13159 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
13160 Use the `size' field of buffers (rather than the `name' field) for
13161 the mark bit, as is done for all other vectorlike objects.
13162 Use the new macros to access the mark bit of vectorlike objects.
13163
13164 2003-06-26 Richard M. Stallman <rms@gnu.org>
13165
13166 * puresize.h (BASE_PURESIZE): Increment base size.
13167
13168 * xdisp.c (fast_find_position): Enable Gerd's new definition.
13169
13170 * xterm.c (xim_initialize): Undo previous change.
13171
13172 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
13173
13174 * alloc.c (survives_gc_p): Simplify.
13175
13176 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
13177
13178 * window.c (Fset_window_dedicated_p): Simplify.
13179 (display_buffer_1): Don't raise the win from which minibuf was entered.
13180 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
13181 (Fminibuffer_selected_window): Simplify.
13182
13183 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
13184
13185 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
13186 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
13187
13188 * insdel.c (check_markers, adjust_markers_for_delete)
13189 (adjust_markers_for_insert, adjust_markers_for_replace)
13190 (prepare_to_modify_buffer, RESTORE_VALUE):
13191 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
13192 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
13193 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
13194 * alloc.c (Fmake_marker, free_marker, gc_sweep):
13195 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
13196 * editfns.c (save_excursion_restore, transpose_markers):
13197 * window.c (delete_window):
13198 * xdisp.c (message_dolog): Update for new types.
13199
13200 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13201
13202 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
13203 (realize_default_face): Use default_face_done_p for the force_p
13204 argument to set_lface_from_font_name. Set default_face_done_p to one.
13205
13206 * frame.c (make_frame): Initialize default_face_done_p.
13207
13208 * frame.h (struct frame): Add default_face_done_p.
13209
13210 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
13211 will be defined.
13212
13213 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
13214
13215 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
13216 Initialize the new field `gcmarkbit'.
13217 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
13218 (mark_interval_tree): Don't mark the tree separately from the nodes.
13219 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
13220 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13221 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
13222
13223 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
13224 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
13225 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
13226 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
13227 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
13228
13229 2003-06-24 Dave Love <fx@gnu.org>
13230
13231 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
13232
13233 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
13234 from gnulib.
13235
13236 2003-06-21 Richard M. Stallman <rms@gnu.org>
13237
13238 * fileio.c (Fwrite_region): Alternate messages
13239 for append and partial write.
13240
13241 * keyboard.c (read_key_sequence): When converting upcase fn key to
13242 downcase, update fkey and keytran so `backspace' gets translated.
13243
13244 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
13245
13246 * process.c (wait_reading_process_input): Don't signal SIGIO
13247 in batch mode.
13248
13249 2003-06-17 Kenichi Handa <handa@m17n.org>
13250
13251 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
13252 composite.h.
13253
13254 * xselect.c: Don't include charset.h, coding.h, composite.h.
13255 (Qforeign_selection): New variable.
13256 (syms_of_xselect): Intern and static it.
13257 (selection_data_to_lisp_data): Return a unibyte string made from
13258 data with `foreign-selection' text property.
13259
13260 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
13261
13262 * termhooks.h (EVENT_INIT): New macro.
13263
13264 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
13265
13266 * alloc.c (mark_kboards): Move to keyboard.c.
13267
13268 * keyboard.c (record_asynch_buffer_change, read_avail_input):
13269 * xterm.c (x_dispatch_event):
13270 * xmenu.c (find_and_call_menu_selection):
13271 * xdisp.c (handle_tool_bar_click):
13272 * w32menu.c (menubar_selection_callback):
13273 * sysdep.c (kbd_input_ast, read_input_waiting):
13274 * msdos.c (dos_rawgetc):
13275 * macterm.c (mac_check_for_quit_char):
13276 * macmenu.c (menubar_selection_callback):
13277 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
13278 data to kbd_buffer_store_event.
13279
13280 2003-06-15 Kim F. Storm <storm@cua.dk>
13281
13282 * xdisp.c (x_fix_overlapping_area): Always use area relative X
13283 to fix redisplay problem with tall characters (such as \e,AC\e(B).
13284
13285 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13286
13287 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
13288
13289 2003-06-12 Kenichi Handa <handa@m17n.org>
13290
13291 * fileio.c (Fwrite_region): Save and restore restriction.
13292
13293 2003-06-12 Dave Love <fx@gnu.org>
13294
13295 * alloca.c (alloca): Declare arg as size_t.
13296
13297 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
13298 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
13299
13300 2003-06-11 Dave Love <fx@gnu.org>
13301
13302 * search.c (shrink_regexp_cache): Use xrealloc.
13303 (syms_of_search): Use xmalloc.
13304
13305 2003-06-10 Kim F. Storm <storm@cua.dk>
13306
13307 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
13308 Adjust phys_cursor.x to be relative to window box, rather than
13309 text area before checking -- to ensure cursor is redrawn when
13310 exposing window.
13311 Note: This also fixes a similar (older) bug if display margins
13312 are present.
13313
13314 2003-06-06 Kenichi Handa <handa@m17n.org>
13315
13316 * coding.c (encoding_buffer_size): If coding->type is
13317 coding_type_ccl, double magnification on CRLF encoding.
13318
13319 2003-06-06 Jason Rumney <jasonr@gnu.org>
13320
13321 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
13322 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
13323
13324 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
13325 Mac too.
13326
13327 2003-06-05 Dave Love <fx@gnu.org>
13328
13329 * strftime.c: Merge changes from gnulib.
13330
13331 * mktime.c (__mktime_internal): Merge changes from gnulib
13332 involving year 69 and dst2.
13333
13334 Changes to merge with gnulib version and be consistent with the
13335 autoconf test:
13336
13337 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
13338 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
13339 [HAVE_LOCALE_H]: Include locale.h.
13340 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
13341
13342 2003-06-05 Kim F. Storm <storm@cua.dk>
13343
13344 * window.c (coordinates_in_window): Convert X and Y to window
13345 relative coordinates inside mode-line and header-line parts.
13346 Convert X and Y to margin area relative coordinates inside left
13347 and right display margin parts.
13348
13349 2003-06-05 Jason Rumney <jasonr@gnu.org>
13350
13351 * w32fns.c (add_system_logical_colors_to_map): New function.
13352 (Fx_open_connection): Use it.
13353
13354 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
13355
13356 * process.c (allocate_pty): Revert part of the previous patch.
13357 (Faccept_process_output): Simplify.
13358
13359 2003-06-04 Jason Rumney <jasonr@gnu.org>
13360
13361 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
13362
13363 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
13364 (lispy_mouse_wheel_names): Remove.
13365 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
13366 Always define drag_and_drop_syms.
13367
13368 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
13369 WHEEL_EVENT events.
13370
13371 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
13372
13373 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
13374
13375 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
13376
13377 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13378
13379 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
13380 menu item label.
13381
13382 2003-06-03 Richard M. Stallman <rms@gnu.org>
13383
13384 * window.c (Fwindow_edges): Doc fix.
13385 (Fwindow_pixel_edges, Fwindow_inside_edges)
13386 (Fwindow_inside_pixel_edges): New functions.
13387 (syms_of_window): defsubr them.
13388
13389 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
13390 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
13391
13392 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
13393
13394 * dispnew.c (Fsit_for): Don't lie about the number of args.
13395
13396 2003-06-02 Dave Love <fx@gnu.org>
13397
13398 * callproc.c: Use HAVE_FCNTL_H, not USG5.
13399 (syms_of_callproc) <process-environment>: Doc fix.
13400
13401 * doc.c: Use HAVE_FCNTL_H, not USG5.
13402
13403 * xfaces.c (font_rescale_ratio): Fix for K&R.
13404
13405 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
13406
13407 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
13408
13409 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
13410
13411 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
13412 (xg_create_frame_widgets): Use ENCODE_UTF_8.
13413
13414 * xterm.c (Qutf_8): Move to coding.c
13415
13416 * xmenu.c (ENCODE_MENU_STRING): New.
13417 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
13418 Use it.
13419
13420 * coding.h (ENCODE_UTF_8): New.
13421 (Qutf_8): Declare.
13422
13423 * coding.c (Qutf_8): New.
13424 (syms_of_coding): Intern it.
13425
13426 * fns.c: Doc fixes.
13427
13428 2003-06-02 Kenichi Handa <handa@m17n.org>
13429
13430 * buffer.c (Fset_buffer_multibyte): Fix previous change.
13431
13432 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
13433
13434 * lread.c (openp): Make sure STR is a string.
13435
13436 2003-06-01 David Ponce <david@dponce.com>
13437
13438 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
13439 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
13440
13441 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
13442 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
13443 (discard_mouse_events): Discard WHEEL_EVENT events too.
13444 (lispy_wheel_names, wheel_syms): New.
13445 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
13446 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
13447 (make_lispy_event): Add WHEEL_EVENT handler.
13448
13449 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
13450 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
13451 WHEEL_EVENT events.
13452
13453 2003-05-31 John Paul Wallington <jpw@gnu.org>
13454
13455 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
13456 timer are in lisp/emacs-lisp.
13457
13458 2003-05-31 Kenichi Handa <handa@m17n.org>
13459
13460 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
13461 region when a buffer is changed to unibyte.
13462
13463 * charset.h (VALID_LEADING_CODE_P): New macro.
13464 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
13465
13466 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
13467 is nonzero, accept multibyte form of eight-bit-control chars.
13468 (decode_composition_emacs_mule): Likewise.
13469 (decode_coding_emacs_mule): Likewise.
13470 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
13471 multibyte form of eight-bit-control chars.
13472
13473 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
13474 (Finsert_file_contents): If coding-system-for-read is bound to
13475 Qauto_save_coding, use the coding system emacs-mule with special
13476 setting for recovering a file.
13477 (choose_write_coding_system): On auto saving, use the coding
13478 system emacs-mule with special setting for auto saving.
13479 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
13480
13481 2003-05-30 Kenichi Handa <handa@m17n.org>
13482
13483 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
13484 properly before calling ccl_driver.
13485
13486 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
13487
13488 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
13489 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
13490 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
13491
13492 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
13493
13494 * xfaces.c (realize_default_face): Do not abort if lface is
13495 non-existent - reverts change from 2003-05-19.
13496
13497 2003-05-29 Kenichi Handa <handa@m17n.org>
13498
13499 * coding.c (decode_coding_iso2022): Pay attention to the byte
13500 sequence of CTEXT extended segment, and retain those bytes as is.
13501
13502 2003-05-28 Kenichi Handa <handa@m17n.org>
13503
13504 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
13505 of CODING_REPLACEMENT_CHARACTER.
13506 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
13507 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
13508 check this flag on encoding.
13509 (encode_coding_sjis_big5):
13510 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
13511 (Fset_terminal_coding_system_internal):
13512 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
13513 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
13514
13515 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
13516 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13517 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
13518
13519 2003-05-28 Richard M. Stallman <rms@gnu.org>
13520
13521 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
13522
13523 * eval.c (unbind_to): Move init of this_binding to separate statement.
13524
13525 2003-05-28 Kim F. Storm <storm@cua.dk>
13526
13527 * xdisp.c (expose_window): Fix error in calculation of
13528 window relative coordinates of area to redisplay.
13529
13530 2003-05-27 Jason Rumney <jasonr@gnu.org>
13531
13532 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
13533
13534 2003-05-27 David Ponce <david@dponce.com>
13535
13536 Handle W32 mouse wheel events as mouse click events, like in X.
13537
13538 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
13539 MOUSE_WHEEL_EVENT anymore.
13540
13541 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
13542 Scrolling down/up the mouse wheel is respectively mapped to mouse
13543 button 4 and 5.
13544 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
13545 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
13546 WM_MOUSEWHEEL events.
13547
13548 2003-05-27 Andreas Schwab <schwab@suse.de>
13549
13550 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
13551
13552 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
13553 partially visible line.
13554
13555 * alloc.c (Fgarbage_collect): Fix last change.
13556
13557 2003-05-26 John Paul Wallington <jpw@gnu.org>
13558
13559 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
13560
13561 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
13562
13563 * window.c (Fset_window_buffer): Add type of `keep_margins'.
13564 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
13565
13566 * window.h (window_box_text_cols): Declare.
13567
13568 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
13569 (x_draw_vertical_border): Remove unused var `f'.
13570
13571 * xfaces.c (build_scalable_font_name): Remove `unused var
13572 pixel_size' warning.
13573
13574 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
13575
13576 * unexelf.c (unexec): Remove `unused var n' warning.
13577
13578 * strftime.c (my_strftime_localtime_r): Remove `defined but
13579 unused' warning.
13580
13581 * process.c (allocate_pty): Remove `unused var stb' and
13582 `cp might be used uninitialized' warnings.
13583
13584 * dispnew.c (mode_line_string): Remove unused var `f'.
13585
13586 * coding.c (find_safe_codings): Remove unused var `i'.
13587
13588 * bytecode.c (Fbyte_code): Remove `unused val' warning.
13589
13590 * buffer.c (Fkill_buffer): Remove unused var `list'.
13591
13592 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
13593
13594 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13595
13596 * frame.c (make_frame): Condition want_fullscreen with
13597 HAVE_WINDOW_SYSTEM.
13598
13599 2003-05-25 Juanma Barranquero <lektu@terra.es>
13600
13601 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
13602 (Fwindow_scroll_bars): Fix typo in docstring.
13603
13604 2003-05-24 Kim F. Storm <storm@cua.dk>
13605
13606 The following changes serve several purposes:
13607
13608 1) Swap the position of fringes and display margins in windows, i.e.
13609 the fringes are now displayed between the margins and the text area
13610 (by default).
13611
13612 2) Allow fringe and scroll bar parameters to be set per-buffer and
13613 per-window (like display margins). Such settings are now stored
13614 in window configurations, preserved when frames are resized, and
13615 copied when windows are split vertically or horizontally.
13616 Several bugs related to display margins have been fixed.
13617
13618 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
13619
13620 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
13621 rather than FRAME_WIDTH (FRAME_FONT (f)).
13622
13623 5) Introduce a consistent naming of variables, members and macros
13624 depending on whether their value is measured in pixels or in
13625 canonical columns/lines. Pixel dimensions are named *_width and
13626 *_height, while canonical columns/lines are named *_cols and
13627 *_lines. Pixel positions are named *_x and *_y, while column/line
13628 positions are named *_col and *_line.
13629
13630 6) Consolidate more of the X, W32, and MAC gui code by moving
13631 common data into struct frame, and generalize it for the non-gui
13632 case by using suitable defaults.
13633
13634 7) Cleanup and consolidate the macros controlling frame and window
13635 layout into frame.h and window.h, and generalize the use of the
13636 various window_box_* functions (enhanced to handle the new fringe
13637 position and the per-window fringe and scroll bar settings).
13638
13639 * frame.h (struct frame): Rename members height to text_lines,
13640 width to text_cols, window_height to total_lines, window_width to
13641 total_cols, new_height to new_text_lines, new_width to
13642 new_text_cols. All uses changed.
13643 (struct frame): New members which consolidate common members of
13644 x_output, w32_output, and mac_output structures: left_pos,
13645 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
13646 win_gravity, size_hint_flags, border_width, internal_border_width,
13647 line_height, fringe_cols, left_fringe_width, right_fringe_width,
13648 want_fullscreen. All uses changed.
13649 (struct frame): New member column_width contaning the canonical
13650 column width, analogue to line_height. All uses changed.
13651 (struct frame): Rename members scroll_bar_pixel_width to
13652 config_scroll_bar_width, and scroll_bar_cols to
13653 config_scroll_bar_cols. All uses changed.
13654 (struct frame): New member scroll_bar_actual_width which
13655 consolidates and renames the vertical_scroll_bar_extra member of
13656 x_output, w32_output, and mac_output structures. All uses changed.
13657 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
13658 from x/w32/macterm.h files. All uses changed. Also change code
13659 which referred to f->output_data...->pixel_height.
13660 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
13661 from x/w32/macterm.h files. All uses changed. Also change code
13662 which referred to f->output_data...->pixel_width.
13663 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
13664 Also change code which referred to f->height.
13665 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
13666 Also change code which referred to f->width.
13667 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
13668 to update new_text_lines and new_text_cols members directly.
13669 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
13670 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
13671 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
13672 FRAME_SCROLL_BAR_COLS. All uses changed.
13673 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
13674 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
13675 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
13676 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
13677 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
13678 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
13679 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
13680 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
13681 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
13682 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
13683 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
13684 Unconditionally return line_height member (it now has proper value
13685 also for non-window frames).
13686 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
13687 return new column_width member (rather than the default font width).
13688 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
13689 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
13690 from x/w32/macterm.h files. Unconditionally return corresponding
13691 member of frame structure (they now have proper values also for
13692 non-window frames).
13693 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
13694 Calculate return value from left and right widths.
13695 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
13696 internal_border_width member (has proper value for non-window frame).
13697 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
13698 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
13699 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
13700 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
13701 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
13702 consolidated from xterm.h, macterm.h, and w32term.h.
13703 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
13704 consolidated from xterm.h, macterm.h, and w32term.h.
13705 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
13706 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
13707 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
13708 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
13709 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
13710 consolidated from x/mac/w32term.h.
13711 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
13712 consolidated from x/mac/w32term.h.
13713 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
13714 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
13715 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
13716 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
13717
13718 * window.h (struct window): Rename members left to left_col,
13719 top to top_line, height to total_lines, width to total_cols,
13720 left_margin_width to left_margin_cols, right_margin_width to
13721 right_margin_cols, orig_height to orig_total_lines, orig_top to
13722 orig_top_line. All uses changed.
13723 (struct window): New members left_fringe_width, right_fringe_width,
13724 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
13725 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
13726 New macros primarily used to simplify other macros.
13727 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
13728 referred to XINT (w->width).
13729 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
13730 referred to XINT (w->height).
13731 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
13732 referred to XINT (w->width) * canon_x_unit.
13733 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
13734 referred to XINT (w->height) * canon_y_unit.
13735 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
13736 referred to XINT (w->left).
13737 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
13738 all uses and code that referred to XINT (w->left) + XINT (w->width).
13739 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
13740 referred to XINT (w->top).
13741 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
13742 referred to XINT (w->top) + XINT (w->height).
13743 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
13744 referred to XINT (w->left) * canon_x_unit.
13745 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
13746 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
13747 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
13748 referred to XINT (w->top) * canon_y_unit.
13749 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
13750 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
13751 (WINDOW_LEFTMOST_P): New macro.
13752 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
13753 All uses changed.
13754 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
13755 All uses changed.
13756 (WINDOW_BOX_LEFT_EDGE_X): Rename from
13757 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
13758 Do not exclude left fringe width.
13759 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
13760 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
13761 Do not exclude fringe widths.
13762 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
13763 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
13764 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
13765 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
13766 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
13767 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
13768 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
13769 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
13770 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
13771 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
13772 New macros. Change code which referenced corresponding
13773 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
13774 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
13775 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
13776 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
13777 allow per-window scroll-bar settings.
13778 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
13779 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
13780 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
13781 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
13782 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
13783 FRAME_SCROLL_BAR_WIDTH.
13784 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
13785 (WINDOW_SCROLL_BAR_AREA_X): New macros.
13786 (WINDOW_HEADER_LINE_HEIGHT): Rename from
13787 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
13788 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
13789 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
13790 (WINDOW_BOX_TEXT_HEIGHT): Rename from
13791 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
13792 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
13793 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
13794 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
13795 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
13796 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
13797 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
13798 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
13799 (window_from_coordinates): Update prototype.
13800 (Fset_window_buffer): Update EXFUN.
13801 (set_window_buffer): Update prototype.
13802
13803 * dispextern.h (struct glyph_matrix): Rename members window_left_x
13804 to window_left_col, window_top_y to window_top_line. All uses
13805 changed.
13806 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
13807 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
13808 internal_border_width is now set to 0 for non-window frames.
13809 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
13810 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
13811 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
13812 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
13813 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
13814 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
13815 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
13816 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
13817 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
13818 Move to window.h and renamed [see window.h changes].
13819 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
13820 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
13821 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
13822 Use WINDOW_TOTAL_LINES.
13823 (frame_update_line_height): Remove prototype.
13824
13825 * buffer.h (struct buffer): Rename members measured in columns:
13826 left_margin_width to left_margin_cols, right_margin_width to
13827 right_margin_cols. All uses changed.
13828 New members left_fringe_width, right_fringe_width,
13829 fringes_outside_margins for per-buffer fringe settings.
13830 New members scroll_bar_width and vertical_scroll_bar_type for
13831 per-buffer scroll bar settings.
13832
13833 * buffer.c (init_buffer_once): Set buffer_defaults and
13834 buffer_local_flags for new buffer-local variables
13835 left_fringe_width, right_fringe_width, fringes_outside_margins,
13836 scroll_bar_width, and vertical_scroll_bar_type.
13837 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
13838 default-* variables for them.
13839
13840 * dispnew.c: Make (many) trivial substitutions for renamed and
13841 new macros in dispextern.h, frame.h and window.h.
13842 (mode_line_string): No need to adjust width for mode lines, as it
13843 is already adjusted by the caller.
13844 (marginal_area_string): Handle fringes inside/outside margins.
13845
13846 * frame.c: Make (many) trivial substitutions for renamed and
13847 new macros in dispextern.h, frame.h and window.h.
13848 (make_frame): Initialize left_fringe_width, right_fringe_width,
13849 fringe_cols, scroll_bar_actual_width, border_width,
13850 internal_border_width, column_width, line_height, x_pixels_diff,
13851 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
13852 members with values suitable for a non-window frames.
13853
13854 * gtkutil.c: Make (many) trivial substitutions for renamed and
13855 new macros in dispextern.h, frame.h and window.h.
13856
13857 * indent.c: Make (few) trivial substitutions for renamed and
13858 new macros in dispextern.h, frame.h and window.h.
13859
13860 * keyboard.c: Make (many) trivial substitutions for renamed and
13861 new macros in dispextern.h, frame.h and window.h.
13862 (make_lispy_event): Use window positions returned from
13863 window_from_coordinates when constructing the lisp event for
13864 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
13865 (incorrect) values locally.
13866 (make_lispy_movement): Use window positions returned from
13867 window_from_coordinates when constructing the lisp event, rather
13868 than calculating (incorrect) values locally.
13869
13870 * scroll.c: Make (some) trivial substitutions for renamed and
13871 new macros in dispextern.h, frame.h and window.h.
13872
13873 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
13874 scroll-bars.
13875
13876 * sysdep.c: Make (few) trivial substitutions for renamed and
13877 new macros in dispextern.h, frame.h and window.h.
13878
13879 * term.c: Make (some) trivial substitutions for renamed and
13880 new macros in dispextern.h, frame.h and window.h.
13881
13882 * widget.c: Make (few) trivial substitutions for renamed and
13883 new macros in dispextern.h, frame.h and window.h.
13884
13885 * window.c: Make (many) trivial substitutions for renamed and
13886 new macros in dispextern.h, frame.h and window.h.
13887 (make_window): Initialize new members
13888 left_margin_cols, right_margin_cols, left_fringe_width,
13889 right_fringe_width, fringes_outside_margins, scroll_bar_width,
13890 and vertical_scroll_bar_type.
13891 (coordinates_in_window): Adapt to new fringe/margin positions
13892 and per-window fringes and scroll-bars.
13893 Fix bug related to incorrectly adjusting coordinates by
13894 frame's internal_border_width (the effect normally negible since
13895 the internal_border_width is typically 0 or 1 pixel, but very
13896 noticeable for an internal_border_width of e.g. 25 pixels).
13897 Upon successful return (other than ON_NOTHING), the coordinates
13898 are now always properly converted to window relative for the
13899 given display element.
13900 (window_from_coordinates): Add new parameters wx and wy to
13901 return the window relative x and y position in the returned
13902 window and part. A null arg means, don't return the position.
13903 All callers changed.
13904 (adjust_window_margins): New function which may reduce the width
13905 of the display margins if a window's text area is too small after
13906 resizing or splitting windows.
13907 (size_window): Fix bug that did not account for display margin
13908 widths when checking the minimum width of a window; use
13909 adjust_window_margins.
13910 (set_window_buffer): Call Fset_window_fringes and
13911 Fset_window_scroll_bars to setup per-window elements.
13912 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
13913 existing display margin, fringe widths, and scroll bar settings
13914 (e.g. after splitting a window or resizing the frame).
13915 All callers changed.
13916 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
13917 (Fsplit_window): Duplicate original window's display margin,
13918 fringe, and scroll-bar settings; then call Fset_window_buffer with
13919 KEEP_MARGINS non-nil. This fixes a bug which caused a split
13920 window to only preserve the display margins in one of the windows.
13921 When splitting horizontally, call adjust_window_margins on both
13922 windows to ensure that the text area of the new windows is non too
13923 narrow. This fixes a bug which could cause Emacs to trap if the
13924 width of the split window was less than the width of the display
13925 margins.
13926 (window_box_text_cols): Rename from window_internal_width.
13927 All uses changed. Adapt to per-window fringes and scroll bars.
13928 Fix bug that caused vertical separator to be subtracted also on
13929 window frames. Fix another bug that did not reduce the returned
13930 value by the columns used for display margins.
13931 (window_scroll_line_based): Fix bug related to scrolling too much
13932 when display margins are present (implicitly fixed by the fix to
13933 window_box_text_cols).
13934 (scroll_left, scroll_right): Fix bug related to scrolling too far
13935 by default when display margins are present (implicitly fixed by
13936 the fix to window_box_text_cols).
13937 (struct saved_window): Rename members left to left_col, top to
13938 top_line, width to total_cols, height to total_lines, orig_top to
13939 orig_top_line, orig_height to orig_total_lines. All uses changed.
13940 New members left_margin_cols, right_margin_cols,
13941 left_fringe_width, right_fringe_width, fringes_outside_margins,
13942 scroll_bar_width, and vertical_scroll_bar_type for saving
13943 per-window display elements.
13944 (Fset_window_configuration): Restore display margins, fringes,
13945 and scroll bar settings. This fixes a bug which caused display
13946 margins to be discarded when saving and restoring a window
13947 configuration.
13948 (save_window_save): Save display margins, fringes, and scroll bar
13949 settings. This fixes a bug which caused display margins to be
13950 discarded when saving and restoring a window configuration.
13951 (Fset_window_margins): Do nothing if display margins are not
13952 really changed. Otherwise, call adjust_window_margins to ensure
13953 the text area doesn't get too narrow. This fixes a bug which
13954 could cause Emacs to trap if setting display margins wider than
13955 the width of the window.
13956 (Fset_window_fringes): New defun to allow user to specifically set
13957 this window's fringe widths and position vs. display margins.
13958 (Fwindow_fringes): New defun to return window's actual fringe settings.
13959 (Fset_window_scroll_bars): New defun to allow user to specifically
13960 set this window's scroll bar width and position.
13961 (Fwindow_scroll_bars): New defun to return window's actual scroll
13962 bar settings.
13963 (compare_window_configurations): Also compare display margins,
13964 fringes, and scroll bar settings.
13965 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
13966
13967 * xdisp.c: Make (many) trivial substitutions for renamed and
13968 new macros in dispextern.h, frame.h and window.h.
13969 (window_box_width): Adapt to per-window fringes and scroll bars,
13970 and new fringe vs. display margin position. Note that returned
13971 value is no longer guaranteed to be a whole multiple of the frame
13972 column width, since per-window fringes may now be any width.
13973 (window_box_left_offset): New function like window_box_left, but
13974 value is relative to left border of window (rather than frame).
13975 (window_box_right_offset): New function like window_box_right,
13976 but value is relative to left border of window.
13977 (window_box_left): Adapt to per-window fringes and scroll bars,
13978 and new fringe vs. display margin position. Simplify by using
13979 WINDOW_LEFT_EDGE_X and window_box_left_offset.
13980 (window_box): Allow null args for unnecessary return values;
13981 change/simplify relevant callers.
13982 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
13983 and new fringe vs. display margin position.
13984 Use window_box_left_offset and window_box_right_offset
13985 (get_glyph_string_clip_rect): Adapt to per-window fringes and
13986 scroll bars, and new fringe vs. display margin position.
13987 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
13988 (draw_fringe_bitmap): Rework to handle per-window fringes and new
13989 fringe vs. display margin position.
13990 (hscroll_window_tree): Use window_box_width instead of window_box.
13991 (redisplay_window): Adapt to per-window scroll bars.
13992 (draw_glyphs): Rework to handle per-window fringes and scroll
13993 bars, and new fringe vs. display margin position.
13994 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
13995 (x_clear_end_of_line): Adapt to per-window fringes and scroll
13996 bars, and new fringe vs. display margin position. Fix bug which
13997 increased total width of full_width rows by width of scroll bars
13998 although window's total width already includes that.
13999 (x_fix_overlapping_area): Simplify using window_box_left_offset.
14000 (expose_area): Simplify using window_box_left_offset.
14001 (x_draw_vertical_border): Handle per-window scroll bar settings,
14002 mixing windows with left, right and no scroll bars.
14003
14004 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
14005 where it's used in x_list_fonts (for clarity).
14006 (frame_update_line_height): Remove unused function; functionality
14007 is now done directly when setting the default font in x_set_font.
14008
14009 * xfns.c: Make (many) trivial substitutions for renamed and
14010 new macros in dispextern.h, frame.h and window.h.
14011
14012 * xmenu.c: Make (some) trivial substitutions for renamed and
14013 new macros in dispextern.h, frame.h and window.h.
14014
14015 * xterm.h (struct x_output): Move members left_pos, top_pos,
14016 border_width, pixel_height, pixel_width, line_height,
14017 internal_border_width, vertical_scroll_bar_extra,
14018 left_fringe_width, right_fringe_width, fringe_cols,
14019 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14020 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14021 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14022 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14023 (PIXEL_WIDTH, PIXEL_HEIGHT)
14024 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14025 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14026 frame.h and renamed [see frame.h changes].
14027 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14028 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14029 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14030 and renamed [see frame.h changes].
14031
14032 * xterm.c: Make (several) trivial substitutions for renamed and
14033 new macros in dispextern.h, frame.h and window.h.
14034 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14035 (scroll_run): Adapt to new fringe position.
14036 (glyph_rect): Use window coordinates returned from
14037 window_from_coordinates rather than frame_to_window_pixel_xy.
14038 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14039 scroll-bars.
14040 (handle_one_xevent): Simplify a USE_GTK conditional.
14041 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14042 (fringes are now inside margins, i.e. always in the clipping area).
14043 All callers changed.
14044 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14045 directly, then call compute_fringe_widths. Don't call
14046 frame_update_line_height.
14047
14048 * w32term.h (struct w32_output): Move members left_pos, top_pos,
14049 border_width, pixel_height, pixel_width, line_height,
14050 internal_border_width, vertical_scroll_bar_extra,
14051 left_fringe_width, right_fringe_width, fringe_cols,
14052 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14053 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14054 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14055 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14056 (PIXEL_WIDTH, PIXEL_HEIGHT)
14057 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14058 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14059 frame.h and renamed [see frame.h changes].
14060 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14061 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14062 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14063 and renamed [see frame.h changes].
14064
14065 * w32term.c: Make (several) trivial substitutions for renamed and
14066 new macros in dispextern.h, frame.h and window.h.
14067 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14068 (glyph_rect): Use window coordinates returned from
14069 window_from_coordinates rather than frame_to_window_pixel_xy.
14070 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14071 scroll-bars.
14072 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
14073 (fringes are now inside margins, i.e. always in the clipping area).
14074 All callers changed.
14075 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14076 directly, then call compute_fringe_widths. Don't call
14077 frame_update_line_height.
14078
14079 * w32console.c: Make (few) trivial substitutions for renamed and
14080 new macros in dispextern.h, frame.h and window.h.
14081
14082 * w32fns.c: Make (many) trivial substitutions for renamed and
14083 new macros in dispextern.h, frame.h and window.h.
14084
14085 * w32menu.c: Make (few) trivial substitutions for renamed and
14086 new macros in dispextern.h, frame.h and window.h.
14087
14088 * macterm.h (struct mac_output): Move members left_pos, top_pos,
14089 border_width, pixel_height, pixel_width, line_height,
14090 internal_border_width, vertical_scroll_bar_extra,
14091 left_fringe_width, right_fringe_width, fringe_cols,
14092 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14093 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
14094 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14095 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14096 (PIXEL_WIDTH, PIXEL_HEIGHT)
14097 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14098 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14099 frame.h and renamed [see frame.h changes].
14100 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14101 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14102 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14103 and renamed [see frame.h changes].
14104
14105 * macterm.c: Make (several) trivial substitutions for renamed and
14106 new macros in dispextern.h, frame.h and window.h.
14107 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14108 (glyph_rect): Use window coordinates returned from
14109 window_from_coordinates rather than frame_to_window_pixel_xy.
14110 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14111 scroll-bars.
14112 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14113 (fringes are now inside margins, i.e. always in the clipping area).
14114 All callers changed.
14115 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14116 directly, then call compute_fringe_widths. Don't call
14117 frame_update_line_height.
14118
14119 * macfns.c: Make (several) trivial substitutions for renamed and
14120 new macros in dispextern.h, frame.h and window.h.
14121 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
14122
14123 * macmenu.c: Make (few) trivial substitutions for renamed and
14124 new macros in dispextern.h, frame.h and window.h.
14125
14126 * msdos.h (struct x_output): Remove members left_pos, top_pos,
14127 and line_height, and use corresponding new members in struct
14128 frame. All uses changed.
14129 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
14130 superseeded by corresponding macros in frame.h.
14131
14132 * msdos.c: Make (several) trivial substitutions for renamed and
14133 new macros in dispextern.h, frame.h and window.h.
14134 (IT_note_mouse_highlight): Use updated window coordinates returned
14135 by window_from_coordinates, rather than adjusting them locally.
14136 (internal_terminal_init): No need to initialize line_height here;
14137 it now defaults to 1.
14138
14139 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
14140
14141 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
14142 dropping `down' events.
14143
14144 2003-05-24 Andreas Schwab <schwab@suse.de>
14145
14146 * coding.c (find_safe_codings): Fix last change.
14147
14148 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
14149
14150 * xfns.c (x_window): Fix typo from 2003-05-21 change.
14151
14152 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
14153
14154 * xdisp.c (display_mode_element): Increase max depth.
14155 Simplify the error handling code. Use a different error string
14156 for the case where we hit the depth limit.
14157
14158 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
14159
14160 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
14161
14162 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
14163
14164 * intervals.c (get_local_map): Don't get char-property of previous
14165 point any more: get_pos_property already does it and better.
14166
14167 2003-05-21 Dave Love <fx@gnu.org>
14168
14169 [Merged from unicode branch.]
14170
14171 * xfns.c (x_window, x_window): Use use_xim.
14172
14173 * xterm.c (use_xim): Initialize.
14174 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14175 (x_term_init): Maybe set use_xim.
14176
14177 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14178
14179 2003-05-21 Jason Rumney <jasonr@gnu.org>
14180
14181 * unexw32.c (_start): Remove _fmode initialization.
14182
14183 * emacs.c (main) [WINDOWSNT]: Move it here.
14184
14185 2003-05-20 Dave Love <fx@gnu.org>
14186
14187 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
14188
14189 2003-05-19 Richard M. Stallman <rms@gnu.org>
14190
14191 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
14192 as value for QCfont attribute.
14193 (realize_default_face): lface should already exist; crash if not.
14194 Specify 0 for FORCE_P when calling set_lface_from_font_name.
14195
14196 * frame.c (Fignore_event): Doc fix.
14197
14198 2003-05-19 Kenichi Handa <handa@m17n.org>
14199
14200 * coding.c (decode_coding_string): Handle post-read-conversion
14201 even if the coding doesn't require decoding.
14202
14203 2003-05-18 Richard M. Stallman <rms@gnu.org>
14204
14205 * callproc.c (Fcall_process_region): Doc fix.
14206
14207 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14208
14209 * lread.c (Fload): Print a message if package is obsolete.
14210
14211 * window.c (Fselect_window): Add optional `norecord' arg.
14212 (select_window_1): Fold into Fselect_window.
14213 (select_window_norecord): New function.
14214 (temp_output_buffer_show): Use it. Preserve current buffer.
14215
14216 * window.h (Fselect_window): Update declaration.
14217
14218 * window.c (delete_window, Fother_window, Fset_window_configuration):
14219 * minibuf.c (read_minibuf):
14220 * macterm.c (x_new_focus_frame):
14221 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
14222 * callint.c (Fcall_interactively):
14223 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
14224
14225 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
14226
14227 2003-05-17 David Kastrup <dak@gnu.org>
14228
14229 * process.c (read_process_output): Back out change from 2003-03-09.
14230
14231 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14232
14233 * editfns.c (get_pos_property): Don't assume that `object' = nil.
14234
14235 * textprop.c (text_property_stickiness): New arg `buffer'.
14236
14237 * intervals.h (text_property_stickiness): New arg `buffer'.
14238 (get_pos_property): Declare.
14239
14240 * intervals.c (get_local_map): Use get_pos_property, to obey
14241 stickiness and empty overlays.
14242 (create_root_interval, graft_intervals_into_buffer): Use BEG.
14243 (merge_properties, intervals_equal, merge_properties_sticky):
14244 Use XCAR, XCDR.
14245 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
14246
14247 2003-05-17 Richard M. Stallman <rms@gnu.org>
14248
14249 * minibuf.c (read_minibuf): If buffer is empty, record the default
14250 in the history.
14251 (Fminibuffer_complete_word): When deleting the overlap, take account
14252 of its real position.
14253
14254 * fns.c (map_char_table): Fix previous change.
14255
14256 * syntax.c (find_defun_start):
14257 When open_paren_in_column_0_is_defun_start,
14258 return beginning of buffer.
14259
14260 * lisp.h (map_char_table): Declare added arg.
14261
14262 * fns.c (map_char_table): New arg TABLE gets the master table.
14263 All calls changed.
14264 Process default and inheritance, resorting to Faref if necessary.
14265
14266 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14267 (Faccessible_keymaps): Pass new arg to map_char_table.
14268
14269 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
14270
14271 * casetab.c (set_case_table): Pass new arg to map_char_table.
14272
14273 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
14274
14275 * lisp.h (specbinding_func): New typedef.
14276 (struct specbinding): Use specbinding_func, to put the `volatile'
14277 in the right place.
14278
14279 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
14280 to avoid GCC warning.
14281
14282 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
14283
14284 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
14285
14286 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
14287
14288 * keyboard.c (apply_modifiers): Don't fill the other cache.
14289
14290 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
14291
14292 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
14293
14294 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
14295 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
14296 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
14297 (Fset_window_configuration, Fcurrent_window_configuration)
14298 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
14299 (Fpos_visible_in_window_p, mark_window_cursors_off)
14300 (window_internal_height, window_internal_width, Frecenter)
14301 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
14302 (replace_buffer_in_all_windows, init_window_once, init_window)
14303 (syms_of_window, keys_of_window): Move from lisp.h.
14304 * lisp.h: Move window.c declarations to window.h.
14305
14306 * bytecode.c: Include window.h.
14307 * emacs.c: Include window.h.
14308
14309 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
14310 (keyremap): Add `parent' field.
14311 (keyremap_step): Use it. Remove `parent' argument.
14312 (read_key_sequence): Setup and use the new `parent' field.
14313
14314 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
14315
14316 * keyboard.c (adjust_point_for_property): Ensure termination.
14317
14318 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
14319
14320 * keyboard.c (follow_key): Remove dead variable `did_meta'.
14321 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
14322 duplicated handling of function-key-map and key-translation-map
14323 in read_key_sequence.
14324 (read_key_sequence): Use them.
14325
14326 * keyboard.c (adjust_point_for_property): Try harder to move point
14327 to the non-sticky end of an invisible property.
14328
14329 * xdisp.c (single_display_prop_intangible_p): Make `space' display
14330 property intangible as well.
14331
14332 2003-05-10 Andreas Schwab <schwab@suse.de>
14333
14334 * xmenu.c (single_menu_item): Change last parameter to void* to
14335 avoid warning.
14336
14337 2003-05-09 Richard M. Stallman <rms@gnu.org>
14338
14339 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
14340 Bind Qinhibit_modification_hooks to t so there will be no GC.
14341 Rename local `tem' to `save_deactivate_mark'.
14342
14343 * eval.c (specpdl_ptr): Declare volatile.
14344 (unbind_to): Copy the whole binding and decrement specpdl_ptr
14345 before doing the work of unbinding it.
14346
14347 * lisp.h (struct specbinding): Declare elements volatile.
14348 (specpdl_ptr): Declare volatile.
14349
14350 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
14351
14352 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
14353 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
14354
14355 2003-05-08 Dave Love <fx@gnu.org>
14356
14357 * coding.c (Vlast_coding_system_used): Doc fix.
14358
14359 2003-05-07 Jason Rumney <jasonr@gnu.org>
14360
14361 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
14362 when system does not support them.
14363
14364 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
14365
14366 * fileio.c (Qwrite_region_annotate_functions): New var.
14367 (build_annotations): Use it to process the global part of the hook.
14368 (syms_of_fileio): Init and staticpro it.
14369
14370 * keyboard.c (safe_run_hooks_error): Display a message instead of
14371 silently ignoring the error.
14372
14373 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
14374
14375 * keyboard.c (input_available_signal): Mark static.
14376 (menu_bar_items): Use map_keymap.
14377 (menu_bar_one_keymap): Remove.
14378 (menu_bar_item): Adjust arglist (for use in map_keymap).
14379 Properly hide a second binding when not both are keymaps.
14380
14381 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
14382 (single_keymap_panes): Use it and map_keymap.
14383 (single_menu_item): Use skp as well.
14384
14385 * keymap.h (map_keymap_function_t): New type.
14386 (map_keymap): Declare.
14387
14388 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
14389 (map_keymap_call, Fmap_keymap): New functions.
14390 (syms_of_keymap): Defsubr map-keymap.
14391
14392 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14393
14394 * gtkutil.c (create_dialog, make_widget_for_menu_item)
14395 (make_menu_item, create_menus, xg_update_menu_item): Don't call
14396 ..._with_mnemonic functions for menu items.
14397
14398 2003-05-01 Kenichi Handa <handa@m17n.org>
14399
14400 * coding.c (coding_system_accept_latin_extra_p): Delete this
14401 function.
14402 (find_safe_codings): Pay attention to
14403 the property tranlsation-table-for-encode of each codings.
14404 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
14405
14406 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
14407
14408 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
14409
14410 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
14411
14412 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
14413
14414 * lisp.h (CHECK): Wrap args in parenthesis.
14415 (specbind): Fix doc: symbol = Qnil is not supported any more.
14416
14417 * bytecode.c (Fbyte_code) <unwind-protect>:
14418 Use Fprogn rather than 0 and Qnil.
14419
14420 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
14421 `double', and `triple' modifiers as well.
14422
14423 2003-04-30 Richard M. Stallman <rms@gnu.org>
14424
14425 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
14426
14427 * alloc.c (abort_on_gc): New variable.
14428 (Fgarbage_collect): Abort if abort_on_gc is set.
14429
14430 * lisp.h (abort_on_gc): Add decl.
14431
14432 * eval.c (Fsignal): Clear abort_on_gc.
14433
14434 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
14435 Reinit FORMAT_START and END before second scan.
14436
14437 * xdisp.c (move_it_vertically_backward): Do the final big else
14438 even if nlines is 0.
14439
14440 * xdisp.c (redisplay_internal): Finish the per-frame loop
14441 even if redisplay is suspended by input.
14442
14443 2003-04-24 Andrew Choi <akochoi@shaw.ca>
14444
14445 * macterm.c (x_list_fonts): Return all fonts that match if
14446 maxnames = -1.
14447
14448 2003-04-25 Kenichi Handa <handa@m17n.org>
14449
14450 * syntax.c (skip_chars): Fix previous change.
14451
14452 2003-04-24 Kenichi Handa <handa@m17n.org>
14453
14454 * syntax.c (skip_chars): Make the code faster by using the common
14455 technique of *p, *stop, and *endp.
14456
14457 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14458
14459 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
14460 tool_bar_items so GTK tool bar expose callback does not access items
14461 being updated.
14462
14463 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
14464
14465 * eval.c (Fapply): Undo last change and add a comment about why.
14466
14467 2003-04-18 Miles Bader <miles@gnu.org>
14468
14469 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
14470 pickier PARSE_MULTIBYTE_SEQ.
14471
14472 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
14473
14474 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
14475 Use XCDR, XCAR, CONSP.
14476 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
14477 (Fapply): Remove unnecessary GCPRO.
14478
14479 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
14480
14481 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
14482
14483 * buffer.h: Don't hardcode BEG==1.
14484
14485 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
14486
14487 2003-04-16 Richard M. Stallman <rms@gnu.org>
14488
14489 * xdisp.c (try_window, try_window_reusing_current_matrix):
14490 When at end of window, set window_end_pos to Z-ZV.
14491
14492 * buffer.c (Foverlay_recenter): Doc fix.
14493
14494 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
14495
14496 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
14497
14498 2003-04-14 Andrew Choi <akochoi@shaw.ca>
14499
14500 * macterm.c (mac_check_for_quit_char): Don't check more often than
14501 once a second.
14502
14503 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
14504
14505 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
14506 specially, so that they can't hide an implicit switch-frame event.
14507 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
14508 (head_table): Use switch-frame as event_kind for select-window.
14509 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
14510
14511 * editfns.c (Fformat): Lisp_Object/int mixup.
14512 (format2): Remove unused var numargs.
14513
14514 2003-04-11 Kenichi Handa <handa@m17n.org>
14515
14516 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
14517 (Qafter_insert_file_set_coding): New variable.
14518 (syms_of_fileio): Initialize and staticpro it. Delete declaration
14519 for after-insert-file-adjust-coding-function.
14520 (Finsert_file_contents): Call Qafter_insert_file_set_coding
14521 instead of Vafter_insert_file_adjust_coding_function.
14522
14523 2003-04-11 Kenichi Handa <handa@m17n.org>
14524
14525 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
14526
14527 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
14528 string. Callers changed.
14529
14530 2003-04-10 Kenichi Handa <handa@m17n.org>
14531
14532 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
14533 (syms_of_fileio): Declare it as a lisp variable.
14534 (Finsert_file_contents):
14535 Call Vafter_insert_file_adjust_coding_function before calling
14536 decode-format.
14537
14538 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14539
14540 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
14541 get GtkAdjustment as widget now is a GtkRange.
14542
14543 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
14544 GtkRange to avoid memory leak.
14545
14546 2003-04-09 Kenichi Handa <handa@m17n.org>
14547
14548 * xfaces.c (Vface_font_rescale_alist): New variable.
14549 (struct font_name): New member rescale_ratio.
14550 (font_rescale_ratio): New function.
14551 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
14552 (better_font_p): On comparing point sized, pay attention to
14553 recale_ratio member of fonts.
14554 (build_scalable_font_name): Reflect font->rescale_ratio in the
14555 font name.
14556 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14557
14558 * lread.c (read1): Before calling index, check if the 2nd
14559 arguemnt is in ASCII range.
14560
14561 2003-04-08 Richard M. Stallman <rms@gnu.org>
14562
14563 * fileio.c (Ffile_symlink_p): Doc fix.
14564
14565 * editfns.c (Fformat): Translate positions of text properties
14566 in the format string to apply them to the result.
14567
14568 * fileio.c (Finsert_file_contents): Doc fix.
14569 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
14570
14571 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
14572
14573 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
14574
14575 2003-04-08 Steven Tamm <steventamm@mac.com>
14576
14577 * mac.c (init_mac_osx_environment): Switch libexec and bin so
14578 that self-contained application finds libexec files.
14579
14580 2003-04-08 Kenichi Handa <handa@m17n.org>
14581
14582 * coding.c (code_convert_region_unwind):
14583 Set Vlast_coding_system_used to the argument.
14584 (code_convert_region): If post-read-conversion function changed
14585 the value of last-coding-sytem, keep the new value in
14586 coding->symbol so that it won't be overridden.
14587 (run_pre_post_conversion_on_str): Likewise.
14588 (coding_system_accept_latin_extra_p): New function.
14589 (find_safe_codings): Pay attention to characters registered in
14590 latin-extra-code-table.
14591
14592 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
14593
14594 * Makefile.in (md5.o): Add missing dependency info.
14595
14596 2003-04-06 Richard M. Stallman <rms@gnu.org>
14597
14598 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
14599
14600 * marker.c (verify_bytepos): New function.
14601
14602 * intervals.c (set_intervals_multibyte_1): When becoming
14603 multibyte, adjust right and left child sizes to a whole set of
14604 characters. If an interval gets zero total-length, delete it.
14605 If an interval consists of just its children, delete one of them.
14606
14607 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
14608 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
14609
14610 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
14611 All calls deleted.
14612 (lisp_malloc): Do the work here directly.
14613
14614 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
14615
14616 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
14617 char tables.
14618
14619 2003-04-04 Kenichi Handa <handa@m17n.org>
14620
14621 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
14622 destructively change "%S" to "%s".
14623
14624 2003-04-03 Miles Bader <miles@gnu.org>
14625
14626 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
14627 always set.
14628
14629 2003-04-01 Dave Love <fx@gnu.org>
14630
14631 * xfns.c (xpm_lookup_color): Grok "opaque".
14632
14633 2003-03-31 Andrew Choi <akochoi@shaw.ca>
14634
14635 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
14636 parent window ID.
14637
14638 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
14639
14640 * macterm.h (struct mac_output): Define x_pixels_diff and
14641 y_pixels_diff.
14642
14643 2003-03-31 Juanma Barranquero <lektu@terra.es>
14644
14645 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
14646 blockinput.h and files included from it.
14647
14648 2003-03-31 Kim F. Storm <storm@cua.dk>
14649
14650 The following changes consolidates the common code related to
14651 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
14652 files into frame.c.
14653
14654 * frame.c: Include blockinput.h.
14655 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
14656 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
14657 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
14658 related vars here.
14659 (struct frame_parm_table, frame_parms): New table for describing
14660 frame parameters and their associated Q-variable.
14661 The order of the parameters corresponds to the sequence of the
14662 frame_parm_handlers table in redisplay_interface.
14663 (x_fullscreen_move, x_set_frame_parameters)
14664 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
14665 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
14666 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14667 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
14668 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
14669 Generic functions for processing of frame parameters.
14670 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
14671 (display_x_get_resource, x_get_resource_string): Functions for
14672 generic access to X resources.
14673 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
14674 (x_default_parameter, Fx_parse_geometry): Functions for generic
14675 access to frame parameters.
14676 (x_figure_window_size): Generic calculation of frame size.
14677 Fixed to add space needed for tool bar. Also setup size_hint_flags.
14678 (syms_of_frame): Intern and staticpro frame parameter variables.
14679 Defvar_lisp Vx_resource_class and Vx_resource_name here.
14680 Defsubr Sx_get_resource and Sx_parse_geometry.
14681
14682 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
14683 parameter related vars defined in frame.c.
14684 (EMACS_CLASS): Define here.
14685 (enum FULLSCREEN_*): Define here.
14686 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
14687 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
14688 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
14689 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
14690 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
14691 (x_set_visibility, x_set_autoraise, x_set_autolower)
14692 (x_set_unsplittable, x_set_vertical_scroll_bars)
14693 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
14694 (x_figure_window_size): Add prototypes.
14695
14696 * dispextern.h (frame_parm_handler): New typedef.
14697 (struct redisplay_interface): New member frame_parm_handlers.
14698 (enum resource_types): Move declaration here.
14699 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
14700 (x_default_parameter): Add prototypes.
14701
14702 * window.c: Remove extern decl for frame parameter vars.
14703 (change_window_heights): New generic function;
14704 replaces x_change_window_heights. All users changed.
14705
14706 * window.h (change_window_heights): Add prototype.
14707
14708 * xfaces.c: Remove extern decl for frame parameter vars.
14709
14710 * xterm.h (EMACS_CLASS): Remove. Use generic define.
14711 (struct w32_display_info): Fix type of xrdb member.
14712 (enum FULLSCREEN_*): Remove.
14713 Remove prototypes for generic functions (in frame.h).
14714
14715 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14716 parameters now defined in frame.h and frame.c.
14717 (Vx_resource_name): Remove. Use generic var.
14718 (enum x_frame_parms): Remove (bogus, unused enum).
14719 (check_x_display_info): Make non-static (for frame.c).
14720 (struct x_frame_parm_table, x_frame_parms): Remove.
14721 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14722 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14723 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14724 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14725 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14726 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14727 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14728 Remove. Use generic functions instead.
14729 (enum resource_types): Remove.
14730 (x_set_scroll_bar_default_width): New global function (for frame.c).
14731 (Fx_create_frame): Depend on x_figure_window_size to add space for
14732 toolbar and setup size_hint_flags.
14733 (x_frame_parm_handlers): New table for redisplay_interface.
14734 (syms_of_xfns): Don't intern/staticpro removed vars.
14735
14736 * xterm.c: Remove unnecessary extern declarations.
14737 (x_fullscreen_adjust): Remove. Use generic instead.
14738 (x_redisplay_interface): Add x_frame_parm_handlers member.
14739
14740 * w32gui.h (XrmDatabase): New (dummy) typedef.
14741
14742 * w32term.h (EMACS_CLASS): Remove. Use generic define.
14743 (struct w32_display_info): Fix type of xrdb member.
14744 (enum FULLSCREEN_*): Remove.
14745 (x_fullscreen_adjust): Remove prototype.
14746
14747 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14748 parameters now defined in frame.h and frame.c.
14749 (Vx_resource_name): Remove. Use generic var.
14750 (enum x_frame_parms): Remove (bogus, unused enum).
14751 (check_x_display_info): Make non-static (for frame.c).
14752 (struct x_frame_parm_table, x_frame_parms): Remove.
14753 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14754 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14755 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14756 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14757 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14758 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14759 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14760 Remove. Use generic functions instead.
14761 (enum resource_types): Remove.
14762 (x_set_scroll_bar_default_width): New global function (for frame.c).
14763 (Fx_create_frame): Depend on x_figure_window_size to add space for
14764 toolbar and setup size_hint_flags.
14765 (w32_frame_parm_handlers): New table for redisplay_interface.
14766 (syms_of_w32fns): Don't intern/staticpro removed vars.
14767
14768 * w32term.c: Remove unnecessary extern declarations.
14769 (x_fullscreen_adjust): Remove. Use generic instead.
14770 (x_redisplay_interface): Add w32_frame_parm_handlers member.
14771
14772 * w32reg.c (x_get_string_resource): Use XrmDatabase.
14773
14774 * macgui.h (XrmDatabase): New (dummy) typedef.
14775
14776 * macterm.h (EMACS_CLASS): Remove.
14777 (struct mac_display_info): Add xrdb member.
14778 (struct mac_output): Add want_fullscreen member.
14779
14780 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
14781 parameters now defined in frame.h and frame.c.
14782 (Vx_resource_name): Remove. Use generic var.
14783 (check_x_display_info): Make non-static (for frame.c).
14784 (struct x_frame_parm_table, x_frame_parms): Remove.
14785 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
14786 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
14787 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
14788 (x_change_window_heights, x_set_autoraise, x_set_autolower)
14789 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
14790 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
14791 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
14792 Remove. Use generic functions instead.
14793 (enum resource_types): Remove.
14794 (x_set_scroll_bar_default_width): New global function (for frame.c).
14795 (mac_frame_parm_handlers): New table for redisplay_interface.
14796 (syms_of_macfns): Don't intern/staticpro removed vars.
14797
14798 * macterm.c: Remove unnecessary extern declarations.
14799 (x_redisplay_interface): Add mac_frame_parm_handlers member.
14800
14801 * Makefile.in (frame.o): Add dependency on blockinput.h and files
14802 included from it (atimer.h and systime.h).
14803
14804 2003-03-30 Andreas Schwab <schwab@suse.de>
14805
14806 * xdisp.c (x_insert_glyphs): Fix swapped width and height
14807 parameters for shift_glyphs_for_insert.
14808
14809 * macterm.c (x_redisplay_interface): Add missing entry for
14810 draw_vertical_window_border.
14811
14812 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
14813
14814 * fileio.c (Fexpand_file_name): In the no-handler case, after
14815 expanding, look again for a handler and invoke it. This is needed
14816 for filenames like "/foo/../user@host:/bar/../baz" -- the first
14817 expansion produces "/user@host:/bar/../baz" which needs to be
14818 expanded again for the finame result "/user@host:/baz".
14819
14820 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14821
14822 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
14823 of area to be redrawn for better performance.
14824
14825 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
14826
14827 * xterm.c (take_vertical_position_into_account): Remove.
14828 (xt_action_hook): Call set_vertical_scroll_bar if needed.
14829 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
14830 (xm_scroll_callback, x_create_toolkit_scroll_bar)
14831 (x_set_toolkit_scroll_bar_thumb): Simplify.
14832 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
14833 (XTread_socket): Remove unused var.
14834 (x_make_frame_invisible): Replace goto with else.
14835
14836 * xdisp.c (set_vertical_scroll_bar): New fun.
14837 (redisplay_window): Use it.
14838
14839 2003-03-26 Richard M. Stallman <rms@gnu.org>
14840
14841 * xdisp.c (update_tool_bar): Recompute tool bar if
14842 update_mode_lines is set. Set w->update_mode_line
14843 only if the tool bar contents actually change.
14844 (update_menu_bar): Undo previous change.
14845
14846 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14847
14848 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
14849 (xg_frame_set_char_size): Calculate scroll bar width before frame
14850 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
14851 (xg_separator_p): Check for all documented separator types.
14852 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
14853 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
14854
14855 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
14856 so tool bar gets updated.
14857
14858 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
14859
14860 * data.c (store_symval_forwarding): Re-instate part of the code
14861 that was deleted with too much enthusiasm.
14862
14863 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
14864
14865 * data.c (store_symval_forwarding): Delete special read-only
14866 hack for type == -1, since we now use ->constant instead.
14867 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
14868
14869 * buffer.c (overlays_in): Declare static.
14870 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
14871 `constant' field rather than the variable's `type' field.
14872
14873 2003-03-24 Andrew Choi <akochoi@shaw.ca>
14874
14875 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
14876
14877 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
14878
14879 * fns.c [MAC_OSX]: Do not redefine vector.
14880
14881 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
14882
14883 * macgui.h: Remove definition of No_Cursor.
14884
14885 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
14886
14887 * xdisp.c: Define No_Cursor.
14888 (x_write_glyphs, notice_overwritten_cursor)
14889 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
14890 (note_mouse_highlight): Remove Mac-specific code.
14891 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
14892
14893 2003-03-24 John Paul Wallington <jpw@gnu.org>
14894
14895 * xdisp.c (redisplay_window): If mini window's buffer is not
14896 empty, then redisplay it like other windows.
14897
14898 2003-03-23 Kim F. Storm <storm@cua.dk>
14899
14900 * w32term.c (w32_draw_window_cursor): Fix last change.
14901
14902 2003-03-23 Kenichi Handa <handa@m17n.org>
14903
14904 * alloc.c (make_string_from_bytes, make_specified_string):
14905 Add `const' for the arg CONTENTS.
14906
14907 * lisp.h (make_string_from_bytes, make_specified_string):
14908 Prototypes adjusted.
14909
14910 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14911
14912 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
14913
14914 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
14915 (XG_SB_RANGE): New define.
14916
14917 * gtkutil.c (xg_fixed_handle_expose): New function.
14918 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
14919 expose events.
14920 (xg_update_scrollbar_pos): Take two more arguments, left and width
14921 of scroll bar including borders.
14922 Clear left and right part outside scroll bar separately as some
14923 themes have bars that are not an even number of pixels.
14924 Don't set reallocate_redraws, don't call
14925 gdk_window_process_all_updates.
14926 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
14927 so no need to change it. Calculate size and value with XG_SB_RANGE.
14928
14929 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
14930 Pass left and width of scroll bar including borders to
14931 xg_update_scrollbar_pos.
14932
14933 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
14934
14935 * Makefile.in: Make sure space precedes end-of-line backslashes.
14936
14937 2003-03-22 Kim F. Storm <storm@cua.dk>
14938
14939 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
14940 Add generic versions here. Remove system specific versions
14941 defined elsewhere.
14942
14943 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
14944 Add prototypes.
14945
14946 * xterm.h (STORE_NATIVE_RECT): New macro.
14947
14948 2003-03-21 Kim F. Storm <storm@cua.dk>
14949
14950 * xdisp.c (get_glyph_string_clip_rect):
14951 Use FRAME_INTERNAL_BORDER_WIDTH.
14952
14953 * dispextern.h (struct redisplay_interface): Add active_p
14954 argument to draw_window_cursor member. All uses changed.
14955
14956 2003-03-21 Kim F. Storm <storm@cua.dk>
14957
14958 The following changes consolidate code related to writing and
14959 inserting glyphs, exposing frame, the tool bar, the mouse face,
14960 the output cursor, and help echo from xterm.c, w32term.c and
14961 macterm.c into xdisp.c. It also generalizes the use of the
14962 window_part enum instead of using numeric values throughout.
14963
14964 * xdisp.c: Consolidate gui-independent code here.
14965 Include keymap.h.
14966 (Qhelp_echo): Import.
14967 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
14968 (help_echo_string, help_echo_window, help_echo_object)
14969 (previous_help_echo_string, help_echo_pos): Declare here.
14970 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
14971 (estimate_mode_line_height): Define here. Handle windowing
14972 systems directly (without using estimate_mode_line_height_hook).
14973 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
14974 (update_window_cursor, update_cursor_in_window_tree)
14975 (fast_find_position, fast_find_string_pos)
14976 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
14977 (expose_area, expose_line, expose_overlaps, expose_window)
14978 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
14979 declared static as they are only used locally in xdisp.c.
14980 (draw_glyphs): Rename from x_draw_glyphs and make static.
14981 (tool_bar_item_info, notice_overwritten_cursor): Make static.
14982 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
14983 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
14984 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
14985 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
14986 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
14987 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
14988 (note_mouse_highlight, x_clear_window_mouse_face)
14989 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
14990 (x_intersect_rectangles): New generic functions for use by xdisp.c
14991 and GUI front-ends.
14992 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
14993 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
14994
14995 * dispextern.h (Display_Info): Generic typedef for *_display_info.
14996 (NativeRectangle): Generic typedef for rectangle type.
14997 (enum window_part): Move here from window.c.
14998 (struct redisplay_interface): New members flush_display_optional,
14999 define_frame_cursor, clear_frame_area, draw_window_cursor,
15000 draw_vertical_window_border, shift_glyphs_for_insert.
15001 Rename member clear_mouse_face to clear_window_mouse_face.
15002 (estimate_mode_line_height_hook): Remove hook.
15003 (auto_raise_tool_bar_buttons_p): Don't declare extern.
15004 (tool_bar_item_info): Remove prototype.
15005 (help_echo_string, help_echo_window, help_echo_object)
15006 (previous_help_echo_string, help_echo_pos)
15007 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
15008 (x_stretch_cursor_p, output_cursor): Declare extern.
15009 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
15010 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
15011 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15012 (display_and_set_cursor, set_output_cursor, x_cursor_to)
15013 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
15014 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15015 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
15016 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
15017 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
15018 Add prototypes.
15019 (mode_line_string, marginal_area_string): Fix prototypes.
15020
15021 * window.c (enum window_part): Move to dispextern.h.
15022 (coordinates_in_window): Use enum window_part member names
15023 instead of numbers to describe return value.
15024 (struct check_window_data): Change part member to window_part.
15025 (check_window_containing): Return window_part unaltered.
15026 (window_from_coordinates): Change part arg from int to enum
15027 window_part. Allow part arg to be null. All users changed.
15028
15029 * window.h (window_from_coordinates): Fix prototype.
15030
15031 * term.c (estimate_mode_line_height): Move to xdisp.c.
15032
15033 * keyboard.c (make_lispy_event): Use enum window_part.
15034
15035 * dispnew.c (mode_line_string, marginal_area_string): Use enum
15036 window_part instead of int in arg list. Users changed.
15037
15038 * xterm.h (No_Cursor): Declare as None for X.
15039 (struct mac_output): Replace member cross_cursor by hand_cursor.
15040
15041 * xterm.c: Remove consolidated defines and code.
15042 (BETWEEN): Remove unused macro.
15043 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
15044 (x_define_frame_cursor, x_clear_frame_area)
15045 (x_draw_window_cursor): New X-specific functions for RIF.
15046 (x_redisplay_interface): Add new members.
15047
15048 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
15049
15050 * w32term.h (struct w32_output): Remove cross_cursor member.
15051
15052 * w32term.c: Remove consolidated defines and code.
15053 (BETWEEN): Remove unused macro.
15054 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
15055 (w32_define_frame_cursor, w32_clear_frame_area)
15056 (w32_draw_window_cursor): New W32-specific functions for RIF.
15057 (w32_redisplay_interface): Add new members.
15058
15059 * w32gui.h (No_Cursor): Define as 0 for W32.
15060 (XRectangle): Add X compatible rectangle type.
15061 (NativeRectangle): Declare as RECT for W32.
15062 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15063
15064 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
15065
15066 * w32console.c: Remove consolidated defines and code.
15067
15068 * msdos.h (Display_Info): Add generic typedef.
15069
15070 * msdos.c: Remove consolidated defines and code.
15071 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
15072
15073 * macterm.h (struct mac_output): Replace member cross_cursor by
15074 hand_cursor.
15075 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
15076
15077 * macterm.c: Remove consolidated defines and code.
15078 (BETWEEN): Remove unused macro.
15079 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
15080 (mac_define_frame_cursor, mac_clear_frame_area)
15081 (mac_draw_window_cursor): New Mac-specific functions for RIF.
15082 (x_redisplay_interface): Add new members.
15083
15084 * macgui.h (No_Cursor): Define as 0 for Mac.
15085 (XRectangle): Add X compatible rectangle type.
15086 (NativeRectangle): Declare as Rect for Mac.
15087 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15088
15089 * macfns.c (x_set_mouse_color): Setup hand_cursor.
15090 (x_set_cursor_color): Use x_display_and_set_cursor.
15091
15092 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
15093 included from it. Add dependency on keymap.h.
15094
15095 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
15096
15097 2003-03-21 Kenichi Handa <handa@m17n.org>
15098
15099 * fileio.c (Fexpand_file_name): Fix previous change.
15100
15101 2003-03-19 Kenichi Handa <handa@m17n.org>
15102
15103 * fileio.c (Ffile_name_directory): Reconstruct file name by
15104 make_specified_string.
15105 (Ffile_name_nondirectory, Ffile_name_as_directory)
15106 (Fdirectory_file_name, Fexpand_file_name)
15107 (Fsubstitute_in_file_name): Likewise.
15108 (Fread_file_name): Compare decoded homedir with DIR and
15109 DEFAULT_FILENAME.
15110
15111 * alloc.c (make_specified_string): If NCHARS is negative, count
15112 the number of characters.
15113
15114 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15115
15116 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
15117 all widgets.
15118
15119 * gtkutil.h: Removed xg_ignore_next_thumb.
15120
15121 2003-03-18 Kenichi Handa <handa@m17n.org>
15122
15123 * coding.c (Vchar_coding_system_table): Remove this variable.
15124 (Vcoding_system_safe_chars): New variable.
15125 (intersection): Remove this function.
15126 (find_safe_codings): Don't use Vchar_coding_system_table, but try
15127 all codings in SAFE_CODINGS.
15128 (Ffind_coding_systems_region_internal): Adjust for the change of
15129 find_safe_codings. Get generic coding systems from
15130 Vcoding_system_safe_chars.
15131 (Fdefine_coding_system_internal): New function.
15132 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
15133 Initialize and staticpro Vcoding_system_safe_chars.
15134
15135 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15136
15137 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
15138 equal old values before updating.
15139
15140 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
15141
15142 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
15143
15144 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15145
15146 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
15147 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
15148 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
15149 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
15150 (xg_create_scroll_bar): Pass bar to button event callback.
15151 (xg_find_top_left_in_fixed): New function.
15152 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
15153 whole scroll bar area. Get old position with
15154 xg_find_top_left_in_fixed, calculate and only clear needed areas.
15155 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
15156 dragging is in progress. Calculate whole as for Motif.
15157 Remove code that saved last values. Call gtk_range functions to
15158 set scroll bar sizes.
15159
15160 * gtkutil.h: Removed xg_ignore_next_thumb.
15161
15162 2003-03-17 Juanma Barranquero <lektu@terra.es>
15163
15164 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
15165 and files included from it.
15166
15167 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
15168
15169 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
15170 multiple occurrences of the same keymap under different prefixes.
15171 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
15172
15173 2003-03-16 Jason Rumney <jasonr@gnu.org>
15174
15175 * w32gui.h: Use HDC for Display.
15176
15177 * w32term.c (w32_encode_char): Prevent double-byte chars from
15178 crashing Emacs.
15179
15180 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
15181 as binary.
15182
15183 2003-03-16 Juanma Barranquero <lektu@terra.es>
15184
15185 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
15186
15187 2003-03-16 Kim F. Storm <storm@cua.dk>
15188
15189 The following changes consolidate some of the gui-independent
15190 parts of the processing and drawing of "glyph strings" from
15191 xterm.c, w32term.c, and macterm.c into xdisp.c.
15192
15193 * dispextern.h (struct glyph): Reduce face_id member from 22 to
15194 21 bits (this reduces number of faces from 4M to 2M).
15195 Replace W32 specific w32_font_type member (2 bits) by generic
15196 font_type member (3 bits) for portability.
15197 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
15198 (enum draw_glyphs_face): Define here.
15199 (struct glyph_string): Define here. Merge W32 and X versions.
15200 (struct redisplay_interface): New members per_char_metric,
15201 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
15202 (VCENTER_BASELINE_OFFSET): Define here.
15203 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
15204 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
15205
15206 * xdisp.c: Consolidate gui-independent "glyph string" code here.
15207 (dump_glyph_string): Moved here.
15208 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
15209 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
15210 (fill_composite_glyph_string, fill_glyph_string)
15211 (fill_image_glyph_string, fill_stretch_glyph_string)
15212 (left_overwritten, left_overwriting, right_overwritten)
15213 (right_overwriting, get_char_face_and_encoding)
15214 (set_glyph_string_background_width, compute_overhangs_and_x)
15215 (append_glyph, append_composite_glyph, produce_image_glyph)
15216 (take_vertical_position_into_account, append_stretch_glyph)
15217 (produce_stretch_glyph): New generic functions (based on X version).
15218 Call platform specific functions through rif.
15219 (INIT_GLYPH_STRING): New macro, hides W32 details.
15220 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
15221 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
15222 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
15223 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
15224 (notice_overwritten_cursor):
15225 Generic functions exported to platform modules. Users changed.
15226
15227 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
15228 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
15229 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
15230 New macros for consolidated code.
15231
15232 * xterm.c: Remove consolidated defines and code.
15233 (x_per_char_metric, x_encode_char)
15234 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
15235 (x_redisplay_interface): Add new members.
15236
15237 * w32gui.h (Display): Add dummy typedef for consolidation.
15238 (XChar2b): Define alias for wchar_t for consolidation.
15239 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15240
15241 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
15242 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
15243 New macros for consolidation.
15244
15245 * w32term.c: Remove consolidated defines and code.
15246 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
15247 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
15248 (w32_per_char_metric): Change font_type arg to int for RIF.
15249 (w32_encode_char): Return int according to RIF requirements.
15250 (w32_compute_glyph_string_overhangs): Adapt to RIF.
15251 (w32_get_glyph_overhangs): New function for RIF. Uses generic
15252 x_get_glyph_overhangs.
15253 (w32_redisplay_interface): Add new members.
15254
15255 * macgui.h (XChar2b): Move typedef here for consolidation.
15256 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15257
15258 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
15259 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
15260 consolidation.
15261
15262 * macterm.c: Remove consolidated defines and code.
15263 (mac_per_char_metric): New function for RIF.
15264 (mac_encode_char): Adapt to new RIF requirements.
15265 (mac_compute_glyph_string_overhangs): Adapt for RIF.
15266 (x_redisplay_interface): Add new members.
15267
15268 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
15269
15270 * keymap.c (Vmenu_events): New var.
15271 (syms_of_keymap): Initialize it.
15272 (where_is_internal): Check more carefully what is a menu event.
15273
15274 2003-03-14 Richard M. Stallman <rms@gnu.org>
15275
15276 * lread.c (read1): After #!, exit loop on eof.
15277
15278 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15279
15280 * gtkutil.h: Add declaration for xg_frame_cleared.
15281
15282 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
15283
15284 * gtkutil.c (struct xg_last_sb_pos): New structure.
15285 (handle_fixed_child): New function.
15286 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
15287 and force a redraw on them.
15288 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
15289 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
15290 so we can avoid unneeded redraws.
15291 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
15292 and force a redraw on the scroll bar.
15293 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
15294 if xg_last_sb_pos shows the positions are up to date.
15295 (xg_frame_cleared): New function.
15296
15297 2003-03-13 Kenichi Handa <handa@m17n.org>
15298
15299 * coding.c (Fdetect_coding_region): Fix docstring.
15300 (Fdetect_coding_string): Fix docstring.
15301
15302 2003-03-13 Andreas Schwab <schwab@suse.de>
15303
15304 * gtkutil.c: Add prototype for create_menus.
15305
15306 * data.c (long_to_cons): Fix type of top.
15307
15308 * xselect.c (selection_data_to_lisp_data): Use int instead of
15309 long for an integer of size 4.
15310
15311 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
15312 (xg_tool_bar_help_callback): Likewise.
15313
15314 2003-03-12 Andreas Schwab <schwab@suse.de>
15315
15316 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
15317
15318 2003-03-12 Kim F. Storm <storm@cua.dk>
15319
15320 The following changes consolidate the fringe handling from
15321 xterm.c, w32term.c, and macterm.c into xdisp.c.
15322
15323 * xdisp.c: Consolidate fringe handling code here.
15324 (left_bits, right_bits, continued_bits, continuation_bits)
15325 (ov_bits, zv_bits): Define fringe bitmaps.
15326 (fringe_bitmaps): New array holding fringe bitmaps.
15327 (draw_fringe_bitmap): Draw a specific bitmap; call display
15328 specific drawing routine via rif->draw_fringe_bitmap.
15329 (draw_row_fringe_bitmaps): Generic replacement for
15330 x_draw_row_fringe_bitmaps; all callers changed.
15331 (compute_fringe_widths): Generic replacement for
15332 x_compute_fringe_widths; all callers changed.
15333
15334 * dispextern.h (enum fringe_bitmap_type): Define here.
15335 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
15336 (fringe_bitmaps): Declare extern.
15337 (struct redisplay_interface): New member draw_fringe_bitmap.
15338 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
15339
15340 * xterm.c: Remove generic fringe code.
15341 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15342 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15343
15344 * w32term.c: Remove generic fringe code.
15345 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
15346 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
15347
15348 * macterm.c: Remove generic fringe code.
15349 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15350 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15351
15352 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
15353
15354 * print.c (Fprin1_to_string): Return unibyte string if possible.
15355
15356 2003-03-09 David Kastrup <dak@gnu.org>
15357
15358 * process.c (read_process_output): We have allocated enough space
15359 for readmax and carryover, so actually use the alloted space.
15360
15361 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15362
15363 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
15364 toolkit scrollbar click.
15365
15366 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
15367 for USE_GTK.
15368 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
15369 also.
15370 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
15371 scrollbar and control is pressed, call x_scroll_bar_handle_click.
15372
15373 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
15374
15375 * gtkutil.c (xg_get_scroll_id_for_window): New function.
15376 (xg_tool_bar_item_expose_callback): New function.
15377 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
15378 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
15379 on the tool bar widget.
15380 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
15381 to expose on the tool bar item widgets.
15382
15383 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15384
15385 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
15386 struct image* when deciding to update (struct image* may have been
15387 deleted from the image cache).
15388
15389 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
15390 the event isn't for a frame (i.e. for dialogs).
15391
15392 2003-03-07 Kenichi Handa <handa@m17n.org>
15393
15394 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
15395 composition components reaches the limit, terminate composing.
15396 (COMPOSITION_OK): New macro.
15397 (detect_coding_iso2022): Use it if an escape sequence for
15398 composition is found.
15399 (coding_restore_composition): Adjust the number of composition
15400 components if it is not sane.
15401
15402 2003-03-06 Juanma Barranquero <lektu@terra.es>
15403
15404 * w32term.h (struct w32_display_info): Add xrdb member to support
15405 passing resources via -xrm on Windows.
15406
15407 * w32term.c (w32_make_rdb): New function.
15408 (w32_term_init): Use it to initialize xrdb member of w32_display_info
15409 struct. Delete leftover code.
15410
15411 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
15412 for resources passed on the command line.
15413
15414 * w32reg.c (w32_get_rdb_resource): New function.
15415 (x_get_string_resource): Use it, so resources passed with -xrm
15416 supercede the ones in the registry.
15417
15418 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15419
15420 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
15421 instead of x_top_window_to_frame.
15422
15423 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15424
15425 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
15426 when restarting Emacs.
15427
15428 2003-03-03 Richard M. Stallman <rms@gnu.org>
15429
15430 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
15431 to run kill-buffer-query-functions.
15432 (Qkill_buffer_query_functions): New var.
15433 (syms_of_buffer): Init and staticpro it.
15434
15435 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15436
15437 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
15438
15439 2003-02-25 Kim F. Storm <storm@cua.dk>
15440
15441 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
15442 If centering point failed to make whole line visible and vscroll
15443 is non-zero, disable vscroll and try centering point again.
15444
15445 * lread.c (read1): Accept `single space' syntax like (? x).
15446
15447 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15448
15449 * keyboard.c (cancel_hourglass_unwind): Surround with
15450 #ifdef HAVE_X_WINDOWS
15451
15452 2003-02-25 Kenichi Handa <handa@m17n.org>
15453
15454 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
15455 process only when "subprocesses" is defined.
15456
15457 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
15458
15459 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
15460
15461 2003-02-24 Juanma Barranquero <lektu@terra.es>
15462
15463 * callint.c (fix_command): Declare as static void and move before
15464 Fcall_interactively.
15465
15466 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
15467 (syms_of_xdisp): Don't initialize Qwhen.
15468
15469 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15470
15471 * keyboard.c (cancel_hourglass_unwind): New function.
15472 (command_loop_1): Cancel hourglass with unwind-protect.
15473
15474 2003-02-23 Richard M. Stallman <rms@gnu.org>
15475
15476 * callint.c (fix_command): New subroutine, from Fcall_interactively.
15477 Detect (when ... (region-beginning)) etc.
15478 (Fcall_interactively): Call fix_command.
15479 (Qif, Qwhen): New variables.
15480 (syms_of_callint): Init and staticpro them.
15481
15482 * regex.c (print_partial_compiled_pattern): Output to stderr.
15483
15484 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15485
15486 * dired.c (directory_files_internal): Don't expand directory.
15487 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
15488 instead. From Lars Hansen <larsh@math.ku.dk>.
15489
15490 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
15491
15492 * fns.c (string_to_multibyte): Remove unused var i.
15493 (Flanginfo): Fix int/Lisp_Object mixup.
15494 (void_call2): New fun.
15495 (Fmap_char_table): Use it in place of call2.
15496
15497 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
15498
15499 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
15500
15501 * keymap.c (copy_keymap_1): Make it static.
15502
15503 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
15504
15505 2003-02-22 David Ponce <david@dponce.com>
15506
15507 * lread.c (Fload): Don't check STRING_MULTIBYTE.
15508
15509 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15510
15511 * process.h: Removed subtty field from struct Lisp_Process.
15512
15513 * process.c (create_process): Remove setting of subtty.
15514 (emacs_get_tty_pgrp): New function.
15515 (Fprocess_running_child_p, process_send_signal):
15516 Call emacs_get_tty_pgrp instead of ioctl.
15517 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
15518
15519 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15520
15521 * keymap.c (Fdefine_key): Doc fix.
15522
15523 2003-02-21 Juanma Barranquero <lektu@terra.es>
15524
15525 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
15526
15527 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
15528 POLLING_PROBLEM_IN_SELECT.
15529
15530 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
15531 Delete #undef of POLLING_PROBLEM_IN_SELECT.
15532
15533 * s/hpux10-20.h: New file.
15534
15535 * process.c (wait_reading_process_input):
15536 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
15537
15538 2003-02-20 Kenichi Handa <handa@m17n.org>
15539
15540 * fontset.c (check_fontset_name): If NAME is nil, return the
15541 default fontset.
15542 (override_font_info): New function.
15543 (Fset_fontset_font): Document that NAME nil means the default fontset.
15544 (Ffontset_info): If FONTSET is not the default fontset, merge
15545 FONTSET onto the copy of the default fontset, and work on that
15546 copy. Document that NAME nil means the default fontset.
15547 (Ffontset_font): Document that NAME nil means the default fontset.
15548
15549 * process.c (setup_process_coding_systems): If the process's
15550 in/out descriptor is -1, do nothing.
15551
15552 2003-02-19 Andreas Schwab <schwab@suse.de>
15553
15554 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
15555 Add prototypes.
15556
15557 2003-02-19 Kenichi Handa <handa@m17n.org>
15558
15559 * xfaces.c (try_alternative_families): Try all scalable fonts if
15560 Vscalable_fonts_allowed is not Qt.
15561
15562 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15563
15564 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
15565
15566 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15567
15568 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
15569 names.
15570
15571 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
15572 (sorted_font_list): Move allocation of struct font_name to
15573 x_face_list_fonts.
15574 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
15575 (Fx_list_fonts): Set maxnames to -1 to get all font names.
15576
15577 2003-02-18 Kim F. Storm <storm@cua.dk>
15578
15579 * lread.c (read1): Fix last change.
15580 "`" is not always special. Allow "?" after a character constant.
15581
15582 2003-02-18 Andrew Choi <akochoi@shaw.ca>
15583
15584 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
15585
15586 2003-02-18 Andreas Schwab <schwab@suse.de>
15587
15588 * window.c (window_scroll_pixel_based): Move outside a
15589 multi-glyph character before setting new window start.
15590
15591 * xdisp.c (in_display_vector_p): New function.
15592 * dispextern.h (in_display_vector_p): Declare.
15593
15594 2003-02-18 Kim F. Storm <storm@cua.dk>
15595
15596 * lread.c (read1): Fix and relax read syntax.
15597 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
15598 Only recognize "," after dotted-pair dot if inside backquote.
15599 Never include "`" or "," (inside backquote) in a symbol.
15600 Allow dotted-pair dot after a character constant.
15601 Allow "`" and "," (inside backquote) after a character constant.
15602
15603 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15604
15605 * gtkutil.c (xg_tool_bar_expose_callback): New function.
15606 (xg_create_tool_bar): Force style of tool bar to be horizontal with
15607 icons. Set name of tool bar to emacs-toolbar.
15608 (update_frame_tool_bar): Connect expose event to
15609 xg_tool_bar_expose_callback.
15610
15611 2003-02-17 Richard M. Stallman <rms@gnu.org>
15612
15613 * keyboard.c (this_command_key_count_reset): New variable.
15614 Initiatize to 0 where this_command_key_count is set.
15615 (read_char): Save and restore this_command_key_count_reset
15616 around input method code.
15617 (read_char): If this_command_key_count_reset, echo reread commands.
15618 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
15619
15620 2003-02-17 Kenichi Handa <handa@m17n.org>
15621
15622 * fns.c (string_to_multibyte): Always return a multibyte string.
15623
15624 2003-02-16 Jason Rumney <jasonr@gnu.org>
15625
15626 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
15627 Negative max_fonts parameter means list all.
15628
15629 2003-02-14 Dave Love <fx@gnu.org>
15630
15631 * fns.c (Flanginfo): Doc fix.
15632
15633 2003-02-13 Kim F. Storm <storm@cua.dk>
15634
15635 * lread.c (read_escape): Interpret \s as a SPACE character, except
15636 for \s-X in a character constant which still is the super modifier.
15637 (read1): Signal an `invalid read syntax' error if a character
15638 constant is immediately followed by a digit or symbol character.
15639
15640 * search.c (Fmatch_data): Doc fix. Explicitly state that
15641 match-data is undefined if last search failed.
15642
15643 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
15644 All uses changed.
15645
15646 2003-02-12 Juanma Barranquero <lektu@terra.es>
15647
15648 * eval.c (Fdefmacro): Fix typo.
15649
15650 2003-02-12 Kim F. Storm <storm@cua.dk>
15651
15652 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
15653 macro is a string, convert meta modifiers in string when copying
15654 the string into a vector.
15655
15656 2003-02-11 Kim F. Storm <storm@cua.dk>
15657
15658 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
15659
15660 2003-02-11 Kenichi Handa <handa@m17n.org>
15661
15662 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
15663
15664 2003-02-10 Kim F. Storm <storm@cua.dk>
15665
15666 * process.c: Doc fixes.
15667 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
15668
15669 2003-02-10 Kenichi Handa <handa@m17n.org>
15670
15671 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
15672
15673 * process.c (QCfilter_multibyte): New variable.
15674 (setup_process_coding_systems): New function.
15675 (Fset_process_buffer, Fset_process_filter):
15676 Call setup_process_coding_systems.
15677 (Fstart_process): Initialize the member `filter_multibyte' of
15678 struct Lisp_Process.
15679 (create_process): Call setup_process_coding_systems.
15680 (Fmake_network_process): New keyward `:filter-multibyte'.
15681 Initialize the member `filter_multibyte' of struct Lisp_Process.
15682 Call setup_process_coding_systems.
15683 (server_accept_connection): Call setup_process_coding_systems.
15684 (read_process_output): If the process has a filter, decide the
15685 multibyteness of a string to given to the filter by
15686 `filter_multibyte' member of the process. If the process doesn't
15687 have a filter and the result of conversion is unibyte, use
15688 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
15689 multibyte form.
15690 (Fset_process_coding_system): Call setup_process_coding_systems.
15691 (Fset_process_filter_multibyte): New function.
15692 (Fprocess_filter_multibyte_p): New function.
15693 (syms_of_process): Intern and staticpro QCfilter_multibyte.
15694 Defsubr Sset_process_filter_multibyte and
15695 Sprocess_filter_multibyte_p.
15696
15697 * process.h (struct Lisp_Process): New member filter_multibyte.
15698
15699 * lisp.h (setup_process_coding_systems): Add prototype.
15700
15701 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
15702 process, update coding systems for the process.
15703
15704 2003-02-09 Kenichi Handa <handa@m17n.org>
15705
15706 * fns.c (string_to_multibyte): New function.
15707 (Fstring_to_multibyte): New function.
15708 (syms_of_fns): Defsubr it.
15709
15710 2003-02-08 Andreas Schwab <schwab@suse.de>
15711
15712 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
15713 instead of the substitution.
15714
15715 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15716
15717 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
15718
15719 * xmenu.c (menu_position_func): Adjust menu popup position so that
15720 the menu is fully visible.
15721
15722 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15723
15724 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
15725 (x_make_frame_invisible, x_wm_set_icon_position):
15726 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
15727
15728 * xfns.c (x_set_name, x_set_title): Ditto.
15729
15730 2003-02-04 Richard M. Stallman <rms@gnu.org>
15731
15732 * keyboard.c (echo_now): Update before_command_echo_length.
15733 (Freset_this_command_lengths): Reset this_command_key_count etc.
15734 immediately rather than arranging to do it later.
15735 (before_command_key_count_1, before_command_echo_length_1)
15736 (before_command_restore_flag): Vars deleted.
15737 (add_command_key): Don't handle before_command_restore_flag.
15738 (read_char, record_menu_key): Don't update before_command_key_count or
15739 before_command_echo_length.
15740 (read_char): Don't handle before_command_restore_flag.
15741
15742 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
15743 in direct-output clauses if it wouldn't be called in the ordinary case.
15744
15745 2003-02-04 Kim F. Storm <storm@cua.dk>
15746
15747 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
15748
15749 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15750
15751 * gtkutil.c (remove_from_container): Copying list is not needed.
15752 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
15753 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
15754 on list returned from gtk_container_get_children to avoid memory leak.
15755
15756 2003-02-01 Jason Rumney <jasonr@gnu.org>
15757
15758 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
15759 local malloc.
15760 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
15761 definitions in xpm.h.
15762 (init_xpm_functions): New function.
15763 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
15764 (init_external_image_libraries): Try to load libXpm.dll.
15765
15766 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
15767 timestamp.
15768
15769 2003-01-31 Dave Love <fx@gnu.org>
15770
15771 * syntax.c (Fskip_chars_forward)
15772 (open-paren-in-column-0-is-defun-start): Doc fix.
15773
15774 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
15775
15776 * fileio.c: Support // at start of name for Cygwin (just added proper
15777 preprocessor tests).
15778
15779 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
15780
15781 * Makefile.in: Use @EXEEXT@ for Cygwin.
15782
15783 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
15784
15785 * s/cygwin.h: Added for Cygwin port.
15786
15787 2003-01-31 Juanma Barranquero <lektu@terra.es>
15788
15789 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
15790 when including gif_lib.h.
15791 (init_gif_functions, init_tiff_functions): New functions.
15792 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
15793 Windows. Disable color table lookups. Call library functions
15794 through pointers determined at runtime.
15795 (init_external_image_libraries): Try to load libungif.dll and
15796 libtiff.dll.
15797
15798 2003-01-31 Kenichi Handa <handa@m17n.org>
15799
15800 * xdisp.c (SKIP_GLYPHS): New macro.
15801 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
15802
15803 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15804
15805 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
15806
15807 2003-01-30 Dave Love <fx@gnu.org>
15808
15809 * alloc.c (Vgc_elapsed, gcs_done): New variables.
15810 (Fgarbage_collect): Use them.
15811 (init_alloc, syms_of_alloc): Set them up.
15812
15813 2003-01-30 Juanma Barranquero <lektu@terra.es>
15814
15815 * w32fns.c (init_external_image_libraries): Add missing operator.
15816
15817 2003-01-29 Jason Rumney <jasonr@gnu.org>
15818
15819 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
15820 an alternative name for jpeg.dll.
15821
15822 2003-01-29 Kenichi Handa <handa@m17n.org>
15823
15824 * xdisp.c (set_cursor_from_row): Pay attention to string display
15825 properties.
15826
15827 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
15828
15829 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
15830 <escape>.
15831 (keycode_to_xkeysym_table): Reformat and add more comments.
15832 (XTread_socket): Drop special case for backspace.
15833
15834 2003-01-28 Andrew Choi <akochoi@shaw.ca>
15835
15836 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
15837 values in old-style RGB specs.
15838
15839 2003-01-27 Juanma Barranquero <lektu@terra.es>
15840
15841 * w32fns.c (init_external_image_libraries): Try alternate names for the
15842 jpeg dll.
15843
15844 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15845
15846 * gtkutil.c (create_dialog, xg_separator_p)
15847 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
15848 before calling strcmp or strlen.
15849
15850 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15851
15852 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
15853 and handle image load failure.
15854
15855 2003-01-26 Jason Rumney <jasonr@gnu.org>
15856
15857 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
15858 New functions.
15859 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
15860 Disable color table lookups. Call jpeg library functions
15861 through pointers determined at runtime.
15862 (init_external_image_libraries): Try to load jpeg.dll.
15863
15864 2003-01-25 Richard M. Stallman <rms@gnu.org>
15865
15866 * lisp.h: Declare format2 instead of format1.
15867
15868 * fileio.c (barf_or_query_if_file_exists):
15869 Call format2 instead of format1.
15870
15871 * editfns.c (format2): New function, replaces format1
15872 but takes exactly two Lisp Objects as format args.
15873
15874 * buffer.c (Fkill_buffer): Call format2 instead of format1.
15875
15876 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15877
15878 * xterm.h: Change to return value of x_dispatch_event to int.
15879
15880 * xterm.c (x_filter_event): New function.
15881 (event_handler_gdk, XTread_socket): Call x_filter_event.
15882 (x_dispatch_event): Change to return value of finish.
15883 (event_handler_gdk): Use return value from x_dispatch_event.
15884
15885 * xfns.c (x_window): Call create_frame_xic for GTK version to
15886 initialize input methods.
15887
15888 * gtkutil.h: Add (void) prototypes.
15889
15890 * gtkutil.c (create_menus): Remove code that puts the help menu to
15891 the right.
15892
15893 2003-01-25 Jason Rumney <jasonr@gnu.org>
15894
15895 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
15896 [HAVE_PNG]: Sync with xfns.c version.
15897 (png_load): Adjust colors for Windows. Use Windows
15898 bitmaps. Disable color table lookups.
15899 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
15900 (init_png_functions): New function.
15901 (png_read_from_memory, png_load): Call png library functions
15902 through pointers determined at runtime.
15903 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
15904 (init_external_image_libraries): New function.
15905 (init_xfns): Call it.
15906
15907 2003-01-24 Andreas Schwab <schwab@suse.de>
15908
15909 * minibuf.c (Fminibuffer_message): Verify type of parameter.
15910
15911 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15912
15913 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
15914 of static initializer.
15915
15916 2003-01-24 Dave Love <fx@gnu.org>
15917
15918 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
15919 architectures.
15920
15921 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
15922 Use __alignof__.
15923
15924 2003-01-24 Kenichi Handa <handa@m17n.org>
15925
15926 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
15927 It it is nonzero, don't pretend that an invisible area doesn't exist.
15928 (command_loop_1): Call adjust_point_for_property with proper
15929 second arg.
15930
15931 2003-01-22 Jason Rumney <jasonr@gnu.org>
15932
15933 Sync changes with xterm.c and xfns.c.
15934
15935 * w32term.c (x_draw_glyph_string_foreground)
15936 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15937
15938 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
15939 phys_cursor's hpos is overwritten. This is still not completely
15940 correct, as it doesn't really make sense to use hpos at all to
15941 get the cursor glyph (as that is relative to the width of the
15942 characters on the line, which may have changed during the update).
15943
15944 * w32term.c (notice_overwritten_cursor): Handle the special case
15945 of the cursor being in the first blank non-text line at the
15946 end of a window.
15947
15948 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
15949 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
15950 Compute from the x position returned by x_draw_glyphs.
15951
15952 (x_display_and_set_cursor): Don't set phys_cursor_width here,
15953 except for NO_CURSOR and system caret, to make phys_cursor_width
15954 contain what its name suggests.
15955 (notice_overwritten_cursor): Consider the cursor image erased if
15956 the output area intersects the cursor image in y-direction.
15957
15958 * w32term.c (note_mode_line_or_margin_highlight): Rename from
15959 note_mode_line_highlight and extend.
15960
15961 * w32term.c (last_window): New variable.
15962 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
15963 (note_mouse_movement): Remove reimplemented code in #if 0.
15964
15965 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
15966 not update_mode_lines, and always set it to 1.
15967
15968 2003-01-21 Jason Rumney <jasonr@gnu.org>
15969
15970 * w32fns.c (IDC_HAND): Define it if system headers don't.
15971
15972 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
15973
15974 * w32term.h (struct w32_output): New member hand_cursor.
15975 (WM_EMACS_SETCURSOR): New message definition.
15976
15977 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
15978 function w32_define_cursor.
15979 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
15980 position, change member name output_data.x to output_data.w32 and
15981 add function w32_define_cursor.
15982 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
15983 and change member name output_data.x to output_data.w32.
15984 (w32_initialize_display_info):
15985 Setup dpyinfo->vertical_scroll_bar_cursor.
15986
15987 * w32fns.c (Vx_hand_shape): New variable.
15988 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
15989 WM_EMACS_SETCURSOR.
15990 (x-create-frame): Setup Cursor types.
15991
15992 2003-01-21 David Ponce <david@dponce.com>
15993
15994 * w32term.c (w32_encode_char): For DIM=1 charset, set
15995 ccl->reg[2] to -1 before calling ccl_driver.
15996 (Sync. with xterm.c x_encode_char change by Kenichi Handa
15997 <handa@m17n.org> on 2002-09-30.)
15998 (w32_draw_relief_rect): Declare all args.
15999 (w32_define_cursor): New.
16000
16001 * w32fns.c (w32_load_cursor): New function.
16002 (w32_init_class): Use it.
16003 (x_put_x_image): Declare all args.
16004
16005 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
16006
16007 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
16008
16009 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16010
16011 * gtkutil.c: Must include stdio.h before termhooks.h
16012
16013 2003-01-21 Dave Love <fx@gnu.org>
16014
16015 * alloc.c (Fgc_status): Print zombie list.
16016 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16017 Fix assignment of zombies.
16018 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16019 Don't take car of non-cons.
16020
16021 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16022
16023 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16024
16025 2003-01-20 David Ponce <david@dponce.com>
16026
16027 * w32menu.c (digest_single_submenu): Declare all args.
16028
16029 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
16030 changes in xmenu.c:
16031
16032 (parse_single_submenu): Use individual keymap's prompt
16033 string as pane name, if there is one.
16034 (set_frame_menubar): Save menu_items_n_panes from each call to
16035 parse_single_submenu and use it when calling digest_single_submenu.
16036
16037 2003-01-20 Steven Tamm <steventamm@mac.com>
16038
16039 * macterm.c (XTread_socket): Check for valid, visible window
16040 before sending a scroll-wheel event.
16041
16042 2003-01-20 Richard M. Stallman <rms@gnu.org>
16043
16044 * xdisp.c (redisplay_window): If mini window's buffer is not
16045 a minibuffer, then redisplay it like other windows.
16046
16047 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16048
16049 * gtkutil.c (xg_create_frame_widgets): Check if there is an
16050 external tool bar before setting tool bar height.
16051
16052 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16053
16054 * xterm.c (handle_one_xevent): Surround popup_activated
16055 with #ifdef:s for non-toolkit version.
16056
16057 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
16058 (gtkutil.o): New file.
16059 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
16060 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
16061
16062 * gtkutil.c: New file for GTK version.
16063
16064 * gtkutil.h: New file for GTK version.
16065
16066 * xterm.h: Add xt_or_gtk_widget.
16067 Include gtk files for USE_GTK.
16068 (struct x_output): Add toolbar_height.
16069 (struct x_output): Add GTK widgets and Gdk size_hints.
16070 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
16071 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
16072 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
16073
16074 * xterm.c: Include gtkutil.h for USE_GTK.
16075 (free_frame_menubar): Declare extern void for USE_GTK.
16076 (note_mouse_highlight): Check popup_activated for USE_GTK.
16077 (xt_action_hook): Don't compile if USE_GTK.
16078 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
16079 (xg_scroll_callback): New function.
16080 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
16081 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
16082 for USE_GTK.
16083 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
16084 xg_show_scroll_bar for USE_GTK.
16085 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
16086 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
16087 (event_handler_gdk): New function for USE_GTK.
16088 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
16089 (handle_one_xevent): Make sure widget is mapped before
16090 calling x_real_positions for USE_GTK.
16091 (XTread_socket): Add GTK event loop for USE_GTK.
16092 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
16093 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
16094 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
16095 (x_iconify_frame): Add code for USE_GTK.
16096 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
16097 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
16098 is in gtkutil.c.
16099 (x_term_init): Add initialization for GTK.
16100 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
16101
16102 * xmenu.c: Include gtkutil.h for USE_GTK.
16103 (Fx_popup_menu): Use current position if x and y is NIL.
16104 (single_menu_item, single_menu_item, Fx_popup_dialog):
16105 Check for USE_GTK.
16106 (popup_widget_loop): New function for USE_GTK.
16107 (x_activate_menubar): Add code for USE_GTK.
16108 (popup_activate_callback, popup_deactivate_callback)
16109 (menu_highlight_callback, menubar_selection_callback):
16110 Add USE_GTK versions.
16111 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
16112 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
16113 (free_frame_menubar): Only compile if not USE_GTK. GTK version
16114 is in gtkutil.c.
16115 (popup_selection_callback): New version for USE_GTK.
16116 (create_and_show_popup_menu): New fuction, one USE_GTK version and
16117 one USE_X_TOOLKIT version.
16118 (xmenu_show): Call create_and_show_popup_menu.
16119 (dialog_selection_callback): New version for USE_GTK.
16120 (create_and_show_dialog): New fuction, one USE_GTK version and
16121 one USE_X_TOOLKIT version.
16122 (xdialog_show): Call create_and_show_dialog.
16123
16124 * xfns.c: Include gtkutil for USE_GTK.
16125 (x_window_to_frame, x_any_window_to_frame)
16126 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
16127 (x_top_window_to_frame): Add code for USE_GTK.
16128 (x_set_background_color): Call xg_set_background_color for GTK.
16129 (x_set_menu_bar_lines): Check for USE_GTK.
16130 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
16131 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
16132 (x_window): Call xg_create_frame_widgets for USE_GTK.
16133 (Fx_create_frame): Check for USE_GTK
16134 (Fx_file_dialog): New implementation for USE_GTK.
16135
16136 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
16137 (update_menu_bar): Add check for USE_GTK.
16138 (update_tool_bar): Add check for USE_GTK and external tool bar.
16139 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
16140 (redisplay_internal): Add check for USE_GTK and popup_activated.
16141 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
16142 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
16143 (display_menu_bar): Add check for USE_GTK
16144
16145 * lisp.h (Vx_resource_name): Declare extern.
16146
16147 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
16148 for USE_GTK.
16149 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
16150
16151 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
16152 (FRAME_EXTERNAL_TOOL_BAR): New macro.
16153 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
16154
16155 * fileio.c (Fread_file_name): Add check for USE_GTK.
16156
16157 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
16158 Add check for USE_GTK.
16159
16160 * config.in: Added HAVE_GTK
16161
16162 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
16163
16164 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
16165
16166 * charset.h (Funibyte_char_to_multibyte): Export.
16167
16168 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16169
16170 * xmenu.c (mouse_position_for_popup): New function.
16171 (Fx_popup_menu): Call mouse_position_for_popup for X and
16172 mouse_position_hook for others.
16173
16174 2003-01-17 Kim F. Storm <storm@cua.dk>
16175
16176 * editfns.c (Finsert): Mention `string-make-multibyte' and
16177 `string-as-multibyte' in doc string.
16178
16179 2003-01-17 Kenichi Handa <handa@m17n.org>
16180
16181 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
16182
16183 * editfns.c (Fformat): Convert an unibyte char argument that is
16184 formatted by "%c" to multibyte if the total result must be a
16185 multibyte string.
16186
16187 2003-01-16 Kim F. Storm <storm@cua.dk>
16188
16189 * process.c (set-process-filter): Document unibyte/multibyte-ness
16190 of string argument.
16191
16192 2003-01-16 Kenichi Handa <handa@m17n.org>
16193
16194 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
16195
16196 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
16197 (re_search_2): Likewise.
16198
16199 2003-01-15 Kenichi Handa <handa@m17n.org>
16200
16201 * xdisp.c (message_dolog): Fix bug of the case that *Message*
16202 buffer is unibyte.
16203
16204 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
16205
16206 * fns.c (Fsubstring): Clarify doc string.
16207
16208 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
16209 (Fprevious_char_property_change)
16210 (Fnext_single_char_property_change)
16211 (Fprevious_single_char_property_change, Fnext_property_change)
16212 (Fnext_single_property_change, Fprevious_property_change)
16213 (Fprevious_single_property_change, Fadd_text_properties)
16214 (Fput_text_property, Fset_text_properties)
16215 (Fremove_text_properties, Fremove_list_of_text_properties)
16216 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
16217
16218 2003-01-14 Kim F. Storm <storm@cua.dk>
16219
16220 * process.h (struct Lisp_Process): New member plist replaces old
16221 member private_vars. All uses changed.
16222
16223 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
16224 (QCplist): Rename from QCvars. Change all uses.
16225 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
16226 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
16227 (syms_of_process): Intern, staticpro, defsubr these.
16228 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
16229
16230 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
16231
16232 * m/delta.h: Remove (obsolete).
16233
16234 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
16235
16236 * fileio.c (Fdelete_directory, Fdelete_file): Document the
16237 behaviour in front of symlinks.
16238 (Fdelete_file): Raise an error on directories.
16239
16240 2003-01-13 Dave Love <fx@gnu.org>
16241
16242 * fns.c (Freverse): Use QUIT.
16243
16244 2003-01-13 Richard M. Stallman <rms@gnu.org>
16245
16246 * minibuf.c (minibuffer_completion_contents):
16247 Error if point is inside prompt.
16248
16249 * keyboard.c (command_loop_1): Don't redisplay directly
16250 if there's a post-command-hook.
16251
16252 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
16253 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
16254
16255 2003-01-12 Kim F. Storm <storm@cua.dk>
16256
16257 * process.h (struct Lisp_Process): New member private_vars.
16258
16259 * process.c (QCvars): New variable.
16260 (syms_of_process): Intern and staticpro it.
16261 (Fset_process_contact): Removed function.
16262 (Fprocess_variable, Fset_process_variable): New functions.
16263 (syms_of_process): Defsubr them.
16264 (Fstart_process): Initialize private_vars plist to nil.
16265 (Fmake_network_process): New arg :vars to setup the private
16266 variables for new network process.
16267 (server_accept_connection): Copy server's private variables to
16268 client process.
16269
16270 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
16271 crashes). Code rewritten and simplified. Now directly aligns the
16272 pointer and recalculates pure_bytes_used, rather than aligning the
16273 size and adjusting the pointer.
16274
16275 2003-01-11 Kim F. Storm <storm@cua.dk>
16276
16277 * process.c (Fset_process_contact): New function.
16278 (syms_of_process): defsubr it.
16279 (make-network-process): Update doc.
16280
16281 2003-01-10 Andreas Schwab <schwab@suse.de>
16282
16283 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
16284 Reported by Berthold Gunreben <b.gunreben@web.de>.
16285
16286 2003-01-10 Dave Love <fx@gnu.org>
16287
16288 * composite.c (syms_of_composite): Make composition_hash_table weak.
16289
16290 2003-01-09 Kim F. Storm <storm@cua.dk>
16291
16292 * process.c (Fmake_network_process): Convert new port number
16293 to host byte order for `:service t' case. From Mario Lang.
16294
16295 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16296
16297 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
16298 instead of XtAppProcessEvent.
16299
16300 * xterm.c (handle_one_xevent): New function.
16301 (x_dispatch_event): New function.
16302 (XTread_socket): Call handle_one_xevent.
16303
16304 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
16305
16306 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
16307 call XQueryPointer to get coordinates.
16308 (popup_get_selection): Do not set popup_activated_flag to zero,
16309 let popup_deactivate_callback do that. Needed for Motif.
16310 Call x_dispatch_event instead of XtDispatchEvent.
16311 (xmenu_show): Calculate root coordinate from frame top/left position.
16312
16313 2003-01-08 Kim F. Storm <storm@cua.dk>
16314
16315 * process.c (server_accept_connection): Fix recording of new
16316 connection's local address in :local property of contact info.
16317 (Fmake_network_process): Record local network address for new
16318 client processes in :local property of contact info.
16319 (format-network-address): Add arg OMIT-PORT. Change callers.
16320
16321 2003-01-07 Dave Love <fx@gnu.org>
16322
16323 * Makefile.in (fns.o): Depend on coding.h.
16324
16325 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
16326
16327 * minibuf.c (Fread_variable): Doc fix.
16328
16329 * eval.c (Fuser_variable_p): Doc change. For custom variables,
16330 use the same test as for custom-variable-p.
16331
16332 2003-01-05 Richard M. Stallman <rms@gnu.org>
16333
16334 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
16335 Count LAST_LINE_MISFIT in scroll margin for end of window.
16336 Move label too_near_end before setting SCROLL_MARGIN_POS.
16337 Set LAST_LINE_MISFIT before jumping there.
16338
16339 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
16340 scroll_conservatively case. If scrolling that much doesn't change
16341 STARTP, move it down one line.
16342
16343 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
16344 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
16345
16346 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
16347 selected frame.
16348
16349 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
16350 (syms_of_keymap): Staticpro them.
16351 (Fapropos_internal): Initialize them and clear them out.
16352 Don't GCPRO them.
16353
16354 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
16355 Doc fixes.
16356
16357 * lisp.h: New misc type Lisp_Save_Value.
16358 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
16359 (XSAVE_VALUE): New macro.
16360 (struct Lisp_Save_Value): New data type.
16361 (union Lisp_Misc): Add u_save_value alternative.
16362 (make_save_value): Declare.
16363
16364 * alloc.c (make_save_value): New function.
16365
16366 * xterm.c (x_catch_errors): Save dpy using make_save_value.
16367 (x_catch_errors_unwind): Call XSync.
16368
16369 2003-01-01 Richard M. Stallman <rms@gnu.org>
16370
16371 * window.c (window_scroll_pixel_based): Partially undo last change.
16372
16373 * keyboard.c (command_loop_1): Call adjust_point_for_property
16374 in direct action cases for Qforward_char and Qbackward_char.
16375 Set already_adjusted so it won't be done twice.
16376
16377 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
16378
16379 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
16380 type definition of size_t.
16381
16382 2003-01-02 Steven Tamm <steventamm@mac.com>
16383
16384 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
16385 distinguish Carbon GUI builds from X11 builds on darwin.
16386
16387 2002-12-30 Steven Tamm <steventamm@mac.com>
16388
16389 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
16390 to default to t.
16391
16392 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
16393
16394 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
16395
16396 2002-12-28 Steven Tamm <steventamm@mac.com>
16397
16398 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
16399 allow building in a different directory than source. Uses some
16400 GNU Make extensions, but there is no other make on Mac OS X.
16401
16402 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
16403
16404 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
16405 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
16406 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
16407 (Fstring_to_number): Mention the returned value in the doc strings.
16408
16409 2002-12-23 Richard M. Stallman <rms@gnu.org>
16410
16411 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
16412 <scroll-down-aggressively>: Doc fix.
16413
16414 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
16415 string as pane name, if there is one.
16416 (set_frame_menubar): Save menu_items_n_panes from each call to
16417 parse_single_submenu and use it when calling digest_single_submenu.
16418
16419 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
16420 Don't try to make last line fully visible if it is past end of window.
16421
16422 2002-12-22 Steven Tamm <steventamm@mac.com>
16423
16424 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
16425 (mac_menu_show): Add support for hierarchical popup menus.
16426 (add_menu_item): Remove indentation support.
16427 (fill_submenu, fill_menu): Create hierarchical menus
16428 instead of using indentation.
16429
16430 2002-12-22 Richard M. Stallman <rms@gnu.org>
16431
16432 * xdisp.c (try_cursor_movement): Don't call try_window here.
16433 (redisplay_window): Never redisplay minibuffer when inactive.
16434
16435 * window.c (select_window_1): Undo 9/21 change.
16436
16437 2002-12-22 Steven Tamm <steventamm@mac.com>
16438
16439 * macterm.c (XTread_socket): Call KeyTranslate for control and
16440 meta to deal correctly shifted non-alpha characters, like C-S-5
16441 being treated like C-%. Do not look for shift key to deal
16442 with masking off control-key with mac-reverse-ctrl-meta.
16443
16444 2002-12-21 Richard M. Stallman <rms@gnu.org>
16445
16446 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
16447 If it is non-nil, run timers. Use an unwind-protect to requeue
16448 the events that were read ahead.
16449 (popup_get_selection_unwind): New subroutine.
16450 (popup_get_selection_queue): File-scope variable now holds that queue.
16451 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
16452 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
16453 Use an unwind-protect to pop down the dialog box.
16454 (xdialog_show_unwind): New subroutine implements that.
16455
16456 * xdisp.c (row_containing_pos): Change exit test using last_y.
16457 (try_window_id): Abort if row_containing_pos returns null.
16458
16459 * lread.c (load_error_handler): New function.
16460 (Fload): Handle errors in Fsubstitute_in_file_name.
16461 Don't expect Fsignal to return.
16462
16463 * eval.c: Errors and throws work right with interrupt blocking.
16464 (struct catchtag): New elt interrupt_input_blocked.
16465 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
16466 (internal_catch, Fcondition_case, internal_condition_case)
16467 (internal_condition_case_1, internal_condition_case_2): Save it.
16468 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
16469
16470 * editfns.c (Fformat): Add parens.
16471
16472 * dired.c (file_name_completion): Fix that change.
16473 Delete special quit-handling code; just use QUIT.
16474
16475 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
16476
16477 * dired.c (file_name_completion): Close directory on error
16478 just as in directory_files_internal.
16479
16480 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
16481
16482 * window.c (Fset_window_configuration): Set old_point to correct
16483 value when new_current_buffer == current_buffer.
16484
16485 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
16486
16487 Revisited my earlier fix for the following entry in etc/PROBLEMS:
16488 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
16489 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
16490
16491 These changes were in part based upon suggestions made by Peter
16492 'Luna' Runestig [peter@runestig.com].
16493
16494 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
16495 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
16496 (g_b_init_get_sid_identifier_authority ): Add several static
16497 global variables.
16498
16499 * w32.c (globals_of_w32): New function. Used to initialize those
16500 global variables that must always be initialized on startup even
16501 when the global variable initialized is non zero. Its primary
16502 purpose at this time is to set the global variables
16503 g_b_init_is_windows_9x, g_b_init_open_process_token,
16504 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
16505 g_b_init_get_sid_identifier_authority to 0 on startup.
16506 Called from main.
16507
16508 * w32.c (is_windows_9x): Perform initialization only if
16509 g_b_init_is_windows_9x is equal to 0. On initialization set
16510 g_b_init_is_windows_9x equal to 1.
16511
16512 * w32.c (open_process_token): Perform initialization only if
16513 g_b_init_open_process_token is equal to 0. On initialization set
16514 g_b_init_open_process_token equal to 1.
16515
16516 * w32.c (get_token_information): Perform initialization only if
16517 g_b_init_get_token_information is equal to 0. On initialization
16518 set g_b_init_get_token_information equal to 1.
16519
16520 * w32.c (lookup_account_sid): Perform initialization only if
16521 g_b_init_lookup_account_sid is equal to 0. On initialization
16522 set g_b_init_lookup_account_sid equal to 1.
16523
16524 * w32.c (get_sid_identifier_authority): Perform initialization
16525 only if g_b_init_get_sid_identifier_authority is equal to 0.
16526 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
16527
16528 * w32fns.c (globals_of_w32fns): New function. Used to initialize
16529 those global variables that must always be initialized on startup
16530 even when the global variable initialized is non zero.
16531 Its primary purpose at this time is to initialize the global variable
16532 track_mouse_event_fn.
16533
16534 * w32fns.c (w32_wnd_proc): Remove initialization of
16535 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
16536
16537 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
16538
16539 * w32menu.c (globals_of_w32menu): New function. Used to
16540 initialize those global variables that must always be initialized
16541 on startup even when the global variable initialized is non zero.
16542 Its primary purpose at this time is to initialize the global
16543 variables get_menu_item_info and set_menu_item_info.
16544
16545 * w32menu.c (initialize_frame_menubar): Remove initialization of
16546 get_menu_item_info and set_menu_item_info.
16547
16548 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
16549
16550 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
16551 Declare them.
16552
16553 * emacs.c (main): Call globals_of_w32 prior to calling
16554 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
16555 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
16556 is defined.
16557
16558 * w32term.c (x_update_window_begin): Fix Windows API error
16559 detected by BoundsChecker. Test to determine if
16560 w32_system_caret_hwnd is NULL prior to attempting to use
16561 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
16562
16563 * w32term.c (x_update_window_end): Fix Windows API error
16564 detected by BoundsChecker. Test to determine if
16565 w32_system_caret_hwnd is NULL prior to attempting to use
16566 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
16567
16568 2002-12-17 Kenichi Handa <handa@m17n.org>
16569
16570 * coding.c (coding_system_require_warning): New variable.
16571 (syms_of_coding): DEFVAR it.
16572
16573 * coding.h (coding_system_require_warning): Extern it.
16574
16575 * fileio.c (choose_write_coding_system): Even if
16576 Vcoding_system_for_write is non-nil, if
16577 coding_system_require_warning is nonzero, call
16578 Vselect_safe_coding_system_function.
16579
16580 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
16581
16582 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
16583 (lisp): Add font-core.
16584
16585 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
16586
16587 * textprop.c (text_read_only): New arg `propval'.
16588 (get_char_property_and_overlay): Remove unused var `next_overlay'.
16589 (verify_interval_modification): Use text_read_only's new arg.
16590
16591 2002-12-13 Kenichi Handa <handa@m17n.org>
16592
16593 * coding.c (Funencodable_char_position): Set pend correctly.
16594
16595 2002-12-12 Jason Rumney <jasonr@gnu.org>
16596
16597 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
16598 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
16599 Be more careful about when help_events are generated.
16600
16601 2002-12-12 Steven Tamm <steventamm@mac.com>
16602
16603 * macterm.c (mac_check_for_quit_char): Correctly set the
16604 modifiers of the event to 0.
16605 * mac.c (sys_select): Duplicate rfds before calling select to
16606 ensure that rfds survive the while loop.
16607
16608 2002-12-11 Kim F. Storm <storm@cua.dk>
16609
16610 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
16611 row_containing_pos returned NULL.
16612
16613 2002-12-10 Steven Tamm <steventamm@mac.com>
16614
16615 * mac.c (sys_read): Fix sys_read to not call select if IO is
16616 non-blocking.
16617 (sys_select): Fix sys_select to not use a timeout larger than
16618 the one given.
16619
16620 2002-12-10 Juanma Barranquero <lektu@terra.es>
16621
16622 * editfns.c (Fformat): Use alloca, not _alloca.
16623
16624 2002-12-09 Richard M. Stallman <rms@gnu.org>
16625
16626 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
16627 as the last thing.
16628
16629 2002-12-09 Dave Love <fx@gnu.org>
16630
16631 * s/sol2-8.h: Removed. (Not necessary.)
16632
16633 2002-12-09 Matthew Swift <swift@alum.mit.edu>
16634
16635 * editfns.c (Fformat): Handle precision in string conversion
16636 specifiers like libc functions do (ie, print at most that many
16637 characters).
16638
16639 2002-12-08 Richard M. Stallman <rms@gnu.org>
16640
16641 * xdisp.c (row_containing_pos): Check more carefully
16642 whether charpos is really in the row before returning it.
16643
16644 2002-12-07 Steven Tamm <steventamm@mac.com>
16645
16646 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
16647
16648 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
16649 each stack frame. This may change as it could be time consuming.
16650
16651 * macterm.c (mac_check_for_quit_char, quit_char_comp)
16652 (init_quit_char_handler, mac_determine_quit_char_modifiers)
16653 (mac_initialize): Add code to check for pressing of quit_char
16654 in the OS event queue.
16655
16656 * mac.c (sys_select): Call mac_check_for_quit_char every second
16657 while blocking on select.
16658
16659 * mac.c (sys_read): Use sys_select to test for input first
16660 before calling read, to allow C-g to break.
16661
16662 2002-12-07 Richard M. Stallman <rms@gnu.org>
16663
16664 * minibuf.c (Fcompleting_read): Doc fix.
16665
16666 * lread.c (syms_of_lread) <load-history>: Doc fix.
16667
16668 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
16669
16670 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
16671 autoload.
16672
16673 * data.c (Fdefalias): Record in load-history redefining an autoload.
16674
16675 * alloca.c: Undo ifdef change accidentally made on 12-04.
16676
16677 2002-12-06 Francesco Potorti` <pot@gnu.org>
16678
16679 * xfns.c (png_load): Avoid double gamma correction for PNG images.
16680
16681 2002-12-04 Richard M. Stallman <rms@gnu.org>
16682
16683 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
16684
16685 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
16686
16687 * alloca.c: Don't use #error.
16688
16689 2002-12-03 Dave Love <fx@gnu.org>
16690
16691 * buffer.c (Qucs_set_table_for_input): New.
16692 (Fget_buffer_create): Use it.
16693 (Qset_buffer_major_mode_hook): Deleted.
16694 (Fset_buffer_major_mode): Revert previous change.
16695 (init_buffer_once): Intern ucs-set-table-for-input.
16696 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
16697 Add &Qucs_set_table_for_input.
16698
16699 2002-12-03 Andreas Schwab <schwab@suse.de>
16700
16701 * callint.c (Fcall_interactively): Use next_event only if less
16702 than key_count.
16703
16704 2002-12-02 Andrew Choi <akochoi@shaw.ca>
16705
16706 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
16707 names to 255 characters.
16708
16709 * macterm.c (XTread_socket): If all frames have been collapsed,
16710 expand the first one before handling drag-and-drop events.
16711
16712 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
16713 which is detected by autoconf.
16714
16715 2002-12-01 Steven Tamm <steventamm@mac.com>
16716
16717 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
16718 offset in two hints table to allow prebinding to be redone and
16719 allow the executable to be stripped.
16720
16721 2002-11-29 Dave Love <fx@gnu.org>
16722
16723 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
16724 already provided.
16725
16726 2002-11-29 Richard M. Stallman <rms@gnu.org>
16727
16728 * xdisp.c (start_display): Check more intelligently for
16729 whether the line is continued.
16730 (move_it_vertically_backward): Clear it->continuation_lines_width.
16731
16732 2002-11-28 Dave Love <fx@gnu.org>
16733
16734 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
16735 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
16736
16737 2002-11-27 Steven Tamm <steventamm@mac.com>
16738
16739 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
16740 more descriptive error output from lread.c:Fload upon most require
16741 cycles during boostrapping.
16742
16743 2002-11-27 Jason Rumney <jasonr@gnu.org>
16744
16745 * fileio.c (Finsert_file_contents): Give a more appropriate error
16746 for files bigger than 2Gb when off_t is 32 bit.
16747
16748 * dired.c (Ffile_attributes): Don't return negative file sizes for
16749 files bigger than 2Gb when off_t is 32 bit.
16750
16751 2002-11-27 Dave Love <fx@gnu.org>
16752
16753 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16754
16755 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
16756 Test GETPGRP_VOID instead.
16757 [BSD_TERMIOS]: Remove definitions (never used).
16758
16759 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
16760 Don't define.
16761 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16762
16763 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
16764
16765 2002-11-25 Jason Rumney <jasonr@gnu.org>
16766
16767 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
16768 supported.
16769
16770 2002-11-25 Dave Love <fx@gnu.org>
16771
16772 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
16773
16774 * Makefile.in (TEMACS_LDFLAGS): Update last change.
16775
16776 2002-11-25 Andreas Schwab <schwab@suse.de>
16777
16778 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
16779
16780 2002-11-24 Steven Tamm <steventamm@mac.com>
16781
16782 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
16783 determine the size of pointers alloced in unexed space instead
16784 of using possibly invalid emacs_zone pointers. This fixes the
16785 binary incompatibility problems caused by updates to libSystem.B.
16786
16787 2002-11-24 Richard M. Stallman <rms@gnu.org>
16788
16789 * search.c (Fstring_match): Doc fix.
16790
16791 * callint.c (Fcall_interactively): If a command fails because
16792 `*' detects a read-only buffer, but RECORD_FLAG is set,
16793 record it anyway if the args don't actually do tty input.
16794
16795 2002-11-22 Dave Love <fx@gnu.org>
16796
16797 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
16798
16799 * keyboard.c (interrupt_signal): Provide forward declaration.
16800 (kbd_buffer_store_event): Don't declare interrupt_signal.
16801
16802 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
16803
16804 2002-11-21 Richard M. Stallman <rms@gnu.org>
16805
16806 * eval.c (interactive_p): Skip any number of bytecode
16807 and special form frames, in any order.
16808
16809 2002-11-20 Jason Rumney <jasonr@gnu.org>
16810
16811 * w32fns.c (convert_mono_to_color_image): New function.
16812 (xbm_load, xbm_load_image): Use it when foreground or background
16813 is explicitly set.
16814
16815 2002-11-19 Dave Love <fx@gnu.org>
16816
16817 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
16818
16819 2002-11-18 Jason Rumney <jasonr@gnu.org>
16820
16821 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
16822 (XPutPixel): Swap blue and red.
16823 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
16824 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
16825 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
16826 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
16827
16828 2002-11-18 Dave Love <fx@gnu.org>
16829
16830 * m/orion105.h (HAVE_ALLOCA): Don't define.
16831
16832 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
16833
16834 * m/intel386.h: Don't include alloca.h or define alloca.
16835
16836 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
16837 malloc, realloc, calloc.
16838
16839 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
16840 (bcmp): Don't define.
16841
16842 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
16843
16844 * m/amdahl.h: Don't define LIB_STANDARD.
16845
16846 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
16847
16848 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
16849
16850 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
16851 Don't include alloca.h.
16852
16853 * s/aix3-2.h (HAVE_FSYNC): Don't define.
16854
16855 * regex.c (_GNU_SOURCE): Don't define.
16856
16857 * process.c (_GNU_SOURCE): Don't define.
16858
16859 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
16860
16861 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
16862
16863 * s/sol2-8.h: Include sol2-6.h.
16864
16865 2002-11-18 Miles Bader <miles@gnu.org>
16866
16867 * dispextern.h (struct face): Add `overstrike' field.
16868 * xterm.c (x_draw_glyph_string_foreground)
16869 (x_draw_composite_glyph_string_foreground): Implement overstriking.
16870 * xfaces.c (load_face_font): Set `face->overstrike' based on
16871 result from choose_face_font.
16872 (best_matching_font, choose_face_font): Add `needs_overstrike'
16873 argument, and use it to return whether overstriking is desirable
16874 for this face/font combo.
16875 (set_font_frame_param: Pass new argument to choose_face_font.
16876
16877 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
16878
16879 This change is my fix for the following entry in etc/PROBLEMS:
16880 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
16881 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
16882
16883 * w32.c: Added wrapper functions around the win32 API functions
16884 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
16885 GetSidIdentifierAuthority. These wrapper functions serve two
16886 purposes:
16887 1. They ensure that the wrapped function can never be called
16888 when Emacs is running on an operating system on which they are
16889 not supported (Microsoft Windows 95 / 98 / ME).
16890 2. They call the wrapped functions via function pointers rather
16891 than calling them directly. This avoids taking advantage of the
16892 undocumented fact that although these functions are not supported
16893 in the 9x branch of Microsoft Windows, the functions do exist in
16894 the version of advapi32.dll that is found in the 9x branch of
16895 Microsoft Windows.
16896
16897 * w32.c (init_user_info): Replace the calls to the win32 API
16898 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
16899 and GetSidIdentifierAuthority with calls to the newly added
16900 wrapper functions.
16901
16902 * w32.h: Added extern declarations for the following functions:
16903 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
16904 syms_of_w32menu, and void syms_of_fontset.
16905
16906 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
16907 function pointer track_mouse_event_fn in the handler for the
16908 WM_SETFOCUS message.
16909
16910 * w32menu.c (initialize_frame_menubar): Add code to
16911 reinitialize the function pointers set_menu_item_info and
16912 get_menu_item_info.
16913
16914 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
16915
16916 * sound.c: Added a partial implementation of play-sound-internal
16917 for Microsoft Windows. Added various #ifdef / #else / #endif
16918 code blocks to separate the code that will compile under
16919 Microsoft Windows from the code that is specific to GNU/Linux.
16920 Moved several blocks of code around to make this separation of code
16921 into Windows compatible and GNU/Linux compatible code blocks easier.
16922
16923 * makefile.w32-in: Include sound.c and link with WinMM.lib.
16924
16925 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
16926 added support for play-sound-internal under Windows would be
16927 included in the build of Emacs.
16928
16929 2002-11-16 Jason Rumney <jasonr@gnu.org>
16930
16931 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
16932
16933 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
16934
16935 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
16936
16937 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
16938 (adjust_point_for_property): Move out of display and invisible even if
16939 we were already inside before (in case a property was added while
16940 we weren't looking). Be more careful when handling invisible props.
16941 Skip invisible text as if it really wasn't there at all.
16942
16943 2002-11-15 Jason Rumney <jasonr@gnu.org>
16944
16945 * w32term.c (x_draw_image_foreground)
16946 (w32_draw_image_foreground_1): Use standard copy and invert
16947 operations to draw images.
16948
16949 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
16950 depth of 1.
16951 (xbm_read_bitmap_data): Invert bits as xbm is read in.
16952 (XPutPixel): Don't invert bits here.
16953
16954 2002-11-15 Jason Rumney <jasonr@gnu.org>
16955
16956 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
16957 (w32_draw_image_foreground_1): Handle image masks.
16958 (x_draw_image_glyph_string): Don't BitBlt transparently.
16959
16960 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
16961 (x_from_xcolors): Adjust RGB values for W32.
16962 (image_background, image_background_transparent)
16963 (postprocess_image, x_to_xcolors, x_disable_image)
16964 (x_build_heuristic_mask): Adapt for W32 and enable.
16965 (x_create_x_image_and_pixmap): Mark images with palettes as such.
16966 (xbm_load): Remove unused variable.
16967
16968 2002-11-14 Richard M. Stallman <rms@gnu.org>
16969
16970 * buffer.c (syms_of_buffer): Doc fix.
16971
16972 2002-11-14 Dave Love <fx@gnu.org>
16973
16974 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
16975
16976 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
16977 * xmenu.c (unuse_menu_items, digest_single_submenu):
16978 * xfns.c (x_put_x_image):
16979 * xdisp.c (message2_nolog, set_message):
16980 * undo.c (record_point):
16981 * terminfo.c (tparam):
16982 * syntax.c (scan_sexps_forward):
16983 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16984 * composite.c (update_compositions):
16985 * cm.c (calccost, cmgoto):
16986 * charset.c (c_string_width): Declare all args (per C99).
16987
16988 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
16989
16990 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
16991 Don't declare.
16992
16993 * emacs.c (main) [!VMS]: Avoid third arg.
16994
16995 * fns.c (Fcopy_sequence): Doc fix.
16996 (Fmap_char_table): Cast `call2'.
16997
16998 2002-11-14 Francesco Potorti` <pot@gnu.org>
16999
17000 * s/sol2-8.h: New file.
17001
17002 2002-11-14 Kim F. Storm <storm@cua.dk>
17003
17004 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
17005 dependency on `risky-local-variable' and the :propertize form.
17006
17007 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
17008
17009 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
17010
17011 * syntax.c (scan_sexps_forward): Undo last patch.
17012 Use a more obvious fix: check eob before updating the syntax table.
17013
17014 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
17015
17016 * syntax.c (scan_sexps_forward): Update syntax table before reading
17017 a char rather than after so we don't update the table past eob.
17018
17019 2002-11-09 Dave Love <fx@gnu.org>
17020
17021 * buffer.c (Fset_buffer_major_mode): Fix last change.
17022
17023 * regex.c (regexec): Fix pmatch declaration.
17024
17025 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
17026
17027 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
17028 to self-inserting characters.
17029 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
17030
17031 * coding.c (Vtranslation_table_for_input): New.
17032 (syms_of_coding): DEFVAR it.
17033
17034 2002-11-08 Juanma Barranquero <lektu@terra.es>
17035
17036 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
17037 window.
17038
17039 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17040
17041 * process.c (Fformat_network_address): Remove unused locals p,
17042 cp, and i.
17043
17044 2002-11-06 Dave Love <fx@gnu.org>
17045
17046 * buffer.c (Qset_buffer_major_mode_hook): New.
17047 (Fset_buffer_major_mode): Use it.
17048
17049 2002-11-06 Richard M. Stallman <rms@gnu.org>
17050
17051 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
17052 and stop_polling.
17053
17054 * process.c (wait_reading_process_input):
17055 Test POLLING_PROBLEM_IN_SELECT, not hpux.
17056 Avoid initialization for auto Lisp_Object var.
17057
17058 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
17059
17060 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
17061
17062 2002-11-05 Richard M. Stallman <rms@gnu.org>
17063
17064 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
17065
17066 * callint.c (Fcall_interactively): New local filter_specs.
17067 (Fcall_interactively): Check for progn as well as let.
17068 Add a gcpro.
17069 (Qprogn): New variable.
17070 (syms_of_callint): Staticpro and init Qprogn.
17071
17072 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
17073
17074 * lread.c (Feval_buffer): Doc fix.
17075
17076 2002-11-04 Dave Love <fx@gnu.org>
17077
17078 * keyboard.c (read_char): Always translate iff
17079 Vkeyboard_translate_table is a char table and c is valid.
17080
17081 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17082 and fix C types.
17083
17084 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
17085
17086 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
17087
17088 * editfns.c (get_pos_property): Don't hardcode Qfield.
17089
17090 * keyboard.c (adjust_point_for_property): Handle `display' prop on
17091 overlays. Also handle `invisible' prop.
17092
17093 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
17094
17095 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
17096 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
17097
17098 2002-11-01 Andreas Schwab <schwab@suse.de>
17099
17100 * editfns.c (Fmessage): Revert last change to properly handle %%.
17101
17102 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
17103
17104 * xmenu.c (unuse_menu_items): New fun.
17105 (menu_items_inuse): New var.
17106 (syms_of_xmenu): Initialize it.
17107 (init_menu_items): Use it to detect re-entrance.
17108 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
17109 (Fx_popup_menu): Remove spurious XSETFRAME.
17110
17111 * editfns.c (find_field): Make an exception for nil fields.
17112
17113 2002-11-01 Dave Love <fx@gnu.org>
17114
17115 * m/gec63.h: Deleted.
17116
17117 2002-10-31 Dave Love <fx@gnu.org>
17118
17119 * xterm.c (XTread_socket): Fix last change.
17120 (xaw_scroll_callback): Cast call_data to long to avoid warning.
17121
17122 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
17123
17124 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
17125
17126 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
17127
17128 * editfns.c (overlays_around, get_pos_property): New funs.
17129 (find_field): Use them.
17130 Also be careful not to modify POS before its last use.
17131 (Fmessage): Don't Fformat if there's nothing to format.
17132
17133 2002-10-30 Dave Love <fx@gnu.org>
17134
17135 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
17136 [HAVE_PTY_H]; Include pty.h.
17137
17138 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
17139
17140 * xterm.c (Qeql): Declare.
17141 (Vx_keysym_table): New.
17142 (syms_of_xterm): Initialize it.
17143 (XTread_socket): Use it. Deal with ASCII keysyms.
17144 (XSetIMValues) [HAVE_X11R6]: Prototype.
17145
17146 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
17147 (lispy_kana_keys): Comment out.
17148 (make_lispy_event) [XK_kana_A]: Comment out.
17149 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
17150 Fix sprintf call.
17151
17152 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
17153 regexp.h change).
17154 (TERMINFO, LIBS_TERMCAP): Define.
17155
17156 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
17157 (bcmp): Define conditional on HAVE_BCMP.
17158 (NO_SIOCTL_H): Don't define.
17159 (TIOCSIGSEND): Don't make conditional on IRIX6.
17160
17161 * s/sol2-5.h: Don't include strings.h.
17162 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
17163
17164 * s/irix6-0.h (IRIX6): Don't define.
17165 (bcopy, bcmp, bzero): Don't undef.
17166
17167 * s/irix6-5.h: Don't include strings.h.
17168 (IRIX6): Don't define.
17169 (bcopy, bcmp, bzero): Don't undef.
17170
17171 * syntax.c (Fforward_comment): Doc fix.
17172
17173 2002-10-29 Kim F. Storm <storm@cua.dk>
17174
17175 * process.c (Fsignal_process): Allow PROCESS to be specified by
17176 name in addition to pid (as integer or string).
17177
17178 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
17179
17180 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
17181 environments.
17182
17183 2002-10-27 Kim F. Storm <storm@cua.dk>
17184
17185 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17186
17187 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
17188
17189 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
17190
17191 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17192
17193 2002-10-26 Richard M. Stallman <rms@gnu.org>
17194
17195 * editfns.c (Fformat): Detect invalid format letters for floats.
17196
17197 2002-10-25 Kenichi Handa <handa@m17n.org>
17198
17199 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
17200 (x_set_title): Likewise.
17201
17202 2002-10-25 Juanma Barranquero <lektu@terra.es>
17203
17204 * macgui.h:
17205 * w32gui.h: Remove definition of XColor.
17206
17207 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
17208
17209 2002-10-24 Kim F. Storm <storm@cua.dk>
17210
17211 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
17212 Callers changed (supply dummy arg).
17213
17214 * lisp.h (get_window_cursor_type): Update prototype.
17215
17216 * w32term.c (x_display_and_set_cursor): Get active_cursor from
17217 get_window_cursor_type to track system caret.
17218
17219 2002-10-24 Kim F. Storm <storm@cua.dk>
17220
17221 * process.c (Fformat_network_address): New function.
17222 (syms_of_process): Defsubr it.
17223 (list_processes_1): Use it to format :local/:remote address if
17224 service/host is not set; before Emacs would crash in that case.
17225 (Fmake_network_process): Don't use Ffind_operation_coding_system
17226 to setup coding system if host or service is not set.
17227
17228 2002-10-23 Juanma Barranquero <lektu@terra.es>
17229
17230 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
17231
17232 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
17233 COLORREF.
17234
17235 * macgui.h:
17236 * w32gui.h: Add definition of XColor.
17237
17238 * macfns.c:
17239 * w32fns.c:
17240 * xfaces.c: Remove definition of XColor.
17241
17242 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
17243
17244 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
17245
17246 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
17247 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
17248 window if it is dedicated.
17249 (Fshrink_window): Add preserve_before as was done for enlarge_window.
17250 (Vspecial_display_function): Update docstring.
17251
17252 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
17253 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
17254 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
17255
17256 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
17257
17258 * casefiddle.c (casify_region): Don't treat a prefix char as part
17259 of a word when at the beginning.
17260
17261 2002-10-17 Juanma Barranquero <lektu@terra.es>
17262
17263 * lread.c (syms_of_lread): Fix typos.
17264
17265 2002-10-17 Dave Love <fx@gnu.org>
17266
17267 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
17268
17269 2002-10-16 Richard M. Stallman <rms@gnu.org>
17270
17271 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
17272
17273 2002-10-14 Juanma Barranquero <lektu@terra.es>
17274
17275 * w16select.c (syms_of_win16select): Fix docstring for
17276 `selection-coding-system'.
17277
17278 * w32select.c (syms_of_w32select): Likewise.
17279
17280 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
17281
17282 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
17283 a backslash-quoted char.
17284 (scan_lists, scan_sexps_forward): Pacify the compiler.
17285
17286 2002-10-13 Richard M. Stallman <rms@gnu.org>
17287
17288 * window.c (window_scroll): Set immediate_quit.
17289
17290 * print.c (print): When backquote form is the car of a list,
17291 output in old style. Use old_backquote_output to output all
17292 comma forms inside it in old style too.
17293
17294 * buffer.h (struct buffer): Move `undo_list' down below `name'.
17295
17296 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
17297
17298 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
17299 batch mode).
17300
17301 * lread.c (Fload): Doc fix (load-suffixes).
17302
17303 2002-10-10 Steven Tamm <steventamm@mac.com>
17304
17305 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
17306 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
17307 Also switch the default to Qnil from Qt.
17308
17309 2002-10-08 Kenichi Handa <handa@m17n.org>
17310
17311 * coding.c (code_convert_region): When we need more GAP for
17312 conversion, pay attention to the case that coding->produced is not
17313 greater than coding->consumed.
17314
17315 2002-10-07 Richard M. Stallman <rms@gnu.org>
17316
17317 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
17318
17319 2002-10-06 Andrew Choi <akochoi@shaw.ca>
17320
17321 * macmenu.c (mac_menu_show): Add j to count menu items; match
17322 menu_item_selection to it to find selected item.
17323
17324 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17325
17326 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
17327 cases. The correct fix is to pass ReparentNotify to Xt.
17328 The shell widget interprets ConfigureNotify differently depending
17329 on if it has been reparented or not.
17330
17331 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
17332
17333 * editfns.c (Fformat_time_string): Doc fix.
17334
17335 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
17336
17337 * fns.c (Flength): Doc fix.
17338
17339 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
17340
17341 * keyboard.c (keyremap): New struct.
17342 (read_key_sequence): Use it: globally replace keytran_foo with
17343 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
17344 keytran_next and fkey_next to just `next'.
17345
17346 2002-10-04 Steven Tamm <steventamm@mac.com>
17347
17348 * macterm.c (keycode_to_xkeysym_table): Change return to be
17349 treated like an X keysym.
17350
17351 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17352
17353 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
17354 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
17355 This is to also handle x/y changes that occur because of a resize.
17356
17357 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
17358
17359 * frame.c (Vdelete_frame_functions): New variable.
17360 (syms_of_frame): Initialize and defvar it.
17361 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
17362 it when frame's `tooltip' parameter is non-nil.
17363
17364 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
17365
17366 * w32fns.c (x_create_tip_frame): Likewise.
17367
17368 * macfns.c (x_create_tip_frame): Likewise.
17369
17370 2002-09-30 Kenichi Handa <handa@m17n.org>
17371
17372 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
17373 -1 before calling ccl_driver.
17374
17375 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
17376 Only when it is non-nil, handle composition sequence.
17377 (setup_coding_system) <0>: Don't force composition handling.
17378
17379 * Makefile.in (lisp, shortlisp): Add utf-16.elc
17380
17381 2002-09-29 Richard M. Stallman <rms@gnu.org>
17382
17383 * search.c (Freplace_match): Adjust match data for the substitution
17384 just made in the buffer.
17385
17386 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
17387 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
17388
17389 2002-09-27 Richard M. Stallman <rms@gnu.org>
17390
17391 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
17392 (read_char): Use them. Do all exits thru the end of the function.
17393
17394 2002-09-27 Kenichi Handa <handa@etl.go.jp>
17395
17396 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
17397 is nil.
17398
17399 2002-09-26 Richard M. Stallman <rms@gnu.org>
17400
17401 * regex.h (__restrict_arr): Don't define if already defined.
17402
17403 * coding.c (run_pre_post_conversion_on_str):
17404 Save and restore Vdeactivate_mark.
17405
17406 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
17407
17408 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
17409
17410 2002-09-26 Kenichi Handa <handa@etl.go.jp>
17411
17412 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
17413 nonzero, try face's family at first. Otherwise try FAMILY at first.
17414 (choose_face_font): If C is a single byte char or latin-1, call
17415 try_font_list with PREFER_FACE_FAMILY 1.
17416
17417 2002-09-21 Richard M. Stallman <rms@gnu.org>
17418
17419 * window.c (select_window_1): Don't select frame.
17420 Set frame's selected window only when frame itself is selected.
17421 (Fselect_window): Doc fix.
17422
17423 2002-09-18 Kim F. Storm <storm@cua.dk>
17424
17425 * process.c (make-network-process): Doc fix (there is no
17426 network-server-log-function hook).
17427
17428 2002-09-18 Richard M. Stallman <rms@gnu.org>
17429
17430 * print.c (print): Clear out the unused parts of Vprint_number_table.
17431 (syms_of_print): Doc fix for `print-number-table'.
17432
17433 * unexelf.c (unexec): Undo previous change.
17434
17435 2002-09-17 Andreas Schwab <schwab@suse.de>
17436
17437 * m/alpha.h [LINUX]: Don't define DATA_START.
17438
17439 2002-09-16 Dave Love <fx@gnu.org>
17440
17441 * unexelf.c (unexec): Deal with .got, reinstating change from
17442 25-08-1999.
17443
17444 2002-09-13 Richard M. Stallman <rms@gnu.org>
17445
17446 * s/sol2-6.h (UNEXEC): Comment out definition.
17447
17448 * unexsol.c (unexec): Don't downcase first letter of error msg.
17449
17450 * xfaces.c (Fcolor_supported_p): Just one arg is required.
17451
17452 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
17453
17454 * unexsol.c: Include buffer.h, charset.h, coding.h.
17455
17456 2002-09-11 Richard M. Stallman <rms@gnu.org>
17457
17458 * unexsol.c: Don't use report_file_error; do it by hand
17459 using dlerror.
17460
17461 * process.c (wait_reading_process_input, both versions):
17462 Before calling turn_on_atimers, call stop_polling.
17463
17464 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
17465
17466 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
17467 we go to too_near_end, call clear_glyph_matrix.
17468 (redisplay_window): After make_cursor_line_fully_visible,
17469 call clear_glyph_matrix and bypass `goto done'.
17470
17471 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
17472 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
17473
17474 2002-09-10 Richard M. Stallman <rms@gnu.org>
17475
17476 * fileio.c (Fdo_auto_save): Catch error making directory.
17477 Only call push_message if we need to.
17478 At the same time, make an unwind-protect to pop it.
17479 Rename local message_p to old_message_p.
17480 (do_auto_save_make_dir, do_auto_save_eh): New functions.
17481 (do_auto_save_unwind): Don't call pop_message.
17482
17483 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
17484
17485 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
17486
17487 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
17488
17489 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
17490
17491 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
17492
17493 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
17494 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
17495 (re_match_2_internal): Be more careful with infinite loops.
17496
17497 2002-09-10 Kim F. Storm <storm@cua.dk>
17498
17499 * macros.c (end_kbd_macro): New function.
17500 (Fend_kbd_macro): Use it.
17501
17502 * macros.h (end_kbd_macro): Declare extern.
17503
17504 * keyboard.c (Fdiscard_input): If defining keyboard macro,
17505 end and save it instead of discarding it.
17506
17507 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
17508
17509 * s/sol2-6.h: Fix typo. Add comment.
17510
17511 2002-09-09 Richard M. Stallman <rms@gnu.org>
17512
17513 * regex.c (regnum_t): Use signed int, not unsigned int.
17514
17515 * s/sol2-6.h: New file.
17516
17517 * s/sol2-5.h (UNEXEC): Definition deleted.
17518
17519 2002-09-08 Kim F. Storm <storm@cua.dk>
17520
17521 * macros.c (executing_macro_index): Change type to EMACS_INT.
17522 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
17523
17524 * macros.h (executing_macro_index): Change type to EMACS_INT.
17525
17526 2002-09-06 Richard M. Stallman <rms@gnu.org>
17527
17528 * casetab.c (set_case_table): Make canon table point to eqv table.
17529
17530 2002-09-06 Juanma Barranquero <lektu@terra.es>
17531
17532 * coding.c (syms_of_coding): Fix spacing.
17533
17534 * composite.c (Fcompose_region_internal)
17535 (Fcompose_string_internal): Likewise.
17536
17537 * data.c (Flsh): Likewise.
17538
17539 * fontset.c (Fset_fontset_font): Likewise.
17540
17541 * macfns.c (Fx_server_max_request_size): Likewise.
17542
17543 * w16select.c (syms_of_win16select): Likewise.
17544
17545 * w32select.c (syms_of_w32select): Likewise.
17546
17547 * xselect.c (syms_of_xselect): Likewise.
17548
17549 2002-09-05 Richard M. Stallman <rms@gnu.org>
17550
17551 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
17552 call EXTEND_RANGE_TABLE and return a proper value.
17553 (set_image_of_range): Don't call set_image_of_range_1
17554 if no TRANSLATE or if range includes all of Latin-1.
17555 Only call it for the Latin-1 part of the range.
17556 For other cases, make two separate ranges,
17557 one for the original specified characters and one for
17558 their case-conversions.
17559
17560 2002-09-04 Richard M. Stallman <rms@gnu.org>
17561
17562 * s/sol2-5.h (UNEXEC): Use unexsol.o.
17563
17564 * window.c (displayed_window_lines): Correct for one-off bug
17565 in HEIGHT on non-window displays.
17566
17567 * regex.c (set_image_of_range_1): New function.
17568 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
17569 Return a value to indicate running out of memory.
17570 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
17571 (extend_range_table_work_area): New subroutine.
17572 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
17573 Different calling conventions, and used from set_image_of_range{,_1}.
17574 (IMMEDIATE_QUIT_CHECK): Definitions moved.
17575
17576 2002-09-04 Juanma Barranquero <lektu@terra.es>
17577
17578 * makefile.w32-in: All dependencies updated.
17579
17580 2002-09-01 Richard M. Stallman <rms@gnu.org>
17581
17582 * unexsol.c: New file.
17583
17584 * xfns.c (Qbox): Declare external, don't define.
17585
17586 * xdisp.c (redisplay_window) <force-start case>:
17587 If point is on semi-visible last line, reposition
17588 it at previous line.
17589
17590 * alloc.c (display_malloc_warning): Use display-warning.
17591 (malloc_warning_1): Function deleted.
17592
17593 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
17594
17595 * lread.c (read1): Handle #! by skipping the line.
17596
17597 2002-08-31 Richard M. Stallman <rms@gnu.org>
17598
17599 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
17600 Don't include LDFLAGS.
17601 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
17602
17603 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
17604
17605 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
17606 member of x_display_info unless we compile for some window system.
17607
17608 2002-08-31 Kim F. Storm <storm@cua.dk>
17609
17610 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
17611 (get_window_cursor_type): Don't use them.
17612 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
17613
17614 2002-08-30 Kenichi Handa <handa@etl.go.jp>
17615
17616 * xdisp.c (get_next_display_element): Fix previous change.
17617
17618 2002-08-30 Andrew Choi <akochoi@shaw.ca>
17619
17620 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
17621 (expose_window): Use it to fix the display of overlapping
17622 rows (merge code from xterm.c).
17623
17624 * macfns.c (Qbox): Add extern declaration.
17625
17626 2002-08-30 Juanma Barranquero <lektu@terra.es>
17627
17628 * w32fns.c (Qbox): Make extern.
17629 (syms_of_w32fns): Remove initialization of Qbox.
17630
17631 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
17632
17633 * xfns.c (Fx_open_connection): Fix error message.
17634
17635 2002-08-30 Kim F. Storm <storm@cua.dk>
17636
17637 The following changes consolidates the handling of the cursor
17638 type in xdisp.c, moving duplicate code and functionality from
17639 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
17640
17641 * frame.h (enum text_cursor_kinds): Consolidated here.
17642 Added DEFAULT_CURSOR value.
17643 (struct frame) <desired_cursor, cursor_width>
17644 <blink_off_cursor, blink_off_cursor_width>: New fields.
17645 Consolidated from output_x, output_w32 and output_mac structs.
17646 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17647 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
17648
17649 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
17650 Variables consolidated here.
17651 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
17652 (Vcursor_in_non_selected_windows): Renamed from
17653 cursor_in_non_selected_windows and changed to Lisp_Object.
17654 (syms_of_xdisp): Define and staticpro new and moved variables.
17655 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
17656 consolidated here. Recognize Qhollow setting.
17657 (set_frame_cursor_types): New function to set frame cursor types
17658 based on the frame parameters.
17659 (get_window_cursor_type): New function to calculate new cursor
17660 type and width for the specified window. Based on duplicated
17661 code consolidated here.
17662 Enhancements: cursor-in-non-selected-windows may be a cursor type,
17663 check buffer-local alternate-cursor-type and blink-cursor-alist
17664 before using built-in blink off methods.
17665
17666 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
17667
17668 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
17669 (get_specified_cursor_type, get_window_cursor_type)
17670 (set_frame_cursor_types): Added prototypes.
17671
17672 * macfns.c (x_specified_cursor_type): Removed.
17673 (x_set_cursor_type): Use set_frame_cursor_types.
17674 (Qbar, Qbox): Removed.
17675 (syms_of_macfns): Don't intern or staticpro them.
17676
17677 * macterm.c (x_specified_cursor_type): Remove prototype.
17678 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17679 (x_display_and_set_cursor): Use get_window_cursor_type.
17680 Remove unused local variables cursor_non_selected, active_cursor.
17681 Redraw cursor if hbar cursor width changes.
17682 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
17683
17684 * macterm.h (enum text_cursor_kinds): Removed.
17685 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
17686 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17687 (FRAME_DESIRED_CURSOR): Macro removed.
17688
17689 * w32fns.c (Vblink_cursor_alist): Removed.
17690 (Qbar, Qhbar, Qbox, Qhollow): Removed.
17691 (syms_of_w32fns): Don't intern, staticpro, or define them.
17692 (x_specified_cursor_type): Removed.
17693 (x_set_cursor_type): Use set_frame_cursor_types.
17694
17695 * w32term.c (x_specified_cursor_type): Remove prototype.
17696 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17697 (x_display_and_set_cursor): Use get_window_cursor_type.
17698 Remove unused local variables cursor_off_state.
17699 Redraw cursor if hbar cursor width changes.
17700 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
17701
17702 * w32term.h (enum text_cursor_kinds): Removed.
17703 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
17704 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17705 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17706 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
17707 (struct w32_display_info) <x_highlight_frame>: Renamed member from
17708 w32_highlight_frame.
17709
17710 * xfns.c (Vblink_cursor_alist): Removed.
17711 (Qbar, Qhbar, Qbox, Qhollow): Removed.
17712 (syms_of_xfns): Don't intern, staticpro, or define them.
17713 (x_specified_cursor_type): Removed.
17714 (x_set_cursor_type): Use set_frame_cursor_types.
17715
17716 * xterm.c (x_specified_cursor_type): Remove prototype.
17717 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
17718 (x_display_and_set_cursor): Use get_window_cursor_type.
17719 Remove unused local variables cursor_off_state.
17720 Redraw cursor if hbar cursor width changes.
17721
17722 * xterm.h (enum text_cursor_kinds): Removed.
17723 (struct output_x) <current_cursor, desired_cursor, cursor_width>
17724 <blink_off_cursor, blink_off_cursor_width>: Members removed.
17725 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
17726 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
17727 (x_specified_cursor_type): Remove prototype.
17728
17729 2002-08-28 Richard M. Stallman <rms@gnu.org>
17730
17731 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
17732 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
17733 (Vblink_cursor_alist): New variable.
17734 (syms_of_w32fns): Initialize and defvar it.
17735 (x_specified_cursor_type): Recognize Qbox for filled box.
17736 Exceptions are hollow boxes.
17737 (Qbox, Qhollow): New variables.
17738 (syms_of_w32fns): Initialize and staticpro them.
17739
17740 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
17741 New macros.
17742 (struct w32_output): New fields blink_off_cursor,
17743 blink_off_cursor_width.
17744 (FRAME_CURSOR_WIDTH): New macro.
17745
17746 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
17747 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
17748
17749 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
17750 for bar cursor.
17751
17752 * w32term.c (expose_overlaps): New function.
17753 (expose_window): Use it to fix the display of overlapping rows.
17754
17755 2002-08-28 Simon Josefsson <jas@extundo.com>
17756
17757 * xfns.c (Fx_open_connection): Improve help when X connection
17758 fails, xhost is insecure and xauth is better.
17759
17760 2002-08-28 Juanma Barranquero <lektu@terra.es>
17761
17762 * makefile.w32-in: Add missing dependencies on w32term.h and
17763 composite.h.
17764
17765 * emacs.c (USAGE1): Add missing newline.
17766
17767 2002-08-27 Andrew Choi <akochoi@shaw.ca>
17768
17769 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
17770
17771 2002-08-27 Richard M. Stallman <rms@gnu.org>
17772
17773 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
17774 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
17775 (Vblink_cursor_alist): New variable.
17776 (syms_of_xfns): Initialize and defvar it.
17777 (x_specified_cursor_type): Recognize Qbox for filled box.
17778 Exceptions are hollow boxes.
17779 (Qbox, Qhollow): New variables.
17780 (syms_of_xfns): Initialize and staticpro them.
17781
17782 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
17783 New macros.
17784 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
17785
17786 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
17787 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
17788
17789 * emacs.c (main): Handle --script.
17790 (USAGE1): Mention --script.
17791 (standard_args): Define sort order for --script.
17792
17793 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
17794
17795 * xdisp.c (redisplay_updating_p): Variable removed.
17796 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
17797 New variables.
17798 (init_iterator): Don't free realized faces if
17799 inhibit_free_realized_faces is set.
17800 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
17801 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
17802 initialize Qinhibit_free_realized_faces.
17803
17804 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
17805 when iterator is adding glyphs to a glyph matrix.
17806
17807 2002-08-27 Kenichi Handa <handa@etl.go.jp>
17808
17809 * xdisp.c (get_next_display_element): In unibyte case, don't use
17810 octal form for such eight-bit characters that can be converted to
17811 multibyte char.
17812
17813 2002-08-26 Kim F. Storm <storm@cua.dk>
17814
17815 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
17816 foreground and background colors. From Joe Buehler.
17817
17818 2002-08-26 Miles Bader <miles@gnu.org>
17819
17820 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
17821
17822 2002-08-25 Andrew Choi <akochoi@shaw.ca>
17823
17824 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
17825 defined instead of MAC_OSX.
17826
17827 * s/darwin.h (select): Define select to sys_select only if
17828 HAVE_CARBON is defined.
17829 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
17830 (DONT_REOPEN_PTY): #def it.
17831
17832 * macterm.c (XTread_socket): Remove code to call
17833 SendEventToEventTarget for keys with command modifiers when
17834 mac_command_key_is_meta is nil.
17835
17836 2002-08-24 Andreas Schwab <schwab@suse.de>
17837
17838 * eval.c (Fdefvar): Fix last change.
17839
17840 2002-08-23 Richard M. Stallman <rms@gnu.org>
17841
17842 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
17843 Record variables in load history as (defvar . VAR).
17844 (Fdefvar): Don't record in load history if no initial value.
17845 (Qdefvar): New variable.
17846 (syms_of_eval): Init and staticpro it.
17847
17848 * lread.c (syms_of_lread): Doc fix.
17849 (build_load_history): Use Fmember to see if a definition
17850 is already in the Vload_history element.
17851
17852 * process.c (Fstart_process): Remove /: from program name.
17853
17854 * emacs.c (decode_env_path): Don't add /: if file name handler
17855 has a `safe-magic' property.
17856
17857 * callproc.c (Fcall_process): Remove /: from program name.
17858
17859 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
17860
17861 * regex.c (PATFETCH): Remove the translating fetch.
17862 (PATFETCH_RAW): Rename to PATFETCH.
17863 (set_image_of_range): New fun.
17864 (SET_RANGE_TABLE_WORK_AREA): Use it.
17865 (regex_compile): Don't translate the pattern chars so eagerly.
17866 Only do it when inserting an `exactn' bytecode or when handling
17867 a char-range.
17868 (mutually_exclusive_p): Avoid empty statement.
17869
17870 2002-08-22 Kim F. Storm <storm@cua.dk>
17871
17872 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
17873 end up on a partially visible line; this reverts a specific part
17874 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
17875 display error which has been reported several times now.
17876 However it introduces the problem that changes was supposed to fix.
17877 See my comments in the source if you want to debug this further.
17878
17879 2002-08-20 Kenichi Handa <handa@etl.go.jp>
17880
17881 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
17882
17883 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
17884
17885 * msdos.c (croak): Add `void' to definition.
17886
17887 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
17888 Don't define them, they are defined in msdos.c.
17889
17890 * mem-limits.h [MSDOS]: Declare etext.
17891
17892 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
17893 `const' since CORRECT_DIR_SEPS modifies its target.
17894
17895 2002-08-19 Kim F. Storm <storm@cua.dk>
17896
17897 * keyboard.c (Fclear_this_command_keys): Add optional arg
17898 KEEP-RECORD to avoid clearing lossage when we just want to clear
17899 the current key sequence (kmacro needs this).
17900
17901 2002-08-19 Kenichi Handa <handa@localhost>
17902
17903 * composite.c (run_composition_function): Call FUNC if it is fboundp.
17904
17905 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
17906 cons, return Qnil.
17907
17908 2002-08-17 Richard M. Stallman <rms@gnu.org>
17909
17910 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
17911
17912 * sysdep.c [!VMS]: Include sys/files.h.
17913
17914 * editfns.c (save_restriction_restore): Defend from unchained marker.
17915
17916 * buffer.c (overlays_at): Handle extending vec uniformly.
17917 (overlays_in): Handle extending vec from length 0 as in overlays_at.
17918
17919 2002-08-15 Andrew Choi <akochoi@shaw.ca>
17920
17921 * mac.c (init_mac_osx_environment): New function.
17922
17923 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
17924
17925 2002-08-14 Kim F. Storm <storm@cua.dk>
17926
17927 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
17928 executing macro before appending to it (when used from Lisp).
17929 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
17930 which is called prior to each iteration of macro (for kmacro.el).
17931 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
17932
17933 * lisp.h (Fexecute_kbd_macro): Update prototype.
17934
17935 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
17936
17937 2002-08-14 Kenichi Handa <handa@etl.go.jp>
17938
17939 * xselect.c (QUTF8_STRING): New variable.
17940 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
17941 (x_atom_to_symbol): Likewise.
17942 (x_get_local_selection): New argument local_request. If it is
17943 nonzero, call handler_fn with the second arg nil.
17944 (x_handle_selection_request): Call x_get_local_selection with
17945 local_request 0.
17946 (lisp_data_to_selection_data): Don't encode the string here.
17947 (Fx_get_selection_internal): Call x_get_local_selection with
17948 local_request 1.
17949 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
17950
17951 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
17952
17953 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
17954
17955 2002-08-13 Richard M. Stallman <rms@gnu.org>
17956
17957 * minibuf.c (Fminibufferp): New function.
17958 (syms_of_minibuf): Defsubr it.
17959 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
17960
17961 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
17962
17963 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
17964
17965 2002-08-12 Richard M. Stallman <rms@gnu.org>
17966
17967 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
17968 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
17969 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
17970 already.
17971
17972 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
17973
17974 2002-08-11 Andrew Choi <akochoi@shaw.ca>
17975
17976 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
17977 (Vmac_pass_command_to_system): New variable.
17978 (Vmac_pass_control_to_system): New variable.
17979 (do_mouse_moved): Check wp with is_emacs_window.
17980 (XTread_socket): Check window_ptr with is_emacs_window.
17981 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
17982 events back to Mac Toolbox for processing, depending on values of
17983 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
17984 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
17985 Vmac_pass_control_to_system.
17986
17987 2002-08-10 Kenichi Handa <handa@etl.go.jp>
17988
17989 * coding.c (unencodable_char_position): New function.
17990 (Funencodable_char_position): New function.
17991 (syms_of_coding): Defsubr Funencodable_char_position.
17992
17993 2002-08-10 Andrew Choi <akochoi@shaw.ca>
17994
17995 * mac.c (sys_select) [MAC_OSX]: New function.
17996
17997 * macterm.c (MakeMeTheFrontProcess): New function.
17998 (mac_initialize): Call MakeMeTheFrontProcess.
17999
18000 * s/darwin.h: Define select to sys_select.
18001
18002 2002-08-09 Richard M. Stallman <rms@gnu.org>
18003
18004 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
18005
18006 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
18007
18008 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
18009 end of the buffer.
18010
18011 2002-08-08 Ken Raeburn <raeburn@gnu.org>
18012
18013 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
18014
18015 * puresize.h (BASE_PURESIZE): Increase to 910000.
18016
18017 2002-08-08 Kenichi Handa <handa@etl.go.jp>
18018
18019 * coding.c (Ffind_operation_coding_system): For write-region, if
18020 VISIT is a filename, make it the target.
18021
18022 2002-08-07 Richard M. Stallman <rms@gnu.org>
18023
18024 * alloc.c (mark_object): Detect long lists for debugging.
18025 (mark_object_loop_halt): New variable.
18026
18027 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
18028
18029 * data.c (Fmake_variable_frame_local): Doc fix.
18030
18031 2002-08-01 David Ponce <david@dponce.com>
18032
18033 * w32menu.c (local_heap, local_alloc, local_free): New macros.
18034 (malloc_widget_value, free_widget_value)
18035 (w32_free_submenu_strings): Use them.
18036
18037 (push_submenu_start, push_submenu_end, push_left_right_boundary)
18038 (push_menu_pane, push_menu_item, single_keymap_panes)
18039 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
18040 (single_submenu, set_frame_menubar)
18041 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
18042
18043 (Fx_popup_menu): Don't show pop up menu until preceding one is
18044 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
18045
18046 * w32menu.c: Changes adapted from xmenu.c
18047 (set_frame_menubar): First parse all submenus,
18048 then make widget_value trees from them.
18049 Don't allocate any widget_value objects
18050 until we are done with the parsing.
18051 (parse_single_submenu): New function.
18052 (digest_single_submenu): New function.
18053 (single_submenu): Function deleted, replaced by those two.
18054
18055 2002-08-04 Andrew Choi <akochoi@shaw.ca>
18056
18057 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
18058 returns a valid window pointer before proceeding for keyDown and
18059 autoKey events.
18060
18061 2002-08-03 Andrew Choi <akochoi@shaw.ca>
18062
18063 * macterm.c (USE_CARBON_EVENTS): New macro.
18064 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
18065 (x_iconify_frame): Call CollapseWindow.
18066 (Vmac_reverse_ctrl_meta): New variable.
18067 (Vmac_wheel_button_is_mouse_2): New variable.
18068 (init_mac_drag_n_drop): New function.
18069 (mac_do_receive_drag): New function.
18070 (mac_handle_service_event): New function.
18071 (init_service_handler): New function.
18072 (mac_to_emacs_modifiers): New function.
18073 (mac_event_to_emacs_modifiers): New function.
18074 (mac_get_mouse_btn): New function.
18075 (mac_convert_event_ref): New function.
18076 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
18077 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
18078 mac_get_mouse_btn.
18079 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
18080
18081 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
18082 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
18083 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
18084 TOOL_BAR_EVENT for MAC_OS as well.
18085 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
18086 as for WINDOWS_NT.
18087 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
18088
18089 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
18090
18091 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
18092
18093 * xdisp.c (forward_to_next_line_start): Fix a condition that
18094 lead to a newline being skipped.
18095
18096 2002-08-02 Andrew Choi <akochoi@shaw.ca>
18097
18098 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
18099
18100 2002-08-01 Richard M. Stallman <rms@gnu.org>
18101
18102 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
18103
18104 2002-07-31 Andrew Choi <akochoi@shaw.ca>
18105
18106 * macfns.c: #undef init_process before #define-ing it.
18107
18108 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
18109 HAVE_CARBON is defined.
18110
18111 2002-07-31 Richard M. Stallman <rms@gnu.org>
18112
18113 * xmenu.c (set_frame_menubar): First parse all submenus,
18114 then make widget_value trees from them.
18115 Don't allocate any widget_value objects
18116 until we are done with the parsing.
18117 (parse_single_submenu): New function.
18118 (digest_single_submenu): New function.
18119 (single_submenu): Function deleted, replaced by those two.
18120
18121 2002-07-30 Juanma Barranquero <lektu@terra.es>
18122
18123 * w32proc.c (syms_of_ntproc): Fix docstring of
18124 `w32-get-true-file-attributes'.
18125
18126 2002-07-28 Richard M. Stallman <rms@gnu.org>
18127
18128 * s/hpux8.h (HPUX8): Define this before including hpux.h.
18129 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
18130
18131 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
18132
18133 * keyboard.c (make_lispy_event):
18134 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
18135 Explicitly clear up_modifier in event->modifiers.
18136
18137 2002-07-27 Richard M. Stallman <rms@gnu.org>
18138
18139 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
18140
18141 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18142 for bar cursor.
18143
18144 2002-07-26 Kenichi Handa <handa@etl.go.jp>
18145
18146 * coding.c (detect_coding_iso2022): While checking a byte sequence
18147 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
18148 it in the normal loop.
18149
18150 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
18151
18152 * xterm.c (expose_overlaps): New function.
18153 (expose_window): Use it to fix the display of overlapping rows.
18154
18155 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
18156
18157 2002-07-23 Ken Raeburn <raeburn@gnu.org>
18158
18159 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
18160 since it only depends on XUINT.
18161
18162 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
18163 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
18164 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
18165 Macros deleted.
18166
18167 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
18168 its value over other approaches.
18169 * sysdep.c (start_of_data): Don't define the function if a macro
18170 form has been defined.
18171
18172 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
18173
18174 * xdisp.c (redisplay_updating_p): New variable.
18175 (init_iterator): Don't free realized faces when
18176 redisplay_updating_p is set.
18177 (redisplay_internal): Set redisplay_updating_p while updating
18178 the display.
18179
18180 2002-07-23 Richard M. Stallman <rms@gnu.org>
18181
18182 * editfns.c (Fmessage): Treat "" like nil.
18183
18184 2002-07-23 Kenichi Handa <handa@etl.go.jp>
18185
18186 * xdisp.c (face_before_or_after_it_pos):
18187 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18188
18189 2002-07-22 Juanma Barranquero <lektu@terra.es>
18190
18191 * callproc.c (init_callproc) [DOS_NT]:
18192 Initialize Vshared_game_score_directory to nil.
18193 (syms_of_callproc) [DOS_NT]: Likewise.
18194
18195 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
18196
18197 * xdisp.c (display_line): Replace an abort with xassert.
18198
18199 2002-07-21 Richard M. Stallman <rms@gnu.org>
18200
18201 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
18202 and END_UNCHANGED when setting buffer_unchanged_p.
18203 Use current_matrix_up_to_date_p to decide whether to use
18204 try_cursor_movement.
18205
18206 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
18207
18208 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
18209
18210 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
18211 Set to nil if dir does not exist.
18212 (syms_of_callproc): Init unconditionally and simply.
18213
18214 * buffer.c (Fbuffer_list): Doc fix.
18215
18216 2002-07-21 Ken Raeburn <raeburn@gnu.org>
18217
18218 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
18219
18220 * buffer.c (mmap_realloc): When shrinking, make sure number of
18221 pages to unmap is rounded towards zero.
18222
18223 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
18224 (XSETINT): Deleted.
18225
18226 * m/att3b.h (XINT): Don't define.
18227 (VALBITS, VALMASK, XTYPE): Deleted.
18228 (DATA_SEG_BITS): Define.
18229 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
18230 ARRAY_MARK_FLAG): Deleted.
18231 (DATA_SEG_BITS): Define.
18232 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
18233 (DATA_SEG_BITS): Define.
18234
18235 2002-07-20 Richard M. Stallman <rms@gnu.org>
18236
18237 * print.c (print_error_message): New args CONTEXT and CALLER.
18238 Calls changed.
18239
18240 * lisp.h (print_error_message): Declare new args.
18241
18242 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
18243 and CONTEXT to print_error_message, don't print them here.
18244 For a Quit, don't use Vsignaling_function.
18245 Call message_log_maybe_newline.
18246
18247 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
18248
18249 2002-07-20 Kim F. Storm <storm@cua.dk>
18250
18251 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
18252
18253 2002-07-19 Ken Raeburn <raeburn@gnu.org>
18254
18255 * bytecode.c (struct byte_stack): Pointers into byte string now
18256 point to const.
18257 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
18258 const.
18259 * charset.h (BCOPY_SHORT): Source pointer now points to const.
18260 * coding.c (encode_eol, detect_coding, detect_eol):
18261 (decode_coding, encode_coding, detect_coding_system):
18262 Source strings now treated as const.
18263 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
18264 modify Lisp string contents.
18265 * coding.h (decode_coding, encode_coding, detect_coding,
18266 detect_eol): Declarations updated.
18267 * composite.c (compose_chars_in_text): Treat Lisp string contents
18268 as const.
18269 * dispnew.c (safe_bcopy): Source pointer now points to const.
18270 * lisp.h (STRING_COPYIN): New macro.
18271 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
18272 (internal_with_output_to_temp_buffer): Declarations updated.
18273 * print.c (temp_output_buffer_setup):
18274 (internal_with_output_to_temp_buffer): Buffer name argument is now
18275 pointer to const.
18276 * sound.c (struct sound_device): Function pointer field "write"
18277 buffer argument now points to const.
18278 (vox_write): Buffer argument points to const.
18279 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
18280 contents as const.
18281 * sysdep.c (emacs_write): Buffer pointer now const.
18282 * term.c (encode_terminal_code): Buffer pointer now const.
18283 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
18284 (x_face_list_fonts, x_update_menu_appearance):
18285 (hash_string_case_insensitive): Treat Lisp string contents as const.
18286
18287 2002-07-19 Juanma Barranquero <lektu@terra.es>
18288
18289 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
18290
18291 * fileio.c (syms_of_fileio): Likewise.
18292 (Ffile_name_as_directory): Fix argument name in docstring.
18293 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
18294
18295 2002-07-18 Richard M. Stallman <rms@gnu.org>
18296
18297 * data.c (Fdefalias): Doc fix.
18298
18299 2002-07-17 Dave Love <fx@gnu.org>
18300
18301 * intervals.h (text_property_stickiness): Use P_.
18302
18303 * ccl.c: Remove `emacs' conditionals.
18304 (ccl_backtrace_table): Fix size spec.
18305 (ccl_driver): Fix type errors.
18306
18307 2002-07-16 Ken Raeburn <raeburn@gnu.org>
18308
18309 * alloc.c (xstrdup, make_string, make_unibyte_string)
18310 (make_multibyte_string, build_string): String pointer args now
18311 point to const.
18312 * charset.c (find_charset_in_text, c_string_width):
18313 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
18314 * fileio.c (report_file_error):
18315 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
18316 (count_combining_before, count_combining_after, insert_1_both):
18317 (insert, insert_and_inherit, insert_string):
18318 (insert_before_markers, insert_before_markers_and_inherit):
18319 * lread.c (intern, oblookup, hash_string):
18320 * minibuf.c (temp_echo_area_glyphs):
18321 * search.c (fast_c_string_match_ignore_case):
18322 * sysdep.c (emacs_open, set_file_times):
18323 * xfaces.c (xstricmp):
18324 * xdisp.c (store_frame_title, string_char_and_length):
18325 (message_dolog, message2, message2_nolog, set_message): Likewise.
18326 (set_message_1): Cast message string argument to const pointer.
18327 * editfns.c (general_insert_function): Insertion function now
18328 takes pointer to const for input data.
18329 * charset.h (find_charset_in_text, c_string_width):
18330 (parse_str_as_multibyte): Declarations updated.
18331 * dispextern.h (xstricmp): Declaration updated.
18332 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
18333 (count_size_as_multibyte, count_combining_before):
18334 (count_combining_after, insert_1, insert_1_both, message_dolog):
18335 (insert, insert_and_inherit, insert_before_markers)
18336 (insert_before_markers_and_inherit, set_message, message2):
18337 (message2_dolog, build_string, make_string, make_unibyte_string):
18338 (make_multibyte_string, intern, oblookup, report_file_error):
18339 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
18340 (emacs_open, xstrdup): Declarations updated.
18341 * systime.h (set_file_times): Declaration updated.
18342
18343 * charset.c (find_charset_in_text, lisp_string_width): Use const
18344 for pointer to lisp string data.
18345 * charset.h (FETCH_STRING_CHAR_ADVANCE):
18346 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
18347 * coding.c (Ffind_coding_systems_region_interval):
18348 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
18349 (Fmake_directory_internal, Fdelete_directory):
18350 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
18351 * fontset.c (font_family_registry, fs_query_fontset):
18352 (list_fontsets):
18353 * frame.c (Fframe_parameter):
18354 * keyboard.c (cmd_error_internal):
18355 * keymap.c (Fdescribe_buffer_bindings):
18356 * lread.c (complete_filename_p, openp):
18357 * minibuf.c (Fminibuffer_complete_word):
18358 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
18359 (face_before_or_after_it_pos, next_element_from_string):
18360 (get_overlay_arrow_glyph_row, display_mode_element):
18361 (decode_mode_spec_coding):
18362 * xterm.c (same_x_server): Likewise.
18363
18364 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
18365 settings of non-existent fields.
18366
18367 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
18368 copy a lisp value.
18369
18370 * lread.c (Fintern_soft): Use string macros instead of
18371 Lisp_String fields.
18372 * keyboard.c (echo_char, parse_modifiers_uncached):
18373 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
18374 * textprop.c (validate_interval_range, interval_of): Likewise.
18375
18376 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
18377
18378 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18379 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
18380 XSTRING()->size_byte.
18381
18382 * lisp.h (SDATA, SREF): Produce rvalue.
18383 (SSET): New macro.
18384 * alloc.c (make_event_array): Use SSET for storing into a string.
18385 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
18386 a string.
18387 * casefiddle.c (casify_object): Use SSET.
18388 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18389 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
18390 address of string contents.
18391 * data.c (Faref): Use SDATA.
18392 (Faset): Use SDATA, SSET.
18393 * dired.c (directory_files_internal): Use SSET.
18394 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
18395 (Fread_file_name): Use SREF, SSET.
18396 * fns.c (concat): Use SSET.
18397 (concat, Fdelete): Use SDATA.
18398 * insdel.c (insert_from_string_1): Use SDATA.
18399 * keyboard.c (Fevent_convert_list): Use SREF.
18400 * lread.c (Fload): Use SDATA, SSET.
18401 * macfns.c (validate_x_resource_name): Use SSET.
18402 * process.c (status_message): Use SSET.
18403 * search.c (wordify): Use SDATA.
18404 (Freplace_match): Use SREF.
18405 * w32fns.c (validate_x_resource_name): Use SSET.
18406 * xfns.c (validate_x_resource_name): Use SSET.
18407 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
18408
18409 2002-07-16 Richard M. Stallman <rms@gnu.org>
18410
18411 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
18412
18413 * xdisp.c (reconsider_clip_changes):
18414 Don't test prevent_redisplay_optimizations_p.
18415 (redisplay_internal): Test prevent_redisplay_optimizations_p
18416 along with clip_changed in some cases.
18417 (try_window_id): Likewise.
18418 (redisplay_window): New local var buffer_unchanged_p.
18419
18420 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
18421
18422 * process.c (create_process): Test USG_SUBTTY_WORKS.
18423 (process_send_signal): Clean up handling of GID.
18424 Detect errors in ioctls meant to set GID.
18425
18426 * window.c (temp_output_buffer_show):
18427 Don't set prevent_redisplay_optimizations_p.
18428
18429 2002-07-15 Juanma Barranquero <lektu@terra.es>
18430
18431 * eval.c (Fdefvaralias): Add docstring argument.
18432
18433 2002-07-15 Ken Raeburn <raeburn@gnu.org>
18434
18435 * lisp.h (STRING_INTERVALS): Produce rvalue.
18436 (STRING_SET_INTERVALS): New macro.
18437 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
18438 * fns.c (Fstring_as_multibyte): Likewise.
18439 * intervals.c (balance_possible_root_interval, delete_interval)
18440 (create_root_interval, copy_intervals_to_string): Likewise.
18441 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
18442 instead of 0.
18443
18444 2002-07-14 Ken Raeburn <raeburn@gnu.org>
18445
18446 * lisp.h (STRING_SET_CHARS): New macro.
18447 (SCHARS, SBYTES): Produce rvalues.
18448 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
18449 * fns.c (concat): Likewise.
18450 * lread.c (read_vector): Likewise.
18451
18452 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
18453 (STRING_SET_UNIBYTE): New macro.
18454 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
18455 length of -1) changed to use STRING_SET_UNIBYTE.
18456 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
18457 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
18458 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
18459 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
18460 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
18461 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
18462 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
18463 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
18464 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
18465 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
18466 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
18467 STRING_BYTES or indirection changed to SCHARS, SBYTES,
18468 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
18469 unchanged for now.
18470
18471 2002-07-13 Kim F. Storm <storm@cua.dk>
18472
18473 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
18474
18475 2002-07-12 Richard M. Stallman <rms@gnu.org>
18476
18477 * fileio.c (Fwrite_region): Doc fix.
18478
18479 * print.c (print_error_message): Don't handle Vsignaling_function here.
18480
18481 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
18482 (command_loop_1): Avoid certain actions after memory-full error.
18483
18484 * eval.c (Fsignal): Don't call cancel_hourglass.
18485 For a memory-full error, don't call Vsignal_hook_function
18486 and don't set Vsignaling_function.
18487
18488 * process.c (process_send_signal): Add abort call.
18489
18490 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
18491
18492 * keymap.c (Fkey_binding): Fix typo.
18493
18494 2002-07-11 Richard M. Stallman <rms@gnu.org>
18495
18496 * alloc.c (Vmemory_full): New variable.
18497 (Vmemory_signal_data): Rename from memory_signal_data.
18498 Uses changed.
18499 (syms_of_alloc): Defvar them.
18500 (memory_full, buffer_memory_full): Set Vmemory_full.
18501
18502 * lisp.h (Vmemory_full): Add declaration.
18503 (current_column, indented_beyond_p): Change declaration.
18504
18505 * indent.c (last_known_column): Declare as double, not float.
18506 (current_column, current_column_1, string_display_width)
18507 (position_indentation): Return `double'.
18508 (indented_beyond_p): Arg `column' is `double'. Callers changed.
18509
18510 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
18511 (back_to_previous_visible_line_start)
18512 (reseat_at_next_visible_line_start, next_element_from_buffer):
18513 Use `double', not `float', when calling indented_beyond_p.
18514
18515 * s/hpux11.h (BROKEN_SA_RESTART): Define.
18516
18517 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
18518
18519 2002-07-11 Juanma Barranquero <lektu@terra.es>
18520
18521 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
18522 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
18523 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
18524 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
18525 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
18526 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
18527
18528 2002-07-10 Juanma Barranquero <lektu@terra.es>
18529
18530 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
18531 All callers changed.
18532
18533 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
18534
18535 * data.c (Fdefalias): Add an optional `docstring' argument.
18536 (set_internal, Fsetq_default): Use XCAR/XCDR.
18537
18538 * composite.c (HASH_VALUE, HASH_KEY):
18539 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
18540
18541 2002-07-09 Kenichi Handa <handa@etl.go.jp>
18542
18543 * callproc.c (Fcall_process): Fix previous change.
18544
18545 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
18546
18547 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
18548 Add support for hash-tables.
18549 (Ftry_completion): Return t even if the string appears multiple times.
18550
18551 * fns.c (Fnconc): Use XCDR.
18552 (Fprovide): Use CONSP and XCDR.
18553 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
18554 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
18555 (Fmake_hash_table): Accept `:size nil'.
18556 (Fmakehash): Delete: moved to subr.el.
18557 (syms_of_fns): Don't defsubr makehash.
18558
18559 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
18560 (HASH_TABLE_SIZE): Move from fns.c.
18561
18562 2002-07-07 Richard M. Stallman <rms@gnu.org>
18563
18564 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
18565 Instead just return 0 when there is something to be done.
18566 (try_scrolling): If make_cursor_line_fully_visible returns 0,
18567 retry scrolling as if cursor were off the bottom.
18568 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
18569 return CURSOR_MOVEMENT_MUST_SCROLL.
18570 (redisplay_window): If make_cursor_line_fully_visible returns 0,
18571 go to try_to_scroll.
18572
18573 * buffer.c (Fbuffer_local_value): Store current value into its binding
18574 so we get the up-to-date value for the binding that is loaded.
18575
18576 * eval.c (Fdefmacro): Doc fix.
18577
18578 2002-07-05 Dave Love <fx@gnu.org>
18579
18580 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
18581 correctly.
18582
18583 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
18584 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
18585 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
18586 CCL_LookupCharConstTbl.
18587 (syms_of_ccl): Defvar translation-hash-table-vector.
18588
18589 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18590
18591 * xdisp.c: Remove unused variable `face'.
18592
18593 2002-07-04 Juanma Barranquero <lektu@terra.es>
18594
18595 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
18596 obsolescence information.
18597
18598 2002-07-03 Andrew Choi <akochoi@shaw.ca>
18599
18600 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
18601 pattern. Search cache first.
18602 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
18603 for Japanese font.
18604 (XLoadQueryFont): Use it.
18605
18606 2002-07-02 Richard M. Stallman <rms@gnu.org>
18607
18608 * keymap.c (Fdefine_key): Doc fix.
18609
18610 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
18611
18612 2002-07-02 Juanma Barranquero <lektu@terra.es>
18613
18614 * keymap.c (syms_of_keymap): Fix typo.
18615
18616 2002-07-01 Andrew Choi <akochoi@shaw.ca>
18617
18618 * s/darwin.h: Define POSIX_SIGNALS.
18619
18620 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
18621 and FSRefMakePath to convert FSSpec returned with Apple Event to
18622 Posix pathname.
18623 (mac_initialize) [TARGET_API_MAC_CARBON]:
18624 Call init_required_apple_events and disable the `Quit' menu item
18625 provided automatically by the Carbon Toolbox.
18626
18627 2002-07-01 Dave Love <fx@gnu.org>
18628
18629 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
18630 for K&R.
18631
18632 * xterm.c: Fix prototype for K&R.
18633
18634 * term.c (costs_set): Declare static, non-initialized for pcc.
18635
18636 2002-07-01 Richard M. Stallman <rms@gnu.org>
18637
18638 * keyboard.c (timer_last_idleness_start_time): New variable.
18639 (timer_start_idle): Set that.
18640 (read_key_sequence): Use that to reset timer_idleness_start_time
18641 to previous value.
18642
18643 * window.c (Frecenter): With arg, set optional_new_start.
18644
18645 * xdisp.c (redisplay_internal): Make optional_new_start really work.
18646
18647 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
18648 buffer for completion.
18649
18650 2002-06-29 Ken Raeburn <raeburn@gnu.org>
18651
18652 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
18653
18654 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18655
18656 * keyboard.c (readable_filtered_events): New function that filters
18657 FOCUS_IN_EVENT depending on parameter.
18658 (readable_events): Calls readable_filtered_events, not filtering
18659 FOCUS_IN_EVENT.
18660 (get_filtered_input_pending): New function, filtering parameter passed
18661 to readable_filtered_events.
18662 (get_input_pending): Calls get_filtered_input_pending, not filtering
18663 FOCUS_IN_EVENT.
18664 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
18665 FOCUS_IN_EVENT.
18666
18667 * xterm.h (struct x_output): Add focus_state.
18668
18669 * xterm.c (x_focus_changed): New function.
18670 (x_detect_focus_change): New function.
18671 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
18672 EnterNotify and LeaveNotify to track X focus changes.
18673
18674 2002-06-28 Andreas Schwab <schwab@suse.de>
18675
18676 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
18677
18678 2002-06-27 Kim F. Storm <storm@cua.dk>
18679
18680 * xdisp.c (mode_line_string_list, mode_line_string_face)
18681 (mode_line_string_face_prop): New variables.
18682 (store_mode_line_string): New function.
18683 (display_mode_element): Use store_mode_line_string to
18684 add mode-line string elements to mode_line_string_list
18685 when mode_line_string_list is non-nil.
18686 (Fformat_mode_line): Now returns propertized string by
18687 default. New arg NO-PROPS to ignore properties.
18688 (decode_mode_spec): Only add two dashes for %- in propertized
18689 mode-line string.
18690 (syms_of_xdisp): Init and staticpro mode_line_string_list.
18691
18692 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
18693
18694 * minibuf.c (minibuffer_completion_contents): Add return type.
18695
18696 2002-06-27 Juanma Barranquero <lektu@terra.es>
18697
18698 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
18699
18700 2002-06-26 Juanma Barranquero <lektu@terra.es>
18701
18702 * fileio.c (read_file_name_cleanup): Add missing return.
18703
18704 2002-06-26 Richard M. Stallman <rms@gnu.org>
18705
18706 * window.c (Frecenter): Don't set force_start flag.
18707
18708 * minibuf.c (do_completion, Fminibuffer_complete_word)
18709 (Fminibuffer_completion_help): Complete just the text before point.
18710 (minibuffer_completion_contents): New function.
18711
18712 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
18713
18714 * frame.c (frames_bury_buffer): Function deleted.
18715
18716 2002-06-25 Miles Bader <miles@gnu.org>
18717
18718 * callint.c (Fcall_interactively): When checking to see if doprnt hit
18719 the end of callint_message, allow for a terminating '\0'.
18720
18721 2002-06-24 Juanma Barranquero <lektu@terra.es>
18722
18723 * w32select.c: Include composite.h.
18724
18725 * w16select.c: Likewise.
18726
18727 2002-06-24 Kenichi Handa <handa@etl.go.jp>
18728
18729 * callproc.c (Fcall_process): If code detection is necessary,
18730 call detect_coding directly here.
18731
18732 * coding.c (detect_eol): Preserve coding->cmp_data.
18733
18734 * w16select.c (Fw16_get_clipboard_data):
18735 * w32fns.c (w32_to_x_font):
18736 * w32select.c (Fw32_get_clipboard_data):
18737 * xselect.c (selection_data_to_lisp_data):
18738 * xterm.c (XTread_socket): Disable composition handling.
18739
18740 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
18741
18742 * print.c (temp_output_buffer_setup): Kill all local variables.
18743
18744 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
18745
18746 * lread.c (Fread): Remove redundant and imprecise declaration.
18747
18748 * xfns.c (check_x_display_info): Use check_x_frame.
18749
18750 * .gdbinit (xprintsym): Use the new `xname' field.
18751 (xsymbol): Use it.
18752
18753 2002-06-22 Jason Rumney <jasonr@gnu.org>
18754
18755 * w32fns.c (file_dialog_callback): New function.
18756 (Fx_file_dialog): Allow selecting directories as well as files.
18757
18758 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18759
18760 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
18761 OpenBSD. Add support for mipseb-*-netbsd* machines.
18762
18763 2002-06-17 Andrew Choi <akochoi@shaw.ca>
18764
18765 * macterm.c (mac_scroll_area): Set foreground and backcolor to
18766 black and white before scrolling. Restore frame background and
18767 foreground color after scrolling.
18768 (do_window_update): Call XClearWindow before calling expose_frame.
18769 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
18770 FRAME_FOREGROUND_PIXEL of frame.
18771
18772 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
18773 test Mac command key as <ALT> key.
18774
18775 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
18776
18777 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
18778
18779 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
18780 Lookup keys in function-key-map immediately so that key-translation-map
18781 can be applied earlier.
18782 Remove function_key_possible and key_translation_possible, replaced
18783 by checking `keytran_start < t'.
18784
18785 * .gdbinit (xsymbol): Use the new `xname' field.
18786
18787 2002-06-17 Andrew Choi <akochoi@shaw.ca>
18788
18789 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
18790 test Mac command key as <ALT> key.
18791
18792 * mac.c (do_applescript): Call initialize_applescript if necessary
18793 when first called. Dispose of result_desc only when there is no error.
18794 (Fdo_applescript): Use %d format specifier instead of %ld.
18795
18796 2002-06-16 Andrew Choi <akochoi@shaw.ca>
18797
18798 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
18799 of FrontWindow for cases keyDown and autoKey.
18800
18801 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
18802 Vdefault_fontset to Monaco with mac-roman coding.
18803
18804 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
18805 init_process before and after inclusion of Carbon/Carbon.h, resp.
18806
18807 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
18808 cursor_gc.
18809 (add_font_name_table_entry): New function.
18810 (init_font_name_table): Use add_font_name_table_entry; add italic,
18811 bold, and bold-italic entries for truetype fonts.
18812
18813 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
18814 for Mac too.
18815 (try_font_list) [MAC_OS]: If no font matches given registry, try
18816 fonts with any registry matching face_family.
18817 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
18818
18819 * s/darwin.h: If autoconf detects the Ncurses library, define
18820 LIBS_TERMCAP to -lncurses to use it.
18821
18822 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
18823
18824 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
18825
18826 2002-06-15 Richard M. Stallman <rms@gnu.org>
18827
18828 * window.c (Fset_window_configuration): Explicitly preserve
18829 the point value that new_current_buffer had at the start.
18830
18831 2002-06-14 Juanma Barranquero <lektu@terra.es>
18832
18833 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
18834 Fix typos.
18835
18836 2002-06-14 Kim F. Storm <storm@cua.dk>
18837
18838 * insdel.c (insert_1_both, insert_from_string_1)
18839 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
18840 insert happened in the end_unchanged region. Otherwise, the
18841 redisplay may be confused and duplicate the last line in the
18842 buffer [seen after save-buffer when require-final-newline==t].
18843
18844 2002-06-13 Jason Rumney <jasonr@gnu.org>
18845
18846 * w32.c (init_environment): Remove EMACSLOCKDIR.
18847 (stat): Swap _S_IFDIR and _S_IFREG.
18848
18849 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18850
18851 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
18852 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
18853 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
18854 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
18855 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
18856 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
18857 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
18858 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
18859 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
18860 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
18861 SELECTION_REQUEST_EVENT, selection_clear_event to
18862 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
18863 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
18864 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
18865 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
18866 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
18867 no_event to NO_EVENT.
18868
18869 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18870
18871 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
18872
18873 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
18874
18875 * intervals.c (textget): Don't forget to `return'.
18876 (lookup_char_property): Use XCAR/XCDR.
18877
18878 2002-06-12 Juanma Barranquero <lektu@terra.es>
18879
18880 * xdisp.c (Fformat_mode_line): Fix typo.
18881
18882 2002-06-12 Kim F. Storm <storm@cua.dk>
18883
18884 * xdisp.c (Fformat_mode_line): New function.
18885 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
18886 (store_frame_title_char, store_frame_title): Use unconditionally.
18887 (init_xdisp): Defsubr Fformat_mode_line.
18888 Initialize frame_title_buf etc. unconditionally.
18889
18890 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
18891
18892 * keyboard.c (read_key_sequence):
18893 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
18894 things through those maps after downcasing events.
18895 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
18896 applies after function-key-map.
18897 Make sure that keytran can be done in the middle in the sequence.
18898 Be careful not to throw away events past the one we downcase.
18899
18900 * lread.c (read_integer): Remove unused var `tem'.
18901 (read1): Fix int/Lisp_Object mixup.
18902
18903 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
18904
18905 2002-06-11 Richard M. Stallman <rms@gnu.org>
18906
18907 * keyboard.c (readable_events): Ignore any number of
18908 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
18909
18910 2002-06-09 Miles Bader <miles@gnu.org>
18911
18912 * xfaces.c (Ftty_supports_face_attributes_p): New function.
18913 (parse_rgb_list, tty_lookup_color): New functions.
18914 (tty_defined_color): Use `tty_lookup_color' to do all the work.
18915 (color_distance, Fcolor_distance): New functions.
18916 (TTY_SAME_COLOR_THRESHOLD): New macro.
18917 (Qtty_color_standard_values): New variable.
18918 (syms_of_xfaces): Initialize new vars & functions.
18919
18920 2002-06-08 Colin Walters <walters@verbum.org>
18921
18922 * textprop.c (Vchar_property_alias_alist): New variable.
18923 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
18924
18925 * intervals.c (lookup_char_property): New function for looking up
18926 overlay and text properties, created from textget.
18927 (textget): Use it.
18928
18929 * intervals.h (lookup_char_property): Declare.
18930 (Vchar_property_alias_alist): Declare.
18931
18932 * buffer.c (Foverlay_get): Use lookup_char_property.
18933
18934 2002-06-07 Sam Steingold <sds@gnu.org>
18935
18936 * xselect.c (lisp_data_to_selection_data): Fix last change:
18937 *data_ret is not a Lisp string, while unibyte_string is.
18938
18939 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
18940
18941 * xselect.c (lisp_data_to_selection_data): Fix last change:
18942 set size_ret.
18943
18944 2002-06-07 Andreas Schwab <schwab@suse.de>
18945
18946 * m/amdx86-64.h: New file.
18947
18948 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
18949
18950 * fns.c (Fstring_make_unibyte): Doc fix.
18951
18952 * xselect.c (lisp_data_to_selection_data): If the requested type
18953 is STRING, call string_make_unibyte to encode the selected text
18954 as a string.
18955
18956 * window.c (Fset_window_hscroll): Doc fix.
18957
18958 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18959
18960 * fileio.c (choose_write_coding_system):
18961 Call select-safe-coding-system properly.
18962
18963 2002-06-03 Richard M. Stallman <rms@gnu.org>
18964
18965 * xdisp.c (message_with_string): Error if STRING is not a string.
18966
18967 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
18968
18969 * fileio.c (choose_write_coding_system): Pass FILE arg to
18970 Vselect_safe_coding_system_function.
18971
18972 2002-06-03 Ken Raeburn <raeburn@gnu.org>
18973
18974 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
18975
18976 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
18977
18978 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
18979 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
18980 * keymap.c (describe_command): Likewise.
18981 * minibuf.c (read_minibuf): Likewise.
18982
18983 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
18984 Cast `current_column' return value to int.
18985 (back_to_previous_visible_line_start)
18986 (reseat_at_next_visible_line_start, next_element_from_buffer):
18987 Cast `indented_beyond_p' 3rd arg to float.
18988
18989 * indent.c (last_known_column): Now a float.
18990 (current_column_1, position_indentation, current_column)
18991 (string_display_width): Return float.
18992 (Fcurrent_column): Cast `current_column' return value to int.
18993 (Fcurrent_indentation): Cast `position_indentation' retval to int.
18994 (indented_beyond_p): Third arg now a float.
18995 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
18996
18997 * lisp.h (current_column): Now returns float.
18998 (indented_beyond_p): 3rd arg now a float.
18999
19000 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
19001
19002 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
19003 is Qcompound_text_with_extensions.
19004
19005 * xselect.c (lisp_data_to_selection_data): Always set selection
19006 type as string if x_encode_text returns streingp non-NULL.
19007
19008 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
19009
19010 2002-05-30 Richard M. Stallman <rms@gnu.org>
19011
19012 * window.c (Fset_window_configuration): Correct the handling
19013 of point in current buffer, to work with multiple windows.
19014
19015 2002-05-29 Colin Walters <walters@verbum.org>
19016
19017 * lread.c (Fread_from_string): Don't depend on order of evaluation
19018 for C function parameters.
19019
19020 2002-05-28 Richard M. Stallman <rms@gnu.org>
19021
19022 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
19023 way for blinked-off state and for a nonselected window.
19024
19025 * window.c (window_scroll_pixel_based): Don't call Fbolp;
19026 instead, see if the new start pos is at beginning of line.
19027
19028 * fileio.c (Fwrite_region): If START is a string, don't
19029 make any annotations.
19030
19031 * eval.c (syms_of_eval): Doc fix.
19032
19033 2002-05-28 Colin Walters <walters@debian.org>
19034
19035 * emacs.c (USAGE1): Add --no-splash.
19036 (standard_args): Ditto.
19037
19038 2002-05-28 Colin Walters <walters@gnu.org>
19039
19040 * lread.c (readchar_count): New variable.
19041 (readchar): Increment it.
19042 (unreadchar): Decrement it.
19043 (read_multibyte): Decrement it.
19044 (Vread_with_symbol_positions): New variable.
19045 (Vread_symbol_positions_list): New variable.
19046 (read_internal_start): New function, created from Fread and
19047 Fread_from_string. Handle Vread_symbol_positions_list and
19048 Vread_with_symbol_positions.
19049 (readevalloop, Fread, Fread_from_string): Use it.
19050 (read1): Use readchar_count to add symbol positions to
19051 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
19052 (syms_of_lread): DEFVAR_LISP and initialize them.
19053
19054 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
19055 (substitute_object_recurse, substitute_object_in_subtree)
19056 (substitute_in_interval): Prototype.
19057 (read_multibyte): Return c if it's less than zero.
19058
19059 2002-05-28 Kim F. Storm <storm@cua.dk>
19060
19061 * fileio.c (Fread_file_name_internal): Added brute-force
19062 speed up for using predicate file-directory-p.
19063
19064 2002-05-28 Kim F. Storm <storm@cua.dk>
19065
19066 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
19067 New variables.
19068 (syms_of_fileio): DEFVAR_LISP them.
19069 (read_file_name_cleanup): New unwind function.
19070 (Fread_file_name_internal): Only return completions satifying
19071 Vread_file_name_predicate. Temporarily unwind protect and rebind
19072 default-directory while checking completions against the predicate.
19073 (Fread_file_name): Added PREDICATE argument. Specbind it to
19074 Vread_file_name_predicate during completion.
19075 Call Vread_file_name_function to read the file name if non-nil.
19076
19077 * lisp.h (Fread_file_name): Now has 6 args.
19078
19079 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
19080 predicate for Fread_file_name when reading directory name.
19081 Supply Qnil for predicate in other calls to Fread_file_name.
19082
19083 2002-05-26 Miles Bader <miles@gnu.org>
19084
19085 * term.c (tty_capable_p): New function.
19086 * dispextern.h (tty_capable_p): New function declaration.
19087 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
19088 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
19089
19090 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
19091
19092 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
19093 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
19094 (Vwrite_region_annotate_functions): Docstring fix.
19095
19096 2002-05-23 Kim F. Storm <storm@cua.dk>
19097
19098 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
19099 phys_cursor's hpos is overwritten. This is still not completely
19100 correct, as it doesn't really make sense to use hpos at all to
19101 get the cursor glyph (as that is relative to the width of the
19102 characters on the line, which may have changed during the update).
19103
19104 2002-05-22 Jason Rumney <jasonr@gnu.org>
19105
19106 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
19107 Lisp_Object.
19108 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
19109 Use modified enumfont_t struct.
19110
19111 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19112
19113 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
19114 Handle the `hbar' cursor type.
19115 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19116
19117 * w32fns.c (Qhbar): New variable.
19118 (x_specified_cursor_type): Use it.
19119
19120 2002-05-21 Ken Raeburn <raeburn@gnu.org>
19121
19122 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
19123 now, when the address is needed.
19124
19125 2002-05-21 Colin Walters <walters@gnu.org>
19126
19127 * Makefile.in (shortlisp): Add font-core.el.
19128
19129 2002-05-20 Richard M. Stallman <rms@gnu.org>
19130
19131 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
19132
19133 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
19134 equivalent key bindings here.
19135
19136 2002-05-20 Ken Raeburn <raeburn@gnu.org>
19137
19138 Change symbol structure to contain a lisp object for the symbol
19139 name:
19140 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
19141 object field named "xname".
19142 (SYMBOL_NAME): New macro.
19143 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
19144 name field.
19145 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
19146 (mark_object, gc_sweep): Use symbol xname field and XSTRING
19147 instead of name field.
19148 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
19149 SYMBOL_NAME instead of XSYMBOL and name field.
19150 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
19151 instead of XSYMBOL and name field.
19152 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
19153 and SYMBOL_NAME instead of XSYMBOL and name field.
19154 * coding.c (Fread_coding_system, code_convert_region1)
19155 (code_convert_string1, code_convert_string_norecord)
19156 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
19157 XSYMBOL and name field.
19158 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
19159 (Fmake_variable_buffer_local, Fmake_local_variable)
19160 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
19161 of XSYMBOL and name field.
19162 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
19163 XSYMBOL and name field.
19164 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
19165 instead of XSYMBOL and name field.
19166 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
19167 XSYMBOL and name field.
19168 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
19169 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19170 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
19171 instead of XSYMBOL and name field.
19172 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
19173 (parse_modifiers, apply_modifiers, Fevent_convert_list)
19174 (parse_solitary_modifier, Fexecute_extended_command):
19175 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19176 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
19177 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
19178 of XSYMBOL and name field.
19179 (describe_command, describe_translation): Use SYMBOL_NAME and
19180 assignment instead of XSYMBOL and name field and XSETSTRING.
19181 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
19182 instead of XSYMBOL and name field.
19183 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
19184 name field and XSETSTRING.
19185 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19186 of XSYMBOL and name field.
19187 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
19188 assignment instead of XSYMBOL and name field and XSETSTRING.
19189 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
19190 XSTRING instead of XSYMBOL and name field.
19191 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
19192 and XSTRING instead of XSYMBOL and name field.
19193 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
19194 and XSTRING instead of XSYMBOL and name field.
19195 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
19196 XSTRING instead of XSYMBOL and name field.
19197 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19198 of XSYMBOL and name field.
19199 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
19200 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19201
19202 2002-05-19 Ken Raeburn <raeburn@gnu.org>
19203
19204 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
19205 and XCDR real rvalues in most configurations.
19206
19207 * buffer.c (fix_overlays_in_range, fix_overlays_before):
19208 Don't take the address of the cdr part of a cons cell; instead, track
19209 the parent cell and call XSETCDR, or set the variable for the head
19210 of the list if we haven't started down the list yet.
19211
19212 2002-05-19 Richard M. Stallman <rms@gnu.org>
19213
19214 * doc.c (reread_doc_file): Don't ask for confirmation.
19215
19216 2002-05-18 Jason Rumney <jasonr@gnu.org>
19217
19218 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
19219 (xbm_load_image): Use it.
19220 (xbm_load): Ditto.
19221 (xbm_read_bitmap_data): Reverted to xfns.c version.
19222 From David Ponce <david@dponce.com>.
19223
19224 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
19225
19226 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
19227 2.02 and later.
19228
19229 2002-05-16 Juanma Barranquero <lektu@terra.es>
19230
19231 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
19232
19233 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
19234
19235 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
19236 meaningful test.
19237 (read_char_minibuf_menu_prompt): Fix typo.
19238
19239 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
19240
19241 * eval.c (Fcommandp): Doc fix.
19242
19243 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
19244
19245 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
19246 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
19247 (Fset_keymap_parent): Gcpro a bit more.
19248 (access_keymap): Gcpro around meta_map call and around the main loop.
19249 (get_keyelt): Gcpro when following indirect references.
19250 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
19251 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
19252 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
19253 Remove useless ad-hoc remap code.
19254
19255 2002-05-13 Richard M. Stallman <rms@gnu.org>
19256
19257 * search.c (search_buffer): Give up boyer moore search if inverse
19258 translation change charset_base.
19259
19260 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
19261
19262 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
19263 characters is carried over from the previous block of text, adjust
19264 coding->produced to account for the extra character.
19265
19266 2002-05-11 Andreas Schwab <schwab@suse.de>
19267
19268 * coding.c (intersection): Keep the elements of the returned list
19269 in the same order as in the first list.
19270
19271 2002-05-11 Kim F. Storm <storm@cua.dk>
19272
19273 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
19274 only update cmm_size if realloc actually succeeds.
19275 Testing with initial size of 2 elements revealed that using
19276 realloc on GNU/Linux would cause a random trap in xmalloc
19277 later on, so I rewrote the code to use malloc/bcopy/free instead
19278 of realloc.
19279
19280 2002-05-10 Jason Rumney <jasonr@gnu.org>
19281
19282 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
19283
19284 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
19285
19286 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
19287 parens, to ensure correct evaluation order.
19288
19289 2002-05-10 Kim F. Storm <storm@cua.dk>
19290
19291 * keymap.c (Vemulation_mode_map_alists): New variable.
19292 (syms_of_keymap): DEFVAR_LISP it.
19293 (current_minor_maps): Process keymap alists in that list before
19294 minor-mode-overriding-map-alist and minor-mode-map-alist.
19295
19296 2002-05-09 Richard M. Stallman <rms@gnu.org>
19297
19298 * search.c (Freplace_match): Doc fix.
19299
19300 2002-05-09 Kim F. Storm <storm@cua.dk>
19301
19302 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19303 Enlarge cursor rectangle drawn around image with non-zero relief.
19304
19305 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
19306 Enlarge cursor rectangle drawn around image with non-zero relief.
19307
19308 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19309 Enlarge cursor rectangle drawn around image with non-zero relief.
19310
19311 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
19312
19313 * xselect.c (lisp_data_to_selection_data): Don't set selection
19314 type if comes from the Lisp object's car. If the selection
19315 contains a pure ASCII text, always return QSTRING as its type.
19316
19317 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19318
19319 * mac.c (mac-cut-function): Doc fix.
19320
19321 2002-05-05 Richard M. Stallman <rms@gnu.org>
19322
19323 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
19324
19325 2002-05-04 Jason Rumney <jasonr@gnu.org>
19326
19327 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
19328 for event-click-count.
19329
19330 * process.c (init_process): Only add server subfeature if we can
19331 use non-blocking I/O.
19332
19333 2002-05-04 Andrew Choi <akochoi@shaw.ca>
19334
19335 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
19336 repeatedly.
19337
19338 2002-05-03 Jason Rumney <jasonr@gnu.org>
19339
19340 * process.c (Fmake_network_process): Only support server sockets
19341 when we can make them non-blocking.
19342
19343 * s/ms-w32.h (HAVE_SELECT): Define.
19344
19345 * w32.h (FILE_NDELAY): New flag.
19346
19347 * w32.c (sys_getpeername, fcntl): New functions.
19348 (_sys_read_ahead): Temporarily block on non-blocking sockets.
19349
19350 * w32proc.c: Include sys/file.h.
19351
19352 2002-05-03 Colin Walters <walters@verbum.org>
19353
19354 * callproc.c (Vgame_score_directory): Renamed to
19355 Vshared_game_score_directory.
19356
19357 2002-04-30 Richard M. Stallman <rms@gnu.org>
19358
19359 * s/gnu.h [emacs]: Include stdio.h.
19360 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
19361
19362 * eval.c (do_autoload): Error if called while preparing to dump.
19363
19364 * fns.c (Frequire): Error if need to load while preparing to dump.
19365
19366 2002-04-28 Colin Walters <walters@verbum.org>
19367
19368 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
19369 Default to "~/.emacs.d/games".
19370
19371 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
19372
19373 * lread.c (openp): Change arg exec_only to predicate.
19374 (build_load_history): Use XCAR/XCDR.
19375 (Flocate_file_internal): New fun.
19376 (syms_of_lread): Defsubr it.
19377 (Fload): Update call to openp.
19378
19379 * lisp.h (openp): Update prototype.
19380
19381 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
19382 * w32proc.c (sys_spawnve):
19383 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
19384 * w32.c (check_windows_init_file):
19385 * sound.c (Fplay_sound_internal):
19386 * process.c (Fstart_process):
19387 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
19388 * mac.c (run_mac_command):
19389 * emacs.c (init_cmdargs):
19390 * callproc.c (Fcall_process): Update call to openp.
19391
19392 * textprop.c (remove_properties): Don't use XCAR without CONSP.
19393
19394 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
19395
19396 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19397
19398 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
19399 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
19400
19401 2002-04-28 Richard M. Stallman <rms@gnu.org>
19402
19403 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
19404
19405 * eval.c (Fcommandp): New arg for_call_interactively.
19406 * lisp.h (Fcommandp): Declare new arg.
19407
19408 2002-04-28 Jason Rumney <jasonr@gnu.org>
19409
19410 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
19411
19412 * w32.c (stat, fstat): Use file index information to generate
19413 inodes for directories where available.
19414
19415 2002-04-26 Andrew Choi <akochoi@shaw.ca>
19416
19417 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
19418 [HAVE_CARBON]: Include Mac object files.
19419
19420 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
19421 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
19422 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
19423 MAC_OSX, and MAC_OS instead of macintosh.
19424
19425 * editfns.c [MAC_OS8]: Include stdio.h.
19426
19427 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
19428
19429 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
19430 Apple Monaco.
19431
19432 * process.c (QCfamily, QCfilte): Declare extern.
19433 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
19434 calling select.
19435
19436 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
19437
19438 * tparam.c [MAC_OSX]: Don't define BC and UP.
19439
19440 * config.in [HAVE_CARBON]: Add.
19441
19442 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
19443 Move here from mac/src and mac/inc.
19444
19445 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
19446
19447 2002-04-26 Gerd Moellmann <gerd@gnu.org>
19448
19449 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
19450 Compute phys_cursor_width from the x position returned
19451 by x_draw_glyhs, which is cheaper.
19452 (x_display_and_set_cursor): Compute the buffer-local value
19453 of `cursor-in-non-selected-windows' only when needed.
19454
19455 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19456
19457 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
19458 cursor on a stretch glyph has a width that depends on
19459 x_stretch_cursor_p.
19460
19461 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19462
19463 * abbrev.c (abbrev-start-location): Doc fix.
19464
19465 * indent.c (Fvertical_motion): Fix last change.
19466
19467 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19468
19469 * indent.c (Fvertical_motion): Move to the start of the line
19470 containing PT before moving up or down.
19471
19472 2002-04-24 Gerd Moellmann <gerd@gnu.org>
19473
19474 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
19475 case of writing a whole row, more or less analogous to the case of
19476 writing only parts of a row.
19477
19478 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
19479 0 for NO_CURSOR.
19480
19481 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
19482
19483 2002-04-23 Colin Walters <walters@verbum.org>
19484
19485 * buffer.c (syms_of_buffer): Doc fix.
19486
19487 2002-04-23 Gerd Moellmann <gerd@gnu.org>
19488
19489 * xterm.c (notice_overwritten_cursor): Handle the special case
19490 of the cursor being in the first blank non-text line at the
19491 end of a window.
19492
19493 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
19494 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
19495 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
19496 bar cursors only, to make phys_cursor_width contain what its name
19497 suggests.
19498 (notice_overwritten_cursor): Consider the cursor image erased if
19499 the output area intersects the cursor image in y-direction.
19500
19501 2002-04-23 Simon Marshall <simon@gnu.org>
19502
19503 * xfns.c (x_set_mouse_color): Change default for cross_cursor
19504 to XC_hand2.
19505
19506 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19507
19508 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
19509
19510 2002-04-22 Kim F. Storm <storm@cua.dk>
19511
19512 * textprop.c (remove_properties): Fixed trap for malformed plist.
19513
19514 2002-04-22 Richard M. Stallman <rms@gnu.org>
19515
19516 * cmds.c (Fend_of_line): Handle intangible text in mid line.
19517
19518 * window.c (make_window): Initialize height_fixed_p,
19519 last_cursor_off_p, and p->cursor_off_p slots.
19520
19521 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19522
19523 * fns.c (use-dialog-box): Doc fix.
19524
19525 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19526
19527 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
19528 variables `row', `i' and `area'.
19529 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
19530 toolkit library.
19531
19532 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
19533
19534 * xfaces.c (clear_font_table): Don't free the default font of
19535 a frame even if it's on another display.
19536 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
19537 that could be Qt.
19538
19539 2002-04-19 Juanma Barranquero <lektu@terra.es>
19540
19541 * indent.c (Fmove_to_column): Remove unused local variable
19542 `next_boundary_byte'.
19543 (current_column_1): Likewise.
19544
19545 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
19546
19547 * msdos.c (Qhbar): New variable.
19548 (syms_of_msdos): Intern and staticpro it.
19549 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
19550 cursor type.
19551
19552 2002-04-19 Dave Lambert <dlambert@acm.org>
19553
19554 Theses change implement an underscore-like (`hbar') cursor.
19555
19556 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19557
19558 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
19559 Handle the `hbar' cursor type.
19560 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19561
19562 * xfns.c (Qhbar): New variable.
19563 (syms_of_xfns): Intern and staticpro it.
19564 (x_specified_cursor_type): Handle `hbar' cursor.
19565
19566 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
19567 not defined.
19568
19569 2002-04-18 Richard M. Stallman <rms@gnu.org>
19570
19571 * textprop.c (remove_properties): New arg LIST allows scanning
19572 either a list or a plist.
19573 (interval_has_some_properties_list): New function, like
19574 interval_has_some_properties using list instead of plist.
19575 All callers changed.
19576 (Fremove_list_of_text_properties): New function.
19577 (syms_of_textprop): Defsubr it.
19578
19579 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
19580
19581 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
19582
19583 2002-04-17 Juanma Barranquero <lektu@terra.es>
19584
19585 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
19586
19587 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
19588
19589 * window.c (coordinates_in_window): Don't report on margin area
19590 if its width is zero.
19591
19592 2002-04-16 Jason Rumney <jasonr@gnu.org>
19593
19594 * w32fns.c (Fx_file_dialog): Decode file name before using.
19595
19596 * w32term.c (construct_drag_n_drop): Likewise.
19597
19598 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
19599
19600 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
19601 store load-history in pure space.
19602
19603 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
19604
19605 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
19606
19607 * xterm.c (Qlatin_1, Qutf_8): New vars.
19608 (syms_of_xterm): Initialize them.
19609 (XTread_socket): Eliminate incorrect optimization that tried to avoid
19610 decoding the output of X*LookupString.
19611 Always use latin-1 to decode the output of XLookupString.
19612 Try Xutf8LookupString if XmbLookupString failed.
19613
19614 * region-cache.c (new_region_cache): Use BEG.
19615
19616 2002-04-16 Gerd Moellmann <gerd@gnu.org>
19617
19618 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
19619 configuration files.
19620 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
19621 returns 0.
19622
19623 2002-04-15 Andreas Schwab <schwab@suse.de>
19624
19625 * config.in: Regenerated using autoheader.
19626
19627 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
19628 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
19629 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
19630 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
19631 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
19632 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
19633 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
19634 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
19635 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
19636 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
19637 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
19638 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
19639 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
19640 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
19641 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
19642 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
19643 STACK_DIRECTION, now set by autoconf.
19644
19645 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19646
19647 * dispnew.c (marginal_area_string): Sort arguments.
19648
19649 * dispextern.h (marginal_area_string): Add prototype.
19650
19651 2002-04-13 Richard M. Stallman <rms@gnu.org>
19652
19653 * fileio.c (Finsert_file_contents):
19654 Don't call temp_output_buffer_setup--do just part, by hand.
19655
19656 * coding.c (run_pre_post_conversion_on_str):
19657 Don't call temp_output_buffer_setup--do just part, by hand.
19658
19659 * keyboard.c (command_loop_1): Don't call start_hourglass
19660 or cancel_hourglass when executing a macro.
19661
19662 * marker.c (count_markers): New function.
19663
19664 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
19665 grow without limit. Move recently used elements to the front.
19666
19667 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
19668
19669 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
19670
19671 2002-04-12 Gerd Moellmann <gerd@gnu.org>
19672
19673 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
19674 rows marginal areas.
19675 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
19676 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
19677
19678 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
19679
19680 2002-04-12 Dave Love <fx@gnu.org>
19681
19682 * dispnew.c (marginal_area_string): New.
19683
19684 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
19685 (Qleft_margin, Qright_margin): Declare.
19686 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
19687
19688 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
19689 note_mode_line_highlight and extended.
19690
19691 * keyboard.c (Qleft_margin, Qright_margin): Declare.
19692 (make_lispy_event): Deal with mouse events in margins.
19693
19694 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
19695
19696 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
19697
19698 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
19699 than deactivating the mark if tmm is set to `lambda'.
19700 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
19701 Use a single event for HELP_EVENT.
19702 (Fexecute_extended_command): Save last_point_position.
19703
19704 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19705
19706 * lisp.h (Fpropertize): Add prototype.
19707
19708 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
19709
19710 2002-04-10 Colin Walters <walters@verbum.org>
19711
19712 * config.in: Add HAVE_SHARED_GAME_DIR.
19713
19714 * callproc.c (Vgame_score_directory): New variable.
19715 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
19716
19717 2002-04-10 Richard M. Stallman <rms@gnu.org>
19718
19719 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
19720
19721 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
19722
19723 * minibuf.c (read_minibuf): Use empty_string.
19724 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
19725 Short-circuit the search as soon as it "failed".
19726 (Fall_completions): Allow lambda forms and lists of strings for alist.
19727 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
19728 when require_match is nil.
19729 (Ftest_completion): Rename from `test_completion' and export to elisp.
19730 Call the predicate also when alist is a list.
19731 Obey Vcompletion_regexp_list.
19732 (do_completion, Fminibuffer_complete_and_exit): Use it.
19733 (Fassoc_string): Rename from `assoc_for_completion'.
19734 Allow list of strings as well and export to elisp.
19735
19736 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
19737
19738 * puresize.h (BASE_PURESIZE): Increase to 900KB.
19739
19740 2002-04-08 Juanma Barranquero <lektu@terra.es>
19741
19742 * w32.c (sys_accept): Don't hide variable `s'.
19743
19744 2002-04-05 Gerd Moellmann <gerd@gnu.org>
19745
19746 * callint.c (Fcall_interactively): Use INTEGERP instead of
19747 NUMBERP for checking Vhistory_length.
19748
19749 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19750
19751 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
19752 Doc fix to reflect it.
19753
19754 2002-04-04 Richard M. Stallman <rms@gnu.org>
19755
19756 * xdisp.c (display_mode_element): New arg RISKY.
19757 Disregard text props found or specified within a variable
19758 that isn't marked risky-local-variable.
19759 (Qrisky_local_variable): New variable.
19760 (syms_of_xdisp): Init and staticpro it.
19761
19762 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
19763
19764 * undo.c (record_point): New fun.
19765 (record_delete, record_insert): Use it.
19766
19767 2002-04-03 Juanma Barranquero <lektu@terra.es>
19768
19769 * doc.c (Fdocumentation): Add missing parentheses.
19770 (Fdocumentation_property): Likewise.
19771
19772 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
19773
19774 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
19775 data is 0, just return nil.
19776
19777 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
19778
19779 * msdos.c (syms_of_msdos): Fix last change with
19780 mouse_autoselect_window.
19781
19782 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19783
19784 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
19785 mouse_autoselect_window.
19786
19787 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
19788
19789 * keyboard.c (make_lispy_event): Handle unknown keysyms together
19790 with system-specific keysyms. Use it also for unknown function keys.
19791
19792 * doc.c (reread_doc_file): Return whether reload was attempted.
19793 (Fdocumentation, Fdocumentation_property): Don't try to reload
19794 if the doc is 0 and only ask once.
19795
19796 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
19797
19798 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
19799
19800 * keyboard.c (read_char): If the event was Qselect_window,
19801 restore timer_idleness_start_time to its previous value.
19802
19803 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
19804
19805 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
19806
19807 * region-cache.c (new_region_cache): Use BEG.
19808
19809 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
19810 Use BEG and BEG_BYTE.
19811
19812 * doc.c (get_doc_string): Return nil if the location is wrong.
19813 (reread_doc_file): New fun.
19814 (Fdocumentation, Fdocumentation_property):
19815 Call it if get_doc_string fails.
19816 (Fsnarf_documentation): Make it work for a dumped Emacs.
19817
19818 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
19819 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
19820
19821 * charset.c (Fstring): Allow 0 arguments.
19822
19823 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
19824
19825 * process.c (DATAGRAM_CONN_P, list_processes_1)
19826 (Fprocess_datagram_address, Fset_process_datagram_address)
19827 (Fset_network_process_options, server_accept_connection):
19828 Fix some int/Lisp_Object confusions (thank you union types).
19829
19830 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19831
19832 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
19833
19834 * w32term.c: Likewise.
19835 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
19836
19837 * keyboard.c (Qselect_window): New symbol.
19838 (head_table): Use it.
19839 (keys_of_keyboard): Bound select-window event to handle-select-window.
19840 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
19841
19842 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
19843 (last_window): New variable.
19844 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
19845 (note_mouse_movement): Remove reimplemented code in #if 0.
19846 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
19847 Emacs windows.
19848
19849 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
19850
19851 2002-03-31 Gerd Moellmann <gerd@gnu.org>
19852
19853 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
19854 Callers changed.
19855
19856 2002-03-30 Richard M. Stallman <rms@gnu.org>
19857
19858 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
19859 loop whenever it stops making progress.
19860
19861 * widget.c (set_frame_size): Don't call change_frame_size.
19862
19863 2002-03-30 Gerd Moellmann <gerd@gnu.org>
19864
19865 * dispnew.c (direct_output_for_insert):
19866 Call mark_window_display_accurate.
19867
19868 2002-03-29 Jason Rumney <jasonr@gnu.org>
19869
19870 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
19871
19872 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
19873
19874 * Makefile.in (lread.o): Depend on coding.h.
19875
19876 * lread.c (openp, Fload): Encode the file name before passing it
19877 to `stat', `access', and `emacs_open'.
19878 (openp): GCPRO the encoded file name. Don't recompute Lisp
19879 strings unnecessarily.
19880
19881 2002-03-29 Kim F. Storm <storm@cua.dk>
19882
19883 * fns.c (Flax_plist_put): Doc fix.
19884
19885 2002-03-28 Miles Bader <miles@gnu.org>
19886
19887 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
19888
19889 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19890
19891 * process.c (set-network-process-options): Add usage.
19892 (make-network-process): Doc fix.
19893
19894 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
19895
19896 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
19897
19898 2002-03-26 Richard M. Stallman <rms@gnu.org>
19899
19900 * fns.c (Fsubstring_no_properties): New function.
19901 (Flax_plist_get, Flax_plist_put): New functions.
19902 (syms_of_fns): defsubr them.
19903
19904 * xdisp.c (update_menu_bar): Test only update_mode_lines;
19905 don't test or alter w->update_mode_line.
19906
19907 * window.c (Fdisplay_buffer): Doc fix.
19908
19909 2002-03-24 Richard M. Stallman <rms@gnu.org>
19910
19911 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
19912
19913 2002-03-24 Gerd Moellmann <gerd@gnu.org>
19914
19915 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
19916 (Fdefmacro): Handle `(declare ...)'.
19917 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
19918 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
19919
19920 2002-03-24 Jason Rumney <jasonr@gnu.org>
19921
19922 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
19923 (xbm_file_p): Add prototypes.
19924 (xbm_format, xbm_image_p): Sync with xfns.c.
19925 (reflect_byte): New function.
19926 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
19927 (xbm_load_image): Create bitmaps with a depth of 1.
19928 (init_xfns): Enable XBM images.
19929
19930 2002-03-23 Jason Rumney <jasonr@gnu.org>
19931
19932 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
19933 correctly. Do not pass up_modifier to keyboard buffer.
19934
19935 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
19936
19937 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
19938
19939 * Makefile.in (bootstrapclean): New target.
19940 (bootstrap-temacs, bootstrap-doc): Remove.
19941 (bootstrap-emacs): Use a bog-standard `temacs'.
19942 Don't bother to build a DOC file.
19943
19944 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
19945
19946 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
19947 in temacs even if !CANNOT_DUMP.
19948 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
19949
19950 * alloc.c (check_pure_size): Only output a warning.
19951
19952 2002-03-22 Jason Rumney <jasonr@gnu.org>
19953
19954 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
19955 supported.
19956
19957 * w32term.c (zv_bits): Declare as short, for word alignment.
19958 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
19959 (syms_of_w32term): Define x-use-underline-position-properties.
19960
19961 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
19962 (clear_image_cache): Block input, fix logic, clear matrices in
19963 all frames that share this cache.
19964
19965 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
19966
19967 * emacs.c (main): Update the Copyright year in the blurb printed
19968 by "emacs --version".
19969
19970 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
19971
19972 * xterm.c (XTread_socket): If XK_ISO_Lock and
19973 XK_ISO_Last_Group_Lock are defined, handle keysyms between
19974 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
19975
19976 2002-03-21 Kim F. Storm <storm@cua.dk>
19977
19978 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
19979 menu-bar bindings in keymap and local-map properties _are_ used.
19980 But try keymap property first in accordance with 2002-01-03 patch.
19981 Added comment describing why this is not always reliable.
19982 (tool_bar_items): Ditto for tool-bar.
19983
19984 2002-03-21 Jason Rumney <jasonr@gnu.org>
19985
19986 * w32fns.c (x_clear_image_1): Disable color table code.
19987
19988 2002-03-21 Kim F. Storm <storm@cua.dk>
19989
19990 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
19991 removed the wrong version of the DEFUN macro; fixed it.
19992
19993 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
19994 Fmember rather than Fmemq).
19995 (Fprovide): Check that subfeatures is a list.
19996
19997 * process.c (QCfeature, QCdatagram): Removed variables.
19998 (QCtype, Qdatagram): New variables.
19999 (network_process_featurep): Removed function.
20000 (Fmake_network_process): Removed :feature check.
20001 Use :type 'datagram instead of :datagram t to create a datagram
20002 socket. This allows us to add other connection types (e.g. raw
20003 sockets) later in a consistent manner.
20004 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
20005 supported subfeatures for feature make-network-process.
20006 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
20007 Intern and staticpro QCtype and Qdatagram.
20008 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
20009
20010 * xfns.c (QCtype): Remove duplicate declaration and
20011 initialization (is now declared in process.c).
20012
20013 * w32fns.c (QCtype): Remove duplicate declaration and
20014 initialization (is now declared in process.c).
20015
20016 2002-03-21 Richard M. Stallman <rms@gnu.org>
20017
20018 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
20019 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
20020 when jumping to `fail' to avoid undoing reg changes in the
20021 last iteration of the loop.
20022 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
20023
20024 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
20025 Depend on process.h.
20026
20027 2002-03-20 Jason Rumney <jasonr@gnu.org>
20028
20029 Most of the following changes are still conditional on HAVE_IMAGES
20030 which is not set by default on Windows.
20031
20032 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
20033
20034 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
20035 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
20036 (four_corners_best, x_clear_image_1, x_clear_image)
20037 (x_alloc_image_color, postprocess_image)
20038 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
20039 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
20040 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
20041
20042 * w32gui.h (struct XImage): Define.
20043
20044 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
20045 extract mouse co-ordinates.
20046
20047 2002-03-20 Jason Rumney <jasonr@gnu.org>
20048
20049 * w32.c (init_winsock): Dynamically load new server and UDP
20050 socket functions.
20051 (socket_to_fd): New function.
20052 (sys_socket): Use it.
20053 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
20054 (sys_recvfrom, sys_sendto): New wrapper functions.
20055
20056 * process.c (QCfamily, QCfilter): Remove duplicate declaration
20057 and initialization.
20058
20059 * makefile.w32-in (LIBS): Remove $(WSOCK32).
20060
20061 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
20062
20063 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
20064 Don't use "sun" as a variable, it's a predefined constant on Sun
20065 machines.
20066
20067 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20068
20069 * bytecode.c (Fbyte_code): Revert last change.
20070
20071 2002-03-19 Kim F. Storm <storm@cua.dk>
20072
20073 * makefile.w32-in (LIBS): Add $(WSOCK32).
20074 From David Ponce <dponce@voila.fr>.
20075
20076 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20077
20078 * process.c (wait_reading_process_input): Move variables `pname'
20079 and `pnamelen' down where they are used.
20080
20081 * bytecode.c (Fbyte_code): Discard unused computed value to
20082 prevent gcc warning.
20083
20084 * lisp.h (Fplist_member): Add prototype.
20085
20086 2002-03-18 Kim F. Storm <storm@cua.dk>
20087
20088 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
20089 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
20090
20091 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
20092 Remove explicit GNU_LINUX settings for datagram support.
20093
20094 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20095
20096 * process.c (Fmake_network_process): Remove unused variable `sa'.
20097 Doc fix. Add usage:.
20098 (set_socket_options): Remove unused variables `optnum' and `opttype'.
20099
20100 2002-03-17 Richard M. Stallman <rms@gnu.org>
20101
20102 * xdisp.c (cursor_type_changed): New variable.
20103 (redisplay_internal): Redisplay all windows if cursor_type_changed.
20104 Clear it when clearing windows_or_buffers_changed.
20105 (try_cursor_movement, redisplay_window, try_window_id)
20106 (try_window_reusing_current_matrix): Test cursor_type_changed
20107 along with windows_or_buffers_changed.
20108
20109 * window.h (cursor_type_changed): New variable.
20110
20111 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
20112 not update_mode_lines, and always set it to 1.
20113
20114 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
20115 if no frames needed redrawing.
20116
20117 2002-03-17 Kim F. Storm <storm@cua.dk>
20118
20119 The following changes add support for network server processes,
20120 datagram connections, and local (unix) sockets.
20121
20122 * process.h (struct Lisp_Process): New member log.
20123 Doc fix: Member command used to indicate stopped network process.
20124 Doc fix: Member childp contains plist for network process.
20125 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
20126
20127 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
20128 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
20129 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
20130 New variables.
20131 (NETCONN1_P): New macro.
20132 (DATAGRAM_SOCKETS): New conditional symbol.
20133 (datagram_address): New array.
20134 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
20135 (status_message): Use concat3.
20136 (Fprocess_status): Add `listen' status to doc string. Return `stop'
20137 for a stopped network process.
20138 (Fset_process_buffer): Update contact plist for network process.
20139 (Fset_process_filter): Ditto. Don't enable input for stopped
20140 network processes. Server must listen, even if filter is t.
20141 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
20142 New functions.
20143 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
20144 (Fprocess_contact): Added KEY argument. Handle datagrams.
20145 (list_processes_1): Optionally show only processes with the query
20146 on exit flag set. Dynamically adjust column widths. Omit tty
20147 column if not needed. Report stopped network processes.
20148 Identify server and datagram network processes.
20149 (Flist_processes): New optional arg `query-only'.
20150 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
20151 (conv_lisp_to_sockaddr, set_socket_options)
20152 (network_process_featurep, unwind_request_sigio): New helper functions.
20153 (Fprocess_datagram_address, Fset_process_datagram_address):
20154 (Fset_network_process_options): New lisp functions.
20155 (Fopen_network_stream): Removed. Now defined in simple.el.
20156 (Fmake_network_process): New lisp function. Code is based on previous
20157 Fopen_network_stream, but heavily reworked with new property list based
20158 argument list, support for datagrams, server processes, and local
20159 sockets in addition to old client-only functionality.
20160 (server_accept_connection): New function.
20161 (wait_reading_process_input): Use it to handle incoming connects.
20162 Do not enable input on a new connection if process is stopped.
20163 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
20164 (send_process): Handle datagram sockets.
20165 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
20166 network process is indicated by setting command field to t .
20167 (Fprocess_send_eof): No-op if datagram connection.
20168 (Fstatus_notify): Don't read input for a stream server socket or a
20169 stopped network process.
20170 (init_process): Initialize datagram_address array.
20171 (syms_of_process): Intern and staticpro new variables, defsubr new
20172 functions.
20173
20174 2002-03-16 Jason Rumney <jasonr@gnu.org>
20175
20176 * w32fns.c (w32_to_all_x_charsets): Return correct type in
20177 startup case.
20178
20179 2002-03-16 Richard M. Stallman <rms@gnu.org>
20180
20181 * xdisp.c (redisplay_internal, redisplay_windows):
20182 Use list_of_error to call internal_condition_case_1.
20183 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
20184 so as to catch all errors with no possibility of debugger redisplay.
20185 (list_of_error): New variable.
20186 (syms_of_xdisp): Init and staticpro it.
20187
20188 * print.c (print_object): Delete `\ ' from printed rep of frame.
20189
20190 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
20191
20192 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
20193 until its implementation is fixed.
20194
20195 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20196
20197 * xfns.c (png_load): Remove unused variable `gamma_str'.
20198
20199 2002-03-14 Richard M. Stallman <rms@gnu.org>
20200
20201 * xfns.c (x_real_positions): Handle failure in XQueryTree.
20202
20203 2002-03-14 Miles Bader <miles@gnu.org>
20204
20205 * intervals.c (adjust_for_invis_intang): New function.
20206 (set_point_both): Use `adjust_for_invis_intang' to do most of the
20207 work for dealing with invisible+intangible regions. Do so before
20208 and after both forward and backward movements, to handle both
20209 front-sticky and rear-sticky cases.
20210 * textprop.c (text_property_stickiness): Function moved here from
20211 `editfns.c'.
20212 * intervals.h (text_property_stickiness): New declaration.
20213 * editfns.c (char_property_eq): Function removed.
20214 (text_property_stickiness): Function moved to `textprop.c'.
20215
20216 2002-03-13 Jason Rumney <jasonr@gnu.org>
20217
20218 * config.in: Add STRFTIME_NO_POSIX2.
20219
20220 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
20221 and %OX when underlying strftime does not.
20222
20223 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
20224
20225 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
20226 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
20227 line) to avoid annoying flicker.
20228 (xm_scroll_callback): Get rid of the now unnecessary kludge.
20229 (XTread_socket): Mark it static.
20230
20231 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
20232
20233 2002-03-13 Kim F. Storm <storm@cua.dk>
20234
20235 * puresize.h (BASE_PURESIZE): Increase to 775000.
20236
20237 2002-03-12 Juanma Barranquero <lektu@terra.es>
20238
20239 * editfns.c (syms_of_editfns): Fix typo.
20240
20241 2002-03-12 Gerd Moellmann <gerd@gnu.org>
20242
20243 * xsmfns.c: Include stdio.h because termhooks.h needs it.
20244 Include termopt.h for interrupt_input.
20245
20246 2002-03-11 Andreas Schwab <schwab@suse.de>
20247
20248 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
20249
20250 2002-03-11 Gerd Moellmann <gerd@gnu.org>
20251
20252 * xterm.c (note_mouse_movement): Put code for
20253 x_autoselect_window_p in #if 0.
20254
20255 * lread.c (Fload): Don't assume that message_with_string uses the
20256 string it is given like a C string.
20257
20258 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20259
20260 * xterm.h (x_session_check_input, x_session_initialize): Declare.
20261
20262 * xterm.c (XTread_socket): Add call to x_session_check_input and
20263 x_session_have_connection.
20264 (x_initialize): Add call to x_session_initialize.
20265
20266 * termhooks.h (enum event_kind): Add save_session_event.
20267
20268 * keyboard.c: Add Emacs event save_session_event.
20269
20270 * emacs.c (main): Add call to syms_of_xsmfns.
20271
20272 * lisp.h (syms_of_xsmfns): Declare extern.
20273
20274 * config.in: Add HAVE_X_SM.
20275
20276 * Makefile.in (LIBXT): Add -lSM -lICE
20277 if HAVE_X_SM and not USE_X_TOOLKIT.
20278 (XOBJ): New file xsmfns.c added.
20279
20280 * xsmfns.c: New file for X session management.
20281
20282 2002-03-09 Jason Rumney <jasonr@gnu.org>
20283
20284 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
20285 read-only when setting modified time.
20286
20287 2002-03-08 Gerd Moellmann <gerd@gnu.org>
20288
20289 * xdisp.c (move_it_vertically_backward): At the end of the function,
20290 when moving forward by lines, treat terminal frames specially.
20291
20292 * keyboard.c (echo_char): Make sure to add a separator between
20293 keys even if echo_dash hasn't been called.
20294
20295 * xdisp.c: Use new string macros.
20296 (update_echo_area): Pass number of bytes to message3 instead of
20297 number of chars.
20298 (set_message_1): Don't access a string's size_byte directly.
20299 (decode_mode_spec_coding): Use number of bytes of eoltype string
20300 instead number of chars.
20301
20302 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
20303
20304 2002-03-08 Juanma Barranquero <lektu@terra.es>
20305
20306 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
20307 24-bit.
20308
20309 2002-03-06 Jason Rumney <jasonr@gnu.org>
20310
20311 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
20312
20313 2002-03-06 Gerd Moellmann <gerd@gnu.org>
20314
20315 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
20316 (cancel_echoing, echo_length, echo_truncate): Changed to
20317 work with new kboard definition.
20318 (echo_now): Use message3_nolog instead of message2_nolog.
20319
20320 * alloc.c (mark_kboards): Mark echo_string.
20321
20322 * keyboard.h (ECHOBUFSIZE): Removed.
20323 (struct kboard): Member echoptr removed, member echobuf renamed
20324 to echo_string.
20325
20326 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
20327 message3 instead of message2 to display the message using STRING's
20328 text properties.
20329
20330 2002-03-05 Andreas Schwab <schwab@suse.de>
20331
20332 * xdisp.c (hscroll_margin): Change to EMACS_INT.
20333
20334 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
20335
20336 * frame.c (default-frame-alist): Explain that setting it doesn't
20337 affect existing frames.
20338
20339 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
20340
20341 * indent.c (skip_invisible): Fix my brain fart.
20342
20343 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
20344
20345 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
20346
20347 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
20348 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
20349 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
20350 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
20351 and variables to use EMACS_INT instead of just int.
20352
20353 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
20354
20355 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
20356
20357 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
20358 environment, pass it down with corrected value.
20359
20360 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20361
20362 * lread.c (read_filtered_event): Do not call start_hourglass
20363 before returning.
20364
20365 2002-03-04 Juanma Barranquero <lektu@terra.es>
20366
20367 * w32term.c (x_display_and_set_cursor): Fix typo.
20368
20369 2002-03-03 Richard M. Stallman <rms@gnu.org>
20370
20371 * fileio.c (Fmake_temp_name): Doc fix.
20372
20373 2002-03-03 Gary Wong <gtw@gnu.org>
20374
20375 * termcap.c [!emacs]: Replace ospeed for building standalone
20376 libtermcap, for binary compatibility.
20377
20378 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
20379
20380 2002-03-03 Richard M. Stallman <rms@gnu.org>
20381
20382 * xrdb.c (file_p): Rename arg `path' to `filename'.
20383
20384 * abbrev.c (Fexpand_abbrev): Increment plist as use count
20385 only if it is an integer.
20386
20387 * xfns.c (png_load): Set screen_gamma based on f->gamma.
20388 If png_get_sRGB gives an answer, call png_set_gamma
20389 using the default image gamma value.
20390
20391 * lread.c (read1): When reading from a file, default string to
20392 multibyte only if it has some multibyte characters.
20393
20394 * print.c (print_object): Output multibyte chars 128...255
20395 using \x even if ! print_escape_multibyte.
20396
20397 * xdisp.c (display_mode_element): Move the places where
20398 bytepos, charpos, this, and lisp_string are set.
20399 Use lisp_string to set bytepos.
20400
20401 * xdisp.c (redisplay_internal):
20402 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
20403
20404 * xdisp.c (display_mode_element): Merge properties specified with
20405 :propertize onto those that come with the string.
20406
20407 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
20408
20409 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
20410 automatic-hscrolling. Users changed.
20411 <hscroll-margin>: Renamed from automatic-hscroll-margin.
20412 Users changed.
20413 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
20414
20415 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
20416
20417 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
20418
20419 2002-03-02 Kim F. Storm <storm@cua.dk>
20420
20421 * window.c (Fminibuffer_selected_window): New function.
20422 (syms_of_window): Defsubr it.
20423
20424 2002-03-01 Kim F. Storm <storm@cua.dk>
20425
20426 * window.h (struct window): New member phys_cursor_width.
20427
20428 * window.c (make_window, replace_window): Init phys_cursor_width.
20429
20430 * xterm.c (x_display_and_set_cursor): Blink box cursor using
20431 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20432
20433 * w32term.c (x_display_and_set_cursor): Blink box cursor using
20434 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20435
20436 * lisp.h (GCPRO6): New macro.
20437
20438 * process.c (Fopen_network_stream): Use GCPRO6.
20439
20440 2002-03-01 Kim F. Storm <storm@cua.dk>
20441
20442 * process.c (Qconnect, Qfailed): New variables.
20443 (syms_of_process): Intern and staticpro them.
20444 (Fprocess_status): Document connect and failed return values.
20445 [NON_BLOCKING_CONNECT]: New conditional.
20446 (connect_wait_mask, num_pending_connects): New variables.
20447 (status_message): Convert Qfailed status.
20448 (Fopen_network_stream): Added support for non-blocking connect.
20449 New optional args: filter, sentinel, non_blocking. Doc updated.
20450 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
20451 (deactivate_process): Handle pending non-blocking connect.
20452 (wait_reading_process_input): Poll for status of non-blocking
20453 connects. Exec sentinel directly when connect succeeds.
20454 (status_notify): Don't read process output if not yet connected.
20455
20456 2002-02-28 Kim F. Storm <storm@cua.dk>
20457
20458 * window.c (minibuf_selected_window): Renamed from
20459 Vminibuf_selected_window. Users changed.
20460 (syms_of_window): Staticpro it.
20461
20462 2002-02-26 Kim F. Storm <storm@cua.dk>
20463
20464 The following changes add a new Vminibuf_selected_window variable
20465 which is similar to Vminibuf_scroll_window, but which is only set
20466 on entry to the minibuffer (from a non-minibuffer window):
20467
20468 * window.c (Vminibuf_selected_window): New variable.
20469 (struct save_window_data): New member minibuf_selected_window.
20470 (Fset_window_configuration): Restore Vminibuf_selected_window.
20471 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
20472 Set minibuf_scroll_window member to nil if minibuf_level is 0.
20473 (compare_window_configurations): Compare minibuf_selected_window.
20474
20475 * window.h (Vminibuf_selected_window): Declare extern.
20476
20477 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
20478 entry to minibuffer or on entry from a non-minibuffer window.
20479
20480 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
20481 Vminibuf_selected_window instead of Vminibuf_scroll_window.
20482
20483 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
20484 instead of Vminibuf_scroll_window when deciding in which window
20485 the region should be highlighted. Consequently, the region remains
20486 highlighteded even when a completion buffer is also displayed.
20487
20488 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
20489
20490 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
20491
20492 * xselect.c (Qcompound_text_with_extensions): Renamed from
20493 Qcompound_text_no_extensions.
20494 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
20495
20496 2002-02-26 Juanma Barranquero <lektu@terra.es>
20497
20498 * w32proc.c (syms_of_ntproc): Doc fix.
20499
20500 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20501
20502 * intervals.h: Include "dispextern.h" unconditionally.
20503
20504 2002-02-24 Jason Rumney <jasonr@gnu.org>
20505
20506 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
20507 and disp-table.elc.
20508 (lisp): Add emacs-lisp/backquote.elc.
20509
20510 2002-02-24 Kim F. Storm <storm@cua.dk>
20511
20512 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
20513 The validation of the event type was too strict as it didn't
20514 allow string events; buffer names are used in bindings for
20515 menu-bar-select-buffer (see `menu-bar-update-buffers').
20516
20517 2002-02-23 Kim F. Storm <storm@cua.dk>
20518
20519 The following changes rework my patch of 2002-02-06 which
20520 added command remapping by entering the commands directly into
20521 the keymaps. Now, command remapping uses an explicit `remap'
20522 prefix in the keymaps, i.e. [remap COMMAND].
20523
20524 * keymap.c (Qremap, remap_command_vector): New variables.
20525 (is_command_symbol): Remove function.
20526 (Fdefine_key): No longer accept a symbol for KEY.
20527 Added validation of [remap COMMAND] argument for KEY.
20528 The DEF is no longer required to be a symbol when remapping a command.
20529 (Fremap_command): New function to remap command through keymaps.
20530 (Flookup_key): Perform command remapping initiated by
20531 Fremap_command directly for speed.
20532 (Fkey_binding): Use Fremap_command for command remapping.
20533 (where_is_internal): Handle new command remapping representation.
20534 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
20535 staticpro them. Defsubr Fremap_command.
20536
20537 * keymap.h (Fremap_command): Declare extern.
20538 (is_command_symbol): Remove extern.
20539
20540 * keyboard.c (command_loop_1): Use Fremap_command for command
20541 remapping; now try command remapping for all symbols.
20542
20543 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
20544
20545 * coding.h (run_pre_post_conversion_on_str): Add prototype.
20546
20547 2002-02-23 Jason Rumney <jasonr@gnu.org>
20548
20549 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
20550 on the string before encoding it.
20551 (Fw32_get_clipboard_data): Run post-read-conversion on the string
20552 after decoding it.
20553
20554 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
20555
20556 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20557
20558 * w32term.c (enter_timestamp): Remove unused static variable to
20559 prevent warning.
20560
20561 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
20562
20563 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
20564
20565 * w16select.c (Fw16_get_clipboard_data): Fix last change.
20566
20567 * xselect.c (selection_data_to_lisp_data): Fix last change.
20568
20569 2002-02-22 Jason Rumney <jasonr@gnu.org>
20570
20571 * w32term.h (struct w32_output): New member menu_command_in_progress.
20572
20573 * w32menu.c (menubar_selection_callback): Free the menu and
20574 clear the menu_command_in_progress flag.
20575
20576 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
20577 (menu_free_timer): New variable.
20578 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
20579 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
20580 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
20581 menu command is in progress.
20582 <WM_COMMAND>: Set the menu_command_in_progress flag.
20583 Kill any menu_free_timer that is running.
20584
20585 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
20586 Call ExtTextOutA rather than ExtTextOut.
20587
20588 2002-02-22 Eli Zaretskii <eliz@gnu.org>
20589
20590 * puresize.h (BASE_PURESIZE): Increase to 755000.
20591
20592 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
20593
20594 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
20595 on the string before encoding it.
20596 (Fw16_get_clipboard_data): Run post-read-conversion on the string
20597 after decoding it.
20598
20599 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
20600
20601 Support for ICCCM Extended Segments in X selections:
20602
20603 * xselect.c <Qcompound_text_no_extensions>: New variable.
20604 (syms_of_xselect): Intern and staticpro it.
20605 (selection_data_to_lisp_data): Run post-read-conversion on decoded
20606 selection text.
20607 (lisp_data_to_selection_data): If next-selection-coding-system is
20608 compound-text-no-extensions, set the type of selection to be
20609 compound-text.
20610
20611 * xterm.h (x_encode_text): Update prototype.
20612
20613 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
20614 callers changed. If SELECTIONP is non-zero, run the
20615 pre-write-conversion function before encoding the selection text.
20616
20617 2002-02-21 Kim F. Storm <storm@cua.dk>
20618
20619 * frame.c (syms_of_frame): Change mouse-highlight default to t.
20620
20621 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
20622 Correct composing of language-change event.
20623
20624 2002-02-20 Kim F. Storm <storm@cua.dk>
20625
20626 * keyboard.c (menu_bar_items): Don't include keymap or local-map
20627 bindings at PT when building menu (the menu is not updated often
20628 enough for this to work reliable).
20629 (tool_bar_items): Likewise.
20630 (current_active_maps): Removed unused (and buggy) function.
20631
20632 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20633
20634 * xfns.c (gif_load): Use correct width and height for GIF images.
20635
20636 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
20637
20638 * floatfns.c (Fatan): Accept an optional second arg and call
20639 atan2 if passed 2 args.
20640
20641 2002-02-18 Jason Rumney <jasonr@gnu.org>
20642
20643 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
20644
20645 2002-02-17 Jason Rumney <jasonr@gnu.org>
20646
20647 * w32term.c (x_autoselect_window_p): New variable.
20648 (syms_of_w32term): DEFVAR_BOOL and initialize it.
20649 (note_mouse_movement): Use it.
20650
20651 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
20652
20653 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
20654
20655 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
20656 New variables.
20657 (syms_of_w32fns): Intern and staticpro them.
20658 (x_frame_parms) <"fullscreen">: New parameter.
20659 (x_fullscreen_move, x_set_fullscreen): New functions.
20660 (x_set_frame_parameters): Support Qfullscreen.
20661 (x_real_positions): Save x/y_pixels_diff frame params.
20662 (x_figure_window_size): Support full-screen frames.
20663 (Fx_create_frame): Default the fullscreen parameter.
20664
20665 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
20666 (x_fullscreen_adjust): New functions.
20667 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
20668 fullscreen. Call x_check_fullscreen_move, and set the
20669 want_fullscreen member of output_data.w32
20670 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
20671
20672 * w32term.h: New enum for FULLSCREEN_* constants.
20673 (struct w32_output): New members want_fullscreen, x_pixels_diff,
20674 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
20675 (x-fullscreen-adjust): New prototype.
20676
20677 2002-02-17 Kim F. Storm <storm@cua.dk>
20678
20679 * frame.c (Vmouse_highlight): New variable.
20680 (syms_of_frame): DEFVAR_LISP it.
20681
20682 * frame.h (Vmouse_highlight): Declare extern.
20683
20684 * xterm.h (struct x_display_info): Add mouse_face_hidden.
20685
20686 * xterm.c (disable_mouse_highlight): Removed variable.
20687 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
20688 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20689 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
20690 and on after keyboard input.
20691 (x_term_init): Initialize mouse_face_hidden.
20692
20693 * msdos.h (struct display_info): Add mouse_face_hidden.
20694
20695 * msdos.c (disable_mouse_highlight): Removed variable.
20696 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20697 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
20698 (internal_terminal_init): Initialize mouse_face_hidden.
20699 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
20700 and on after keyboard input.
20701
20702 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
20703
20704 * w32term.c (disable_mouse_highlight): Removed variable.
20705 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
20706 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
20707 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
20708 and on after keyboard input.
20709 (w32_initialize_display_info): Initialize mouse_face_hidden.
20710
20711 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
20712
20713 * msdos.c (last_mouse_window): New variable.
20714 (dos_rawgetc): Fix last change--if the mouse is in the same window
20715 as recorded in last_mouse_window, don't select this window.
20716
20717 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
20718
20719 * msdos.c (x_autoselect_window_p): New variable.
20720 (syms_of_msdos): Defvar it.
20721 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
20722 which the last mouse movement occured, unless it is already selected.
20723
20724 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
20725 New variables.
20726 (syms_of_xdisp): DEVFAR them.
20727 (hscroll_window_tree): Use automatic_hscroll_margin and
20728 Vautomatic_hscroll_step to compute the amount of window scrolling.
20729
20730 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20731
20732 * xterm.c (x-autoselect-window): New variable.
20733 (note_mouse_movement): Use it.
20734
20735 * keyboard.c: Do not include "systime.h" twice.
20736
20737 2002-02-15 Andreas Schwab <schwab@suse.de>
20738
20739 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
20740
20741 * alloc.c (NSTATICS): Increase to 1280.
20742
20743 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
20744
20745 * alloc.c (NSTATICS): Bump to 1026.
20746
20747 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
20748 (Vx_super_keysym): New variables.
20749 (syms_of_xterm): DEFVAR_LISP them.
20750 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
20751 variables to determine which keys to use for the various modifiers.
20752
20753 2002-02-13 Kim F. Storm <storm@cua.dk>
20754
20755 * window.c (Vmode_line_in_non_selected_windows): Removed.
20756 (mode_line_in_non_selected_windows): New variable.
20757 (syms_of_window): DEFVAR_BOOL it.
20758
20759 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
20760 Use mode_line_in_non_selected_windows.
20761 (mode_line_in_non_selected_windows): Declare extern.
20762 (Vmode_line_in_non_selected_windows): Removed extern.
20763
20764 2002-02-13 Richard M. Stallman <rms@gnu.org>
20765
20766 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
20767 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
20768 (Fclear_this_command_keys): Doc fixes.
20769
20770 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
20771 (update_face_from_frame_parameter): Increment face_change_count
20772 and windows_or_buffers_changed to force redisplay using changed faces.
20773
20774 * xdisp.c (QCpropertize): New variable.
20775 (mode_line_proptrans_alist): New variable.
20776 (display_mode_element): New arg PROPS; all calls changed.
20777 Implement this, for strings.
20778 Handle literal output of strings by sharing the
20779 main-line code for strings, using local var `literal'.
20780 Handle :propertize feature.
20781 (syms_of_xdisp): Initialze and staticpro QCpropertize and
20782 mode_line_proptrans_alist.
20783
20784 2002-02-11 Kim F. Storm <storm@cua.dk>
20785
20786 * window.c (Vmode_line_in_non_selected_windows): New variable.
20787 (syms_of_window): DEFVAR_LISP it.
20788
20789 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
20790 (CURRENT_MODE_LINE_FACE_ID): Use it.
20791 (Vmode_line_in_non_selected_windows): Declare extern.
20792
20793 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
20794 to get mode line face.
20795
20796 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
20797
20798 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
20799 variables; cus-start.el doesn't need them anymore.
20800
20801 2002-02-09 Kim F. Storm <storm@cua.dk>
20802
20803 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
20804 reduction. This fixes a display problem where stray newlines were
20805 inserted in the window (corrected by C-l). Clarified code (IMHO).
20806
20807 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
20808
20809 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
20810
20811 * xdisp.c (display_mode_lines): Fix last change.
20812
20813 2002-02-09 Jason Rumney <jasonr@gnu.org>
20814
20815 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
20816 match each other.
20817 (w32_load_system_font): Prevent Cleartype fonts from loading.
20818 (Fx_show_tip): Ensure tip frames are above other topmost windows.
20819
20820 2002-02-09 Kim F. Storm <storm@cua.dk>
20821
20822 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
20823 (CURRENT_MODE_LINE_HEIGHT): Use it.
20824 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
20825
20826 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
20827 (pos_visible_p, handle_face_prop): Likewise.
20828 (display_mode_lines): Likewise, but for the real selected window.
20829 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
20830
20831 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
20832 in non-selected windows.
20833 (realize_basic_faces): Realize it.
20834 (syms_of_term): Intern and staticpro it.
20835
20836 2002-02-08 Kim F. Storm <storm@cua.dk>
20837
20838 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
20839 Changed mail addresses to emacs-devel@gnu.org.
20840
20841 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
20842
20843 * fileio.c (Fsubstitute_in_file_name): If the file name includes
20844 ~user, and there's no such user, don't discard everything before ~user.
20845
20846 * floatfns.c (Fround): Doc fix.
20847
20848 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20849
20850 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
20851
20852 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
20853
20854 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
20855
20856 2002-02-07 Kim F. Storm <storm@cua.dk>
20857
20858 * keymap.c (where_is_internal): Only check whether definition is
20859 remapped if it fulfills is_command_symbol.
20860
20861 2002-02-07 Andreas Schwab <schwab@suse.de>
20862
20863 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
20864
20865 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
20866
20867 2002-02-06 Kim F. Storm <storm@cua.dk>
20868
20869 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
20870 defining command remapping. Doc updated.
20871 (Flookup_key): Remap command through keymap if KEY is a symbol.
20872 (is_command_symbol): New function.
20873 (Fkey_binding): Use it. New optional argument NO-REMAP.
20874 Doc updated. Callers changed. Perform command remapping via
20875 recursive call unless that arg is non-nil.
20876 (where_is_internal): New argument no_remap. Callers changed.
20877 Call recursively to find original key bindings for a remapped
20878 comand unless that arg is non-nil.
20879 (Fwhere_is_internal): New optional argument NO-REMAP.
20880 Doc updated. Callers changed. Pass arg to where_is_internal.
20881
20882 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
20883 (is_command_symbol): Add prototype.
20884
20885 * keyboard.c (Vthis_original_command): New variable.
20886 (syms_of_keyboard): DEFVAR_LISP it.
20887 (command_loop_1): Set it, and perform command remapping.
20888
20889 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20890
20891 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
20892
20893 2002-02-06 Jason Rumney <jasonr@gnu.org>
20894
20895 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
20896
20897 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
20898
20899 * charset.c (get_charset_id): Use if-else instead of ?:.
20900
20901 2002-02-06 Richard M. Stallman <rms@gnu.org>
20902
20903 * filelock.c (S_ISLNK): Define if not defined.
20904
20905 2002-02-03 Richard M. Stallman <rms@gnu.org>
20906
20907 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
20908
20909 * lread.c (read1): Redesign strategy for force_multibyte and
20910 force_singlebyte. Now is_multibyte records whether read_buffer
20911 is multibyte. Encountering any multibyte character makes it so.
20912
20913 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
20914
20915 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
20916 with the same sequence, map that sequence to f10 rather than f0.
20917
20918 2002-02-03 Andreas Schwab <schwab@suse.de>
20919
20920 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
20921 latter never being defined on GNU/Linux.
20922
20923 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
20924
20925 * xfaces.c (realize_default_face): Don't set the weight and slant of
20926 the default face to Qnormal, unless these attributes are unspecified.
20927
20928 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20929
20930 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
20931 Call cancel_hourglass unconditionally.
20932
20933 * eval.c (Fsignal): Remove duplicated declaration of
20934 the variable `display_hourglass_p'.
20935
20936 2002-01-31 Richard M. Stallman <rms@gnu.org>
20937
20938 * editfns.c (region_limit): Nicer error message.
20939
20940 * coding.c (decode_composition_emacs_mule):
20941 Give up if NCOMPONENT gets too large to index `component'.
20942
20943 * callint.c (check_mark): New arg to specify clearer error message.
20944 Callers changed.
20945
20946 2002-01-27 Richard M. Stallman <rms@gnu.org>
20947
20948 * minibuf.c (Fcompleting_read): Doc fix.
20949
20950 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20951
20952 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
20953 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
20954 Fix doc-strings.
20955
20956 2002-01-26 Richard M. Stallman <rms@gnu.org>
20957
20958 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
20959
20960 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
20961 and scroll_up_aggressively.
20962
20963 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20964
20965 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
20966
20967 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
20968
20969 * textprop.c (Fnext_property_change, Fnext_single_property_change)
20970 (Fprevious_property_change, Fprevious_single_property_change):
20971 Stay within the narrowed-buffer boundaries.
20972
20973 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
20974
20975 * term.c (Ftty_display_color_cells): New function.
20976 (syms_of_term): Defsubr it.
20977 (Ftty_display_color_cells, Ftty_display_color_p): Change the
20978 argument name to DISPLAY. Doc fix.
20979
20980 * dispextern.h: Add prototype for set_tty_color_mode and
20981 tty_setup_colors.
20982
20983 2002-01-24 Jason Rumney <jasonr@gnu.org>
20984
20985 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
20986 If region left to draw is not what was expected, mark the frame as
20987 garbaged.
20988
20989 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
20990 Combine the regions returned by BeginPaint and GetUpdateRect.
20991
20992 2002-01-23 Jason Rumney <jasonr@gnu.org>
20993
20994 * w32term.c (x_update_window_begin): Only hide caret if
20995 w32_use_visible_system_caret is set.
20996 (x_update_window_end): Only show caret if
20997 w32_use_visible_system_caret is set.
20998 (syms_of_w32term): Handle SystemParametersInfo call failing.
20999
21000 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
21001
21002 2002-01-22 Richard M. Stallman <rms@gnu.org>
21003
21004 * unexelf.c (unexec): Define n so as to cause compilation error
21005 for the code where people have often written n instead of nn.
21006
21007 * .gdbinit (hookpost-run): Defined.
21008
21009 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21010
21011 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
21012
21013 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21014
21015 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
21016 if fullscreen is being set.
21017
21018 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21019
21020 * minibuf.c (Fminibuffer_contents)
21021 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
21022 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
21023
21024 2002-01-21 Richard M. Stallman <rms@gnu.org>
21025
21026 * window.c (check_frame_size): Fix minimum height calculation.
21027
21028 2002-01-20 Ken Raeburn <raeburn@gnu.org>
21029
21030 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
21031 height before comparison.
21032 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
21033
21034 2002-01-20 Jason Rumney <jasonr@gnu.org>
21035
21036 * w32term.c (w32_system_caret_width): Remove.
21037 (w32_use_visible_system_caret): New user flag.
21038 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
21039 Windows reports a screen reader running.
21040 (x_update_window_begin): Hide the system caret.
21041 (x_update_window_end): Show the system caret.
21042 (x_display_and_set_cursor): Don't draw a cursor when
21043 w32_use_visible_system_caret is set. Do not adjust width.
21044
21045 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
21046 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
21047 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
21048 the user requests it. Use system default width when creating.
21049 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
21050
21051 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
21052 New window messages.
21053
21054 2002-01-20 Richard M. Stallman <rms@gnu.org>
21055
21056 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
21057
21058 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21059
21060 * doprnt.c (doprnt1): Fix typos in error call.
21061
21062 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
21063
21064 * unexelf.c (unexec) [__sgi]: Support the .got sections.
21065
21066 2002-01-20 Jason Rumney <jasonr@gnu.org>
21067
21068 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
21069 that Windows returns. If a double check fails, try to guess how
21070 ExtTextOut is going to act.
21071
21072 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
21073 in place of stricmp.
21074 (w32_list_synthesized_fonts): Removed.
21075 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
21076 (struct enumfont_t): New element; list.
21077 (enum_font_cb2): List all style and charset variations of a font.
21078 (Fw32_select_font): New optional argument; include_proportional.
21079 Exclude vertical fonts. Exclude proportional fonts unless
21080 include_proportional is non-nil.
21081 (w32_enable_synthesized_fonts): Change to a boolean.
21082 (Fw32_send_sys_command): Doc fix.
21083
21084 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21085
21086 * dispnew.c (update_frame): Move the variable `tem' to the block
21087 where it is used.
21088
21089 2002-01-19 Jason Rumney <jasonr@gnu.org>
21090
21091 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
21092 call to face-set-after-frame-default.
21093
21094 2002-01-18 Richard M. Stallman <rms@gnu.org>
21095
21096 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
21097 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
21098
21099 2002-01-17 Richard M. Stallman <rms@gnu.org>
21100
21101 * window.c (enlarge_window): When exceeding size of parent,
21102 directly delete all the siblings instead of trying to resize it.
21103
21104 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21105
21106 * term.c (set_tty_color_mode): Remove unused variable `tem'.
21107
21108 2002-01-16 Henrik Enberg <henrik@enberg.org>
21109
21110 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
21111
21112 2002-01-16 Kim F. Storm <storm@cua.dk>
21113
21114 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
21115 is invisible. This can happen if cursor is on top line of a
21116 window, and we switch to a buffer with a header line.
21117
21118 * w32term.c (x_erase_phys_cursor): Ditto.
21119
21120 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21121
21122 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
21123 `dont_resize' only when used.
21124
21125 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
21126
21127 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
21128
21129 * xdisp.c (display_mode_element): When computing charpos, depend
21130 on multibyteness of elt, not the text in field.
21131
21132 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21133
21134 * buffer.c (Fkill_all_local_variables):
21135 Increment `update_mode_lines' only once.
21136
21137 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21138
21139 * lisp.h (adjust_after_replace_noundo)
21140 (Fupdate_coding_systems_internal): Add prototypes.
21141
21142 * sound.c (Fplay_sound): Initialize header_size also for :data case.
21143
21144 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
21145
21146 Support for the --color command-line argument and tty-color-mode
21147 frame parameter:
21148
21149 * term.c (tty_default_color_capabilities, tty_setup_colors)
21150 (set_tty_color_mode): New functions.
21151 (term_init): Call tty_default_color_capabilities.
21152 (Qtty_color_mode_alist): New variable.
21153 (syms_of_term): Intern and staticpro it.
21154
21155 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
21156 frames.
21157 (do_switch_frame): For termcap frames, switch the tty
21158 color mode as specified by the frame's parameters.
21159 (Qtty_color_mode): New variable.
21160 (syms_of_frame): Intern and staticpro it.
21161
21162 * emacs.c (USAGE2): Add the --color option.
21163 (standard_args): Ditto.
21164
21165 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21166
21167 * xterm.h (struct x_output): New members want_fullscreen,
21168 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
21169 y_pixels_outer_diff.
21170 New enum for FULLSCREEN_* constants.
21171 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
21172 is NULL.
21173 (x_fullscreen_adjust): Add prototype.
21174
21175 * emacs.c (USAGE2): Add the new full-screen arguments.
21176 (standard_args): Ditto.
21177
21178 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21179 New variables.
21180 (syms_of_xfns): Intern and staticpro them.
21181 (x_frame_parms) <"fullscreen">: New parameter.
21182 (x_fullscreen_move, x_set_fullscreen): New functions.
21183 (x_set_frame_parameters): Support for Qfullscreen.
21184 (x_real_positions): More accurate computation of the frame position.
21185 (x_figure_window_size): Support full-screen frames.
21186 (Fx_create_frame): Default the fullscreen parameter.
21187
21188 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
21189 (XTread_socket) <Expose>: Call x_check_fullscreen.
21190 <ConfigureNotify>: Don't resize to fullscreen.
21191 Call x_check_fullscreen_move, and set the want_fullscreen member of
21192 output_data.x.
21193
21194 2002-01-13 Jason Rumney <jasonr@gnu.org>
21195
21196 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
21197 for mice with more than 3 buttons.
21198
21199 * w32term.c (parse_button): New parameter xbutton. Callers changed.
21200 (w32_read_socket): Handle new "XBUTTON" messages.
21201
21202 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
21203 (syms_of_w32fns): DEFVAR_BOOL it.
21204 (w32_wnd_proc): Handle new "XBUTTON" messages.
21205
21206 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21207
21208 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
21209
21210 2002-01-13 Andreas Schwab <schwab@suse.de>
21211
21212 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
21213
21214 2002-01-12 Andreas Schwab <schwab@suse.de>
21215
21216 * .gdbinit (xbuffer): Remove address operator since data is now a
21217 pointer.
21218
21219 2002-01-11 Richard M. Stallman <rms@gnu.org>
21220
21221 * insdel.c (adjust_after_replace_noundo): New function.
21222
21223 * coding.c (code_convert_region): Don't copy old text if undo disabled.
21224
21225 2002-01-09 Jason Rumney <jasonr@gnu.org>
21226
21227 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
21228 when checking for multiple frames.
21229
21230 2002-01-08 Richard M. Stallman <rms@gnu.org>
21231
21232 * window.c (delete_window): Rewrite the code for changing the
21233 selected window to handle the case where WINDOW is not a leaf.
21234
21235 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
21236
21237 * process.c (send_process): Set src_multibyte to 1 after the call
21238 top setup_coding_system, not before the call.
21239
21240 2002-01-07 Jason Rumney <jasonr@gnu.org>
21241
21242 * xmenu.c (set_frame_menubar, xmenu_show):
21243 (xdialog_show): Initialize wv->help to Qnil.
21244
21245 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
21246 (w32_dialog_show): Initialize wv->help to Qnil.
21247
21248 2002-01-06 Jason Rumney <jasonr@gnu.org>
21249
21250 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
21251
21252 * w32menu.c (w32_menu_display_help): Revert last change.
21253
21254 * xmenu.c (menu_highlight_callback): Revert last change.
21255
21256 2002-01-06 Andreas Schwab <schwab@suse.de>
21257
21258 * insdel.c (make_gap_larger): Make sure buffer size does not
21259 overflow range of int.
21260
21261 2002-01-05 Jason Rumney <jasonr@gnu.org>
21262
21263 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
21264 OVERLAPS_P.
21265
21266 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
21267
21268 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
21269 to the left or to the right of the pointer, put it against
21270 the left screen edge.
21271 (x_frame_parms): Add missing braces around initializer.
21272
21273 * w32term.c (x_setup_relief_colors): Don't compute an image's
21274 background color if it doesn't have a Pixmap.
21275 (notice_overwritten_cursor): Don't depend on
21276 output_cursor and updated_area. Compare pixel coordinates with
21277 window's cursor pixel coordinates.
21278 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21279 Call notice_overwritten_cursor with new arg list.
21280 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21281 unconditionally.
21282 (x_draw_image_relief): Use predefined macro instead of
21283 constant when the value of `tool_bar_button_relief' is negative.
21284
21285 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
21286
21287 2002-01-04 Richard M. Stallman <rms@gnu.org>
21288
21289 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
21290
21291 2002-01-03 Richard M. Stallman <rms@gnu.org>
21292
21293 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
21294 (Fkey_binding): Try the `keymap' property map first.
21295 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
21296 minor mode bindings.
21297
21298 2002-01-03 Kim F. Storm <storm@cua.dk>
21299
21300 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
21301
21302 2002-01-02 Richard M. Stallman <rms@gnu.org>
21303
21304 * keyboard.c (read_key_sequence): Handle the keymap property
21305 before minor mode maps.
21306
21307 * editfns.c (Fformat): Update thissize from field_width
21308 based on the actual width, in the string case.
21309
21310 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21311
21312 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
21313 when used as truth value to prevent gcc warnings.
21314
21315 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
21316 * w32proc.c: Include <config.h>.
21317
21318 2002-01-01 Andreas Schwab <schwab@suse.de>
21319
21320 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
21321 not EMACS_INT, to make them compatible with DEFVAR_INT.
21322 * lisp.h (max_specpdl_size): Adjust declaration.
21323
21324 2002-01-01 Richard M. Stallman <rms@gnu.org>
21325
21326 * print.c (print_object): Test print_escape_nonascii only for
21327 unibyte strings.
21328 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
21329 when outputting to a multibyte buffer.
21330
21331 2001-12-29 Richard M. Stallman <rms@gnu.org>
21332
21333 * print.c (print_object): In multibyte string, use hex escapes.
21334 Use octal only for unibyte strings.
21335 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
21336
21337 * lread.c (read_escape): New arg BYTEREP for reporting whether
21338 escape forces unibyte or multibyte.
21339 (read1): When reading a string, take note of that info.
21340
21341 2001-12-29 Ken Raeburn <raeburn@gnu.org>
21342
21343 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
21344 comparison to test lisp value returned by Fget.
21345
21346 2001-12-29 Richard M. Stallman <rms@gnu.org>
21347
21348 * lisp.h (max_specpdl_size): Add declaration.
21349
21350 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
21351
21352 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
21353 Handle modifier bits. Correct typo in error message.
21354
21355 2001-12-28 Richard M. Stallman <rms@gnu.org>
21356
21357 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
21358 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
21359 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
21360 Update calls to Fdefine_abbrev.
21361 (write_abbrev): Update for changed data format.
21362 Don't list "system" abbrevs.
21363 (Fexpand_abbrev): Update use count with new data format.
21364 (describe_abbrev): Update for changed data format.
21365 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
21366
21367 * config.in (HAVE_MBSINIT): Add #undef.
21368
21369 * strftime.c (mbsinit): Define as no-op if not available.
21370
21371 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
21372 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
21373
21374 * keymap.c (Flookup_key): Error message if key has wrong data type.
21375 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
21376 (exclude_key): New variable.
21377
21378 2001-12-28 Gerd Moellmann <gerd@gnu.org>
21379
21380 * xterm.c (x_setup_relief_colors): Don't compute an image's
21381 background color if it doesn't have a Pixmap.
21382
21383 * xterm.c (notice_overwritten_cursor): Don't depend on
21384 output_cursor and updated_area. Compare pixel coordinates with
21385 window's cursor pixel coordinates.
21386 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21387 Call notice_overwritten_cursor with new arg list.
21388 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21389 unconditionally.
21390
21391 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
21392 height of the cursor line to the amount to scroll.
21393
21394 2001-12-27 Richard M. Stallman <rms@gnu.org>
21395
21396 * intervals.c (set_point_both): The position after an invisible,
21397 intangible character is not an acceptable stopping point.
21398
21399 2001-12-27 Ken Raeburn <raeburn@gnu.org>
21400
21401 * window.c (enlarge_window): In new preserve_before code, convert
21402 CURBEG from lisp object to integer before doing arithmetic.
21403
21404 2001-12-27 Richard M. Stallman <rms@gnu.org>
21405
21406 * bytecode.c (Fbyte_code): Undo previous change.
21407
21408 2001-12-26 Kim F. Storm <storm@cua.dk>
21409
21410 * keyboard.c (record_char): Ignore duplicate help-echo events only
21411 separated by mouse-movement. When tracking mouse, only record
21412 first and last mouse-movement event in same window.
21413 Don't record mouse-movement events in keyboard macros.
21414
21415 2001-12-25 Richard M. Stallman <rms@gnu.org>
21416
21417 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
21418 (Fenlarge_window): New arg PRESERVE_BEFORE.
21419
21420 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
21421 instead of Fstring_as_unibyte.
21422
21423 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21424
21425 The following changes remove mocklisp support:
21426
21427 * mocklisp.h, mocklisp.c: Files removed.
21428
21429 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
21430 `Qmocklisp' and `Qmocklisp_arguments'.
21431 Remove prototype of syms_of_mocklisp.
21432
21433 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
21434
21435 * callint.c: Do not include mocklisp.h.
21436 (Fcall_interactively): Do not test for mocklisp case.
21437
21438 * eval.c: Remove variables `Qmocklisp_arguments',
21439 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
21440 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
21441 Do not test for mocklisp case.
21442 (Fwhile): Remove unused variable `tem'.
21443 (syms_of_eval): Remove variable `moclisp-arguments'.
21444
21445 * data.c (wrong_type_argument): Remove mocklisp case.
21446
21447 * doc.c (Fdocumentation): Remove mocklisp case.
21448
21449 * emacs.c (main): Do not call syms_of_mocklisp.
21450
21451 2001-12-21 Richard M. Stallman <rms@gnu.org>
21452
21453 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
21454 to the left or to the right of the pointer, put it against
21455 the left screen edge.
21456
21457 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
21458
21459 * Makefile.in (distclean): Remove .gdbinit if we are building
21460 outside the source tree.
21461
21462 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
21463
21464 * w32.c (emacs_root_dir): New function.
21465
21466 * msdos.c (emacs_root_dir): New function.
21467
21468 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
21469 of the current drive as the fallback for default_directory.
21470
21471 * dired.c (file_name_completion): Run the elements of
21472 completion-ignored-extensions through ENCODE_FILE.
21473
21474 * lisp.h (scmp): Remove prototype, since it's now a static
21475 function private to dired.c.
21476
21477 2001-12-18 Richard M. Stallman <rms@gnu.org>
21478
21479 * dired.c (scmp): Function moved from minibuf.c.
21480 Delete multibyte handling--used only on encoded strings.
21481
21482 * minibuf.c (scmp): Function moved to dired.c.
21483
21484 * fns.c (merge): Add QUIT call.
21485
21486 2001-12-18 Dave Love <fx@gnu.org>
21487
21488 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
21489 language/georgian.el.
21490
21491 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
21492
21493 * Makefile.in (lisp, shortlisp): Synchronize with changes to
21494 lisp/Makefile.in:DONTCOMPILE.
21495
21496 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21497
21498 * xdisp.c (window_box_height): Do not return negative values.
21499 From Gerd Moellmann <gerd@gnu.org>.
21500
21501 * keyboard.c (head_table): Add missing braces around initializer.
21502
21503 * term.c (keys): Likewise.
21504
21505 * xfns.c (x_frame_parms, visual_classes): Likewise.
21506
21507 2001-12-17 Sam Steingold <sds@gnu.org>
21508
21509 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
21510 patch (COMPOSING_P, not COMPOSING).
21511
21512 2001-12-17 Richard M. Stallman <rms@gnu.org>
21513
21514 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
21515
21516 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
21517 before calling decode_coding.
21518
21519 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
21520
21521 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
21522 instead of only for COMPOSITION_DISABLED.
21523
21524 2001-12-16 Richard M. Stallman <rms@gnu.org>
21525
21526 * alloc.c (pure_alloc): After overflow, allocate just a small block.
21527
21528 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
21529
21530 * buffer.h (struct buffer): New field `display_error_modiff'.
21531 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
21532
21533 * window.c (Frecenter): Clear display_error_modiff field.
21534
21535 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
21536 Call redisplay_window, but not if display_error_modiff field says no.
21537 (redisplay_window_error): New function.
21538 (displayed_buffer): New variable.
21539 (redisplay_internal, redisplay_windows): Call the new functions
21540 instead of redisplay_window directly.
21541
21542 2001-12-15 Richard M. Stallman <rms@gnu.org>
21543
21544 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
21545
21546 2001-12-14 Andrew Innes <andrewi@gnu.org>
21547
21548 * makefile.w32-in (EMACSLOADPATH): Define.
21549 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
21550 (bootstrap-temacs): Remove dependency on bootstrap-clean.
21551
21552 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
21553
21554 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
21555 parameter have a numeric value all the time.
21556
21557 * w32fns.c (x_report_frame_params): Likewise.
21558
21559 2001-12-12 Richard M. Stallman <rms@gnu.org>
21560
21561 * fileio.c (Fwrite_region): Doc fix.
21562
21563 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
21564 (redisplay_internal): Call clear_image_cache only for window terminals.
21565
21566 2001-12-12 Gerd Moellmann <gerd@gnu.org>
21567
21568 * xdisp.c (move_it_vertically_backward): Change heuristic
21569 for the case that we didn't move far enough initially.
21570
21571 * window.c (Frecenter): Simplify computation in the case of window
21572 system frames and ARG < 0; use window_box_height.
21573
21574 2001-12-11 Richard M. Stallman <rms@gnu.org>
21575
21576 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
21577 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
21578
21579 2001-12-11 Andrew Innes <andrewi@gnu.org>
21580
21581 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
21582 arg is negative.
21583
21584 2001-12-11 Richard M. Stallman <rms@gnu.org>
21585
21586 * m/hp800.h: Split the __hpux conditional into the parts
21587 that are right for GNU/Linux too and the parts that are not.
21588 Use the former if GNU_LINUX.
21589 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
21590
21591 * s/gnu-linux.h (GNU_LINUX): Defined.
21592
21593 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21594
21595 * macros.c, msdos.c, w16select.c: Change doc-string comments to
21596 `new style' [w/`doc:' keyword].
21597
21598 2001-12-10 Jason Rumney <jasonr@gnu.org>
21599
21600 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
21601 before using.
21602
21603 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21604
21605 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
21606 keyword].
21607
21608 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
21609
21610 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
21611
21612 * s/hpux10.h (srand48): Don't undefine.
21613
21614 2001-12-09 Jason Rumney <jasonr@gnu.org>
21615
21616 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
21617 Add comment to explain where the struct came from.
21618 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
21619 (add_menu_item): Process pop-up menus first to avoid memory leak.
21620 (add_menu_item, w32_menu_display_help): Use `help' field as
21621 Lisp_Object.
21622 (w32_free_submenu_strings): Only free owner-drawn strings.
21623
21624 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21625
21626 * COPYING: Moved back.
21627
21628 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
21629 Add parentheses around && within ||.
21630
21631 * indent.c (compute_motion): Likewise.
21632
21633 * intervals.c (merge_properties_sticky): Likewise.
21634
21635 * coding.c (setup_coding_system, shrink_encoding_region)
21636 (Fdecode_sjis_char): Likewise.
21637
21638 2001-12-07 Andreas Schwab <schwab@suse.de>
21639
21640 * xdisp.c (display_mode_element): Don't read past end of string if
21641 it ends with '%'.
21642
21643 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
21644 can hold.
21645
21646 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
21647 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
21648 type changed to Lisp_Object.
21649 (syms_of_data): DEFVAR_LISP them.
21650
21651 2001-12-07 Richard M. Stallman <rms@gnu.org>
21652
21653 * callproc.c (init_callproc): Set Vdata_directory based on the source
21654 location whenever Emacs was run uninstalled.
21655
21656 2001-12-06 Paul Eggert <eggert@twinsun.com>
21657
21658 * config.in (HAVE_WORKING_VFORK): New #undefs.
21659 * process.c (create_process):
21660 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
21661 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
21662 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
21663 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
21664 * m/intel386.h (HAVE_VFORK): Likewise.
21665 * m/mips-siemens.h (HAVE_VFORK): Likewise.
21666 * m/mips.h (HAVE_VFORK): Likewise.
21667 * s/freebsd.h (vfork): Remove #define.
21668 * s/lynxos.h (HAVE_VFORK): Remove #undef.
21669 * s/usg5-4-2.h: Fix comment about vfork.
21670
21671 2001-12-06 Richard M. Stallman <rms@gnu.org>
21672
21673 * s/hpux10.h (random): Add undef.
21674 (HAVE_RANDOM): Define it just once.
21675
21676 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
21677
21678 * eval.c: Undo last change: the standard syntax is not wanted.
21679
21680 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
21681
21682 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
21683 scroll bars of the frame before deleting the frame itself. If the
21684 frame has a widget, delete the frame with XtDestroyWidget, and do
21685 not call XDestroyWindow before that.
21686
21687 2001-12-06 Kim F. Storm <storm@cua.dk>
21688
21689 * xfns.c (x_report_frame_params): Return actual fringe widths.
21690
21691 * w32fns.c (x_report_frame_params): Return actual fringe widths.
21692
21693 2001-12-05 Andrew Innes <andrewi@gnu.org>
21694
21695 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
21696 excessively large.
21697
21698 * insdel.c (make_gap_larger): New function.
21699 (make_gap_smaller): New function.
21700 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
21701 Call make_gap_smaller if arg is negative.
21702
21703 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
21704
21705 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
21706 Pass a dummy argument when calling interrupt_signal.
21707 (parse_menu_item): Mark disabled items before checking for empty def.
21708 (read_char_minibuf_menu_prompt): Make safety more visible.
21709 (read_key_sequence): Add a `first_unbound' variable.
21710 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
21711 unbound prefix as soon as we can detect it.
21712
21713 * doc.c (Fsnarf_documentation): Add prototype.
21714 (get_doc_string): Handle negative arguments.
21715 (Fdocumentation): Use AREF and ASIZE.
21716 Move the calls to get_doc_string to a single place.
21717 Don't confuse an interactive-spec for a docstring reference.
21718 (Fdocumentation_property): Take advantage of the fact that
21719 get_doc_string now ignores the sign of the docstring position.
21720
21721 * eval.c: Use standard syntax for usage in docstrings.
21722
21723 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21724
21725 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
21726
21727 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21728
21729 * xterm.c (x_draw_image_relief): Use predefined macro instead of
21730 constant when the value of `tool_bar_button_relief' is negative.
21731
21732 2001-12-02 Richard M. Stallman <rms@gnu.org>
21733
21734 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
21735 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
21736
21737 * fileio.c (read_non_regular): Delete Fsignal call.
21738
21739 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
21740
21741 * lisp.h (run_hook_list_with_args): Undo last change.
21742
21743 2001-12-01 Gerd Moellmann <gerd@gnu.org>
21744
21745 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
21746
21747 2001-12-01 Jason Rumney <jasonr@gnu.org>
21748
21749 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
21750
21751 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
21752 [!WM_MOUSELEAVE]: Define.
21753
21754 * w32menu.c (current_popup_menu, get_menu_item_info):
21755 (set_menu_item_info): New vars.
21756 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
21757 (w32_menu_show): Set current_popup_menu.
21758 (add_menu_item): Allocate new strings for owner-drawn menu items
21759 and help strings.
21760 Use owner-draw for disabled menu items again.
21761 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
21762 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
21763
21764 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
21765 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
21766 <WM_EXITMENULOOP>: Free menu strings.
21767 <WM_MOUSELEAVE>: Stop tracking mouse.
21768 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
21769
21770 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
21771 and mouse face.
21772
21773 2001-12-01 Kim F. Storm <storm@cua.dk>
21774
21775 The following changes add left-fringe and right-fringe
21776 frame parameters to adjust fringe widths, or remove one or
21777 both fringes.
21778
21779 * frame.h (struct frame): Remove trunc_area_pixel_width and
21780 trunc_area_cols fields.
21781 (Qleft_fringe, Qright_fringe): Declare.
21782 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
21783
21784 * frame.c (Qleft_fringe, Qright_fringe): New vars.
21785 (syms_of_frame): Initialize them.
21786
21787 * window.c (coordinates_in_window): Handle separate left and right
21788 fringe widths.
21789
21790 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
21791 and fringe_cols fields.
21792 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
21793 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
21794 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
21795 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
21796 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
21797 (x_compute_fringe_widths): Add prototype.
21798
21799 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
21800 fill fringe evenly with small dashes.
21801 (x_draw_fringe_bitmap): Clear background if necessary. Align and
21802 clip the new ZV bitmap to avoid jitter between rows.
21803 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
21804 background. Don't draw fringe bitmaps if fringe width is zero.
21805 (x_compute_fringe_widths): New function.
21806 (x_new_font, x_set_window_size_1): Use it.
21807
21808 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
21809 (x_set_frame_parameters): Process `font' parameter before other
21810 parameters as fringe widths depend on it.
21811 (x_set_fringe_width): New function.
21812 (x_figure_window_size): Use x_compute_fringe_widths.
21813 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
21814 parameters.
21815
21816 * widget.c (set_frame_size): Use x_compute_fringe_widths.
21817 (EmacsFrameSetCharSize): Ditto.
21818
21819 * w32term.h: Merged changes from xterm.h.
21820 * w32term.c: Merged changes from xterm.c.
21821 * w32fns.c: Merged changes from xfns.c.
21822
21823 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21824
21825 * COPYING: Removed.
21826
21827 2001-11-29 Dave Love <fx@gnu.org>
21828
21829 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
21830 extra extra slot.
21831 (detect_coding_mask): Fix call of detect_coding_iso2022.
21832
21833 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21834
21835 * fileio.c (file-name-coding-system)
21836 (default-file-name-coding-system): Doc fix (links to referenced
21837 variables added).
21838
21839 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
21840
21841 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
21842 Add dummy uses of gcproN variables.
21843
21844 * category.c (describe_category, describe_category_1)
21845 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
21846 (syms_of_category): Don't defsubr Sdescribe_categories.
21847
21848 2001-11-28 Richard M. Stallman <rms@gnu.org>
21849
21850 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
21851
21852 * Makefile.in (lispdir): New variable, referring to build dir.
21853 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
21854
21855 2001-11-28 Andrew Innes <andrewi@gnu.org>
21856
21857 * w32menu.c (w32_menu_display_help): Actually add the new argument
21858 OWNER.
21859
21860 2001-11-28 Jason Rumney <jasonr@gnu.org>
21861
21862 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
21863 menu items. From David Ponce <dponce@wanadoo.fr>.
21864 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
21865 conditionally.
21866 (w32_menu_display_help): New argument OWNER. Rewritten to store a
21867 help event in the owner frame's keyboard buffer.
21868
21869 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
21870 (Fx_show_tip): Don't subtract last width from row width.
21871
21872 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
21873 (w32_read_socket): Use EQ to compare frames.
21874
21875 2001-11-28 Gerd Moellmann <gerd@gnu.org>
21876
21877 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
21878 OVERLAPS_P.
21879
21880 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21881
21882 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
21883 `gcpro3' and `gcpro4'.
21884
21885 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
21886
21887 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
21888
21889 * ccl.c: Use AREF and ASIZE.
21890
21891 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
21892
21893 * lisp.h (run_hook_list_with_args): Remove.
21894 (LIST_END_P): Fix call to wrong_type_argument.
21895 (make_fixnum_or_float): Use EMACS_INT rather than int.
21896
21897 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
21898
21899 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
21900 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
21901
21902 * eval.c: Use AREF and ASIZE.
21903 (Ffetch_bytecode): Add the file name to the error message.
21904
21905 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
21906 which match the end of the file-name.
21907 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
21908 is not a valid env var, but leave it as is instead.
21909
21910 * keymap.c (access_keymap): Handle t bindings like nil bindings.
21911 Make nil bindings in char-tables transparent.
21912 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
21913
21914 2001-11-26 Richard M. Stallman <rms@gnu.org>
21915
21916 * textprop.c (set_text_properties_1): Allow START, END in either order.
21917 Do nothing if range is empty.
21918
21919 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
21920
21921 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
21922 (clean): Not here.
21923
21924 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
21925
21926 * textprop.c (set_text_properties_1): Clearly mark that the
21927 interval should not be empty.
21928
21929 * intervals.c (graft_intervals_into_buffer):
21930 Don't call set_text_properties_1 on an empty interval.
21931
21932 2001-11-25 Richard M. Stallman <rms@gnu.org>
21933
21934 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
21935
21936 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
21937 don't lose the data in it.
21938
21939 2001-11-25 Juanma Barranquero <lektu@terra.es>
21940
21941 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
21942
21943 * buffer.c (Fkill_buffer): Likewise.
21944
21945 * print.c (temp_output_buffer_setup): Likewise.
21946
21947 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
21948
21949 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
21950
21951 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
21952
21953 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
21954 Niemitalo <kon@iki.fi>.
21955
21956 2001-11-25 Jason Rumney <jasonr@gnu.org>
21957
21958 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
21959
21960 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
21961 (Fx_show_tip): Block input during frame creation.
21962 (Fx_show_tip, Fx_hide_tip): Enable.
21963
21964 2001-11-24 Richard M. Stallman <rms@gnu.org>
21965
21966 * lread.c (Fload): Detect recursive load error for more than 3
21967 nestings of the same file.
21968 (Vrecursive_load_depth_limit): Variable deleted.
21969 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
21970
21971 2001-11-24 Jason Rumney <jasonr@gnu.org>
21972
21973 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
21974 mouse position if either left or top is not specified.
21975
21976 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
21977 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
21978 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
21979 (my_create_tip_window): Assign tip_window.
21980 (x_create_tip_frame): Use same defaults as X.
21981 (compute_tip_xy): Remove unused variable. Use full screen width.
21982 (Fx_show_tip): Do not double height. Call ShowWindow directly.
21983
21984 * w32term.c (x_after_update_window_line): Doc fix.
21985 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
21986 frames.
21987 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
21988
21989 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
21990 for all Windowed systems.
21991
21992 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
21993
21994 * msdos.c (IT_clear_screen): If the frame's faces are not yet
21995 realized, use the initial screen colors to clear the screen.
21996
21997 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21998
21999 * textprop.c (Fset_text_properties): Remove unused variables
22000 `unchanged', `prev_changed', `s' and `len'.
22001
22002 * search.c (Freplace_match): Remove unused variable `inslen'.
22003
22004 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
22005
22006 2001-11-22 Jason Rumney <jasonr@gnu.org>
22007
22008 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
22009 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
22010 (my_create_tip_window): New function.
22011 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
22012 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
22013
22014 2001-11-20 Jason Rumney <jasonr@gnu.org>
22015
22016 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
22017 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
22018
22019 * w32fns.c (Vw32_system_coding_system): Remove.
22020 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
22021
22022 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
22023
22024 * fileio.c (Fwrite_region): Move choose_write_coding_system to
22025 after build_annotations.
22026
22027 * syntax.c (describe_syntax): Add dummy arg.
22028 (describe_syntax_1): Update call to describe_vector.
22029
22030 * category.c (describe_category): Add dummy arg.
22031 (describe_category_1): Update call to describe_vector.
22032
22033 * keymap.c (Fdescribe_vector): Add `describer' parameter.
22034 (describe_command, describe_translation): Add dummy second param.
22035 (describe_map): Call elt_describer with two arguments.
22036 (describe_vector_princ): Add `fun' parameter.
22037 Call it instead of the hardcoded `princ'.
22038 (describe_vector): Add arg `args'.
22039 Pass it as a new second argument to elt_describer.
22040
22041 * keymap.h (describe_vector): Update prototype.
22042
22043 * frame.c: Don't include keymap.h any more.
22044 (keys_of_frame): Remove.
22045
22046 * lisp.h (keys_of_frame): Remove declaration.
22047
22048 * emacs.c (main): Don't call `keys_of_frame' any more.
22049
22050 2001-11-14 Andreas Schwab <schwab@suse.de>
22051
22052 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
22053 if defined, 0 otherwise.
22054 (MAP_FAILED): Define if not defined and use it to test mmap failure.
22055 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
22056
22057 2001-11-19 Richard M. Stallman <rms@gnu.org>
22058
22059 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
22060
22061 2001-11-18 Jason Rumney <jasonr@gnu.org>
22062
22063 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
22064 (x_draw_bar_cursor): If the background color of the glyph under
22065 the cursor equals the frame's cursor color, use the glyph's
22066 foreground color for drawing the bar cursor.
22067 (x_after_update_window_line): Clear internal border in different
22068 circumstances.
22069 (w32_set_vertical_scroll_bar): Check for width and height > 0.
22070 (w32_draw_relief_rect): Correct relief by 1 pixel.
22071 (x_set_glyph_string_background_width):
22072 Set extends_to_end_of_line_p if the row's fill_line_p is set and
22073 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
22074 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
22075 if cursor_in_non_selected_windows is false.
22076 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
22077 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
22078 Notice if cursor gets overwritten.
22079 (notice_overwritten_cursor): Renamed from
22080 note_overwritten_text_cursor. Rewritten to take glyph widths
22081 into account, and to take X positions as parameters.
22082 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22083 around call to x_draw_glyphs.
22084 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22085 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22086 color to use for image glyph reliefs.
22087 (x_draw_image_relief): Accept zero tool_bar_button_relief.
22088 (glyph_rect): Remove unused variable `area'.
22089
22090 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
22091 some items.
22092 (x_set_internal_border_width): Set frame garbaged when window
22093 doesn't exist yet.
22094 (Fx_create_frame): Accept zero tool_bar_button_relief.
22095 (x_clear_image_1, four_corners_best, image_background)
22096 (image_background_transparent): New functions.
22097 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22098 (gs_format): Add `:background' entry.
22099 (lookup_image): Set IMG's background color if specified.
22100 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22101 when appropriate.
22102 (x_clear_image_1): Reset `background_valid' and
22103 `background_transparent_valid' fields.
22104 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22105 calculating it here. Set IMG's background_transparent field.
22106 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22107 (enum png_keyword_index): Add PNG_BACKGROUND.
22108 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22109 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22110 (enum gif_keyword_index): Add GIF_BACKGROUND.
22111 (enum gs_keyword_index): Add GS_BACKGROUND.
22112 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22113 Pre-calculate image background color where necessary.
22114 (x_create_x_image_and_pixmap, xbm_load, gs_load):
22115 Use display info's n_cbits entry for screen depth.
22116 (Fx_show_tip): Remove unused variables `buffer', `top',
22117 `left', `max_width' and `max_height'.
22118
22119 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
22120
22121 2001-11-18 Gerd Moellmann <gerd@gnu.org>
22122
22123 * puresize.h (BASE_PURESIZE): Increase to 750000.
22124
22125 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22126
22127 * frame.c (Fframe_live_p): Doc fix.
22128
22129 2001-11-18 Richard M. Stallman <rms@gnu.org>
22130
22131 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
22132 (message_dolog_marker3): New static variables hold three markers.
22133 (syms_of_xdisp): Initialize and staticpro them.
22134 (message_dolog): Use message_dolog_marker1..3 instead of
22135 allocating markers each time. Unchain them when done.
22136
22137 2001-11-17 Richard M. Stallman <rms@gnu.org>
22138
22139 * doc.c (Fsnarf_documentation): Doc fix.
22140
22141 2001-11-17 Andreas Schwab <schwab@suse.de>
22142
22143 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
22144
22145 2001-11-17 Richard M. Stallman <rms@gnu.org>
22146
22147 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
22148
22149 2001-11-17 Jason Rumney <jasonr@gnu.org>
22150
22151 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
22152
22153 2001-11-17 Gerd Moellmann <gerd@gnu.org>
22154
22155 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
22156 with invalid position.
22157
22158 2001-11-16 Richard M. Stallman <rms@gnu.org>
22159
22160 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
22161
22162 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
22163 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
22164 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
22165
22166 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
22167
22168 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22169
22170 * fileio.c (build_annotations): Split off the tail.
22171 (build_annotations_2): New fun. Extracted from build_annotations.
22172 (Fwrite_region): Split the call to build_annotations into two
22173 calls to build_annotations and build_annotations_2.
22174
22175 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22176
22177 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
22178 clear_waiting_for_input with argument.
22179
22180 * xterm.h (x_update_cursor): Remove duplicated prototype.
22181
22182 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
22183
22184 * xterm.c (waiting_for_input): Remove unnecessary declaration.
22185
22186 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
22187
22188 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22189
22190 * fileio.c (choose_write_coding_system): New fun, extracted
22191 from Fwrite_region.
22192 (Fwrite_region): Use it.
22193
22194 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
22195 (funcall_lambda, run_hook_with_args): Make static and add prototype.
22196 (ml_apply, find_handler_clause): Add prototype.
22197
22198 2001-11-16 Eli Zaretskii <eliz@gnu.org>
22199
22200 * config.in: Add #undef HAVE_COFF_H.
22201
22202 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
22203 Required for ISC 4.1.
22204
22205 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
22206
22207 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
22208 Andrew Wiseman <a.wiseman@btclick.com>.
22209
22210 2001-11-16 Kim F. Storm <storm@cua.dk>
22211
22212 The following changes are made to clean up the various internal
22213 references to the fringes to actually use the term `fringe' for
22214 them. Previously, they were called `flags areas', `bitmap areas',
22215 `left/right side of windows', or implicitly as `flags' or
22216 `bitmaps':
22217
22218 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
22219 Comments fixed. Use renamed symbols.
22220
22221 * dispnew.c: Comment fix. Use renamed symbols.
22222
22223 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
22224 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
22225 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
22226
22227 * msdos.c: Comment fix.
22228
22229 * w32fns.c: Use renamed symbols.
22230
22231 * w32term.c: Comment fixes. Use renamed symbols.
22232 (fringe_bitmap_type): Renamed from bitmap_type.
22233 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22234 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
22235 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22236
22237 * w32term.h: Comment fixes. Use renamed symbols.
22238 (fringes_extra): Renamed from flags_areas_extra.
22239 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22240 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22241 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22242 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22243 (FRAME_X_LEFT_FRINGE_WIDTH):
22244 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22245 (FRAME_X_RIGHT_FRINGE_WIDTH):
22246 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22247
22248 * widget.c: Use renamed symbols.
22249
22250 * window.c: Comment fixes. Use renamed symbols.
22251 (coordinates-in-window-p): Doc fix.
22252
22253 * xdisp.c: Comment fixes. Use renamed symbols.
22254
22255 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
22256
22257 * xfns.c: Use renamed symbols.
22258
22259 * xterm.c: Comment fixes. Use renamed symbols.
22260 (fringe_bitmap_type): Renamed from bitmap_type.
22261 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22262 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
22263 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22264
22265 * xterm.h: Comment fixes. Use renamed symbols.
22266 (fringes_extra): Renamed from flags_areas_extra.
22267 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22268 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22269 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22270 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22271 (FRAME_X_LEFT_FRINGE_WIDTH):
22272 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22273 (FRAME_X_RIGHT_FRINGE_WIDTH):
22274 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22275
22276 2001-11-15 Jason Rumney <jasonr@gnu.org>
22277
22278 * w32menu.c (add-menu-item): Make help_echo and radio buttons
22279 work for most menu items. From David Ponce
22280 <david.ponce@wanadoo.fr>.
22281
22282 2001-11-15 Gerd Moellmann <gerd@gnu.org>
22283
22284 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
22285 Some x_set_* function expect to be called even if old and new
22286 value are equal.
22287
22288 * xdisp.c (build_desired_tool_bar_string): Accept zero
22289 tool_bar_button_relief.
22290
22291 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
22292
22293 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
22294
22295 * xterm.c (x_draw_bar_cursor): If the background color of the
22296 glyph under the cursor equals the frame's cursor color, use
22297 the glyph's foreground color for drawing the bar cursor.
22298
22299 * dispnew.c (direct_output_forward_char): Fix character/byte
22300 position comparison.
22301
22302 2001-11-15 Miles Bader <miles@gnu.org>
22303
22304 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
22305 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
22306 Update arguments to find_field.
22307 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
22308 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
22309 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
22310 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
22311
22312 2001-11-14 Richard M. Stallman <rms@gnu.org>
22313
22314 * editfns.c (Fpropertize): Allow call with 1 arg.
22315
22316 * dispextern.h (image_background, image_background_transparent):
22317 Conditionalize on HAVE_X_WINDOWS.
22318
22319 2001-11-13 Richard M. Stallman <rms@gnu.org>
22320
22321 * print.c (Fprin1_to_string): Doc fix.
22322
22323 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
22324
22325 * floatfns.c (Fceiling, Ffloor): Doc fixes.
22326
22327 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
22328
22329 * fileio.c (Ffile_accessible_directory_p): Doc fix.
22330
22331 * eval.c (syms_of_eval): Doc fix.
22332
22333 * coding.c (syms_of_coding): Doc fix.
22334
22335 * doc.c (Fsnarf_documentation): Doc fix.
22336
22337 * dispnew.c (syms_of_display): Doc fix.
22338
22339 * category.c (Fget_unused_category): Doc fix.
22340
22341 * buffer.c (syms_of_buffer): Doc fixes.
22342
22343 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
22344
22345 * print.c (prin1, print): Doc fix.
22346
22347 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22348
22349 * fontset.h: Remove declarations of variables
22350 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
22351
22352 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
22353 `Vclip_large_size_font'.
22354
22355 2001-11-13 Jason Rumney <jasonr@gnu.org>
22356
22357 * w32fns.c: Doc fix.
22358
22359 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22360
22361 * xfaces.c (Fface_attributes_as_vector): Doc fix.
22362
22363 * fns.c: Doc fix.
22364
22365 * emacs.c: Doc fix.
22366
22367 * coding.c: Doc fix.
22368
22369 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
22370 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
22371 `new style' [w/`doc:' keyword].
22372
22373 2001-11-12 Richard M. Stallman <rms@gnu.org>
22374
22375 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
22376 LeaveNotify events. Only FocusIn and FocusOut do that now.
22377 (x_display_and_set_cursor): Do display hollow cursors in active
22378 minibuffer windows when they are not selected.
22379
22380 2001-11-12 Jason Rumney <jasonr@gnu.org>
22381
22382 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
22383 * w32term.c: Change doc-string comments to `new style'
22384 [w/`doc:' keyword]. Doc fixes.
22385
22386 * w32fns.c: Don't define max.
22387 (Fx_open_connection): Only execute once.
22388
22389 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22390
22391 * ccl.c: Change macros to use do-while block instead of if-else.
22392 Use braces to follow GNU Coding Standards.
22393
22394 2001-11-11 Richard M. Stallman <rms@gnu.org>
22395
22396 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
22397
22398 * lread.c (read_escape): Use end_of_file_error for reporting eof.
22399
22400 * insdel.c (replace_range): Use adjust_markers_for_replace
22401 instead of adjust_markers_for_delete and adjust_markers_for_insert.
22402
22403 * intervals.h (set_text_properties, set_text_properties_1): Declare.
22404
22405 * textprop.c (set_text_properties_1): New subroutine
22406 broken out of set_text_properties.
22407 (set_text_properties): Use set_text_properties_1.
22408
22409 * intervals.c (graft_intervals_into_buffer):
22410 Use set_text_properties_1 to clear out properties.
22411
22412 * search.c (Freplace_match): Use replace_range to insert
22413 and delete. Don't request property inheritance from
22414 surrounding text.
22415
22416 2001-11-10 Jason Rumney <jasonr@gnu.org>
22417
22418 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
22419 vertical fonts. Allow them if face name is explicitly specified.
22420 Do not give up if we find a font that cannot be converted to an xlfd.
22421
22422 2001-11-10 Gerd Moellmann <gerd@gnu.org>
22423
22424 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
22425 instead of malloc/free.
22426
22427 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22428
22429 * xfaces.c (merge_face_vectors): Use braces to follow GNU
22430 Coding Standards.
22431 (Finternal_set_lisp_face_attribute): Likewise.
22432
22433 * buffer.c (Fbury_buffer): Likewise.
22434
22435 * indent.c (current_column_1): Remove unused variable `prev_col'.
22436
22437 * coding.c (encode_coding): Use precomputed value of `src'.
22438 (encode_coding): Remove unused variable `src_end'.
22439 (code_convert_region): Remove unused variables `count'.
22440
22441 2001-11-07 Jason Rumney <jasonr@gnu.org>
22442
22443 * w32term.c (x_display_and_set_cursor): Do not move system caret
22444 if cursor_glyph is NULL.
22445
22446 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22447
22448 * keymap.c (access_keymap): Fix compilation error.
22449
22450 2001-11-07 Miles Bader <miles@gnu.org>
22451
22452 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
22453
22454 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22455
22456 * intervals.c (graft_intervals_into_buffer):
22457 Remove #ifdef'd-out code.
22458 (graft_intervals_into_buffer): Remove unused variable `middle'.
22459
22460 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
22461 code (eval-current-buffer).
22462 Change doc-string comments to `new style' [w/`doc:' keyword].
22463
22464 2001-11-06 Richard M. Stallman <rms@gnu.org>
22465
22466 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
22467
22468 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
22469
22470 * lread.c (read1): Fix behavior with nested backquoting.
22471
22472 * keyboard.c (make_lispy_event): Check integerness and fix
22473 Lisp_Object/int mixup.
22474
22475 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22476
22477 * fns.c (copy_hash_table): Remove unused variable `v'.
22478
22479 * fontset.c (fontset_font_pattern): Remove unused variable
22480 `family_registry'.
22481
22482 * indent.c (current_column_1): Remove unused variable `prev_col'.
22483
22484 2001-11-05 Richard M. Stallman <rms@gnu.org>
22485
22486 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
22487
22488 * buffer.c (Fkill_buffer): Don't delete auto save file
22489 if buffer is modified.
22490
22491 2001-11-05 Andrew Innes <andrewi@gnu.org>
22492
22493 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
22494 CHECK_NUMBER_CDR.
22495
22496 2001-11-05 Richard M. Stallman <rms@gnu.org>
22497
22498 * unexelf.c (unexec): Minor changes; clean up comments.
22499
22500 2001-11-05 Sam Steingold <sds@gnu.org>
22501
22502 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
22503
22504 2001-11-05 Andreas Schwab <schwab@suse.de>
22505
22506 * sound.c (sound_perror): Save errno from being clobbered.
22507
22508 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
22509
22510 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
22511 the program image directly.
22512
22513 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22514
22515 * buffer.h (Fbuffer_local_value): Add prototype.
22516
22517 2001-11-04 Richard M. Stallman <rms@gnu.org>
22518
22519 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
22520 and CHECK_BUFFER.
22521
22522 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
22523 (record_char): Likewise.
22524
22525 * keyboard.c (make_lispy_event): Don't insist a drag event must
22526 move to a different buffer position. Instead, check for moving at
22527 least double_click_fuzz.
22528
22529 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
22530
22531 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
22532
22533 * indent.c (current_column_1, Fmove_to_column): Separate the code
22534 for display-table glyphs from the code for buffer text, to fix
22535 bugs in the former.
22536
22537 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
22538
22539 * buffer.c (Fbuffer_local_value): New function.
22540 (syms_of_buffer): Defsubr it.
22541
22542 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
22543 value of `cursor-in-non-selected-windows'.
22544
22545 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
22546 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
22547 (syms_of_xdisp): Initialize it.
22548
22549 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22550
22551 * xfns.c (Fx_create_frame): Doc fix.
22552
22553 * coding.c: Change doc-string comments to `new style' [w/`doc:'
22554 keyword].
22555
22556 * eval.c (top_level_value, top_level_set): Remove commented and
22557 #ifdef'd-out code.
22558 (Fdefvar): Fix usage in doc-string.
22559
22560 2001-11-03 Richard M. Stallman <rms@gnu.org>
22561
22562 * xfns.c: Include unistd.h, if it exists.
22563
22564 * editfns.c: Move the include of ctype.h after unistd.h.
22565
22566 * gmalloc.c: Test BROKEN_PROTOTYPES.
22567
22568 2001-11-03 Ken Raeburn <raeburn@gnu.org>
22569
22570 * lisp.h (CHECK_STRING_CAR): New macro.
22571 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
22572 treating XCAR and XCDR as lvalues.
22573 (openp): Use CHECK_STRING_CAR.
22574 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
22575
22576 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
22577
22578 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
22579 (SIGMASKTYPE): Define.
22580
22581 * syssignal.h (sigunblock): Don't define if already defined.
22582
22583 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22584
22585 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
22586 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
22587 Fix typos in comments.
22588
22589 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
22590 and #ifdef'd-out code.
22591 Fix and reindent comments.
22592
22593 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
22594
22595 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
22596 argument `i' in macros.
22597
22598 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
22599 `i' in macros.
22600
22601 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
22602 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
22603 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
22604 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
22605 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
22606 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
22607 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
22608 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
22609 in macros.
22610
22611 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
22612 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
22613 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
22614 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
22615 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
22616 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
22617 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
22618 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
22619 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
22620 (remove unused second argument).
22621
22622 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
22623
22624 * syntax.c (describe_syntax): New wrapper.
22625 (Finternal_describe_syntax_value): Rename from describe_syntax.
22626 Don't insert space at front and \n at the end.
22627 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
22628
22629 * regex.c (re_wctype): Try to fix some warnings.
22630 (regcomp, regexec): Don't forget the __restrict.
22631
22632 2001-11-02 Richard M. Stallman <rms@gnu.org>
22633
22634 * textprop.c (Fget_char_property): Doc fix.
22635
22636 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22637
22638 * process.c (Fstart_process): Add usage to doc-string.
22639
22640 * data.c (Fsetq_default): Ditto.
22641
22642 * callint.c (Finteractive): Ditto.
22643
22644 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
22645
22646 * macros.c: Don't include keymap.h any more.
22647
22648 2001-11-01 Richard M. Stallman <rms@gnu.org>
22649
22650 * data.c (Fmake_local_variable): Doc fix.
22651
22652 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
22653 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
22654
22655 * keymap.c (Fdescribe_buffer_bindings): Print character property
22656 bindings along with or instead of the buffer local map.
22657 Make the overriding maps override what they should.
22658
22659 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22660
22661 * window.c (grow_mini_window): Fix typo in comment.
22662
22663 2001-11-01 Gerd Moellmann <gerd@gnu.org>
22664
22665 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
22666 (XTset_vertical_scroll_bar): Likewise.
22667
22668 * xfns.c (x_build_heuristic_mask): Use four_corners_best
22669 instead of IMAGE_BACKGROUND.
22670
22671 * xfns.c (four_corners_best): Reindent.
22672
22673 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
22674 Handle :box so that it is possible to specify sexprs.
22675
22676 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
22677
22678 * s/hpux11.h: New file.
22679
22680 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22681
22682 * emacs.c (USAGE1): Show command line option --no-window-system
22683 instead of --no-windows in usage.
22684 (standard_args): Rename --no-windows to --no-window-system.
22685 (bug_reporting_address): Follow Emacs coding conventions.
22686
22687 * eval.c (Fcommandp): Doc fix.
22688 Change doc-string comments to `new style' [w/`doc:' keyword].
22689
22690 * frame.c (Fframe_live_p): Doc fix.
22691
22692 * buffer.c (selective-display-ellipses): Doc fix.
22693
22694 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22695
22696 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
22697
22698 * xfaces.c (realize_x_face): If C is not a single-byte character,
22699 set the face's colors_copied_bitwise_p instead of the defaulted_p
22700 members which have a different meaning.
22701 (free_face_colors): Do nothing for a face whose colors have been
22702 copied bitwise.
22703
22704 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
22705
22706 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22707
22708 * marker.c, mocklisp.c: Change doc-string comments to `new style'
22709 [w/`doc:' keyword].
22710
22711 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22712
22713 * fns.c (require_unwind): Return Lisp_Object.
22714
22715 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22716
22717 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
22718 (last-input-char): Revert doc-string to be the same as the
22719 doc-string of `last-input-event'.
22720
22721 * xdisp.c: Fix typos in comments.
22722
22723 2001-10-31 Gerd Moellmann <gerd@gnu.org>
22724
22725 * window.c (grow_mini_window): Handle case that the root
22726 window is already smaller than the nominal mininum height.
22727
22728 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
22729
22730 * emacs.c (main): Don't call keys_of_macros any more.
22731
22732 * lisp.h (keys_of_macros): Remove.
22733
22734 * macros.c (keys_of_macros): Remove.
22735
22736 * xfaces.c (Fface_attribute_relative_p): Declare args.
22737
22738 2001-10-30 Jason Rumney <jasonr@gnu.org>
22739
22740 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
22741 (enum_font_cb2): Ignore fonts with vertical orientation.
22742
22743 2001-10-30 Richard M. Stallman <rms@gnu.org>
22744
22745 * keyboard.c (Finput_pending_p): Doc fix.
22746
22747 2001-10-30 Gerd Moellmann <gerd@gnu.org>
22748
22749 * xterm.c (x_after_update_window_line): Don't run the code
22750 clearing in borders for rows whose visible height is 0.
22751
22752 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
22753 resized_p flag is set. If not set, use the much less flickering
22754 method previously used.
22755
22756 * dispnew.c (change_frame_size_1): Set frame's resized_p.
22757
22758 * frame.h (struct frame) <resized_p>: New member.
22759
22760 * lread.c (to_multibyte): Ensure read_buffer is at least twice
22761 as large as the number of bytes to convert.
22762
22763 * lread.c (to_multibyte): New function.
22764 (read1): Use it.
22765
22766 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
22767
22768 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
22769
22770 2001-10-30 Gerd Moellmann <gerd@gnu.org>
22771
22772 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
22773 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
22774 if the row's fill_line_p is set and drawing the last glyph with
22775 DRAW_IMAGE_{RAISED,SUNKEN}.
22776
22777 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
22778
22779 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
22780
22781 * xmenu.c: Include coding.h and charset.h.
22782 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
22783 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
22784 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
22785 Explicitly set wv->help. Use `TRUE' rather than `True'.
22786 (menu_help_callback): Use empty_string.
22787
22788 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
22789 (Fx_popup_dialog): Explicitly init f.
22790 (w32_menu_display_help): Use empty_string.
22791
22792 2001-10-29 Richard M. Stallman <rms@gnu.org>
22793
22794 * fns.c (Frequire): Detect recursive try to require the same
22795 feature 3 or more levels deep, and get error.
22796 (require_unwind): New subroutine.
22797 (require_nesting_list): New variable.
22798 (syms_of_fns): Init and staticpro it.
22799
22800 * print.c (print_object): Clarify indication of insertion type.
22801
22802 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
22803
22804 * coding.c (syms_of_coding): Document that locale-coding-system is
22805 used for decoding input on X.
22806
22807 * window.c (Fscroll_left, Fscroll_right): Doc fix.
22808
22809 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22810
22811 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
22812 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
22813
22814 2001-10-29 Gerd Moellmann <gerd@gnu.org>
22815
22816 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
22817 use NO_CURSOR if cursor_in_non_selected_windows is false.
22818
22819 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
22820 the slant attribute if FRAME is t.
22821
22822 * xfns.c (x_set_internal_border_width): Set frame garbaged
22823 when X window doesn't exist yet.
22824
22825 * xterm.c (x_after_update_window_line): Clear internal border
22826 in different circumstances.
22827
22828 * xterm.c (XTread_socket) <KeyPress>: Don't use
22829 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
22830 <handa@etl.go.jp>.
22831
22832 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
22833
22834 * m/ibms390.h: New file. From Adam Thornton
22835 <athornton@sinenomine.net>.
22836
22837 2001-10-28 Gerd Moellmann <gerd@gnu.org>
22838
22839 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
22840
22841 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
22842 a loop counter.
22843
22844 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22845
22846 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
22847
22848 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
22849 keyword].
22850 Fix typos in comments.
22851
22852 * emacs.c (bug_reporting_address): New function.
22853 Use it when displaying usage message.
22854
22855 * minibuf.c (read_minibuf): Remove unused external declaration of
22856 variable `Qread_only'.
22857
22858 * keymap.c (access_keymap): Remove unused variable `charset'.
22859
22860 2001-10-28 Miles Bader <miles@gnu.org>
22861
22862 * xfaces.c (merge_face_heights): Handle TO being relative as well.
22863 Remove #ifdef'd-out code.
22864 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
22865 (syms_of_xfaces): Initialize them.
22866
22867 2001-10-27 Jason Rumney <jasonr@gnu.org>
22868
22869 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
22870 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
22871 position using the system caret.
22872
22873 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
22874 (w32_system_caret_height, w32_system_caret_x)
22875 (w32_system_caret_y): New variables for tracking system caret.
22876 (w32_initialize): Initialize them.
22877 (x_display_and_set_cursor): Make system caret follow the active cursor.
22878
22879 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
22880 New messages types.
22881
22882 * w32term.c (note_mouse_highlight): Clear old help_echo.
22883
22884 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22885
22886 * xterm.c: Fix typo in a comment.
22887
22888 * emacs.c: Fix typos in comments.
22889 Remove unnecessary spaces.
22890 Change doc-string comments to `new style' [w/`doc:' keyword].
22891 (USAGE2): Fix typos in usage string.
22892
22893 * xterm.c: Fix typo in a comment.
22894
22895 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
22896 emacs.c.
22897
22898 2001-10-27 Gerd Moellmann <gerd@gnu.org>
22899
22900 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
22901 instead of 1/2 line_height in the heuristic for skipping
22902 farther backward when target_y was not reached.
22903
22904 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
22905 Display errno only if non-zero.
22906 (sound_warning): New function.
22907 (vox_configure): Don't treat failing to set sample rate as error.
22908 (various places): Improve error messages.
22909
22910 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
22911
22912 * fileio.c (Faccess_file): Run the argument filename through
22913 Fexpand_file_name, before using it.
22914
22915 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
22916 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
22917
22918 2001-10-26 Gerd Moellmann <gerd@gnu.org>
22919
22920 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
22921
22922 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
22923 Fix clearing in the case of scroll bars on the right.
22924
22925 2001-10-26 Juanma Barranquero <lektu@terra.es>
22926
22927 * w32gui.h (XImage): Add a dummy typedef.
22928
22929 2001-10-26 Gerd Moellmann <gerd@gnu.org>
22930
22931 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
22932
22933 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
22934
22935 * frame.c (Fframe_parameter): Fix last change.
22936
22937 * fileio.c: Revert last change (which removed old commented-out
22938 version of expand-file-name). Add a comment that explains why
22939 this old version should not be removed.
22940
22941 2001-10-25 Gerd Moellmann <gerd@gnu.org>
22942
22943 * frame.c (Fframe_parameter): Fix a bug whereby some
22944 ``artificial'' frame parameters, like `minibuffer' were not
22945 obtained by calling Fframe_parameters.
22946
22947 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
22948 cursor differently.
22949
22950 * xdisp.c (move_it_vertically_backward): Compute line height
22951 differently. Add heuristic to try to be more compatible to 20.x.
22952
22953 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
22954
22955 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
22956
22957 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
22958 boolean.
22959
22960 2001-10-25 Miles Bader <miles@gnu.org>
22961
22962 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
22963 BG is a pointer to a structure, not a structure.
22964 (gif_format, png_format): Add missing commas.
22965
22966 2001-10-24 Richard M. Stallman <rms@gnu.org>
22967
22968 * xfaces.c (Fface_attributes_as_vector): New function.
22969 (syms_of_xfaces): Defsubr it.
22970
22971 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22972
22973 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
22974 variable `area'.
22975
22976 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22977
22978 * search.c (scan_newline): Remove unused variable `selective_display'.
22979
22980 2001-10-25 Miles Bader <miles@gnu.org>
22981
22982 * dispextern.h (struct image): Add `background',
22983 `background_valid', and `background_transparent' fields.
22984 (image_background, image_background_transparent): New declarations.
22985 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
22986 * xfns.c (image_background, image_background_transparent)
22987 (four_corners_best): New functions.
22988 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22989 (gs_format): Add `:background' entry.
22990 (lookup_image): Set IMG's background color if specified.
22991 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22992 when appropriate.
22993 (x_clear_image_1): Reset `background_valid' and
22994 `background_transparent_valid' fields.
22995 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22996 calculating it here. Set IMG's background_transparent field.
22997 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22998 (enum png_keyword_index): Add PNG_BACKGROUND.
22999 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
23000 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
23001 (enum gif_keyword_index): Add GIF_BACKGROUND.
23002 (enum gs_keyword_index): Add GS_BACKGROUND.
23003 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
23004 Pre-calculate image background color where necessary.
23005 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
23006 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
23007 color to use for image glyph reliefs.
23008
23009 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23010
23011 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
23012 in full-width rows.
23013
23014 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23015 Fix clearing of area not covered by scroll bar.
23016
23017 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23018
23019 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
23020 and `real_start'.
23021 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
23022 (glyph_rect): Remove unused variable `area'.
23023
23024 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23025
23026 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
23027
23028 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
23029 (row_containing_pos): Take additional argument DY.
23030 Treat rows ending in middle of char differently.
23031 (display_line): Handle tabs on window systems differently.
23032
23033 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
23034 with additional argument.
23035
23036 * dispextern.h (row_containing_pos): Adjust prototype.
23037
23038 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
23039 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
23040 (try_window_id, try_window_reusing_current_matrix)
23041 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
23042 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
23043
23044 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23045
23046 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
23047 gnuemacs).
23048 (HAVE_BOXES): Fix typo in comment.
23049 (push_menu_pane): Fix typo in comment.
23050
23051 * xdisp.c (display_prop_string_p): Remove unused local declaration
23052 of `Qwhen'.
23053 (single_display_prop_string_p): Remove unused local declarations
23054 of `Qwhen' and `Qmargin'.
23055 (string_buffer_position): Remove unused variable `around'.
23056 (store_frame_title): Remove unused variable `width'.
23057
23058 * window.c: Don't define max.
23059 (coordinates_in_window): Remove unused variable `uy'.
23060
23061 * widget.c: Don't define max.
23062
23063 * process.c: Don't define max.
23064 (create_process): Remove unused variable `buffer'.
23065
23066 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23067
23068 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
23069
23070 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
23071
23072 * xfaces.c (Finternal_set_lisp_face_attribute)
23073 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
23074 frame is on a windowed display.
23075
23076 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23077
23078 * dispnew.c (sync_window_with_frame_matrix_rows):
23079 Fix handling of windows which aren't full-width, fix handling
23080 of marginal areas.
23081
23082 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
23083
23084 2001-10-23 Andreas Schwab <schwab@suse.de>
23085
23086 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
23087 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
23088
23089 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23090
23091 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
23092 REAL_END. Notice if cursor gets overwritten.
23093 (notice_overwritten_cursor): Take X positions as parameters.
23094 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
23095 around call to x_draw_glyphs.
23096
23097 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23098
23099 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
23100 instead of C) and usage.
23101
23102 * editfns.c (char-to-string): Fix argument names (use CHAR instead
23103 of C) and usage.
23104
23105 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
23106 `left', `max_width' and `max_height'.
23107
23108 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23109
23110 * xdisp.c (display_line): For a tab continued to the next line,
23111 set row's ends_in_middle_of_char_p.
23112
23113 2001-10-22 Gerd Moellmann <gerd@gnu.org>
23114
23115 * xdisp.c (display_line): Fix computation of continuation lines
23116 width for TABs.
23117
23118 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23119
23120 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
23121 `Qlaplace'.
23122
23123 * fileio.c: Remove unused code.
23124
23125 2001-10-22 Miles Bader <miles@gnu.org>
23126
23127 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
23128 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
23129 Remove `DOC_STRINGS_IN_COMMENTS' cases.
23130
23131 2001-10-21 Jason Rumney <jasonr@gnu.org>
23132
23133 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
23134
23135 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
23136
23137 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
23138 (Finsert_string): Avoid the multi-line string literals warning.
23139
23140 2001-10-22 Miles Bader <miles@gnu.org>
23141
23142 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
23143 (Fdocumentation): Don't use it.
23144 (syms_of_doc): Don't initialize it.
23145
23146 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
23147 * print.c (Fwith_output_to_temp_buffer): Likewise.
23148 * window.c (Fsave_window_excursion): Likewise.
23149 * editfns.c (Fsave_excursion, Fsave_current_buffer)
23150 (Fsave_restriction): Likewise.
23151 * eval.c (Frun_hooks, Frun_hook_with_args)
23152 (Frun_hook_with_args_until_failure)
23153 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
23154 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
23155 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
23156 (Funwind_protect, Fcondition_case): Likewise.
23157 * coding.c (Ffind_operation_coding_system): Likewise.
23158 * keyboard.c (Ftrack_mouse): Likewise.
23159
23160 2001-10-21 Miles Bader <miles@gnu.org>
23161
23162 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
23163 (Fmake_hash_table): Add usage: string to doc string.
23164 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
23165 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
23166 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
23167 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
23168 (Fml_prefix_argument_loop): Likewise.
23169
23170 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23171
23172 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
23173
23174 * sysdep.c (init_sys_modes): Change doc-string comments to `new
23175 style' [w/`doc:' keyword].
23176
23177 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
23178 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
23179 comments to `new style' [w/`doc:' keyword].
23180
23181 2001-10-21 Jason Rumney <jasonr@gnu.org>
23182
23183 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
23184
23185 * w32term.c (remember_mouse_glyph): New function.
23186 (w32_mouse_position): Use it.
23187 (note_mouse_movement): If the mouse moved off the glyph, remember
23188 its new position.
23189
23190 * w32term.h (struct w32_output): Correct spelling of x_compatible.
23191 (w32_display_info): Add mouse_face_overlay.
23192
23193 * w32term.c (notice_overwritten_cursor): Renamed from
23194 note_overwritten_text_cursor. Rewritten to take glyph widths into
23195 account.
23196 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
23197 (fast_find_string_pos): New function.
23198 (fast_find_position): Return the correct vpos. Add parameter
23199 STOP. In the final row, stop before glyphs having STOP as object.
23200 Don't consider glyphs that are not from a buffer.
23201 (fast_find_position) [0]: Add a presumably more correct version
23202 for after 21.1.
23203 (expose_window_tree, expose_frame): Don't compute intersections here.
23204 (expose_window): Do it here instead.
23205 (expose_window_tree, expose_window, expose_line): Return 1 when
23206 overwriting mouse-face.
23207 (expose_window): If W is the window currently being updated, mark
23208 the frame garbaged.
23209 (expose_frame): If mouse-face was overwritten, redo it.
23210 (x_use_underline_position_properties): New variable.
23211 (syms_of_xterm): DEFVAR_BOOL it.
23212 (x_draw_glyph_string): Add comment to use it in future.
23213 (x_draw_glyph_string): Restore clipping after drawing box.
23214 Fix a computation of the underline position.
23215 (w32_get_glyph_string_clip_rect): Minor cleanup.
23216 (x_fill_stretch_glyph_string): Remove an assertion.
23217 (x_produce_glyphs): Don't convert multibyte characters
23218 to unibyte characters in unibyte buffers.
23219 (cursor_in_mouse_face_p): New function.
23220 (x_draw_stretch_glyph_string): Use it to choose a different GC
23221 when drawing a cursor within highlighted text. Don't draw
23222 background again if it has already been drawn.
23223 (x_draw_glyph_string_box): Don't draw a full-width
23224 box just because the glyph row's full_width_p flag is set.
23225 (x_draw_glyphs): Fix computation of rightmost x for
23226 full-width rows.
23227 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
23228 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
23229 change bottom shadow accordingly. Some cleanup.
23230 (x_update_window_end): Handle overwritten mouse face
23231 also for tool bar windows.
23232 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
23233 DRAW is DRAW_IMAGE_RAISED.
23234 (clear_mouse_face): Return 1 if text with mouse face was
23235 actually redrawn. Make the function static.
23236 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
23237 optimize away highlighting if we pass over that same overlay again.
23238 (note_mouse_highlight): Call mouse_face_overlay_overlaps
23239 to detect a case where we have to highlight a different region
23240 despite not having left the currently highlighted region.
23241 Set mouse_face_overlay in the x_display_info. Avoid changing the
23242 mouse pointer shape when show_mouse_face has already done it, or
23243 there is no need. Handle mouse-face and help-echo in strings.
23244 (glyph_rect): New function.
23245 (w32_mouse_position): Use it to raise the threshold for mouse
23246 movement event generation.
23247 (w32_initialize_display_info): Initialize the x_display_info's
23248 mouse_face_overlay.
23249 (w32_set_vertical_scroll_bar): Don't clear a zero height
23250 or width area.
23251 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
23252 a widget to zero height.
23253
23254 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
23255 Protect unibyte strings created by replacing their multibyte
23256 equivalents in menu_items.
23257 (w32_menu_show): Don't overwrite an item's name with its key
23258 description in case the description is a multibyte string.
23259 (single_submenu): Some cleanup.
23260
23261 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
23262 (postprocess_image): New function.
23263 (lookup_image): Call it for all image types except PostScript.
23264 (x_kill_gs_process): Call postprocess_image.
23265 (tiff_error_handler, tiff_warning_handler): New functions.
23266 (tiff_load): Install them as handlers.
23267 (x_kill_gs_process): Recognize if someone has cleared the image
23268 cache under us.
23269 (valid_image_p): Protect better against invalid image
23270 specifications. Previous code could signal an error.
23271 (Fx_hide_tip, Fshow_tip): Doc fix.
23272 (Fv_max_tooltip_size): New variable.
23273 (syns_of_xfns): DEFVAR_LISP it.
23274 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
23275 window buffer to *tip* right after creating the frame. Set frame's
23276 window_width. Use a maximum tooltip size specified by
23277 Vx_max_tooltip_size, if that has valid contents.
23278 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
23279 Make sure the tooltip is completely visible.
23280 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
23281 (Fx_create_frame): Adjust the frame's height for presence
23282 of the tool bar before calling x_figure_window_size.
23283 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
23284 when the window gets smaller.
23285 (x_set_foreground_color): Set frame's cursor_pixel.
23286 (x_set_foreground_color, x_set_background_color): Cleaned up.
23287 (x_set_font): Handle case of x_new_fontset returning the same name
23288 as before, although there was a change in fontsets.
23289
23290 2001-10-21 Miles Bader <miles@gnu.org>
23291
23292 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
23293 (Flogxor): Add usage: string to doc string.
23294 * charset.c (Fstring): Likewise.
23295 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
23296 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
23297
23298 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23299
23300 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
23301
23302 * alloc.c: Reindent DEFUNs with doc: keywords.
23303
23304 * abbrev.c (Finsert_abbrev_table_description): Reindent.
23305
23306 * frame.c: Change doc-string comments to `new style' [w/`doc:'
23307 keyword].
23308
23309 See ChangeLog.9 for earlier changes.
23310
23311 ;; Local Variables:
23312 ;; coding: iso-2022-7bit
23313 ;; End:
23314
23315 Copyright (C) 2001, 2002, 2003, 2004, 2005,
23316 2006 Free Software Foundation, Inc.
23317 Copying and distribution of this file, with or without modification,
23318 are permitted provided the copyright notice and this notice are preserved.
23319
23320 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4