12007-06-02  Chong Yidong  <cyd@stupidchicken.com>
2
3	* Version 22.1 released.
4
5	* xfns.c (x_set_name_internal): Undo last change.
6
72007-06-01  Richard Stallman  <rms@gnu.org>
8
9	* xfns.c (x_encode_text): Add GCPRO.
10	(x_set_name_internal): Separate USE_GTK and non-USE_GTK cases.
11
122007-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13
14	* xfns.c (x_set_name_internal): Save encoded name before
15	x_encode_text in case string data is relocated.
16
172007-05-31  Richard Stallman  <rms@gnu.org>
18
19	* buffer.c (syms_of_buffer): Doc fix.
20
212007-05-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22
23	* xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
24	around current_column call.
25
262007-05-24  Chong Yidong  <cyd@stupidchicken.com>
27
28	* xdisp.c (redisplay_window): If first window line is a
29	continuation line, recompute the new window start instead of
30	recentering.
31
322007-05-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33
34	* macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
35	Call mac_wakeup_from_rne on window size change.
36
372007-05-22  Richard Stallman  <rms@gnu.org>
38
39	* xterm.c (x_connection_closed): Remove NO_RETURN.
40
412007-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
42
43	* syntax.c (skip_chars): Update syntax-table only after we checked that
44	the new location is valid.
45
462007-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
47
48	* macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
49	mac_get_window_bounds.
50
512007-05-17  Glenn Morris  <rgm@gnu.org>
52
53	* m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
54
552007-05-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
56
57	* macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
58	dead key repeat and up events.
59
602007-05-13  Chong Yidong  <cyd@stupidchicken.com>
61
62	* xterm.c (XTread_socket): Revert last change.
63
642007-05-12  Chong Yidong  <cyd@stupidchicken.com>
65
66	* image.c (pbm_load): Correctly check image size for greyscale pbm.
67
68	* xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
69
702007-05-07  Stefan Monnier  <monnier@iro.umontreal.ca>
71
72	* editfns.c (Ftranspose_regions): Yet another int/Lisp_Object mixup (YAILOM)
73
742007-05-06  Richard Stallman  <rms@gnu.org>
75
76	* process.c: Undo May 3 change.
77
782007-05-03  Per Cederqvist  <ceder@lysator.liu.se>  (tiny change)
79
80	* process.c (Faccept_process_output): Revert 2006-03-22 change so
81	that the third argument once again is in microseconds (not
82	milliseconds).  This makes it compatible with Emacs 21 and
83	earlier.  Problem found by Henrik Rindl,Av(Bw.
84
852007-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
86
87	* macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
88	(Fx_popup_dialog) [MAC_OSX]: Likewise.
89
902007-04-29  Richard Stallman  <rms@gnu.org>
91
92	* insdel.c (replace_range): For undo, record insertion first.
93
942007-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
95
96	* xdisp.c (try_window_reusing_current_matrix): Fix number of
97	disabled lines.
98
992007-04-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
100
101	* xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
102
103	* gtkutil.c (xg_update_menubar, create_menus): Create empty
104	submenu for menu bar items.
105
1062007-04-24  Chong Yidong  <cyd@stupidchicken.com>
107
108	* xdisp.c (redisplay_window): Use BEG_UNCHANGED and END_UNCHANGED
109	values of the actual window.
110
1112007-04-23  Richard Stallman  <rms@gnu.org>
112
113	* process.c (Fstart_process): Doc fix.
114
1152007-04-23  Eli Zaretskii  <eliz@gnu.org>
116
117	* process.c (Fstart_process): Doc fix.
118
1192007-04-22  Richard Stallman  <rms@gnu.org>
120
121	* abbrev.c (Fdefine_abbrev): Doc fix.
122
123	* keymap.c (Fdefine_key): Minor doc fix.
124
1252007-04-21  Glenn Morris  <rgm@gnu.org>
126
127	* keymap.c (Fdefine_key): Fix info ref in doc string.
128
1292007-04-20  Glenn Morris  <rgm@gnu.org>
130
131	* sysdep.c (init_system_name): Don't accept localhost.localdomain.
132
1332007-04-19  Juanma Barranquero  <lekktu@gmail.com>
134
135	* minibuf.c (Fminibuffer_contents, Fminibuffer_contents_no_properties)
136	(Fminibuffer_completion_contents, Fdelete_minibuffer_contents):
137	Doc fixes.
138
1392007-04-16  Chong Yidong  <cyd@stupidchicken.com>
140
141	* dispnew.c (adjust_frame_glyphs_for_frame_redisplay):
142	Set garbaged flag in presence of window margins.
143	(showing_window_margins_p): New function.
144
145	* xdisp.c (cursor_row_p): Only end row on newline if it's a
146	display string.  Suggested by Lennart Borgman.
147
1482007-04-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
149
150	* alloc.c (mem_insert): Set min_heap_address and max_heap_address
151	if they are not yet initialized.
152
1532007-04-15  Chong Yidong  <cyd@stupidchicken.com>
154
155	* xdisp.c (redisplay_window): When deciding whether or not to
156	recenter, don't use the reset values of BEG_UNCHANGED and
157	END_UNCHANGED.
158
1592007-04-13  Kim F. Storm  <storm@cua.dk>
160
161	* buffer.c (Fkill_buffer): gcpro BUF during kill_buffer_processes
162	and check that buffer is still alive upon return.
163
1642007-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
165
166	* macterm.c [!TARGET_API_MAC_CARBON]: Include Displays.h.
167	(mac_screen_config_changed): New variable.
168	(mac_handle_dm_notification, init_dm_notification_handler)
169	(mac_get_screen_info): New functions.
170	[MAC_OS8] (main): Call init_dm_notification_handler.
171	(mac_initialize) [MAC_OSX]: Likewise.
172	(XTread_socket): Call mac_get_screen_info if screen config changed.
173	(mac_initialized): Make static.
174	(mac_initialize_display_info): Remove function.
175	(mac_term_init): Call mac_get_screen_info.  Add partial contents of
176	mac_initialize_display_info.
177
1782007-04-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
179
180	* mac.c (xrm_get_preference_database, Fmac_get_preference)
181	[TARGET_API_MAC_CARBON]: Use CFPreferencesAppSynchronize.
182
183	* macterm.c [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event):
184	Use GetGlobalMouse instead of GetMouse and LocalToGlobal.
185	(mac_initialize_display_info) [MAC_OSX]: Use CGRectZero.
186	(mac_initialize_display_info) [!MAC_OSX]: dpyinfo->height and
187	dpyinfo->width are those of whole screen.
188
1892007-04-10  Chong Yidong  <cyd@stupidchicken.com>
190
191	* xdisp.c (note_mode_line_or_margin_highlight): Don't decrement
192	glyph pointer before start of glyph row.
193
1942007-04-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
195
196	* s/darwin.h (__restrict, struct kboard): Remove outdated workarounds.
197	(C_SWITCH_SYSTEM): Remove `-I../mac/src'.
198
1992007-04-09  Martin Rudalics  <rudalics@gmx.at>
200
201	* indent.c (Fmove_to_column): Set next_boundary with correct start pt.
202
2032007-04-08  Richard Stallman  <rms@gnu.org>
204
205	* xdisp.c (syms_of_xdisp) <message-log-max>: Default 100.
206
2072007-04-07  Chong Yidong  <cyd@stupidchicken.com>
208
209	* editfns.c (Ftranspose_regions): Validate interval before setting
210	text properties.
211
2122007-04-03  Eli Zaretskii  <eliz@gnu.org>
213
214	* emacs.c (main): Fix instructions for building Emacs for profiling.
215
2162007-04-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
217
218	* gtkutil.c (xg_update_menubar): Call g_list_next after moving
219	menu bar item.
220
2212007-04-02  Juanma Barranquero  <lekktu@gmail.com>
222
223	* print.c (Fprin1_to_string): Use macro SPECPDL_INDEX.
224
2252007-04-01  Chong Yidong  <cyd@stupidchicken.com>
226
227	* keymap.c (Fcommand_remapping): New optional argument.
228	(where_is_internal): Use new keymaps argument.
229	(Fkey_binding): Caller changed.
230
231	* keyboard.c (command_loop_1): Caller changed.
232
2332007-03-31  Eli Zaretskii  <eliz@gnu.org>
234
235	* window.c (Fget_lru_window): Doc fix.
236
2372007-03-30  Chong Yidong  <cyd@stupidchicken.com>
238
239	* undo.c (Fprimitive_undo): Give clearer error message when trying
240	to change text properties outside accessible part of buffer.
241
2422007-03-29  Kim F. Storm  <storm@cua.dk>
243
244	* process.c (wait_reading_process_output) [HAVE_PTYS]:
245	When EIO happens, clear channel from descriptor masks before raising
246	SIGCHLD signal to avoid busy loop between read and sigchld_handler.
247	(sigchld_handler): Remove sleep (2007-03-11 & 2007-03-26 changes).
248
2492007-03-29  Juanma Barranquero  <lekktu@gmail.com>
250
251	* buffer.c (Fset_buffer_major_mode): Check that BUFFER is valid.
252
253	* process.c (Fformat_network_address): Return nil when the
254	argument vector contains invalid values.
255
2562007-03-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
257
258	* gmalloc.c [HAVE_GTK_AND_PTHREAD]: Define USE_PTHREAD.
259	[USE_PTHREAD]: Include pthread.h.
260	(malloc_init_once_control, _malloc_mutex) [USE_PTHREAD]: New variables.
261	(malloc_initialize_1): New function created from __malloc_initialize.
262	(__malloc_initialize): Use it.
263	(LOCK, UNLOCK): New macros to make malloc etc. thread safe.
264	(_malloc_internal, _free_internal, _realloc_internal): Use them.
265
266	* lread.c (readchar): Extend BLOCK_INPUT block to ferror/clearerr.
267
2682007-03-27  Juanma Barranquero  <lekktu@gmail.com>
269
270	* process.c (Fformat_network_address): Make args array big enough
271	to format IPv6 addresses.
272
2732007-03-27  Glenn Morris  <rgm@gnu.org>
274
275	* m/hp800.h: Restore HP-UX support (removed 2007-01-29).
276
2772007-03-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
278
279	* macfns.c (Fx_display_mm_height, Fx_display_mm_width): Scale whole
280	screen size in pixels by millimeters per pixel of main display.
281
282	* macselect.c (get_scrap_target_type_list, x_own_selection):
283	Move assignments outside predicate macros.
284	(Vselection_converter_alist): Doc fix.
285
286	* macterm.c (create_text_encoding_info_alist): Move assignments
287	outside predicate macros.
288	(mac_initialize_display_info) [MAC_OSX]: dpyinfo->height and
289	dpyinfo->width are those of whole screen.
290
2912007-03-26  Sam Steingold  <sds@gnu.org>
292
293	* process.c (sigchld_handler): Delay by 1ms instead of 1s to
294	alleviate sluggishness (the original problem is still fixed).
295
2962007-03-25  Kim F. Storm  <storm@cua.dk>
297
298	* intervals.c (merge_properties): Use explicit loop instead of
299	Fplist_member to avoid QUIT.  Don't use Fcdr.
300	(intervals_equal): Likewise.  Rewrite loop to perform length check
301	on the fly rather than calling Flength.  Don't use Fcar.
302
3032007-03-24  Eli Zaretskii  <eliz@gnu.org>
304
305	* editfns.c (Fgoto_char): Doc fix.
306
307	* indent.c (Findent_to): Doc fix.
308
3092007-03-24  Chong Yidong  <cyd@stupidchicken.com>
310
311	* editfns.c (Ftranspose_regions): Use set_text_properties_1
312	instead of Fset_text_properties to avoid GC.  Signal after change.
313
3142007-03-24  Eli Zaretskii  <eliz@gnu.org>
315
316	* xfns.c (Fx_show_tip): Doc fix.
317
318	* macfns.c (Fx_show_tip): Doc fix.
319
320	* w32fns.c (Fx_show_tip): Doc fix.
321
3222007-03-23  Kim F. Storm  <storm@cua.dk>
323
324	* intervals.c (merge_properties, intervals_equal):
325	Use Fplist_member instead of Fmemq to find properties.
326
3272007-03-23  Glenn Morris  <rgm@gnu.org>
328
329	* unexhp9k800.c: Restore file with clarified legal status.
330	* m/sr2k.h: Restore since dependency unexhp9k800.c is restored.
331
3322007-03-22  Chong Yidong  <cyd@stupidchicken.com>
333
334	* widget.c (EmacsFrameSetCharSize): Catch X errors.
335
3362007-03-22  Kenichi Handa  <handa@m17n.org>
337
338	* fileio.c (Fcopy_file): Call barf_or_query_if_file_exists with
339	non-encoded file name.
340	(Frename_file): Likewise.
341	(Fadd_name_to_file): Likewise.
342	(Fmake_symbolic_link): Likewise.
343
3442007-03-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
345
346	* Makefile.in (alloca.o, gtkutil.o): Depend on systime.h.
347	(dired.o, editfns.o, fileio.o, msdos.o): Depend on atimer.h.
348	(dosfns.o, window.o, fns.o, macselect.o): Depend on atimer.h and
349	systime.h.
350	(term.o, print.o, lread.o): Depend on blockinput.h, atimer.h, and
351	systime.h.
352	(macfns.o): Remove duplicate dependency on systime.h.
353
354	* dispnew.c (Fopen_termscript): Add BLOCK_INPUT around fclose.
355	(Fsend_string_to_terminal): Add BLOCK_INPUT around fwrite.
356
357	* fileio.c (do_auto_save_unwind): Add BLOCK_INPUT around fclose.
358	(Fdo_auto_save): Add BLOCK_INPUT around fwrite.
359
360	* keyboard.c (record_char): Add BLOCK_INPUT around fwrite.
361	(Fopen_dribble_file): Add BLOCK_INPUT around fclose.
362
363	* lread.c: Include blockinput.h.
364	(readchar, Fget_file_char): Add BLOCK_INPUT around getc.
365	(unreadchar): Add BLOCK_INPUT around ungetc.
366	(load_unwind): Add BLOCK_INPUT around fclose.
367
368	* print.c: Include blockinput.h.
369	(Fredirect_debugging_output): Add BLOCK_INPUT around fclose.
370
371	* process.c (Fmake_network_process) [HAVE_GETADDRINFO]:
372	Clear immediate_quit before calling freeaddrinfo.
373	Add BLOCK_INPUT around freeaddrinfo.
374
375	* term.c: Include blockinput.h.
376	(write_glyphs, insert_glyphs): Add BLOCK_INPUT around fwrite.
377
3782007-03-19  Richard Stallman  <rms@gnu.org>
379
380	* keyboard.c (NUM_RECENT_KEYS): Bump up to 300.
381
382	* buffer.c (syms_of_buffer): Doc fix.
383
3842007-03-18  Chong Yidong  <cyd@stupidchicken.com>
385
386	* image.c (pbm_load): Signal error for invalid image size.
387
3882007-03-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
389
390	* macterm.c (note_mouse_movement): Don't return immediately for
391	LeaveNotify case.
392
393	* macmenu.c (popup_activated_flag): New variable.
394	(x_activate_menubar, mac_menu_show): Set it during menu tracking.
395	(popup_activated): New function.
396
397	* xdisp.c (redisplay_internal, note_mouse_highlight):
398	Check popup_activated for MAC_OS.
399
4002007-03-17  Juanma Barranquero  <lekktu@gmail.com>
401
402	* buffer.c (syms_of_buffer) <buffer-display-table>: Doc fix.
403	Reported by Nikolaj Schumacher <n_schumacher@web.de>.
404
4052007-03-17  Richard Stallman  <rms@gnu.org>
406
407	* dired.c (file_name_completion): gcpro NAME.
408
4092007-03-17  Chong Yidong  <cyd@stupidchicken.com>
410
411	* xdisp.c (try_window_id): Increment matrix positions if the
412	buffer's byte count has increased, but not the character count.
413
4142007-03-12  Andreas Schwab  <schwab@suse.de>
415
416	* lisp.h: Declare check_obarray.
417
418	* process.c (Fdelete_process): Properly handle deletion of first
419	element of deleted_pid_list.
420	(create_process): Declare pid as pid_t.
421
4222007-03-12  Kim F. Storm  <storm@cua.dk>
423
424	* process.c (sigchld_handler): Change type of pid to pid_t.
425	Scan deleted_pid_list explicitly to avoid using Fmember which don't
426	know about mark bits and make_fixnum_or_float which may malloc.
427	Reported by Andreas Schwab.
428
429	* keyboard.c (read_key_sequence): Store original event into keybuf
430	when replaying sequence with local keymap(s) from string.
431
4322007-03-12  Glenn Morris  <rgm@gnu.org>
433
434	* editfns.c (Fdecode_time, Fencode_time): Doc fix ("daylight
435	savings" to "daylight saving").
436
4372007-03-11  Sam Steingold  <sds@gnu.org>
438
439	* process.c (sigchld_handler): Sleep before wait3 to avoid a busyloop.
440
4412007-03-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
442
443	* macfns.c (Fx_server_vendor): Change vendor string to "Apple Inc.".
444
4452007-03-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
446
447	* macterm.c [USE_CARBON_EVENTS] (mac_handle_mouse_event):
448	Ignore mouse wheel movement on title bar or tool bar.
449
4502007-03-10  Chong Yidong  <cyd@stupidchicken.com>
451
452	* keyboard.c (help_form_saved_window_configs): New var.
453	(read_char_help_form_unwind): New function.
454	(read_char): Don't restore window configuration if a mouse click
455	arrives while the help form is being displayed.
456
4572007-03-10  Kim F. Storm  <storm@cua.dk>
458
459	* xdisp.c (redisplay_window): Don't automatically select a new window
460	start for a contination line during mouse-click.
461
4622007-03-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
463
464	* xterm.c (handle_one_xevent): Ignore buttons > 3 for the tool bar.
465
4662007-03-09  Juanma Barranquero  <lekktu@gmail.com>
467
468	* keymap.c (Fdescribe_buffer_bindings): Check that BUFFER is valid.
469
4702007-03-08  Richard Stallman  <rms@gnu.org>
471
472	* keyboard.c (syms_of_keyboard): Doc fix.
473
4742007-03-08  Chong Yidong  <cyd@stupidchicken.com>
475
476	* minibuf.c (Ftry_completion): Don't short circuit if
477	completion-ignore-case is non-nil.
478
4792007-03-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
480
481	* macfns.c (mac_set_scroll_bar_width, mac_frame_parm_handlers):
482	Undo 2006-03-06 changes.
483
484	* macterm.c (XTset_vertical_scroll_bar) [MAC_OSX]: Don't show scroll
485	bar if its width is smaller than that of Aqua small scroll bar.
486
4872007-03-07  Stefan Monnier  <monnier@iro.umontreal.ca>
488
489	* minibuf.c (read_minibuf): Bind inhibit-read-only a bit longer so as
490	to handle correctly prompts with read-only property.
491
4922007-03-06  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
493
494	* sound.c (wav_play): Check header->data_length to see how much we
495	shall read.
496	(alsa_period_size): Convert ALSA period size in frames to bytes.
497	(alsa_write): Return if frames is zero.
498
4992007-03-06  Kenichi Handa  <handa@m17n.org>
500
501	* xselect.c (Vselection_coding_system): Documentation improved.
502
5032007-03-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
504
505	* macterm.c (x_scroll_bar_create, XTread_socket): Replace #if
506	USE_TOOLKIT_SCROLL_BARS with #ifdef USE_TOOLKIT_SCROLL_BARS.
507	(x_set_window_size): Call SET_FRAME_GARBAGED.  Clear window if
508	internal border width has changed.
509
510	* macterm.h (struct mac_output): New member `internal_border_width'.
511
5122007-03-04  Richard Stallman  <rms@gnu.org>
513
514	* window.c (Fdisplay_buffer): Doc fix.
515
5162007-03-03  Glenn Morris  <rgm@gnu.org>
517
518	* Makefile.in: Don't clear out LIB_X11_LIB, since XFT_LIBS does
519	not include -lX11 on Solaris.
520
5212007-03-02  Stuart D. Herring  <herring@lanl.gov>
522
523	* keymap.c (Fkey_binding): Don't consider one-element lists as events.
524
5252007-03-01  Kenichi Handa  <handa@m17n.org>
526
527	* process.c (send_process_object): Check the process status and
528	signal an error if something is wrong.
529
5302007-02-28  Chong Yidong  <cyd@stupidchicken.com>
531
532	* insdel.c (Fcombine_after_change_execute): Return nil if
533	combine_after_change_buffer has been invalidated.
534
5352007-02-25  Dan Nicolaescu  <dann@ics.uci.edu>
536
537	* m/xtensa.h: New file.
538
5392007-02-24  Nick Roberts  <nickrob@snap.net.nz>
540
541	* .gdbinit (xprintstr): Ensure GDB (> 6.6) prints symbol name
542	as strings and not character arrays.
543
5442007-02-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
545
546	* macterm.c [USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag)
547	(x_set_toolkit_scroll_bar_thumb): Add bar->min_handle as margin to
548	scroll bar handle size in order to avoid `scroll backward' problem.
549	(x_scroll_bar_create, XTset_vertical_scroll_bar)
550	[USE_TOOLKIT_SCROLL_BARS]: Initialize bar->min_handle.
551
552	* macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
553	New member `min_handle'.
554
5552007-02-23  Kim F. Storm  <storm@cua.dk>
556
557	* print.c (print): Reset print_number_index if Vprint_number_table
558	is nil.
559
5602007-02-23  Eli Zaretskii  <eliz@gnu.org>
561
562	* w32.c (stat, get_long_basename, is_unc_volume): Use _mbspbrk
563	instead of strpbrk.
564
5652007-02-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
566
567	* macmenu.c (mac_menu_show): Call unbind_to early.  Use variable
568	`menu_item_selection' as in W32 version.
569	[TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Add explicit
570	braces to avoid ambiguous `else'.
571
572	* macterm.c (mac_display_info_for_display): Remove function.
573	(mac_flush_display_optional) [USE_CG_DRAWING]: New function.
574	(x_redisplay_interface) [USE_CG_DRAWING]: Set it as handler for
575	flush_display_optional.
576	[USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_press):
577	New argument MOUSE_POS.  All uses changed.  Set bar->dragging to
578	negative integer if scroll bar handle is pressed.
579	[USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_release):
580	Negative bar->dragging means scroll bar handle is not dragged.
581	[USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_handle_drag): Get initial
582	offset of scroll bar handle from negative bar->dragging.
583	(XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Modifiers for scroll
584	bar click is compared against mapped one.  Set down/up_modifier
585	for scroll bar click event with control key.
586
587	* macterm.h (x_display_info_for_display): Remove extern.
588	(SCROLL_BAR_UNPACK, SET_SCROLL_BAR_CONTROL_HANDLE): Don't limit
589	value to be unpacked to 32-bit on LP64 model.
590
5912007-02-23  Kenichi Handa  <handa@m17n.org>
592
593	* process.c (send_process_object_unwind): New function.
594	(send_process_object): New function.
595	(Fprocess_send_region): Call send_process_object.
596	(Fprocess_send_string): Likewise.
597
5982007-02-22  Jason Rumney  <jasonr@gnu.org>
599
600	* w32menu.c (w32_menu_show): Mark the frame's menu as inactive
601	when popup menu finishes.
602
603	* w32fns.c (menubar_in_use): New flag.
604	(w32_wnd_proc) [WM_INITMENU, WM_EXITMENULOOP, WM_TIMER, WM_COMMAND]:
605	Use it.
606
607	* w32menu.c (Fx_popup_menu): Don't free menu strings here.
608	(w32_menu_show): Do it here instead.
609
610	* w32fns.c (w32_wnd_proc) [WM_INITMENU]: Set menubar_active frame
611	parameter.
612
613	* w32menu.c (current_popup_menu): Make available globally.
614	(menubar_selection_callback): Free menu strings before pushing the
615	menu event into the keyboard buffer.  Remove menu_command_in_progress.
616
617	* w32fns.c (current_popup_menu): Use from w32menu.c.
618	(w32_wnd_proc) [WM_EXITMENULOOP, WM_TIMER]: Use menubar_active
619	and current_popup_menu to determine whether a menubar menu has
620	been cancelled.
621
622	* w32term.h (w32_output): Remove menu_command_in_progress.
623
6242007-02-22  Kim F. Storm  <storm@cua.dk>
625
626	* dispnew.c (update_frame, update_single_window): Set force_p here if
627	redisplay_dont_pause is set or Vredisplay_preemption_period is nil...
628	(update_window, update_frame_1): ... instead of here.
629	(update_text_area): Clear mouse face on header lines.
630
6312007-02-21  Kim F. Storm  <storm@cua.dk>
632
633	* minibuf.c (Fassoc_string): Doc fix.  Allow symbol for KEY too.
634
6352007-02-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
636
637	* macterm.c (WINDOW_RESOURCE, TERM_WINDOW_RESOURCE): Remove macros.
638	[USE_MAC_TSM] (mac_handle_text_input_event): Remove unused variable
639	`mapped_modifiers'.
640	(XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Use Keyboard
641	Layout Services routines to get current Unicode keyboard layout.
642
6432007-02-20  Chong Yidong  <cyd@stupidchicken.com>
644
645	* frame.c (x_set_screen_gamma): Apply gamma value to the frame's
646	bgcolor.
647
6482007-02-19  Kim F. Storm  <storm@cua.dk>
649
650	* minibuf.c (Fassoc_string): Allow symbols as keys.
651
652	* w32term.c (w32_set_scroll_bar_thumb): Don't resize scroll-bar
653	handle while dragging, except when we get close to eob.
654	Fix position and size calculations so we don't scroll backwards
655	just by clicking on the handle.
656
6572007-02-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
658
659	* Makefile.in (${emacsapp}Contents/Resources/Emacs.rsrc)
660	[HAVE_CARBON]: Remove target.
661	(macosx-app) [HAVE_CARBON]: Don't depend on it.
662
6632007-02-17  Juanma Barranquero  <lekktu@gmail.com>
664
665	* callproc.c (syms_of_callproc) <doc-directory>:
666	<configure-info-directory>:
667	(Fgetenv_internal): Fix typos in docstrings.
668
669	* doc.c (Fsubstitute_command_keys): Fix typo in docstring.
670
6712007-02-16  Andreas Schwab  <schwab@suse.de>
672
673	* frame.c (Fmodify_frame_parameters): Return a value.
674
675	* editfns.c (Fformat): Add support for '+' flag.
676	* doprnt.c (doprnt1): Likewise.  Fix overflow checking.
677
6782007-02-14  Chong Yidong  <cyd@stupidchicken.com>
679
680	* s/umips.h: Unused file removed.
681
6822007-02-14  Juanma Barranquero  <lekktu@gmail.com>
683
684	* xfaces.c (Fcolor_distance): Don't continue checking a color for
685	errors after it has been correctly parsed as an RGB list.
686
6872007-02-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
688
689	* xterm.c (do_ewmh_fullscreen): Also check for _NET_WM_STATE_FULLSCREEN.
690
6912007-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
692
693	* macfns.c (Fx_focus_frame): Move current process to foreground if
694	it is not.
695	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Replace #if MAC_OSX with
696	#ifdef MAC_OSX.
697	(Fmac_set_font_panel_visible_p) [USE_MAC_FONT_PANEL]: Rename from
698	Fmac_set_font_panel_visibility.  All uses changed.  Rename argument
699	VISIBLE to FLAG.
700
701	* macterm.c (MakeMeTheFrontProcess) [MAC_OSX]: Remove function.
702	(mac_initialize) [MAC_OSX]: Call SetFrontProcess instead of
703	MakeMeTheFrontProcess.
704
7052007-02-12  Chong Yidong  <cyd@stupidchicken.com>
706
707	* frame.c (x_set_screen_gamma): Clear face cache.
708
7092007-02-11  Juanma Barranquero  <lekktu@gmail.com>
710
711	* buffer.c (Fgenerate_new_buffer_name, Fbuffer_modified_tick):
712	Reflow docstrings.
713
7142007-02-10  Eli Zaretskii  <eliz@gnu.org>
715
716	* window.c (Fwindow_height, Fwindow_hscroll)
717	(Fwindow_redisplay_end_trigger, Fwindow_point, Fwindow_start)
718	(Fwindow_end, Fwindow_display_table, Fwindow_text_height):
719	Document the effect of WINDOW arg being nil.
720
7212007-02-08  Kim F. Storm  <storm@cua.dk>
722
723	* minibuf.c (read_minibuf): Fix 2007-01-30 change.
724	Use Qlambda as interim value of Vminibuffer_completing_file_name.
725	(Fcompleting_read): Use non-filename maps if value is Qlambda (or Qnil).
726	(syms_of_minibuf) <minibuffer-completing-file-name>: Document lambda.
727
7282007-02-07  Juanma Barranquero  <lekktu@gmail.com>
729
730	* makefile.w32-in ($(TRES)): Use literal "../nt/emacs.rc" instead
731	of $(ALL_DEPS).
732
7332007-02-07  Eli Zaretskii  <eliz@gnu.org>
734
735	* makefile.w32-in ($(TRES)): Depend on stamp_BLD, since $(TRES) is
736	put into $(BLD).
737
7382007-02-06  Chong Yidong  <cyd@stupidchicken.com>
739
740	* frame.c (Fmodify_frame_parameters): Don't bind
741	Qinhibit_default_face_x_resources, which has no effect.
742	(Qinhibit_default_face_x_resources): Symbol deleted.
743
7442007-02-03  Eli Zaretskii  <eliz@gnu.org>
745
746	* indent.c (Fmove_to_column): Document that the argument COLUMN is
747	taken from prefix numeric argument.
748
7492007-02-03  Juanma Barranquero  <lekktu@gmail.com>
750
751	* lread.c (syms_of_lread) <load-history>: Doc fix.
752
7532007-01-29  Andreas Seltenreich  <uwi7@rz.uni-karlsruhe.de>  (tiny change)
754
755	* xterm.c [!USE_TOOLKIT_SCROLL_BARS] (x_scroll_bar_expose):
756	Use the foreground color of the scroll-bar face when drawing
757	the scroll-bar's border.
758
7592007-02-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
760
761	* xterm.c (do_ewmh_fullscreen): Check that what != NULL before
762	calling wm_supports.
763
7642007-02-01  Juanma Barranquero  <lekktu@gmail.com>
765
766	* lread.c (syms_of_lread) <user-init-file>: Doc fix.
767	Wording by Eli Zaretskii.
768
7692007-01-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
770
771	* gtkutil.c (update_frame_tool_bar): Initialize h/vmargin to 0.
772
7732007-01-30  Richard Stallman  <rms@gnu.org>
774
775	* minibuf.c (read_minibuf):
776	Save and clear Vminibuffer_completing_file_name.
777	(read_minibuf_unwind): Restore it.
778	(Vminibuffer_completion_table, Qminibuffer_completion_table)
779	(Vminibuffer_completion_predicate, Qminibuffer_completion_predicate)
780	(Vminibuffer_completion_confirm, Qminibuffer_completion_confirm)
781	(Vminibuffer_completing_file_name): Definitions moved up.
782
7832007-01-29  Chong Yidong  <cyd@stupidchicken.com>
784
785	* m/hp800.h: Restore, removing HP-UX support.
786
7872007-01-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
788
789	* Makefile.in: Use a variable, XFT_LIBS, instead #define LIB_X11_LIB.
790
7912007-01-28  Richard Stallman  <rms@gnu.org>
792
793	* minibuf.c (Ftry_completion, Fall_completions)
794	(Fcompleting_read, Ftest_completion):
795	Rename arg ALIST or TABLE to COLLECTION.
796
7972007-01-27  Chong Yidong  <cyd@stupidchicken.com>
798
799	* unexhp9k800.c: Remove due to lack of legal papers.
800
801	* m/sr2k.h, m/hp800.h: Remove due to dependence on above.
802
8032007-01-27  Eli Zaretskii  <eliz@gnu.org>
804
805	* keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Doc fix.
806
807	* minibuf.c (Fcompleting_read): Doc fix.
808
8092007-01-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
810
811	* gtkutil.c (xg_initialize): Call XftInit if HAVE_XFT.
812
813	* Makefile.in: Use XFT_LIBS if defined.
814
8152007-01-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
816
817	* alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use
818	BLOCK_INPUT/UNBLOCK_INPUT.
819
820	* blockinput.h (interrupt_input_blocked): Declare volatile.
821
822	* keyboard.c (interrupt_input_blocked): Declare volatile.
823
824	* syssignal.h (SIGNAL_THREAD_CHECK): Use pthread_equal.
825
8262007-01-24  Kim F. Storm  <storm@cua.dk>
827
828	* keymap.c (describe_map): Don't consider prefix keys to be shadowed.
829
8302007-01-23  Juanma Barranquero  <lekktu@gmail.com>
831
832	* editfns.c (Finsert_char): Doc fix.
833	(Fget_internal_run_time, Fdecode_time): Fix typos in docstrings.
834
8352007-01-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
836
837	* macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag):
838	Don't pass keyboard modifiers to mac_store_drag_event, but put
839	them as kEventParamKeyModifiers Apple event parameter.
840
8412007-01-21  Chong Yidong  <cyd@stupidchicken.com>
842
843	* xdisp.c (try_window): Revert previous change.
844
845	* dispnew.c (update_text_area): Revert 2006-09-17 change.
846	Always redraw non-mode-line rows with mouse-face.
847
8482007-01-20  Chong Yidong  <cyd@stupidchicken.com>
849
850	* xdisp.c (try_window): Clear mouse-face highlights first.
851
852	* window.c (set_window_buffer): Revert 2006-11-22 change.
853
8542007-01-20  Eli Zaretskii  <eliz@gnu.org>
855
856	* .gdbinit (ppt, xtype, xmisctype, xint, xptr, xmarker, xframe)
857	(xbuffer, xcons, xcar, xcdr): Fix doc strings.
858
8592007-01-20  Chong Yidong  <cyd@stupidchicken.com>
860
861	* keyboard.c (read_key_sequence): Extract local map only if the
862	given position is in an accessible buffer region.
863
8642007-01-19  Nick Roberts  <nickrob@snap.net.nz>
865
866	* .gdbinit: Reformat documentation so that first sentence
867	displays properly with "help user-defined" (like apropos).
868
8692007-01-18  Bruno Haible  <bruno@clisp.org>  (tiny change)
870
871	* epaths.in: Move PATH_DOC from local/info to local/share/info.
872
8732007-01-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
874
875	* macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]:
876	Create movable modal window instead of movable alert window.
877	(create_and_show_dialog) [!MAC_OSX]: Use DeactivateControl instead
878	of DisableControl.
879
880	* macselect.c (Fmac_resume_apple_event): Set error number when
881	descriptor type of reply is non-null.
882
8832007-01-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
884
885	* macmenu.c (create_and_show_dialog) [TARGET_API_MAC_CARBON]:
886	Use DisableControl for disabled items.  Set default button to first
887	enabled one.  Use icon of application in execution.
888
8892007-01-13  Eli Zaretskii  <eliz@gnu.org>
890
891	* process.c (Fdelete_process, Fprocess_id, sigchld_handler):
892	Copy PID into EMACS_INT to avoid GCC warnings.
893
894	* fns.c (maybe_resize_hash_table): Copy new size of hash table
895	into EMACS_INT to avoid GCC warnings.
896
897	* editfns.c (Fuser_uid, Fuser_real_uid): Copy values returned by
898	geteuid and getuid into EMACS_INT to avoid GCC warnings.
899
900	* dired.c (Ffile_attributes): Fix last change.
901
9022007-01-12  Eli Zaretskii  <eliz@gnu.org>
903
904	* dired.c (Ffile_attributes): Copy some members of `struct stat'
905	into int's to avoid GCC warnings about limited range of short in
906	arguments to FIXNUM_OVERFLOW_P.
907
9082007-01-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
909
910	* macmenu.c (HAVE_DIALOGS): Define if TARGET_API_MAC_CARBON.
911	(mac_handle_dialog_event, install_dialog_event_handler)
912	(create_and_show_dialog) [TARGET_API_MAC_CARBON]: New functions.
913	(DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
914	(DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH)
915	(DIALOG_MAX_INNER_WIDTH, DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
916	(DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
917	(DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
918	(DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
919	(DIALOG_ICON_TOP_MARGIN) [TARGET_API_MAC_CARBON]: New macros.
920	(mac_dialog) [TARGET_API_MAC_CARBON]: Remove function.
921	(mac_dialog_show) [TARGET_API_MAC_CARBON]: Use create_and_show_dialog.
922
923	* macterm.c (x_free_frame_resources) [USE_CG_DRAWING]:
924	Call mac_prepare_for_quickdraw.
925	(quit_char, make_ctrl_char) [TARGET_API_MAC_CARBON]: Move externs
926	outside #ifdef MAC_OSX.
927	(mac_quit_char_key_p) [TARGET_API_MAC_CARBON]: Move function
928	outside #ifdef MAC_OSX.
929	(mac_check_bundle) [MAC_OSX]: Remove unused function.
930
931	* macterm.h (mac_quit_char_key_p): Move extern outside #ifdef MAC_OSX.
932	(HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Parenthesize definitions.
933
9342007-01-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
935
936	* alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Use pthread_equal,
937	block/unblock SIGIO.
938
9392007-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
940
941	* editfns.c (Fformat): Allow integer-format to work with floats of size
942	larger than most-positive-fixnum (but still smaller than MAXINT).
943
944	* dired.c (Ffile_attributes): Use floats for large uids/gids.
945
9462007-01-09  Eli Zaretskii  <eliz@gnu.org>
947
948	* emacs.c (syms_of_emacs) <path-separator>: Doc fix.
949
9502007-01-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
951
952	* callproc.c (Fcall_process_region) [HAVE_MKSTEMP]: Add BLOCK_INPUT
953	around mkstemp.
954
955	* image.c (XDrawLine) [MAC_OS]: Remove macro.
956	(XCreateGC_pixmap) [!HAVE_NTGUI]: Likewise.
957	(x_disable_image) [!HAVE_NTGUI]: Use XCreateGC instead of
958	XCreateGC_pixmap.
959
960	* macgui.h (Display): Typedef to opaque type.
961
962	* macmenu.c (mac_dialog_modal_filter) [MAC_OSX]: New function.
963	(Fx_popup_dialog) [MAC_OSX]: Use standard alert if called from
964	Fmessage_box, Fyes_or_no_p, or Fy_or_n_p.
965	[MAC_OS_X_VERSION_MAX_ALLOWED >= 1030] (menu_quit_handler):
966	Use mac_quit_char_key_p.
967
968	* macterm.c (XDrawLine): Rename from mac_draw_line_to_pixmap.
969	(XCreateGC): Change type of 2nd argument to void *.
970	(XFreeGC) [USE_CG_DRAWING && MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
971	Fix last change.
972	(mac_to_emacs_modifiers): Change return type to int.
973	[USE_CARBON_EVENTS] (mac_event_to_emacs_modifiers): Likewise.
974	(mac_mapped_modifiers): New function.
975	(XTread_socket): Use it.
976	[USE_TSM] (mac_handle_text_input_event): Likewise.
977	(do_window_update) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
978	(mac_quit_char_modifiers, mac_quit_char_keycode) [MAC_OSX]:
979	Remove variables.
980	(mac_determine_quit_char_modifiers, init_quit_char_handler)
981	[MAC_OSX]: Remove functions.
982	(make_ctrl_char) [MAC_OSX]: Add extern.
983	(mac_quit_char_key_p) [MAC_OSX]: New function.
984	(mac_initialize) [MAC_OSX]: Don't call init_quit_char_handler.
985
986	* macterm.h (FONT_MAX_WIDTH): Remove unused macro.
987	(XCreateGC): Change type in extern.
988	(XDrawLine): Rename from mac_draw_line_to_pixmap.
989	(mac_quit_char_key_p) [MAC_OSX]: Add extern.
990
9912007-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
992
993	* keyboard.c (init_keyboard): Initialize interrupt_input_blocked and
994	interrupt_input_pending.
995
996	* xterm.h (x_display_info): New: net_supported_atoms,
997	nr_net_supported_atoms and net_supported_window.
998
999	* xterm.c (last_user_time): New variable.
1000	(handle_one_xevent): Set last_user_time from events that have Time.
1001	Set net_supported_window to 0 when reparented.
1002	(wm_supports): New function.
1003	(do_ewmh_fullscreen): Use wm_supports to check for _NET_WM_STATE.
1004	(x_term_init): Initialize net_supported_atoms, nr_net_supported_atoms
1005	and net_supported_window.
1006
10072007-01-05  Kim F. Storm  <storm@cua.dk>
1008
1009	* indent.c (Fvertical_motion): Fix it overshoot check for overlay
1010	strings without embedded newlines immediately followed by newline.
1011
10122007-01-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1013
1014	* editfns.c (Fformat_time_string, Fdecode_time, Fencode_time)
1015	(Fcurrent_time_string, Fcurrent_time_zone): Add BLOCK_INPUT around
1016	gmtime/localtime/emacs_memftimeu/mktime.
1017
1018	* mac.c (Fmac_set_file_creator): Use MAC_EMACS_CREATOR_CODE
1019	instead of 'EMAx'.
1020	[!MAC_OSX] (sys_open, sys_creat, sys_fopen): Likewise.
1021
1022	* macgui.h (struct _XGC) [USE_CG_DRAWING
1023	&& MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New members cg_fore_color
1024	and cg_back_color.
1025
1026	* macmenu.c (Vshow_help_function) [TARGET_API_MAC_CARBON]: Add extern.
1027	(restore_show_help_function, menu_target_item_handler)
1028	[TARGET_API_MAC_CARBON]: New functions.
1029	(install_menu_target_item_handler): New function.
1030	(add_menu_item) [TARGET_API_MAC_CARBON]: Set help string as menu
1031	item property.
1032
1033	* macterm.c (CG_SET_FILL_COLOR_MAYBE_WITH_CGCOLOR)
1034	(CG_SET_FILL_COLOR_WITH_GC_FOREGROUND)
1035	(CG_SET_FILL_COLOR_WITH_GC_BACKGROUND)
1036	(CG_SET_STROKE_COLOR_MAYBE_WITH_CGCOLOR)
1037	(CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND): New macros.
1038	(mac_cg_color_space_rgb) [USE_CG_DRAWING]: New variable.
1039	(mac_cg_color_black) [USE_CG_DRAWING
1040	&& MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New variable.
1041	(init_cg_color) [USE_CG_DRAWING]: New function.
1042	(mac_draw_line, mac_draw_rectangle) [USE_CG_DRAWING]: Use
1043	CG_SET_STROKE_COLOR_WITH_GC_FOREGROUND instead of CG_SET_STROKE_COLOR.
1044	(mac_erase_rectangle, mac_clear_window, mac_draw_cg_image)
1045	(mac_fill_rectangle, mac_draw_image_string_cg) [USE_CG_DRAWING]:
1046	Use CG_SET_FILL_COLOR_WITH_GC_FOREGROUND or
1047	CG_SET_FILL_COLOR_WITH_GC_BACKGROUND instead of CG_SET_FILL_COLOR.
1048	(mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Likewise.
1049	(XCreateGC, XFreeGC, XSetForeground, XSetBackground) [USE_CG_DRAWING
1050	&& MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use gc->cg_fore_color and/or
1051	gc->cg_back_color.
1052	(install_drag_handler, remove_drag_handler): Make extern.
1053	(install_menu_target_item_handler): Add extern.
1054	(install_window_handler): Call install_menu_target_item_handler.
1055	[MAC_OS8] (main): Use MAC_EMACS_CREATOR_CODE instead of 'EMAx'.
1056	(mac_initialize) [USE_CG_DRAWING]: Call init_cg_color.
1057
1058	* macterm.h (MAC_EMACS_CREATOR_CODE): New enumerator.
1059
10602007-01-04  Juanma Barranquero  <lekktu@gmail.com>
1061
1062	* window.c (Fwindow_end): Fix use of >= operator.
1063
10642007-01-03  Richard Stallman  <rms@gnu.org>
1065
1066	* window.c (Fwindow_end): Check BUF_OVERLAY_MODIFF like BUF_MODIFF.
1067
10682007-01-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1069
1070	* gtkutil.h (xg_menu_item_cb_data_): Remove highlight_id and
1071	unhighlight_id.
1072
1073	* gtkutil.c (menuitem_highlight_callback): Invoked widget is the
1074	parent of the menu item.  Get menu item widget from event.
1075	(xg_create_one_menuitem, xg_update_menu_item): highlight_id and
1076	unhighlight_id has been removed.
1077	(create_menus): Connect enter/leave-notify-event to the menu instead
1078	of individual items.
1079
10802006-12-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1081
1082	* gtkutil.c (update_frame_tool_bar): Connect create-menu-proxy with
1083	xg_tool_bar_menu_proxy.
1084	(xg_tool_bar_menu_proxy): New function.
1085	(xg_tool_bar_proxy_callback): New function.
1086
10872006-12-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1088
1089	* gtkutil.c (xg_tool_bar_button_cb): Save last modifier on widget.
1090	(xg_tool_bar_callback): Remove check for button.
1091	(update_frame_tool_bar): Put an event box in the tool bar and a button
1092	in the event box.  Attach enter/leave-notify-event to the event box.
1093
10942006-12-30  Richard Stallman  <rms@gnu.org>
1095
1096	* keymap.c (Fdefine_key): Doc fix.
1097
10982006-12-29  Kim F. Storm  <storm@cua.dk>
1099
1100	* frame.h (struct frame): New member minimize_tool_bar_window_p.
1101
1102	* xdisp.c (auto_resize_tool_bars_p): Replace with ...
1103	(Vauto_resize_tool_bars): ... this.
1104	(syms_of_xdisp): DEFVAR_LISP and initialize it.  Update doc string
1105	to describe new value `grow-only', and use of C-l.
1106	(display_tool_bar_line): Only use default face for border below
1107	toolbar if not grow-only (to get acceptable visual appearence).
1108	Explicitly set visible_height for empty toolbar lines.
1109	(redisplay_tool_bar): Handle `grow-only' setting.  Check and clear
1110	minimize_tool_bar_window_p flag.
1111
1112	* window.c (Frecenter): Set minimize_tool_bar_window_p flag
1113	when called without arg to redraw with minimum toolbar height.
1114	Update doc string.
1115
11162006-12-29  Jason Rumney  <jasonr@gnu.org>
1117
1118	* s/ms-w32.h (tzname): Do not define in msvc8.
1119	(utime): Do not define in msvc8.
1120
1121	* regex.c (regerror): Change parameter name err_code.
1122
11232006-12-26  Richard Stallman  <rms@gnu.org>
1124
1125	* search.c (Fsearch_forward): Doc fix.
1126
1127	* callint.c (Finteractive): Doc fix.
1128
11292006-12-25  Kim F. Storm  <storm@cua.dk>
1130
1131	* s/ms-w32.h (BROKEN_DATAGRAM_SOCKETS): Define it.
1132
11332006-12-23  Eli Zaretskii  <eliz@gnu.org>
1134
1135	* keyboard.c (some_mouse_moved): Fix last change.
1136
11372006-12-22  Eli Zaretskii  <eliz@gnu.org>
1138
1139	* callproc.c (syms_of_callproc) <shell-file-name>: Doc fix.
1140
11412006-12-22  Mark Davies  <mark@mcs.vuw.ac.nz>
1142
1143	* m/amdx86-64.h, m/hp800.h: Add support for NetBSD.
1144	* m/sh3el.h: New file.
1145
11462006-12-22  Eli Zaretskii  <eliz@gnu.org>
1147
1148	* makefile.w32-in (emacs, temacs): Depend on stamp_BLD instead of
1149	$(BLD).
1150	($(OBJ0) $(OBJ1) $(WIN32OBJ)): New dependency on stamp_BLD.
1151	(bootstrap-temacs): Pass $(XMFLAGS) to sub-make.
1152	($(OBJ0) $(OBJ1) $(WIN32OBJ)): Add lastfile.$(O) and firstfile.$(O).
1153	(clean): Delete stamp_BLD.
1154
11552006-12-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1156
1157	* macfns.c (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
1158	Call mac_update_proxy_icon also when buffer modification flag changed.
1159	[TARGET_API_MAC_CARBON] (mac_update_proxy_icon): Don't update alias,
1160	but compare FSRef/FSSpec of resolved alias.
1161
11622006-12-21  Kim F. Storm  <storm@cua.dk>
1163
1164	* w32.c (_sys_wait_accept): Fix handle leak.
1165
11662006-12-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1167
1168	* sound.c: Include <alsa/asoundlib.h> if ALSA_SUBDIR_INCLUDE is
1169	defined.
1170
11712006-12-20  Kim F. Storm  <storm@cua.dk>
1172
1173	* s/ms-w32.h (BROKEN_NON_BLOCKING_CONNECT): Define it.
1174
11752006-12-19  Juanma Barranquero  <lekktu@gmail.com>
1176
1177	* keyboard.c (syms_of_keyboard) <double-click-time>:
1178	* mac.c (Fmac_code_convert_string):
1179	* search.c (Fsearch_forward): Doc fixes.
1180
11812006-12-19  Kim F. Storm  <storm@cua.dk>
1182
1183	Rework 2006-12-04 change.  A SIGUSR1 (SIGUSR2) signal now generates
1184	a sigusr1 event instead of [signal usr1] sequence, and signal events
1185	are now supposed to be handled via special-event-map.
1186
1187	* keyboard.c (kbd_buffer_store_event_hold): Undo 2006-12-04 change.
1188	(make_lispy_event): Don't generate Qsignal prefix for code 0.
1189	Abort if signal code is unknown.
1190	(store_user_signal_events): Don't make Qsignal prefix (code 0).
1191	(Qsignal): Move declaration back to process.c.
1192	(syms_of_keyboard): Don't intern or staticpro it here.
1193
1194	* process.c (Qsignal): Declare here.
1195	(syms_of_process): Intern or staticpro it.
1196
1197	* emacs.c (main): Rename user signals to sigusr1 and sigusr2.
1198
1199	* .gdbinit: Pass on SIGUSR1 and SIGUSR2 to Emacs.
1200
12012006-12-19  Juanma Barranquero  <lekktu@gmail.com>
1202
1203	* buffer.c (syms_of_buffer) <buffer-display-table>:
1204	<scroll-up-aggressively, scroll-down-aggressively>: Doc fixes.
1205
12062006-12-17  Richard Stallman  <rms@gnu.org>
1207
1208	* fileio.c (Fread_file_name_internal): Pass Vread_file_name_predicate
1209	to Ffile_name_completion.
1210
1211	* dired.c (file_name_completion): New arg PREDICATE.  Some cleanup.
1212	(Ffile_name_completion): New arg PREDICATE.
1213
12142006-12-17  Juanma Barranquero  <lekktu@gmail.com>
1215
1216	* buffer.c (Fkill_buffer): Doc fix.
1217	(syms_of_buffer) <kill-buffer-query-functions>: Doc fix.
1218
12192006-12-16  Juanma Barranquero  <lekktu@gmail.com>
1220
1221	* minibuf.c (Ftry_completion): Check that obarray buckets are symbols.
1222
12232006-12-16  Eli Zaretskii  <eliz@gnu.org>
1224
1225	* w32fns.c (w32-window-exists-p): New function.
1226	(syms_of_w32fns): Defsubr it.
1227
1228	* prefix-args.c [STDC_HEADERS]: Include stdlib.h.
1229
12302006-12-16  Juanma Barranquero  <lekktu@gmail.com>
1231
1232	* minibuf.c (Ftry_completion): Use `check_obarray' if ALIST is a vector.
1233
12342006-12-15  Eli Zaretskii  <eliz@gnu.org>
1235
1236	* emacs.c (USAGE3): Clarify documentation of --color.
1237
12382006-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1239
1240	* mac.c (wakeup_from_rne_enabled_p) [TARGET_API_MAC_CARBON]:
1241	New variable.
1242	(ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE): New macros.
1243	[!MAC_OSX] (select): Use them.
1244	[MAC_OSX] (select_and_poll_event, sys_select): Likewise.
1245	(mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: New function.
1246
1247	* macfns.c (mac_atsu_font_face_attributes) [USE_ATSUI]: Add extern.
1248	(Fmac_atsu_font_face_attributes) [USE_ATSUI]: New function.
1249	(syms_of_macfns) [USE_ATSUI]: Defsubr it.
1250
1251	* macselect.c [TARGET_API_MAC_CARBON] (mac_do_receive_drag):
1252	Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
1253
1254	* macterm.c (mac_query_char_extents) [USE_ATSUI]: Don't call
1255	ATSUGetGlyphBounds if not necessary.
1256	(Vmac_atsu_font_table) [USE_ATSUI]: Remove variable.
1257	(syms_of_macterm) [USE_ATSUI]: Don't defvar it.
1258	(fm_get_style_from_font, atsu_find_font_from_family_name)
1259	(atsu_find_font_family_name, mac_atsu_font_face_attributes)
1260	[USE_ATSUI]: New functions.
1261	(init_font_name_table) [USE_ATSUI]: Use atsu_find_font_family_name.
1262	(mac_load_query_font) [USE_ATSUI]: Use atsu_find_font_from_family_name.
1263	Don't get metrics for Latin-1 right half characters.
1264	(mac_load_query_font): Don't load font if space width is not positive.
1265	[TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event):
1266	Use mac_wakeup_from_rne instead of mac_post_mouse_moved_event.
1267	(XTread_socket): Call SelectWindow when unfocused frame is clicked.
1268
1269	* macterm.h (mac_wakeup_from_rne) [TARGET_API_MAC_CARBON]: Add extern.
1270
12712006-12-15  Kim F. Storm  <storm@cua.dk>
1272
1273	* keyboard.c (ignore_mouse_drag_p): New global var.
1274	(some_mouse_moved): Return 0 if it is non-zero.
1275	(make_lispy_event): Generate click event on mouse up if
1276	ignore_mouse_drag_p is non-zero, even if mouse moved.
1277	Clear ignore_mouse_drag_p on mouse down/up.
1278
1279	* xdisp.c (redisplay_window): Set ignore_mouse_drag_p if tool-bar
1280	is resized to avoid generating a mouse drag event.
1281
12822006-12-14  Juanma Barranquero  <lekktu@gmail.com>
1283
1284	* w32fns.c (w32_wnd_proc): Force non-tooltip frames to respect the
1285	minimum tracking size.  Remove non-working old hack to do the same.
1286
12872006-12-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1288
1289	* emacs.c (handle_user_signal): Move function to keyboard.c.
1290	(main): Use add_user_signal for SIGUSR1 and SIGUSR2.
1291
1292	* keyboard.c (make_lispy_event): Use find_user_signal_name.
1293	(read_avail_input): Store pending user signal events.
1294	(struct user_signal_info): New struct.
1295	(user_signals): New variable.
1296	(add_user_signal, store_user_signal_events)
1297	(find_user_signal_name): New functions.
1298	(handle_user_signal): Move function from emacs.c.  Don't store
1299	USER_SIGNAL_EVENT here, but increment number of pending signals.
1300
1301	* keyboard.h (add_user_signals): Add extern.
1302
13032006-12-11  Juanma Barranquero  <lekktu@gmail.com>
1304
1305	* buffer.c (syms_of_buffer) <cursor-in-non-selected-windows>:
1306	<default-scroll-up-aggressively, default-scroll-down-aggressively>:
1307	<line-spacing, left-margin>: Doc fixes.
1308
1309	* xdisp.c (syms_of_xdisp) <mode-line-inverse-video>: Doc fix.
1310
13112006-12-10  Kim F. Storm  <storm@cua.dk>
1312
1313	* xdisp.c (show_mouse_face): Never use text cursor in tool-bar.
1314
13152006-12-10  Juanma Barranquero  <lekktu@gmail.com>
1316
1317	* abbrev.c (syms_of_abbrev) <last-abbrev-text>:
1318	* buffer.c (syms_of_buffer) <default-major-mode>:
1319	* keymap.c (Flookup_key):
1320	* lread.c (Feval_buffer, Feval_region):
1321	* macterm.c (syms_of_macterm) <x-use-underline-position-properties>:
1322	<x-underline-at-descent-line, mac-emulate-three-button-mouse>:
1323	* marker.c (Fmarker_insertion_type):
1324	* minibuf.c (syms_of_minibuf) <minibuffer-completion-table>:
1325	* msdos.c (syms_of_msdos) <delete-exited-processes>:
1326	* w32term.c (syms_of_w32term) <x-use-underline-position-properties>:
1327	<x-underline-at-descent-line>:
1328	* xdisp.c (format-mode-line):
1329	* xterm.c (syms_of_xterm) <x-use-underline-position-properties>:
1330	<x-underline-at-descent-line>: Doc fixes.
1331
13322006-12-10  Andreas Schwab  <schwab@suse.de>
1333
1334	* systime.h (EMACS_GET_TIME): Remove check for
1335	HAVE_STRUCT_TIMEZONE which is never defined.
1336
13372006-12-10  Alan Mackenzie  <acm@muc.de>
1338
1339	* syntax.c (Fpartial_parse_sexp): Correct Docco: Elt 8 of the
1340	result is now neither the last elt nor optional for OLDSTATE.
1341
13422006-12-09  Eli Zaretskii  <eliz@gnu.org>
1343
1344	* process.c (Fsignal_process): Doc fix.  Use XFLOAT_DATA to
1345	extract the process ID from a Lisp float.
1346
13472006-12-09  Chong Yidong  <cyd@stupidchicken.com>
1348
1349	* xterm.c (XTframe_raise_lower): Comment out _NET_ACTIVE_WINDOW code.
1350
13512006-12-08  Eli Zaretskii  <eliz@gnu.org>
1352
1353	* frame.h (PIX_TYPE): Redefine as `unsigned long', for 64-bit
1354	platforms where long is 64-bit.
1355
1356	* msdos.h (PIX_TYPE): Redefine as `unsigned long'.
1357
13582006-12-08  NAKAJI Hiroyuki  <nakaji@jp.freebsd.org>  (tiny change)
1359
1360	* m/amdx86-64.h: Add support for Solaris 10 on x86-64.
1361
13622006-12-08  Kenichi Handa  <handa@m17n.org>
1363
1364	* xterm.c (x_query_font): Use xstricmp instead off strcasecmp.
1365
13662006-12-08  Juanma Barranquero  <lekktu@gmail.com>
1367
1368	* emacs.c (syms_of_emacs) <system-type>: Doc fix.
1369
13702006-12-07  Kim F. Storm  <storm@cua.dk>
1371
1372	* process.c (parse_signal): Use xstricmp instead of strcasecmp.
1373	(Fsignal_process): Don't use strncasecmp.
1374
13752006-12-05  Glenn Morris  <rgm@gnu.org>
1376
1377	* abbrev.c (Qforce): New Lisp_Object.
1378	(Fdefine_abbrev): Do not overwrite non-system abbrevs with system
1379	abbrevs, unless 'force is applied.
1380	(syms_of_abbrev): Add Qforce.
1381
13822006-12-04  Kim F. Storm  <storm@cua.dk>
1383
1384	* process.c (parse_signal): Rename macro from handle_signal.
1385	(Fsignal_process): Also accept lower-case variants of signal
1386	names (to align with signal names generated by Emacs itself).
1387
1388	* emacs.c (handle_USR1_signal, handle_USR2_signal): Replace by...
1389	(handle_user_signal): ... this, which generates two USER_SIGNAL_EVENTs
1390	first with code == 0 [signal] and one with code == sig number.
1391	(main): Use it as handler for SIGUR1 and SIGUSR2.
1392
1393	* keyboard.c (kbd_buffer_store_event_hold): Don't throw-on-input
1394	if first event in [signal xxx] sequence.
1395	(lispy_user_signals, Qusr1_signal, Qusr2_signal): Remove.
1396	(syms_of_keyboard): Don't intern and staticpro them.
1397	(Qsignal): Declare here.
1398	(syms_of_keyboard): Intern and staticpro it.
1399	(make_lispy_event): Use it.  Intern symbols on the fly for other
1400	USER_SIGNAL_EVENTs events.
1401
1402	* process.c (Qsignal): Declare extern.
1403	(syms_of_process): Don't intern/staticpro it here.
1404
1405	* process.c (read_process_output): Abort if carryover < 0.
1406
14072006-12-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1408
1409	* config.in: Regenerate.
1410
1411	* fileio.c [__NetBSD__]: Don't define `unix'.
1412	(Funix_sync, syms_of_fileio): Use `#ifdef HAVE_SYNC' instead of
1413	`#ifdef unix'.
1414
14152006-12-04  Glenn Morris  <rgm@gnu.org>
1416
1417	* Makefile.in (version): New variable, set by configure.
1418	(bootstrapclean, mostlyclean): Also remove emacs-${version}.
1419
14202006-12-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1421
1422	* gtkutil.c (update_frame_tool_bar): Handle modifying a toolbar item
1423	without an image.
1424
14252006-12-01  Eli Zaretskii  <eliz@gnu.org>
1426
1427	* w32fns.c (Fw32_shell_execute): Doc fix.
1428
14292006-11-30  Chong Yidong  <cyd@stupidchicken.com>
1430
1431	* xdisp.c (move_it_to): Correctly count tab glyphs for continued
1432	lines ending in tab.
1433
14342006-11-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1435
1436	* xterm.c (x_raise_frame): Move setting of _NET_ACTIVE_WINDOW
1437	property ...
1438	(XTframe_raise_lower): ... to here.
1439
14402006-11-30  Kenichi Handa  <handa@m17n.org>
1441
1442	* regex.c (regex_compile): Fix previous change.
1443
14442006-11-29  Juanma Barranquero  <lekktu@gmail.com>
1445
1446	* sound.c (Fplay_sound_internal): Remove spurious newline in docstring.
1447
14482006-11-28  Chong Yidong  <cyd@stupidchicken.com>
1449
1450	* config.in: Regenerate.
1451
14522006-11-28  Kenichi Handa  <handa@m17n.org>
1453
1454	* regex.c (regex_compile): Don't call SET_LIST_BIT with a
1455	multibyte character.
1456
14572006-11-27  Chong Yidong  <cyd@stupidchicken.com>
1458
1459	* s/aix4-2.h: Undefine _NO_PROTO.  Suggested by Joe Buehler.
1460
14612006-11-27  Kim F. Storm  <storm@cua.dk>
1462
1463	* window.c (set_window_buffer): Refactor recent changes.
1464
14652006-11-27  Jason Rumney  <jasonr@gnu.org>
1466
1467	* w32term.c (w32_msg_worker): Declare correctly.
1468	(w32_initialize): Don't cast w32_msg_worker.
1469
1470	* w32fns.c (w32_msg_worker): Define as WINAPI and arg as void pointer.
1471
14722006-11-26  Chong Yidong  <cyd@stupidchicken.com>
1473
1474	* m/amdx86-64.h: Look for standard libs in /usr/lib64 only if that
1475	directory exists.
1476
14772006-11-25  Eli Zaretskii  <eliz@gnu.org>
1478
1479	* w16select.c (Fw16_set_clipboard_data): Fix the call to sit_for
1480	as per the calling sequence change on 2006-07-11.
1481
14822006-11-25  Chong Yidong  <cyd@stupidchicken.com>
1483
1484	* window.c (set_window_buffer): Use BLOCK_INPUT.
1485
14862006-11-24  Juanma Barranquero  <lekktu@gmail.com>
1487
1488	* fns.c (substring_both): Add missing address operator.
1489
14902006-11-24  Stefan Monnier  <monnier@iro.umontreal.ca>
1491
1492	* fns.c: Use AREF/ASIZE macros.
1493	(concat): Provide the full ANSI prototype.
1494
14952006-11-24  Juanma Barranquero  <lekktu@gmail.com>
1496
1497	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1498
14992006-11-23  William Smith  <William.Smith@global360.com>  (tiny change)
1500
1501	* strftime.c (HAVE_SYS__MBSTATE_T_H): Fix typo.
1502
15032006-11-22  Alfred M. Szmidt  <ams@gnu.org>  (tiny change)
1504
1505	* s/openbsd.h (LD_SWITCH_SYSTEM): Remove /usr/pkg/lib and
1506	/usr/pkg/lib from the library search path.
1507	(LD_SWITCH_X_DEFAULT): New macro.
1508
15092006-11-22  Chong Yidong  <cyd@stupidchicken.com>
1510
1511	* window.c (set_window_buffer): Clear mouse highlight if it is in
1512	this window.
1513
15142006-11-21  Chong Yidong  <cyd@stupidchicken.com>
1515
1516	* xfaces.c (realize_default_face): Check if the default font name
1517	exists on this display before trying to use it.
1518
15192006-11-21  Richard Stallman  <rms@gnu.org>
1520
1521	* fileio.c: Break line before &&, not after.
1522
15232006-11-20  Eli Zaretskii  <eliz@gnu.org>
1524
1525	* fns.c (concat) [!__GNUC__]: Add prototype.
1526
15272006-11-20  Kenichi Handa  <handa@m17n.org>
1528
1529	* fileio.c (Fread_file_name_internal): Use SBYTES (not SCHARS) to
1530	check the tailing slash of a filename.
1531
15322006-11-20  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>  (tiny change)
1533
1534	* indent.c (Fvertical_motion): Include composition in the case of
1535	overshoot expected.
1536
15372006-11-19  Andreas Schwab  <schwab@gnu.org>
1538
1539	* xfaces.c (Fdisplay_supports_face_attributes_p): Initialize supports.
1540
1541	* xmenu.c (Fx_popup_menu): Initialize selection.
1542
15432006-11-18  Andreas Schwab  <schwab@suse.de>
1544
1545	* s/gnu-linux.h (GC_MARK_SECONDARY_STACK): Update call to mark_memory.
1546
15472006-11-17  Tetsurou Okazaki  <okazaki@be.to>  (tiny change)
1548
1549	* xterm.c (do_ewmh_fullscreen): Declare variable before XSETFRAME
1550	to avoid gcc 2.96 error.
1551
15522006-11-17  NIIMI Satoshi  <sa2c@sa2c.net>  (tiny change)
1553
1554	* search.c (simple_search): In the loop of backward searching,
1555	check also the byte position against the limit.
1556
15572006-11-14  Romain Francoise  <romain@orebokech.com>
1558
1559	* minibuf.c (Fcompleting_read): Fix typo in docstring.
1560
15612006-11-14  Kenichi Handa  <handa@m17n.org>
1562
1563	* coding.c (code_convert_region): Initialize coding->heading_ascii.
1564	(decode_coding_string, code_convert_region): Likewise.
1565
15662006-11-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1567
1568	* config.in: Regenerate.
1569
1570	* macfns.c (Fx_display_mm_height, Fx_display_mm_width)
1571	[MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
1572	&& MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if
1573	CGDisplayScreenSize is available.
1574
1575	* macmenu.c (menu_quit_handler, install_menu_quit_handler):
1576	Replace `#ifdef HAVE_CANCELMENUTRACKING' with
1577	`#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1030'.
1578	(install_menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
1579	&& MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if
1580	CancelMenuTracking is available.
1581
1582	* macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg)
1583	[MAC_OS_X_VERSION_MAX_ALLOWED >= 1030
1584	&& MAC_OS_X_VERSION_MIN_REQUIRED == 1020]: Check if
1585	CGContextShowGlyphsWithAdvances is available.
1586
15872006-11-13  Jason Rumney  <jasonr@gnu.org>
1588
1589	* s/ms-w32.h: Define HAVE_INET_SOCKETS.
1590
15912006-11-13  Nozomu Ando  <nand@mac.com>
1592
1593	* alloc.c (mark_memory): New argument OFFSET.  All uses changed.
1594	Fix address calculations for case END < START.
1595	(mark_stack): Impose Lisp_Object alignment on jmp_buf.
1596
15972006-11-12  Juanma Barranquero  <lekktu@gmail.com>
1598
1599	* coding.c (Fencode_sjis_char, Fencode_big5_char):
1600	Improve argument/docstring consistency.
1601
1602	* editfns.c (Fmessage): Doc fixes.
1603
1604	* process.c (syms_of_process) <delete-exited-processes>: Doc fix.
1605
16062006-11-12  Chong Yidong  <cyd@stupidchicken.com>
1607
1608	* xmenu.c (popup_activated): Define outside HAVE_MENUS.
1609
16102006-11-12  Romain Francoise  <romain@orebokech.com>
1611
1612	* xselect.c (selection-coding-system): Fix docstring.
1613
16142006-11-12  Juanma Barranquero  <lekktu@gmail.com>
1615
1616	* category.c (Fchar_category_set): Improve arg/docstring consistency.
1617
1618	* data.c (Flogxor):
1619	* fns.c (Frandom, Flength, Fsafe_length, Fstring_bytes)
1620	(Fstring_equal, Fcompare_strings, Fstring_lessp, Fcopy_sequence)
1621	(Fstring_make_unibyte): Fix typos in docstrings.
1622
16232006-11-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1624
1625	* xterm.h (struct x_display_info): Fix indentation.
1626
1627	* xterm.c (do_ewmh_fullscreen, XTfullscreen_hook): New functions.
1628	(x_check_fullscreen): Call do_ewmh_fullscreen.
1629	(x_initialize): Set fullscreen_hook to XTfullscreen_hook.
1630
1631	* frame.c (x_set_fullscreen): Call fullscreen_hook if set.
1632
1633	* term.c: Define fullscreen_hook.
1634	(syms_of_term): Initialize fullscreen_hook to NULL.
1635
1636	* termhooks.h: Add fullscreen_hook.
1637
16382006-11-08  Juanma Barranquero  <lekktu@gmail.com>
1639
1640	* bytecode.c (Fbyte_code):
1641	* data.c (Fmakunbound): Use SYMBOL_CONSTANT_P macro.
1642
16432006-11-06  Juanma Barranquero  <lekktu@gmail.com>
1644
1645	* lread.c (syms_of_lread):
1646	* xsmfns.c (syms_of_xsmfns): Fix typo in docstring.
1647
16482006-11-06  Martin Rudalics  <rudalics@gmx.at>
1649
1650	* macmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS.
1651
1652	* w32menu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS.
1653	Return nil if building without menus.
1654
1655	* xmenu.c (Fmenu_or_popup_active_p): Define outside HAVE_MENUS.
1656	Return nil if building without menus.
1657
16582006-11-05  Mark Davies  <mark@mcs.vuw.ac.nz>  (tiny change)
1659
1660	* s/netbsd.h (POSIX_SIGNALS): Define.
1661
16622006-11-05  Martin Rudalics  <rudalics@gmx.at>
1663
1664	* macmenu.c (Fmenu_or_popup_active_p): New function.
1665	(syms_of_macmenu): Defsubr it.
1666
1667	* w32menu.c (Fmenu_or_popup_active_p): New function.
1668	(syms_of_w32menu): Defsubr it.
1669	(popup_activated_flag, popup_activated): Remove.
1670
1671	* xdisp.c (note_mouse_highlight) [HAVE_NTGUI]: Don't bother to
1672	check popup_activated.
1673
1674	* xmenu.c (Fmenu_or_popup_active_p): New function.
1675	(syms_of_xmenu): Defsubr it.
1676
16772006-11-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1678
1679	* unexmacosx.c (malloc_cookie): Remove unused variable.
1680	(region_list_head, region_list_tail, lca, nlc, infile_lc_highest_addr)
1681	(text_seg_lowest_offset, mh, curr_header_offset, infd, outfd)
1682	(emacs_zone, data_segment_old_fileoff, data_segment_scp)
1683	(num_unexec_regions, unexec_regions): Make variables static.
1684	(print_regions, find_emacs_zone_regions): Make static.
1685	(unexec_region_info): New typedef.
1686	(unexec_regions): Change type from vm_range_t[] to unexec_region_info[].
1687	All uses changed.
1688	(unexec_regions_recorder): Subtract size of trailing null pages from
1689	filesize.  Show filesize.
1690	(unexec_regions_merge): Don't merge if null pages of preceding region
1691	is not too small.  Use long format in printf.
1692	(copy_segment, copy_data_segment): Show filesize.
1693	(copy_data_segment): Write filesize bytes of region data.
1694	Adjust filesize in segment command accordingly.
1695	(dump_it): Use long format in printf.
1696
16972006-11-05  Juanma Barranquero  <lekktu@gmail.com>
1698
1699	* dosfns.c (Finsert_startup_screen):
1700	* fns.c (Ffeaturep, syms_of_fns):
1701	* frame.c (syms_of_frame): Fix typos in docstrings.
1702
1703	* unexcw.c (unexec): Fix typo in output message.
1704
17052006-11-04  Ralf Angeli  <angeli@caeruleus.net>
1706
1707	* w32fns.c (w32_createwindow): Remove code for handling -geometry
1708	command line option and `initial-frame-alist' which is superfluous
1709	after the last change to `w32_createwindow'.
1710
17112006-11-04  Slawomir Nowaczyk  <slawek@cs.lth.se>  (tiny change)
1712
1713	* w32proc.c (sys_wait): Only wait for processes with fd<0.
1714	Others should be handled by sys_select instead.  Fixes problems
1715	with (progn (start-process "" nil "ls") (call-process "ls")).
1716
17172006-11-04  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
1718
1719	* xmenu.c (Fmenu_bar_open): Declare variable before BLOCK_INPUT to
1720	avoid gcc 2.95 error.
1721
17222006-11-04  Chong Yidong  <cyd@stupidchicken.com>
1723
1724	* gtkutil.c (update_frame_tool_bar): If icon image is invalid and
1725	wicon is null, insert an empty button.
1726
17272006-11-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1728
1729	* xterm.c (x_raise_frame): Send _NET_ACTIVE_WINDOW when raising the
1730	window.
1731
17322006-11-02  Juanma Barranquero  <lekktu@gmail.com>
1733
1734	* emacs.c (Fkill_emacs): Fix typo in docstring.
1735
17362006-11-02  Nozomu Ando  <nand@mac.com>
1737
1738	* unexmacosx.c (mach_header, segment_command, vm_region, section)
1739	[_LP64]: New defines.
1740	(VM_REGION_BASIC_INFO_COUNT, VM_REGION_BASIC_INFO, LC_SEGMENT)
1741	(MH_MAGIC) [_LP64]: Redefine.
1742	(delta): Remove variable.
1743	(curr_file_offset, pagesize): New variables.
1744	(ROUNDUP_TO_PAGE_BOUNDARY): New macro.
1745	(data_segment_old_fileoff): Initialize explicitly.
1746	(print_region, unexec_regions_recorder, print_load_command_name)
1747	(copy_segment, copy_data_segment): Use long format in printf.
1748	(MAX_UNEXEC_REGIONS): Increase to 400.
1749	(unexec_regions_recorder): Don't warn too many regions here.
1750	(find_emacs_zone_regions): Warn too many regions here.
1751	(print_load_command_name) [_LP64]: Show correct load command name.
1752	(copy_segment, copy_data_segment): Use variable `curr_file_offset'.
1753	Show starting virtual memory address.  Don't show ending file offset.
1754	(copy_symtab, copy_dysymtab, copy_twolevelhints): New argument DELTA.
1755	(dump_it): Use new local variable `linkedit_delta' and pass to them.
1756	Error if trying to handle multiple DATA segments.
1757	(unexec): Initialize variable `pagesize'.
1758
17592006-11-01  Juanma Barranquero  <lekktu@gmail.com>
1760
1761	* eval.c (Fcatch): Doc fix.
1762
17632006-10-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1764
1765	* image.c [MAC_OS] (image_load_qt_1, xpm_scan, xpm_make_color_table_v)
1766	(xpm_put_color_table_v, xpm_get_color_table_v, xpm_make_color_table_h)
1767	(xpm_put_color_table_h, xpm_get_color_table_h, xpm_str_to_color_key)
1768	(xpm_load_image): Add const qualifier to arguments.
1769	[MAC_OS] (xpm_color_key_strings): Make static const.
1770
1771	* mac.c (create_apple_event_from_event_ref)
1772	(create_apple_event_from_drag_ref, skip_white_space, parse_comment)
1773	(parse_include_file, parse_binding, parse_component)
1774	(parse_resource_name, parse_value, parse_resource_line)
1775	(xrm_merge_string_database, xrm_get_resource)
1776	(xrm_get_preference_database): Add const qualifier to arguments.
1777	[MAC_OSX] (sys_select): Make variable `context' static const.
1778
1779	* macfns.c (mac_color_map): Make static const.
1780	(mac_color_map_lookup): Add const qualifier to arguments.
1781
1782	* macmenu.c (install_menu_quit_handler): Make variable `typesList'
1783	static const.
1784	(name_is_separator): Add const qualifier to arguments.
1785
1786	* macselect.c (init_service_handler): Make variable `specs' static
1787	const.
1788
1789	* macterm.c (mac_create_bitmap_from_bitmap_data): Make variable
1790	`swap_nibbles' static const.
1791	(atsu_get_text_layout_with_text_ptr): Make variables `lengths',
1792	`tags', `sizes', `values' static const.
1793	(mac_draw_string_common): Make variables `context' static.
1794	Make variables `tags', `sizes', and `values' static const.
1795	(pcm_get_status, x_detect_focus_change, x_scroll_bar_handle_click)
1796	(xlfdpat_create, xlfdpat_block_match_1, xlfdpat_match)
1797	(mac_to_x_fontname, parse_x_font_name, add_mac_font_name)
1798	(mac_do_list_fonts, is_fully_specified_xlfd, do_grow_window)
1799	(mac_store_event_ref_as_apple_event, mac_make_rdb): Add const
1800	qualifier to arguments.
1801	(xlfd_scalable_fields, keycode_to_xkeysym_table)
1802	(fn_keycode_to_keycode_table): Make static const.
1803	(mac_load_query_font): Make variables `tags', `sizes', `values',
1804	`types', and `selectors' static const.
1805	(mac_handle_command_event, mac_handle_window_event):
1806	Make variables `names' and `types' static const.
1807	(init_command_handler, install_window_handler): Make variables
1808	`specs*' static const.
1809	(mac_handle_font_event, mac_handle_text_input_event)
1810	(mac_store_service_event): Make variables `names' and `types'
1811	const.  Make variables `names_*' and `types_*' static const.
1812
1813	* macterm.h (create_apple_event_from_event_ref)
1814	(create_apple_event_from_drag_ref, xrm_merge_string_database)
1815	(xrm_get_resource, xrm_get_preference_database): Add const
1816	qualifier to arguments in externs.
1817
18182006-10-31  Kenichi Handa  <handa@m17n.org>
1819
1820	* xfns.c (xic_create_xfontset): Fix previous change.
1821
18222006-10-30  Chong Yidong  <cyd@stupidchicken.com>
1823
1824	* s/openbsd.h (LD_SWITCH_SYSTEM): Add /usr/pkg/lib and
1825	/usr/pkg/lib to library search path.
1826
18272006-10-29  Mark Davies  <mark@mcs.vuw.ac.nz>  (tiny change)
1828
1829	* ralloc.c (relinquish): Use a long for excess space counter to
1830	handle 64-bit case correctly.
1831
18322006-10-29  Jeramey Crawford  <jeramey@jeramey.com>
1833
1834	* m/amdx86-64.h: Add defines for OpenBSD x86-64.
1835
18362006-10-29  Juanma Barranquero  <lekktu@gmail.com>
1837
1838	* window.c (Fdisplay_buffer): Fix typo in docstring.
1839
18402006-10-27  Ben North  <ben@redfrontdoor.org>  (tiny change)
1841
1842	* w32term.c (x_draw_glyph_string_foreground): Set background mode
1843	to TRANSPARENT before using overstrike to simulate bold faces.
1844
1845	* xfaces.c (best_matching_font): Fix logic to decide whether to
1846	use overstriking to simulate bold-face (it was reversed).
1847
18482006-10-23  Kim F. Storm  <storm@cua.dk>
1849
1850	* xdisp.c (remember_mouse_glyph): Do nothing if glyphs are not
1851	initialized.
1852
1853	* keyboard.c (read_char): Make an element (t . EVENT) in
1854	unread-command-events add EVENT to the current command's key sequence.
1855	(syms_of_keyboard) <unread-command-events>: Update doc.
1856
18572006-10-21  Richard Stallman  <rms@gnu.org>
1858
1859	* minibuf.c (Vread_expression_map): Define here.
1860	(Qread_expression_history): New variable.
1861	(syms_of_minibuf): Initialize them.
1862	(Feval_minibuffer): Use Vread_expression_map and
1863	Qread_expression_history.
1864
18652006-10-21  Kenichi Handa  <handa@m17n.org>
1866
1867	* xfns.c (xic_create_fontsetname): If ADSTYLE field is not a wild
1868	card, change it to "*".
1869	(xic_create_xfontset): Call XCreateFontSet for each single
1870	fontname in fontsetname.
1871
18722006-10-19  Chong Yidong  <cyd@stupidchicken.com>
1873
1874	* callint.c (callint_message): Convert to a Lisp string.
1875	(syms_of_callint): Initialize it.
1876	(callint_message_size): Var deleted.
1877	(Fcall_interactively): Use Fformat instead of doprnt to construct
1878	prompt string.
1879
18802006-10-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1881
1882	* xdisp.c (display_mode_line): Clear enabled_p flag on mode-line row.
1883
18842006-10-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1885
1886	* macfns.c (Vmac_carbon_version_string) [TARGET_API_MAC_CARBON]:
1887	New variable.
1888	(syms_of_macfns) [TARGET_API_MAC_CARBON]: Defvar it.
1889
18902006-10-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1891
1892	* xselect.c (x_handle_selection_request): If the converted_selection
1893	is nil or XCDR (converted_selection) is nil, decline the request.
1894
18952006-10-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
1896
1897	* gtkutil.c (get_utf8_string): Remove warnings with casts.
1898	(xg_tool_bar_button_cb): Ditto.
1899	(xg_tool_bar_callback): Ditto.
1900
19012006-10-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1902
1903	* dispnew.c (adjust_frame_glyphs_for_frame_redisplay): Remove unused
1904	variable ch_dim.
1905	(adjust_frame_glyphs_for_window_redisplay): Likewise.  Don't allocate
1906	menu bar window matrices on non-X systems.
1907
1908	* mac.c (Fmac_get_preference, Fmac_code_convert_string): Add GCPROs.
1909
1910	* macterm.c (mac_query_char_extents): Don't return glyph ID if layout
1911	adjustment is needed.
1912	(mac_load_query_font): Check if width and height are positive.
1913
19142006-10-14  Richard Stallman  <rms@gnu.org>
1915
1916	* sysdep.c (init_sys_modes): Delete DEFVAR_LISP in the wrong place.
1917
19182006-10-13  Chong Yidong  <cyd@stupidchicken.com>
1919
1920	* xdisp.c (decode_mode_spec): Ignore %c and %l constructs in frame
1921	title.
1922
19232006-10-12  Chong Yidong  <cyd@stupidchicken.com>
1924
1925	* keymap.c (Fkey_binding): Check Lisp_Object types before doing
1926	XCAR and XINT.
1927
19282006-10-12  Romain Francoise  <romain@orebokech.com>
1929
1930	* image.c (xbm_read_bitmap_data): Delete extra semicolon.
1931
19322006-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
1933
1934	* eval.c: Include xterm.h for x_fully_uncatch_errors and friends.
1935
1936	* dispextern.h: Declare x_create_bitmap_from_xpm_data.
1937
1938	* xterm.c (x_check_expected_move): Remove unused var `count'.
1939
1940	* xmenu.c (syms_of_xmenu): Use Ffset rather than Fdefalias, since
1941	Fdefalias is not declared in any *.h file.
1942
19432006-10-09  Chong Yidong  <cyd@stupidchicken.com>
1944
1945	* dispnew.c (sit_for): Sit forever if TIMEOUT is t.
1946
1947	* keyboard.c (command_loop_1): Handle non-number values of
1948	`minibuffer-message-timeout'.
1949	(Fexecute_extended_command): Fix typo.
1950
1951	* minibuf.c (temp_echo_area_glyphs): Sit for
1952	`minibuffer-message-timeout' seconds.
1953
19542006-10-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1955
1956	* macterm.c (mac_draw_image_string, mac_draw_image_string_16):
1957	Add argument OVERSTRIKE_P.
1958	(mac_draw_string_common, mac_draw_image_string_cg): Likewise.
1959	Support overstrike.
1960	(mac_draw_string, mac_draw_string_16): Remove functions.
1961	(x_draw_glyph_string_foreground): Use overstrike when needed.
1962	(x_draw_composite_glyph_string_foreground): Likewise.
1963	Use mac_draw_image_string_16 instead of mac_draw_string_16.
1964	(mac_load_query_font): Rename from XLoadQueryFont.  Take argument
1965	F instead of DPY.  All uses changed.  Don't save/restore font.
1966
19672006-10-07  Ralf Angeli  <angeli@caeruleus.net>
1968
1969	* w32fns.c (w32_createwindow): Honour left and top positions if
1970	supplied explicitly.
1971
19722006-10-06  Kim F. Storm  <storm@cua.dk>
1973
1974	* xdisp.c (pos_visible_p): Fix value when EOB is visible.
1975
19762006-10-05  Chong Yidong  <cyd@stupidchicken.com>
1977
1978	* frame.c (Qinhibit_face_set_after_frame_default): New var.
1979	(syms_of_frame): Initialize it.
1980	(x_set_frame_parameters): Avoid resetting :font attributes to the
1981	new-frame defaults.
1982
19832006-10-03  Stefan Monnier  <monnier@iro.umontreal.ca>
1984
1985	* lisp.h (clear_regexp_cache): Declare.
1986
1987	* search.c (compile_pattern): Only check `cp->syntax_table' if needed.
1988	(compile_pattern_1): Remember `used_syntax' in `cp->syntax_table'.
1989	(clear_regexp_cache): Only flush those regexps which depend on
1990	a syntax-table.
1991
1992	* regex.c (regex_compile): Set the new `used_syntax' bit.
1993
1994	* regex.h: Remove file local variables.
1995	(struct re_pattern_buffer): New field `used_syntax'.
1996
19972006-10-03  Kim F. Storm  <storm@cua.dk>
1998
1999	* process.c (list_processes_1): Run sentinels before removing dead
2000	processes.  Also remove `closed' network connections.
2001
20022006-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
2003
2004	* xdisp.c (handle_fontified_prop): Don't fontify at EOB.
2005
20062006-09-30  Eli Zaretskii  <eliz@gnu.org>
2007
2008	* config.in: Regenerated.
2009
20102006-09-29  Juri Linkov  <juri@jurta.org>
2011
2012	* buffer.c (syms_of_buffer): Reorder coding systems in the
2013	docstring of %z to the real order displayed in the modeline.
2014
20152006-09-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2016
2017	* keymap.c (Fdefine_key): Yet another int/Lisp_Object mixup (YAILOM).
2018
20192006-09-26  Chong Yidong  <cyd@stupidchicken.com>
2020
2021	* indent.c (Fvertical_motion): Do move back if the Lisp string
2022	being displayed contains newlines.
2023
20242006-09-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2025
2026	* macterm.c (mac_compute_glyph_string_overhangs, XLoadQueryFont)
2027	[USE_CG_DRAWING]: Call mac_prepare_for_quickdraw before QDTextBounds.
2028
20292006-09-26  Kenichi Handa  <handa@m17n.org>
2030
2031	* keymap.c (Fsingle_key_description): For an invalid char, return
2032	"Invalid char code NNNNN".
2033
20342006-09-25  Chong Yidong  <cyd@stupidchicken.com>
2035
2036	* callint.c (Fcall_interactively): Doc fix.
2037
20382006-09-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2039
2040	* macterm.c (x_underline_at_descent_line): New variable.
2041	(syms_of_macterm): DEFVAR_BOOL it.
2042	(x_draw_glyph_string): Use it.
2043	(XLoadQueryFont): Calculate min_bounds.descent and max_bounds.descent.
2044
20452006-09-25  Kenichi Handa  <handa@m17n.org>
2046
2047	* keymap.c (Fsingle_key_description): Return unique names for
2048	generic characters.
2049
20502006-09-24  Richard Stallman  <rms@gnu.org>
2051
2052	* search.c (compile_pattern_1): Don't BLOCK_INPUT.
2053
20542006-09-24  Eli Zaretskii  <eliz@gnu.org>
2055
2056	* makefile.w32-in ($(BLD)/fns.$(O), $(BLD)/w32proc.$(O)):
2057	Depend on nt/inc/langinfo.h and nt/inc/nl_types.h.
2058
2059	* w32proc.c (nl_langinfo): New function.
2060
2061	* w32fns.c (w32-pass-alt-to-system, w32-alt-is-meta)
2062	(w32-pass-lwindow-to-system, w32-enable-num-lock)
2063	(w32-enable-caps-lock, w32-scroll-lock-modifier)
2064	(w32-lwindow-modifier, w32-rwindow-modifier)
2065	(w32-apps-modifier, w32-mouse-button-tolerance): Doc fix.
2066
20672006-09-23  Juanma Barranquero  <lekktu@gmail.com>
2068
2069	* minibuf.c (Finternal_complete_buffer, Fread_minibuffer)
2070	(Fdisplay_completion_list): Fix typos in docstrings.
2071
20722006-09-23  Romain Francoise  <romain@orebokech.com>
2073
2074	* s/gnu-linux.h (MAIL_USE_FLOCK): Check for HAVE_LIBLOCKFILE too.
2075
20762006-09-23  Kenichi Handa  <handa@m17n.org>
2077
2078	* keymap.c (Fmap_keymap): Docstring mentions about generic character.
2079
20802006-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
2081
2082	* regex.c (analyse_first): For eight-bit-control chars, mark both the
2083	char's value and its leading byte in the fastmap.
2084	(re_search_2): When fast-scanning without translation, be careful to
2085	check that we only match the leading byte of a multibyte char.
2086
2087	* charset.h (PREV_CHAR_BOUNDARY): Make it work from within a char's
2088	byte sequence.
2089	(AT_CHAR_BOUNDARY): New macro.
2090
20912006-09-22  Kenichi Handa  <handa@m17n.org>
2092
2093	* fns.c (optimize_sub_char_table): Don't optimize a sub-char-table
2094	whose default value is non-nil.
2095
20962006-09-22  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2097
2098	* gtkutil.c (xg_get_file_with_chooser): Only show C-l help for
2099	Gtk+ versions < 2.10.
2100
2101	* xfns.c (syms_of_xfns): Fix typo in help text for
2102	x-gtk-file-dialog-help-text.
2103
21042006-09-21  Kim F. Storm  <storm@cua.dk>
2105
2106	* fns.c (Fmemq): Refill doc string.
2107	(Fmemql): New defun, like memq but using eql.
2108	(syms_of_fns): Defsubr it.
2109
21102006-09-20  Kim F. Storm  <storm@cua.dk>
2111
2112	* xdisp.c (pos_visible_p): CHARPOS < 0 means return info for
2113	last visible glyph in window.
2114
2115	* window.c (Fset_window_hscroll, Fwindow_line_height):
2116	Doc fix.  Use "off-window" instead of "off-screen".
2117	(Fpos_visible_in_window_p): Likewise.
2118	If POS is t, return info for last visible glyph in window.
2119
21202006-09-19  Chong Yidong  <cyd@stupidchicken.com>
2121
2122	* search.c (struct regexp_cache): New entry syntax_table.
2123	(compile_pattern_1): Set it.
2124	(syms_of_search): Initialize it.
2125	(compile_pattern): Require the syntax_table entry of the cache
2126	element to match the current syntax table entry.
2127
21282006-09-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2129
2130	* window.c (Fwindow_end): Fix recent change.
2131
21322006-09-19  Kim F. Storm  <storm@cua.dk>
2133
2134	* window.c (Fset_window_hscroll, Fpos_visible_in_window_p):
2135	Doc fix.  Use "off-screen" instead of "invisible".
2136	(Fwindow_line_height): Make line numbers 0-based.  Make line arg
2137	optional; if nil, use current cursor row.  Handle text terminals
2138	properly.  Return nil if non-interactive or pseudo-window.
2139
21402006-09-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2141
2142	* keymap.c: Include alloca.h if available.
2143	(Fkey_binding): Only use AREF after checking it's a vector.
2144	Remove unused var `window'.
2145
21462006-09-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2147
2148	* emacs.c (shut_down_emacs) [!subprocesses]: Don't set
2149	inhibit_sentinels.
2150
2151	* mac.c [!MAC_OSX] (select): Fix argument name.
2152
2153	* macmenu.c (enum mac_menu_kind, min_menu_id): New enumerator and
2154	menu ID for Apple menu.
2155	(menubar_selection_callback): Remove function.
2156	(find_and_call_menu_selection): New function from xmenu.c.
2157	(x_activate_menubar): Use it.
2158	(set_frame_menubar): Don't use f->output_data.mac->menubar_active.
2159
2160	* macterm.c (menubar_selection_callback): Remove extern.
2161	(M_APPLE): Change to 234.
2162	(do_apple_menu) [!TARGET_API_MAC_CARBON]: Make non-static.
2163	(do_menu_choice): Remove function.
2164
2165	* macterm.h (struct mac_output): Remove member menubar_active.
2166	(do_menu_choice): Remove extern.
2167	(do_apple_menu) [!TARGET_API_MAC_CARBON]: Add extern.
2168
21692006-09-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2170
2171	* xfns.c (syms_of_xfns): Rename x_gtk_show_chooser_help_text to
2172	x_gtk_file_dialog_help_text.
2173
2174	* gtkutil.c (xg_uses_old_file_dialog): Rename x-use-old-gtk-file-dialog
2175	to x-gtk-use-old-file-dialog.
2176	(xg_get_file_with_chooser): Rename x_gtk_show_chooser_help_text to
2177	x_gtk_file_dialog_help_text.
2178
2179	* xfns.c (syms_of_xfns): Ditto.
2180
21812006-09-18  Kim F. Storm  <storm@cua.dk>
2182
2183	* window.c (Fwindow_line_visibility): Remove.
2184	(Fwindow_line_height): New defun replacing it.
2185	(syms_of_window): Defsubr it.
2186
21872006-09-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2188
2189	* mac.c (SELECT_USE_CFSOCKET) [MAC_OSX]: Set default to 1.
2190	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Fix pointer type.
2191
21922006-09-17  Jay Belanger  <belanger@truman.edu>
2193
2194	* gmalloc.c:
2195	* md5.c:
2196	* md5.h:
2197	* strftime.c: Replace "GNU Library General Public License" by "GNU
2198	General Public License" throughout.
2199
22002006-09-17  Kim F. Storm  <storm@cua.dk>
2201
2202	* dispnew.c (update_text_area): Undo 2000-07-18 change.
2203	Always redrawing whole row if line has mouse-face in it causes
2204	excessive flickering of the mode line.
2205
22062006-09-17  Chong Yidong  <cyd@stupidchicken.com>
2207
2208	* search.c (clear_regexp_cache): New function.
2209
2210	* syntax.c (Fmodify_syntax_entry): Clear regexp cache.
2211
22122006-09-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2213
2214	* gtkutil.c (xg_get_file_with_chooser):
2215	Check x-gtk-show-chooser-help-text before adding the help text.
2216
2217	* xfns.c (syms_of_xfns): New variable: x-gtk-show-chooser-help-text.
2218
2219	* gtkutil.c (get_utf8_string): Try harder to convert to UTF8.  Gtk+
2220	will simply crash if we fail.
2221
22222006-09-16  Richard Stallman  <rms@gnu.org>
2223
2224	* regex.c (re_compile_pattern): Set gl_state.current_syntax_table.
2225
22262006-09-15  Kim F. Storm  <storm@cua.dk>
2227
2228	* window.c (Fwindow_line_visibility): New defun for line-move-partial.
2229	(syms_of_window): Defsubr it.
2230	(Fwindow_end): Use window's buffer rather than current buffer.
2231
22322006-09-15  Jay Belanger  <belanger@truman.edu>
2233
2234	* COPYING: Replace "Library Public License" by "Lesser Public
2235	License" throughout.
2236
22372006-09-15  David Kastrup  <dak@gnu.org>
2238
2239	* Makefile.in (keymap.o): Add "keymap.h" and "window.h" dependencies.
2240
2241	* keymap.c: include "window.h".
2242	(Fcommand_remapping): New optional POSITION argument.
2243	(Fkey_binding): New optional POSITION argument.  Completely rework
2244	handling of mouse clicks to get the same order of keymaps as
2245	`read-key-sequence' and heed POSITION.  Also temporarily switch
2246	buffers to location of mouse click and back.
2247
2248	* keyboard.c (command_loop_1): Adjust call of `Fcommand_remapping'
2249	for additional argument.
2250	(parse_menu_item): Adjust call of `Fkey_binding' for additional
2251	argument.
2252	(read_key_sequence): If there are both `local-map' and `keymap'
2253	text properties at some buffer position, heed both.
2254
2255	* keymap.h: Declare additional optional arguments of
2256	`Fcommand_remapping' and `Fkey_binding'.
2257
22582006-09-15  Juanma Barranquero  <lekktu@gmail.com>
2259
2260	* indent.c (Fcurrent_column, Findent_to): Fix typos in docstring.
2261
22622006-09-14  Andreas Schwab  <schwab@suse.de>
2263
2264	* print.c: Whitespace fixup.
2265
22662006-09-14  Kim F. Storm  <storm@cua.dk>
2267
2268	* xdisp.c (produce_image_glyph): Automatically crop wide images at
2269	right window edge so we can draw the cursor on the same row to
2270	avoid confusing redisplay by placing the cursor outside the visible
2271	window area.
2272
22732006-09-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2274
2275	* xterm.c (x_initialize): Don't install Xt event timer here.
2276	(x_timeout_atimer_activated_flag): New var.
2277	(x_activate_timeout_atimer): New function to install Xt timer.
2278	(x_send_scroll_bar_event, x_process_timeouts): Use it.
2279
2280	* xmenu.c (x_menu_set_in_use, popup_activate_callback)
2281	(create_and_show_popup_menu, create_and_show_dialog): Use it.
2282
2283	* xterm.h (x_activate_timeout_atimer): Add prototype.
2284
22852006-09-13  Richard Stallman  <rms@gnu.org>
2286
2287	* print.c (print_string): When printcharfun is t,
2288	copy string contents and call strout on the copy.
2289
2290	* keyboard.c (read_char): If end_time specified, don't put the
2291	event into this_command_keys.
2292	(read_key_sequence): If Voverriding_terminal_local_map is specified,
2293	don't check Voverriding_local_map at all.
2294
22952006-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
2296
2297	* textprop.c (Fnext_property_change, Fnext_single_property_change)
2298	(Fprevious_property_change, Fprevious_single_property_change):
2299	Avoid changing limit, so we can correctly catch the case where the
2300	property is constant up to limit.
2301
23022006-09-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2303
2304	* macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
2305	* macterm.c (XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
2306	Undo 2006-09-08 change.
2307
23082006-09-11  Chong Yidong  <cyd@stupidchicken.com>
2309
2310	* keymap.c (Fkey_binding): Use string position for string objects.
2311
23122006-09-11  Kim F. Storm  <storm@cua.dk>
2313
2314	* keymap.c (Fkey_binding): Fix last change.
2315
2316	* editfns.c (Fmessage): Recommend using (message "%s" ...).
2317
23182006-09-10  Chong Yidong  <cyd@stupidchicken.com>
2319
2320	* keymap.c (Fkey_binding): Check for local keymap for mouse click
2321	events.
2322
23232006-09-10  Kim F. Storm  <storm@cua.dk>
2324
2325	* keyboard.c (Finput_pending_p): Check Vunread_input_method_events
2326	and Vunread_post_input_method_events.
2327
2328	* dispnew.c (Fredisplay): Document return value.
2329
23302006-09-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2331
2332	* xfns.c (Fx_close_connection): Call xg_display_close when USE_GTK.
2333
2334	* gtkutil.c (xg_display_close): Always change default display if needed,
2335	check for < Gtk+ version 2.10 before calling gdk_display_close.
2336
23372006-09-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2338
2339	* mac.c [MAC_OSX] (sys_select): Check argument `nfds' more rigidly.
2340	Make variable `ofds' static.  Remove variable `maxfd'.
2341
2342	* macfns.c (Fx_file_dialog): Remove unused variable `f'.
2343	Call check_mac.
2344
2345	* macmenu.c (Vmenu_updating_frame, syms_of_macmenu):
2346	* w32menu.c (Vmenu_updating_frame, syms_of_w32menu):
2347	Apply 2006-09-08 change for xmenu.c.
2348
2349	* xfns.c (Fx_file_dialog): Call check_x.
2350
23512006-09-10  Kim F. Storm  <storm@cua.dk>
2352
2353	* xdisp.c (get_window_cursor_type): Use hollow cursor on
2354	non-transparent images.
2355
23562006-09-09  Eli Zaretskii  <eliz@gnu.org>
2357
2358	* editfns.c (Fsystem_name): Mention "host" in the doc string.
2359	(syms_of_editfns) <system-name>: Likewise.
2360
23612006-09-08  Martin Rudalics  <rudalics@gmx.at>
2362
2363	* xdisp.c (mouse_autoselect_window): Remove.
2364	(Vmouse_autoselect_window): New variable.  DEFVAR_LISP it.
2365
2366	* dispextern.h (mouse_autoselect_window): Remove extern.
2367	(Vmouse_autoselect_window): Add extern.
2368
2369	* macterm.c (XTread_socket): Test Vmouse_autoselect_window
2370	instead of mouse_autoselect_window.
2371
2372	* msdos.c (dos_rawgetc): Likewise.
2373
2374	* w32term.c (w32_read_socket): Likewise.
2375
2376	* xterm.c (handle_one_xevent): Likewise.
2377
23782006-09-08  Richard Stallman  <rms@gnu.org>
2379
2380	* xdisp.c (Vmenu_updating_frame): Define here.
2381	(syms_of_xdisp): DEFVAR it here.
2382	(update_menu_bar): Always return hooks_run.
2383	Set Vmenu_updating_frame.
2384
2385	* xdisp.c (redisplay_internal): Test Vinhibit_redisplay
2386	before calculating SELECTED_FRAME.
2387
2388	* xmenu.c (Vmenu_updating_frame): Don't define here.
2389	(syms_of_xmenu): Don't DEFVAR it here.
2390
2391	* xterm.c (x_error_quitter): For BadName error, just return.
2392
2393	* eval.c (find_handler_clause): Give up on debugger if INPUT_BLOCKED_P.
2394
2395	* casetab.c (init_casetab_once): Call set_case_table.
2396
2397	* emacs.c (shut_down_emacs): Set inhibit_sentinels.
2398
2399	* process.c (inhibit_sentinels): New variable.
2400	(exec_sentinel): Test inhibit_sentinels.
2401	(init_process): Initialize it.
2402
2403	* process.h (inhibit_sentinels): Add decl.
2404
2405	* search.c (looking_at_1, string_match_1, search_command):
2406	Make syntax table's canon table point to eqv table.
2407
24082006-09-08  Andreas Schwab  <schwab@suse.de>
2409
2410	* print.c (strout): Fix whitespace.
2411
24122006-09-08  Kim F. Storm  <storm@cua.dk>
2413
2414	* xterm.c (x_draw_glyph_string): Fix 2006-08-24 change.
2415
24162006-09-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2417
2418	* mac.c [!MAC_OSX]: Don't include keyboard.h.
2419	[!MAC_OSX] (select): Try detect_input_pending before ReceiveNextEvent
2420	in the same BLOCK_INPUT block, in case that some input has already
2421	been read asynchronously.  Pretend to be interrupted by a signal
2422	if some input is available.
2423	[MAC_OSX] (select_and_poll_event, sys_select): Likewise.
2424	(SELECT_POLLING_PERIOD_USEC) [SELECT_USE_CFSOCKET]: Change to 100000.
2425	Now used for ReceiveNextEvent timeout instead of select timeout.
2426	(EVENT_CLASS_SOCK) [SELECT_USE_CFSOCKET]: Remove macro.
2427	[SELECT_USE_CFSOCKET] (socket_callback): Add non-blocking connect
2428	support.  Quit event loop.
2429	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Add non-blocking
2430	connect support.  Reuse previously allocated CFRunLoopSource.
2431	(Fmac_process_hi_command) [TARGET_API_MAC_CARBON]: New function.
2432	(syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
2433
2434	* macfns.c (mac_window) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
2435	Specify kWindowAsyncDragAttribute.
2436
2437	* macterm.c (mac_handle_origin_change, mac_handle_size_change)
2438	(mac_get_ideal_size): New functions.
2439	(x_set_offset, x_set_window_size, x_make_frame_visible)
2440	(do_zoom_window, mac_handle_window_event, XTread_socket): Use them.
2441	(install_window_handler, mac_handle_window_event)
2442	[USE_CARBON_EVENTS]: Handle kEventWindowGetIdealSize and
2443	kEventWindowBoundsChanged.
2444	(XTread_socket) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Don't call
2445	DragWindow.
2446
24472006-09-07  Andreas Schwab  <schwab@suse.de>
2448
2449	* m/ibms390x.h (START_FILES, LIB_STANDARD): Override to
2450	use lib64 instead of lib.
2451
24522006-09-06  Stefan Monnier  <monnier@iro.umontreal.ca>
2453
2454	* Makefile.in: Avoid double quotes when possible.
2455
24562006-09-06  Kenichi Handa  <handa@m17n.org>
2457
2458	* editfns.c (Fformat_time_string): Use make_unibyte_string to make
2459	a Lisp string from the result of emacs_memftimeu call.
2460
24612006-09-06  Kim F. Storm  <storm@cua.dk>
2462
2463	* xdisp.c (pos_visible_p): Remove exact_mode_line_heights_p arg;
2464	so calculate heights even when pos-visible-in-window-p is called
2465	with partially = t.  Don't overshoot last_visible_y in move_it_to.
2466	Return row height and row number in new rowh and vpos args.
2467	(cursor_row_fully_visible_p): First line is always "fully visible".
2468	(try_window): Don't clear matrix if vscrolled.
2469
2470	* lisp.h (pos_visible_p): Update prototype.
2471
2472	* window.c (Fpos_visible_in_window_p): Adapt to new pos_visible_p.
2473	Return row height and row number for partially visible rows.
2474	Modify return value to a 2 element list for fully visible rows and
2475	6 for partially visible row.
2476	(window_scroll_pixel_based): Use pos_visible_p directly instead of
2477	Fpos_visible_in_window_p.  Fix auto vscrolling for partially
2478	visible lines.  Only vscroll backwards if already vscrolled
2479	forwards.  Unconditionally vscroll forwards if PT is first (and
2480	only) line.  Set new window start instead of scrolling at
2481	start/end of tall line.
2482
24832006-09-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2484
2485	* macterm.c (install_window_handler, mac_handle_window_event)
2486	[USE_CARBON_EVENTS]: Handle kEventWindowClose.
2487	[USE_MAC_TSM] (mac_handle_text_input_event): Set modifiers for
2488	ASCII keystroke event.
2489
24902006-09-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2491
2492	* gtkutil.c (xg_get_file_with_chooser): Don't mention specific keys in
2493	the file chooser message.  Only call gtk_file_chooser_set_current_name
2494	when action is SAVE.
2495
24962006-09-04  Andreas Schwab  <schwab@suse.de>
2497
2498	* Makefile.in: Double all single and back quotes in C-style
2499	comments to help fontifier.
2500
25012006-09-03  Jason Rumney  <jasonr@gnu.org>
2502
2503	* w32.c (shutdown_handler): New function to exit cleanly on shutdown.
2504	(globals_of_w32): Register it as a signal handler.
2505
25062006-09-02  Juri Linkov  <juri@jurta.org>
2507
2508	* marker.c (Fmarker_position): Doc fix.
2509
25102006-09-03  Eli Zaretskii  <eliz@gnu.org>
2511
2512	* window.c (syms_of_window) <split-height-threshold>:
2513	<window-min-height, window-min-width>: Doc fix.
2514
25152006-09-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2516
2517	* gtkutil.c (xg_get_file_with_chooser): Change file chooser message
2518	for writing files.  Call gtk_file_chooser_set_current_name to keep
2519	default filename.
2520
2521	* minibuf.c (Finternal_complete_buffer): Move after DEFUN:s it calls
2522
25232006-09-02  Jindrich Makovicka  <makovick@gmail.com>  (tiny change)
2524
2525	* fns.c (concat) [__GNUC__]: Declare with
2526	`__attribute__((noinline))'.
2527
2528	* eval.c (apply1, call2) [__GNUC__]: Declare with
2529	`__attribute__((noinline))'.
2530
25312006-09-02  Stuart D. Herring  <herring@lanl.gov>
2532
2533	* minibuf.c (Finternal_complete_buffer): New function.
2534	(syms_of_minibuf): Defsubr it.
2535	(Fread_buffer): Use it, instead of Vbuffer_alist.
2536
25372006-09-01  Martin Rudalics  <rudalics@gmx.at>
2538
2539	* buffer.h (struct buffer_text): New field chars_modiff.
2540	(CHARS_MODIFF, BUF_CHARS_MODIFF): New macros.
2541	* buffer.c (Fbuffer_chars_modified_tick): New function returning
2542	value of BUF_CHARS_MODIFF.
2543	(syms_of_buffer): Defsubr it.
2544	(Fget_buffer_create): Initialize BUF_CHARS_MODIFF.
2545	* insdel.c (modify_region): New argument preserve_chars_modiff.
2546	Set CHARS_MODIFF to MODIFF provided preserve_chars_modiff is zero.
2547	(insert_1_both, insert_from_string_1, insert_from_buffer_1)
2548	(adjust_after_replace, adjust_after_replace_noundo)
2549	(replace_range, replace_range_2, del_range_2): Reset CHARS_MODIFF.
2550	* lisp.h (modify_region): Add fourth argument in extern.
2551	* casefiddle.c (casify_region): Call modify_region with fourth
2552	argument zero to assert that CHARS_MODIFF is updated.
2553	* editfns.c (Fsubst_char_in_region, Ftranslate_region_internal)
2554	(Ftranspose_regions): Likewise.
2555	* textprop.c (Fadd_text_properties, Fset_text_properties)
2556	(Fremove_text_properties, Fremove_list_of_text_properties):
2557	Call modify_region with fourth argument 1 to avoid that
2558	CHARS_MODIFF is updated.
2559
25602006-08-31  Richard Stallman  <rms@gnu.org>
2561
2562	* editfns.c (Fformat): Don't sign-extend for %o or %x.
2563
25642006-08-29  Chong Yidong  <cyd@stupidchicken.com>
2565
2566	* indent.c (Fvertical_motion): Don't move back if we were
2567	displaying a Lisp string, either.
2568
25692006-08-28  Kim F. Storm  <storm@cua.dk>
2570
2571	* xdisp.c (get_window_cursor_type) [!HAVE_WINDOW_SYSTEM]:
2572	Don't attempt to replace cursor on image glyphs.
2573
25742006-08-28  Kenichi Handa  <handa@m17n.org>
2575
2576	* coding.c (Fdetect_coding_region, Fdetect_coding_string):
2577	Fix docstring about ISO-2022 control characters.
2578
25792006-08-28  Kim F. Storm  <storm@cua.dk>
2580
2581	* xdisp.c (get_window_cursor_type): Replace BOX cursor on images
2582	with a hollow box cursor if image is larger than 32x32 (or the default
2583	frame font if that is bigger).  Replace any other cursor on images
2584	with hollow box cursor, as redisplay doesn't support bar and hbar
2585	cursors on images.
2586
25872006-08-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2588
2589	* alloc.c (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Undo previous
2590	change.  Move mutex lock/unlock operations inside BLOCK_INPUT.
2591
2592	* dired.c (directory_files_internal_unwind, directory_files_internal)
2593	(file_name_completion): Add BLOCK_INPUT around opendir/closedir.
2594
2595	* image.c [MAC_OS] (image_load_qt_1): Use ComponentResult instead
2596	of OSErr.
2597
2598	* keyboard.c (in_sighandler): Remove variable.
2599	(Fcurrent_idle_time): Add missing `doc:'.
2600	(input_available_signal, init_keyboard): Undo previous change.
2601
2602	* keyboard.h (in_sighandler): Remove extern.
2603
2604	* mac.c (create_apple_event_from_event_ref, select)
2605	(Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2606	(Fmac_set_file_type, cfstring_create_normalized)
2607	(mac_get_system_locale, select_and_poll_event, sys_select):
2608	Use OSStatus instead of OSErr.
2609
2610	* macfns.c [TARGET_API_MAC_CARBON] (mac_update_proxy_icon):
2611	Don't use FRAME_FILE_NAME.  Use (FS)UpdateAlias.
2612	(Fx_create_frame): Apply 2006-07-03 for xfns.c.
2613
2614	* macselect.c (get_scrap_from_symbol, clear_scrap, put_scrap_string)
2615	(put_scrap_private_timestamp, scrap_has_target_type, get_scrap_string)
2616	(get_scrap_private_timestamp, get_scrap_target_type_list)
2617	(x_own_selection, x_get_foreign_selection)
2618	(Fx_disown_selection_internal, Fx_selection_owner_p)
2619	(Fx_selection_exists_p): Use OSStatus instead of OSErr.
2620
2621	* macterm.c (mac_draw_string_common, mac_query_char_extents)
2622	(x_iconify_frame, XLoadQueryFont, install_window_handler)
2623	(mac_handle_command_event, init_command_handler, init_menu_bar):
2624	Use OSStatus instead of OSErr.
2625	(x_free_frame_resources) [TARGET_API_MAC_CARBON]: Don't use
2626	FRAME_FILE_NAME.
2627	(x_query_font): Apply 2006-08-04 change for xterm.c.
2628	(Qhi_command): Rename from Qhicommand.  All uses changed.
2629
2630	* macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]: Remove member
2631	file_name.
2632	(FRAME_FILE_NAME): Remove macro.
2633	(install_window_handler, create_apple_event_from_event_ref):
2634	Return OSStatus instead of OSErr.
2635
26362006-08-26  Kim F. Storm  <storm@cua.dk>
2637
2638	* buffer.c (Fset_buffer_multibyte):
2639	* editfns.c (Fcurrent_time, Fget_internal_run_time):
2640	* macfns.c (Fxw_color_values):
2641	* w32fns.c (Fxw_color_values):
2642	* xfns.c (Fxw_color_values): Simplify; use list3.
2643
2644	* fileio.c (Fmake_directory_internal, Fdelete_directory)
2645	(Fdelete_file): Simplify; use list1.
2646	(Frename_file, Fadd_name_to_file, Fmake_symbolic_link):
2647	Simplify; remove NO_ARG_ARRAY stuff, use list2.
2648
26492006-08-25  Richard Stallman  <rms@gnu.org>
2650
2651	* buffer.c (Fswitch_to_buffer): Fix previous change.
2652
26532006-08-25  Kim F. Storm  <storm@cua.dk>
2654
2655	* keyboard.c (Fcurrent_idle_time): Simplify.
2656
26572006-08-25  Richard Stallman  <rms@gnu.org>
2658
2659	* fns.c (sxhash_string): Rotate properly; don't lose bits.
2660
26612006-08-24  Francesc Rocher  <francesc.rocher@gmail.com>
2662
2663	* xdisp.c (overline_margin): New variable.
2664	(x_produce_glyphs): Use it.
2665	(syms_of_xdisp): DEFVAR_INT it.
2666
2667	* xterm.c (x_underline_at_descent_line): New variable.
2668	(syms_of_xterm): DEFVAR_BOOL it.
2669	(x_draw_glyph_string): Use it.
2670	Draw underline and overline up to the end of line if the face
2671	extends to the end of line.
2672
2673	* macterm.c: Likewise.
2674
2675	* w32term.c: Likewise.
2676
26772006-08-24  Nick Roberts  <nickrob@snap.net.nz>
2678
2679	* buffer.c (Fswitch_to_buffer): Move buffer to front of
2680	buffer-alist if necessary.
2681
26822006-08-22  Kim F. Storm  <storm@cua.dk>
2683
2684	* xdisp.c (update_tool_bar): Redisplay toolbar also when only
2685	number of items changes.
2686
26872006-08-22  Stefan Monnier  <monnier@iro.umontreal.ca>
2688
2689	* buffer.c (Fset_buffer_multibyte): Record proper undo entry.
2690
26912006-08-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2692
2693	* keyboard.c: Clarify difference between in_sighandler and
2694	handling_signal.
2695
26962006-08-21  Kim F. Storm  <storm@cua.dk>
2697
2698	* macterm.c (x_draw_stretch_glyph_string):
2699	* w32term.c (x_draw_stretch_glyph_string):
2700	* xterm.c (x_draw_stretch_glyph_string): It is ok to draw a
2701	stretch glyph in left marginal areas on header and mode lines.
2702
27032006-08-21  Kenichi Handa  <handa@m17n.org>
2704
2705	* keyboard.c (syms_of_keyboard): Docstring of
2706	Vunread_post_input_method_events and Vunread_input_method_events
2707	fixed.
2708
27092006-08-20  Chong Yidong  <cyd@stupidchicken.com>
2710
2711	* keyboard.c (show_help_echo): Preserve mouse movement flag if
2712	tracking mouse.
2713
27142006-08-20  Richard Stallman  <rms@gnu.org>
2715
2716	* xfaces.c (load_pixmap): Add quotes in error message.
2717
2718	* keyboard.c (Fcurrent_idle_time): New function.
2719	(syms_of_keyboard): defsubr it.
2720
27212006-08-18  Nick Roberts  <nickrob@snap.net.nz>
2722
2723	* window.c (Fset_window_fringes): Do nothing on a tty.
2724	(Fwindow_fringes): Put ? operator after the line break.
2725
27262006-08-16  Andreas Schwab  <schwab@suse.de>
2727
2728	* print.c (debug_output_compilation_hack): Fix return type.
2729
27302006-08-16  Richard Stallman  <rms@gnu.org>
2731
2732	* print.c (debug_output_compilation_hack): New function.
2733
27342006-08-16  Kenichi Handa  <handa@m17n.org>
2735
2736	* fileio.c (choose_write_coding_system): Use LF for end-of-line
2737	in auto-saving.
2738
27392006-08-15  Chong Yidong  <cyd@stupidchicken.com>
2740
2741	* keyboard.c (read_char): Don't change idle timer state at all if
2742	end_time is supplied.
2743
27442006-08-15  Kenichi Handa  <handa@m17n.org>
2745
2746	* coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New arg RET.  If SRC
2747	is exhausted, return with RET.
2748	(detect_coding_emacs_mule, detect_coding_iso2022)
2749	(detect_coding_sjis, detect_coding_big5, detect_coding_utf_8)
2750	(detect_coding_utf_16, detect_coding_ccl): Adjusted for the above
2751	change.
2752
27532006-08-14  Chong Yidong  <cyd@stupidchicken.com>
2754
2755	* keyboard.c (read_char): Don't reset idle timers if a time limit
2756	is supplied.
2757
27582006-08-14  Kim F. Storm  <storm@cua.dk>
2759
2760	* .gdbinit (pitx): Print iterator position.
2761	Limit stack dump in case iterator is not initialized.
2762
27632006-08-12  Eli Zaretskii  <eliz@gnu.org>
2764
2765	* frame.c (Fmouse_position, Fmouse_pixel_position)
2766	(Fset_mouse_position, Fset_mouse_pixel_position): Doc fix.
2767
27682006-08-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2769
2770	* xselect.c (Fx_register_dnd_atom): New function.
2771	(syms_of_xselect): Defsubr it.
2772	(x_handle_dnd_message): Check that message_type is in
2773	dpyinfo->x_dnd_atoms before generating lisp event.
2774
2775	* xterm.h (struct x_display_info): Add x_dnd_atoms* to keep track
2776	of drag and drop Atoms.
2777
2778	* xterm.c (x_term_init): Initialize dpyinfo->x_dnd_atoms*
2779
27802006-08-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
2781
2782	* keyboard.c: Define in_sighandler.
2783	(input_available_signal): Set in_sighandler.
2784	(init_keyboard): Initialize in_sighandler.
2785
2786	* keyboard.h: Declare in_sighandler.
2787
2788	* alloc.c (UNBLOCK_INPUT_ALLOC, BLOCK_INPUT_ALLOC): Use in_sighandler
2789	to check if mutex should be locked or not.
2790
27912006-08-09  Richard Stallman  <rms@gnu.org>
2792
2793	* keyboard.c (keyremap_step): No-op if fkey->parent = nil.
2794	(read_key_sequence): Always start fkey.start and fkey.end at 0,
2795	and likewise for keytran.
2796
27972006-08-09  Kenichi Handa  <handa@m17n.org>
2798
2799	* coding.c (syms_of_coding): Improve the docstring
2800	of file-coding-system-alist.
2801
28022006-08-07  Andreas Schwab  <schwab@suse.de>
2803
2804	* puresize.h (BASE_PURESIZE): Increase to 1120000.
2805
28062006-08-06  Chong Yidong  <cyd@stupidchicken.com>
2807
2808	* buffer.c (Vchange_major_mode_hook, Qchange_major_mode_hook): New vars.
2809	(Fkill_all_local_variables): Use it.
2810	(syms_of_buffer): Defvar it.
2811
28122006-08-05  Eli Zaretskii  <eliz@gnu.org>
2813
2814	* w32.c (w32_valid_pointer_p): New function.
2815
2816	* w32.h: Add prototype for w32_valid_pointer_p.
2817
2818	* alloc.c: Include w32.h.
2819	(valid_lisp_object_p) [WINDOWSNT]: Call w32_valid_pointer_p to do
2820	the job.
2821
2822	* keyboard.c (kbd_buffer_get_event): Return Qnil when current time
2823	is exactly equal to end_time, not only when it is past that.
2824
28252006-08-04  Chong Yidong  <cyd@stupidchicken.com>
2826
2827	* keyboard.c (read_char): Rebalance specpdl after receiving jump.
2828
2829	* process.c: Reapply 2006-08-01 change.
2830
28312006-08-04  Eli Zaretskii  <eliz@gnu.org>
2832
2833	* w32fns.c (w32_query_font): Fix last change: use stricmp.
2834
28352006-08-04  Stefan Monnier  <monnier@iro.umontreal.ca>
2836
2837	* editfns.c (Fsubst_char_in_region): Redo the setup work after running
2838	the before-change-functions since they may have altered the buffer.
2839
28402006-08-04  Ralf Angeli  <angeli@caeruleus.net>
2841
2842	* w32fns.c (w32_createwindow): Handle -geometry command line option
2843	and the geometry settings in the Registry.
2844
28452006-08-04  Kenichi Handa  <handa@m17n.org>
2846
2847	* w32fns.c (w32_query_font): Compare names by ignoring case.
2848
2849	* xterm.c (x_query_font): Compare names by ignoring case.
2850
28512006-08-03  Jason Rumney  <jasonr@gnu.org>
2852
2853	* w32menu.c (w32_menu_show, w32_dialog_show): Call Fsignal to quit
2854	when no option selected.
2855
28562006-08-03  Chong Yidong  <cyd@stupidchicken.com>
2857
2858	* process.c: Revert last change.
2859
28602006-08-01  Kim F. Storm  <storm@cua.dk>
2861
2862	* process.c (wait_reading_process_output_unwind): New function.
2863	Restores waiting_for_user_input_p to saved value.
2864	(wait_reading_process_output): Unwind protect waiting_for_user_input_p
2865	instead of save/restore old value on stack.
2866
28672006-07-30  Thien-Thi Nguyen  <ttn@gnu.org>
2868
2869	* editfns.c: Undo 2006-06-27 change.
2870
28712006-07-29  Eli Zaretskii  <eliz@gnu.org>
2872
2873	* coding.c (Ffind_operation_coding_system): Revert the change from
2874	2006-05-29.
2875
2876	* alloc.c [WINDOWSNT]: Include fcntl.h, to fix last change.
2877
28782006-07-28  Richard Stallman  <rms@gnu.org>
2879
2880	* xfaces.c (lookup_named_face, Fdisplay_supports_face_attributes_p):
2881	Add conditional aborts for clarity.
2882
2883	* xdisp.c (update_menu_bar): New arg HOOKS_RUN.  Callers changed.
2884	Used to avoid running the hooks over and over for each frame.
2885	(prepare_menu_bars): Pass value from update_menu_bar
2886	as HOOKS_RUN of next call.
2887
2888	* keyboard.c (safe_run_hooks_1): Don't crash if Vrun_hooks is nil.
2889
28902006-07-28  Kim F. Storm  <storm@cua.dk>
2891
2892	* alloc.c (valid_pointer_p): New function (from valid_lisp_object_p).
2893	(valid_lisp_object_p): Use it to check for valid SUBRP obj.
2894
28952006-07-26  Chong Yidong  <cyd@stupidchicken.com>
2896
2897	* keyboard.c (read_char): New arg END_TIME specifying timeout.
2898	All callers changed.  Turn off echoing if END_TIME is non-NULL.
2899	(kbd_buffer_get_event): New arg END_TIME.
2900
2901	* lread.c (read_filtered_event): New arg SECONDS to wait until.
2902	(Fread_char, Fread_event, Fread_char_exclusive): New arg SECONDS.
2903
2904	* lisp.h: Update read-char, read-event, and read_filtered_event
2905	prototypes.
2906
2907	* keyboard.h: Include systime.h.  Update read_char prototype.
2908
29092006-07-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2910
2911	* alloc.c (find_string_data_in_pure): New function.
2912	(make_pure_string): Use it to reuse existing string data if possible.
2913
2914	* puresize.h (BASE_PURESIZE): Decrease to 1102000.
2915
29162006-07-22  Stefan Monnier  <monnier@iro.umontreal.ca>
2917
2918	* keymap.c (Fdefine_key): If the key binding definition looks like an
2919	XEmacs-style key sequence, convert it to Emacs's format.
2920
29212006-07-22  Ralf Angeli  <angeli@caeruleus.net>
2922
2923	* w32fns.c (w32_createwindow): If `left' and/or `top' frame
2924	parameters are bound to some values, use that instead of
2925	CW_USEDEFAULT.
2926
29272006-07-21  Eli Zaretskii  <eliz@gnu.org>
2928
2929	* w32.c (convert_time): Use explicit long double constants to
2930	ensure long double arithmetics is used throughout.
2931
29322006-07-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2933
2934	* alloc.c (pure_bytes_used_lisp, pure_bytes_used_non_lisp): New vars.
2935	(init_alloc_once): Initialize them.
2936	(pure_alloc): Allocate non-Lisp objects from the end of pure storage
2937	without alignment.
2938
2939	* puresize.h (BASE_PURESIZE): Decrease to 1141000.
2940
29412006-07-18  Francis Litterio  <franl@world.std.com>
2942
2943	* w32term.c (x_calc_absolute_position): Fix frame positioning
2944	with negative X/Y coordinates.
2945
29462006-07-18  Dan Nicolaescu  <dann@ics.uci.edu>
2947
2948	* xterm.c (x_connection_closed, x_error_quitter): Mark as NO_RETURN.
2949
2950	* textprop.c (text_read_only): Likewise.
2951
2952	* lread.c (end_of_file_error): Likewise.
2953
2954	* lisp.h (circular_list_error, memory_full, buffer_memory_full):
2955	Likewise.
2956
2957	* eval.c (unwind_to_catch): Likewise.
2958
2959	* buffer.h (buffer_slot_type_mismatch): Likewise.
2960
29612006-07-18  Kim F. Storm  <storm@cua.dk>
2962
2963	Cleanup Fsignal calls that never returns; now only use it for Qquit.
2964
2965	* eval.c (xsignal): New func.  Like Fsignal, but marked no-return.
2966	(xsignal0, xsignal1, xsignal2, xsignal3): New no-return functions.
2967	(signal_error): New no-return function (from xfaces.c).
2968	(Fthrow): Use xsignal2 instead of Fsignal + abort.
2969	(error): Use xsignal1 instead of Fsignal + abort.
2970	(FletX, Flet, grow_specpdl): Use signal_error.
2971	(Feval, Ffuncall, funcall_lambda): Use xsignal1, xsignal2.
2972
2973	* alloc.c (buffer_memory_full, memory_full): Use xsignal.  Remove loop.
2974	(list1): New function.
2975
2976	* lisp.h (list1): Add EXFUN.
2977	(xsignal, xsignal0, xsignal1, xsignal2, xsignal3, signal_error):
2978	Add prototypes.  Mark them as no-return.
2979
2980	* buffer.c (Fbuffer_local_value, Fbarf_if_buffer_read_only):
2981	Use xsignal1.
2982
2983	* callint.c (check_mark): Use xsignal0.
2984
2985	* casefiddle.c (casify_object): wrong_type_argument is no-return.
2986
2987	* cmds.c (Fforward_char, Fdelete_char): Use xsignal0.
2988
2989	* coding.c (Fcheck_coding_system): Use xsignal1.  Remove loop.
2990	(Fdefine_coding_system_internal): Use xsignal1.
2991
2992	* data.c (circular_list_error): Use xsignal.
2993	(wrong_type_argument): Use xsignal2.  Don't care about return value.
2994	(args_out_of_range, args_out_of_range_3): Use xsignal2, xsignal3.
2995	Remove loop around Fsignal.
2996	(indirect_variable, Fsymbol_value, set_internal, Fdefault_value)
2997	(indirect_function, Findirect_function, Fstring_to_number)
2998	(Fmakunbound, Ffmakunbound, Fsymbol_function, Ffset): Use xsignal1.
2999	(arith_driver, float_arith_driver, Frem, Fmod, arith_error):
3000	Use xsignal0.
3001
3002	* doc.c (Fdocumentation): Use xsignal1.
3003
3004	* editfns.c (region_limit, Fget_internal_run_time): Use xsignal0.
3005
3006	* fileio.c (report_file_error): Use xsignal.
3007	(barf_or_query_if_file_exists, Fcopy_file, Fdelete_file)
3008	(Finsert_file_contents): Use xsignal2.
3009	(syms_of_fileio): Use list2, list3.
3010
3011	* floatfns.c (arith_error, range_error, domain_error): Use xsignal2.
3012	(range_error2, domain_error2): Use xsignal3.
3013	(rounding_driver, fmod_float): Use xsignal0.
3014	(float_error): Use xsignal1.
3015	(matherr): Use xsignal.
3016
3017	* fns.c (Flength): wrong_type_argument is no-return.
3018	(hashfn_user_defined, Fmake_hash_table): Use signal_error.
3019	(Fmd5): Use xsignal1.
3020
3021	* frame.c (x_set_line_spacing, x_set_screen_gamma): Use signal_error.
3022
3023	* keyboard.c (recursive_edit_1): Use xsignal1.
3024
3025	* keymap.c (Fmap_keymap): Use xsignal1.
3026
3027	* lread.c (Fload): Use xsignal2, signal_error.
3028	(end_of_file_error): Use xsignal0, xsignal1.
3029	(read0): Use xsignal1.
3030	(invalid_syntax): New error function marked no-return.
3031	(read_integer, read1, read_list): Use it.
3032
3033	* macselect.c (x_get_local_selection): Use signal_error.
3034
3035	* msdos.c (Fmsdos_set_mouse_buttons): Use xsignal2.
3036
3037	* search.c (compile_pattern_1): Use xsignal1.
3038	(signal_failure): Remove (was only called once).
3039	(search_command): Use xsignal1 instead of signal_failure.
3040
3041	* syntax.c (scan_lists): Use xsignal3.
3042
3043	* textprop.c (text_read_only): Use xsignal0, xsignal1.
3044
3045	* unexsol.c (unexec): Use xsignal.
3046
3047	* window.c (window_scroll_pixel_based, window_scroll_line_based):
3048	Use xsignal0.
3049
3050	* xfaces.c (signal_error): Move to eval.c.
3051	(resolve_face_name): Use xsignal1.
3052
3053	* xfns.c (x_decode_color): Use signal_error.
3054
3055	* xselect.c (x_get_local_selection, copy_multiple_data)
3056	(x_get_window_property_as_lisp_data)
3057	(lisp_data_to_selection_data, CHECK_CUT_BUFFER)
3058	(Fx_get_cut_buffer_internal): Use signal_error.
3059
30602006-07-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3061
3062	* macterm.c (XTread_socket): Undo previous change.
3063
30642006-07-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3065
3066	* macterm.c (keycode_to_xkeysym): Remove function.  All uses now
3067	directly lookup keycode_to_xkeysym_table.
3068	[USE_MAC_TSM] (mac_handle_text_input_event): Don't construct
3069	ASCII_KEYSTROKE_EVENT for non-zero keycode_to_xkeysym_table entries.
3070	(XTread_socket): Use character codes to construct keypad key events.
3071	(mac_initialize_display_info) [MAC_OSX]: Use CGDisplaySamplesPerPixel.
3072	(x_delete_display): Apply 2006-07-04 change for xterm.c.
3073
30742006-07-17  Richard Stallman  <rms@gnu.org>
3075
3076	* keyboard.c (Vcommand_error_function): New variable.
3077	(syms_of_keyboard): Defvar it.
3078	(cmd_error_internal): Simplify, and handle Vcommand_error_function.
3079
3080	* dispnew.c (init_display): Mention DISPLAY as well as TERM in err msg.
3081
30822006-07-17  Kim F. Storm  <storm@cua.dk>
3083
3084	* xdisp.c (handle_single_display_spec): Ensure the right value of
3085	it->position is saved by push_it.
3086	(pop_it): Restore it->object for GET_FROM_BUFFER and GET_FROM_STRING.
3087	(reseat_1): Don't setup it->object twice.
3088	(set_iterator_to_next): No need to set it->object after pop_it.
3089	(move_it_to): Explicitly check to see if last move reached to_charpos.
3090
30912006-07-17  Thien-Thi Nguyen  <ttn@gnu.org>
3092
3093	* xdisp.c (display_mode_line): Preserve match data.
3094
30952006-07-14  Kim F. Storm  <storm@cua.dk>
3096
3097	* w32.c (pfn_WSACreateEvent, pfn_WSACloseEvent): New func ptrs.
3098	(init_winsock): Load them.  Use ws2_32.dll.
3099	(sys_listen): Undo last change.  Just set FILE_LISTEN flag.
3100	(sys_accept): Undo last change.  Instead, set child status to
3101	STATUS_READ_ACKNOWLEDGED and reset char_avail event so next
3102	sys_select will wakeup the reader thread.
3103	(_sys_wait_accept): New function used by reader thread to wait for
3104	an incoming connection on a server socket.
3105
3106	* w32.h (_sys_read_ahead, _sys_wait_accept): Add prototypes.
3107
3108	* w32proc.c (reader_thread): Use _sys_wait_accept to wait on a
3109	server socket (FILE_LISTEN flag).
3110
31112006-07-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3112
3113	* sound.c (alsa_init): Call snd_pcm_close after successful snd_pcm_open.
3114
31152006-07-14  Kim F. Storm  <storm@cua.dk>
3116
3117	* w32.c: Fix high cpu load for server sockets.
3118	(pfn_WSAEventSelect): New function ptr.
3119	(init_winsock): Load it.
3120	(sys_listen): Set FILE_LISTEN flag. Set event mask for socket's
3121	char_avail event object to FD_ACCEPT.
3122	(sys_accept): Check FILE_LISTEN flag.  Set event mask on new
3123	socket's char_avail event object to FD_READ|FD_CLOSE.
3124
3125	* w32.h (FILE_LISTEN): New filedesc flag value.
3126
31272006-07-13  Kim F. Storm  <storm@cua.dk>
3128
3129	* bytecode.c (Fbyte_code): Use CAR, CDR for Bcar, Bcdr.
3130	Use CAR_SAFE, CDR_SAFE for Bcar_safe, Bcdr_safe.
3131	Simplify loops and use CAR for Bnth and Belt.
3132
3133	* data.c (Findirect_function): Optimize for no indirection.
3134
3135	* eval.c (Fthrow): Remove loop around Fsignal.
3136	(Feval, Fapply, Ffuncall): Optimize for no function indirection.
3137	Use original function name in all signaled errors.
3138	Simplify Fsignal calls (no return).
3139	(funcall_lambda): Simplify Fsignal calls (no return).
3140
31412006-07-13  Andreas Schwab  <schwab@suse.de>
3142
3143	* syntax.c (scan_sexps_forward): Use EMACS_INT for out_bytepos and
3144	out_charpos.
3145
31462006-07-13  Kenichi Handa  <handa@m17n.org>
3147
3148	* editfns.c (Fformat): Fix calculation of text property positions
3149	of format string.
3150
31512006-07-12  Kim F. Storm  <storm@cua.dk>
3152
3153	* lisp.h (CHECK_TYPE): New macro for generic type checking.
3154	(CAR_SAFE, CDR_SAFE): New macros.
3155	(ARRAYP, CHECK_ARRAY): New macros.
3156	(CHECK_VECTOR_OR_STRING, CHECK_SUBR): New macros.
3157	(CHECK_WINDOW_CONFIGURATION): New macro.
3158	(CHECK_LIST_CONS, CHECK_LIST_END): New checks for list traversal.
3159	(CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
3160	(CHECK_STRING, CHECK_STRING_CAR, CHECK_CONS, CHECK_SYMBOL)
3161	(CHECK_CHAR_TABLE, CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE)
3162	(CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS)
3163	(CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER, CHECK_OVERLAY)
3164	(CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
3165	(CHECK_NUMBER_OR_FLOAT_COERCE_MARKER): Use CHECK_TYPE.
3166
3167	* category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET):
3168	* frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Use CHECK_TYPE.
3169
3170	* callint.c (Fcall_interactively):
3171	* casefiddle.c (casify_object):
3172	* editfns.c (general_insert_function):
3173	* fns.c (Flength, Felt, Ffillarray):
3174	* data.c (Fcar, Fcdr): Remove loop around wrong_type_argument.
3175
3176	* data.c (wrong_type_argument): Remove loop around Fsignal.
3177	(Farrayp, Fsequencep): Use ARRAYP.
3178	(Fcar): Use CAR.
3179	(Fcar_safe): Use CAR_SAFE.
3180	(Fcdr): Use CDR.
3181	(Fcdr_safe): Use CDR_SAFE.
3182	(Fsetcar, Fsetcdr): Use CHECK_CONS.
3183	(Fsubr_arity, Fsubr_name): Use CHECK_SUBR.
3184	(Faset): Use CHECK_ARRAY.
3185
3186	* fns.c (Felt): Use CHECK_ARRAY.
3187	(concat): Use CHECK_NUMBER.
3188	(Fsubstring, substring_both): Use CHECK_VECTOR_OR_STRING.
3189	(Fmemq): Use CHECK_LIST.
3190	(Fassq, Fassoc, Frassq, Frassoc): Use CAR.
3191	(assq_no_quit): Use CAR_SAFE.
3192	(Fnthcdr, Fmember, Fdelq, Fdelete, Fnreverse, Fnconc):
3193	Use CHECK_LIST_CONS.
3194	(Freverse, Fplist_get, Flax_plist_get): Use CHECK_LIST_END.
3195
3196	* bytecode.c (Fbyte_code): Use CHECK_VECTOR.
3197
3198	* casetab.c (check_case_table):
3199	* category.c (check_category_table):
3200	* marker.c (Fcopy_marker):
3201	* syntax.c (check_syntax_table):
3202	* xfaces.c (load_pixmap): Use CHECK_TYPE.
3203
3204	* fns.c (Fcopy_sequence, concat):
3205	* fringe.c (Fdefine_fringe_bitmap):
3206	* lread.c (check_obarray): Cleanup wrong_type_argument use.
3207
3208	* keyboard.c (access_keymap_keyremap): Use ARRAYP.
3209
3210	* keymap.c (Fdefine_key, Flookup_key):
3211	* macros.c (Fstart_kbd_macro): Use CHECK_VECTOR_OR_STRING.
3212
3213	* mac.c (Fmac_get_preference): Use CHECK_LIST_END.
3214
3215	* search.c (Fset_match_data): Use CHECK_LIST.
3216
3217	* sunfns.c (sun_item_create): Use CHECK_LIST_CONS.
3218
3219	* window.c (Fwindow_configuration_frame, Fset_window_configuration):
3220	(compare_window_configurations): Use CHECK_WINDOW_CONFIGURATION.
3221
32222006-07-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3223
3224	* Makefile.in (dired.o, editfns.o, fileio.o): Depend on blockinput.h.
3225
3226	* dired.c: Include blockinput.h.
3227	(Ffile_attributes): Add BLOCK_INPUT around getpwuid/getgrgid.
3228
3229	* editfns.c: Include blockinput.h.
3230	(Fuser_login_name, Fuser_full_name): Add BLOCK_INPUT around
3231	getpwuid/getpwnam.
3232
3233	* fileio.c: Include blockinput.h.
3234	(Fexpand_file_name, search_embedded_absfilename): Add BLOCK_INPUT
3235	around getpwnam.
3236	(search_embedded_absfilename): Remove spurious xfree.
3237
32382006-07-11  Kim F. Storm  <storm@cua.dk>
3239
3240	* dispnew.c (sit_for): Reduce number of args from 5 to 3.
3241	Now just one TIMEOUT arg that can be a Lisp float or Lisp int.
3242	Combine args DISPLAY and INITIAL_DISPLAY into one arg DO_DISPLAY.
3243	Signal error if TIMEOUT is not a number.
3244	Undo 2006-06-14 change for non-preemptive display if TIMEOUT < 0.
3245	The rework of sit_for args also fixes several incorrect Qt args
3246	which should have been 1.
3247	(Fredisplay): Pass 1 instead of Qt to swallow_events and
3248	detect_input_pending_run_timers.
3249
3250	* lisp.h (sit_for): Update prototype.
3251	(Fredisplay): Add EXFUN.
3252
3253	* dispextern.h (sit_for): Remove prototype.
3254
3255	* callint.c (Fcall_interactively):
3256	* minibuf.c (temp_echo_area_glyphs):
3257	* keyboard.c (command_loop_1, read_char, Fexecute_extended_command):
3258	* fileio.c (Fdo_auto_save): Update/simplify sit_for calls.
3259
32602006-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3261
3262	* syntax.c (forw_comment): Also use EMACS_INT for buffer positions.
3263
32642006-07-11  Kim F. Storm  <storm@cua.dk>
3265
3266	* dispnew.c (Fredisplay): Add FORCE argument to force redisplay when
3267	input is available.  Fix test for redisplay_dont_pause non-nil.
3268	Specbind redisplay-dont-pause to t if FORCE non-nil.
3269
32702006-07-10  Chong Yidong  <cyd@stupidchicken.com>
3271
3272	* puresize.h (BASE_PURESIZE): Increment to 1211000.
3273
3274	* dispnew.c (Fredisplay): New function, equivalent to (sit-for 0).
3275	(Fsit_for): Function deleted.
3276
3277	* keyboard.c (command_loop_1, Fexecute_extended_command):
3278	Call sit_for instead of Fsit_for.
3279
3280	* minibuf.c (temp_echo_area_glyphs): Likewise.
3281
32822006-07-09  Stefan Monnier  <monnier@iro.umontreal.ca>
3283
3284	* syntax.c (Fforward_comment): Revert the reversion.
3285	(back_comment, scan_lists): Also use EMACS_INT for buffer positions.
3286
32872006-07-09  John Paul Wallington  <jpw@pobox.com>
3288
3289	* syntax.c (Fforward_comment): Revert previous change.
3290
32912006-07-09  Kim F. Storm  <storm@cua.dk>
3292
3293	* window.c (Fforce_window_update): Doc fix.
3294
32952006-07-08  Stephen Gildea  <gildea@stop.mail-abuse.org>
3296
3297	* fileio.c (do_auto_save_make_dir): Make the auto-save-list-file
3298	directory unreadable for better user privacy.
3299
33002006-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3301
3302	* syntax.c (Fforward_comment): Fix int-32 vs EMACS_INT-64 mixup.
3303
3304	* lread.c (read_filtered_event): Remove `register' qualifier because it
3305	causes compilation problem with gcc-4.0.2-20051125 on amd64.
3306	(readevalloop): Remove unused var `bpos'.
3307	Yet another int/Lisp_Object mixup (YAILOM).
3308
33092006-07-07  Eli Zaretskii  <eliz@gnu.org>
3310
3311	* keyboard.c (Fexecute_extended_command): Mention the argument
3312	PREFIXARG in the doc string.
3313
33142006-07-07  Kim F. Storm  <storm@cua.dk>
3315
3316	* fringe.c (Fdefine_fringe_bitmap): Doc fix.
3317
33182006-07-05  Chong Yidong  <cyd@stupidchicken.com>
3319
3320	* insdel.c (prepare_to_modify_buffer): For an indirect buffer, do
3321	clash detection using the base buffer.
3322
3323	* puresize.h (BASE_PURESIZE): Increment to 1210500.
3324
33252006-07-04  Kim F. Storm  <storm@cua.dk>
3326
3327	* xterm.c (x_delete_display): Don't free or derefence NULL pointers.
3328
33292006-07-04  Kenichi Handa  <handa@m17n.org>
3330
3331	* fontset.c (Fset_overriding_fontspec_internal): Check if we need
3332	to update Voverriding_fontspec_alist.
3333
33342006-07-03  Richard Stallman  <rms@gnu.org>
3335
3336	* xfns.c (Fx_create_frame): Move unwind_create_frame setup down.
3337
3338	* xfaces.c (Fface_attribute_relative_p): Doc fix.
3339
3340	* textprop.c (Fget_char_property_and_overlay): Doc fix.
3341
3342	* eval.c (Fdefvaralias): Doc fix.
3343
33442006-07-03  Kim F. Storm  <storm@cua.dk>
3345
3346	* dispnew.c (sit_for): Fix preempt condition.
3347
33482006-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
3349
3350	* lread.c (read_filtered_event): Treat select-window just like
3351	switch-frame.
3352
33532006-07-02  Kim F. Storm  <storm@cua.dk>
3354
3355	* xdisp.c (display_tool_bar_line): Skip glyphs which are too big
3356	to ever fit the tool-bar,
3357	(MAX_FRAME_TOOL_BAR_HEIGHT): New macro.
3358	(tool_bar_lines_needed): Use unused mode-line row as temp_row.
3359	(redisplay_tool_bar): Only clear desired matrix if we actually
3360	change the tool-bar window height.  Only try to make the tool-bar
3361	window bigger if there is actually room for it.
3362
33632006-06-30  Ralf Angeli  <angeli@caeruleus.net>
3364
3365	* w32term.c (x_make_frame_visible): Use SystemParametersInfo with
3366	SPI_GETWORKAREA to find the dimensions of the screen work area,
3367	and adjust vertical position of the frame in order to avoid being
3368	covered by the task bar.
3369
3370	* w32fns.c (w32_createwindow): Use CW_USEDEFAULT instead of
3371	f->left_pos and SH_SHOW instead of f->top_pos in the call to
3372	CreateWindow.  Record the actual position in f->left_pos and
3373	f->top_pos.
3374
33752006-06-30  John Paul Wallington  <jpw@pobox.com>
3376
3377	* w32console.c (syms_of_ntterm) <w32-use-full-screen-buffer>:
3378	Doc fix - default value has changed.
3379
33802006-06-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3381
3382	* mac.c [!TARGET_API_MAC_CARBON]: Don't include FixMath.h or Scrap.h.
3383
3384	* macfns.c (Fx_create_frame): Apply 2006-06-24 change for xfns.c.
3385
3386	* macgui.h (USE_MAC_TSM) [TARGET_API_MAC_CARBON]: Set default to 1.
3387
3388	* macterm.c (Qeql): Add extern.
3389	(x_set_mouse_pixel_position) [MAC_OSX]: Use CGWarpMouseCursorPosition.
3390	(fm_style_face_attributes_alist) [USE_ATSUI]: New variable.
3391	(syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
3392	Change keys of Vmac_atsu_font_table from strings to numbers.
3393	(fm_style_to_face_attributes) [USE_ATSUI]: New function.
3394	(init_font_name_table) [USE_ATSUI]: Use it.
3395	(saved_ts_script_language_on_focus) [USE_MAC_TSM]: New variable.
3396	(syms_of_macterm) [USE_MAC_TSM]: Initialize and staticpro it.
3397	[USE_MAC_TSM] (mac_tsm_resume): Restore script and language codes
3398	only when saved_ts_script_language_on_focus coincides with
3399	Vmac_ts_script_language_on_focus.
3400	[USE_MAC_TSM] (mac_tsm_suspend): Save value of
3401	Vmac_ts_script_language_on_focus to saved_ts_script_language_on_focus.
3402	(XTread_socket) [USE_MAC_TSM]: Add Mac OS Classic support.
3403	[USE_MAC_TSM] (mac_handle_text_input_event, init_tsm): Likewise.
3404
34052006-06-27  Chong Yidong  <cyd@stupidchicken.com>
3406
3407	* editfns.c (Fdelete_field, Ffield_string, Ffield_beginning)
3408	(Ffield_string_no_properties, Ffield_end): Mention
3409	args-out-of-range error condition in docstring.
3410
34112006-06-27  Kim F. Storm  <storm@cua.dk>
3412
3413	* xdisp.c (handle_composition_prop): Set stop_charpos before push_it.
3414
34152006-06-25  Kim F. Storm  <storm@cua.dk>
3416
3417	* s/gnu-linux.h (SIGNALS_VIA_CHARACTERS): Define for Linux kernel
3418	version 2.4 and later.
3419
34202006-06-24  Chong Yidong  <cyd@stupidchicken.com>
3421
3422	* xfns.c (Fx_create_frame): Set font parameter directly instead of
3423	using x_default_parameter, since x_get_args clears the parm alist.
3424
34252006-06-24  Eli Zaretskii  <eliz@gnu.org>
3426
3427	* dired.c (directory_files_internal) [WINDOWSNT]: Find files
3428	case-insensitively.
3429
34302006-06-24  Aidan Kehoe  <kehoea@parhasard.net>
3431
3432	* lread.c (read_escape): When an unknown Unicode code point is
3433	encountered as a string or character escape, signal an error.
3434
34352006-06-23  Kim F. Storm  <storm@cua.dk>
3436
3437	* .gdbinit (pitx): Dump iterator stack.
3438
3439	* xdisp.c (handle_composition_prop): Push iterator on stack.
3440	(set_iterator_to_next): Pop iterator at end of composition.
3441
34422006-06-23  Martin Rudalics  <rudalics@gmx.at>
3443
3444	* fileio.c (Frename_file) [DOS_NT]: Don't try to move directory to
3445	itself on DOS_NT platforms, if the old and new names are identical
3446	but for the letter-case.
3447
34482006-06-21  Kim F. Storm  <storm@cua.dk>
3449
3450	* dispextern.h (struct it): Add `position' member to iterator stack.
3451	Rename `pos' member to `current'.  Rearrange and add comments.
3452
3453	* xdisp.c (handle_stop): Set it->ignore_overlay_strings_at_pos_p
3454	if  we get any overlays.
3455	(set_cursor_from_row): Don't clobber `end' if we rescan from
3456	start_string.
3457	(push_it, pop_it): Save it->position.
3458
34592006-06-19  Richard Stallman  <rms@gnu.org>
3460
3461	* window.c (size_window): New arg FIRST_ONLY.  All callers changed.
3462	(adjust_window_trailing_edge): Specially compute FIRST_PARALLEL
3463	for the case of a top-level window and the following minibuffer.
3464	Don't exit because of no `next' when there is a parent.
3465	Use the FIRST_ONLY feature when resizing following windows.
3466
3467	* syntax.c (init_syntax_once): Give most control chars' syntax Spunct.
3468
34692006-06-17  Kim F. Storm  <storm@cua.dk>
3470
3471	* dispnew.c (update_frame): Check for input pending on entry.
3472	(update_window, update_frame_1): Break loop if input is detected.
3473
34742006-06-16  Francis Litterio  <flitterio@gmail.com>
3475
3476	* xterm.c (x_check_expected_move, handle_one_xevent)
3477	(x_set_offset, x_check_fullscreen): Extensive changes to make
3478	frame positioning deterministic under X.
3479
3480	* xterm.h (x_output): Add members left_before_move and
3481	top_before_move.  Removed members expected_left and expected_top.
3482
34832006-06-16  Kim F. Storm  <storm@cua.dk>
3484
3485	* dispextern.h (struct it): Add union to iterator stack to save
3486	image, composition, and stretch specific paramters.
3487
3488	* xdisp.c (next_overlay_string): Fix assert.
3489	(push_it, pop_it): Handle composition and stretch specific values.
3490	Only handle it->slice in image (for now).
3491	(back_to_previous_visible_line_start): Continue search if newline is
3492	part of a compisition.  Simplify.
3493	(reseat_1): Set it->object to buffer.
3494	(set_iterator_to_next): Set it->object to string or buffer, when
3495	setting it->method to GET_FROM_STRING or GET_FROM_BUFFER.
3496	(next_element_from_composition): Set it->object to buffer if not
3497	from string.
3498	(set_cursor_from_row): Only save start of string if not already
3499	done to handle multiple strings in a row.
3500
3501	* .gdbinit (pitx): Show composition parameters.
3502	(pgx, pg): New commands to print a glyph structure.
3503	(pgi, pgn): New commands to print specific/next glyph.
3504	(pgrowx, pgrow): New commands to print all glyphs in a row.
3505
35062006-06-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3507
3508	* macfns.c (Fx_display_mm_height, Fx_display_mm_width)
3509	[MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use CGDisplayScreenSize.
3510
3511	* macterm.c (do_app_resume, do_app_suspend): Remove functions.
3512	(mac_tsm_resume, mac_tsm_suspend) [USE_MAC_TSM]: New functions.
3513	(mac_handle_window_event, XTread_socket) [USE_MAC_TSM]: Use them.
3514	(Vmac_ts_script_language_on_focus) [USE_MAC_TSM]: New variable.
3515	(syms_of_macterm) [USE_MAC_TSM]: Defvar it.
3516	(saved_ts_language, saved_ts_component) [USE_MAC_TSM]: New variables.
3517	(mac_initialize_display_info) [MAC_OSX]: Use Quartz Display
3518	Services functions to get size of main display in pixels.
3519
35202006-06-14  Chong Yidong  <cyd@stupidchicken.com>
3521
3522	* xdisp.c (back_to_previous_visible_line_start):
3523	Reset it->continuation_lines_width.
3524
35252006-06-14  Richard Stallman  <rms@gnu.org>
3526
3527	* eval.c (Fdefconst): Mark variable as risky.
3528
3529	* callproc.c (Fcall_process): Doc fix.
3530
3531	* window.c (adjust_window_trailing_edge): Don't break out of the loop
3532	because there's no next window, if there are parallel windows.
3533	Do break out when WINDOW is nil.
3534
35352006-06-14  Kim F. Storm  <storm@cua.dk>
3536
3537	* dispextern.h (IT_STACK_SIZE): New macro specifying size of
3538	iterator stack (instead of hardcoded number).  Increase from 2 to
3539	4 to make room for propertized overlay strings before and after a
3540	display string, image or composition.
3541	(struct it): Add image_id and method members to iterator stack.
3542
3543	* xdisp.c (init_from_display_pos): Don't set it->method and
3544	overlay_string_index after pop_it.  Add asserts.
3545	(handle_stop): Look for overlay strings around a display string,
3546	image, or composition.  Handle properties on those strings.
3547	(next_overlay_string): Don't set string, pos or method after pop_it.
3548	(get_overlay_strings_1): Split from get_overlay_strings; don't
3549	modify it if no overlay strings are found.
3550	(get_overlay_strings): Use get_overlay_strings_1.  Always set
3551	it->string and it->method.
3552	(push_it): Push it->image_id and it->method.  Push it->object
3553	instead of it->string if method is GET_FROM_IMAGE.
3554	(pop_it): Pop it->image_id and it->method.  Ppo it->object
3555	instead of it->string if method is GET_FROM_IMAGE.
3556	Reset it->current.string_pos if popped it->string is nil.
3557	(reseat_1): Remove comment dated 19 May 2003.  It expressed doubt
3558	whether a given change was correct; but the change is correct.
3559	Clear it->string_from_display_prop_p.
3560	(set_iterator_to_next): Rely on it->method and it->image_id from
3561	iterator stack, instead of setting them explicitly after pop_it.
3562
3563	* dispnew.c (sit_for): Undo 2006-06-01 change.  Instead, a
3564	negative time forces redisplay even when input is available.
3565	(Fsit_for): Doc fix.
3566
35672006-06-13  Kim F. Storm  <storm@cua.dk>
3568
3569	* dispnew.c: Modify preemptive redisplay to be based on periodic
3570	checks for input.
3571	(PERIODIC_PREEMPTION_CHECKING): Define to 1 iff EMACS_HAS_USECS.
3572	(Vredisplay_preemption_period): New variable.
3573	(syms_of_display): DEFVAR_LISP and initialize it.
3574	(preemption_period, preemption_next_check): New variables.
3575	(update_frame, update_single_window): Initialize them based on
3576	Vredisplay_preemption_period if !force_p.
3577	(update_window, update_frame_1): Use them to determine when to
3578	check for input.
3579
35802006-06-03  Aidan Kehoe  <kehoea@parhasard.net>
3581
3582	* lread.c (read_escape): Provide a Unicode character escape
3583	syntax; \u followed by exactly four or \U followed by exactly
3584	eight hex digits in a comment or string is read as a Unicode
3585	character with that code point.
3586
35872006-06-09  Eli Zaretskii  <eliz@gnu.org>
3588
3589	* window.c (window_scroll_pixel_based): Signal "Beginning of
3590	buffer" when scroll-down at the beginning of an empty buffer.
3591
35922006-06-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3593
3594	* macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
3595	Exclude 0x7f from ASCII range.
3596
35972006-06-05  Jason Rumney  <jasonr@gnu.org>
3598
3599	* w32term.c (w32_set_scroll_bar_thumb, x_scroll_bar_create)
3600	(w32_set_vertical_scroll_bar, w32_scroll_bar_handle_click)
3601	(x_scroll_bar_report_motion): Remove workarounds for
3602	versions of Windows NT < 3.51.
3603	[!SIF_ALL]: Remove.
3604	(pfnSetScrollInfo, pfnGetScrollInfo): Remove.
3605	(w32_initialize): Don't dynamically load Get/SetScrollInfo.
3606
36072006-06-04  David Kastrup  <dak@gnu.org>
3608
3609	* dispnew.c: Mention `redisplay-dont-pause' in doc string of
3610	`sit-for'.
3611
36122006-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3613
3614	* macfns.c (x_set_icon_name): Apply 2006-06-02 change for xfns.c.
3615
3616	* macgui.h (USE_MAC_TSM): Set default to 1 on Mac OS X.
3617
3618	* macterm.c (tsm_document_id) [USE_MAC_TSM]: New variable.
3619	(Qtext_input, Qupdate_active_input_area, Qunicode_for_key_event)
3620	[USE_MAC_TSM]: Likewise.
3621	(syms_of_macterm) [USE_MAC_TSM]: Intern and staticpro them.
3622	(Qbefore_string) [USE_MAC_TSM]: Add extern.
3623	(do_app_resume, do_app_suspend) [USE_MAC_TSM]: Call
3624	ActivateTSMDocument/DeactivateTSMDocument.
3625	(mac_store_event_ref_as_apple_event): Call mac_post_mouse_moved_event.
3626	(mac_handle_window_event) [USE_MAC_TSM]: Handle
3627	kEventWindowFocusAcquired/kEventWindowFocusRelinquish.
3628	(mac_handle_text_input_event) [USE_MAC_TSM]: New function.
3629	(install_window_handler) [USE_MAC_TSM]: Install it.  Register
3630	kEventWindowFocusAcquired/kEventWindowFocusRelinquish.
3631	(keycode_to_xkeysym_table): Add entry for f16.
3632	(XTread_socket) [USE_MAC_TSM]: Set/reset read_socket_inev
3633	before/after passing keystroke event to toolbox dispatcher.
3634	(init_tsm) [USE_MAC_TSM]: New function.
3635	(mac_initialize) [USE_MAC_TSM]: Call it.
3636	(Vmac_ts_active_input_overlay) [USE_MAC_TSM]: New defvar.
3637
3638	* macterm.h (EVENT_PARAM_TEXT_INPUT_SEQUENCE_NUMBER): New enumerator.
3639
36402006-06-02  John Paul Wallington  <jpw@gnu.org>
3641
3642	* xfns.c (x_set_name_internal): Set icon to `text', derived from
3643	name, when frame's icon_name isn't a string rather than only when
3644	it is nil.
3645
36462006-06-03  Eli Zaretskii  <eliz@gnu.org>
3647
3648	* w32fns.c (x_set_icon_name): Don't use arg if it's not a string
3649	and not nil.
3650
36512006-06-02  Chong Yidong  <cyd@stupidchicken.com>
3652
3653	* xfns.c (x_set_icon_name): No-op if arg is non-nil and not a
3654	string.
3655
36562006-06-02  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3657
3658	* xdisp.c (next_element_from_composition): Set it->object to
3659	it->string if composition is coming from string.
3660	(set_cursor_from_row): Don't return 0 unless row displays a
3661	continued line.
3662	(dump_glyph): Dump composite glyph.
3663
36642006-06-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3665
3666	* gtkutil.c (menu_nav_ended): Check that menubar_widget is not NULL.
3667
36682006-06-01  Richard Stallman  <rms@gnu.org>
3669
3670	* window.c (Fsplit_window): Doc fix.
3671
36722006-06-01  Micha,Ak(Bl Cadilhac  <michael.cadilhac@lrde.org>
3673
3674	* process.c (deleted_pid_list): New variable to store the pids
3675	of deleted processes.  Declare it only if SIGCHLD is defined.
3676	(init_process): Initialize it.
3677	(syms_of_process): Staticpro it.
3678	(Fdelete_process): Add pid of the deleted process to it.  Check after
3679	the addition and before the kill if the process is already stopped,
3680	in which case it is deleted from the list and not killed.
3681	(sigchld_handler): Define it only if SIGCHLD is.  Search the process
3682	that signaled Emacs in `deleted_pid_list' before `Vprocess_alist'.
3683	Original idea by Stefan Monnier.
3684
36852006-06-01  Kim F. Storm  <storm@cua.dk>
3686
3687	* dispnew.c (sit_for): Perform redisplay even if input is pending
3688	when redisplay-dont-pause is non-nil.
3689
36902006-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3691
3692	* macterm.c (mac_handle_visibility_change): Set buf.arg to Qnil.
3693	(XTread_socket): Remove obsolete comment.
3694
36952006-06-01  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3696
3697	* xmenu.c (syms_of_xmenu): Make accelerate-menu an alias for
3698	menu-bar-open.
3699
37002006-06-01  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3701
3702	* xmenu.c (Fmenu_bar_open, syms_of_xmenu): Change menu-bar-start to
3703	menu-bar-open.
3704
3705	* gtkutil.c (menu_nav_ended): Change x-menu-bar-start to menu-bar-open.
3706
37072006-05-31  Juri Linkov  <juri@jurta.org>
3708
3709	* minibuf.c (Vhistory_add_new_input): New variable.
3710	(read_minibuf): Use it.
3711	(syms_of_minibuf) <history-add-new-input>: New Lisp variable.
3712	(syms_of_minibuf) <history-delete-duplicates>: Doc fix.
3713
37142006-05-31  Kim F. Storm  <storm@cua.dk>
3715
3716	* process.c (select_wrapper): Add wrapper around select to work around
3717	"incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside
3718	select called from wait_reading_process_output.
3719
37202006-05-30  Andreas Schwab  <schwab@suse.de>
3721
3722	* xmenu.c (Fmenu_bar_start): Return a value.
3723
37242006-05-30  Richard Stallman  <rms@gnu.org>
3725
3726	* coding.c (Ffind_operation_coding_system): Doc fix.
3727
37282006-05-30  Eli Zaretskii  <eliz@gnu.org>
3729
3730	* w32term.c (x_draw_hollow_cursor): Fix last change.
3731
37322006-05-29  Kim F. Storm  <storm@cua.dk>
3733
3734	* w32term.c (x_draw_stretch_glyph_string): Fix last change.
3735
37362006-05-29  Eli Zaretskii  <eliz@gnu.org>
3737
3738	* coding.c (Ffind_operation_coding_system): Doc fix.
3739
37402006-05-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3741
3742	* macfns.c [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility):
3743	Call mac_set_font_info_for_selection if font panel is made visible.
3744
3745	* macterm.c (font_panel_shown_p) [USE_MAC_FONT_PANEL]: New variable.
3746	(mac_font_panel_visible_p, mac_show_hide_font_panel)
3747	[USE_MAC_FONT_PANEL]: New functions.
3748	[USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection):
3749	Return immediately if font panel is not visible.
3750
3751	* macterm.h (mac_font_panel_visible_p, mac_show_hide_font_panel):
3752	Add externs.
3753
37542006-05-29  Dan Nicolaescu  <dann@ics.uci.edu>
3755
3756	* search.c (matcher_overflow): Mark as NO_RETURN.
3757
3758	* xterm.c (x_connection_closed): Likewise.
3759
3760	* sysdep.c (croak): Likewise.
3761
3762	* sound.c (sound_perror, alsa_sound_perror): Likewise.
3763
3764	* lisp.h (die, nsberror): Likewise.
3765
37662006-05-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3767
3768	* sound.c (alsa_open, alsa_configure, alsa_write):
3769	Move assignment to err out of if-statement.
3770
3771	* gtkutil.c (menu_nav_ended): New function.
3772	(create_menus): Connect menu_nav_ended to "selection-done" to fix
3773	grabs.
3774
3775	* xmenu.c (Fmenu_bar_start): New function for USE_GTK and USE_X_TOOLKIT.
3776
37772006-05-28  Dan Nicolaescu  <dann@ics.uci.edu>
3778
3779	* charset.h (invalid_character): Mark as NO_RETURN.
3780
37812006-05-29  Kenichi Handa  <handa@m17n.org>
3782
3783	* coding.c (Ffind_operation_coding_system): Call a function by
3784	safe_call1 instead of call1.
3785
37862006-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
3787
3788	* window.c (struct saved_window): Add `dedicated'.
3789	(Fset_window_configuration, save_window_save): Save/restore the
3790	`dedicated' flag.
3791
37922006-05-28  Kim F. Storm  <storm@cua.dk>
3793
3794	* xdisp.c (set_cursor_from_row): If cursor cannot be set in row,
3795	don't update w->cursor and return 0.  Return 1 on success.
3796	(try_cursor_movement): Repeat set_cursor_from_row on successive rows
3797	until it succeeds.
3798
3799	* dispextern.h (set_cursor_from_row): Update prototype.
3800
38012006-05-28  Kim F. Storm  <storm@cua.dk>
3802
3803	* xdisp.c (get_phys_cursor_geometry): Return computed x and y through
3804	parameters.  Adjust x and width in case cursor in on a partially
3805	visible stretch glyph on the left edge.
3806	(erase_phys_cursor): Don't erase into left fringe/margin in case
3807	previous cursor glyph is a partially visible stretch glyph on left.
3808
3809	* dispextern.h (get_phys_cursor_geometry): Update prototype.
3810
3811	* xterm.c (x_draw_stretch_glyph_string): Fix problems with invisible
3812	cursor and erasing cursor on partially visible stretch glyph on left.
3813	(x_draw_hollow_cursor): Compute x via get_phys_cursor_geometry.
3814
3815	* macterm.c: Likewise.
3816
3817	* w32term.c: Likewise.
3818
38192006-05-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3820
3821	* macselect.c (mac_handle_apple_event):
3822	Return errAEEventNotHandled if key binding is not found.
3823
38242006-05-26  Eli Zaretskii  <eliz@gnu.org>
3825
3826	* emacs.c (main) [PROFILING]: Enable also for __MINGW32__.
3827	[__MINGW32__]: MinGW-specific declaration of `etext'.
3828
3829	* w32heap.c (etext, edata): Remove unused definitions.
3830
38312006-05-26  Chong Yidong  <cyd@stupidchicken.com>
3832
3833	* fileio.c (Fcopy_file): Delete argument MUSTBENEW.
3834	Incorporate the exclusive file-opening functionality into the behavior
3835	when OK-IF-ALREADY-EXISTS is nil.
3836	(Frename_file): Call Fcopy_file without MUSTBENEW argument.
3837
38382006-05-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3839
3840	* sound.c (alsa_configure): Move get period/buffer_size after
3841	setting hwparams.
3842
38432006-05-26  Kenichi Handa  <handa@m17n.org>
3844
3845	* coding.c (Ffind_operation_coding_system): Allow (FILENAME
3846	. BUFFER) in TARGET.
3847
38482006-05-25  Chong Yidong  <cyd@stupidchicken.com>
3849
3850	* image.c (png_load): Don't call fclose on NULL.
3851
38522006-05-25  Luc Teirlinck  <teirllm@auburn.edu>
3853
3854	* fns.c (Fyes_or_no_p):
3855	* callint.c (Fcall_interactively): Fread_from_minibuffer now takes
3856	only seven args.
3857
38582006-05-25  Juri Linkov  <juri@jurta.org>
3859
3860	* lisp.h (Fread_from_minibuffer): Decrement number of args.
3861
3862	* minibuf.c (read_minibuf): Remove arg KEEP_ALL.  Callers changed.
3863	(Fread_from_minibuffer): Remove arg KEEP_ALL.  Callers changed.
3864
3865	* buffer.c (mode-line-format): Fix docstring.
3866
38672006-05-25  Richard Stallman  <rms@gnu.org>
3868
3869	* emacs.c (main, Fdump_emacs): Don't test __linux or __linux__.
3870
38712006-05-24  Luc Teirlinck  <teirllm@auburn.edu>
3872
3873	* puresize.h (BASE_PURESIZE): Increase to 1210000.
3874
38752006-05-24  Alan Mackenzie  <acm@muc.de>
3876
3877	* lread.c (Vload_history): Enhance doc-string to say that the file
3878	is the absolute truename of the loaded file.
3879
3880	* lread.c (Vafter_load_alist): doc-string: state that an element
3881	now has a regexp to match file names, not a file name as such.
3882
3883	* lread.c (readevalloop): Call file-truename on the name for
3884	load-history, except at preloading time.
3885
3886	* lread.c (Fload): At preloading time, preserve the extension of
3887	the filename which goes into load-history.  New var hist_file_name.
3888
3889	* lread.c (Fload): Do eval-after-load stuff by calling the lisp
3890	function do-after-load-evaluation.
3891
38922006-05-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3893
3894	* mac.c (ae_attr_table): New variable.
3895	(syms_of_mac): Intern and staticpro its elements.
3896	(mac_aelist_to_lisp): Also convert Apple event attributes.
3897	(mac_ae_put_lisp): New function.
3898	(create_apple_event_from_event_ref) [MAC_OSX]: Use typeUTF8Text.
3899
3900	* macfns.c (Fx_server_version): Use gestaltSystemVersionMajor etc.
3901
3902	* macselect.c (Qemacs_suspension_id): New variable.
3903	(syms_of_macselect): Intern and staticpro it.
3904	(struct suspended_ae_info): New struct.
3905	(deferred_apple_events, defer_apple_events)
3906	(Fmac_process_deferred_apple_events): Use it.
3907	(suspended_apple_events): New variable.
3908	(mac_handle_apple_event_1): New function.
3909	(mac_handle_apple_event): Use it.  Don't process previously
3910	suspended events.
3911	(cleanup_suspended_apple_events, get_suspension_id)
3912	(cleanup_all_suspended_apple_events): New functions.
3913	(init_apple_event_handler): Call cleanup_all_suspended_apple_events
3914	at exit.
3915	(Fmac_cleanup_expired_apple_events, Fmac_ae_set_reply_parameter)
3916	(Fmac_resume_apple_event): New defuns.
3917	(syms_of_macselect): Defsubr them.
3918
3919	* macterm.c (fn_keycode_to_keycode_table, XTread_socket) [MAC_OSX]:
3920	Fix last change.  Don't map `fn' modifier if pressed with F1 ... F12.
3921
3922	* macterm.h (TYPE_FILE_NAME): Change from macro to enumerator.
3923	(KEY_EMACS_SUSPENSION_ID_ATTR): New enumerator.
3924	(keyReplyRequestedAttr) [MAC_OS_X_VERSION_MAX_ALLOWED < 1030]: Likewise.
3925	(gestaltSystemVersionMajor, gestaltSystemVersionMinor)
3926	(gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
3927	Likewise.
3928	(typeUTF8Text, kEventParamWindowMouseLocation)
3929	[MAC_OSX && MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Likewise.
3930	(x_get_focus_frame, mac_ae_put_lisp): Add externs.
3931
39322006-05-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3933
3934	* macterm.c (fn_keycode_to_xkeysym_table, convert_fn_keycode): Remove.
3935	(fn_keycode_to_keycode_table) [MAC_OSX]: New variable.
3936	(mac_set_unicode_keystroke_event) [TARGET_API_MAC_CARBON]: New function.
3937	(XTread_socket) [TARGET_API_MAC_CARBON]: Use it.
3938	(XTread_socket) [MAC_OSX]: Try 'uchr' Unicode keyboard-layout
3939	resource to backtranslate key with modifiers.
3940	(XTread_socket): Don't set read_socket_inev around AEProcessAppleEvent.
3941
39422006-05-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3943
3944	* xterm.c: Remove declarations already in xterm.h
3945
3946	* xterm.h: Add extern declarations for x_clear_errors,
3947	x_fully_uncatch_errors, x_catching_errors and
3948	x_alloc_lighter_color_for_widget.  Remove duplicated declarations.
3949
39502006-05-21  Richard Stallman  <rms@gnu.org>
3951
3952	* xfaces.c (best_matching_font): Abort for best == NULL
3953	before we start to use it.
3954
3955	* buffer.c (syms_of_buffer, Fmake_overlay): Doc fixes.
3956
39572006-05-20  Kim F. Storm  <storm@cua.dk>
3958
3959	* xfaces.c (best_matching_font): Fix crash in 2006-05-17 change.
3960
39612006-05-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3962
3963	* macterm.c (convert_fn_keycode): Fix last change.
3964
39652006-05-19  Eli Zaretskii  <eliz@gnu.org>
3966
3967	* w32.c (init_environment): Perform the processing of environment
3968	variables on a copy of default variables and their values, not on
3969	the original.  Simplify code that calls ExpandEnvironmentStrings
3970	and make buf1[] and buf2[] more visible for easier debugging.
3971
39722006-05-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
3973
3974	* frame.c (x_set_border_width): Remove #ifndef MAC_OS.
3975
3976	* image.c [MAC_OS] (gif_load): Allocate Lisp string first.
3977
3978	* macfns.c (Fx_focus_frame): Don't check dpyinfo->x_focus_frame.
3979
3980	* macterm.c (XTread_socket) [TARGET_API_MAC_CARBON && MAC_OSX]:
3981	Forward keyUp events to toolbox_dispatcher.
3982
3983	* window.c (foreach_window): Check WINDOWP (FRAME_ROOT_WINDOW (f)).
3984
39852006-05-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
3986
3987	* config.in: Regenerated (HAVE_ALSA).
3988
3989	* sound.c (alsa_sound_perror, alsa_open, alsa_period_size)
3990	(alsa_configure, alsa_close, alsa_choose_format, alsa_write)
3991	(snd_error_quiet, alsa_init): New functions.
3992	(vox_init): Return 0 if unable to open device.
3993	(Fplay_sound_internal): Test for alsa first and use vox (oss) as
3994	a fallback.
3995	(struct sound_device): Add period_size.
3996	(wav_play, au_play): Use period_size if set.
3997
3998	* Makefile.in (CFLAGS_SOUND): New flags for ALSA.
3999	(ALL_CFLAGS): Add CFLAGS_SOUND.
4000
40012006-05-18  Kenichi Handa  <handa@m17n.org>
4002
4003	* callproc.c (Fcall_process): Reject encoding arguments by
4004	ascii-incompatible coding systems (e.g. utf-16).
4005
4006	* coding.c (Qascii_incompatible): New variable.
4007	(syms_of_coding): Setup Qascii_incompatible.
4008	(setup_coding_system): Be sure to initialize coding->common_flags.
4009	Check `ascii-incompatible' property of the coding system.
4010
4011	* coding.h (CODING_ASCII_INCOMPATIBLE_MASK): New macro.
4012
40132006-05-18  Kim F. Storm  <storm@cua.dk>
4014
4015	* xdisp.c (display_tool_bar_line): Restore entire tool-bar
4016	geometry when backtracking in case last image doesn't fit on line.
4017
40182006-05-18  MIYOSHI Masanori  <miyoshi@meadowy.org>  (tiny change)
4019
4020	* xdisp.c (display_tool_bar_line): Don't adjust tool-bar height by
4021	more than height of one frame default line.
4022
40232006-05-17  Richard Stallman  <rms@gnu.org>
4024
4025	* xfaces.c (better_font_p): Any font beats no font.
4026	(best_matching_font): Simplify based on above change.
4027
4028	* buffer.c (Fprevious_overlay_change, Fnext_overlay_change): Doc fixes.
4029
40302006-05-16  Kim F. Storm  <storm@cua.dk>
4031
4032	* xterm.c (handle_one_xevent): Check that f is not NULL before
4033	calling x_kill_gs_process.
4034
40352006-05-14  Richard Stallman  <rms@gnu.org>
4036
4037	* textprop.c (Fnext_single_char_property_change)
4038	(Fprevious_single_char_property_change): Don't allow returning
4039	value beyond LIMIT in any cases.
4040	(Fnext_char_property_change, Fprevious_char_property_change): Doc fix.
4041
4042	* intervals.c (get_local_map): Abort if POSITION outside BEGV, ZV.
4043
40442006-05-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
4045
4046	* xterm.c (handle_one_xevent): Check that f is not NULL before
4047	calling _XEditResCheckMessages.
4048
40492006-05-14  Kim F. Storm  <storm@cua.dk>
4050
4051	* xterm.c (handle_one_xevent): Fix crash in 2006-03-24 change.
4052
40532006-05-13  Eli Zaretskii  <eliz@gnu.org>
4054
4055	* frame.c (x_set_border_width): Fix error message to say "frame",
4056	not "window".
4057
4058	* Makefile.in (SOME_MACHINE_LISP): Add fringe.elc.
4059
40602006-05-12  Chong Yidong  <cyd@stupidchicken.com>
4061
4062	* intervals.c (set_point_both): Fix mixup before before and after
4063	in variable names.
4064
4065	* editfns.c (Fline_beginning_position): Inhibit point-motion hooks
4066	while setting point temporarily.
4067
40682006-05-11  Richard Stallman  <rms@gnu.org>
4069
4070	* lread.c (readevalloop): Abort if START non-nil for non-buffer input.
4071
40722006-05-11  Kim F. Storm  <storm@cua.dk>
4073
4074	* xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values.
4075
40762006-05-11  Kenichi Handa  <handa@m17n.org>
4077
4078	* fileio.c (Finsert_file_contents): Fix for the case of IO error
4079	while handling replace operation.
4080
40812006-05-10  Kenichi Handa  <handa@m17n.org>
4082
4083	* xfaces.c (realize_default_face) [HAVE_X_WINDOWS]: If the font
4084	chosen for the default face was different from the frame font,
4085	adjust the frame font.
4086
40872006-05-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4088
4089	* image.c (Qduration) [MAC_OS]: Undo previous change.
4090	(syms_of_image) [MAC_OS]: Likewise.
4091	[MAC_OS] (gif_load): Emulate Graphic Control Extension block.
4092
4093	* macfns.c (x_to_mac_color): Fix shift amount change.
4094	(mac_set_font) [USE_MAC_FONT_PANEL]: Use x_get_focus_frame.
4095	[USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): Doc fix.
4096
4097	* macselect.c (Vmac_service_selection) [MAC_OSX]: Rename from
4098	Vmac_services_selection.  All uses changed.
4099	(mac_store_service_event): Rename from mac_store_services_event in
4100	extern and calls.
4101
4102	* macterm.c (Qservice) [MAC_OSX]: Rename from Qservices.  All uses
4103	changed.
4104	[MAC_OSX] (mac_store_service_event): Rename from
4105	mac_store_services_event.  All callers changed.
4106	[USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Add args
4107	FACE_ID and C.  All callers changed.
4108	(x_free_frame_resources) [USE_MAC_FONT_PANEL]: Call
4109	mac_set_font_info_for_selection when focus frame is destroyed.
4110	(XTread_socket): Revert to FrontNonFloatingWindow/FrontWindow.
4111
4112	* macterm.h (mac_set_font_info_for_selection): Add 2nd and 3rd
4113	args in extern.
4114
41152006-05-09  Chong Yidong  <cyd@stupidchicken.com>
4116
4117	* keymap.c (describe_map): Avoid generating duplicate entries if
4118	the shadowed binding has the same definition.
4119
41202006-05-09  Kenichi Handa  <handa@m17n.org>
4121
4122	* keymap.c (push_key_description): Handle invalid character key.
4123
41242006-05-08  Kenichi Handa  <handa@m17n.org>
4125
4126	* callproc.c (Fcall_process): Use system_eol_type for encoding
4127	arguments if eol_type is not yet decided.
4128
4129	* coding.h (system_eol_type): Extern it.
4130
4131	* coding.c (setup_coding_system): For invalid coding-system, set
4132	coding->eol_type to CODING_EOL_UNDECIDED.
4133	(encode_coding): Cancel previous change.
4134	(shrink_encoding_region): Likewise.
4135	(code_convert_region1): Likewise.
4136	(code_convert_string1): Likewise.
4137	(code_convert_string_norecord): Likewise.
4138
4139	* fileio.c (choose_write_coding_system): Use system_eol_type for
4140	encoding if eol_type is not yet decided.
4141
4142	* process.c (setup_process_coding_systems): Use system_eol_type
4143	for encoding if eol_type is not yet decided.
4144	(read_process_output): Likewise.
4145	(send_process): Likewise.
4146
41472006-05-07  Juanma Barranquero  <lekktu@gmail.com>
4148
4149	* minibuf.c (syms_of_minibuf) <history-length>: Fix typo in doc.
4150
41512006-05-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4152
4153	* mac.c (Fmac_clear_font_name_table): Move defun to macfns.c.
4154	(syms_of_mac): Likewise for defsubr.
4155
4156	* macfns.c (mac_set_font): New function.
4157	(mac_frame_parm_handlers, syms_of_macfns): Replace x_set_font with it.
4158	(mac_window) [TARGET_API_MAC_CARBON && MAC_OSX]: Specify
4159	kWindowToolbarButtonAttribute when creating window.
4160	(Fmac_clear_font_name_table): Move from macfns.c.
4161	(syms_of_macfns): Likewise for defsubr.
4162	[USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): New defun.
4163	(syms_of_macfns) [USE_MAC_FONT_PANEL]: Defsubr it.
4164
4165	* macgui.h (USE_MAC_FONT_PANEL): Define to 1 if USE_ATSUI is set
4166	and build is done on Mac OS X 10.2 and later.
4167
4168	* macselect.c (mac_do_receive_drag): Remove unused variable `index'.
4169	(mac_store_services_event): Change return type in extern.
4170
4171	* macterm.c (XLoadQueryFont) [USE_ATSUI]: Set font->mac_fontnum to
4172	FMFontFamily value.
4173	[USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): New function.
4174	(x_new_focus_frame) [USE_MAC_FONT_PANEL]: Use it.
4175	(QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic): Add extern.
4176	(QWindow) [MAC_OSX]: Likewise.
4177	(Qfont) [USE_MAC_FONT_PANEL]: Likewise.
4178	(Vmac_atsu_font_table) [USE_ATSUI]: New variable.
4179	(syms_of_macterm) [USE_ATSUI]: Defvar it.
4180	(Qtoolbar_switch_mode) [MAC_OSX]: New variable.
4181	(Qpanel_closed, Qselection) [USE_MAC_FONT_PANEL]: Likewise.
4182	(syms_of_macterm): Intern and staticpro them.
4183	(init_font_name_table) [USE_ATSUI]: Add data to Vmac_atsu_font_table.
4184	[TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event):
4185	New function.
4186	[USE_CARBON_EVENTS] (mac_handle_command_event): Use it.
4187	[MAC_OSX] (mac_store_services_event): Likewise.
4188	[USE_CARBON_EVENTS] (mac_handle_window_event) [MAC_OSX]: Handle
4189	kEventWindowToolbarSwitchMode event.
4190	(install_window_handler) [USE_CARBON_EVENTS && MAC_OSX]: Register it.
4191	[MAC_OSX] (mac_store_services_event): Change return type to OSStatus.
4192	[USE_MAC_FONT_PANEL] (mac_handle_font_event): New function.
4193	(install_window_handler) [USE_MAC_FONT_PANEL]: Install it.
4194	(XTread_socket): Select window on mouse click if x_focus_frame is NULL.
4195
4196	* macterm.h (mac_set_font_info_for_selection): Add extern.
4197
41982006-05-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4199
4200	* image.c (Qduration) [MAC_OS]: New variable.
4201	(syms_of_image) [MAC_OS]: Intern and staticpro it.
4202	[MAC_OS] (gif_load): Save image extension data in img->data.lisp_val.
4203	[MAC_OSX] (image_load_quartz2d): Use cfstring_create_with_utf8_cstring
4204	instead of cfstring_create_with_string.
4205
42062006-05-06  Kim F. Storm  <storm@cua.dk>
4207
4208	* .gdbinit (xframe): Print frame name.
4209	(xlist): New command to print a list (max 10 elements).
4210	(xpr): Print lisp object of any type.
4211	(pitx): Print it->pixel_width.
4212
42132006-05-05  Kenichi Handa  <handa@m17n.org>
4214
4215	* xdisp.c (handle_composition_prop): Fix for the case of empty
4216	composition component.
4217
42182006-05-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4219
4220	* keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info
4221	from event->arg.
4222
4223	* termhooks.h (enum event_kind) [MAC_OS]: Update comment for
4224	MAC_APPLE_EVENT.
4225
4226	* macterm.h (mac_make_lispy_event_code): Remove extern.
4227	(mac_post_mouse_moved_event): Add extern.
4228	(mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
4229	`const AEDesc *' in externs.
4230	(create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern.
4231
4232	* mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
4233	`const AEDesc *'.
4234	[TARGET_API_MAC_CARBON] (create_apple_event): New function.
4235	[TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it.
4236	Use xrealloc instead of repeated xmalloc/xfree.
4237	[TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref):
4238	New function.
4239
4240	* macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value.
4241
4242	* macselect.c: Update copyright year.
4243	(mac_store_apple_event): Change return type to void in extern.
4244	(mac_handle_apple_event): Don't get return value from
4245	mac_store_apple_event.
4246	[TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable.
4247	(syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it.
4248	[TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from
4249	macterm.c.  Use Vmac_dnd_known_types as acceptable flavors.
4250	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.  New
4251	implementation using create_apple_event_from_drag_ref.
4252	[TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4253	(mac_do_receive_dragUPP): Move variables from macterm.c.
4254	(install_drag_handler, remove_drag_handler): New functions.
4255
4256	* macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window
4257	path select also for proxy icon click.
4258	[TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function.
4259	[USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it.
4260	(xlfdpat_create): Remove unused label `error' and trailing sentences.
4261	(mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c.
4262	(mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to
4263	macselect.c.
4264	(install_drag_handler, remove_drag_handler): Add extern.
4265	(mac_store_apple_event): Change return type to void.  All uses changed.
4266	Create Lisp object from Apple event and store it into input event.
4267	(mac_make_lispy_event_code): Remove function.
4268	[TARGET_API_MAC_CARBON] (mac_store_drag_event): New function.
4269	(install_window_handler): Call install_drag_handler.
4270	(remove_window_handler): Call remove_drag_handler.
4271
42722006-05-03  Richard Stallman  <rms@gnu.org>
4273
4274	* sound.c (Fplay_sound_internal): Dynamically allocate
4275	current_sound_device and current_sound.
4276	(sound_cleanup): Free them.
4277
4278	* minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive
4279	when inside a keyboard macro.
4280
42812006-05-02  Andreas Schwab  <schwab@suse.de>
4282
4283	* xmenu.c (restore_menu_items): Return a value.
4284
42852006-05-01  Martin Rudalics  <rudalics@gmx.at>
4286
4287	* syntax.c (Fforward_comment): Detect generic comment at beginning of
4288	buffer when moving backwards.
4289
42902006-05-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4291
4292	* dispnew.c (update_window): Don't set changed_p when mode/header
4293	line is updated.
4294
4295	* xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar.
4296	(get_glyph_face_and_encoding, get_char_face_and_encoding):
4297	Don't distinguish known faces from others.
4298
4299	* mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion
4300	through typeFileURL failed.
4301
4302	* macfns.c (mac_update_title_bar): New function.
4303	[TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function.
4304	(show_hourglass, hide_hourglass) [USE_CG_DRAWING]:
4305	Call mac_prepare_for_quickdraw.
4306
4307	* macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined.
4308	(USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1.
4309	(enum pcm_status): New enum.
4310	(XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID)
4311	(XCharStructRow): Remove.  Now validity is represented by
4312	non-negativeness of sum of ascent and descent.
4313	(struct MacFontStruct): Change type of member `rows'.
4314	(struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'.
4315
4316	* macterm.c (mac_draw_line, mac_draw_line_to_pixmap):
4317	Adjust endpoints of strictly horizontal/vertical lines.
4318	(mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects.
4319	(pcm_init, pcm_get_status): New functions.
4320	(x_per_char_metric, XLoadQueryFont): Use them instead of
4321	XCharStructRow and related macros.
4322	(x_draw_relief_rect): Don't adjust arguments of mac_draw_line.
4323	(x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME.
4324	(XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag
4325	and window path pop-up menu on title bar.
4326	(mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1.
4327
4328	* macterm.h (mac_update_title_bar): Add extern.
4329	(struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'.
4330	(FRAME_FILE_NAME): New macro.
4331
4332	* unexmacosx.c (unexec): Error if trying unexec from dumped executable.
4333
43342006-04-30  Richard Stallman  <rms@gnu.org>
4335
4336	* keymap.c (Fdefine_key): Improve error message
4337	when KEY begins with a non-prefix key.
4338
43392006-04-30  Martin Rudalics  <rudalics@gmx.at>
4340
4341	* syntax.c (Fforward_comment): Don't forget to break out of the loop
4342	when we skipped backward over a generic comment.
4343
43442006-04-27  Nick Roberts  <nickrob@snap.net.nz>
4345
4346	* .gdbinit (pp1, pv1): Only print value as expression is now
4347	printed out by gud-print.
4348	(pv1): Correct doc string.
4349
43502006-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
4351
4352	* keymap.c (store_in_keymap): Change `def' arg to not be `register'.
4353	Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8):
4354	keymap.c:895: error: address of register variable `def' requested.
4355
43562006-04-26  Jason Rumney  <jasonr@gnu.org>
4357
4358	* w32term.c (construct_mouse_wheel): Handle negative coordinates.
4359
4360	* w32fns.c (w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN>:
4361	<WM_LBUTTONUP, WM_RBUTTONUP>: Call signal_user_input in the cases
4362	where we preempt mouse_button_timer.
4363
43642006-04-25  Miles Bader  <miles@gnu.org>
4365
4366	* editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23.
4367
43682006-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4369
4370	* process.h: Include headers for pid_t.
4371
43722006-04-24  Kim F. Storm  <storm@cua.dk>
4373
4374	* xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which
4375	does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief.
4376	(produce_stretch_glyph): Assume that face box height and width is
4377	already included in stretch glyph size so caller doesn't have to
4378	consider the extra space otherwise added (fixes problem in ses.el).
4379
4380	* frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame
4381	matrices to force recalculation of tool-bar height after font change.
4382
4383	* xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity.
4384	Clear it when done, so we don't accidentally draw a second copy of
4385	the tool-bar after resetting f->n_tool_bar_rows.
4386	(redisplay_tool_bar): Update tool-bar-lines frame parameter whenever
4387	we recalculate f->n_tool_bar_rows.
4388
43892006-04-23  Lars Hansen  <larsh@soem.dk>
4390
4391	* editfns.c (find_field): Fix comment.
4392	(Ffield_beginning): Fix bug when POS is at field beginning.
4393
43942006-04-22  Eli Zaretskii  <eliz@gnu.org>
4395
4396	* puresize.h (BASE_PURESIZE): Increase to 1205000.
4397
43982006-04-21  Kim F. Storm  <storm@cua.dk>
4399
4400	* xdisp.c (redisplay_window): Fix last change.  Don't recenter if
4401	window start is at BEGV.
4402
4403	* dispextern.h (struct image): New member `corners'.
4404	(TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros.
4405
4406	* image.c (four_corners_best): New arg CORNERS specifies what pixels
4407	to look at in case image has margin.
4408	(x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best.
4409	(image_background, image_background_transparent)
4410	(x_build_heuristic_mask): Pass img->corners to four_corners_best.
4411	(gif_load): Set img->corners according to image's margin spec.
4412	Use img->corners values directly where applicable.
4413	Save image extension data in img->data.lisp_val.
4414	(gif_clear_image): New function to free img->data.lisp_val.
4415	(gif_type): Use it instead of generic x_clear_image.
4416	(Fimage_extension_data): New defun.
4417	(syms_of_image): Defsubr it.
4418
44192006-04-21  John Sullivan  <john@wjsullivan.net>  (tiny change)
4420
4421	* window.c (Fdisplay_buffer): Doc fix.
4422
44232006-04-21  Eli Zaretskii  <eliz@gnu.org>
4424
4425	* s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000.
4426
44272006-04-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4428
4429	* image.c [MAC_OS] (xpm_load_image): Fill in background field
4430	while we have ximg handy.
4431
4432	* macmenu.c (restore_menu_items, save_menu_items): New functions
4433	from xmenu.c.
4434	(set_frame_menubar, digest_single_submenu): Apply 2006-04-18
4435	changes for xmenu.c.
4436
4437	* macterm.c (x_per_char_metric): Return NULL if glyph width is 0.
4438	(add_mac_font_name): New function.
4439	(init_font_name_table): Use it.  Adopt the first found font from
4440	those having the same family name.
4441
44422006-04-21  Nick Roberts  <nickrob@snap.net.nz>
4443
4444	* xdisp.c (note_mouse_highlight): Use build_string.
4445
44462006-04-20  Lars Hansen  <larsh@soem.dk>
4447
4448	* textprop.c (Fremove_list_of_text_properties):
4449	Ensure modify_region is called only when buffer is modified and that
4450	signal_after_change is allways called in that case.
4451
4452	* print.c (PRINTFINISH): Call signal_after_change.
4453
44542006-04-20  Kim F. Storm  <storm@cua.dk>
4455
4456	* xdisp.c (redisplay_window): Fix last change.
4457
4458	* xdisp.c (redisplay_window): If current window start is not at the
4459	beginning of a line, select a new window start if buffer is modified
4460	and window start is in the modified region, but the first change is
4461	before window start.
4462
44632006-04-18  Richard Stallman  <rms@gnu.org>
4464
4465	* xmenu.c (restore_menu_items, save_menu_items): New fns.
4466	(set_frame_menubar): Use save_menu_items.  Save updated vector in
4467	the frame before unwinding it.  Don't use unuse_menu_items.
4468	Don't use discard_menu_items.
4469	(digest_single_submenu): Abort if an item is not in a pane.
4470	(init_menu_items): Put the error check at the top.
4471
4472	* keymap.c (describe_map): Make "shadowed" warning more verbose.
4473
4474	* window.c (adjust_window_trailing_edge): Correctly distinguish
4475	series vs parallel cases, even when window has no parent.
4476
4477	* abbrev.c (record_symbol): New function.
4478	(Finsert_abbrev_table_description): Sort the abbrevs alphabetically.
4479
44802006-04-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4481
4482	* image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return
4483	value of xmalloc.
4484
4485	* mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
4486	(create_apple_event_from_event_ref, xrm_get_preference_database)
4487	(cfstring_create_normalized): Don't check return value of xmalloc.
4488
4489	* macselect.c (get_scrap_target_type_list, defer_apple_events)
4490	(copy_scrap_flavor_data, mac_handle_service_event): Don't check
4491	return value of xmalloc/xrealloc.
4492
4493	* macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create)
4494	(init_font_name_table, init_font_name_table, mac_do_list_fonts)
4495	(XLoadQueryFont, mac_store_apple_event): Don't check return value
4496	of xmalloc.
4497
44982006-04-17  Kim F. Storm  <storm@cua.dk>
4499
4500	* window.c (coordinates_in_window): On the vertical border,
4501	calculate the row number measured from the top of the window, not
4502	the top of the frame.
4503	(window_loop): Test w->dedicated with !NILP instead of EQ Qt.
4504	(window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change.
4505
45062006-04-16  Eli Zaretskii  <eliz@gnu.org>
4507
4508	* s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000.
4509
45102006-04-16  Romain Francoise  <romain@orebokech.com>
4511
4512	* puresize.h (BASE_PURESIZE): Decrement back to 1200000.
4513
45142006-04-16  Andreas Schwab  <schwab@suse.de>
4515
4516	* puresize.h (PURESIZE_RATIO): Reduce to 10/6.
4517
45182006-04-15  Romain Francoise  <romain@orebokech.com>
4519
4520	* puresize.h (BASE_PURESIZE): Increment to 1210000.
4521
45222006-04-13  Micha,Ak(Bl Cadilhac  <michael.cadilhac@lrde.org>
4523
4524	* print.c (Fprin1_to_string): Mention in the `doc' that the
4525	behavior is modified by `print-level' and `print-length'.
4526
45272006-04-13  Kenichi Handa  <handa@m17n.org>
4528
4529	* coding.c (setup_coding_system): If eol-type is not yet decided
4530	and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK.
4531	If coding_system is nil, return 0.
4532	(code_convert_region1): Even if coding_system is nil, don't skip
4533	conversion if system_eol_type is not LF.
4534	(code_convert_string1): Likewise.
4535	(code_convert_string_norecord): Likewise.
4536
45372006-04-13  Kenichi Handa  <handa@m17n.org>
4538
4539	* coding.c (setup_coding_system): Fix previous change.
4540	(encode_coding): If eol_type is not yet decided, use system_eol_type.
4541	(shrink_encoding_region): If eol_type is not yet decided and
4542	system_eol_type is not LF, don't shrink.
4543
45442006-04-13  Nick Roberts  <nickrob@snap.net.nz>
4545
4546	* xdisp.c (note_mouse_highlight): Add help echo for dragging vertical
4547	line.
4548
45492006-04-12  Richard Stallman  <rms@gnu.org>
4550
4551	* keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1].
4552
4553	* process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return.
4554	(Fprocess_send_eof): Abort if fail to open null device.
4555
45562006-04-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4557
4558	* fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h.
4559
4560	* image.c [MAC_OS] (xpm_load_image): Add parentheses around
4561	assignment used as truth value.  Add explicit braces to avoid
4562	ambiguous `else'.
4563	[MAC_OS] (gif_load): Remove unused variable `gcpro1'.
4564
4565	* lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and
4566	EXFUN in #ifdef HAVE_WINDOW_SYSTEM.
4567	(syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm):
4568	Put externs in #ifdef HAVE_X_WINDOWS.
4569	(syms_of_macfns, syms_of_macselect, syms_of_macterm)
4570	(syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs.
4571	(init_mac_osx_environment) [MAC_OSX]: Add extern.
4572
4573	* mac.c (init_process): Remove undef.
4574	(select) [MAC_OSX]: Undefine before including sysselect.h.
4575	(posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]:
4576	Remove functions and prototypes.
4577	(parse_value): Add parentheses around + inside shift.
4578	(path_from_vol_dir_name): Make static.
4579	(get_temp_dir_name): Remove unused variables `cpb' and `dir_name'.
4580	[!MAC_OSX] (get_path_to_system_folder): Likewise.
4581	(Fmac_get_file_creator, Fmac_get_file_type): Remove unused
4582	variable `cCode'.
4583	(Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'.
4584	(Fmac_get_preference): Add explicit braces to avoid ambiguous `else'.
4585
4586	* macfns.c (x_to_mac_color): Remove unused variable `tail'.
4587	(x_set_mouse_color): Remove unused variable `dpy'.
4588	(Fx_create_frame): Remove unused variable `x_frame_count'.
4589	(Fx_server_version): Add explicit braces to avoid ambiguous `else'.
4590	(x_sync): Move from macterm.c.
4591	(Fx_file_dialog): Remove unused variable `default_filter_index'.
4592
4593	* macmenu.c (min_menu_id): Make element type explicit.
4594
4595	* macselect.c (get_flavor_type_from_symbol): Remove unused
4596	variable `val'.
4597	(get_scrap_private_timestamp, x_get_foreign_selection)
4598	(copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'.
4599	(Fmac_process_deferred_apple_events): Remove unused variables
4600	`keyword', `reply', `apple_event', `count', and `err'.
4601
4602	* macterm.c: Don't include gnu.h.
4603	(x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes.
4604	(x_sync): Move to macfns.c.
4605	[USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused
4606	variable `mask_bits'.
4607	(mac_compute_glyph_string_overhangs): Avoid ambiguous `else'.
4608	(x_draw_image_glyph_string): Remove unused variable `pixmap'.
4609	(x_mac_to_emacs_modifiers): Remove function.
4610	(XTset_vertical_scroll_bar, mac_handle_visibility_change)
4611	(x_make_frame_visible, xlfdpat_create, mac_handle_command_event):
4612	Add explicit braces to avoid ambiguous `else'.
4613	(x_make_frame_visible): Remove unused variables `type',
4614	`original_top', and `original_left'.
4615	(mac_do_list_fonts, XTread_socket): Add parentheses around && within ||.
4616	(x_load_font): Remove unused variables `full_name', and `value'.
4617	(do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]:
4618	Remove functions.
4619	(do_zoom_window): Reorganize variables with respect to conditionals.
4620	(init_command_handler): Remove unused variable `err'.
4621	[MAC_OSX] (mac_check_bundle): Remove unused variable `child'.
4622
4623	* macterm.h (x_set_mouse_position, x_set_mouse_pixel_position)
4624	(x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
4625	(x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC)
4626	(do_menu_choice, have_menus_p, x_real_positions)
4627	(x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width)
4628	(x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar)
4629	(free_frame_menubar): Add externs.
4630
4631	* unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H.
4632	(malloc, realloc, free): Add undefs.
4633	(read_load_commands): Remove unused variable `n' and `j'.
4634	(copy_data_segment): Remove unused variable `r'.
4635
4636	* xdisp.c (get_glyph_string_clip_rects): Add parentheses around &&
4637	within ||.  Add explicit braces to avoid ambiguous `else'.
4638	(dump_glyph_row): Remove label for `inverse_p' from legend.
4639
4640	* xfaces.c (Finternal_merge_in_global_face, try_font_list):
4641	Add explicit braces to avoid ambiguous `else'.
4642
46432006-04-11  Micha,Ak(Bl Cadilhac  <michael.cadilhac@lrde.org>
4644
4645	* dispnew.c (init_display): Don't init X display if the user asked
4646	for a non-X display.
4647
46482006-04-12  Kenichi Handa  <handa@m17n.org>
4649
4650	* coding.c (setup_coding_system): Use system_eol_type for default
4651	coding->eol_type.
4652
46532006-04-11  Dan Nicolaescu  <dann@ics.uci.edu>
4654
4655	* lisp.h (wrong_type_argument): Mark as NO_RETURN.
4656
4657	* data.c (wrong_type_argument): Try to avoid compiler warnings due
4658	to the fact the function is now marked as NO_RETURN.
4659
46602006-04-10  Eli Zaretskii  <eliz@gnu.org>
4661
4662	* s/ms-w32.h (pid_t) [_MSC_VER]: New typedef.
4663
46642006-04-10  Romain Francoise  <romain@orebokech.com>
4665
4666	* xrdb.c (gethomedir): Use xstrdup.
4667
46682006-04-10  Andreas Schwab  <schwab@suse.de>
4669
4670	* xrdb.c (gethomedir): Make sure to always return a pointer that
4671	can be passed to free.
4672
46732006-04-09  Richard Stallman  <rms@gnu.org>
4674
4675	* lisp.h (Fkill_emacs): Undo previous change.
4676
46772006-04-08  Richard Stallman  <rms@gnu.org>
4678
4679	* search.c (boyer_moore): Test ch >= 0400, not >.
4680
46812006-04-09  Dan Nicolaescu  <dann@ics.uci.edu>
4682
4683	* puresize.h (pure_write_error): Mark as NO_RETURN.
4684
4685	* lisp.h (args_out_of_range, args_out_of_range_3)
4686
46872006-04-08  Eli Zaretskii  <eliz@gnu.org>
4688
4689	* w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements
4690	if a menu is active on this frame.
4691
46922006-04-08  Dan Nicolaescu  <dann@ics.uci.edu>
4693
4694	* lisp.h (report_file_error): Mark as NO_RETURN.
4695
46962006-04-08  Eli Zaretskii  <eliz@gnu.org>
4697
4698	* alloc.c [STDC_HEADERS]: Include stddef.h.
4699
4700	* lisp.h (PSEUDOVECSIZE): Fix last change.
4701
47022006-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
4703
4704	* process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
4705	`raw_status_high', and `raw_status_low' with plain integers, and move
4706	them to the end of the structure.
4707
4708	* alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
4709	pseudovector's size field so only the Lisp_Object fields get GC'd.
4710
4711	* process.c (update_status, make_process, Fdelete_process)
4712	(Fprocess_status, list_processes_1, start_process_unwind)
4713	(create_process, Fmake_network_process, server_accept_connection)
4714	(wait_reading_process_output, send_process, Fprocess_running_child_p)
4715	(process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
4716	(sigchld_handler, status_notify): Adjust to new non-Lisp fields for
4717	`pid' and `raw_status'.
4718	(Fprocess_id, Fsignal_process): Same, and additionally use floats when
4719	representing PIDs that are larger than most-positive-fixnum.
4720
4721	* keymap.c (describe_map): Only use XINT if we checked INTEGERP.
4722
4723	* lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
4724
47252006-04-08  Eli Zaretskii  <eliz@gnu.org>
4726
4727	* w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
4728
47292006-04-03  Paul Eggert  <eggert@cs.ucla.edu>
4730
4731	* editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
4732	../lib-src/b2m.c and ../lib-src/editfns.c.
4733	(Fcurrent_time_string): Use it.
4734	Document that the year might not consume 4 columns if it's outside
4735	the range 1000-9999.
4736	Check for asctime failure.
4737	Don't assume that the output string length is always exactly 24.
4738
47392006-04-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4740
4741	* macterm.c (XTread_socket): Initialize variable `f' before its use.
4742
47432006-04-03  Kenichi Handa  <handa@m17n.org>
4744
4745	* image.c: Include "charset.h" and "coding.h".
4746	(x_find_image_file): Return an encoded file name.
4747
47482006-04-01  Eli Zaretskii  <eliz@gnu.org>
4749
4750	* configure: Regenerated.
4751
47522006-03-31  Kenichi Handa  <handa@m17n.org>
4753
4754	* xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
4755
47562006-03-30  Dan Nicolaescu  <dann@ics.uci.edu>
4757
4758	* xdisp.c (syms_of_xdisp): Fix variable name.
4759
47602006-03-30  Kenichi Handa  <handa@m17n.org>
4761
4762	* xterm.c (x_term_init): Delete superfluous UNGCPRO.
4763
47642006-03-29  Juanma Barranquero  <lekktu@gmail.com>
4765
4766	* keyboard.c (process_tool_bar_item): Reorder dummy args.
4767
47682006-03-29  Stefan Monnier  <monnier@iro.umontreal.ca>
4769
4770	* keyboard.c (tool_bar_items): Use map_keymap.
4771	(process_tool_bar_item): Add dummy args to fit the required interface.
4772
47732006-03-25  Eli Zaretskii  <eliz@gnu.org>
4774
4775	* .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
4776	to zero before calling debug_print or safe_debug_print.
4777
4778	* print.c (print_output_debug_flag): New global variable.
4779	(Fexternal_debugging_output) [WINDOWSNT]: Don't call
4780	OutputDebugString if print_output_debug_flag is zero.
4781
47822006-03-24  Paul Eggert  <eggert@cs.ucla.edu>
4783
4784	* editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
4785	(Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
4786	(Fdecode_time): Cast tm_year to EMACS_INT.
4787	(Fcurrent_time_string): Report an invalid time specification if
4788	the argument is invalid.  Also, check for out-of-range time stamps.
4789
47902006-03-24  Kim F. Storm  <storm@cua.dk>
4791
4792	* xterm.c (handle_one_xevent):
4793	* w32term.c (w32_read_socket):
4794	* macterm.c (XTread_socket): Don't let key-press clear mouse face
4795	on in toolbar window if mouse-highlight is an integer.
4796
4797	* fns.c (sxhash_list): Include last non-nil CDR in hash.
4798
47992006-03-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4800
4801	* macmenu.c (enum mac_menu_kind): New enum.
4802	(min_menu_id): New variable.
4803	(POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
4804	(MIN_SUBMENU_ID): Remove defines.  All uses are replaced with
4805	min_menu_id and enumerators in enum mac_menu_kind.
4806	(fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
4807	All uses changed.  Add range check for menu ID.
4808	(fill_menubar): Add range check for menu ID.
4809	[HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
4810	GetEventParameter.
4811	(set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
4812	for each menu kind.
4813
48142006-03-22  Kim F. Storm  <storm@cua.dk>
4815
4816	* xdisp.c: Undo 2006-03-21 change.
4817
4818	* term.c: Define aliases for append_glyph and produce_stretch_glyph
4819	when `static' is defined to avoid name clash with those in xdisp.c.
4820
4821	* process.c (Faccept_process_output): Fix to comply with lisp
4822	reference.  Change arg "timeout" to "seconds" and allow both
4823	integer and float value.  Change arg "timeout-msec" to "millisec"
4824	and interpret" as milliseconds rather than microseconds.  Fix doc
4825	string accordingly.
4826
48272006-03-21  Ken Raeburn  <raeburn@raeburn.org>
4828
4829	* xdisp.c (store_next_glyph): Rename from append_glyph.
4830	(generate_stretch_glyph): Rename from produce_stretch_glyph.
4831	All callers changed accordingly.
4832
48332006-03-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
4834
4835	* xterm.c: x_session_initialized new variable.
4836	(x_term_init): Use x_session_initialized to check if
4837	x_session_initialize should be called.
4838	(x_initialize): Initialize x_session_initialized.
4839
48402006-03-21  Kim F. Storm  <storm@cua.dk>
4841
4842	* fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
4843	bitmap here, but ...
4844	(update_window_fringes): ... here, so we can test if it has changed.
4845
48462006-03-20  Andreas Schwab  <schwab@suse.de>
4847
4848	* dispnew.c (init_display): Check DISPLAY here.
4849
4850	* emacs.c (main): Don't check here.
4851
4852	* xterm.c (x_display_ok): Don't use DISPLAY env var.
4853
48542006-03-20  Stefan Monnier  <monnier@iro.umontreal.ca>
4855
4856	* window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
4857	mixup (YAILOM).
4858
48592006-03-20  Eli Zaretskii  <eliz@gnu.org>
4860
4861	* emacs.c (main): Fix last change.
4862
48632006-03-20  Kenichi Handa  <handa@m17n.org>
4864
4865	* fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
4866
4867	* keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
4868
4869	* xfns.c (xg_set_icon): Remove unnecessary GCPRO.
4870
4871	* xterm.c (x_term_init): Remove unnecessary GCPRO.
4872
48732006-03-19  Kim F. Storm  <storm@cua.dk>
4874
4875	* xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
4876	so it doesn't associate overlay string with following glyph by default.
4877	Allow integer property value to specify explicit number of buffer
4878	positions associate with overlay string.
4879
48802006-03-18  Chong Yidong  <cyd@stupidchicken.com>
4881
4882	* xterm.c (x_display_ok): Fix minor bug and compilation warnings.
4883
48842006-03-18  Nozomu Ando  <nand@mac.com>
4885
4886	* m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
4887	(LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
4888	(START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
4889	Don't redefine.
4890
4891	* m/mips.h: Don't use unexmips on NetBSD.
4892	(LIBS_MACHINE): Move definition lower, so it doesn't use
4893	LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
4894	C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
4895
4896	* unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
4897	(unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
4898	option is broken (e.g., MIPS/NetBSD).
4899
49002006-03-18  Craig McDaniel  <craigmcd@gmail.com>  (tiny change)
4901
4902	* sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
4903	Remove the HAVE_X_WINDOWS conditional.
4904
49052006-03-18  Vivek Dasmohapatra  <vivek@etla.org>  (tiny change)
4906
4907	* emacs.c (main): If user asks for a display that is unavailable,
4908	simulate -nw.
4909
4910	* xterm.c (x_display_ok): New function.
4911
4912	* xterm.h: Add prototype for x_display_ok.
4913
49142006-03-18  Eli Zaretskii  <eliz@gnu.org>
4915
4916	* w32fns.c (Fw32_select_font): Doc fix.
4917
49182006-03-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4919
4920	* image.c [MAC_OS] (XPutPixel, XGetPixel)
4921	[!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
4922	version when depth is 32.
4923	(mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
4924	New function.
4925	(prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
4926	(x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
4927
4928	* macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
4929	Create GWorld in ARGB pixel format.
4930	(mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
4931	Remove functions.
4932	(x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
4933	instead of mac_copy_area/mac_copy_area_with_mask.
4934
49352006-03-15  Kim F. Storm  <storm@cua.dk>
4936
4937	* xdisp.c (extend_face_to_end_of_line): Always add space glyph to
4938	empty row.  Fixes memory corruption revealed by 2006-03-02 change.
4939	(display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
4940	(tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
4941	width is exactly the same as the window width.  Don't count a final
4942	empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
4943
49442006-03-15  Juanma Barranquero  <lekktu@gmail.com>
4945
4946	* fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
4947	conditional on HAVE_NTGUI, not WINDOWS_NT.
4948
49492006-03-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4950
4951	* dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
4952
4953	* fringe.c (mac_init_fringe) [MAC_OS]: New function.
4954
4955	* macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
4956	(max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
4957	(mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
4958	(mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
4959	(mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
4960	(x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
4961	instead of mac_draw_bitmap.
4962	(x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
4963	define_fringe_bitmap and destroy_fringe_bitmap.
4964
49652006-03-14  Chong Yidong  <cyd@stupidchicken.com>
4966
4967	* xterm.c (x_uncatch_errors): Block input for entire function.
4968
49692006-03-12  Jason Rumney  <jasonr@gnu.org>
4970
4971	* w32fns.c (Fx_create_frame): Remove call to
4972	Qface_set_after_frame_default (from xfns.c 2003-05-26).
4973
4974	* w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
4975	finished with the menu.
4976
4977	* w32term.c: Sync 2005-10-24 xterm.c changes.
4978	(last_mouse_glyph_frame): New var.
4979	(note_mouse_movement): Say mouse moved if current frame differs
4980	from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
4981	(w32_mouse_position): Set last_mouse_glyph_frame.
4982	Remove OLD_REDISPLAY_CODE block.
4983
49842006-03-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
4985
4986	* macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
4987
4988	* macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
4989	(mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
4990
4991	* mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
4992
4993	* macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
4994
4995	* macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
4996	(x_draw_composite_glyph_string_foreground)
4997	(x_draw_image_foreground): Undo previous changes.
4998	(x_draw_hollow_cursor): Likewise.  Subtract 1 from the last
4999	argument of mac_draw_rectangle.
5000	(CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
5001	(mac_draw_string_common, mac_draw_image_string_cg): Use them.
5002	(FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
5003	(mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
5004	[USE_CG_DRAWING]: New functions.
5005	(mac_draw_line, mac_erase_rectangle, mac_clear_window)
5006	(mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
5007	(mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
5008	(mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
5009	(mac_copy_area, mac_scroll_area, x_scroll_bar_create)
5010	(x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
5011	(XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
5012
50132006-03-12  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
5014
5015	* xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
5016
50172006-03-11  Jason Rumney  <jasonr@gnu.org>
5018
5019	* w32fns.c (signal_user_input): New function.
5020	(post_character_message): Use it for keyboard input.
5021	(w32_msg_pump): Use it for mouse input.
5022
50232006-03-11  Luc Teirlinck  <teirllm@auburn.edu>
5024
5025	* window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
5026	(window_scroll_pixel_based, syms_of_window): Adapt to above change.
5027
50282006-03-11  Eli Zaretskii  <eliz@gnu.org>
5029
5030	* w32fns.c (w32_wnd_proc): Ignore middle and extra button events
5031	if a menu is already active (the menubar_active flag is on).
5032
50332006-03-11  David Ponce  <david@dponce.com>
5034
5035	* xfns.c (x_create_tip_frame): Preserve received parms by copying them.
5036
50372006-03-11  Eli Zaretskii  <eliz@gnu.org>
5038
5039	* w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
5040	the list of unused display error handling functions.
5041
5042	* eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
5043	HAVE_X_WINDOWS.
5044	(internal_condition_case, internal_condition_case_1)
5045	(internal_condition_case_2): Call x_catching_errors only if
5046	HAVE_X_WINDOWS.
5047
5048	* vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
5049	Don't include sys/resource.h unless defined.
5050
50512006-03-11  Richard Stallman  <rms@gnu.org>
5052
5053	* keymap.c (describe_map): Shorten string to indicate shadowed binding.
5054
5055	* vm-limit.c (get_lim_data, lim_data, data_space_start):
5056	Move from mem-limits.h.
5057	(enum warnlevel): New data type.
5058	(check_memory_limits): Rewrite the logic about warnings.
5059	Use standard `struct rlimit'.  Check return values for nonsense.
5060	(memory_warnings): Always clear lim_data.
5061
5062	* mem-limits.h (get_lim_data, lim_data, data_space_start):
5063	Move to vm-limit.c.
5064
5065	* xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
5066
5067	* eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
5068	(internal_condition_case_1, internal_condition_case_2):
5069	Abort if within unclosed x_catch_errors.
5070
50712006-03-11  Romain Francoise  <romain@orebokech.com>
5072
5073	* process.c (Vprocess_adaptive_read_buffering): Doc fix.
5074
50752006-03-11  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
5076
5077	* lisp.h: Remove duplicate prototypes.  Make the prototype of
5078	getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
5079
50802006-03-11  Eli Zaretskii  <eliz@gnu.org>
5081
5082	* xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
5083	argument of XDrawRectangle.
5084
5085	* xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
5086
5087	* macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
5088	(x_draw_glyph_string_foreground)
5089	(x_draw_composite_glyph_string_foreground)
5090	(x_draw_image_foreground): Don't subtract 1 from width and height
5091	arguments to mac_draw_rectangle.
5092	(x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
5093
50942006-03-10  Kim F. Storm  <storm@cua.dk>
5095
5096	* alloc.c (USE_POSIX_MEMALIGN): Fix last change.
5097
50982006-03-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5099
5100	* alloc.c (USE_POSIX_MEMALIGN): New macro.
5101	(ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
5102
51032006-03-09  Kenichi Handa  <handa@m17n.org>
5104
5105	* coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
5106	ASCII component of a composition.
5107
51082006-03-08  Luc Teirlinck  <teirllm@auburn.edu>
5109
5110	* window.c: Declare preserve_y as a static global variable.
5111	(window_scroll_pixel_based): No longer declare preserve_y;
5112	it is global now.
5113	(syms_of_window): Set preserve_y to -1.
5114
51152006-03-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5116
5117	* image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
5118	depth is 32.
5119	[MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
5120	depth is 32.
5121
51222006-03-06  Chong Yidong  <cyd@stupidchicken.com>
5123
5124	* xdisp.c (handle_invisible_prop): Don't update it->position with
5125	a buffer position if we're in a display string.
5126
51272006-03-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5128
5129	* macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
5130	(MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
5131
5132	* macfns.c (x_default_scroll_bar_color_parameter)
5133	(x_set_scroll_bar_foreground, x_set_scroll_bar_background):
5134	Remove unnecessary prototypes.
5135	(x_set_scroll_bar_default_width):
5136	Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
5137	(mac_set_scroll_bar_width): New function.
5138	(mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
5139
5140	* macterm.c (get_control_part_bounds): Fix type of return value.
5141	(x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
5142	(XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
5143	scroll bar if it is not tall enough to display scroll bar thumb.
5144	[USE_CARBON_EVENTS] (mac_convert_event_ref)
5145	(mac_handle_command_event, mac_handle_window_event)
5146	(mac_handle_mouse_event): Check error code of GetEventParameter.
5147	(convert_fn_keycode) [MAC_OSX]: Likewise.
5148
51492006-03-05  Andreas Schwab  <schwab@suse.de>
5150
5151	* xselect.c (x_catch_errors_unwind): Fix missing return value.
5152
51532006-03-02  Kim F. Storm  <storm@cua.dk>
5154
5155	* frame.h (struct frame): New member n_tool_bar_rows.
5156
5157	* xdisp.c: Minimize the unpleasent visual impact of the requirement
5158	that non-toolkit tool-bars must occupy an integral number of screen
5159	lines, by distributing the rows evenly over the tool-bar screen area.
5160	(Vtool_bar_border): New variable.
5161	(syms_of_xdisp): DEFVAR_LISP it.
5162	(display_tool_bar_line): Add HEIGHT arg for desired row height.
5163	Make tool-bar row the desired height.  Use default face for border
5164	below tool-bar.
5165	(tool_bar_lines_needed): Add N_ROWS arg.  Use it to return number of
5166	actual tool-bar rows.
5167	(redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
5168	Adjust the height of the tool-bar rows to fill tool-bar screen area.
5169	(redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
5170	is resized.
5171
51722006-03-01  Luc Teirlinck  <teirllm@auburn.edu>
5173
5174	* search.c (Fregexp_quote): Do not precede a literal `]' with two
5175	backslashes to try to make clear that it has a literal meaning; it
5176	does not do that.  (It could close a character alternative
5177	containing a backslash.)
5178
51792006-02-28  Chong Yidong  <cyd@stupidchicken.com>
5180
5181	* xselect.c (x_catch_errors_unwind): New function.
5182	(x_reply_selection_request): Put x_uncatch_errors in an unwind.
5183	(Fx_get_atom_name): Call x_uncatch_errors earlier.
5184
5185	* window.c (Qscroll_up, Qscroll_down): New syms.
5186	(window_scroll_pixel_based): Make preserve_y static to avoid
5187	getting point stuck when scrolling 1 line.
5188
51892006-02-26  Chong Yidong  <cyd@stupidchicken.com>
5190
5191	* xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
5192
5193	* xterm.c (x_load_font, x_term_init, XTmouse_position)
5194	(handle_one_xevent, x_connection_closed, x_list_fonts):
5195	No arg for x_uncatch_errors.
5196
5197	* xselect.c (x_own_selection, x_decline_selection_request)
5198	(x_reply_selection_request, x_get_foreign_selection)
5199	(Fx_get_atom_name, Fx_send_client_event): Likewise.
5200
5201	* xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
5202	Likewise.
5203
52042006-02-26  Luc Teirlinck  <teirllm@auburn.edu>
5205
5206	* lread.c: Declare Vload_file_rep_suffixes instead of
5207	deleted variable default_suffixes.
5208	(Fget_load_suffixes): New function.
5209	(Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
5210	No longer use deleted variable default_suffixes.  Update docstring.
5211	(syms_of_lread): defsubr Sget_load_suffixes.
5212	Expand `load-suffixes' docstring.
5213	Delete default_suffixes and DEFVAR_LISP the new variable
5214	`load-file-rep-suffixes'.
5215
5216	* w32.c (check_windows_init_file): Use Fget_load_suffixes instead
5217	of Vload_suffixes.
5218
5219	* lisp.h: EXFUN Fget_load_suffixes.
5220	Extern Vload_file_rep_suffixes.
5221
5222	* eval.c (specpdl_ptr): Remove volatile qualifier for consistency
5223	with lisp.h.
5224
52252006-02-26  Stefan Monnier  <monnier@iro.umontreal.ca>
5226
5227	* lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
5228	qualifier which was trying to avoid the bug that was fixed by
5229	yesterday's changes to xterm.c.
5230
52312006-02-25  Chong Yidong  <cyd@stupidchicken.com>
5232
5233	* xterm.h (x_catch_errors) Return value changed to void.
5234	(x_uncatch_errors): Delete unused count argument.
5235
5236	* xterm.c (x_catch_errors): Don't use record_unwind_protect, since
5237	it can be called in a signal handler.
5238	(x_catch_errors_unwind): Function deleted.
5239	(x_uncatch_errors): Deallocate last x_error_message_stack struct.
5240	(x_check_errors): Call x_uncatch_errors before signalling error.
5241
5242	(x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
5243	(x_connection_closed, x_list_fonts): Use new versions of
5244	x_catch_errors and x_uncatch_errors.
5245
5246	* xselect.c (x_own_selection, x_decline_selection_request)
5247	(x_reply_selection_request, x_get_foreign_selection)
5248	(Fx_get_atom_name, Fx_send_client_event): Likewise.
5249
5250	* xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
5251	Likewise.
5252
5253	* eval.c (record_unwind_protect): Add an assertion.
5254
52552006-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
5256
5257	* process.c (Fmake_network_process): Init the process's mark.
5258
52592006-02-25  Kim F. Storm  <storm@cua.dk>
5260
5261	* buffer.c (modify_overlay): Force redisplay if we modify an
5262	overlay at the end of the buffer.
5263
52642006-02-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5265
5266	* gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
5267	nil the image file has been removed, in that case use the (cached)
5268	pixmap.
5269
52702006-02-24  Kenichi Handa  <handa@m17n.org>
5271
5272	* fileio.c (Finsert_file_contents): When a text is replaced
5273	partially, be sure to set point before the inserted characters.
5274
52752006-02-23  Zhang Wei  <id.brep@gmail.com>  (tiny change)
5276
5277	* xfns.c (Fx_file_dialog): Return a decoded file name.
5278
52792006-02-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5280
5281	* dispnew.c (update_text_area): Avoid needless redraw of rightmost
5282	glyph whose face is extended to the text area end.
5283
5284	* macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
5285	values if control is not visible or values are not changed.
5286
52872006-02-22  Stefan Monnier  <monnier@iro.umontreal.ca>
5288
5289	* window.c (Fwindow_list): Check `window' before doing XWINDOW.
5290	The default `window' should not be "on a different frame".
5291
52922006-02-22  Kim F. Storm  <storm@cua.dk>
5293
5294	* indent.c (Fvertical_motion): Only try to move back if we can.
5295
52962006-02-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5297
5298	* macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
5299	n_clip_rects.
5300
5301	* macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
5302	xmenu.c.
5303
5304	* macterm.c (GC_CLIP_REGION): Remove macro.
5305	(mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
5306	All uses changed.  Don't do clipping if n_clip_rects is zero.
5307	(mac_set_clip_rectangles): Use xassert instead of abort.
5308	Set n_clip_rects.  Don't make clip_region empty when number of
5309	clipping rectangles is zero.
5310	(mac_reset_clip_rectangles): Set n_clip_rects directly instead of
5311	calling mac_set_clip_rectangles.
5312	(x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
5313	avoid multiple redraws.
5314
53152006-02-22  Kim F. Storm  <storm@cua.dk>
5316
5317	* fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
5318
53192006-02-21  Kim F. Storm  <storm@cua.dk>
5320
5321	* fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
5322
53232006-02-21  Zhang Wei  <brep@newsmth.org>
5324
5325	* xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
5326	returning it.
5327
53282006-02-21  Giorgos Keramidas  <keramida@ceid.upatras.gr>  (tiny change)
5329
5330	* fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
5331	(standard_bitmaps): Use it.
5332
53332006-02-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5334
5335	* macterm.c (mac_draw_string_common): Remove arg MODE.  New arg
5336	BG_WIDTH.  All uses changed.  Draw background if BG_WIDTH is not zero.
5337	(mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
5338	[USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
5339	mac_draw_string_cg.  New arg BG_WIDTH.  All uses changed.
5340	Draw background if BG_WIDTH is not zero.  Use float constants as
5341	divisors instead of double.  Use alloca instead of xmalloc/xfree.
5342	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5343	[!MAC_OS8 || USE_ATSUI]: Background may be drawn using
5344	mac_draw_image_string* functions.
5345	(XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
5346	some fonts when srcCopy text transfer mode might be used.
5347	(mac_begin_clip, mac_end_clip): Check if region is empty.
5348	(mac_set_clip_rectangles): When resetting clip region, make it
5349	empty instead of disposing of it.
5350
53512006-02-20  Kim F. Storm  <storm@cua.dk>
5352
5353	* Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
5354
5355	* buffer.h (struct buffer): New members fringe_indicator_alist and
5356	fringe_cursor_alist.
5357
5358	* buffer.c (init_buffer_once): Set dummy default values for
5359	fringe-indicator-alist and fringe-cursor-alist.  The proper
5360	default values are set by pre-loading fringe.el.
5361	(syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
5362	fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
5363	corresponding default- variables.
5364
5365	* fringe.c (enum fringe_bitmap_type): Remove.  Change all uses
5366	to use `int'.
5367	(NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
5368	Define explicitly.
5369	(Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
5370	(Qhollow_small): New variables.
5371	(syms_of_fringe): Intern and staticpro them.
5372	(question_mark_bits): Rename from unknown_bits.
5373	(left_curly_arrow_bits): Rename from continuation_bits.
5374	(right_curly_arrow_bits): Rename from continued_bits.
5375	(left_triangle_bits): Rename from ov_bits.
5376	(right_triangle_bits): Add.
5377	(filled_rectangle_bits): Rename from filled_box_cursor_bits.
5378	(hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
5379	(filled_square_bits): Add.
5380	(vertical_bar_bits): Rename from bar_cursor_bits.
5381	(horizontal_bar_bits): Rename from hbar_cursor_bits.
5382	(empty_line_bits): Rename from zv_bits.
5383	(standard_bitmaps): Update to use new names.
5384	(draw_fringe_bitmap_1): Make static.
5385	(get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
5386	to map from logical cursors and indicators to physical bitmaps.
5387	(draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
5388	bitmaps using symbol names instead of bitmap numbers.
5389	(update_window_fringes): Use logical indicator symbol names
5390	instead of bitmap numbers for logical.  Add bitmap cache.
5391	(LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
5392
53932006-02-20  Chong Yidong  <cyd@stupidchicken.com>
5394
5395	* regex.c: Revert 2006-02-19 change.
5396	(xmalloc, xrealloc): Define these when not linked to Emacs.
5397	Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
5398
53992006-02-19  Luc Teirlinck  <teirllm@auburn.edu>
5400
5401	* regex.c (extend_range_table_work_area): Fix typo.
5402
54032006-02-19  Richard M. Stallman  <rms@gnu.org>
5404
5405	* xterm.c (x_catch_errors): Use xmalloc.
5406
5407	* regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
5408	(regex_compile): Likewise.
5409	(regcomp): Use xmalloc.
5410
5411	* gtkutil.c (malloc_widget_value): Use xmalloc.
5412
5413	* vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
5414	(check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
5415
5416	* xmenu.c (digest_single_submenu): When pane_string is empty,
5417	do initialize save_wv.
5418
54192006-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5420
5421	* xdisp.c (update_menu_bar) [MAC_OS]: Don't set
5422	w->update_mode_line if arg F is not the selected frame.
5423
5424	* macmenu.c (popup_activated_flag, submenu_id)
5425	(next_menubar_widget_id): Remove variables.
5426	(initialize_frame_menubar): Remove function.
5427	(pop_down_menu, mac_menu_show): Simplify save value.
5428	(dispose_menus): New function.
5429	(pop_down_menu, fill_menubar): Use it.
5430	(fill_submenu): Remove function.  All uses changed to fill_menu.
5431	(add_menu_item): Remove args SUBMENU and FORCE_DISABLE.  New arg
5432	POS.  Don't call SetMenuItemHierarchicalID here.
5433	(fill_menu): Add arg SUBMENU_ID.  Return submenu_id that is to be
5434	used next.  Call SetMenuItemHierarchicalID here.
5435	(fill_menubar): Add arg DEEP_P.  All uses changed.  Clean up menu
5436	objects if needed.  Reuse existing menu bar titles if possible.
5437	(set_frame_menubar): Don't clean up menu objects here.
5438
54392006-02-18  Chong Yidong  <cyd@stupidchicken.com>
5440
5441	* window.c (window_min_size_1): Ensure room for the scroll bar and
5442	fringes.
5443
54442006-02-17  Romain Francoise  <romain@orebokech.com>
5445
5446	* puresize.h (BASE_PURESIZE): Increment to 1200000.
5447
54482006-02-17  Stefan Monnier  <monnier@iro.umontreal.ca>
5449
5450	* alloc.c (Fmake_symbol): Comment-out left-over assert from before the
5451	addition of the BLOCK_INPUTs.
5452
54532006-02-17  Juanma Barranquero  <lekktu@gmail.com>
5454
5455	* window.c (Fset_window_scroll_bars): Doc fix.
5456
54572006-02-17  Kenichi Handa  <handa@m17n.org>
5458
5459	* xdisp.c (display_mode_element): Call display_string with correct
5460	PREC arg (which must be a number of characters, not column width).
5461
54622006-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5463
5464	* frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
5465
5466	* macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
5467
5468	* macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
5469
54702006-02-14  Richard M. Stallman  <rms@gnu.org>
5471
5472	* frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
5473
5474	* m/ibms390x.h: New file.
5475
54762006-02-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5477
5478	* gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
5479	value of x-gtk-whole-detached-tool-bar.
5480	(xg_tool_bar_attach_callback): Set show-arrow to TRUE.
5481
5482	* xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
5483
54842006-02-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5485
5486	* xterm.c (x_x_to_emacs_modifiers): Make non-static.
5487
5488	* xterm.h: Declare x_x_to_emacs_modifiers.
5489
5490	* gtkutil.c (xg_tool_bar_button_cb): New function.
5491	(xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
5492	store modifiers in event.
5493	(update_frame_tool_bar): Connect button-release-event to
5494	xg_tool_bar_button_cb.
5495
54962006-02-13  Richard M. Stallman  <rms@gnu.org>
5497
5498	* .gdbinit (xwindow): Update the code to show the window box.
5499
55002006-02-13  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5501
5502	* xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
5503
55042006-02-12  Richard M. Stallman  <rms@gnu.org>
5505
5506	* cmds.c (internal_self_insert): Handle weird auto-fill-function.
5507
55082006-02-11  Eli Zaretskii  <eliz@gnu.org>
5509
5510	* keyboard.c (Venable_disabled_menus_and_buttons): New variable.
5511	(syms_of_keyboard): DEVFAR_LISP and initialize it.
5512	(parse_tool_bar_item, parse_menu_item): If that variable is
5513	non-nil, don't disable menu items and tool-bar buttons.
5514
55152006-02-11  Juanma Barranquero  <lekktu@gmail.com>
5516
5517	* doc.c (Fsubstitute_command_keys): Doc fix.
5518
55192006-02-10  Thien-Thi Nguyen  <ttn@gnu.org>
5520
5521	* data.c (Findirect_function): Rewrite docstring.
5522	Fix omission bug: Declare new arg NOERROR.
5523
55242006-02-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5525
5526	* macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
5527	if window_desc is not set yet.
5528	(Fx_create_frame): Remove variable x_frame_name.  Apply 2005-12-07
5529	and 2006-01-26 changes for xfns.c.  Call x_iconify_frame if frame
5530	parameter `visibility' is `icon'.
5531	(Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
5532	instead of "fontset-mac".
5533	(Fx_focus_frame): New defun.
5534	(syms_of_macfns): Defsubr it.
5535
5536	* macterm.c (mac_define_frame_cursor): Don't change pointer shape
5537	for unfocused frame.
5538	(x_raise_frame): Call BringToFront instead of SelectWindow.
5539	(x_lower_frame): Use NULL instead of nil.
5540	(x_make_frame_visible): Don't call SelectWindow.
5541	(XTread_socket): Increment handling_signal at the start, decrement
5542	it at the end.
5543	[USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
5544	CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
5545
55462006-02-10  Kim F. Storm  <storm@cua.dk>
5547
5548	* data.c (Findirect_function): Add NOERROR arg.  All callers changed
5549	to pass Qnil for NOERROR.
5550
5551	* keymap.c (current_minor_maps_error): Remove.
5552	(current_minor_maps): Pass Qt for NOERROR to Findirect_function
5553	instead of using internal_condition_case_1+current_minor_maps_error.
5554
55552006-02-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5556
5557	* xterm.c (handle_one_xevent): Must note mouse movement even for nil
5558	frames for GTK, in that case it is the tool bar.  This is so that
5559	highlighted text get reset properly.
5560
55612006-02-09  Juanma Barranquero  <lekktu@gmail.com>
5562
5563	* alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
5564
55652006-02-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5566
5567	* window.c (adjust_window_trailing_edge): Check that shrinking
5568	does not set a window to size zero or less.
5569
55702006-02-08  Miles Bader  <miles@gnu.org>
5571
5572	* editfns.c (Fconstrain_to_field): Use Fget_char_property instead
5573	of Fget_text_property (other field functions work with overlays as
5574	well as text-properties).
5575
55762006-02-07  Kenichi Handa  <handa@m17n.org>
5577
5578	* dispextern.h (unibyte_display_via_language_environment): Extern it.
5579
5580	* xterm.h (unibyte_display_via_language_environment):
5581	* w32term.h (unibyte_display_via_language_environment):
5582	* macterm.h (unibyte_display_via_language_environment): Delete extern.
5583
55842006-02-07  Kenichi Handa  <handa@m17n.org>
5585
5586	* term.c (append_glyph): Refer to it->char_to_display instead of it->c.
5587	(produce_glyphs): Set the character to print in
5588	it->char_to_display.  Handle unibyte-display-via-language-environment.
5589	(produce_stretch_glyph): Set character to print in it->char_to_display.
5590
55912006-02-06  Kenichi Handa  <handa@m17n.org>
5592
5593	* lread.c (openp): Initialize encoded_fn before GCPRO it.
5594
55952006-02-05  Ken Raeburn  <raeburn@raeburn.org>
5596
5597	* editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
5598
5599	* lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
5600	Cast bitfield value to EMACS_INT, to suppress gcc warning.
5601
5602	* xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
5603	defining.
5604
56052006-02-03  Kim F. Storm  <storm@cua.dk>
5606
5607	* xdisp.c: Cache last merged escape glyph face.
5608	(last_escape_glyph_frame, last_escape_glyph_face_id)
5609	(last_escape_glyph_merged_face_id): New variables.
5610	(get_next_display_element): Use/update them.
5611	(redisplay_internal): Reset them before redisplay.
5612
5613	* xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
5614	Only recheck faces after displaying ellipsis.
5615
56162006-02-02  Kenichi Handa  <handa@m17n.org>
5617
5618	* coding.c (decode_composition_emacs_mule): Fix handling of
5619	incorrect format data.
5620
56212006-01-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5622
5623	* gtkutil.c (update_frame_tool_bar): Use new tool bar function
5624	gtk_toolbar_insert() so we can have tool bars of different sizes.
5625
56262006-01-30  Luc Teirlinck  <teirllm@auburn.edu>
5627
5628	* data.c (Flistp): Doc fix.
5629
56302006-01-30  Juanma Barranquero  <lekktu@gmail.com>
5631
5632	* window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
5633	Fix typos in docstrings.
5634
56352006-01-28  Luc Teirlinck  <teirllm@auburn.edu>
5636
5637	* data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
5638
56392006-01-27  Chong Yidong  <cyd@stupidchicken.com>
5640
5641	* alloc.c (make_interval, allocate_string)
5642	(allocate_string_data, make_float, Fcons, allocate_vectorlike)
5643	(Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
5644	global variables.
5645
56462006-01-27  Eli Zaretskii  <eliz@gnu.org>
5647
5648	* dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
5649	the MSDOS definition.
5650
56512006-01-26  Richard M. Stallman  <rms@gnu.org>
5652
5653	* alloc.c (check_pure_size): Make overflow message an "error message".
5654
5655	* keymap.c (Fmap_keymap): Doc fix.
5656
5657	* xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
5658	unless they were cleared out.
5659
5660	* frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
5661
56622006-01-26  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
5663
5664	* editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
5665	(find_field): Set before_field to after_field when pos is at BEGV.
5666	(Fline_beginning_position, Fline_end_position):
5667	Clarify confusing doc string.
5668
5669	* cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
5670	string.
5671
56722006-01-26  Kenichi Handa  <handa@m17n.org>
5673
5674	* callproc.c (Fcall_process): GCPRO error_file.  Encode infile,
5675	current_dir, and error_file.  On reporting an error, decode them
5676	back.
5677
56782006-01-24  Stefan Monnier  <monnier@iro.umontreal.ca>
5679
5680	* regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
5681	(re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
5682	Don't check for quit, since any loop will go through fail or jump.
5683
56842006-01-24  Chong Yidong  <cyd@stupidchicken.com>
5685
5686	* alloc.c (allocate_string_data): Update next_free immediately, to
5687	reduce risk of memory clobberage.
5688
56892006-01-24  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
5690
5691	* xdisp.c (handle_invisible_prop): Set it->position to fix cursor
5692	display when point moves across an ellipsis.  If there are
5693	adjacent invisible texts, don't lose the second one's ellipsis.
5694	(x_produce_glyphs): Doc fix.
5695
56962006-01-23  Stefan Monnier  <monnier@iro.umontreal.ca>
5697
5698	* xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
5699
57002006-01-23  Kim F. Storm  <storm@cua.dk>
5701
5702	* xdisp.c (handle_single_display_spec): Fix handling of space
5703	property on char from string: set *position rather than
5704	it->current.pos.
5705	(produce_stretch_glyph): Reduce width of stretch glyphs so they
5706	don't get wider than the window (unless truncate-lines is on).
5707
57082006-01-22  Stefan Monnier  <monnier@iro.umontreal.ca>
5709
5710	* xterm.c: Avoid allocating Lisp data from a signal handler.
5711	(x_error_message): New var to replace x_error_message_string.
5712	(x_error_catcher, x_catch_errors, x_catch_errors_unwind)
5713	(x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
5714	(syms_of_xterm): Use it instead of x_error_message_string.
5715
5716	* alloc.c (lisp_align_free): Add an assertion.
5717	(make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
5718	(allocate_misc): If ENABLE_CHECKING is on, check we're not called from
5719	a signal handler.
5720
57212006-01-21  Luc Teirlinck  <teirllm@auburn.edu>
5722
5723	* dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
5724
57252006-01-21  Romain Francoise  <romain@orebokech.com>
5726
5727	* xdisp.c (get_window_cursor_type): Fix last change.
5728	Update copyright year.
5729
57302006-01-20  Eli Zaretskii  <eliz@gnu.org>
5731
5732	* lread.c (Fload): Don't leak the file descriptor returned by
5733	openp if we are going to signal an error.
5734
5735	* w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
5736	directly to _close.
5737	(sys_dup): Protect against new_fd larger than fd_info[] can handle.
5738	(sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
5739	to _read.
5740	(sys_write): If FD is outside [0..MAXDESC) limits, pass it
5741	directly to _write.
5742
5743	* .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
5744	if it is NULL.
5745
57462006-01-20  Kenichi Handa  <handa@m17n.org>
5747
5748	* puresize.h (BASE_PURESIZE): Increment to 1190000.
5749
57502006-01-19  Chong Yidong  <cyd@stupidchicken.com>
5751
5752	* xdisp.c (get_window_cursor_type): Use cursor type specified by
5753	the selected buffer for the echo area too.
5754
57552006-01-19  Richard M. Stallman  <rms@gnu.org>
5756
5757	* keymap.c (Fmap_keymap): Doc fix.
5758
5759	* s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
5760
5761	* keyboard.c (echo_char): Don't omit the space between first two
5762	echoed chars.
5763
5764	* minibuf.c (read_minibuf): Fix previous change.
5765
57662006-01-19  Kenichi Handa  <handa@m17n.org>
5767
5768	* xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
5769
57702006-01-17  Richard M. Stallman  <rms@gnu.org>
5771
5772	* frame.c (x_frame_get_and_record_arg): Don't record Qunbound
5773	value in f->param_alist.
5774
57752006-01-15  Andreas Schwab  <schwab@suse.de>
5776
5777	* search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
5778
57792006-01-13  Richard M. Stallman  <rms@gnu.org>
5780
5781	* Makefile.in: Define new macro WINDOW_SUPPORT.
5782	(lisp): Use it.
5783	(SOME_MACHINE_LISP): Add conditionally loaded files.
5784
57852006-01-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5786
5787	* macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
5788	[MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
5789	(XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
5790	decomposed form.
5791
5792	* process.c [HAVE_INTTYPES_H]: Include inttypes.h.
5793	(ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
5794	(Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
5795	macro.  Also try member ifr_addr when getting netmask.
5796
57972006-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
5798
5799	* fileio.c (Fexpand_file_name): Remove redundant tests.
5800	Fix elimination of // so that it doesn't prevent elimination of an
5801	immediately following /. or /..
5802
58032006-01-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5804
5805	* gtkutil.c (xg_toggle_notify_cb): New function.
5806	(xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
5807	xg_toggle_notify_cb.
5808	(xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
5809	parameter value changes so the toggle button gets updated.
5810
58112006-01-06  Nick Roberts  <nickrob@snap.net.nz>
5812
5813	* .gdbinit: Fix typo.
5814
58152006-01-05  Eli Zaretskii  <eliz@gnu.org>
5816
5817	* .gdbinit: Fix last change.
5818
58192006-01-05  Kim F. Storm  <storm@cua.dk>
5820
5821	* process.c (Fmake_network_process): Use AF_INET instead of
5822	AF_UNSPEC when AF_INET6 is not defined.
5823
58242006-01-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5825
5826	* mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
5827	Don't check that the other type is known file-related one.
5828
5829	* macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
5830	gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
5831	OS X 10.4 and later.
5832
58332006-01-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5834
5835	* gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
5836	let GTK do all image processing.  Importing Emacs own pixmaps to GTK
5837	looks bad for inactive tool bar items with some Gnome themes.
5838
58392006-01-04  Eli Zaretskii  <eliz@gnu.org>
5840
5841	* .gdbinit: Avoid a warning message when x_error_quitter is not
5842	compiled in.
5843
5844	* process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
5845	for w32.
5846
58472006-01-04  Kim F. Storm  <storm@cua.dk>
5848
5849	* process.c: Add IPv6 support.
5850	(Qipv4, Qipv6): New vars.
5851	(syms_of_process): Intern and staticpro them.
5852	(Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
5853	with or without port number.  Handle 4 element vector as IPv4 address
5854	without port number.
5855	(conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
5856	(conv_lisp_to_sockaddr): Handle IPv6 addresses.
5857	(Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
5858	request that address family only.  :family nil or omitted means to
5859	determine address family from the specified :host and :service.
5860	(ifflag_table): Add missing OpenBSD IFF_ flags.
5861	(server_accept_connection): Handle IPv6 addresses.
5862	(init_process): Add (:family ipv4) and (:family ipv6) sub-features.
5863
5864	* .gdbinit: Undo last change.  Instead, look at Vsystem_type to
5865	determine which breakpoints to set.
5866
58672006-01-03  Stefan Monnier  <monnier@iro.umontreal.ca>
5868
5869	* keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
5870
5871	* window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
5872
58732006-01-03  Romain Francoise  <romain@orebokech.com>
5874
5875	* emacs.c (main): Update copyright year.
5876
58772006-01-03  Ken Raeburn  <raeburn@gnu.org>
5878
5879	* callproc.c (delete_temp_file): Bind file-name-handler-alist to
5880	nil for the call to internal_delete_file.
5881
58822006-01-01  Ken Raeburn  <raeburn@gnu.org>
5883
5884	* callproc.c (Fcall_process_region): Bind file-name-handler-alist
5885	to nil for the call to Fwrite_region.
5886
58872005-12-31  Richard M. Stallman  <rms@gnu.org>
5888
5889	* minibuf.c (read_minibuf): Clear out all other minibuffer windows.
5890
58912005-12-31  Eli Zaretskii  <eliz@gnu.org>
5892
5893	* emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
5894
58952005-12-30  Luc Teirlinck  <teirllm@auburn.edu>
5896
5897	* textprop.c (set_text_properties): Reword description of return value.
5898	Return Qnil if caller wants to remove all text properties from a
5899	string and the string already has no intervals.
5900
59012005-12-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5902
5903	* term.c (visible_cursor): New boolean var.
5904	(set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
5905	visible_cursor.
5906	(syms_of_term): Export the new var as "visible-cursor".
5907
59082005-12-30  Eli Zaretskii  <eliz@gnu.org>
5909
5910	* .gdbinit: Tell users not to worry about GDB warnings that some
5911	functions do not exist in the binary.
5912
59132005-12-30  Andreas Schwab  <schwab@suse.de>
5914
5915	* process.c (Fnetwork_interface_info): Correctly terminate the
5916	loop over ifflag_table.
5917
59182005-12-29  Richard M. Stallman  <rms@gnu.org>
5919
5920	* lread.c (readevalloop): Test for reading a whole buffer
5921	before actually reading anything.  Handle all cases, including
5922	START = END = nil and an already-narrowed buffer.
5923	Convert END to a marker if it is a number.
5924
5925	* keymap.c (describe_map): Put sparse map elements into an array,
5926	sort them, then output a sequence of identical bindings on one line.
5927	(struct describe_map_elt): New data type.
5928	(describe_map_compare): New function.
5929
59302005-12-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5931
5932	* gtkutil.c (xg_get_file_with_chooser): Change message shown
5933	in file chooser.
5934
59352005-12-27  Richard M. Stallman  <rms@gnu.org>
5936
5937	* lread.c (readevalloop): Set PT and ZV in the proper buffer,
5938	not the current one.
5939
5940	* minibuf.c (Fminibuffer_message): Doc fix.
5941	(read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
5942
5943	* eval.c (do_autoload): Ignore elements of Vautoload_queue
5944	where car is not symbol.
5945
59462005-12-27  Kenichi Handa  <handa@m17n.org>
5947
5948	* charset.c (lisp_string_width): Check multibyteness of STRING.
5949
59502005-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
5951
5952	* xfns.c (x_show_hidden_files): New variable.
5953	(syms_of_xfns): Defvar it.
5954
5955	* gtkutil.c (xg_toggle_visibility_cb): New function.
5956	(xg_get_file_with_chooser): Add toggle hidden files and a message
5957	to the new file chooser dialog.  Show hidden files if
5958	x_show_hidden_files is non-zero.
5959
59602005-12-26  Richard M. Stallman  <rms@gnu.org>
5961
5962	* keyboard.h: Undo previous change.
5963
5964	* Makefile.in (undo.o): Undo previous change.
5965
5966	* undo.c: Undo previous change.
5967
59682005-12-26  Luc Teirlinck  <teirllm@auburn.edu>
5969
5970	* keyboard.h: extern last_point_position_window.
5971
5972	* undo.c: include keyboard.h.
5973
5974	* Makefile.in (undo.o): Depend on keyboard.h.
5975
59762005-12-26  Richard M. Stallman  <rms@gnu.org>
5977
5978	* commands.h (last_point_position_window): Declare.
5979
5980	* undo.c: Depend on window.h.
5981	(record_point): Save old point from the correct window.
5982
5983	* keyboard.c (last_point_position_window): New variable.
5984	(command_loop_1): Set last_point_position_window.
5985	(syms_of_keyboard): Init it.
5986
5987	* Makefile.in (undo.o): Depend on window.h.
5988
59892005-12-25  Richard M. Stallman  <rms@gnu.org>
5990
5991	* eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
5992	to undo a `provide'.
5993
5994	* fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
5995
59962005-12-25  Giorgos Keramidas  <keramida@ceid.upatras.gr>
5997
5998	* m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
5999	define for FreeBSD on this platform.
6000
60012005-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6002
6003	* macterm.h (TYPE_FILE_NAME): New define.
6004	(posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
6005
6006	* mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
6007	Add prototypes.  Make static.
6008	(mac_aedesc_to_lisp): Initialize err to noErr.
6009	(mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
6010	(init_coercion_handler): New functions.
6011	(Fmac_coerce_ae_data): Use coercion of Apple event data for
6012	translation from/to file names.
6013
6014	* macterm.c: Don't include sys/param.h.
6015	(init_coercion_handler): Add extern.
6016	[MAC_OS8] (main): Call init_coercion_handler.
6017	(mac_initialize) [MAC_OSX]: Likewise.
6018	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
6019	Apple event data for translation from/to file names.
6020
6021	* macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
6022
6023	* image.c [MAC_OS] (find_image_fsspec): Likewise.
6024
60252005-12-23  Martin Rudalics  <rudalics@gmx.at>
6026
6027	* insdel.c (insert, insert_and_inherit, insert_before_markers)
6028	(insert_before_markers_and_inherit): Make sure FROM is correct
6029	when `after-change-functions' are called.
6030
60312005-12-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
6032
6033	* xfns.c (Fx_uses_old_gtk_dialog): New function.
6034
6035	* gtkutil.c (xg_uses_old_file_dialog): New function.
6036	(xg_get_file_name): Use xg_uses_old_file_dialog.
6037
6038	* gtkutil.h: Declare xg_uses_old_file_dialog.
6039
60402005-12-22  Richard M. Stallman  <rms@gnu.org>
6041
6042	* xmenu.c (xmenu_show): Call inhibit_garbage_collection.
6043
60442005-12-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6045
6046	* mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
6047
6048	* macgui.h (XCharStruct): Remove member `valid_p'.
6049	(STORE_XCHARSTRUCT): Don't set member `valid_p'.
6050	(XCharStructRow): New typedef.
6051	(XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
6052	New macros.
6053	(struct MacFontStruct): Add member `bounds'.  Remove member
6054	`per_char'.  All uses for QuichDraw Text fonts are changed to
6055	`bounds.per_char'.  ATSUI font bounds are represented as an array
6056	`bounds.rows' of XCharStructRow's, each of which consists of a
6057	bitmap of valid entries and an array of char bounds.
6058
6059	* macterm.c (mac_per_char_metric): Add prototype.
6060	(x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
6061	(mac_query_char_extents): New function.
6062	(x_per_char_metric): Use it.
6063	(XLoadQueryFont): Likewise.  Consolidate min/max_bounds calculations.
6064	[USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
6065	Use mac_per_char_metric instead of x_per_char_metric.
6066	(mac_text_extents_16): New function.
6067	(mac_compute_glyph_string_overhangs): Use it.
6068	(mac_unload_font): Free member `bounds' in struct MacFontStruct.
6069
60702005-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6071
6072	* minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
6073	(Fminibuffer_completion_help): Remove duplicates before display.
6074
60752005-12-21  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
6076
6077	* print.c (print_preprocess): Don't lose print_depth levels while
6078	iterating.
6079
60802005-12-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6081
6082	* macmenu.c (Qmac_apple_event): Add extern.
6083	(set_frame_menubar, mac_menu_show keymp_panes)
6084	(single_keymap_panes, list_of_panes, list_of_item)
6085	(single_menu_item): Add argument types to prototypes.
6086	(mac_dialog_show) [HAVE_DIALOGS]: Likewise.
6087	(struct skp): New struct (from xmenu.c).
6088	(single_keymap_panes, single_menu_item, list_of_panes)
6089	(list_of_item): Sync with xmenu.c.
6090	(Fx_popup_menu, Fx_popup_dialog): Likewise.  Don't get window from
6091	POSITION if it is mac-apple-event event.
6092	(menubar_selection_callback): Don't use menu_command_in_progress.
6093	(set_frame_menubar): First parse all submenus, then make
6094	widget_value trees from them.  Don't allocate any widget_value
6095	objects until we are done with the parsing.
6096	(parse_single_submenu, digest_single_submenu): New functions.
6097	(single_submenu): Function deleted, replaced by those two.
6098	(install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't create
6099	or dispose of EventHandlerUPP.  Install hander to all submenus.
6100	(mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
6101	instead of ENCODE_SYSTEM.
6102	(free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
6103	integer values.
6104	[HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
6105	(add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
6106	format menu item string.  Don't use NULL for integer value.
6107
6108	* macterm.h (struct mac_output): Remove unused member
6109	menu_command_in_progress.
6110
61112005-12-20  Juri Linkov  <juri@jurta.org>
6112
6113	* xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
6114	position is non-nil, else set it to nil.
6115
6116	* macmenu.c (Fx_popup_menu): Add `else' to set
6117	Vmenu_updating_frame to nil only if position is nil.
6118
6119	* w32menu.c (Fx_popup_menu): Add `else' to set
6120	Vmenu_updating_frame to nil only if position is nil.
6121
61222005-12-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6123
6124	* keyboard.c (make_lispy_event): Drag-and-drop items are now
6125	stored in member `args' of struct input_event.
6126
6127	* termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
6128
6129	* xselect.c (x_handle_dnd_message): Drag-and-drop items are now
6130	stored in member `args' of struct input_event.
6131
6132	* w32term.c (construct_drag_n_drop): Likewise.
6133
6134	* macterm.c (mac_do_receive_drag): Likewise.
6135	(x_use_underline_position_properties): Undo 2005-07-13 change.
6136	(syms_of_macterm) <x-use-underline-position-properties>: Likewise.
6137	(mac_use_core_graphics, mac_wheel_button_is_mouse_2)
6138	(mac_pass_command_to_system, mac_pass_control_to_system):
6139	New boolean variables renamed from Lisp_Object ones
6140	Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
6141	Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
6142	All uses changed.
6143	(syms_of_macterm): DEFVAR_BOOL them.  Remove previous DEFVAR_LISPs.
6144	Make them user options.
6145	(mac_handle_command_event, mac_store_services_event):
6146	Call create_apple_event_from_event_ref without 5th argument.
6147	(backtranslate_modified_keycode): Mask off modifier keys that are
6148	mapped to some Emacs modifiers before passing it to KeyTranslate.
6149	(syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
6150	`mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
6151	Fix docstrings of `mac-*-modifier'.
6152
6153	* mac.c (create_apple_event_from_event_ref): Remove arg `types'.
6154	(do_applescript): Change argument types to Lisp_Object.
6155	All uses changed.
6156
6157	* macterm.h (create_apple_event_from_event_ref): Remove 5th
6158	argument from extern.
6159
61602005-12-18  Dan Nicolaescu  <dann@ics.uci.edu>
6161
6162	* xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
6163	the answer, return `lambda', not nil.
6164
61652005-12-17  Eli Zaretskii  <eliz@gnu.org>
6166
6167	* makefile.w32-in (bootstrap-temacs): Warn that parts of commands
6168	enclosed in $(ARGQUOTE)s should not be split between two lines, as
6169	that will break with GNU Make >3.80, when sh.exe is used and
6170	arg quoting is with '..'.
6171
61722005-12-17  Chong Yidong  <cyd@stupidchicken.com>
6173
6174	* print.c (print_preprocess): Just signal an error if print_depth
6175	is exceeded.
6176
61772005-12-17  Eli Zaretskii  <eliz@gnu.org>
6178
6179	* .gdbinit: Set a breakpoint on w32_abort.
6180
61812005-12-16  Juri Linkov  <juri@jurta.org>
6182
6183	* minibuf.c (Fminibuffer_completion_contents): New Lisp function
6184	created from minibuffer_completion_contents.
6185	(minibuffer_completion_contents): Remove.
6186	(do_completion, Fminibuffer_complete_word)
6187	(Fminibuffer_completion_help): Replace minibuffer_completion_contents
6188	with Fminibuffer_completion_contents.
6189	(syms_of_minibuf): Add Sminibuffer_completion_contents.
6190	(Fdisplay_completion_list): Doc fix.
6191	(display_completion_list_1): Use `nil' for second arg of
6192	`Fdisplay_completion_list'.
6193
61942005-12-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
6195
6196	* xfns.c (compute_tip_xy): Handle negative dx and dy.
6197
6198	* w32fns.c (compute_tip_xy): Ditto.
6199
6200	* macfns.c (compute_tip_xy): Ditto.
6201
62022005-12-14  Chong Yidong  <cyd@stupidchicken.com>
6203
6204	* print.c (print_preprocess): Go to a deeper print_depth to avoid
6205	print_object loop.
6206
62072005-12-14  Kyotaro HORIGUCHI  <horiguti@meadowy.org>  (tiny change)
6208
6209	* coding.c (code_convert_region_unwind): GCPRO arg.
6210
62112005-12-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
6212
6213	* xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
6214	i.e. dy is offset from top of frame instead of bottom.
6215
6216	* macfns.c (compute_tip_xy): Ditto.
6217
6218	* w32fns.c (compute_tip_xy): Ditto.
6219
6220	* gtkutil.c (SSDATA): New macro to remove compiler warnings.
6221	(xg_get_image_for_pixmap, xg_create_frame_widgets)
6222	(xg_get_file_with_chooser): Use SSDATA instead of SDATA.
6223
6224	* xmenu.c (menubar_selection_callback): Do nothing if the callback
6225	is for an unselected radio menu item.
6226
62272005-12-11  Richard M. Stallman  <rms@gnu.org>
6228
6229	* xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
6230
6231	* lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
6232
6233	* keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
6234	(Flookup_key): Doc fix.
6235	(syms_of_keymap) <function-key-map>: Doc fix.
6236
6237	* fns.c (Frequire): Treat evaluating from a source file
6238	like loading the file.
6239
6240	* floatfns.c (Flog): Doc fix.
6241
6242	* fileio.c (Finsert_file_contents): Set Vdeactivate_mark
6243	when we change the buffer.
6244
62452005-12-11  Juri Linkov  <juri@jurta.org>
6246
6247	* minibuf.c (display_completion_list_1):
6248	Call `minibuffer_completion_contents' instead of using `nil' as
6249	second arg of `Fdisplay_completion_list'.
6250	(keys_of_minibuf): Unbind SPC in
6251	Vminibuffer_local_filename_completion_map (see also related
6252	change on 2005-12-06).
6253
62542005-12-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6255
6256	* emacs.c (main) [MAC_OS8]: Undo previous change.
6257
6258	* macselect.c (syms_of_macselect) <mac-apple-event-map>:
6259	Initialize to nil.  Keymap is now created in lisp/term/mac-win.el.
6260
62612005-12-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6262
6263	* Makefile.in (macselect.o): Depend on keymap.h.
6264
6265	* emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
6266	syms_of_macselect.
6267
6268	* image.c (init_image) [MAC_OS]: Don't call EnterMovies.
6269	[!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
6270
6271	* keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
6272	(syms_of_keyboard) [MAC_OS]: Initialize it.
6273	(make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
6274
6275	* mac.c (Qundecoded_file_name): New variable.
6276	(syms_of_mac): Initialize it.
6277	(mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
6278	[TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
6279	(Fmac_coerce_ae_data): New defun.
6280	(syms_of_mac): Defsubr it.
6281
6282	* macselect.c: Include keymap.h.
6283	(mac_ready_for_apple_events): New variable.
6284	(Vmac_apple_event_map, Qmac_apple_event_class)
6285	(Qmac_apple_event_id): New variables.
6286	(syms_of_macselect): Initialize them.
6287	(Qundefined, mac_store_apple_event): Add externs.
6288	(struct apple_event_binding): New struct.
6289	(find_event_binding_fun, find_event_binding)
6290	(mac_find_apple_event_spec, defer_apple_events)
6291	(mac_handle_apple_event, init_apple_event_handler)
6292	(copy_scrap_flavor_data): New functions.
6293	(Fmac_process_deferred_apple_events): New defun.
6294	(syms_of_macselect): Defsubr it.
6295	(mac_store_services_event): Fix extern.
6296	(mac_handle_service_event): Don't allocate Lisp objects during
6297	asynchronous input processing.  Use mac_store_services_event
6298	instead of mac_store_application_menu_event.
6299
6300	* macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
6301	(Qpreferences): Remove variables.
6302	(syms_of_macterm) : Don't initialize them.
6303	(Qhicommand) [USE_CARBON_EVENTS]: New variable.
6304	(syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
6305	(init_required_apple_events, do_ae_open_application)
6306	(do_ae_print_documents, do_ae_open_documents)
6307	(do_ae_quit_application): Remove functions and prototypes.
6308	(mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
6309	(mac_find_apple_event_spec): Add externs.
6310	(mac_store_application_menu_event): Remove function.
6311	(mac_store_apple_event, mac_make_lispy_event_code): New functions.
6312	(mac_handle_command_event): Create Apple event from Carbon event.
6313	Use mac_store_apple_event instead of mac_store_application_menu_event.
6314	[MAC_OSX] (mac_store_services_event): Likewise.
6315	(struct SelectionRange, SelectionRange): Remove struct and typedef.
6316	[MAC_OS8] (main): Call init_apple_event_handler instead of
6317	init_required_apple_events.
6318	(mac_initialize) [MAC_OSX]: Likewise.
6319	[!USE_CARBON_EVENTS] (mac_wait_next_event):
6320	Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
6321
6322	* macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
6323	Add externs.
6324	(create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
6325	(Fmac_get_preference): Add EXFUN.
6326
6327	* termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
6328	event.
6329
63302005-12-09  Richard M. Stallman  <rms@gnu.org>
6331
6332	* xfns.c (Fx_create_frame): Reinstate previous change.
6333
63342005-12-09  Eli Zaretskii  <eliz@gnu.org>
6335
6336	* w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
6337	GDB to the abort dialog.
6338
63392005-12-09  Kyotaro HORIGUCHI  <horiguti@meadowy.org>  (tiny change)
6340
6341	* indent.c (Fvertical_motion): Force move if starting on
6342	stretch glyph.
6343
63442005-12-08  Richard M. Stallman  <rms@gnu.org>
6345
6346	* lread.c (read_escape) <\s>: Don't treat strings specially.
6347
6348	* xfns.c (Fx_create_frame): Comment out previous change.
6349
63502005-12-07  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
6351
6352	* xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
6353	when needed.
6354
63552005-12-06  Stefan Monnier  <monnier@iro.umontreal.ca>
6356
6357	* minibuf.c (keys_of_minibuf): Just unbind SPC in
6358	Vminibuffer_local_filename_completion_map rather than forcing it
6359	explicitly to the same binding as the global map.
6360
63612005-12-06  Ken Raeburn  <raeburn@gnu.org>
6362
6363	* buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
6364	* bytecode.c (Fbyte_code): Likewise.
6365	* fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
6366	* minibuf.c (Fminibuffer_complete_and_exit): Likewise.
6367	* undo.c (truncate_undo_list): Likewise.
6368
63692005-12-05  Richard M. Stallman  <rms@gnu.org>
6370
6371	* window.c (enlarge_window): Eliminate arg preserve_before.
6372	Assume it is 0.  All callers changed.
6373	(Fenlarge_window, Fshrink_window): Likewise.
6374
63752005-12-02  Eli Zaretskii  <eliz@gnu.org>
6376
6377	* w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
6378	fit below.
6379
63802005-12-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
6381
6382	* xterm.h: Add prototype for xg_set_icon_from_xpm_data.
6383
6384	* xfns.c (x_real_positions): int ign => unsigned int.
6385	(xg_set_icon_from_xpm_data): Remove unused variable err.
6386	(x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
6387	to remove compiler warning.
6388	(compute_tip_xy): Put tip above pointer if it doesn't fit below.
6389
63902005-12-02  David Reitter  <david.reitter@gmail.com>
6391
6392	* minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
6393	non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
6394	and Vminibuffer_local_must_match_filename_map keymaps.
6395	(keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
6396
6397	* keymap.c (Vminibuffer_local_filename_completion_map)
6398	(Vminibuffer_local_must_match_filename_map): New variables.
6399	(syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
6400	parent to be Vminibuffer_local_completion_map and
6401	Vminibuffer_local_must_match_map, respectively.
6402
6403	* commands.h (Vminibuffer_local_filename_completion_map)
6404	(Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
6405
64062005-12-01  Stefan Monnier  <monnier@iro.umontreal.ca>
6407
6408	* window.c (Fset_window_configuration): Don't accidentally copy the
6409	window-point of one window to another.
6410
64112005-11-30  L$,1 q(Brentey K,Aa(Broly  <lorentey@elte.hu>
6412
6413	* buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
6414
64152005-11-30  Kim F. Storm  <storm@cua.dk>
6416
6417	* alloc.c: Include fcntl.h.  Define O_WRONLY if not defined.
6418	(valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
6419	passing it to `emacs_write'.
6420
64212005-11-29  Ari Roponen  <arjuropo@cc.jyu.fi>  (tiny change)
6422
6423	* atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
6424
64252005-11-27  Richard M. Stallman  <rms@gnu.org>
6426
6427	* window.c (adjust_window_trailing_edge): New function.
6428	(Fadjust_window_trailing_edge): New function.
6429	(syms_of_window): Defsubr it.
6430	(window_deletion_count): New variable.
6431	(delete_window): Update window_deletion_count.
6432
64332005-11-26  Eli Zaretskii  <eliz@gnu.org>
6434
6435	* minibuf.c (syms_of_minibuf): Mention the extension of
6436	`completion-auto-help's meaning by complete.el.
6437
64382005-11-26  Henrik Enberg  <henrik.enberg@telia.com>
6439
6440	* xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
6441	Handle :inherit property as a lisp expression.
6442
64432005-11-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6444
6445	* macterm.c (Qcontrol): Rename from Qctrl.  All uses changed.
6446	(syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
6447	Qsuper, and Qmodifier_value.
6448	(Vmac_control_modifier, Vmac_option_modifier)
6449	(Vmac_command_modifier, Vmac_function_modifier)
6450	(Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
6451	(Vmac_pass_command_to_system, Vmac_pass_control_to_system)
6452	(Vmac_charset_info_alist): Doc fixes.
6453
64542005-11-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6455
6456	* emacs.c (main) [MAC_OSX]: Change working directory to home
6457	directory if `-psn_*' option is specified.
6458
6459	* mac.c (DECODE_UTF_8): Remove macro.
6460	[TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
6461	created from cfstring_to_lisp.
6462	[TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
6463	(xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
6464
6465	* macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
6466	Add prototype.
6467
64682005-11-21  Ken Raeburn  <raeburn@gnu.org>
6469
6470	* keymap.c (shadow_lookup): Use make_number to pass a number to
6471	Fsubstring.
6472
64732005-11-21  Juri Linkov  <juri@jurta.org>
6474
6475	* puresize.h (BASE_PURESIZE): Increment to 1180000.
6476
64772005-11-20  Chong Yidong  <cyd@stupidchicken.com>
6478
6479	* xfaces.c (Finternal_set_lisp_face_attribute):
6480	Use :ignore-defface for new frame defaults when `unspecified' is
6481	supplied.
6482	(Finternal_get_lisp_face_attribute): Hide :ignore-defface.
6483	(merge_face_vectors): Don't do :ignore-defface overwriting here.
6484	(Finternal_merge_in_global_face): Do it here.
6485
64862005-11-20  Juri Linkov  <juri@jurta.org>
6487
6488	* charset.c (invalid_character): Use Lisp-readable syntax
6489	for octal and hex.  Reorder decimal, octal and hex values.
6490
64912005-11-20  Nick Roberts  <nickrob@snap.net.nz>
6492
6493	* lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
6494	this type is recognised when debugging.
6495
64962005-11-19  Andreas Schwab  <schwab@suse.de>
6497
6498	* .gdbinit (nextcons, xcdr, xfloat): Update for changes in
6499	Lisp_Cons and Lisp_Float.
6500
65012005-11-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6502
6503	* macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
6504	New variable.
6505	[USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
6506	(init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
6507	[USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
6508	font size is smaller than or equal to cg_text_anti_aliasing_threshold.
6509
65102005-11-17  Chong Yidong  <cyd@stupidchicken.com>
6511
6512	* image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
6513
6514	* xfaces.c (Qignore_defface): New variable.
6515	(syms_of_xfaces): Provide `:ignore-defface'.
6516	(IGNORE_DEFFACE_P): New macro.
6517	(check_lface_attrs, lface_fully_specified_p)
6518	(Finternal_set_lisp_face_attribute)
6519	(Fface_attribute_relative_p, Fmerge_face_attribute):
6520	Handle Qignore_defface as a possible value.
6521	(merge_face_vectors): The merged face is `unspecified' if the
6522	mergee specifies `:ignore-defface'.
6523
65242005-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
6525
6526	* lread.c (readevalloop): Add missing GCPROs.
6527
65282005-11-16  Chong Yidong  <cyd@stupidchicken.com>
6529
6530	* xfns.c (xg_set_icon_from_xpm_data): New function.
6531
6532	* gnu.h (gnu_xpm_bits): Rename from gnu_bits.
6533	(gnu_xbm_bits): Rename from gnu_bits (xbm version).
6534
6535	* xterm.c (x_bitmap_icon): Use the xpm if available.
6536
6537	* image.c (x_create_bitmap_from_xpm_data): New function.
6538	(x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
6539
65402005-11-15  Luc Teirlinck  <teirllm@auburn.edu>
6541
6542	* Makefile.in (lisp, shortlisp): Add rfn-eshadow.
6543
65442005-11-16  Nick Roberts  <nickrob@snap.net.nz>
6545
6546	* .gdbinit: Make SIGTSTP work like SIGINT normally does.
6547
65482005-11-15  Andreas Schwab  <schwab@suse.de>
6549
6550	* lisp.h (struct Lisp_Cons): Make cdr a union.
6551	(XCDR_AS_LVALUE): Adjust.
6552	(struct Lisp_Float): Make data a union.
6553	(XFLOAT_DATA): Adjust.
6554
6555	* alloc.c (free_float): Make free list chaining aliasing-safe.
6556	(make_float): Likewise.
6557	(free_cons): Likewise.
6558	(Fcons): Likewise.
6559	(check_cons_list): Likewise.
6560	(Fmake_symbol): Likewise.
6561	(allocate_misc): Likewise.
6562	(free_misc): Likewise.
6563	(gc_sweep): Likewise.
6564
65652005-11-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6566
6567	* mac.c (HASHKEY_QUERY_CACHE): New define.
6568	(xrm_create_database, xrm_q_put_resource): Empty query cache.
6569	(xrm_get_resource): Use query cache.
6570
6571	* image.c (init_image) [MAC_OS]: Don't call EnterMovies if
6572	inhibit_window_system is set.
6573
65742005-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6575
6576	* macgui.h (USE_CG_TEXT_DRAWING): New define.
6577	(struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
6578	and cg_glyphs.
6579
6580	* macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
6581	(x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
6582	(XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
6583	cg_glyphs in struct MacFontStruct if synthesized bold or italic is
6584	not used and font substitution never occurs for ASCII and Latin-1
6585	characters.
6586	(XLoadQueryFont): Maximum and minimum metrics are now those among
6587	ASCII characters.
6588	(XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
6589	height adjustments for Courier, Helvetica, and Times.
6590
6591	* s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
6592
65932005-11-11  David Reitter  <david.reitter@gmail.com>
6594
6595	* macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
6596	macMetaKey, macAltKey.  Introduce Qctrl, Qmeta,
6597	Vmac_control_modifier / mac-control-modifier,
6598	Vmac_option_modifier / mac-option-modifier,
6599	Vmac_command_modifier / mac-command-modifier.
6600	(mac_to_emacs_modifiers): Use the new style modifier
6601	variables.  Return UInt32 (modifiers are longs now.)
6602	(backtranslate_modified_keycode): New function (refactoring).
6603	(XTread_socket): Use new modifier variables and refactored function.
6604	(mac_determine_quit_char_modifiers): Remove macMetaKey (there is
6605	no dedicated meta key.  Not in use anyway.)
6606	(convert_fn_keycode): Map Fn-keys to their original keycode
6607	using a table (english keyboard only).
6608
66092005-11-11  Kim F. Storm  <storm@cua.dk>
6610
6611	* .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
6612	Add post hook to "backtrace" to always dump lisp call stack to
6613	increase chance of people sending it to us when reporting bugs.
6614
6615	* doc.c (Fsubstitute_command_keys): Doc fix.
6616
6617	* dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
6618
6619	* xdisp.c (handle_stop): Skip overlay string handling if
6620	ignore_overlay_strings_at_pos_p is set.
6621	(set_iterator_to_next): At end of display vector, set
6622	ignore_overlay_strings_at_pos_p if dpvec came from an overlay
6623	string, so we skip those overlay strings at current pos.
6624
66252005-11-10  Lars Hansen  <larsh@soem.dk>
6626
6627	* fileio.c (file-regular-p): Doc fix.
6628
66292005-11-10  Kim F. Storm  <storm@cua.dk>
6630
6631	* alloc.c (valid_lisp_object_p): New function to validate that
6632	an object is really a valid Lisp_Object.
6633
6634	* lisp.h (valid_lisp_object_p): Add prototype.
6635
6636	* print.c (safe_debug_print): New function to be called from gdb
6637	to print Lisp objects; use valid_lisp_object_p to avoid crashing
6638	if user tries to print something which is not a Lisp object.
6639
6640	* .gdbinit (pp, pp1): Use safe_debug_print.
6641	(pv, pv1): New commands to print value of a lisp variable.
6642
66432005-11-10  Nick Roberts  <nickrob@snap.net.nz>
6644
6645	* .gdbinit (pp1): New user-defined function.
6646
66472005-11-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6648
6649	* image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
6650
6651	* mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
6652	related variables for dumped executable.
6653
6654	* unexmacosx.c (unexec_write_zero): New function.
6655	(copy_data_segment): Clear uninitialized local variables in
6656	statically linked libraries.
6657
6658	* s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
6659
66602005-11-09  Juri Linkov  <juri@jurta.org>
6661
6662	* keymap.c (shadow_lookup): If Flookup_key returns a number,
6663	call it again with a sub-key-sequence, and if its return value
6664	is non-nil (sub-key is bound), return nil.
6665
66662005-11-08  Kim F. Storm  <storm@cua.dk>
6667
6668	* process.c (Fsignal_process): Recognize signal names with and
6669	without SIG prefix, e.g. SIGHUP and HUP.
6670
6671	* search.c (search_buffer): No need to initialize base_pat.
6672
66732005-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
6674
6675	* window.c (Fget_lru_window, Fget_largest_window, window_loop):
6676	Don't abuse the `mini' arg.  Use the `obj' arg instead.
6677
66782005-11-04  Kim F. Storm  <storm@cua.dk>
6679
6680	* xdisp.c (show_mouse_face): Clear mouse face to eol.
6681
66822005-11-03  Dan Nicolaescu  <dann@ics.uci.edu>
6683
6684	* Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
6685	font-lock.elc and jit-lock.elc.
6686
66872005-11-03  Richard M. Stallman  <rms@gnu.org>
6688
6689	* window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
6690	(enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
6691	(CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
6692
6693	* sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
6694
6695	* alloc.c (refill_memory_reserve): Move decl out of conditionals.
6696
66972005-11-03  Stefan Monnier  <monnier@iro.umontreal.ca>
6698
6699	* window.c (Fdisplay_buffer): Fix last change to not use
6700	a dedicated window.
6701
67022005-11-01  Kim F. Storm  <storm@cua.dk>
6703
6704	* fringe.c (update_window_fringes): Undo 2005-10-27 change.
6705	Instead, rotate the bottom angle bitmap 180 degrees to indicate
6706	that the bottom row does not end in a newline.
6707
67082005-11-01  Andreas Schwab  <schwab@suse.de>
6709
6710	* unexelf.c (unexec): Handle .plt section in BSS segment.
6711
67122005-11-01  Stefan Monnier  <monnier@iro.umontreal.ca>
6713
6714	* lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
6715
6716	* window.c (window_loop): For LRU and LARGEST, let the `mini' argument
6717	determine whether to consider dedicated windows as well.
6718	(Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
6719	(Fdisplay_buffer): Do consider dedicated windows in those cases where
6720	we will split the window rather than reuse it.
6721	Don't try to use windows on other displays.
6722
67232005-10-31  Dan Nicolaescu  <dann@ics.uci.edu>
6724
6725	* puresize.h (BASE_PURESIZE): Increment to 1170000.
6726
67272005-10-31  Romain Francoise  <romain@orebokech.com>
6728
6729	* macfns.c: Update copyright year.
6730	* m/gould.h: Likewise.
6731
67322005-10-30  Kim F. Storm  <storm@cua.dk>
6733
6734	* xdisp.c (display_line): Restore it->current_x and call
6735	extend_face_to_end_of_line when last glyph doesn't fit on line.
6736	(set_glyph_string_background_width): Remove specific tests here
6737	to see if face background should extend to end of line.  Simplify.
6738
67392005-10-30  Richard M. Stallman  <rms@gnu.org>
6740
6741	* alloc.c (BYTES_USED): Use uordblks, not arena.
6742	(bytes_used_when_reconsidered): New variable.
6743	(emacs_blocked_free): Set that.
6744
67452005-10-29  Chong Yidong  <cyd@stupidchicken.com>
6746
6747	* alloc.c (emacs_blocked_free): Fix typo.
6748
67492005-10-29  Richard M. Stallman  <rms@gnu.org>
6750
6751	* data.c (Fmake_variable_frame_local): Doc fix.
6752
6753	* xdisp.c (handle_fontified_prop): Do nothing if memory full.
6754	(format_mode_line_unwind_data): New arg SAVE_PROPTRANS
6755	controls whether to save and restore mode_line_proptrans_alist.
6756	Callers changed.
6757	(unwind_format_mode_line): Work with that feature.
6758	(redisplay_internal): Don't call prepare_menu_bars if memory full.
6759	(move_elt_to_front): New function.
6760	(display_mode_element): Use move_elt_to_front.
6761	Don't bother munging text props on a null string.
6762	Delete obsolete elts from mode_line_proptrans_alist.
6763	(decode_mode_spec): Test Vmemory_full, not spare_memory.
6764	(Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
6765
6766	* lisp.h (memory_full_cons_threshold): Declare.
6767	(internal_lisp_condition_case): Declare.
6768
6769	* alloc.c (syms_of_alloc) <memory-full>: Doc fix.
6770	(Fmemory_full_p): Function deleted.
6771	(syms_of_alloc): Don't defsubr it.
6772	(memory_full_cons_threshold): New variable.
6773	(spare_memory): Now a vector of 7 elts.
6774	(buffer_memory_full): Don't set Vmemory_full here.
6775	(xfree): Don't try to refill here.
6776	(emacs_blocked_free): Record BYTES_USED in local var.
6777	(memory_full): Now free all the slots in spare_memory.
6778	(refill_memory_reserve): Allocate each slot in spare_memory.
6779	(init_alloc_once): Call refill_memory_reserve.
6780
6781	* keyboard.c (command_loop_1): Don't set Vmemory_full here.
6782
6783	* eval.c (internal_lisp_condition_case): New function.
6784	(Fcondition_case): Use internal_lisp_condition_case.
6785	(Feval): Test Vmemory_full and memory_full_cons_threshold.
6786	(Ffuncall): Likewise.
6787
6788	* bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
6789
67902005-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
6791
6792	* syntax.c (Fparse_partial_sexp): Fix docstring.
6793
67942005-10-28  Romain Francoise  <romain@orebokech.com>
6795
6796	* puresize.h (BASE_PURESIZE): Increment to 1130000.
6797
67982005-10-28  Richard M. Stallman  <rms@gnu.org>
6799
6800	* xfns.c (syms_of_xfns): Provide `x' as feature.
6801
6802	* xdisp.c (decode_mode_spec): Define %e to indicate memory full.
6803
6804	* editfns.c (Fformat): Don't include string padding
6805	between info[n].start and info[n].end.
6806
6807	* alloc.c (spare_memory): No longer static.
6808	(xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
6809
6810	* puresize.h (BASE_PURESIZE): Increment to 1120000.
6811
68122005-10-27  Chong Yidong  <cyd@stupidchicken.com>
6813
6814	* data.c (Fmake_variable_frame_local): Add clarification to docstring.
6815
6816	* fringe.c (update_window_fringes): Handle case where buffer ends
6817	with a newline.
6818
68192005-10-27  Kenichi Handa  <handa@m17n.org>
6820
6821	* coding.h (DECODE_SYSTEM): Fix argument name; name->str.
6822
68232005-10-24  Kenichi Handa  <handa@m17n.org>
6824
6825	* charset.h (charset_mule_unicode_0100_24ff)
6826	(charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
6827	Extern them.
6828
6829	* charset.c (charset_mule_unicode_0100_24ff)
6830	(charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
6831	New variables.
6832	(Fsetup_special_charsets): Initialize them.
6833
6834	* xterm.c (handle_one_xevent): Handle keysyms directly mapped to
6835	supported Unicode characters.
6836
68372005-10-25  Jason Rumney  <jasonr@gnu.org>
6838
6839	* w32fns.c (w32_to_x_font): Avoid forcing font widths.
6840
68412005-10-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6842
6843	* image.c [MAC_OS] (image_load_qt_1): Check image size.
6844	Use GraphicsImportGetImageDescription instead of
6845	GraphicsImportGetNaturalBounds.
6846	[MAC_OSX] (image_load_quartz2d): Check image size.
6847	[MAC_OS] (xpm_load_image): Likewise.
6848
6849	* macterm.c (last_mouse_glyph_frame): New var.
6850	(note_mouse_movement): Say mouse moved if current frame differs
6851	from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
6852	(XTmouse_position): Set last_mouse_glyph_frame.
6853	(XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
6854	(mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
6855	Use EndianU16_BtoN.
6856	(mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
6857	(x_per_char_metric, XLoadQueryFont)
6858	[MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
6859	glyph bounds.
6860	(mac_to_x_fontname, mac_do_list_fonts)
6861	(mac_initialize_display_info): Change screen resolutions to 72dpi.
6862
68632005-10-25  Masatake YAMATO  <jet@gyve.org>
6864
6865	* minibuf.c (Fdisplay_completion_list): Small doc fix.
6866
68672005-10-24  Kim F. Storm  <storm@cua.dk>
6868
6869	* xterm.c: Undo 2005-10-23 change.
6870	(last_mouse_glyph_frame): New var.
6871	(note_mouse_movement): Say mouse moved if current frame differs
6872	from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
6873	(XTmouse_position): Set last_mouse_glyph_frame.
6874	(handle_one_xevent): Clear last_mouse_glyph_frame [instead of
6875	last_mouse_glyph] on mouse up/down event.
6876
6877	* editfns.c (Fcompare_buffer_substrings): Fix last change.
6878
68792005-10-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6880
6881	* editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
6882
68832005-10-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
6884
6885	* xterm.c (note_mouse_movement): Always call note_mouse_highlight
6886	so tool tips don't interfere with press on tool bar button.
6887
68882005-10-23  Richard M. Stallman  <rms@gnu.org>
6889
6890	* casetab.c (Fset_case_table): Doc fix.
6891
6892	* lread.c (build_load_history): Replace STREAM arg with ENTIRE.
6893	(readevalloop): Compute ENTIRE properly.
6894	(syms_of_lread) <load-history>: Doc fix.
6895
68962005-10-21  Richard M. Stallman  <rms@gnu.org>
6897
6898	* lread.c (Fload): Simplify gcpro structure.
6899	Gcpro FOUND as well as FILE, but not EFOUND.
6900	Unless preloading, record FOUND instead of FILE in Vload_history.
6901	Rename repeat local FILE to MSG_FILE.
6902	(syms_of_lread) <load-history>: Doc fix.
6903
69042005-10-21  Kenichi Handa  <handa@m17n.org>
6905
6906	* search.c (boyer_moore): Add parens to fix and/or precedence bug.
6907
69082005-10-20  Kim F. Storm  <storm@cua.dk>
6909
6910	* buffer.c (clone_per_buffer_values): Remove unused var tem.
6911	(init_buffer): Remove unused vars dotstat, pwdstat.
6912
6913	* ccl.c (check_ccl_update): Remove unused var vp.
6914
6915	* fileio.c (auto_save_error): Call SAFE_FREE.
6916
6917	* fns.c (Fchar_table_range): Remove unused var i.
6918
6919	* minibuf.c (display_completion_list_1): New wrapper function
6920	for Fdisplay_completion_list.
6921	(Fminibuffer_completion_help): Use it.
6922
6923	* term.c (encode_terminal_code): Remove unused var src_start.
6924
6925	* window.c (Fwindow_tree): Remove unused var alist.
6926
6927	* xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
6928
69292005-10-20  Aubrey Jaffer  <agj@alum.mit.edu>  (tiny change)
6930
6931	* unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
6932
69332005-10-20  Olli Savia  <ops@iki.fi>  (tiny change)
6934
6935	* syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
6936
69372005-10-20  Andreas Schwab  <schwab@suse.de>
6938
6939	* minibuf.c (Fdisplay_completion_list): Doc fix.
6940
69412005-10-19  Kim F. Storm  <storm@cua.dk>
6942
6943	* image.c (check_image_size): Handle integer Vmax_image_size value
6944	directly as max pixel value.  Use default frame size for null frame.
6945	(syms_of_image) <max-image-size>: Describe integer value.
6946
69472005-10-19  Romain Francoise  <romain@orebokech.com>
6948
6949	* emacs.c (main): Update copyright year.
6950
69512005-10-18  Chong Yidong  <cyd@stupidchicken.com>
6952
6953	* image.c (Vmax_image_size): New variable.
6954	(check_image_size): New function.
6955	(xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
6956	(gif_load, gs_load): Use it.
6957	(lookup_image): Try loading again if previous load failed.
6958	(xbm_read_bitmap_data): Add a new argument, a pointer to the frame
6959	to display in, NULL if none.
6960	(xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
6961	argument.
6962
69632005-10-18  Richard M. Stallman  <rms@gnu.org>
6964
6965	* search.c (Fstring_match): Doc fix.
6966
69672005-10-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6968
6969	* macterm.c (note_mouse_movement): Use PtInRect.
6970	(XTread_socket): Also ignore mouse motion just before a button
6971	release event.  Don't process button release event when mouse is
6972	not grabbed.
6973
69742005-10-16  Masatake YAMATO  <jet@gyve.org>
6975
6976	* minibuf.c (Fdisplay_completion_list): Add new optional
6977	argument COMMON_SUBSTRING.  Bind `completion-common-substring'
6978	to the optional argument during running `completion-setup-hook'.
6979
69802005-10-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6981
6982	* mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
6983	Allow nil as argument.
6984	 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
6985	for encoding arguments as UTF-16 in native byte order, no BOM.
6986
6987	* macfns.c (Fx_create_frame): Add debugging code.
6988	(Fx_show_tip): Set frame pixel width and height.
6989
6990	* macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
6991	(FRAME_NORMAL_GC): New macro.
6992	(mac_draw_line, mac_clear_area, mac_clear_window)
6993	(mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
6994	(mac_draw_image_string, mac_draw_image_string_16): Rename from
6995	XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
6996	XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
6997	All uses changed.
6998	(mac_draw_line, mac_erase_rectangle, mac_clear_area)
6999	(mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
7000	(mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
7001	(mac_draw_string_16, mac_draw_image_string)
7002	(mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
7003	(mac_scroll_area): Drawing functions now take frame as destination.
7004	All uses changed.
7005	(mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
7006	(x_draw_fringe_bitmap): Set clipping area in face->gc.
7007
7008	* macterm.h (mac_clear_area): Add extern.
7009
70102005-10-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7011
7012	* macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
7013	changes for xterm.c.
7014
7015	* w32term.c (note_mouse_movement, w32_read_socket): Likewise.
7016
70172005-10-14  Kenichi Handa  <handa@m17n.org>
7018
7019	* search.c (search_buffer): Give up BM search on case-fold-search
7020	if one of a target character has a case-equivalence of different
7021	charset even if that target charcter is an ASCII.
7022
7023	* casefiddle.c (casify_object): Fix for the case that case
7024	conversion change the byte length.
7025
70262005-10-14  Kim F. Storm  <storm@cua.dk>
7027
7028	* xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
7029	(handle_one_xevent): Only clear help_echo_string; restore it if
7030	note_mouse_movement didn't record any mouse movement.
7031
7032	* xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
7033	(remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
7034
7035	* keyboard.c (make_lispy_position): Adjust wx for left margin if
7036	ON_TEXT.
7037	(Fposn_at_x_y): Fix calculation of x coordinate.
7038	(Fposn_at_point): Return nil if point is hscrolled out of view.
7039
70402005-10-13  Andreas Schwab  <schwab@suse.de>
7041
7042	* sysdep.c (request_sigio, unrequest_sigio): Do nothing in
7043	non-interactive mode.
7044
70452005-10-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7046
7047	* xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
7048
70492005-10-12  Kim F. Storm  <storm@cua.dk>
7050
7051	* xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
7052
70532005-10-12  Romain Francoise  <romain@orebokech.com>
7054
7055	* buffer.c (init_buffer): Rename `rc' to `len' for clarity.
7056
70572005-10-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7058
7059	* xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
7060	get end of text rows.  Obtain header-line/mode-line rows directly.
7061
7062	* xterm.c, w32term.c, macterm.c (note_mouse_movement):
7063	Restore help_echo_string if mouse is moved inside last_mouse_glyph.
7064
70652005-10-12  Kim F. Storm  <storm@cua.dk>
7066
7067	* xdisp.c (remember_mouse_glyph): New generic version based on
7068	glyph_rect and remember_mouse_glyph from xterm.c enhanced to
7069	properly handle all different window areas.
7070
7071	* dispextern.h (remember_mouse_glyph): Add prototype.
7072
7073	* xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
7074	(note_mouse_movement, XTmouse_position): Use generic
7075	remember_mouse_glyph, add last_mouse_glyph arg.
7076
7077	* w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
7078	(glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
7079	(note_mouse_movement, w32_mouse_position): Use generic
7080	remember_mouse_glyph, add last_mouse_glyph arg.
7081
7082	* macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
7083	(glyph_rect, remember_mouse_glyph): Remove mac specific versions.
7084	(XTmouse_position): Adapt to use generic remember_mouse_glyph
7085	instead of pixel_to_glyph_coords.
7086
7087	* window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
7088	Fix x position for ON_TEXT when left margin width > 0.
7089
70902005-10-11  Kim F. Storm  <storm@cua.dk>
7091
7092	* window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
7093
7094	* keyboard.c (make_lispy_position): Fix buffer calculations for
7095	mouse click or movement in right fringe and the margins.
7096
70972005-10-11  Juanma Barranquero  <lekktu@gmail.com>
7098
7099	* image.c (fn_jpeg_stdio_src): Don't define it.
7100	(init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
7101	(our_common_init_source): Rename from `our_init_source'.
7102	(our_common_term_source): Rename from `our_term_source'.
7103	(our_memory_fill_input_buffer): Rename from
7104	`our_fill_input_buffer'.
7105	(our_memory_skip_input_data): Rename from `our_skip_input_data'.
7106	(jpeg_memory_src): Use the new names.
7107	(struct jpeg_stdio_mgr): New struct.
7108	(JPEG_STDIO_BUFFER_SIZE): New constant.
7109	(our_stdio_fill_input_buffer, our_stdio_skip_input_data)
7110	(jpeg_file_src): New functions.
7111	(jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
7112
71132005-10-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7114
7115	* macterm.c (PER_CHAR_METRIC): Remove unused macro.
7116	(fm_font_family_alist): New variable.
7117	(syms_of_macterm): Initialize and staticpro it.
7118	(decode_mac_font_name): Replace '-' in family name with '_' if it
7119	occurs just once.  Lower family name.
7120	(parse_x_font_name): Rename from x_font_name_to_mac_font_name.
7121	All uses changed.  Remove argument MF and code conversion for it.
7122	Add argument SIZE.  Rename argument MF_DECODED to FAMILY, and CS
7123	to CHARSET.  Parse font size.  Lower family name.  Return integer
7124	value for status of parsing.
7125	(init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
7126	Don't use Fdowncase because family name is already lowered by
7127	decode_mac_font_name.
7128	(init_font_name_table): Always call decode_mac_font_name.
7129	Add pair of family name and its reference to fm_font_family_alist.
7130	(mac_clear_font_name_table): Clear fm_font_family_alist.
7131	(XLoadQueryFont): Move font size parsing part to parse_x_font_name.
7132	Lookup fm_font_family_alist to get font family reference.
7133	(XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
7134	name is already lowered by parse_x_font_name.
7135
71362005-10-11  Kim F. Storm  <storm@cua.dk>
7137
7138	* xterm.c (glyph_rect): Return 0 if position is outside text area.
7139
7140	* keyboard.c (make_lispy_position): Fix buffer position calculation for
7141	mouse click or movement in fringe.
7142
71432005-10-10  Jason Rumney  <jasonr@gnu.org>
7144
7145	* xterm.c (remember_mouse_glyph): New function.
7146	(note_mouse_movement): Use it to remember the current glyph if changed.
7147	(XTmouse_position): Fix calculation of fake glyph under mouse.
7148	Move code to calculate glyph under mouse into remember_mouse_glyph.
7149
71502005-10-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7151
7152	* emacs.c (USAGE3, standard_args): -nb => -nbi.
7153
71542005-10-10  Juanma Barranquero  <lekktu@gmail.com>
7155
7156	* frame.c (Fredirect_frame_focus): Fix typos in docstring.
7157	(next_frame, prev_frame, set_term_frame_name): Make static.
7158
7159	* window.c (Fwindow_tree): Fix spelling.
7160
71612005-10-09  Romain Francoise  <romain@orebokech.com>
7162
7163	* window.c (Fwindow_end): Don't try to redisplay if non-interactive.
7164
71652005-10-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7166
7167	* emacs.c (standard_args): Remove options -i, -itype, --icon-type.
7168	Add options -nb, --no-bitmap-icon.
7169
7170	* xfns.c (Fx_create_frame): Make bitmapIcon have default on.
7171
71722005-10-08  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7173
7174	* macgui.h (MAX_CLIP_RECTS): New define.
7175	(struct _XGC): New member clip_region.
7176	(struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
7177	clip_rects.
7178
7179	* macterm.c (GC_CLIP_REGION): New macro.
7180	(saved_port_clip_region): New variable.
7181	(mac_begin_clip, mac_end_clip): New functions.
7182	(XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
7183	(mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
7184	(mac_copy_area_with_mask, mac_scroll_area): Use them.
7185	(mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
7186	[USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
7187	[MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
7188	(mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
7189	rectangles stored in gc.
7190	(XFreeGC): Dispose of clipping region.
7191	(mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
7192	(x_draw_fringe_bitmap, x_set_glyph_string_clipping)
7193	(x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
7194	(x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
7195	(x_draw_bar_cursor): Use them.
7196	(x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
7197	get multiple clipping rectangles.
7198
7199	* macterm.h (mac_term_init): Add types to extern.
7200	(struct mac_output): Remove members mWP and pending_menu_activation.
7201	Put members scroll_bar_foreground_pixel and
7202	scroll_bar_background_pixel in #if 0.
7203	(FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
7204
7205	* xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
7206	Add debugging code.
7207
72082005-10-08  Kim F. Storm  <storm@cua.dk>
7209
7210	* window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
7211
72122005-10-07  Kim F. Storm  <storm@cua.dk>
7213
7214	* dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
7215	[!HAVE_WINDOW_SYSTEM]: Don't declare them...
7216	(update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
7217
72182005-10-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7219
7220	* dispextern.h (struct glyph_string): Rename member for_overlaps_p
7221	to for_overlaps.  Now occupy 3 bits.
7222	(OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
7223	(OVERLAPS_ERASED_CURSOR): New defines.
7224	(struct redisplay_interface): Add new OVERLAPS arg to member
7225	fix_overlapping_area.
7226	(x_fix_overlapping_area): Add new OVERLAPS arg.
7227	(get_glyph_string_clip_rects): Add extern.
7228
7229	* dispnew.c (redraw_overlapping_rows):
7230	Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
7231
7232	* xdisp.c: Rename member for_overlaps_p in struct glyph_string to
7233	for_overlaps.
7234	(get_glyph_string_clip_rects): New function created from
7235	get_glyph_string_clip_rect.  Set clipping rectangles according to the
7236	value of for_overlaps.  Enable to store multiple clipping rectangles.
7237	(get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
7238	(fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
7239	Rename argument OVERLAPS_P to OVERLAPS.  All uses in macros changed.
7240	(x_fix_overlapping_area): Add OVERLAPS arg.  Pass it to draw_glyphs.
7241	(draw_phys_cursor_glyph): Set width of erased cursor to use it for
7242	calculating clipping rectangles later.  Call x_fix_overlapping_area
7243	with new OVERLAPS arg to draw only erased cursor area.
7244	(expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
7245	to draw overlaps in both preceding and succeeding rows.
7246
7247	* xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
7248	struct glyph_string to for_overlaps.
7249
72502005-10-04  Richard M. Stallman  <rms@gnu.org>
7251
7252	* alloc.c (refill_memory_reserve): Conditionalize the body,
7253	not the function's existence.
7254
72552005-10-04  Kim F. Storm  <storm@cua.dk>
7256
7257	* window.c (window_split_tree): New function.
7258	(Fwindow_split_tree): New defun.
7259	(syms_of_window): Defsubr it.
7260
72612005-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7262
7263	* macterm.c (mac_invert_rectangle): New function.
7264	(XTflash): Use it.
7265
72662005-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
7267
7268	* regex.h (re_char): Don't expose it in the interface.
7269	(re_set_whitespace_regexp): Adjust the arg's type to not use it.
7270
7271	* regex.c (re_char): Move it back here.
7272	(re_set_whitespace_regexp): Change the arg's type to not use it.
7273
7274	* keyboard.c (make_lispy_event): If point has moved between down and up
7275	event, make it a drag, not a click, to mirror what
7276	mouse-drag-region expects.
7277
72782005-10-02  Dan Nicolaescu  <dann@ics.uci.edu>
7279
7280	* lisp.h (fatal): Undo previous change.
7281	* term.c (fatal): Undo previous change.
7282
72832005-10-01  Richard M. Stallman  <rms@gnu.org>
7284
7285	* xfaces.c (face_color_gray_p): Colors close to black count as gray.
7286
72872005-10-01  Kim F. Storm  <storm@cua.dk>
7288
7289	* xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
7290
72912005-10-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7292
7293	* keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
7294
7295	* macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
7296	(x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
7297	(Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
7298	Try ATSUI-compatible 12pt Monaco font first.
7299
7300	* macgui.h (struct _XCharStruct): New member valid_p.
7301	(STORE_XCHARSTRUCT): Set valid_p.
7302	(struct MacFontStruct) [USE_ATSUI]: New member mac_style.
7303
7304	* macterm.c (mac_draw_string_common, x_per_char_metric)
7305	(mac_compute_glyph_string_overhangs, init_font_name_table)
7306	(XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
7307	(atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
7308	(x_draw_glyph_string_background)
7309	(x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
7310	XDrawImageString.  Always draw background and foreground separately.
7311	(x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
7312	functions for one-byte chars when using ATSUI-compatible fonts.
7313	(atsu_font_id_hash) [USE_ATSUI]: New variable.
7314	(syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
7315	(XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
7316	max_char_or_byte2 more in detail.
7317	(quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
7318
73192005-09-30  Dan Nicolaescu  <dann@ics.uci.edu>
7320
7321	* image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
7322	* xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
7323
7324	* unexelf.c (fatal): Fix prototype.
7325
7326	* term.c (fatal): Implement using varargs.
7327
7328	* regex.c (re_char): Move typedef ...
7329	* regex.h (re_char): ... here.
7330	(re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
7331
7332	* emacs.c (malloc_set_state): Fix return type.
7333	(endif): Fix type.
7334
7335	* lisp.h (fatal): Add argument types.
7336
7337	* dispextern.h (fatal): Delete prototype.
7338
7339	* systime.h (make_time): Prototype moved from ...
7340	* editfns.c (make_time): ... here.
7341
7342	* editfns.c: Move systime.h include after lisp.h.
7343	* dired.c:
7344	* xsmfns.c:
7345	* process.c: Likewise.
7346
7347	* alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
7348	Add parameter types.
7349	(__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
7350	(emacs_blocked_free): Change definition to match __free_hook.
7351	(emacs_blocked_malloc): Change definition to match __malloc_hook.
7352	(emacs_blocked_realloc): Change definition to match __realloc_hook.
7353
73542005-09-30  Romain Francoise  <romain@orebokech.com>
7355
7356	* minibuf.c (Fread_buffer): Follow convention for reading from the
7357	minibuffer with a default value.  Doc fix.
7358
73592005-09-29  Juri Linkov  <juri@jurta.org>
7360
7361	* editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
7362	Rename argument name `string' to `format-string'.
7363	(Fformat): Doc fix.
7364
73652005-09-28  Kim F. Storm  <storm@cua.dk>
7366
7367	* image.c (gif_load): Fix size of allocated image buffer
7368	for images where a sub-image may be larger than the image's
7369	total height/width specifications.
7370
73712005-09-28  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7372
7373	* macgui.h (struct _XCharStruct): Each member now takes short value.
7374
73752005-09-27  Dan Nicolaescu  <dann@ics.uci.edu>
7376
7377	* xfaces.c (lookup_derived_face): Add parameter type.
7378
7379	* xdisp.c (cursor_row_fully_visible_p): Add parameter type.
7380
7381	* marker.c (verify_bytepos): Add parameter type.
7382
7383	* process.c (get_operating_system_release): Move prototype ...
7384
7385	* systime.h (get_operating_system_release): ... here.
7386
7387	* xterm.c (handle_one_xevent): Refer to union field to match the
7388	type required by the function definition.
7389	(set_vertical_scroll_bar): Move prototype ...
7390
7391	* xterm.h: ... here.
7392
7393	* fns.c (internal_equal, seed_random): Fix prototypes.
7394	(internal_equal): Add missing parameter.
7395
73962005-09-25  Richard M. Stallman  <rms@gnu.org>
7397
7398	* keyboard.c (update_menu_bindings): Variable deleted.
7399	(syms_of_keyboard): Don't defvar it.
7400	(parse_menu_item): Don't test it.
7401
74022005-09-23  Richard M. Stallman  <rms@gnu.org>
7403
7404	* editfns.c (Fformat): Explicitly test for end of format string
7405	and don't use `index'.
7406
74072005-09-23  Dan Nicolaescu  <dann@ics.uci.edu>
7408
7409	* s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
7410	Define BROKEN_GET_CURRENT_DIR_NAME.
7411
7412	* sysdep.c (get_current_dir_name): Also define if
7413	BROKEN_GET_CURRENT_DIR_NAME.
7414
7415	* m/ibmrs6000.h: Test for USG5, not USG5_4.
7416
74172005-09-22  Kim F. Storm  <storm@cua.dk>
7418
7419	* xdisp.c (message_dolog): Add warning about GC and Lisp strings.
7420	(message2): Fix commentary.  Ok to use alloca'ed memory.
7421	Still not ok to use Lisp string data (because of GC).
7422	(set_message): Add comment why GC cannot happen.
7423
74242005-09-22  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7425
7426	* macterm.c (xlfdpat_block_match_1): Fix assertion.
7427	(init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
7428	variants for a scalable font multiple times.
7429
74302005-09-21  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7431
7432	* process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
7433	Setup slave tty options before forking.
7434
74352005-09-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7436
7437	* gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
7438	positions have been set for the frame (as is done for frames in
7439	special-display-buffer-names).
7440
74412005-09-19  Kim F. Storm  <storm@cua.dk>
7442
7443	* editfns.c (Fformat): Don't scan past end of format string that
7444	ends in %.  Reported by: Johan Bockg,Ae(Brd.
7445
74462005-09-18  Andreas Schwab  <schwab@suse.de>
7447
7448	* window.h (struct window): Remove height_fixed_p, no longer set.
7449
7450	* window.c (make_window): Don't initialize height_fixed_p.
7451	(window_fixed_size_p): Don't use it.
7452
74532005-09-18  John Paul Wallington  <jpw@pobox.com>
7454
7455	* data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
7456
74572005-09-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7458
7459	* Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
7460
7461	* macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
7462	New variables.
7463	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
7464	file selection.
7465
7466	* sysdep.c [MAC_OS8]: Don't include stdlib.h.  Include sys/param.h.
7467
74682005-09-17  Eli Zaretskii  <eliz@gnu.org>
7469
7470	* Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
7471	(obj): Use XMENU_OBJ, not a literal xmenu.o.
7472
74732005-09-16  Romain Francoise  <romain@orebokech.com>
7474
7475	* fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
7476
74772005-09-15  Richard M. Stallman  <rms@gnu.org>
7478
7479	* xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
7480	(display_mode_element): Instead of `lisp_string' and `this',
7481	record `offset' and increment that.
7482	`last_offset' replaces `last'.
7483
7484	* Makefile.in (XMENU_OBJ): Variable deleted.
7485	(obj): Use xmenu.o unconditionally.
7486	(SOME_MACHINE_OBJECTS): Delete xmenu.o.
7487
7488	* emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
7489
74902005-09-15  Kim F. Storm  <storm@cua.dk>
7491
7492	* xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
7493	(reseat_at_next_visible_line_start): Likewise (in xassert).
7494
74952005-09-14  Romain Francoise  <romain@orebokech.com>
7496
7497	* fileio.c (write_region_inhibit_fsync): New variable.
7498	(Fwrite_region): Use it to skip call to fsync.
7499	(syms_of_fileio): Initialize it.
7500
75012005-09-14  Kenichi Handa  <handa@m17n.org>
7502
7503	* coding.c (code_convert_region_unwind): Argument format changed.
7504	(run_pre_post_conversion_on_str): If pre-write-conversion function
7505	changed the current buffer, delete the new buffer.
7506	(run_pre_write_conversin_on_c_str): Likewise.
7507
7508	* fileio.c (Fexpand_file_name): Check multibyteness of
7509	default_directory.
7510
75112005-09-13  Kenichi Handa  <handa@m17n.org>
7512
7513	* composite.c (compose_chars_in_text): Delete it.
7514
7515	* composite.h (compose_chars_in_text): Delete extern.
7516
75172005-09-13  Kim F. Storm  <storm@cua.dk>
7518
7519	* print.c (print_error_message): Fix last change.
7520
75212005-09-12  Kim F. Storm  <storm@cua.dk>
7522
7523	* composite.c (compose_chars_in_text): Fix setup of `pend'.
7524	Unconditionally reload `ptr' and `pend' after eval.
7525
7526	* xdisp.c (message3): Pass copy of lisp string to message_dolog.
7527
7528	* print.c (print_error_message): Pass copy of caller name to
7529	message_dolog.
7530
7531	* fileio.c (auto_save_error): Pass copy of lisp string to message2.
7532
75332005-09-12  Kenichi Handa  <handa@m17n.org>
7534
7535	* xdisp.c (display_mode_element): Be sure to make variables THIS
7536	and LISP_STRING point into a string data of ELT.
7537
75382005-09-12  Kim F. Storm  <storm@cua.dk>
7539
7540	* editfns.c (Ftranslate_region_internal): Reload `tt' after
7541	signal_after_change that may have GC'ed.
7542	(Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
7543
7544	* keymap.c (Fdescribe_buffer_bindings): Reload `translate'
7545	after insert while runs signal_after_change.
7546
7547	* minibuf.c (Fminibuffer_complete_word): Move `completion_string'
7548	declaration to where it is used.
7549
7550	* w32.c (check_windows_init_file): Fix allocation of error buffer.
7551
7552	* xfns.c (x_encode_text): Declare static.  Add FREEP arg.
7553	(x_set_name_internal): Call x_encode_text with new FREEP arg to
7554	know if xfree is needed instead of guessing.
7555
7556	* xterm.h (x_encode_text): Remove prototype.
7557
75582005-09-11  Chris Prince  <cprince@gmail.com>  (tiny change)
7559
7560	* w32term.c (x_bitmap_icon): Load small icons too.
7561
75622005-09-10  Romain Francoise  <romain@orebokech.com>
7563
7564	* buffer.c (init_buffer): Grow buffer to add directory separator
7565	and terminal zero.  Fix typos.
7566
75672005-09-10  Eli Zaretskii  <eliz@gnu.org>
7568
7569	* buffer.c (init_buffer): Fix error message for failed call to
7570	get_current_dir_name.
7571	(get_current_dir_name): Remove prototype.
7572
7573	* xsmfns.c (get_current_dir_name): Remove prototype.
7574
7575	* lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
7576	Add prototype.
7577
7578	* sysdep.c [WINDOWSNT]: Add prototype for getwd.
7579	Don't #undef NULL after including blockinput.h.
7580
7581	* config.in: Regenerated.
7582
75832005-09-10  Giuseppe Scrivano  <gscrivano@gmail.com>
7584
7585	Remove the MAXPATHLEN limitations:
7586
7587	* sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
7588	New function.
7589
7590	* buffer.c (init_buffer): Use it.
7591
7592	* xsmfns.c (smc_save_yourself_CB): Ditto.
7593
75942005-09-09  Kim F. Storm  <storm@cua.dk>
7595
7596	* doc.c (Fsubstitute_command_keys): Lookup key binding for
7597	commands that are remapped from some other command.
7598
7599	* xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
7600	flag in disabled rows below the window.
7601
7602	* frame.h (struct frame): New member updated_p.
7603
7604	* xdisp.c (redisplay_internal): Mark updated frames in new updated_p
7605	member.  Remove local `updated' array and associated variables.
7606
76072005-09-07  Kim F. Storm  <storm@cua.dk>
7608
7609	* xdisp.c (handle_display_prop): Respect overlay window property.
7610
7611	* xdisp.c (try_window): Remove superfluous cursor_height calculation.
7612	Fixes crash reported by YAMAMOTO Mitsuharu.
7613
76142005-09-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7615
7616	* macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
7617	(xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
7618	(xlfdpat_block_match_1, xlfdpat_match): New functions.
7619	(xlfdpat_block_match): New macro.
7620	(mac_to_x_fontname): Don't use tolower for non-ASCII characters.
7621	(x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
7622	(add_font_name_table_entry): Increase font_name_table_size more
7623	rapidly.
7624	(mac_c_string_match): Remove function.
7625	(mac_do_list_fonts): Use XLFD pattern match instead of regular
7626	expression match.
7627
7628	* xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
7629
76302005-09-03  Richard M. Stallman  <rms@gnu.org>
7631
7632	* xdisp.c (redisplay_internal): Make UPDATED as long as needed.
7633	(move_it_in_display_line_to): Stop after last char on line even
7634	on a windowing terminal, if that's the specified stop position.
7635
7636	* fns.c (Fsort): Doc fix.
7637
7638	* editfns.c (Fpropertize): Don't insist that properties be symbols.
7639
76402005-09-02  Stefan Monnier  <monnier@iro.umontreal.ca>
7641
7642	* dired.c (directory_files_internal_unwind, directory_files_internal)
7643	(file_name_completion): Use a Save_Value object rather than a cons of
7644	two 16bit ints to store the DIR*.
7645	(directory_files_internal, file_name_completion): Handle both EINTR and
7646	EAGAIN consistently after `readdir'.
7647
76482005-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
7649
7650	* intervals.c (update_interval): Add position info in error.
7651
7652	* dispnew.c (window_to_frame_hpos, update_window):
7653	Avoid gcc warning about unused variable `f'.
7654
76552005-08-31  Jason Rumney  <jasonr@gnu.org>
7656
7657	* w32menu.c (add_menu_item): If unicode_append_menu returns an
7658	error, revert to using AppendMenu.
7659
76602005-08-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7661
7662	* image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
7663	All uses changed.
7664	[MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
7665	cases.
7666	(x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
7667	[MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
7668	Use posix_pathname_to_fsspec.
7669	[MAC_OS] (xpm_load_image): Fill in background_transparent field
7670	while we have mask.
7671
7672	* macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
7673
7674	* macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
7675
76762005-08-29  Stefan Monnier  <monnier@iro.umontreal.ca>
7677
7678	* syntax.c (update_syntax_table): Properly reproduce the special +1
7679	setting of e_property at the end of the buffer when bumping into the
7680	INTERVALS_AT_ONCE limit.
7681
76822005-08-27  Eli Zaretskii  <eliz@gnu.org>
7683
7684	* emacs.c (USAGE1): Fix the description of the -Q option.
7685
76862005-08-26  Stefan Monnier  <monnier@iro.umontreal.ca>
7687
7688	* xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
7689
76902005-08-26  Kim F. Storm  <storm@cua.dk>
7691
7692	* xdisp.c (resize_mini_window): Fix 2005-08-20 change.
7693	Don't move PT to new window start.
7694
76952005-08-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7696
7697	* keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
7698	ICONIFY/DEICONIFY_EVENT.
7699
7700	* macterm.c (mac_copy_area, mac_copy_area_with_mask):
7701	Restore background color.
7702	(mac_handle_visibility_change): New function.
7703	(x_make_frame_invisible, x_iconify_frame)
7704	(XTread_socket) [!USE_CARBON_EVENTS]: Use it.
7705	[USE_CARBON_EVENTS] (mac_handle_window_event)
7706	(install_window_handler): Handle visibility change events.
7707	(x_make_frame_visible): Don't reposition window if it is iconified
7708	or asked for visible before.  Select and uncollapse window when it
7709	is made visible.
7710	(x_make_frame_invisible): Don't reset x_highlight_frame.
7711	(x_iconify_frame): Likewise.  Make invisible frame visible before
7712	it is iconified.
7713	(read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
7714	(do_window_update): Don't change visibility of invisible frame.
7715
77162005-08-22  Juri Linkov  <juri@jurta.org>
7717
7718	* term.c (turn_on_face): Check for TS_set_foreground and
7719	TS_set_background depending on standout_mode.  Simplify.
7720
77212005-08-21  Kim F. Storm  <storm@cua.dk>
7722
7723	* fringe.c (update_window_fringes): Only put TOP and BOTTOM
7724	bitmaps on fully visible rows.
7725
7726	* fringe.c (update_window_fringes): Replace FORCE_P arg with
7727	KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
7728	and return 0.
7729
7730	* xdisp.c (redisplay_window): Call update_window_fringes with
7731	KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
7732
77332005-08-20  Richard M. Stallman  <rms@gnu.org>
7734
7735	* xdisp.c (display_echo_area_1): Get display start pos from w->start.
7736	(resize_mini_window): Set w->start, and PT, so as to display the tail
7737	end of the buffer, if it doesn't all fit.
7738
77392005-08-18  Kim F. Storm  <storm@cua.dk>
7740
7741	* xdisp.c (calc_pixel_width_or_height): Use actual display
7742	resolution when available instead of Vdisplay_pixels_per_inch.
7743
77442005-08-17  Kim F. Storm  <storm@cua.dk>
7745
7746	* xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
7747
7748	* dispnew.c (buffer_posn_from_coords): Check that target row is
7749	within matrix.
7750
77512005-08-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7752
7753	* xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
7754	xg_set_frame_icon and call it.
7755
7756	* gtkutil.c (xg_set_frame_icon): New function.
7757
7758	* gtkutil.h (xg_set_frame_icon): Declare it.
7759
77602005-08-16  Kim F. Storm  <storm@cua.dk>
7761
7762	* dispnew.c (increment_row_positions): Skip non-enabled rows.
7763
7764	* window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
7765	(Fcurrent_window_configuration): Use VECSIZE macro instead.
7766
77672005-08-15  Richard M. Stallman  <rms@gnu.org>
7768
7769	* xdisp.c (message3_nolog): Clear echo_message_buffer.
7770
77712005-08-15  Kim F. Storm  <storm@cua.dk>
7772
7773	* lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
7774
7775	* process.c (deactivate_process, status_notify, read_process_output)
7776	(update_status, status_convert, decode_status, allocate_pty)
7777	(make_process, remove_process, list_processes_1)
7778	(create_process_1, unwind_request_sigio, read_process_output)
7779	(send_process, keyboard_bit_set): Declare static.
7780	(Fdelete_process): Simplify.  Pass process to status_notify, so we
7781	don't try to read output from it.
7782	(status_notify): New arg deleting_process--don't try to read
7783	output from that process.
7784
7785	* lisp.h (deactivate_process, status_notify, read_process_output):
7786	Remove prototypes.
7787
77882005-08-14  Richard M. Stallman  <rms@gnu.org>
7789
7790	* image.c (syms_of_image): Init Qxbm, Qpbm before calling
7791	define_image_type.
7792
77932005-08-13  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7794
7795	* gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
7796	(xg_get_image_for_pixmap): Move some code to
7797	xg_get_pixbuf_from_pix_and_mask, and call it.
7798
7799	* gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
7800
7801	* xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
7802	to get an GTK icon and set it with GTK functions to avoid having GTK
7803	override an icon set with just X functions.
7804
78052005-08-11  Richard M. Stallman  <rms@gnu.org>
7806
7807	* image.c (syms_of_image): Init image_types here, and call
7808	define_image_type.
7809	(init_image): Not here.
7810
78112005-08-09  Richard M. Stallman  <rms@gnu.org>
7812
7813	* bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
7814
7815	* lisp.h (QUIT): Throw t to Vthrow_on_input.
7816
78172005-08-09  Thien-Thi Nguyen  <ttn@gnu.org>
7818
7819	* floatfns.c (Fexpt): Use floats for negative exponent.
7820
78212005-08-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
7822
7823	* gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
7824	should not be there, causing menu display errors with GTK 2.6.9.
7825
78262005-08-07  Richard M. Stallman  <rms@gnu.org>
7827
7828	* floatfns.c (Fexpt): Undo previous change.
7829
7830	* dispnew.c (Fframe_or_buffer_changed_p): Take an arg
7831	so it can be used with various state vectors.
7832
7833	* emacs.c (endif): Convert -script into -scriptload.
7834	(standard_args): Add -scriptload.  Allow -basic-display with one dash.
7835
7836	* fns.c (syms_of_fns): Add `emacs' to features.
7837
7838	* term.c (set_terminal_modes): If no TS_termcap_modes string,
7839	output newlines to scroll the old screen contents off the screen.
7840
78412005-08-06  Thien-Thi Nguyen  <ttn@gnu.org>
7842
7843	* floatfns.c (Fexpt): Use floats for negative exponent.
7844	Reported by D Goel.
7845
78462005-08-02  Richard M. Stallman  <rms@gnu.org>
7847
7848	* frame.c (Fframe_char_width): Doc fix.
7849
78502005-07-30  Juanma Barranquero  <lekktu@gmail.com>
7851
7852	* xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
7853	Defvar it.
7854
78552005-07-28  Juanma Barranquero  <lekktu@gmail.com>
7856
7857	* w32fns.c (my_set_window_pos, my_show_window): Don't declare.
7858	(my_create_window, my_create_tip_window): Make static.
7859
7860	* w32term.c (my_show_window, my_set_window_pos, my_set_focus)
7861	(my_set_foreground_window, my_destroy_window): Make static.
7862
78632005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
7864
7865	Merge gnulib getopt implementation into Emacs.
7866
7867	* s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
7868	now part of lib-src.
7869
78702005-07-26  Stefan Monnier  <monnier@iro.umontreal.ca>
7871
7872	* eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
7873
78742005-07-25  Jason Rumney  <jasonr@gnu.org>
7875
7876	* w32menu.c (w32_menu_display_help): Suppress tooltip when
7877	navigating menus with the keyboard.
7878
78792005-07-23  Richard M. Stallman  <rms@gnu.org>
7880
7881	* insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
7882
7883	* bytecode.c (MAYBE_GC): Test gc_cons_threshold and
7884	gc_relative_threshold, one by one.
7885
7886	* keyboard.c (read_char): Test gc_cons_threshold.
7887	(syms_of_keyboard): staticpro Qecho_area_clear_hook.
7888
7889	* eval.c (Feval, Ffuncall): Test gc_cons_threshold and
7890	gc_relative_threshold, one by one.
7891
7892	* alloc.c (gc_cons_threshold): Not static.
7893	(gc_cons_combined_threshold): Var deleted.
7894	(gc_relative_threshold): New variable.
7895	(Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
7896	instead of gc_cons_combined_threshold.
7897
7898	* lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
7899	(gc_cons_combined_threshold): Declaration deleted.
7900
79012005-07-23  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
7902
7903	* mac.c: Don't include stdlib.h or string.h.
7904	(Fdo_applescript, Fmac_file_name_to_posix)
7905	(Fmac_file_name_to_posix): Doc fixes.
7906	[TARGET_API_MAC_CARBON] (Fmac_get_preference)
7907	(Fmac_code_convert_string): Likewise.
7908	[MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
7909	if the executable is not contained in a bundle.
7910
7911	* macfns.c: Don't include stdlib.h or string.h.  Include atimer.h.
7912	(gray_width, gray_height): Remove defines.
7913	(gray_bits, gray_bitmap_width, gray_bitmap_height)
7914	(gray_bitmap_bits): Remove variables.
7915	(lispy_function_keys): Remove extern.
7916	(free_frame_menubar): Add extern.
7917	(x_window_to_frame): Remove function.
7918	(unwind_create_tip_frame): Add declaration.
7919	(x_set_name_internal): New function.
7920	(x_set_name, x_set_title): Use it.
7921	(Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
7922	(Fx_display_pixel_height, Fx_display_planes)
7923	(Fx_display_color_cells, Fx_server_max_request_size)
7924	(Fx_server_vendor, Fx_server_version, Fx_display_screens)
7925	(Fx_display_mm_height, Fx_display_mm_width)
7926	(Fx_display_backing_store, Fx_display_visual_class)
7927	(Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
7928
7929	* macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
7930
7931	* macselect.c (Fx_own_selection_internal): Follow error conventions.
7932	(Fx_get_selection_internal, Fx_selection_owner_p)
7933	(Fx_selection_exists_p): Doc fixes.
7934	(syms_of_macselect) <selection-converter-alist>: Likewise.
7935
79362005-07-21  Juanma Barranquero  <lekktu@gmail.com>
7937
7938	* buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
7939
7940	* ccl.c (Fregister_ccl_program): Fix typos in docstring.
7941	(Fccl_execute_on_string): Likewise; add usage info.
7942
7943	* composite.c (Fcompose_region_internal)
7944	(Fcompose_string_internal):
7945	Improve argument/docstring consistency.
7946
7947	* minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
7948	Fix typos in docstrings.
7949
7950	* textprop.c (Fnext_char_property_change)
7951	(Fprevious_char_property_change): Doc fixes.
7952
7953	* window.c (Fset_window_margins, Fset_window_fringes):
7954	Improve argument/docstring consistency.
7955
7956	* xfaces.c (Finternal_lisp_face_p): Doc fix.
7957
79582005-07-21  Andreas Schwab  <schwab@suse.de>
7959
7960	* eval.c (restore_stack_limits): Return a value.
7961
79622005-07-20  Juanma Barranquero  <lekktu@gmail.com>
7963
7964	* eval.c (Fdefvar): Doc fix.
7965
79662005-07-20  Kim F. Storm  <storm@cua.dk>
7967
7968	* fileio.c (Fdo_auto_save, do_auto_save_unwind):
7969	Use make_save_value to unwind protect stream.
7970
7971	* lread.c (Fload, load_unwind):
7972	Use make_save_value to unwind protect stream.
7973
79742005-07-19  Juanma Barranquero  <lekktu@gmail.com>
7975
7976	* eval.c (Fprog2, Fcalled_interactively_p),
7977	(syms_of_eval) <debug-on-quit>: Doc fixes.
7978	(syms_of_eval) <max-specpdl-size>:
7979	(Finteractive_p): Fix typos in docstrings.
7980
79812005-07-19  Kim F. Storm  <storm@cua.dk>
7982
7983	* w32fns.c (Vx_hand_shape): Variable removed.
7984	(syms_of_w32fns): Intern and staticpro Qw32_charset_default.
7985
79862005-07-19  Kenichi Handa  <handa@m17n.org>
7987
7988	* fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
7989
79902005-07-18  Stefan Monnier  <monnier@iro.umontreal.ca>
7991
7992	* buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
7993
79942005-07-18  Kim F. Storm  <storm@cua.dk>
7995
7996	* frame.h (struct frame): New member already_hscrolled_p.
7997
7998	* xdisp.c (redisplay_internal): Only try to hscroll each frame once
7999	to avoid redisplay looping hscrolling back and forth ad infinitum.
8000
80012005-07-18  Juri Linkov  <juri@jurta.org>
8002
8003	* buffer.c (scroll-up-aggressively, scroll-down-aggressively):
8004	* keymap.c (Fminor_mode_key_binding):
8005	* macterm.c (mac-emulate-three-button-mouse):
8006	Delete duplicate duplicate words.
8007
80082005-07-18  Ken Raeburn  <raeburn@gnu.org>
8009
8010	* minibuf.c (Ftest_completion): Fix odd syntax in test.
8011
80122005-07-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8013
8014	* macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
8015
8016	* macgui.h (struct _XGC): New struct.
8017	(GC): Use it.
8018	(GCForeground, GCBackground, GCFont): Use X11 mask values.
8019	(XCreateGC, XParseGeometry): Move externs to macterm.h.
8020
8021	* macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
8022	(XSetFont): Add declaration.
8023	(mac_set_forecolor, mac_set_backcolor, mac_set_colors):
8024	Remove functions.
8025	(GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
8026	New defines.
8027	(XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
8028	(mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
8029	(mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
8030	Use them.
8031	(mac_erase_rectangle): New function.
8032	(XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
8033	(x_draw_stretch_glyph_string): Use it.
8034	(XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
8035	(XSetBackground, XSetFont): Adjust for new GC implementation.
8036	(x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
8037	(XTset_vertical_scroll_bar): Clear area under scroll bar.
8038
8039	* macterm.h (struct mac_display_info): Change types of
8040	scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
8041	(XCreateGC, XParseGeometry): Move externs from macgui.h.
8042
8043	* xfaces.c [MAC_OS] (XCreateGC): Remove extern.
8044
80452005-07-16  Richard M. Stallman  <rms@gnu.org>
8046
8047	* buffer.c (Fmake_overlay): Doc fix.
8048
80492005-07-16  Eli Zaretskii  <eliz@gnu.org>
8050
8051	* w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
8052	Vw32_valid_locale_ids, and Vw32_valid_codepages.
8053
80542005-07-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8055
8056	* mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
8057	Use Fstring_as_unibyte instead of string_make_unibyte.
8058
80592005-07-15  Richard M. Stallman  <rms@gnu.org>
8060
8061	* xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
8062
80632005-07-15  Kim F. Storm  <storm@cua.dk>
8064
8065	* xdisp.c: Fix redisplay loop in last change.
8066	(IT_POS_VALID_AFTER_MOVE_P): New macro.
8067	(move_it_vertically_backward, move_it_by_lines): Use it.
8068
80692005-07-14  Jason Rumney  <jasonr@gnu.org>
8070
8071	* w32.c (init_environment): Default HOME directory to user's
8072	appdata directory if possible.
8073
80742005-07-14  Kim F. Storm  <storm@cua.dk>
8075
8076	* .gdbinit (pitx): Fix output format.  Print string charpos.
8077
8078	* lread.c (syms_of_lread): Initialize seen_list.
8079
8080	* search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
8081
8082	* syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
8083	Staticpro re_match_object.
8084
80852005-07-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8086
8087	* macselect.c (get_scrap_target_type_list): Avoid NULL pointer
8088	dereference.
8089
8090	* macterm.c (mac_window_to_frame): Remove duplicate define.
8091
80922005-07-14  Kenichi Handa  <handa@m17n.org>
8093
8094	* coding.c (code_convert_region_unwind): ARG is changed to a cons.
8095	(code_convert_region): Adjust for the above change.
8096	(set_conversion_work_buffer): If the work buffer is already in
8097	use, generate a new buffer and return it.  Otherwise return Qnil.
8098	(run_pre_post_conversion_on_str): Adjust for the above change.
8099	(run_pre_write_conversin_on_c_str): Likewise.
8100
81012005-07-13  Kim F. Storm  <storm@cua.dk>
8102
8103	* xdisp.c (start_display): Don't reseat to next visible line start
8104	if current start position is in a string or image.
8105	(move_it_vertically_backward): Be sure to move out of strings and
8106	images when moving it2 forward.
8107	(move_it_by_lines): When moving forward, move to next buffer
8108	position if we end up in a string or image.  When moving backward,
8109	count rows moved over when moving to start of current row in case
8110	row starts in middle of a string or image.  Also move further
8111	backward if we end up in a string or image.
8112	(try_cursor_movement): If overlay string spans multiple lines,
8113	move backward to set cursor on start of an overlay string.
8114	(cursor_row_p): Row is ok if cursor is at newline from string, but
8115	string starts on this line (so we always position cursor at start
8116	of string).
8117
8118	* indent.c (Fvertical_motion): If start position is on an image,
8119	don't move back if we move too far (that's almost certain to happen).
8120
8121	* xdisp.c (cursor_row_fully_visible_p): Allow partially visible
8122	row in minibuffer windows.
8123	(try_window): Don't check margins in minibuffer windows.
8124
81252005-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8126
8127	* macterm.c: Don't include stdlib.h or composite.h.
8128	(x_use_underline_position_properties, last_mouse_press_frame)
8129	(x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
8130	(syms_of_macterm, mac_initialize): Don't initialize them.
8131	(waiting_for_input, initial_argv, initial_argc)
8132	(Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
8133	(set_frame_menubar, path_from_vol_dir_name): Remove externs.
8134	(extra_keyboard_modifiers): Fix type in extern.
8135	(x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
8136	(x_scroll_bar_report_motion): Add argument types to declaration.
8137	(mac_compute_glyph_string_overhangs): Add declaration.
8138	(disable_mouse_highlight): Remove unused variable.
8139	[USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
8140	(x_scroll_bar_handle_press, x_scroll_bar_handle_release)
8141	(x_scroll_bar_handle_drag): Remove argument `timestamp'.
8142	All callers changed.
8143	[USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
8144	timestamp.
8145	[USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
8146	(x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
8147	only when its width is less than the height.
8148	(XTredeem_scroll_bar): Sync with xterm.c.
8149	(font_name_table, font_name_table_size, font_name_count):
8150	Make static.
8151	(drag_and_drop_file_list): Remove variable.  Previous use is now
8152	local to function.
8153	(do_ae_open_documents): Move DRAG_N_DROP event construction part
8154	from XTread_socket.
8155	(XTread_socket): Consolidate setting of event timestamp.
8156	Move DRAG_N_DROP event construction part to do_ae_open_documents.
8157	Support extra_keyboard_modifiers.
8158
8159	* xfaces.c (try_font_list) [MAC_OS]: Try font family name
8160	beginning with that for ASCII.
8161
81622005-07-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8163
8164	* alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
8165	(Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
8166	(syms_of_alloc): Declare gc-cons-percentage.
8167
8168	* eval.c (Feval, Ffuncall):
8169	* keyboard.c (read_char):
8170	* bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
8171
8172	* lisp.h (gc_cons_combined_threshold): Declare.
8173
81742005-07-12  Kim F. Storm  <storm@cua.dk>
8175
8176	* coding.c (Qprocess_argument):
8177	* coding.h (Qprocess_argument): Remove unused var.
8178
8179	* xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
8180
81812005-07-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8182
8183	* mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
8184	Endian.h.
8185	[!MAC_OSX] (fchmod, fchown): New functions.
8186	(mac_get_code_from_arg): Don't accept Lisp integer as argument.
8187	Use SBYTES and EndianU32_BtoN.
8188	(mac_get_object_from_code): Return 4 byte string even if argument
8189	is 0.  Use make_unibyte_string and EndianU32_NtoB.
8190	(Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
8191	(Fmac_set_file_type): Fix documents and argument declarations.
8192	Don't specify kFSCatInfoNodeFlags.  Support Mac OS Classic.
8193
81942005-07-11  Stefan Monnier  <monnier@iro.umontreal.ca>
8195
8196	* window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
8197
81982005-07-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
8199
8200	* xfaces.c (x_update_menu_appearance): Use fontSet resource for
8201	Lucid if X_I18N, font otherwise.
8202
82032005-07-10  Steven Tamm  <steventamm@mac.com>
8204
8205	* mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
8206	(Fmac_set_file_type, Fmac_set_file_creator): Add.
8207	(mac_get_object_from_code, mac_get_code_from_arg): Add.
8208
82092005-07-10  Richard M. Stallman  <rms@gnu.org>
8210
8211	* lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
8212	(syms_of_lread): Set up eval-buffer-list.
8213	(Feval_buffer, Feval_region): Bind eval-buffer-list.
8214
82152005-07-08  Richard M. Stallman  <rms@gnu.org>
8216
8217	* eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
8218
82192005-07-08  Kim F. Storm  <storm@cua.dk>
8220
8221	* keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
8222	(syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
8223
82242005-07-07  Kim F. Storm  <storm@cua.dk>
8225
8226	* window.c (Frecenter): Fix last change (set iarg before use).
8227
82282005-07-06  Richard M. Stallman  <rms@gnu.org>
8229
8230	* window.c (Frecenter): When arg is inside the scroll margin,
8231	move it out of the margin.
8232
82332005-07-06  Jason Rumney  <jasonr@gnu.org>
8234
8235	* w32console.c (initialize_w32_display): Detect when the console
8236	dimensions are insane, and default to 80x25 instead.
8237	(w32_use_full_screen_buffer): Default to nil.
8238
82392005-07-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8240
8241	* macterm.c (mac_draw_vertical_window_border): Use foreground of
8242	VERTICAL_BORDER_FACE_ID for vertical border line.
8243	(mac_encode_char): Call check_ccl_update in advance.
8244	(mac_to_x_fontname, x_font_name_to_mac_font_name)
8245	(init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
8246	Don't assume that font family length is less than 32.
8247	(x_compute_min_glyph_bounds): Make static.
8248	(x_load_font): Never set fonts_changed_p to zero.
8249
82502005-07-04  Lute Kamstra  <lute@gnu.org>
8251
8252	* Update FSF's address in GPL notices.
8253
82542005-07-03  Richard M. Stallman  <rms@gnu.org>
8255
8256	* xdisp.c (try_window): Fix previous change in how it handles
8257	a partially-visible line or one only partly past the margin.
8258
8259	* window.c (window_scroll_pixel_based): Take account
8260	of this_scroll_margin when finding point when scrolling up.
8261
82622005-06-29  Ralf Angeli  <angeli@iwi.uni-sb.de>
8263
8264	* window.c (window_scroll_pixel_based, window_scroll_line_based):
8265	Handle `scroll-preserve-screen-position' non-nil, non-t specially.
8266	(syms_of_window) <scroll-preserve-screen-position>: Doc fix.
8267
82682005-07-02  Juri Linkov  <juri@jurta.org>
8269
8270	* w32term.c (w32_draw_vertical_window_border): Use foreground of
8271	VERTICAL_BORDER_FACE_ID for vertical border line.
8272
82732005-07-02  Eli Zaretskii  <eliz@gnu.org>
8274
8275	* fileio.c (Fcopy_file): Rearrange the code that calls fchown and
8276	fchmod so that chmod doesn't get called on MSDOS before the file
8277	is closed.
8278
82792005-07-01  Jason Rumney  <jasonr@gnu.org>
8280
8281	* w32term.c (cleartype_active): New flag for enabling sub-pixel
8282	workaround.
8283	(w32_initialize): Initialize it.
8284	(w32_native_per_char_metric): Allow a couple of extra pixels when
8285	Cleartype is active.
8286
8287	* w32term.c (w32_initialize): Move check for screen reader here
8288	from syms_of_w32term.
8289
82902005-06-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
8291
8292	* xterm.c (handle_one_xevent): bzero compose_status when nbytes
8293	is not zero.
8294
82952005-07-01  Masatake YAMATO  <jet@gyve.org>
8296
8297	* emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
8298
82992005-06-30  Juri Linkov  <juri@jurta.org>
8300
8301	* xdisp.c (x_draw_vertical_border): If left fringe is not present
8302	decrease x coord of vertical border by 1 pixel to not occupy text
8303	area of the right window.
8304
8305	* xterm.c (x_draw_vertical_window_border): Use foreground of
8306	VERTICAL_BORDER_FACE_ID for vertical border line.
8307
8308	* term.c (turn_on_face): In standout mode apply specified
8309	fg to bg, and specified bg to fg (this makes the logic of
8310	inversion on terminal consistent with X).
8311
83122005-06-29  Juanma Barranquero  <lekktu@gmail.com>
8313
8314	* eval.c (user_variable_p_eh): New function.
8315	(Fuser_variable_p): Use it.  Clarify docstring.
8316	Return t for aliases of user options, nil for alias loops.
8317
83182005-06-27  Richard M. Stallman  <rms@gnu.org>
8319
8320	* eval.c (Fdefvar): Improve error message.
8321
83222005-06-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8323
8324	* macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
8325	change.
8326
83272005-06-27  Juanma Barranquero  <lekktu@gmail.com>
8328
8329	* eval.c (Fdefvar): Don't try to set constant symbols.
8330
83312005-06-25  Richard M. Stallman  <rms@gnu.org>
8332
8333	* macfns.c (Fx_show_tip): Pass new arg to try_window.
8334
8335	* w32fns.c (Fx_show_tip): Pass new arg to try_window.
8336
8337	* xfns.c (Fx_show_tip): Pass new arg to try_window.
8338
8339	* xdisp.c (try_window): New arg CHECK_MARGINS.  Calls changed.
8340	(redisplay_window): Handle try_window reporting point in scroll margin.
8341
8342	* dispextern.h (try_window): Declare new arg.
8343
8344	* fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
8345	Use fchmod to copy the file modes.
8346	(Frename_file): Don't copy UID and GID here;
8347	instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
8348
8349	* eval.c (call_debugger): Take full care of extending stack limits
8350	to make space for the debugger, and restore the change afterward.
8351	Bind debug-on-error to nil.
8352	(restore_stack_limits): New subroutine.
8353	(Fsignal): Extend specpdl bound along with eval depth bound,
8354	for calling edebug.  Don't do either one, for calling debugger.
8355	(find_handler_clause): Don't bind debug-on-error here.
8356	Don't unbind anything either.
8357	Temporarily advance max_specpdl_size for calling
8358	internal_with_output_to_temp_buffer.
8359	(grow_specpdl): Don't alter max_specpdl_size before signaling
8360	an error.
8361	(syms_of_eval) <max-specpdl-size>: Doc fix.
8362
8363	* lread.c (read1): 0.0e+NaN should make a "positive" NaN.
8364
83652005-06-24  Eli Zaretskii  <eliz@gnu.org>
8366
8367	* fileio.c (Frename_file): Undo last change: no need to ifdef away
8368	chown on DOS_NT platforms.
8369
8370	* w32.c (sys_chown): New function.
8371
8372	* s/ms-w32.h (chown): New; define to sys_chown.
8373
83742005-06-24  Juanma Barranquero  <lekktu@gmail.com>
8375
8376	* xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
8377	(syms_of_xdisp) <void-text-area-pointer>: Doc fix.
8378
8379	* fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
8380
83812005-06-23  Richard M. Stallman  <rms@gnu.org>
8382
8383	* xdisp.c (get_next_display_element): Finish reversing the tests of
8384	Vnobreak_char_display.
8385
8386	* xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
8387	All uses changed.
8388	(Qnobreak_space): Rename from Qno_break_space.  All uses changed.
8389	(syms_of_xdisp): Define nobreak-char-display and nobreak-space.
8390
8391	* fileio.c (Frename_file): Preserve owner and group, if possible,
8392	when copying.
8393
83942005-06-23  Juanma Barranquero  <lekktu@gmail.com>
8395
8396	* abbrev.c (Funexpand_abbrev):
8397	* category.c (Fmake_category_set):
8398	* dispnew.c (Fsleep_for, Fsit_for):
8399	* editfns.c (Fsubst_char_in_region):
8400	* eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
8401	* frame.c (make_frame_without_minibuffer):
8402	* lread.c (read_vector):
8403	* macfns.c (check_x_frame):
8404	* process.c (Fstop_process, Fcontinue_process):
8405	* search.c (Freplace_match):
8406	* syntax.c (Fstring_to_syntax):
8407	* w32fns.c (check_x_frame, check_x_display_info):
8408	* xfaces.c (x_supports_face_attributes_p):
8409	* xselect.c (Fx_own_selection_internal): Follow error conventions.
8410
8411	* image.c (fn_png_init_io): Don't define it.
8412	(init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
8413	(png_read_from_file): New function, based on png_read_from_memory.
8414	(png_load): Use it, instead of fn_png_init_io.
8415
84162005-06-23  Kim F. Storm  <storm@cua.dk>
8417
8418	* search.c (Fmatch_data): Remove evaporate option.
8419	(Fset_match_data): Do not mention evaporate option in doc string.
8420	Add commentary explaining evaporate arg (for internal use only).
8421	(unwind_set_match_data): Add comment on evaporate use.
8422
84232005-06-22  Miles Bader  <miles@gnu.org>
8424
8425	* xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
8426	(realize_basic_faces, syms_of_xfaces): Update references to it.
8427	* dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
8428	to `VERTICAL_BORDER_FACE_ID'.
8429	* dispnew.c (build_frame_matrix_from_leaf_window): Update references.
8430
84312005-06-21  Juri Linkov  <juri@jurta.org>
8432
8433	* dispextern.h: Add extern Qframe_set_background_mode.
8434
8435	* xfaces.c: Rename obsolete function Qframe_update_face_colors to
8436	Qframe_set_background_mode.
8437
8438	* frame.c (Fmodify_frame_parameters):
8439	Call frame-set-background-mode after changing the background color
8440	on non-window non-dos branch.
8441
84422005-06-21  Juanma Barranquero  <lekktu@gmail.com>
8443
8444	* fns.c (Fchar_table_range):
8445	* process.c (Fmake_network_process): Fix spellings.
8446
84472005-06-20  Kim F. Storm  <storm@cua.dk>
8448
8449	* fns.c (Fsort): Doc fix.
8450
84512005-06-20  Miles Bader  <miles@gnu.org>
8452
8453	* xfaces.c (Qvertical_divider): New variable.
8454	(realize_basic_faces): Realize its face.
8455	(syms_of_xfaces): Initialize it.
8456
8457	* dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
8458
8459	* dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
8460	window-separator on ttys using `vertical-divider' face by default.
8461
84622005-06-17  Richard M. Stallman  <rms@gnu.org>
8463
8464	* xdisp.c (get_next_display_element):
8465	Reverse test of Vshow_nonbreak_escape.
8466
8467	* term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
8468	(Ftty_no_underline): New function.
8469	(syms_of_term): defsubr it.
8470
8471	* keyboard.c (read_char): Call restore_getcjmp after jump occurs.
8472
8473	* dispnew.c (spec_glyph_lookup_face): New function.
8474	(build_frame_matrix_from_leaf_window): Use it.
8475
8476	* dispextern.h (spec_glyph_lookup_face): Add declaration.
8477
8478	* buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
8479
84802005-06-12  Richard M. Stallman  <rms@gnu.org>
8481
8482	* keyboard.c (read_char): After catching a longjmp,
8483	call restore_getcjmp.
8484
84852005-06-17  Juanma Barranquero  <lekktu@gmail.com>
8486
8487	* xselect.c (lisp_data_to_selection_data): Fix spelling.
8488
84892005-06-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8490
8491	* macterm.c (mac_compute_glyph_string_overhangs): Don't set
8492	overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
8493	[USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
8494	events.
8495	(XTread_socket): Don't pass keyboard events with the option
8496	modifier to the system when Vmac_command_key_is_meta is nil or
8497	Vmac_option_modifier is non-nil.
8498	[USE_CARBON_EVENTS] (read_socket_inev): New variable.
8499	[USE_CARBON_EVENTS] (init_command_handler): Fix argument.
8500	[USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
8501	handler function.
8502	(install_window_handler) [USE_CARBON_EVENTS]: Install it.
8503	(XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
8504	handler part to mac_handle_mouse_event.
8505
85062005-06-14  Juanma Barranquero  <lekktu@gmail.com>
8507
8508	* eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
8509	NEW-ALIAS and BASE-VARIABLE, respectively.
8510
85112005-06-13  Stefan Monnier  <monnier@iro.umontreal.ca>
8512
8513	* xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
8514	(get_phys_cursor_geometry, format_mode_line_unwind_data)
8515	(get_line_height_property, x_produce_glyphs): Remove unused vars.
8516
8517	* coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
8518
85192005-06-13  Eli Zaretskii  <eliz@gnu.org>
8520
8521	* w32term.c (x_use_underline_position_properties): New variable.
8522	(x_draw_glyph_string): Remind in a comment to change doc string of
8523	x-use-underline-position-properties if/when underline positioning
8524	is implemented.
8525	(syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
8526	and initialize it to nil.
8527
85282005-06-12  Jason Rumney  <jasonr@gnu.org>
8529
8530	* w32fns.c (NEWOPENFILENAME): New struct.
8531	(Fx_file_dialog): Use it to trick the system into giving us up to
8532	date dialogs on systems that are documented to support it.
8533	Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
8534
85352005-06-12  Eli Zaretskii  <eliz@gnu.org>
8536
8537	* w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
8538	MB_ABORTRETRYIGNORE.  Never return, even if DebugBreak does.
8539
85402005-06-11  Eli Zaretskii  <eliz@gnu.org>
8541
8542	* image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
8543	to CreateDIBSection to avoid a compiler warning.
8544	(pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
8545	warning.
8546	(png_load): Cast return values of fn_png_create_read_struct and
8547	fn_png_create_info_struct, to avoid compiler warnings on W32.
8548	Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
8549	to avoid compiler warnings.
8550	(jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
8551	compiler warning on W32.  Cast 3rd arg to IMAGE_BACKGROUND to
8552	avoid a compiler warning.
8553	(tiff_load): Cast return values of fn_TIFFOpen and
8554	fn_TIFFClientOpen to avoid compiler warning on W32.  Cast 3rd arg
8555	to IMAGE_BACKGROUND to avoid a compiler warning.
8556	(gif_load): Cast return values of fn_DGifOpenFileName and
8557	fn_DGifOpen to avoid compiler warnings on W32.  Cast 3rd arg to
8558	IMAGE_BACKGROUND to avoid a compiler warning.
8559	(DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
8560	before redefining.
8561
8562	* w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
8563	the call to CreateDIBSection, to avoid a compiler warning.
8564
85652005-06-11  Jason Rumney  <jasonr@gnu.org>
8566
8567	* w32fns.c (Fx_file_dialog): Unblock input before falling back to
8568	minibuffer.
8569	* macfns.c (Fx_file_dialog): Likewise.
8570
85712005-06-10  Eli Zaretskii  <eliz@gnu.org>
8572
8573	* makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
8574
85752005-06-10  Juanma Barranquero  <lekktu@gmail.com>
8576
8577	* process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
8578	* w32fns.c (syms_of_w32fns): Fix spellings.
8579
85802005-06-10  Eli Zaretskii  <eliz@gnu.org>
8581
8582	* unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
8583	`verbose'; print diagnostic messages only if it is non-zero.
8584	All callers changed to pass a zero value unless DEBUG_DUMP is defined
8585	in the environment.
8586	(copy_executable_and_dump_data): Print section names with %.8s.
8587
85882005-06-10  Masatake YAMATO  <jet@gyve.org>
8589
8590	* xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
8591	when mouse_face is not given.
8592
85932005-06-09  Luc Teirlinck  <teirllm@auburn.edu>
8594
8595	* window.c (Fselect_window): Adapt call to Fselect_frame.
8596
8597	* lisp.h: Update EXFUN of Fselect_frame.
8598
8599	* keyboard.c (command_loop_1): Adapt call to Fselect_frame.
8600
8601	* frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
8602	no_enter.
8603	(Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
8604	Adapt to above change.
8605
86062005-06-10  Juanma Barranquero  <lekktu@gmail.com>
8607
8608	* fns.c (Fmemq, Fmaphash): Doc fixes.
8609
86102005-06-09  Juanma Barranquero  <lekktu@gmail.com>
8611
8612	* xfaces.c (Fdisplay_supports_face_attributes_p):
8613	Fix typo in docstring.
8614
86152005-06-08  Steven Tamm  <steventamm@mac.com>
8616
8617	* unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
8618	used by gcc4 on intel mac.
8619
86202005-06-09  Kim F. Storm  <storm@cua.dk>
8621
8622	* search.c (Fmatch_data): Add optional RESEAT arg.  Unchain markers
8623	in REUSE list if non-nil; free them if equal to evaporate.
8624	(Fset_match_data): Add optional RESEAT arg.  Unchain markers in LIST
8625	if non-nil; free them if equal to evaporate.  Use XCAR/XCDR.
8626	(restore_search_regs): Rename from restore_match_data.  Uses changed.
8627	(unwind_set_match_data): New function.
8628	(record_unwind_save_match_data): New function like save-match-data.
8629
8630	* lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
8631	(record_unwind_save_match_data): Add prototype.
8632	(restore_search_regs): Rename from restore_match_data.
8633
8634	* composite.c (compose_chars_in_text):
8635	* eval.c (do_autoload):
8636	* macmenu.c (set_frame_menubar):
8637	* process.c (read_process_output, exec_sentinel):
8638	* xmenu.c (set_frame_menubar):
8639	* xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
8640	* w32menu.c (set_frame_menubar):
8641	Use record_unwind_save_match_data.
8642
86432005-06-08  Richard M. Stallman  <rms@gnu.org>
8644
8645	* xdisp.c (get_next_display_element): Alter previous change:
8646	Distinguish Vshow_nonbreak_escape = t or not t.
8647	For t, use escape_glyph once again, as before previous change.
8648	Use space or hyphen for display, instead of the non-ASCII char.
8649	(syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
8650
8651	* process.c (Fstart_process): Don't touch command_channel_p slot.
8652
8653	* process.h (struct process): Delete command_channel_p.
8654
86552005-06-07  Masatake YAMATO  <jet@gyve.org>
8656
8657	* xdisp.c (note_mode_line_or_margin_highlight):
8658	Check the overlapping of re-rendering area to avoid flickering.
8659	(note_mouse_highlight): Call clear_mouse_face if PART
8660	is not ON_MODE_LINE nor ON_HEADER_LINE.
8661
86622005-06-07  Kim F. Storm  <storm@cua.dk>
8663
8664	* process.c: Improve commentary for adaptive read buffering.
8665
86662005-06-06  Stefan Monnier  <monnier@iro.umontreal.ca>
8667
8668	* xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
8669	if available.
8670
86712005-06-06  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
8672
8673	* macmenu.c (menu_quit_handler, install_menu_quit_handler):
8674	New functions for popping down menus on C-g.
8675	(set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
8676
8677	* macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
8678	non-static.
8679
8680	* config.in: Add HAVE_CANCELMENUTRACKING.
8681
86822005-06-06  Eli Zaretskii  <eliz@gnu.org>
8683
8684	* w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
8685
8686	* unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
8687
8688	* w32proc.c (RVA_TO_PTR): New macro.
8689
8690	* w32heap.c (RVA_TO_PTR): No need to #undef now.
8691
8692	* makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
8693	Depend on w32heap.h.
8694
86952005-06-06  Luc Teirlinck  <teirllm@auburn.edu>
8696
8697	* keyboard.c (command_loop_1): Update Vthis_original_command.
8698
86992005-06-06  Richard M. Stallman  <rms@gnu.org>
8700
8701	* xmenu.c (popup_get_selection): Undo previous change.
8702
87032005-06-06  Juri Linkov  <juri@jurta.org>
8704
8705	* xdisp.c (Qno_break_space): New variable.
8706	(syms_of_xdisp): Initialize it.
8707	(get_next_display_element): Add no-break space and soft hypen
8708	codes for iso8859-2 and iso8859-5.  Don't add `\' for them.
8709	Use `no-break-space' face for no-break spaces.
8710
87112005-06-06  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
8712
8713	* window.c (delete_window): Handle the case where a h/vchild has
8714	a h/vchild.
8715
87162005-06-05  Eli Zaretskii  <eliz@gnu.org>
8717
8718	* w32.c (sys_setsockopt): Change arg 4 to `const void *'.  In the
8719	call to pfn_setsockopt, cast optval to `const char *'.
8720
87212005-06-04  Eli Zaretskii  <eliz@gnu.org>
8722
8723	* w32.c (gettimeofday): Use struct _timeb, not struct timeb.
8724	(open_unc_volume): Cast return value of map_w32_filename, to avoid
8725	compiler warnings.
8726
8727	* s/ms-w32.h (fileno): Don't define if already defined.
8728
8729	* emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
8730
8731	* makefile.w32-in (DOC): Define to point to the generated DOC-X.
8732
87332005-06-04  Richard M. Stallman  <rms@gnu.org>
8734
8735	* xmenu.c (popup_get_selection): Click not in menu deactivates menu.
8736
87372005-06-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
8738
8739	* macmenu.c (cleanup_popup_menu): New function.
8740	(Fx_popup_menu): Unwind protect cleanup_popup_menu in case
8741	mac_menu_show Quit:s.
8742	(mac_menu_show): Quit on cancel if not popped up on click (i.e.
8743	a dialog).
8744
87452005-06-04  Kim F. Storm  <storm@cua.dk>
8746
8747	* coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
8748
8749	* callproc.c (Fcall_process): Don't use alloca to gradually
8750	increase size of buf, as it effectively uses twice the necessary
8751	space on the stack.  Instead, pre-allocate buf of full size, and
8752	gradually increase the read size.
8753
8754	* bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
8755
8756	* eval.c (unbind_to): Preserve value of Vquit_flag.
8757
8758	* xterm.c (handle_one_xevent): Also ignore mouse motion just
8759	before a button release event.
8760
87612005-06-03  Juanma Barranquero  <lekktu@gmail.com>
8762
8763	* xfaces.c (Finternal_lisp_face_equal_p): Really report
8764	on faces in a frame, if the argument FRAME is non-nil.
8765	Improve argument/docstring consistency.
8766
87672005-06-02  Kim F. Storm  <storm@cua.dk>
8768
8769	* xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
8770	(x_consider_frame_title, Fformat_mode_line): Save offset into
8771	mode_line_noprop_buf rather than pointer, in case buffer is relocated.
8772
87732005-06-01  Kim F. Storm  <storm@cua.dk>
8774
8775	* fns.c (mapcar1): Maybe exit loop if original sequence was modified.
8776
87772005-06-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8778
8779	* macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
8780	resolution fields for scalable fonts to 0.
8781
8782	* xfaces.c (build_scalable_font_name): Round pixel size to the
8783	nearest integer.
8784
87852005-06-01  Kim F. Storm  <storm@cua.dk>
8786
8787	* xdisp.c (display_mode_line): Support nested calls to redisplay
8788	and format-mode-line.  Set mode_line_target to MODE_LINE_DISPLAY.
8789
87902005-05-31  Stefan Monnier  <monnier@iro.umontreal.ca>
8791
8792	* fileio.c (Finsert_file_contents):
8793	* xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
8794
87952005-05-31  Kim F. Storm  <storm@cua.dk>
8796
8797	* xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
8798	(mode_line_noprop_ptr): Rename from frame_title_*.
8799	(store_mode_line_noprop_char): Rename from store_frame_title_char.
8800	(store_mode_line_noprop): Rename from store_frame_title.
8801	(mode_line_target): New enum to specify current output target
8802	for mode line formatting.
8803	(display_mode_element): Test it rather than frame_title_ptr and
8804	mode_line_string_list to determine where output should go.
8805	(mode_line_proptrans_alist, mode_line_string_alist): Make static.
8806	(Vmode_line_unwind_vector): New variable.
8807	(format_mode_line_unwind_data, unwind_format_mode_line):
8808	New functions for unwind protection in mode line formatting.
8809	(x_consider_frame_title): Use them and new local var 'title_start'
8810	to support nested calls to format-mode-line and redisplay.
8811	Set mode_line_target to MODE_LINE_TITLE.
8812	(Fformat_mode_line): Use them and new local var 'string_start' to
8813	support nested calls to format-mode-line and redisplay.
8814	Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
8815	Don't trim trailing dashes.
8816	(decode_mode_spec): Don't make infinite number of trailing dashes
8817	for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
8818	(syms_of_xdisp): Initialize and staticpro mode_line_string_face,
8819	mode_line_string_face_prop, and Vmode_line_unwind_vector.
8820	(init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
8821	Initialize mode_line_target to MODE_LINE_DISPLAY.
8822
88232005-05-29  Richard M. Stallman  <rms@gnu.org>
8824
8825	* buffer.c (Fbuffer_local_value): Call indirect_variable.
8826
88272005-05-28  Masatake YAMATO  <jet@gyve.org>
8828
8829	* xdisp.c (note_mode_line_or_margin_highlight): Change the
8830	pointer to a hand cursor when hoovering over a mouse-face.
8831
88322005-05-27  Kenichi Handa  <handa@m17n.org>
8833
8834	* xterm.c (x_encode_char): Call check_ccl_update in advance.
8835
8836	* ccl.c: Now an element of Vccl_program_table is a vector of
8837	length 4, not 3.
8838	(ccl_get_compiled_code): New arg idx.  Caller changed.
8839	Adjust for the change of Vccl_program_table.
8840	(setup_ccl_program): Adjust for the change of Vccl_program_table.
8841	(check_ccl_update): New function.
8842	(Fregister_ccl_program): Use ASET to set an element of a vector.
8843	Adjusted for the change of Vccl_program_table.
8844
8845	* ccl.h (struct ccl_program): New member idx.
8846	(check_ccl_update): Extern it.
8847
88482005-05-27  Juanma Barranquero  <lekktu@gmail.com>
8849
8850	* image.c (Vimage_library_alist): Move from image.el.
8851	(syms_of_image): Defvar it.
8852	(lookup_image_type): Use it.
8853
8854	* buffer.c (Fbuffer_local_value): Make argument name match its use
8855	in docstring.
8856
88572005-05-26  Juanma Barranquero  <lekktu@gmail.com>
8858
8859	* keyboard.c (Frecursive_edit): Fix typo in docstring.
8860	(Fposn_at_x_y): Make argument name match its use in docstring.
8861
88622005-05-26  Lute Kamstra  <lute@gnu.org>
8863
8864	* eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
8865
88662005-05-24  Masatake YAMATO  <jet@gyve.org>
8867
8868	* xdisp.c (note_mode_line_or_margin_highlight): Use b and e
8869	as loop sentinels.
8870
88712005-05-24  Nick Roberts  <nickrob@snap.net.nz>
8872
8873	* xmenu.c (Fx_popup_dialog): Add a third boolean argument to
8874	select frame title ("Question"/"Information").
8875	(xdialog_show): Use it.
8876
8877	* macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
8878
8879	* w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
8880
8881	* fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
8882	a third argument (Qnil).
8883
8884	* lisp.h: x-popup-dialog can have three arguments.
8885
8886	* editfns.c (Fmessage_box): Use "Information" for frame title.
8887
88882005-05-23  Thien-Thi Nguyen  <ttn@gnu.org>
8889
8890	* termcap.c [VMS]: Include <starlet.h>.
8891
88922005-05-23  Masatake YAMATO  <jet@gyve.org>
8893
8894	* xdisp.c (note_mode_line_or_margin_highlight): Add code
8895	for mouse-face.  Change the type of the first argument from `window'
8896	to `Lisp_Object'.
8897	(note_mouse_highlight): Call note_mode_line_or_margin_highlight with
8898	window instead of w.
8899
89002005-05-22  Andreas Schwab  <schwab@suse.de>
8901
8902	* process.c (send_process): Move misplaced volatile.
8903
89042005-05-21  Richard M. Stallman  <rms@gnu.org>
8905
8906	* xdisp.c (display_mode_element): If we're processing a list and
8907	padding is specified, put it after the last element.
8908
89092005-05-21  Eli Zaretskii  <eliz@gnu.org>
8910
8911	* fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
8912	"superroot" on DOS_NT systems.
8913
89142005-05-21  David Hunter  <hunterd42@comcast.net>  (tiny change)
8915
8916	* process.c (send_process): Restore the SIGPIPE handler if we
8917	catch a SIGPIPE.
8918
89192005-05-20  Juanma Barranquero  <lekktu@gmail.com>
8920
8921	* image.c (lookup_image, png_read_from_memory): Remove hacks (and
8922	misleading comments).
8923	(DEF_IMGLIB_FN): Use C calling convention for image libraries.
8924
89252005-05-20  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
8926
8927	* window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
8928	Correct the right value.
8929
89302005-05-19  Nick Roberts  <nickrob@snap.net.nz>
8931
8932	* keyboard.c (syms_of_keyboard): Remove Lisp variables
8933	post-command-idle-hook and post-command-idle-delay.
8934	(command_loop_1): Don't try to execute post-command-idle-hook.
8935
89362005-05-16  Kim F. Storm  <storm@cua.dk>
8937
8938	* xdisp.c (handle_display_prop): Handle empty replacement.
8939	(handle_single_display_spec): Return -1 for empty replacement.
8940
8941	* keyboard.c (adjust_point_for_property): Skip empty overlay string.
8942
8943	* .gdbinit (pitx): Print more info about iterator.
8944
89452005-05-16  Andreas Schwab  <schwab@suse.de>
8946
8947	* unexmacosx.c (unexec_realloc): Move declarations before statements.
8948
89492005-05-14  Richard M. Stallman  <rms@gnu.org>
8950
8951	* xdisp.c (message3): Call cancel_echoing.
8952
8953	* alloc.c (Fmemory_full_p): New function.
8954	(syms_of_alloc): defsubr it.
8955
8956	* process.c (send_process_trap): Unblock SIGPIPE.
8957	(send_process): Reset SIGPIPE handler before reporting error.
8958
89592005-05-14  Nick Roberts  <nickrob@snap.net.nz>
8960
8961	* emacs.c (syms_of_emacs): Fix doc string for system-type.
8962
89632005-05-13  Richard M. Stallman  <rms@gnu.org>
8964
8965	* fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
8966	(Finsert_file_contents): If we read 0 bytes from a special file,
8967	unlock the visited file if we locked it.
8968	(Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
8969	(Ffile_exists_p, Ffile_symlink_p): Doc fixes.
8970
89712005-05-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8972
8973	* emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
8974
8975	* keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
8976	Regard toolkit scroll bar thumb drag events as squeezable and prevent
8977	redisplay from being paused by them.
8978
8979	* mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
8980	[!MAC_OSX] (target_ticks): Remove variable.
8981	[!MAC_OSX] (check_alarm, pause, index): Remove functions.
8982	[!MAC_OSX && __MRC__] (sys_strftime): Likewise.
8983	[!MAC_OSX] (select): If fd 0 is not set in rfds and some input
8984	event occurs before timeout, behave as if the function were interrupted.
8985	[!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
8986	handling using Time Manager routines.
8987	[!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
8988	New variables.
8989	[!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
8990	(setitimer): New functions.
8991
8992	* macfns.c, macmenu.c: Don't include signal.h.
8993
8994	* macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
8995	Rename from get_control_part_bound.  All callers changed.
8996	(x_scroll_bar_clear): New function.
8997	(x_clear_frame): Use it.
8998	(XTset_vertical_scroll_bar): Don't call Draw1Control.
8999	(x_scroll_bar_handle_click): Change type of second argument from
9000	int to ControlPartCode.
9001	(check_alarm): Remove declaration.
9002	(XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
9003	(XTread_socket): Use ControlPartCode instead of SInt16.
9004
90052005-05-13  Nozomu Ando  <nand@mac.com>
9006
9007	* unexmacosx.c: Include assert.h.
9008	(MACOSX_MALLOC_MULT16): New define.
9009	[MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
9010	ptr is in unexec regions by checking it is multiple of 16.
9011	(unexec_malloc_header_t): New typedef.
9012	(unexec_malloc, unexec_realloc, unexec_free): Store and use
9013	allocated size information in unexec_malloc_header.
9014
90152005-05-10  Richard M. Stallman  <rms@gnu.org>
9016
9017	* xterm.c (noinclude): Add #undef.
9018
9019	* image.c, xfns.c, xmenu.c: Don't include signal.h.
9020
90212005-05-09  Juanma Barranquero  <lekktu@gmail.com>
9022
9023	* fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
9024	(Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
9025	Doc fixes.
9026
9027	* dired.c (Ffile_name_completion): Make argument name
9028	match its use in docstring.
9029
90302005-05-08  Luc Teirlinck  <teirllm@auburn.edu>
9031
9032	* eval.c (Fdefvaralias): Remove any pre-existing
9033	variable-documentation property of the alias.
9034
90352005-05-07  Thien-Thi Nguyen  <ttn@gnu.org>
9036
9037	* xfns.c (start_hourglass): Do nothing when running on a tty.
9038
90392005-05-07  Juanma Barranquero  <lekktu@gmail.com>
9040
9041	* fns.c (Fchar_table_range): Fix typos in docstring.
9042
90432005-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
9044
9045	* fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
9046
90472005-05-06  Eli Zaretskii  <eliz@gnu.org>
9048
9049	* lread.c (Flocate_file_internal): Doc fix.
9050
9051	* Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
9052
90532005-05-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9054
9055	* macselect.c (x_own_selection): Accept Lisp string as result of
9056	selection converter function.
9057	(x_clear_frame_selections): Don't call x-lost-selection-functions
9058	if Emacs is not owner of the selection.
9059	(Vmac_services_selection): Put variable and initialization in
9060	#ifdef MAC_OSX.
9061	(syms_of_macselect) [MAC_OSX]: Set default value of
9062	Vmac_services_selection to PRIMARY.
9063
9064	* macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
9065	(mac_handle_tool_bar_click): Remove unused function and declaration.
9066	[USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
9067	(install_scroll_bar_timer, set_scroll_bar_timer)
9068	(control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
9069	(get_control_part_bound, x_scroll_bar_handle_press)
9070	(x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
9071	(x_set_toolkit_scroll_bar_thumb): New functions and declarations.
9072	[USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
9073	(scroll_bar_timer_event_posted_p): New variables.
9074	[USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
9075	(SCROLL_BAR_CONTINUOUS_DELAY): New macros.
9076	(x_scroll_bar_create): Set control reference with NewControl.
9077	(x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
9078	Initialize track_top and track_height to nil.
9079	(x_scroll_bar_set_handle, x_scroll_bar_note_movement):
9080	Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
9081	(XTset_vertical_scroll_bar): Don't make space between scroll bar
9082	and associated window.
9083	(XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
9084	from window config.
9085	(XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
9086	Set track_top and track_height to nil when scroll bar size is changed.
9087	Recalculate them if they are nil.
9088	(XTread_socket) [MAC_OSX]: Use control kind to determine if the
9089	clicked control is a scroll bar.
9090	(XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
9091	event handler functions.  Don't add modifiers to scroll bar click
9092	events.  Call scroll bar release handler when window is deactivated.
9093	(mac_initialize): Remove unused code for X toolkit.
9094	(syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
9095	Initialize Vx_toolkit_scroll_bars to nil.
9096
9097	* macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
9098	New members track_top and track_height.
9099
9100	* sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
9101	init_process when including sys/select.h.
9102
91032005-05-05  Luc Teirlinck  <teirllm@auburn.edu>
9104
9105	* eval.c (Fdefvaralias): Doc fix.
9106
9107	* xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
9108
91092005-05-05  Kim F. Storm  <storm@cua.dk>
9110
9111	* buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
9112	default value.
9113	(syms_of_buffer): Add default-cursor-in-non-selected-windows.
9114	Fix type of cursor-in-non-selected-windows.
9115
91162005-05-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
9117
9118	* mac.c: #undef init_process so not to conflict with system headers.
9119
91202005-05-02  Richard M. Stallman  <rms@gnu.org>
9121
9122	* buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
9123
9124	* buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
9125
9126	* xdisp.c (Vcursor_in_non_selected_windows)
9127	(Qcursor_in_non_selected_windows): Vars deleted.
9128	(syms_of_xdisp): Don't initialize them.
9129	(get_window_cursor_type): Use cursor_in_non_selected_windows
9130	buffer slot.
9131
91322005-05-02  Kim F. Storm  <storm@cua.dk>
9133
9134	* macros.c (executing_kbd_macro_index): Rename from
9135	executing_macro_index.  All uses changed.
9136	(executing_kbd_macro_iterations): Rename from
9137	executing_macro_iterations.  All uses changed.
9138	(executing_kbd_macro): Rename from executing_macro.
9139	All uses changed.
9140	(syms_of_macros): Rename Lisp var executing-macro-index to
9141	executing-kbd-macro-index.
9142
9143	* xdisp.c (move_it_in_display_line_to): Fix last change.
9144
91452005-05-01  Luc Teirlinck  <teirllm@auburn.edu>
9146
9147	* xmenu.c (Fx_popup_menu): Doc fix.
9148
9149	* charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
9150
91512005-05-02  Jason Rumney  <jasonr@gnu.org>
9152
9153	* emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
9154
91552005-05-02  Nozomu Ando  <nand@mac.com>
9156
9157	* sysselect.h: Fix typo.
9158
91592005-05-02  Nick Roberts  <nickrob@snap.net.nz>
9160
9161	* charset.c (Fchars_in_region): Remove as obsolete.
9162
91632005-05-01  Kim F. Storm  <storm@cua.dk>
9164
9165	* xdisp.c (move_it_in_display_line_to): Stop if we move beyond
9166	TO_CHARPOS.  This may happen if last glyphs was an image or stretch
9167	glyph.
9168
91692005-05-01  Luc Teirlinck  <teirllm@auburn.edu>
9170
9171	* dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
9172
91732005-05-01  Richard M. Stallman  <rms@gnu.org>
9174
9175	* xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
9176	If user cancels the menu, quit unless FOR_CLICK.
9177
9178	* macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
9179	All uses changed.
9180	(syms_of_macros): Define only executing-kbd-macro, not executing-macro.
9181	* keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
9182	* macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
9183	* commands.h (Vexecuting_kbd_macro): Likewise.
9184
91852005-05-01  Thien-Thi Nguyen  <ttn@gnu.org>
9186
9187	* sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
9188
91892005-04-30  Richard M. Stallman  <rms@gnu.org>
9190
9191	* fileio.c (Ffind_file_name_handler): Handle the `operations'
9192	property of the file name handler.
9193	(Qoperations): New variable.
9194	(syms_of_fileio): Initialize and staticpro it.
9195
9196	* xdisp.c (set_message_1): Delete xassert.
9197
91982005-04-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9199
9200	* mac.c: Don't include time.h.  Include sysselect.h after systime.h.
9201
9202	* macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
9203
9204	* macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
9205	before/after including Carbon.h if there is a working mktime.
9206
92072005-04-28  Kim F. Storm  <storm@cua.dk>
9208
9209	* xfaces.c (resolve_face_name): Add arg SIGNAL_P.  Calls changed.
9210	Fix cyclic alias check.  If alias loop is detected, signal
9211	circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
9212
92132005-04-28  Lute Kamstra  <lute@gnu.org>
9214
9215	* eval.c (do_autoload): Record only autoloads in the autoload
9216	property of symbols.
9217
92182005-04-28  Nick Roberts  <nickrob@snap.net.nz>
9219
9220	* emacs.c (USAGE1): Add --basic-display and --quick options.
9221
92222005-04-27  Kim F. Storm  <storm@cua.dk>
9223
9224	* data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
9225
92262005-04-26  Richard M. Stallman  <rms@gnu.org>
9227
9228	* window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
9229	(syms_of_window): Doc fixes.
9230
9231	* indent.c (Fvertical_motion): Undo previous change.
9232
92332005-04-26  Kenichi Handa  <handa@m17n.org>
9234
9235	* fns.c (char_table_range): New function.
9236	(Fchar_table_range): Signal an error if characters in the range
9237	have inconsistent values.  Don't check the parent.
9238
92392005-04-25  Kenichi Handa  <handa@m17n.org>
9240
9241	* fontset.c (fontset_set): Fix previous change.
9242
92432005-04-24  Richard M. Stallman  <rms@gnu.org>
9244
9245	* indent.c (Fvertical_motion): Bind fontification-functions to nil.
9246
92472005-04-24  Eli Zaretskii  <eliz@gnu.org>
9248
9249	* regex.c (re_search_2, re_match_2_internal): Convert second arg
9250	of RE_TRANSLATE to int, to shut up GCC warnings.
9251
9252	* fileio.c (Fcopy_file): Doc fix.
9253	[MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
9254	not needed.
9255
92562005-04-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9257
9258	* Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
9259	(SOME_MACHINE_OBJECTS): Likewise.
9260	(mac.o): Depend on ccl.h.
9261	(macselect.o): New target.
9262
9263	* emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
9264	Call syms_of_macselect.
9265
9266	* frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
9267
9268	* mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
9269	(QCLIPBOARD): Remove variable.
9270	(syms_of_mac): Don't initialize it.
9271	(Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
9272	Remove functions.
9273	(syms_of_mac): Don't defsubr them.
9274	[TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
9275	(QHFS_plus_D, QHFS_plus_C): New variables.
9276	(syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
9277	[TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
9278	(cfstring_create_normalized): New functions.
9279	[TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
9280	(syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
9281
9282	* macterm.c (handling_window_update, terminate_flag):
9283	Remove variables.
9284	(do_window_update, do_ae_quit_application, XTread_socket):
9285	Don't use them.
9286	(WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
9287	[USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
9288	(init_service_handler): Move to macselect.c.  Remove declarations.
9289	[USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
9290	(Qapplication, Qabout): New variables.
9291	(syms_of_mac): Initialize them.
9292	[USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
9293	(Qperform): New variables.
9294	(syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
9295	(do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
9296	(do_menu_choice): Unhighlight menu bar also when menu_id is 0.
9297	(mac_store_application_menu_event, init_menu_bar): New functions.
9298	[USE_CARBON_EVENTS] (mac_handle_command_event)
9299	(init_command_handler): New functions.
9300	(mac_handle_window_event): Return noErr on window update event.
9301	(do_ae_quit_application): Call mac_store_application_menu_event.
9302	(mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
9303	and init_menu_bar.
9304
9305	* macterm.h (x_clear_frame_selections): Add extern.
9306
9307	* macselect.c: New file for selection processing on Mac OS.
9308
93092005-04-23  Richard M. Stallman  <rms@gnu.org>
9310
9311	* fileio.c (Fcopy_file): New arg MUSTBENEW.
9312	(Frename_file): Pass new arg to Fcopy_file.
9313
9314	* window.c (window_size_fixed): Variable deleted.
9315	(syms_of_window): Initialize window-size-fixed to nil.
9316	But don't DEFVAR window_size_fixed.
9317
93182005-04-23  Andreas Schwab  <schwab@suse.de>
9319
9320	* m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
9321	(START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
9322	use lib64 instead of lib.
9323	(_LP64) [_ARCH_PPC64]: Define if not defined.
9324
93252005-04-23  David Hunter  <hunterd42@comcast.net>  (tiny change)
9326
9327	* s/ms-w32.h (HAVE_PWD_H): Define.
9328
93292005-04-22  Kenichi Handa  <handa@m17n.org>
9330
9331	* fns.c (copy_sub_char_table): Explicitly copy the default value
9332	of the sub-chartable.
9333
9334	* fontset.c (fontset_set): When a sub-chartable is created,
9335	explicitly sets the defalt value.
9336
93372005-04-22  Kim F. Storm  <storm@cua.dk>
9338
9339	* fns.c (Fplist_get): Replace by Fsafe_plist_get.
9340	(Fsafe_plist_get): Rename to Fplist_get.
9341	(Fsafe_get): Remove, as Fget now uses safe Fplist_get.
9342	(defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
9343
9344	* lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
9345
9346	* xdisp.c (store_mode_line_string, produce_stretch_glyph)
9347	(note_mode_line_or_margin_highlight, note_mouse_highlight):
9348	Use Fplist_get instead of Fsafe_plist_get.
9349
9350	* xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
9351
93522005-04-21  Miles Bader  <miles@gnu.org>
9353
9354	* xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
9355
93562005-04-20  Thien-Thi Nguyen  <ttn@gnu.org>
9357
9358	* sysdep.c: Remove reference to defunct vms-pwd.h.
9359	* dired.c: Likewise.  Also, for pwd.h, use HAVE_PWD_H, not !VMS.
9360	* editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
9361
9362	* config.in: Regenerate.
9363
93642005-04-20  Kenichi Handa  <handa@m17n.org>
9365
9366	* lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
9367	(CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
9368	(CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
9369
9370	* alloc.c (make_sub_char_table): Argument changed to initial
9371	value of the slots.
9372
9373	* data.c (Faref): Handle special slots used as default values of
9374	ascii, eight-bit-control, eight-bit-control.  Don't ignore a
9375	default value set for a group of characters.
9376	(Faset): Signal an error if IDXVAL is not a valid character code.
9377	Make a sub-chartable with correct initial value.
9378
9379	* fns.c (Fset_char_table_range): Don't set slots used as default
9380	values for ascii, eight-bit-control, eight-bit-graphic.
9381	Don't call Faref with charset-id.
9382	(Fset_char_table_default): Document how to treat normal character
9383	argument.  Handle special slots used as default values of ascii,
9384	eight-bit-control, eight-bit-control.  Make a sub chartable if
9385	necessary.
9386
93872005-04-20  Kenichi Handa  <handa@m17n.org>
9388
9389	* search.c (boyer_moore): Fix previous change.
9390
93912005-04-19  Kim F. Storm  <storm@cua.dk>
9392
9393	* xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
9394	face unless last visible char and first invisible char have the
9395	same face.  Also use default face if saved_face_id is undefined.
9396
93972005-04-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9398
9399	* macgui.h (MacFontStruct): Remove member `fontname'.  Add member
9400	`full_name'.
9401	[TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
9402	mac_scriptcode member.
9403
9404	* macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
9405	(syms_of_mac): Don't initialize them.
9406	(Vmac_charset_info_alist): New variable.
9407	(syms_of_mac): Defvar it.
9408	(create_text_encoding_info_alist): New function.
9409	(decode_mac_font_name, mac_to_x_fontname)
9410	(x_font_name_to_mac_font_name, init_font_name_table): Don't hard
9411	code the correspondence among XLFD charsets, Mac script codes, and
9412	Emacs coding systems.  Use Vmac_charset_info_alist and result of
9413	create_text_encoding_info_alist instead.
9414	(init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
9415	routines also on Mac OS Classic.
9416	(init_font_name_table) [!TARGET_API_MAC_CARBON]:
9417	Use add_font_name_table_entry.
9418	(mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
9419	specified.  Derive unspecified scalable fields from specified one.
9420	(x_list_fonts): Consider Valternate_fontname_alist.
9421	(kDefaultFontSize): Change value from 9 to 12.
9422	(XLoadQueryFont): Get decoded font family, font face, and charset
9423	from x_font_name_to_mac_font_name.  Set full name of loaded font.
9424	(mac_unload_font): Free `full_name' member.
9425	(x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
9426	NULL.  Copy full_name member of struct MacFontStruct to that of
9427	struct font_info.
9428
94292005-04-19  Kim F. Storm  <storm@cua.dk>
9430
9431	* xdisp.c (handle_stop): Set saved_face_id to current face if
9432	selective_display_ellipsis_p so ellipsis will be shown in same
9433	face as preceding text.
9434	(setup_for_ellipsis): Don't set saved_face_id here.
9435	(next_element_from_display_vector): Default to saved_face_id.
9436
9437	* fns.c (Fsafe_get): New function.
9438	(syms_of_fns): Defsubr it.
9439
9440	* lisp.h (Fsafe_get): EXFUN it.
9441
9442	* xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
9443	loops in case of bad face property lists.  Limit number of face
9444	alias lookups to 10 (in case of face alias loops).
9445
94462005-04-18  Kim F. Storm  <storm@cua.dk>
9447
9448	* dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
9449	It replaces the corresponding member from struct window, as a
9450	window may now show multiple overlay arrows.
9451	Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
9452
9453	* dispnew.c (row_equal_p, update_window_line, scrolling_window):
9454	Compare overlay_arrow_bitmap than overlay_arrow_p members.
9455
9456	* fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
9457	rather than from window.
9458	(update_window_fringes): Compare overlay_arrow_bitmap rather than
9459	overlay_arrow_p members.
9460	(Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
9461	if not default.
9462
9463	* window.h (struct window): Remove member overlay_arrow_bitmap.
9464
9465	* window.c (make_window): Don't initialize overlay_arrow_bitmap.
9466
9467	* xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
9468	Calls changed.  Don't check for overlay-arrow-bitmap property here.
9469	(overlay_arrow_at_row): Remove PBITMAP arg.  Instead, if left
9470	fringe is present, return Lisp integer for bitmap (or -1 for default).
9471	Fix value of overlay-arrow-bitmap property to be a symbol, use
9472	lookup_fringe_bitmap to parse it.
9473	(display_line): Change call to overlay_arrow_at_row.  Store integer
9474	return value as overlay bitmap in row rather than window.
9475	Only show overlay arrow if row displays text, or if no other overlay
9476	arrow is seen in window (if overlay marker is at point-max).
9477
94782005-04-18  Thien-Thi Nguyen  <ttn@gnu.org>
9479
9480	* xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
9481
94822005-04-18  Lute Kamstra  <lute@gnu.org>
9483
9484	* lread.c (Vloads_in_progress): Static.
9485	* fns.c (Vloads_in_progress): Remove extern.
9486	(load_in_progress): Add extern.
9487	(Frequire): Use load_in_progress instead of Vloads_in_progress.
9488
94892005-04-18  Thien-Thi Nguyen  <ttn@gnu.org>
9490
9491	* xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
9492
94932005-04-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9494
9495	* macterm.c (XTread_socket): Don't beep on keyboard input even if
9496	no frame is visible.
9497
94982005-04-16  Dan Nicolaescu  <dann@ics.uci.edu>
9499
9500	* term.c (struct keys): Add support for shifted keys.
9501
95022005-04-16  Richard M. Stallman  <rms@gnu.org>
9503
9504	* xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
9505	(set_message): Call with_echo_area_buffer with WHICH = 0.
9506	(set_message_1): Erase the echo area buffer first thing.
9507	(echo_area_display): Don't clear echo_message_buffer.
9508
95092005-04-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9510
9511	* Makefile.in (mac.o): Depend on charset.h and coding.h.
9512
9513	* mac.c: Include charset.h and coding.h.
9514	[TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
9515	[TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
9516	[TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
9517
9518	* macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
9519
9520	* image.c [MAC_OSX] (image_load_quartz2d): Likewise.
9521
9522	* macterm.c (x_autoselect_window_p): Remove variable.
9523	(last_window): New variable.
9524	(XTreassert_line_highlight, x_change_line_highlight):
9525	Remove declarations.
9526	(mac_focus_changed, x_detect_focus_change): New functions and
9527	declarations.
9528	(XTextExtents16, front_emacs_window): Remove function.
9529	(mac_focus_frame): New function.
9530	(XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
9531	(mac_check_for_quit_char): Use it instead of front_emacs_window.
9532	(x_scroll_bar_report_motion): Obtain window from control owner.
9533	(x_make_frame_invisible): Set window manager size hint.
9534	(do_mouse_moved): Remove function.
9535	(XTread_socket): Move its contents here.  Generate select-window
9536	event on mouse movement if needed.  Use x_detect_focus_change on
9537	activate/deactivate events.  Don't deiconify frame or invalidate
9538	window rectangle when dnd items are dropped.
9539	Don't activate/deactivate root control.
9540	(frame_highlight, frame_unhighlight): Activate/deactivate root
9541	control here.
9542	(syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
9543
9544	* macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
9545	New extern.
9546
95472005-04-15  Luc Teirlinck  <teirllm@auburn.edu>
9548
9549	* Makefile.in: Define new macro TOOLTIP_SUPPORT.
9550	(lisp): Use it.
9551	(SOME_MACHINE_LISP): Add tooltip.
9552
95532005-04-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9554
9555	* mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
9556	Don't include TextEncodingConverter.h.
9557	(mac_system_script_code, Vmac_system_locale): New variables.
9558	(syms_of_mac): Defvar them.
9559	(mac_get_system_locale): New function.
9560
9561	* macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
9562	Use ENCODE_SYSTEM to encode title bar string.
9563	(x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
9564	(Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
9565	Use CFStringGetSystemEncoding to get system default string encoding.
9566
9567	* macterm.c [!TARGET_API_MAC_CARBON]: Don't include
9568	TextEncodingConverter.h.
9569
95702005-04-13  Steven Tamm  <steventamm@mac.com>
9571
9572	* macterm.c (syms_of_macterm): Remove redundant definition of
9573	mac-pass-control-to-system.
9574
95752005-04-12  Stefan Monnier  <monnier@iro.umontreal.ca>
9576
9577	* window.c (Fset_window_configuration): Be careful when you choose
9578	among several possible points for the new_current_buffer.
9579
95802005-04-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9581
9582	* keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
9583	poll_for_input_1.  Set interrupt_input_pending to 1 instead.
9584	(Qlanguage_change) [MAC_OS]: New variable.
9585	(syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
9586	(kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
9587
9588	* macterm.c (mac_keyboard_text_encoding)
9589	(current_mac_keyboard_text_encoding): Remove variables.
9590	(XTread_socket): Store language-change event if keyboard script change
9591	is detected.  Don't convert input to `mac_keyboard_text_encoding'.
9592	(syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
9593
9594	* termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
9595
95962005-04-10  Richard M. Stallman  <rms@gnu.org>
9597
9598	* emacs.c (standard_args): Rename --bare-bones to --quick.
9599	Add -D aka --basic-display.
9600
9601	* buffer.c (Fmake_indirect_buffer): Clear out some local variables.
9602
96032005-04-09  Richard M. Stallman  <rms@gnu.org>
9604
9605	* keymap.c (where_is_internal): Convert a string used as event type
9606	into "(any string)".
9607
9608	* lread.c (Vloads_in_progress): Not static.
9609	* fns.c (Vloads_in_progress): Add extern.
9610	(Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
9611
96122005-04-09  Thien-Thi Nguyen  <ttn@surf.glug.org>
9613
9614	* dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
9615
96162005-04-09  Lute Kamstra  <lute@gnu.org>
9617
9618	* print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
9619	within the accessible part of the buffer.
9620
96212005-04-09  Kim F. Storm  <storm@cua.dk>
9622
9623	* lread.c (readevalloop): Add args START and END as region in
9624	current buffer to read.  Callers changed.
9625	When specified, narrow to this region only when reading,
9626	not during eval.  Track next point to read from during eval.
9627	Also restore point to "real" buffer position before eval.
9628	(Feval_region): Don't save excursion and restriction here, and
9629	don't narrow to region.  Just pass region to readevalloop.
9630	Note: Point is now preserved even when PRINTFLAG is nil.
9631
96322005-04-08  Kim F. Storm  <storm@cua.dk>
9633
9634	* xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
9635
96362005-04-06  Kim F. Storm  <storm@cua.dk>
9637
9638	* emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
9639
96402005-04-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9641
9642	* mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
9643	(Fmac_get_preference): Doc fix.
9644
9645	* macfns.c (Fx_create_frame, x_create_tip_frame):
9646	Add "fontset-mac" to fallback font/fontsets.
9647
96482005-04-04  Kim F. Storm  <storm@cua.dk>
9649
9650	* alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
9651
9652	* eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
9653	Call it again after autoload.
9654
96552005-04-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
9656
9657	* alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
9658	mallopt.
9659
9660	* ralloc.c (r_alloc_init): Ditto.
9661
96622005-04-01  Kenichi Handa  <handa@m17n.org>
9663
9664	* lisp.h (Vascii_upcase_table, Vascii_canon_table)
9665	(Vascii_eqv_table): Extern them.
9666
9667	* casetab.c (set_case_table): If standard is nonzero, setup
9668	Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
9669
9670	* search.c (looking_at_1): Use current_buffer->case_canon_table,
9671	not DOWNCASE_TABLE.
9672	(string_match_1): Likewise.
9673	(fast_c_string_match_ignore_case): Use Vascii_canon_table, not
9674	Vascii_downcase_table.
9675	(fast_string_match_ignore_case): Likewise.
9676	(search_buffer): Fix checking of boyer-moore usability.
9677	(boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
9678	No need of tranlating characters in PAT.  Fix calculation of
9679	simple_translate.
9680
96812005-03-31  Stefan Monnier  <monnier@iro.umontreal.ca>
9682
9683	* xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
9684	(x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
9685	Use XtNtopShadowPixel and XtNbottomShadowPixel.
9686	(x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
9687	really work and that breaks with some versions of Xaw3d.
9688
96892005-03-31  Kenichi Handa  <handa@m17n.org>
9690
9691	* coding.c (syms_of_coding): Fix previous change.
9692
96932005-03-30  Stefan Monnier  <monnier@iro.umontreal.ca>
9694
9695	* fileio.c (search_embedded_absfilename): Fix last change.
9696
96972005-03-25  Kenichi Handa  <handa@m17n.org>
9698
9699	* coding.c (syms_of_coding): Suggest to use set-coding-category in
9700	the docstring of coding-category-list.
9701
97022005-03-31  Kim F. Storm  <storm@cua.dk>
9703
9704	* keyboard.c (Qmouse_fixup_help_message): New var.
9705	(syms_of_keyboard): Intern and staticpro it.
9706	(show_help_echo): Apply mouse-fixup-help-message to help string.
9707
97082005-03-30  Kim F. Storm  <storm@cua.dk>
9709
9710	* xdisp.c (display_line): Allow multiple overlay arrows in window.
9711
97122005-03-28  Stefan Monnier  <monnier@iro.umontreal.ca>
9713
9714	* fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
9715	(file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
9716	(Ffile_name_absolute_p): Use it.
9717	(search_embedded_absfilename): New fun, extracted from
9718	Fsubstitute_in_file_name.  Use file_name_absolute_p.
9719	Free the pw data after use.
9720	(Fsubstitute_in_file_name): Use it.
9721	After cutting a prefix, re-check file-name-handler.
9722
97232005-03-26  Lennart Borgman  <lennart.borgman.073@student.lu.se>
9724
9725	* w32term.h (x_output): Add focus_state.
9726
9727	* w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
9728	(w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
9729
97302005-03-25  Stefan Monnier  <monnier@iro.umontreal.ca>
9731
9732	* minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
9733	Use Fexit_minibuffer.
9734	(Fexit_minibuffer): Mark it as no-return, deactivate the mark.
9735
97362005-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
9737
9738	* dired.c (Ffile_attributes): Add a missing gcpro.
9739
9740	* alloc.c (make_number): The arg can be bigger than `int'.
9741	* lisp.h (make_number): Make prototype more precise.
9742
9743	* process.c, dired.c (Vfile_name_coding_system)
9744	(Vdefault_file_name_coding_system):
9745	* callproc.c (Vdoc_file_name, Vfile_name_coding_system)
9746	(Vdefault_file_name_coding_system): Remove unused declarations.
9747
97482005-03-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
9749
9750	* xmenu.c (create_and_show_popup_menu): Just remove menu and return
9751	if it failed to pop up (Gnome "show pointer on ctrl" option makes
9752	menus fail to pop up).
9753
97542005-03-24  Stefan Monnier  <monnier@iro.umontreal.ca>
9755
9756	* xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
9757	Just prepend a backslash without replacing the NBSP by an SPC.
9758
97592005-03-22  Kim F. Storm  <storm@cua.dk>
9760
9761	* xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
9762	* dispextern.h (lookup_derived_face): Fix prototype.
9763	* msdos.c (XMenuActivate): Fix call to lookup_derived_face.
9764
9765	* xdisp.c (handle_single_display_spec): Derive left-fringe and
9766	right-fringe face from fringe face.
9767
9768	* fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
9769	Derive face from fringe face.
9770
97712005-03-22  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
9772
9773	* xrdb.c (x_load_resources): Undo previous change (2005-03-18).
9774
97752005-03-22  David Kastrup  <dak@gnu.org>
9776
9777	* textprop.c (Fnext_char_property_change)
9778	(Fprevious_char_property_change): Allow marker as limit.
9779	(Fnext_single_char_property_change)
9780	(Fprevious_single_char_property_change): Check that limit is a
9781	number in strings.
9782	(Fnext_single_char_property_change): Coerce position to integer.
9783	(Fprevious_single_char_property_change): Same here.
9784
97852005-03-21  Thien-Thi Nguyen  <ttn@gnu.org>
9786
9787	* s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
9788
97892005-03-19  Stefan Monnier  <monnier@iro.umontreal.ca>
9790
9791	* frame.c (Fignore_event): Remove.
9792	(syms_of_frame): Don't defsubr it.
9793
9794	* keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
9795	redundant `ignore-event'.
9796
97972005-03-19  Eli Zaretskii  <eliz@gnu.org>
9798
9799	* unexec.c (write_segment, unexec): Move these functions to avoid
9800	forward references (which cause errors with "gcc -gcoff").
9801
98022005-03-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
9803
9804	* xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
9805	that it doesn't become "tooltip".  The specbind is enough.
9806
9807	* xrdb.c (x_load_resources): Use different char *helv when I18N
9808	is present.
9809
98102005-03-17  Kenichi Handa  <handa@m17n.org>
9811
9812	* coding.c (syms_of_coding): Docstring of coding-category-list fixed.
9813
98142005-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9815
9816	* xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
9817	Use xic_create_fontsetname even for non-Motif menus.
9818	Don't forget to free the fontsetname.
9819
9820	* xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
9821
98222005-03-17  Richard M. Stallman  <rms@gnu.org>
9823
9824	* dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
9825
9826	* fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
9827	(Fmake_symbolic_link): Use G to read the new file name.
9828
9829	* callint.c (Finteractive): Document G option.
9830	(Fcall_interactively): Implement G option.
9831
9832	* buffer.c (buffer_lisp_local_variables): New function,
9833	broken out from Fbuffer_local_variables.
9834	(clone_per_buffer_values): Use buffer_lisp_local_variables.
9835
98362005-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
9837
9838	* xfns.c (xic_create_fontsetname): Add `motif' argument.
9839	Always return a freshly allocated string.
9840	(xic_create_xfontset): Adjust call.
9841
9842	* xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
9843	Use xic_create_fontsetname to create a fontset so utf-8 locales work.
9844	(dump_realized_face): Fix warning.
9845
9846	* emacs.c (Fkill_emacs): YAILOM.
9847
9848	* frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
9849
98502005-03-17  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9851
9852	* mac.c (HASHKEY_TERMINAL): Remove.
9853	(HASHKEY_MAX_NID): New macro.
9854	(xrm_q_get_resource_1): Rename from xrm_q_get_resource.  Add extra
9855	argument.
9856	(xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
9857	(xrm_create_database, xrm_q_put_resource)
9858	(xrm_merge_string_database, xrm_q_get_resource_1)
9859	(xrm_q_get_resource): Change resource database representation so
9860	that it may not use multiple hash tables for a single database.
9861	[TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
9862
98632005-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
9864
9865	* xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
9866
9867	* coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
9868	locale-coding-system, as was already done for WINDOWSNT.
9869
9870	* keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
9871	translation for chars in the 0-255 range.
9872
98732005-03-16  Lute Kamstra  <lute@gnu.org>
9874
9875	* floatfns.c (Ffloor): Doc fix.
9876
98772005-03-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9878
9879	* mac.c: Include macterm.h instead of directly including Carbon.h.
9880	[TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
9881	(Qarray, Qdictionary): New variables.
9882	(syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
9883	[TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
9884	[TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
9885	[TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
9886	in callback for CFDictionaryApplyFunction.
9887	[TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
9888	(cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
9889	(cfobject_desc_to_lisp, cfdictionary_add_to_list)
9890	(cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
9891	[TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
9892	(syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
9893	(P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
9894	(skip_white_space, parse_comment, parse_include_file)
9895	(parse_binding, parse_component, parse_resource_name, parse_value)
9896	(parse_resource_line, xrm_create_database, xrm_q_put_resource)
9897	(xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
9898	(xrm_cfproperty_list_to_value, xrm_get_preference_database):
9899	New functions.
9900
9901	* macfns.c (mac_get_rdb_resource): Remove function.
9902	(x_get_string_resource): Use xrm_get_resource.
9903
9904	* macgui.h (XrmDatabase): Typedef to Lisp_Object.
9905
9906	* macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
9907	name_list_element.
9908	(mac_make_rdb): Create resource database from preferences and
9909	argument string.
9910	(mac_term_init): Save resource database to cddr part of
9911	name_list_element.
9912
9913	* macterm.h (xrm_merge_string_database, xrm_get_resource)
9914	(xrm_get_preference_database): Add externs.
9915	[TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
9916	(cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
9917	(cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
9918
9919	* process.c (init_process): Change `#ifdef DARWIN' to `#if
9920	defined (DARWIN) || defined (MAC_OSX)'
9921
9922	* s/darwin.h (DARWIN): Don't define.
9923
99242005-03-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9925
9926	* macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
9927	Remove unused variables.
9928	(syms_of_macfns): Don't initialize them.  Likewise for
9929	Qface_set_after_frame_default.  Defvar and initialize
9930	Vx_window_horizontal_drag_shape.
9931	(x_set_mouse_color): Change mouse pointer shape.
9932	(mac_window) [!MAC_OSX]: Create root control.
9933	(Fx_create_frame): Remove initializations of mouse pointer shapes.
9934	(hourglass_started): New function (from xfns.c).
9935	(start_hourglass, cancel_hourglass): Put function body in #ifdef
9936	MAC_OSX.
9937	(show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
9938	indicator for each non-tooltip frame if needed, and show it.
9939	(hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
9940
9941	* macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
9942	Controls.h.  Use ThemeCursor instead of CursHandle.
9943
9944	* macterm.c (activate_scroll_bars, deactivate_scroll_bars):
9945	Remove functions and declarations.
9946	(mac_set_colors): Take argument for saving background color.
9947	All callers changed.
9948	(XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
9949	(mac_draw_rectangle, mac_draw_string_common): Save and Restore
9950	background color.
9951	(x_update_end, mac_do_track_drag): Don't reset background color.
9952	(mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
9953	Use SetThemeCursor.
9954	(x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
9955	indicator control to the upper-right corner of the window.
9956	(arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
9957	(do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
9958	(do_window_update): Update controls after updating content area.
9959	(mac_handle_window_event): Remove unused extern.
9960	(XTread_socket): Check both control handle and control part code
9961	to determine whether a scroll bar is clicked.  Activate/deactivate
9962	root control instead of contained scroll bar controls.
9963	(make_mac_terminal_frame): Use ThemeCursor constants.
9964
9965	* macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
9966	New member hourglass_control.
9967	(HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
9968	(activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
9969
99702005-03-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9971
9972	* macterm.c (keycode_to_xkeysym_table): Change mapping so that it
9973	coincides with that in Apple X11 except `clear', `enter' on
9974	laptops, and fn + `enter' on laptops.
9975
99762005-03-12  Stefan Monnier  <monnier@iro.umontreal.ca>
9977
9978	* xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
9979	(list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
9980	(digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
9981
9982	* xfns.c (xic_defaut_fontset): New constant.
9983	(xic_create_fontsetname): New function.
9984	Extracted from create_frame_xic.  Try to generate a slightly
9985	better fontset.
9986	(xic_create_xfontset): Use it.
9987	(create_frame_xic): Simplify.
9988
99892005-03-11  Stefan Monnier  <monnier@iro.umontreal.ca>
9990
9991	* fileio.c (Fmake_symbolic_link): Fix last change.
9992
99932005-03-11  Richard M. Stallman  <rms@gnu.org>
9994
9995	* fileio.c (Frename_file, Fadd_name_to_file)
9996	(Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
9997	expand the basename of FILE relative to it.
9998
99992005-03-11  Kenichi Handa  <handa@m17n.org>
10000
10001	* fileio.c (Finsert_file_contents): Call Fcheck_coding_system
10002	before calling setup_coding_system so that autoloading of a coding
10003	system work.
10004
100052005-03-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10006
10007	* xfns.c (hourglass_started): New function.
10008
10009	* dispextern.h: Declare hourglass_started.
10010
10011	* keyboard.c (Fexecute_extended_command): Restart hourglass
10012	after call to Fcompleting_read if already started.
10013
10014	* gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
10015	GTK main loop is entered in xterm.c, thus doing the redraw.
10016
100172005-03-10  Kim F. Storm  <storm@cua.dk>
10018
10019	* xdisp.c (pos_visible_p): Fix X value in last line of buffer.
10020
100212005-03-08  Kenichi Handa  <handa@m17n.org>
10022
10023	* frame.c (x_set_font): Call set_default_ascii_font if an
10024	available font is found.
10025
10026	* fontset.c (set_default_ascii_font): New function.
10027	(syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
10028
10029	* fontset.h (set_default_ascii_font): Extern it.
10030
100312005-03-07  Kim F. Storm  <storm@cua.dk>
10032
10033	* xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
10034	(clear_image_cache_count): New var.
10035	(redisplay_internal): Don't clear face and image caches in the
10036	middle of redisplay; do it afterwards.
10037
10038	* blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
10039
10040	* xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
10041	is valid.  If not, clear phys_cursor_on_p and return.
10042
100432005-03-07  Andreas Schwab  <schwab@suse.de>
10044
10045	* blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
10046
100472005-03-06  Richard M. Stallman  <rms@gnu.org>
10048
10049	* keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
10050
10051	* eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
10052	(Feval, Ffuncall): Use CHECK_CONS_LIST.
10053
10054	* lisp.h (CHECK_CONS_LIST): New macro (two definitions).
10055
10056	* blockinput.h (UNBLOCK_INPUT_TO): New macro.
10057	(TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
10058
100592005-03-05  Juri Linkov  <juri@jurta.org>
10060
10061	* emacs.c (USAGE1): Replace Info node name "command arguments"
10062	with "emacs invocation".
10063	(USAGE3): Fix usage of `--color=MODE' which actually doesn't
10064	allow arguments `--color' and `MODE' to be separated by space.
10065	Add --no-blinking-cursor, -nbc.
10066	(standard_args): Add -nbc, --no-blinking-cursor.
10067
100682005-03-04  Thien-Thi Nguyen  <ttn@gnu.org>
10069
10070	* s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
10071	* s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
10072	* fileio.c (Fexpand_file_name) [VMS]:
10073	Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
10074	* doc.c (munge_doc_file_name) [VMS]: Likewise.
10075	(Fsnarf_documentation): Call munge_doc_file_name.
10076
100772005-03-04  Thien-Thi Nguyen  <ttn@gnu.org>
10078
10079	* s/vms.h (FILE_SYSTEM_CASE): New macro.
10080	* fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
10081	"manually"; this is now handled generally via FILE_SYSTEM_CASE.
10082
100832005-03-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10084
10085	* emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
10086	defined (MAC_OSX) && defined (HAVE_CARBON)'.
10087
10088	* image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
10089
10090	* mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
10091	[!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
10092	(posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
10093	(mac_clear_font_name_table): Move extern to macterm.h.
10094
10095	* macfns.c (install_window_handler): Move extern to macterm.h.
10096	(Fx_file_dialog): Check STRINGP (default_filename) to see it is
10097	valid.  Don't check !NILP (dir) because it is already checked with
10098	CHECK_STRING.
10099	(Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
10100	specifying the default location and obtaining the selected filename.
10101
10102	* macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
10103
10104	* macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
10105	are included via Carbon.h.
10106
10107	* macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
10108	Define USE_CARBON_EVENTS to 1.
10109	(qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
10110	(x_free_frame_resources): Call remove_window_handler for
10111	non-tooltip windows.
10112	[TARGET_API_MAC_CARBON]: Don't include headers that are included
10113	via Carbon.h.
10114	[TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
10115	(mac_do_receive_dragUPP): New variables.
10116	(mac_handle_service_event, init_service_handler): Put declarations
10117	and definitions in #ifdef MAC_OSX.
10118	(install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
10119	drag-and-drop handler functions and register them.
10120	(remove_window_handler): New function.
10121	(do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
10122	Use fsspec_to_posix_pathname.
10123	(main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
10124	(XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
10125	[MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
10126	Set default cursors.
10127	(mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
10128	init_service_handler or init_quit_char_handler.
10129	(mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
10130
10131	* macterm.h (install_window_handler, remove_window_handler)
10132	(posix_pathname_to_fsspec, fsspec_to_posix_pathname)
10133	(mac_clear_font_name_table): New externs.
10134
101352005-03-03  Thien-Thi Nguyen  <ttn@gnu.org>
10136
10137	* fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
10138	(Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
10139	(Fexpand_file_name): Likewise.
10140
101412005-03-03  Thien-Thi Nguyen  <ttn@gnu.org>
10142
10143	* emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
10144	no longer special-case VMS.  Add bogus return value.
10145
101462005-03-02  Kim F. Storm  <storm@cua.dk>
10147
10148	* dispextern.h (XASSERTS): Define to 0 if not already defined.
10149	(xassert) [!XASSERTS]: Define dummy version.
10150
101512005-03-02  Kim F. Storm  <storm@cua.dk>
10152
10153	* xdisp.c (redisplay_window): YABX (yet another bogus xassert).
10154	Reported by David Kastrup.
10155
101562005-03-01  Ehud Karni  <ehud@unix.mvs.co.il>
10157
10158	* xdisp.c (get_next_display_element): Fix control and escape
10159	glyph from display vector.
10160
101612005-03-01  Stefan Monnier  <monnier@iro.umontreal.ca>
10162
10163	* keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
10164
101652005-02-27  Richard M. Stallman  <rms@gnu.org>
10166
10167	* xdisp.c (fast_find_position): Rename END to BEG.
10168	(syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
10169
101702005-02-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10171
10172	* gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
10173	gtk_window_resize and x_wm_set_size_hint.
10174
101752005-02-25  Kim F. Storm  <storm@cua.dk>
10176
10177	* dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
10178
10179	* xdisp.c (init_from_display_pos): Don't read past end of
10180	it->overlay_strings array.
10181
101822005-02-25  Stephan Stahl  <stahl@eos.franken.de>  (tiny change)
10183
10184	* buffer.c (syms_of_buffer): Fix typo.
10185
101862005-02-23  Lute Kamstra  <lute@gnu.org>
10187
10188	* buffer.c (Foverlay_buffer): Doc fix.
10189
101902005-02-22  Kim F. Storm  <storm@cua.dk>
10191
10192	* minibuf.c (Ftry_completion, Fall_completions): Allow both string
10193	and symbol keys in alists and hash tables.
10194
10195	* xdisp.c (fast_find_position): Fix search for start of overlay.
10196
101972005-02-21  Kim F. Storm  <storm@cua.dk>
10198
10199	* window.c (window_scroll_pixel_based): When scrolling backwards,
10200	handle partial visible line at end of window even when we hit PT.
10201
102022005-02-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10203
10204	* keymap.h: Declare Fcurrent_active_maps, used in doc.c.
10205
102062005-02-21  Kim F. Storm  <storm@cua.dk>
10207
10208	* xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
10209	I think those asserts are bogus if buffer contains invisible text
10210	or images.
10211
102122005-02-21  David Kastrup  <dak@gnu.org>
10213
10214	* gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
10215
102162005-02-20  Kim F. Storm  <storm@cua.dk>
10217
10218	* xdisp.c (pos_visible_p): Be sure to move to the specified
10219	position.  Always get the full ascent / descent of the
10220	corresponding row, to return reliable rtop and rbot values.
10221	(back_to_previous_visible_line_start): Fix 2005-01-18 change.
10222	Must look one character back, as back_to_previous_line_start
10223	returns position after the newline.
10224	(move_it_vertically_backward): Fix heuristic for when to move further
10225	back in case line_height * 2/3 is larger than window height.
10226	(cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
10227	as it does not do anything anymore.  Add arg current_matrix_p to
10228	use current matrix rather than desired matrix when set.
10229	(try_cursor_movement): Don't scroll to make cursor row fully
10230	visible if cursor didn't move.  This avoids unexpected recentering
10231	in case of blinking cursor or accepting process output.
10232	Use current matrix to check cursor row visibility.
10233	(redisplay_window): Fix whether to recenter or move to top in case
10234	cursor line is taller than window height.
10235	(find_first_unchanged_at_end_row): Stop search if we reach a row
10236	which not enabled (instead of abort).
10237
102382005-02-18  Kim F. Storm  <storm@cua.dk>
10239
10240	* xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
10241	to be nil in a :box attribute value list; customize prints that
10242	as lisp value when no box color is specified.
10243
10244	* .gdbinit (pitx, pit): Pretty print display iterator.
10245	(prowx, prow): Pretty print glyph row.
10246	(pcursorx, pcursor): Pretty print a window cursor.
10247	(pwinx, pwin): Pretty print struct window.
10248
102492005-02-18  Stefan Monnier  <monnier@iro.umontreal.ca>
10250
10251	* alloc.c (BLOCK_BYTES): Harmless typo.
10252
102532005-02-17  Andreas Schwab  <schwab@suse.de>
10254
10255	* xfns.c (hack_wm_protocols): Use correct type for last parameter
10256	of XGetWindowProperty to avoid aliasing issues.
10257	(Fx_window_property): Likewise.
10258
10259	* xselect.c (Fx_disown_selection_internal): Use union of struct
10260	input_event and struct selection_input_event to avoid aliasing issues.
10261
10262	* xterm.c (handle_one_xevent): Use union of struct input_event and
10263	struct selection_input_event to avoid aliasing issues.
10264	(SET_SAVED_MENU_EVENT): Adapt reference to inev.
10265
102662005-02-17  Kim F. Storm  <storm@cua.dk>
10267
10268	* dispextern.h (enum it_method): New enum.
10269	(GET_FROM_*): Its members.
10270	(struct it): Change member method from function pointer to enum.
10271
10272	* xdisp.c (check_it, init_from_display_pos, handle_stop)
10273	(setup_for_ellipsis, handle_single_display_spec)
10274	(handle_composition_prop, next_overlay_string)
10275	(get_overlay_strings, reseat_1, reseat_to_string)
10276	(next_element_from_ellipsis, BUFFER_POS_REACHED_P)
10277	(in_display_vector_p, display_line, get_next_display_element):
10278	Change it->method from function pointer to enum.
10279	(get_next_element): New array to map it->method to function.
10280	(get_next_display_element): Use it.
10281	(set_iterator_to_next): Use switch instead of if/else chain.
10282
102832005-02-15  Benjamin Riefenstahl  <Benjamin.Riefenstahl@epost.de>
10284
10285	* w32select.c: Summary: Thorough rework to implement Unicode
10286	clipboard operations and delayed rendering.
10287
10288	Drop last_clipboard_text and related code, keep track of
10289	ownership via clipboard_owner instead.  Drop old #if0 sections.
10290
10291	(DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
10292	(clipboard_owner, modifying_clipboard, cfg_coding_system)
10293	(cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
10294	(current_coding_system, current_requires_encoding)
10295	(current_num_nls, current_clipboard_type, current_lcid):
10296	New static variables.
10297
10298	(convert_to_handle_as_ascii, convert_to_handle_as_coded)
10299	(render, render_all, run_protected, lisp_error_handler)
10300	(owner_callback, create_owner, setup_config)
10301	(enum_locale_callback, cp_from_locale, coding_from_cp):
10302	New local functions.
10303
10304	(term_w32select, globals_of_w32select): New global functions.
10305
10306	(Fw32_set_clipboard_data): Ignore parameter FRAME, use
10307	clipboard_owner instead.  Use delayed rendering and provide
10308	all text formats.  Provide CF_LOCALE if necessary.
10309
10310	(Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
10311	CF_LOCALE.  Fall back to CF_TEXT, if CF_UNICODETEXT is not
10312	available.  Force DOS line-ends for decoding.
10313
10314	(Fx_selection_exists_p): Handle CF_UNICODETEXT.
10315
10316	(syms_of_w32select): Init and register new variables.
10317
10318	* w32.h: Add prototypes for globals_of_w32select and
10319	term_w32select.  Make the neighboring K&R declarations into
10320	prototypes, too.
10321
10322	* emacs.c: Include w32.h to get function prototypes.
10323	(main): Call globals_of_w32select.
10324
10325	* w32.c (term_ntproc): Call term_w32select.
10326
10327	* s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
10328
103292005-02-16  Kim F. Storm  <storm@cua.dk>
10330
10331	* xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
10332	at end of display vector.
10333
103342005-02-15  Richard M. Stallman  <rms@gnu.org>
10335
10336	* xdisp.c (get_next_display_element): Fix escape-glyph criterion
10337	for mode and header lines.
10338
10339	* lread.c (syms_of_lread) <user-init-file>: Doc fix.
10340
10341	* keymap.h (describe_map_tree): Change decl.
10342
10343	* keyboard.c (command_loop_1): Always use safe_run_hooks
10344	to run Qdeferred_action_function.
10345
10346	* keymap.c (describe_map_tree): New arg MENTION_SHADOW.  Calls changed.
10347	(describe_map, describe_vector): Likewise.  When it's 1,
10348	don't omit shadowed bindings, instead mark them as shadowed.
10349
10350	* doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
10351	for describe_map_tree.  Pass 1 for MENTION_SHADOW.
10352
10353	* data.c (Fsetq_default): Allow no arg case.
10354
103552005-02-14  Kenichi Handa  <handa@m17n.org>
10356
10357	* coding.c (encode_coding_string): Always return a unibyte string.
10358	If NOCOPY is nonzero and there's no need of encoding, make STR
10359	unibyte directly.
10360
10361	* xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
10362	multibyte string, signal an error instead of aborting.
10363
103642005-02-12  Dan Nicolaescu  <dann@ics.uci.edu>
10365
10366	* keyboard.c: If HAVE_FCNTL_H include fcntl.h.
10367
103682005-02-12  Kim F. Storm  <storm@cua.dk>
10369
10370	* xdisp.c (expose_window): Don't fix overlaps for mode lines.
10371
103722005-02-10  Kim F. Storm  <storm@cua.dk>
10373
10374	* xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
10375	if it moves outside window or it doesn't display text.
10376
103772005-02-09  Kim F. Storm  <storm@cua.dk>
10378
10379	* undo.c (Fprimitive_undo): Check that undo function does not
10380	switch buffer.
10381
103822005-02-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10383
10384	* xselect.c (selection_data_to_lisp_data): For the special case
10385	type == XA_ATOM, data contains array of int, not array of Atom.
10386	(x_property_data_to_lisp, selection_data_to_lisp_data):
10387	Comment update: data must be array of int for format == 32.
10388
103892005-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>
10390
10391	* undo.c (Fprimitive_undo): Check veracity of delta,start,end.
10392
103932005-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10394
10395	* xfns.c (Fx_change_window_property): Use long array when format is 32.
10396	(Fx_window_property): If format is 32 and long is bigger than 32 bits,
10397	convert long array returned from XGetWindowProperty to an int array.
10398	(x_set_tool_bar_lines): Check that width and height is greater than
10399	zero before clearing area.
10400
10401	* xselect.c (x_reply_selection_request): Pass long array to
10402	XChangeProperty so that 64 bit longs are handeled correctly.
10403	(x_get_window_property): If format is 32 and long is bigger than 32
10404	bits convert data from XGetWindowProperty from long array to int array.
10405	(lisp_data_to_selection_data): When the input is a vector and the
10406	format is 32, allocate a long array even if long is bigger than 32 bits.
10407	(x_fill_property_data): Use char, short and long as the man page
10408	for XChangeProperty specifies.  This way the data returned is OK for
10409	both 32 and 64 bit machines.
10410	(x_handle_dnd_message): Calculate size correctly even for 64 bit
10411	machines.
10412	(Fx_send_client_event): Undo change from 2005-02-05,
10413	x_fill_property_data now handles that case.
10414
10415	* xfns.c (Fx_backspace_delete_keys_p): Add comment about the
10416	reason for the approach in the code.
10417
104182005-02-07  Kim F. Storm  <storm@cua.dk>
10419
10420	* undo.c (Fprimitive_undo): Record max one dummmy apply element.
10421
104222005-02-06  Richard M. Stallman  <rms@gnu.org>
10423
10424	* eval.c (Frun_hook_with_args)
10425	(Frun_hook_with_args_until_success)
10426	(Frun_hook_with_args_until_failure): Doc fixes.
10427
104282005-02-05  Andreas Schwab  <schwab@suse.de>
10429
10430	* sysdep.c (sys_subshell): Properly terminate execlp argument list.
10431
104322005-02-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10433
10434	* xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
10435	the longs in a XClientMessageEvent correctly when long is 64 bits.
10436
104372005-02-05  Eli Zaretskii  <eliz@gnu.org>
10438
10439	* xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
10440	instead of HAVE_X_WINDOWS, for non-X windowed sessions.
10441
104422005-02-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10443
10444	* xmenu.c (menubar_selection_callback): Force out GTK buffered
10445	events so the menu event comes after them.  This is to prevent sit-for
10446	from exiting on buffered events directly after a menu selection,
10447	lisp code for Help => About Emacs uses sit-for.
10448
10449	* gtkutil.c (create_menus): Connect selection-done event instead of
10450	the deactivate event to deactivate_cb.  This will make the last
10451	leave event come before the call to deactivate_cb, so the leave
10452	event does not make sit-for exit after a menu selection.
10453
104542005-02-03  Kim F. Storm  <storm@cua.dk>
10455
10456	* dispnew.c (build_frame_matrix_from_leaf_window)
10457	 [!GLYPH_DEBUG]: Fix xassert.
10458
10459	* xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
10460
10461	* xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
10462
104632005-02-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10464
10465	* mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
10466	the compiling OS version.
10467
10468	* macfns.c (x_create_tip_frame): Likewise.
10469
10470	* macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
10471
104722005-02-03  Richard M. Stallman  <rms@gnu.org>
10473
10474	* xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
10475
10476	* xdisp.c (echo_area_display): Clear echo_message_buffer.
10477
10478	* buffer.c (Fbury_buffer): Doc fix.
10479
104802005-02-02  Steven Tamm  <steventamm@mac.com>
10481
10482	* macfns.c (unwind_create_frame): Fix compile error due to
10483	xassert being uncondition, but predicate is.
10484	* dispnew.c (update_window): Fix compile error due to
10485	xassert being uncondition, but predicate is.
10486
104872005-02-02  Miles Bader  <miles@gnu.org>
10488
10489	* dispextern.h (xassert): Enable unconditionally.
10490
104912005-02-02  Kim F. Storm  <storm@cua.dk>
10492
10493	* undo.c (Fprimitive_undo): Fix dummy apply undo entry.
10494
104952005-02-02  Kenichi Handa  <handa@m17n.org>
10496
10497	* casefiddle.c (casify_object): Enable changing characters of
10498	different byte length.
10499	(casify_region): Fix loop condition, args to replace_range_2, and
10500	update opoint_byte.
10501
10502	* insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
10503
105042005-02-01  Kim F. Storm  <storm@cua.dk>
10505
10506	* xdisp.c (back_to_previous_visible_line_start): Reset iterator
10507	stack before calling handle_display_prop.
10508
105092005-01-31  Kim F. Storm  <storm@cua.dk>
10510
10511	* undo.c (Qapply): New lisp var.
10512	(syms_of_undo): Intern and staticpro it.
10513	(Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
10514	(apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
10515
10516	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
10517
105182005-01-30  Jesper Harder  <harder@phys.au.dk>
10519
10520	* macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
10521	<mac-emulate-three-button-mouse>: Fix docstring indentation.
10522
105232005-01-29  Luc Teirlinck  <teirllm@auburn.edu>
10524
10525	* undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
10526	Increase value to 3 Meg.
10527
105282005-01-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10529
10530	* xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
10531	button events are not received otherwise.
10532
105332005-01-29  Richard M. Stallman  <rms@gnu.org>
10534
10535	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
10536
10537	* undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
10538
105392005-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>
10540
10541	* keymap.c (access_keymap): YAILOM.
10542
105432005-01-27  Kim F. Storm  <storm@cua.dk>
10544
10545	* xdisp.c (get_phys_cursor_geometry): New function to calculate
10546	phys cursor position and size for hollow cursor.  Position is
10547	aligned with get_glyph_string_clip_rect and ensures that a hollow
10548	cursor is shown, even when the actual glyph is not visible.
10549
10550	* dispextern.h (get_phys_cursor_geometry): Add prototype.
10551
10552	* xterm.c (x_clip_to_row): Ensure y >= 0.
10553	(x_draw_hollow_cursor): Use get_phys_cursor_geometry.
10554
10555	* w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
10556
10557	* macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
10558
105592005-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>
10560
10561	* xterm.c (x_error_quitter): Add a prototype.  Make it static again.
10562
105632005-01-27  Kim F. Storm  <storm@cua.dk>
10564
10565	* xdisp.c (get_glyph_string_clip_rect): Always show a cursor
10566	glyph, even when row is only partially visible and actual cursor
10567	position is not visible.
10568
105692005-01-24  Richard M. Stallman  <rms@gnu.org>
10570
10571	* xterm.c (x_error_quitter): No longer static, and moved after
10572	x_error_handler.
10573
105742005-01-24  Kim F. Storm  <storm@cua.dk>
10575
10576	* xdisp.c (move_it_by_lines): If we move forward after going too
10577	far back, cancel move if end position is same as start position.
10578
105792005-01-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10580
10581	* dispextern.h (struct glyph_string): New members clip_head and
10582	clip_tail.
10583
10584	* xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
10585	region to the area between clip_head and clip_tail.
10586	(draw_glyphs): Record the area that need to be actually redrawn to
10587	the new variables clip_head and clip_tail when there are
10588	overhangs.  Set values of these variables to the corresponding
10589	members in struct glyph_string.  Refine x coordinates for
10590	notice_overwritten_cursor using clip_head and clip_tail.
10591
10592	* macgui.h (STORE_XCHARSETSTRUCT): New macro.
10593
10594	* macterm.c (mac_compute_glyph_string_overhangs): Implement with
10595	QDTextBounds.
10596	(x_draw_glyph_string): Don't fill the background of the successor
10597	of a glyph with a right overhang if the successor will draw a cursor.
10598	(XLoadQueryFont): Obtain font metrics using QDTextBounds.
10599	(x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
10600
106012005-01-24  Kim F. Storm  <storm@cua.dk>
10602
10603	* window.c (window_scroll_pixel_based): Fix scrolling in the wrong
10604	direction if window height was smaller than next-screen-context-lines.
10605	Now always scroll at least one line in the requested direction.
10606	Ensure that we actually do scroll backwards when requested to do so.
10607
10608	* xdisp.c (redisplay_window): Only try to make cursor line fully
10609	visible once (to avoid redisplay loop).
10610
106112005-01-23  Kim F. Storm  <storm@cua.dk>
10612
10613	* window.c (Fpos_visible_in_window_p): Simplify return value for
10614	partially visible rows.
10615	(window_scroll_pixel_based): Adapt to that change.
10616
10617	* window.c (window_scroll_pixel_based): Force moving to next line
10618	if scrolling doesn't move start point, e.g. if looking at tall image.
10619
10620	* xdisp.c (pos_visible_p): Return 0 if non-interactive.
10621	Clear last_height before calling line_bottom_y to get real height.
10622	Fix calculation of y.
10623
106242005-01-22  Steven Tamm  <steventamm@mac.com>
10625
10626	* s/darwin.h: Removed PTY_ITERATION from here.
10627	(DARWIN): Define.
10628
10629	* process.c (init_process): Default process-connection-type to
10630	nil on darwin 6 or less, t if it is 7 or higher.  This way the
10631	broken pty behavior is still allowed on darwin 6 for interactive
10632	processes for people that know what they are doing.
10633
106342005-01-22  Kim F. Storm  <storm@cua.dk>
10635
10636	* window.c (auto_window_vscroll_p): New boolean.
10637	(syms_of_window): DEFVAR_BOOL it.
10638	(Fpos_visible_in_window_p): Extend return value to include RTOP
10639	and RBOT values if FULLY is nil.
10640	(window_scroll_pixel_based): Adjust vscroll for partially visible
10641	rows if auto_window_vscroll_p is set.
10642	(Fset_window_vscroll): Do nothing if vscroll is not modified.
10643
10644	* xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
10645	to return number of partially invisible pixels at top and bottom
10646	of the dislay row at POS.
10647
10648	* lisp.h (pos_visible_p): Fix prototype.
10649
106502005-01-21  Richard M. Stallman  <rms@gnu.org>
10651
10652	* fileio.c (Fcopy_file): Doc fix.
10653
106542005-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10655
10656	* gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
10657	(xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
10658	start of function for older compilers.
10659
106602005-01-20  Richard M. Stallman  <rms@gnu.org>
10661
10662	* editfns.c (Fmessage): If arg is "", return "" (as before).
10663
10664	* keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
10665
10666	* .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
10667	variable.
10668
106692005-01-20  Steven Tamm  <steventamm@mac.com>
10670
10671	* editfns.c (Voperating_system_release): Add.
10672	(init_editfns): Assign new variable operating-system-release
10673	based on call to uname if available.
10674	(get_operating_system_release): Add function to
10675	allow c-level access to operating system release.
10676
10677	* config.h: Regenerated.
10678
10679	* s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
10680	(MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
10681	using ptys as '7'.
10682
106832005-01-20  Kim F. Storm  <storm@cua.dk>
10684
10685	* alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
10686
10687	* xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
10688	Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
10689
10690	* macterm.c (x_draw_glyph_string_box): Likewise.
10691
10692	* w32term.c (x_draw_glyph_string_box): Likewise.
10693
10694	* indent.c (Fvertical_motion): Temporarily disable selective display.
10695
106962005-01-19  Kim F. Storm  <storm@cua.dk>
10697
10698	* xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
10699	image property.
10700
10701	* fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
10702
107032005-01-18  Kim F. Storm  <storm@cua.dk>
10704
10705	* xdisp.c (fast_find_position): Backtrack to find first row if
10706	charpos is inside a display overlay that spans multiple lines.
10707
107082005-01-18  Kenichi Handa  <handa@m17n.org>
10709
10710	* coding.c (decode_coding_iso2022): Translate invalid codes if
10711	translation-table is specified.
10712
107132005-01-18  Kim F. Storm  <storm@cua.dk>
10714
10715	* xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
10716	change.  If handle_display_prop indicates newline is replaced by
10717	image or text, move back to start of relevant overlay or interval
10718	and continue scan from there.  Simplify.
10719
107202005-01-17  Kim F. Storm  <storm@cua.dk>
10721
10722	* dispnew.c (mode_line_string, marginal_area_string):
10723	Fix off-by-one error in search for glyph.
10724
107252005-01-16  Kim F. Storm  <storm@cua.dk>
10726
10727	* macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
10728
107292005-01-16  Steven Tamm  <steventamm@mac.com>
10730
10731	* macterm.c (mac_to_x_fontname): Remove spurious argument.
10732
107332005-01-16  Andreas Schwab  <schwab@suse.de>
10734
10735	* macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
10736
107372005-01-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10738
10739	* fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
10740	fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
10741
107422005-01-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10743
10744	* keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
10745	(READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
10746	New flags for readable_events.
10747	(get_filtered_input_pending, readable_filtered_events): Remove.
10748	(tracking_off): Call readable_events and get_input_pending with
10749	flag READABLE_EVENTS_DO_TIMERS_NOW.
10750	(readable_events): Move code from old readable_filtered_events here,
10751	but check new READABLE_EVENTS_* in argument flags instead of previous
10752	two boolean arguments do_timers_now and filter_events.
10753	If we are doing mouse tracking and the mouse moved, return only if
10754	READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
10755	(swallow_events): Call get_input_pending with flag
10756	READABLE_EVENTS_DO_TIMERS_NOW.
10757	(get_input_pending): Move code from old get_filtered_input_pending
10758	here.  Replace boolean arguments do_timers_now, filter_events with
10759	flags, and pass flags to readable_events.  Document new
10760	READABLE_EVENTS_* flags.
10761	(detect_input_pending_ignore_squeezables): New function.
10762	(detect_input_pending_run_timers): Call get_input_pending with flag
10763	READABLE_EVENTS_DO_TIMERS_NOW.
10764	(Finput_pending_p): Call get_input_pending with flags
10765	READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
10766
10767	* dispnew.c (update_window, update_frame_1): Replace calls to
10768	detect_input_pending with detect_input_pending_ignore_squeezables
10769	so that redisplay is not paused if the event queue contains only
10770	mouse movements.
10771
10772	* lisp.h: Declare detect_input_pending_ignore_squeezables.
10773
107742005-01-15  Steven Tamm  <steventamm@mac.com>
10775
10776	* macterm.c (Vmac_use_core_graphics): Declare variable for
10777	mac-allow-anti-aliasing.
10778	(syms_of_macterm): DEFVAR_LISP and initialize it.
10779	(mac_draw_string_common): Use core graphics text rendering if
10780	mac-allow-anti-aliasing is enabled.
10781
10782	* macfns.c (Fx_file_dialog): Save As dialog includes only the
10783	file name in the text box.
10784
107852005-01-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10786
10787	* macfns.c (x_set_foreground_color, x_set_background_color):
10788	Sync with xfns.c.
10789	(mac_window, x_create_tip_frame): Use XSetWindowBackground.
10790	* macterm.c (XSetBackground, XSetWindowBackground): New functions.
10791	* macterm.h (XSetBackground, XSetWindowBackground): Add externs.
10792
107932005-01-14  Kim F. Storm  <storm@cua.dk>
10794
10795	* keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
10796
107972005-01-13  Richard M. Stallman  <rms@gnu.org>
10798
10799	* keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
10800	if Voverriding_terminal_local_map is non-nil.
10801
10802	* keyboard.c (syms_of_keyboard): Doc fix.
10803
108042005-01-13  Kim F. Storm  <storm@cua.dk>
10805
10806	* xdisp.c (Fformat_mode_line): Fix last change.  Remove NO_PROPS arg
10807	(specify 0 for FACE instead).  Reorder arg list.  Doc fix.
10808
108092005-01-12  Richard M. Stallman  <rms@gnu.org>
10810
10811	* xdisp.c (Fformat_mode_line): New arg FACE specifies a default
10812	face property for characters that don't specify one.
10813
10814	* fns.c (Frequire): Record in load-history unconditionally.
10815
108162005-01-10  Kim F. Storm  <storm@cua.dk>
10817
10818	* dispextern.h (merge_faces): Rename from merge_into_realized_face.
10819
10820	* xfaces.c (merge_faces): Rename from merge_into_realized_face.
10821	Callers changed.
10822	Add support to merge with lisp face id too (if face_name is t).
10823
10824	* xdisp.c (get_next_display_element, next_element_from_display_vector):
10825	Don't lookup lface_id from display table glyphs here; instead use
10826	merge_faces to merge the lisp face id into current face.
10827
108282005-01-09  Kim F. Storm  <storm@cua.dk>
10829
10830	* dispextern.h (struct it): New member dpvec_face_id.
10831	(merge_into_realized_face): Add prototype.
10832
10833	* xfaces.c (merge_into_realized_face): New function.  Used to
10834	merge escape-glyph face or face from display table into current face.
10835
10836	* xdisp.c (Vshow_nonbreak_escape): New lisp var.
10837	(syms_of_xdisp): DEFVAR_LISP it.
10838	(escape_glyph_face): Remove var.
10839	(redisplay_window): Don't initialize it.
10840	(setup_for_ellipsis, get_next_display_element):
10841	Set it->dpvec_face_id to -1.
10842	(get_next_display_element): Test Vshow_nonbreak_escape.
10843	Do not setup escape_glyph_face.
10844	Properly merge escape-glyph face or face from display table with
10845	current face for escape and control characters.
10846	Set it->dpvec_face_id to relevant face id instead of adding it to each
10847	element of display vector.
10848	(next_element_from_display_vector): If it->dpvec_face_id is set,
10849	use that instead of lface_id from glyph itself.
10850
108512005-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10852
10853	* xterm.h (struct x_output): New member, toolbar_detached.
10854
10855	* gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
10856	38.
10857	(xg_tool_bar_detach_callback): Set toolbar_detached to 1.
10858	(xg_tool_bar_attach_callback): Set toolbar_detached to 0.
10859	(xg_create_tool_bar): Initialize toolbar_detached.
10860	(update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
10861	toolbar_detached is zero.
10862
108632005-01-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10864
10865	* xmenu.c (create_and_show_popup_menu): Pass zero as button to
10866	gtk_menu_popup if not for_click, so callbacks for the menu are called.
10867
10868	* gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
10869	(xg_tool_bar_callback, xg_tool_bar_help_callback)
10870	(update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
10871
10872	* xselect.c (x_get_foreign_selection, x_fill_property_data)
10873	(Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
10874	XFLOAT_DATA to get extract number from Lisp object.
10875
108762005-01-07  Kim F. Storm  <storm@cua.dk>
10877
10878	* xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
10879	Set stop_charpos to current charpos instead of 0.
10880
108812005-01-06  Nick Roberts  <nickrob@snap.net.nz>
10882
10883	* xdisp.c (Fformat_mode_line): First arg now required.
10884
108852005-01-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10886
10887	* macterm.c (XLoadQueryFont): Correctly handle 0 size
10888	font widths that are returned from some Japanese fonts.
10889
108902005-01-06  Kim F. Storm  <storm@cua.dk>
10891
10892	* fringe.c (fringe_faces): Change to Lisp_Object pointer.
10893	(draw_fringe_bitmap_1): Lookup user defined fringe faces here.
10894	(destroy_fringe_bitmap): Set fringe_faces element to nil.
10895	(Fdefine_fringe_bitmap, init_fringe): Change allocation of
10896	fringe_faces array and init elements to nil.
10897	(Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
10898	non-persistent face id.
10899	(mark_fringe_data): New function for GC.
10900
10901	* alloc.c (mark_fringe_data): Declare extern.
10902	(Fgarbage_collect): Call mark_fringe_data.
10903
10904	* alloc.c (overrun_check_free): Invalidate freed memory if
10905	XMALLOC_CLEAR_FREE_MEMORY is defined.
10906
109072005-01-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10908
10909	* macfns.c: Include sys/param.h.
10910	[TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
10911	and function.
10912	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
10913	of filename string.  Set event callback function when creating
10914	dialog boxes.  Add code conversions for filenames.  Don't dispose
10915	of apple event descriptor record if failed to create it.
10916
10917	* macterm.c: Include sys/param.h.
10918	[USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
10919	kEventWindowUpdate.
10920	(install_window_handler) [USE_CARBON_EVENTS]: Register it.
10921	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
10922	of FSSpec from apple event descriptor record.
10923	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
10924	size of filename string.
10925	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
10926	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
10927	file dialog is in action.
10928	[TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
10929	Reject only when there are no filename items.  Set background color
10930	before (un)highlighting the window below the dragged items.
10931	(XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
10932
109332005-01-05  Romain Francoise  <romain@orebokech.com>
10934
10935	* term.c (encode_terminal_code): Fix buffer size computation.
10936
109372005-01-04  Richard M. Stallman  <rms@gnu.org>
10938
10939	* xdisp.c (Fformat_mode_line): Doc fix.
10940
109412005-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10942
10943	* alloc.c (refill_memory_reserve): Move.
10944	(emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
10945	(reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
10946
109472005-01-03  Richard M. Stallman  <rms@gnu.org>
10948
10949	* window.c (window_scroll_pixel_based): Don't correct preserve_y
10950	for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
10951
109522005-01-03  Jason Rumney  <jasonr@gnu.org>
10953
10954	* w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
10955	fontp->space_width to FONT_WIDTH so they are valid.
10956
10957	* w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
10958	average width.  Set fontp->average_width and fontp->space_width to
10959	their appropriate values.
10960
10961	* w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
10962	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
10963	fontp->space_width.
10964
109652005-01-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10966
10967	* macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
10968	(x_font_min_bounds, XLoadQueryFont): Use the correct font width
10969	metrics for max and min bounds.
10970	(x_load_font): Correctly calculate average font width metrics.
10971
109722005-01-02  Richard M. Stallman  <rms@gnu.org>
10973
10974	* alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
10975
109762004-12-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
10977
10978	* xterm.c (handle_one_xevent): Clear area in expose event for GTK.
10979
109802004-12-31  Richard M. Stallman  <rms@gnu.org>
10981
10982	* xdisp.c (setup_for_ellipsis, get_next_display_element):
10983	Set it->ellipsis_p to 1 or 0.
10984	(display_line): Record whether row ends in mid-ellipsis.
10985	(set_cursor_from_row): If ends in ellipsis, find start of it.
10986	(cursor_row_p): If PT's at the end of the ellipsis the row
10987	ends within, don't display cursor on this row.
10988
10989	* dispextern.h (struct it): New element ellipsis_p.
10990	(struct glyph_row): New element ends_in_ellipsis_p.
10991
10992	* xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
10993	position if we're reading from something other than the buffer.
10994
10995	* window.c (window_scroll_pixel_based): Only look at
10996	Vscroll_preserve_screen_position if the old PT can't be kept.
10997	(syms_of_window) <scroll-preserve-screen-position>: Doc fix.
10998
109992004-12-30  Kim F. Storm  <storm@cua.dk>
11000
11001	* xdisp.c (get_line_height_property): New function extracted from
11002	original calc_line_height_property.
11003	(calc_line_height_property): Rework.  Handle t and (nil . ratio).
11004	(x_produce_glyphs): Use them to handle line-height and
11005	line-spacing according to new height spec.
11006	(Qtotal): Remove.
11007	(syms_of_xdisp): Remove intern and staticpro for Qtotal.
11008
110092004-12-30  Kenichi Handa  <handa@m17n.org>
11010
11011	* fileio.c (Finsert_file_contents): Don't use
11012	current_buffer->buffer_file_coding_system even if REPLACE is
11013	non-nil.  Call Qafter_insert_file_set_coding with the second arg VISIT.
11014
11015	* fontset.h (struct font_info): New members space_width and
11016	average_width.
11017
11018	* frame.h (struct frame): New member space_width.
11019	(FRAME_SPACE_WIDTH): New macro.
11020
11021	* xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
11022
11023	* xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
11024	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
11025	fontp->space_width.
11026	(x_load_font): Calculate fontp->space_width and fontp->average_width.
11027	(x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
11028
11029	* xdisp.c (x_produce_glyphs): Calculate tab width by
11030	FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
11031
110322004-12-29  Sanghyuk Suh  <han9kin@mac.com>
11033
11034	* macterm.c (SelectionRange): Add Xcode position apple event struct.
11035	(do_ae_open_documents): Handle Xcode-style file position open events.
11036
110372004-12-29  Luc Teirlinck  <teirllm@auburn.edu>
11038
11039	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
11040
110412004-12-29  Richard M. Stallman  <rms@gnu.org>
11042
11043	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
11044
110452004-12-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11046
11047	* macfns.c (install_window_handler): Modify extern to return OSErr
11048	value.
11049	(mac_window): Handle return value of install_window_handler.
11050
11051	* macterm.c (reflect_byte): Remove function.
11052	(mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
11053	Lookup table instead.
11054	(mac_do_font_lists): Simplify calculation of the longest
11055	nonspecial string.
11056	(init_mac_drag_n_drop): Remove function and declaration.
11057	(mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
11058	init_mac_drag_n_drop.
11059	(mac_do_track_drag): New function and declaration.
11060	(install_window_handler): Return OSErr value.
11061	(install_window_handler) [TARGET_API_MAC_CARBON]:
11062	Register handlers for tracking/receiving drag-and-drop items.
11063	(do_ae_open_documents): Generate unibyte strings for filenames.
11064	(mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
11065	Reject only non-filename items.  Set event modifiers, and return value.
11066
110672004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>
11068
11069	* coding.c (decode_coding): Fix previous change.
11070
110712004-12-28  Richard M. Stallman  <rms@gnu.org>
11072
11073	* xdisp.c (back_to_previous_visible_line_start):
11074	Don't call handle_display_prop.
11075
110762004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>
11077
11078	* coding.c (decode_coding_XXX, decode_composition_emacs_mule)
11079	(decode_coding_emacs_mule, encode_coding_emacs_mule)
11080	(decode_coding_iso2022, encode_designation_at_bol)
11081	(encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
11082	(decode_coding): Constify arguments and local vars.
11083
110842004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11085
11086	* xmenu.c (popup_get_selection): Only pop down dialogs
11087	on C-g and Escape.
11088	(popup_get_selection): Remove parameter down_on_keypress.
11089	(create_and_show_popup_menu, create_and_show_dialog):
11090	Remove parameter down_on_keypress to popup_get_selection.
11091
110922004-12-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11093
11094	* dispextern.h: Change HAVE_CARBON to MAC_OS.
11095	(struct glyph_string): Likewise.
11096
11097	* emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
11098	mac_initialize.
11099
11100	* fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
11101	Change TARGET_API_MAC_CARBON to HAVE_CARBON.
11102
11103	* fns.c (vector): Change MAC_OSX to MAC_OS.
11104
11105	* frame.c (x_set_frame_parameters, x_report_frame_params)
11106	(x_set_fullscreen): Remove #ifndef HAVE_CARBON.
11107	(x_set_border_width, Vdefault_frame_scroll_bars):
11108	Change HAVE_CARBON to MAC_OS.
11109
11110	* image.c [MAC_OS]: Include sys/stat.h.
11111	[MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
11112	QuickTimeComponents.h.
11113
11114	* mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
11115	[!MAC_OSX] (select): Use mac_wait_next_event.
11116	[!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
11117	[!MAC_OSX] (select, run_mac_command): Change `#ifdef
11118	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
11119	(mac_clear_font_name_table): Add extern.
11120	(Fmac_clear_font_name_table): New defun.
11121	(syms_of_mac): Defsubr it.
11122	[MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
11123	[MAC_OSX] (select_and_poll_event): New function.
11124	[MAC_OSX] (sys_select): Use it.
11125	[MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
11126	[MAC_OSX && SELECT_USE_CFSOCKET]
11127	(SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
11128	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
11129	RunLoop for simultaneously monitoring two kinds of inputs, window
11130	events and process outputs, without periodically polling.
11131
11132	* macfns.c (mac_initialized): Remove extern.
11133	(stricmp): Put in #if 0.  All callers changed to use xstricmp in
11134	xfaces.c.
11135	(strnicmp): Decrement `n' at the end of each loop, not the beginning.
11136	(check_mac): Use the term "Mac native windows" instead of "Mac OS".
11137	(check_x_display_info, x_display_info_for_name): Sync with xfns.c.
11138	(mac_get_rdb_resource): New function (from w32reg.c).
11139	(x_get_string_resource): Use it.
11140	(install_window_handler): Add extern.
11141	(mac_window): New function.
11142	(Fx_create_frame): Use it instead of make_mac_frame.
11143	Set parameter for Qfullscreen.  Call x_wm_set_size_hint.
11144	(Fx_open_connection, Fx_close_connection): New defuns.
11145	(syms_of_macfns): Defsubr them.
11146	(x_create_tip_frame) [TARGET_API_MAC_CARBON]:
11147	Add kWindowNoUpdatesAttribute to the window attribute.
11148	(x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
11149	(x_create_tip_frame): Don't call ShowWindow.
11150	(Fx_show_tip): Call ShowWindow.
11151	(Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
11152	TARGET_API_MAC_CARBON'.
11153	(mac_frame_parm_handlers): Set handlers for Qfullscreen.
11154	(syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
11155
11156	* macgui.h [!MAC_OSX]: Don't include Controls.h.  Include Windows.h.
11157	(Window): Typedef to WindowPtr and move outside `#if
11158	TARGET_API_MAC_CARBON'.
11159	(XSizeHints): New struct.
11160
11161	* macterm.c (x_update_begin, x_update_end)
11162	[TARGET_API_MAC_CARBON]: Disable screen updates during update of a
11163	frame.
11164	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
11165	[MAC_OS8]: Use XDrawImageString/XDrawImageString16.
11166	(construct_mouse_click): Put in #if 0.
11167	(x_check_fullscreen, x_check_fullscreen_move): Remove decls.
11168	(x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
11169	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
11170	(activate_scroll_bars, deactivate_scroll_bars)
11171	[!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
11172	(x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
11173	if the position is neither user-specified nor program-specified.
11174	(x_free_frame_resources): Free size_hints.
11175	(x_wm_set_size_hint): Allocate size_hints if needed.  Set size_hints.
11176	(mac_clear_font_name_table): New function.
11177	(mac_do_list_fonts): Initialize font_name_table if needed.
11178	(x_list_fonts): Don't initialize font_name_table.  Add BLOCK_INPUT
11179	around mac_do_list_fonts.
11180	(mac_unload_font): New function.
11181	(x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
11182	(init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
11183	and definitions with #if TARGET_API_MAC_CARBON.
11184	[USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
11185	(install_window_handler): Add decl.
11186	(do_window_update): Add BeginUpdate/EndUpdate for the tooltip
11187	window.  Use UpdateControls.  Get the rectangle that should be
11188	updated and restrict the target of expose_frame to it.
11189	(do_grow_window): Set minimum height/width according to size_hints.
11190	(do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
11191	(do_zoom_window): Don't use x_set_window_size.
11192	[USE_CARBON_EVENTS] (mac_handle_window_event): New function.
11193	(install_window_handler): New function.
11194	[!USE_CARBON_EVENTS] (mouse_region): New variable.
11195	[!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
11196	(XTread_socket) [USE_CARBON_EVENTS]: Move call to
11197	GetEventDispatcherTarget inside BLOCK_INPUT.
11198	(XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
11199	Update mouse_region when mouse is moved.
11200	(make_mac_frame): Remove.
11201	(make_mac_terminal_frame): Put in #ifdef MAC_OS8.
11202	Initialize mouse pointer shapes.  Change values of f->left_pos and
11203	f->top_pos.  Don't use make_mac_frame.  Use NewCWindow.
11204	Don't call ShowWindow.
11205	(mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
11206	Vinvocation_name and Vsystem_name.
11207	(mac_make_rdb): New function (from w32term.c).
11208	(mac_term_init): Use it.  Add BLOCK_INPUT.  Error if display has
11209	already been opened.  Don't pass argument to
11210	mac_initialize_display_info.  Don't set dpyinfo->height/width.
11211	Add entries to x_display_list and x_display_name_list.
11212	(x_delete_display): New function.
11213	(mac_initialize): Don't call mac_initialize_display_info.
11214	(syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
11215
11216	* macterm.h (check_mac): Add extern.
11217	(struct mac_output): New member size_hints.
11218	(FRAME_SIZE_HINTS): New macro.
11219	(mac_unload_font): Add extern.
11220
11221	* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
11222
11223	* xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
11224
112252004-12-27  Richard M. Stallman  <rms@gnu.org>
11226
11227	* buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
11228	(syms_of_buffer): Don't defsubr it.
11229
11230	* process.c (list_processes_1): Set undo_list instead
11231	of calling Fbuffer_disable_undo.
11232
11233	* xdisp.c (single_display_spec_string_p): Rename from
11234	single_display_prop_string_p.
11235	(single_display_spec_intangible_p): Rename from
11236	single_display_prop_intangible_p.
11237	(handle_single_display_spec): Rename from handle_single_display_prop.
11238	Rewritten to be easier to understand.
11239
11240	Change in load-history format.  Functions now get (defun . NAME),
11241	and variables get just NAME.
11242
11243	* data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
11244
11245	* eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
11246	(Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
11247	(Qdefvar): Var deleted.
11248	(syms_of_eval): Don't initialze it.
11249
11250	* lread.c (syms_of_lread) <load-history>: Doc fix.
11251
112522004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11253
11254	* xmenu.c (popup_get_selection): Pop down on C-g.
11255	(set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
11256	pops down menu on C-g.
11257	(xdialog_show): If dialog popped down and no button in the dialog was
11258	pushed, call Fsignal to quit.
11259	(xmenu_show): In no toolkit version, if menu returns NO_SELECT call
11260	Fsignal to quit.
11261
11262	* xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
11263
11264	* gtkutil.c (xg_initialize): Install bindings for C-g so that
11265	dialogs and menus pop down.
11266
112672004-12-27  Kenichi Handa  <handa@m17n.org>
11268
11269	* coding.c (code_convert_region): Fix calculation of `ratio'.
11270
112712004-12-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11272
11273	* gtkutil.c (update_frame_tool_bar): Make the value of
11274	tool-bar-button-margin control margins of images in tool bar.
11275
11276	* alloc.c (check_depth): New variable.
11277	(overrun_check_malloc, overrun_check_realloc): Only add
11278	overhead and write check pattern if check_depth is 1 (to handle
11279	recursive calls).  Increase/decrease check_depth in entry/exit.
11280	(overrun_check_free): Only check for overhead if check_depth is 1.
11281	Increase/decrease check_depth in entry/exit.
11282
112832004-12-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11284
11285	* keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
11286	before touching input_available_clear_time, to avoid accessing it
11287	from multiple threads.
11288
112892004-12-23  Jason Rumney  <jasonr@gnu.org>
11290
11291	* image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
11292	of JPEG library.
11293
112942004-12-22  Richard M. Stallman  <rms@gnu.org>
11295
11296	* emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
11297
11298	* lisp.h (Vundo_outer_limit): Fix decl.
11299
11300	* undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
11301	Uses changed.
11302	(syms_of_undo): Initialize appropriately.
11303	(truncate_undo_list): If it's nil, there's no limit.
11304
113052004-12-22  Kenichi Handa  <handa@m17n.org>
11306
11307	* xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
11308
113092004-12-21  Richard M. Stallman  <rms@gnu.org>
11310
11311	* eval.c (unwind_to_catch): Clear immediate_quit.
11312
11313	* xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
11314	specially as `\ ' and `\-'.
11315
11316	* keyboard.c (kbd_buffer_store_event_hold):
11317	In the code for while-no-input, handle immediate_quit.
11318
11319	* alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
11320	Call that at the very start.
11321	(undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
11322	(syms_of_alloc): Don't define undo-limit,
11323	undo-strong-limit and undo-outer-limit here.
11324
11325	* undo.c (truncate_undo_list): Return void.
11326	Take just one argument, the buffer.
11327	Make it current, and inhibit recursive GC.
11328	Access and update the undo list directly; return void.
11329	Refer to the undo...limit variables directly.
11330	Test undo_outer_limit only after counting the whole current command.
11331	When it's exceeded, call the function in undo-outer-limit-function.
11332	(undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
11333	(Vundo_outer_limit_function): New variable.
11334	(syms_of_undo): Define undo-limit, undo-strong-limit
11335	and undo-outer-limit here, and undo-outer-limit-function.
11336	Doc fixes.
11337
11338	* lisp.h (truncate_undo_list): Update decl.
11339
113402004-12-21  Piet van Oostrum  <piet@cs.uu.nl>
11341
11342	* fileio.c (Fread_file_name): Delete duplicates in
11343	file-name-history when history_delete_duplicates is true.
11344
113452004-12-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11346
11347	* macterm.c (mac_do_list_fonts): Fix memory leak
11348
113492004-12-20  Richard M. Stallman  <rms@gnu.org>
11350
11351	* regex.c (re_match_2_internal) <symend, wordend>:
11352	Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
11353
113542004-12-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11355
11356	* macterm.c (endif, x_font_name_to_mac_font_name):
11357	Use maccentraleurroman instead of maccentraleuropean
11358	(mac_c_string_match, mac_do_list_fonts): Speed up font search by
11359	quickly finding a specific font without needing regexps.
11360
113612004-12-15  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11362
11363	* syssignal.h: Declare main_thread.
11364	(SIGNAL_THREAD_CHECK): New macro.
11365
11366	* keyboard.c (input_available_signal): Move thread checking code
11367	to macro SIGNAL_THREAD_CHECK and call that macro.
11368	(interrupt_signal): Call SIGNAL_THREAD_CHECK.
11369
11370	* alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
11371
11372	* emacs.c: Define main_thread.
11373	(main): Initialize main_thread.
11374	(handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
11375	(memory_warning_signal): Call SIGNAL_THREAD_CHECK.
11376
11377	* floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
11378
11379	* dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
11380
11381	* sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
11382
11383	* process.c (send_process_trap, sigchld_handler):
11384	Call SIGNAL_THREAD_CHECK.
11385
11386	* data.c (arith_error): Call SIGNAL_THREAD_CHECK.
11387
11388	* atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
11389
11390	* xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
11391	returning when xg_ignore_gtk_scrollbar is true.
11392
113932004-12-14  Kim F. Storm  <storm@cua.dk>
11394
11395	* keyboard.c (read_char): Save and restore echo_string when
11396	handling input method.
11397
113982004-12-13  Richard M. Stallman  <rms@gnu.org>
11399
11400	* eval.c (syms_of_eval) <quit-flag>: Doc fix.
11401
11402	* keyboard.c (Vthrow_on_input): New variable.
11403	(syms_of_keyboard): Defvar and initialize it.
11404	(kbd_buffer_store_event_hold): Handle Vthrow_on_input.
11405
11406	* lisp.h (QUIT): Check for Vthrow_on_input.
11407	(Vthrow_on_input): Declare it.
11408
114092004-12-13  Kim F. Storm  <storm@cua.dk>
11410
11411	* xdisp.c (set_iterator_to_next): Reset stop_charpos after display
11412	vector.
11413
114142004-12-12  Richard M. Stallman  <rms@gnu.org>
11415
11416	* indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
11417
11418	* minibuf.c (Fall_completions): Add var `zero' and use it in loop.
11419	(Ftry_completion): Really use outer `zero'; eliminate inner one.
11420
114212004-12-12  Kenichi Handa  <handa@m17n.org>
11422
11423	* term.c (encode_terminal_code): Fix previous change.
11424
114252004-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11426
11427	* keyboard.c (handle_async_input): Remove pthread mutex handling.
11428	(input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
11429
11430	* syntax.c (Fforward_word): Avoid non-idempotent side-effects
11431	in macro arguments.
11432
11433	* minibuf.c (Ftry_completion, Fall_completions): Don't use
11434	XFASTINT blindly.
11435
11436	* emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
11437
114382004-12-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11439
11440	* w32term.c (x_calc_absolute_position): Remove calculation of
11441	difference between inner and outer window.  Don't subtract difference
11442	for left and top calculations.
11443
11444	* xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
11445	for left and top calculations.  Remove call to x_real_positions.
11446	[Bug report by Drew Adams in November.]
11447	(x_check_expected_move): Do not set change_gravity to 1 when calling
11448	x_set_offset.
11449
114502004-12-08  Richard M. Stallman  <rms@gnu.org>
11451
11452	* xdisp.c (get_next_display_element): Use `escape-glyph' for
11453	control chars and escaped octal codes.
11454	(Qescape_glyph): New variable.
11455	(syms_of_xdisp): Initialize it.
11456	(escape_glyph_face): New variable.
11457	(redisplay_window): Initialize it.
11458
114592004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
11460
11461	* image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
11462	(init_image): Use 1 rather than TRUE.  TRUE's not always defined.
11463
114642004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11465
11466	* emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
11467	reset_malloc_hooks.
11468
11469	* keyboard.c (handle_async_input, input_available_signal):
11470	Add ! defined (SYSTEM_MALLOC) around thread code.
11471
11472	* alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
11473
114742004-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11475
11476	* eval.c (init_eval_once): Increase max_specpdl_size to 1000.
11477
11478	* config.in: Regenerate.
11479
114802004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11481
11482	* xmenu.c (Fx_popup_menu): Correct documentation about position.
11483	(xmenu_show): Do not call XTranslateCoordinates.  Adjust position
11484	if not given by a mouse click to correspond with x-popup-menu
11485	documentation.
11486
11487	* config.in: Regenerate.
11488
11489	* gtkutil.c: Include signal.h and syssignal.h.
11490	(xg_get_file_name): Block and unblock __SIGRTMIN if defined.
11491
11492	* alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
11493	new variables main_thread and alloc_mutex,
11494	define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
11495	emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
11496	If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same
11497	as (UN)BLOCK_INPUT.
11498	(emacs_blocked_free, emacs_blocked_malloc)
11499	(emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
11500	(uninterrupt_malloc): Initialize main_thread and alloc_mutex.
11501	(reset_malloc_hooks): New function.
11502
11503	* lisp.h: Declare reset_malloc_hooks.
11504
11505	* emacs.c (Fdump_emacs): Call reset_malloc_hooks.
11506
11507	* keyboard.c: Conditionally include pthread.h.
11508	(handle_async_input, input_available_signalt): If not in the main
11509	thread, block signal, send signal to main thread and return.
11510
11511	* gtkutil.c (xg_get_file_with_chooser): Handle local files only.
11512	Set current folder in file chooser if default_filename is a directory.
11513
115142004-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>
11515
11516	* regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
11517	Remove redundant correctness checks.
11518	(regex_compile): Fix up error codes for \{..\} expressions.
11519
115202004-12-05  Richard M. Stallman  <rms@gnu.org>
11521
11522	* regex.c (regex_compile): Fix end-of-pattern case for space.
11523
115242004-12-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11525
11526	* macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
11527	* mac.c (cfstring_create_with_utf8_cstring): Add to prevent
11528	crashes with invalid characters.
11529	* macmenu.c (add_menu_item): Use it.
11530	* image.c (image_load_quartz2d): Likewise.
11531	* macfns.c (x_set_name, x_set_title): Likewise.
11532	(Fx_file_dialog): Likewise.  Use constant CFRefs instead of
11533	creating them each time for labels.
11534
115352004-12-02  Richard M. Stallman  <rms@gnu.org>
11536
11537	* config.in (RE_TRANSLATE_P): If make_number is not a macro,
11538	don't use it here.
11539
11540	* eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
11541	(interactive_p): Skip Scalled_interactively_p frames
11542	like Sinteractive_p frames.
11543	(unwind_to_catch): Clear handling_signal.
11544
11545	* data.c (Fmake_variable_buffer_local): Doc fix.
11546	(Fmake_local_variable): Doc fix.
11547
11548	* insdel.c (insert_from_string_before_markers)
11549	(insert_from_string): Don't modify buffer on empty insertion.
11550
11551	* window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
11552
115532004-12-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11554
11555	* macmenu.c (add_menu_item): Fallback on MacRoman if encoding
11556	menu text as UTF8 fails.
11557
115582004-12-01  Kim F. Storm  <storm@cua.dk>
11559
11560	* alloc.c: Add commentary for last change.
11561	(XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
11562	sizeof(size_t) != 4.
11563	(overrun_check_malloc, overrun_check_realloc, overrun_check_free):
11564	Use them.  Also clear header and trailer of freed memory.
11565	(GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
11566	(string_overrun_cookie): Rename from string_overrun_pattern.
11567	(GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
11568
115692004-12-01  Andreas Schwab  <schwab@suse.de>
11570
11571	* lisp.h: Declare string_to_multibyte.
11572
115732004-12-01  Kenichi Handa  <handa@m17n.org>
11574
11575	* w32console.c (w32con_write_glyphs): Decide coding here.
11576	Adjusted for the change of encode_terminal_code.
11577
11578	* term.c (encode_terminal_code): Don't make it "static".
11579
115802004-11-30  Kenichi Handa  <handa@m17n.org>
11581
11582	* term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
11583	(encode_terminal_code): Argument changed.  Encode all
11584	characters at once, and return a pointer to the result of encoding.
11585	(write_glyphs): Decide coding here.  Adjusted for the above change.
11586	(insert_glyphs): Likewise.
11587	(term_init): Initialize encode_terminal_bufsize to 0.
11588
11589	* coding.c (Vcode_conversion_workbuf_name): New variable.
11590	(syms_of_coding): Initialize and staticpro it.
11591	(set_conversion_work_buffer): New function.
11592	(run_pre_post_conversion_on_str): Use it.
11593	(run_pre_write_conversin_on_c_str): New function.
11594
11595	* coding.h (run_pre_write_conversin_on_c_str): Extern it.
11596
115972004-11-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11598
11599	* keyboard.c: Don't undef SIGIO
11600	* s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
11601	* Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
11602	(macfns.o): Don't depend on ccl.h.
11603	* macfns.c (mac_frame_parm_handlers): Set handlers for
11604	Qleft_fringe and Qright_fringe.
11605	* macterm.c (mac_fill_rectangle_to_pixmap)
11606	(mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
11607	(mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
11608	Put in #if 0.
11609	(mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
11610	(x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
11611	(XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
11612	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
11613	[!MAC_OS8]: Added ifdef'd out code for os8.  Don't use
11614	XDrawImageString.  Always draw background and foreground separately.
11615	(x_draw_image_foreground): Use clipping instead of computing the
11616	intersection rectangle.
11617	(x_draw_image_glyph_string): Don't draw an image with mask to a
11618	pixmap.
11619	(x_redisplay_interface): Set flush_display_optional member to 0.
11620	(XTread_socket): Correctly reset the TEConverter
11621	object.
11622
116232004-11-30  Kim F. Storm  <storm@cua.dk>
11624
11625	* lisp.h: New defines to enable buffer overrun checking.
11626	(GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
11627	(XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
11628
11629	* alloc.c: Add more checks for buffer overruns.
11630	(XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
11631	xmalloc_overrun_check_trailer, overrun_check_malloc)
11632	overrun_check_realloc, overrun_check_free): Add.
11633	(GC_STRING_EXTRA, string_overrun_pattern): Add.
11634	(check_sblock, allocate_string_data, compact_small_strings):
11635	Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
11636	(check_cons_list): Condition on GC_CHECK_CONS_LIST.
11637	(check_string_free_list): Add.
11638	(allocate_string, sweep_strings): Call check_string_free_list.
11639
11640	* emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
11641	XMALLOC_OVERRUN_CHECK to avoid crash during load.
11642
116432004-11-29  Kim F. Storm  <storm@cua.dk>
11644
11645	* fns.c (concat): Use SAFE_ALLOCA.
11646
116472004-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>
11648
11649	* sysdep.c (emacs_write): Don't use QUIT.
11650
116512004-11-29  Kenichi Handa  <handa@m17n.org>
11652
11653	* buffer.c (init_buffer): Set current_buffer->directory to a
11654	multibyte string made by string_to_multibyte.
11655
11656	* emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
11657
116582004-11-27  Andreas Schwab  <schwab@suse.de>
11659
11660	* alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
11661
11662	* s/gnu-linux.h: Enable no-op gcpros on ia64.
11663	(GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
11664
11665	* filelock.c (lock_file_1): Call get_boot_time early.
11666	Increase buffer size.
11667
116682004-11-27  Eli Zaretskii  <eliz@gnu.org>
11669
11670	* lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
11671	is not defined.
11672
116732004-11-27  Kim F. Storm  <storm@cua.dk>
11674
11675	* search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
11676	marker out of doc string.
11677
116782004-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>
11679
11680	* s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
11681	which was not mentioned in the log.
11682
116832004-11-26  Kim F. Storm  <storm@cua.dk>
11684
11685	* fringe.c (update_window_fringes): Prefer truncation bitmaps over
11686	angle bitmaps at top/bottom line.
11687
11688	* xdisp.c: Undo recent changes for restoring saved_face_id.  Instead,
11689	set it when it->method is set to next_element_from_display_vector.
11690	(setup_for_ellipsis): Add LEN argument.  Callers changed.
11691	Set it->saved_face_id.
11692	(get_next_display_element): Use loop instead of recursion.
11693	Set it->saved_face_id.  Combine duplicate code for ctr chars.
11694	(next_element_from_display_vector): Do not set it->saved_face_id.
11695	(next_element_from_ellipsis): Use setup_for_ellipsis.
11696
116972004-11-26  Eli Zaretskii  <eliz@gnu.org>
11698
11699	* eval.c (Fdefvar): Declare pdl from last change as `volatile' to
11700	prevent compiler warnings.
11701
117022004-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
11703
11704	* keyboard.c (command_loop_1): Print a message describing the key
11705	the user just pressed when this key has no binding.
11706
11707	* sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
11708	(emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
11709
11710	* lread.c (readchar): Check QUIT when `getc' is interrupted.
11711
117122004-11-24  Richard M. Stallman  <rms@gnu.org>
11713
11714	* coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
11715
11716	* buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
11717
117182004-11-24  Kim F. Storm  <storm@cua.dk>
11719
11720	* xdisp.c (move_it_in_display_line_to, display_line):
11721	Restore saved_face_id also when truncate-lines or hscrolled.
11722
117232004-11-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11724
11725	* gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
11726	x-use-old-gtk-file-dialog.
11727
11728	* xfns.c: Define x_use_old_gtk_file_dialog.
11729	(syms_of_xfns): Rename use-old-gtk-file-dialog to x-...  Move it
11730	outside ifdef USE_GTK.
11731
117322004-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
11733
11734	* coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
11735	Don't use XFASTINT blindly.
11736
11737	* config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
11738
11739	* indent.c (skip_invisible): Avoid non-idempotent side-effects
11740	in macro arguments.
11741
11742	* keymap.c (Flookup_key): Check INTEGERP before XINT.
11743
11744	* lread.c (oblookup): Don't use XFASTINT blindly.
11745
11746	* window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
11747	(decode_next_window_args, window_loop): Don't use XFASTINT blindly.
11748
117492004-11-23  Kim F. Storm  <storm@cua.dk>
11750
11751	* dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
11752	(MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
11753
11754	* xfaces.c (lookup_named_face): Add signal_p arg.  Return -1 if
11755	signal_p is zero and face name is unknown.
11756	(Fx_list_fonts): Don't signal error in lookup_named_face.
11757	(Fface_font): Signal error in lookup_named_face.
11758	(ascii_face_of_lisp_face): Likewise.
11759
11760	* dispextern.h (lookup_named_face): Fix prototype.
11761
11762	* xdisp.c (handle_single_display_prop): Don't signal error in
11763	lookup_named_face for unknown fringe face name.
11764	(highlight_trailing_whitespace): Don't signal error in
11765	lookup_named_face if trailing-whitespace face unknown.
11766	(calc_line_height_property): Don't signal error in
11767	lookup_named_face if specified face name is unknown.
11768
11769	* fringe.c (update_window_fringes): Show top row indicator if
11770	window has header-line.  Don't show arrow at bob and eob
11771	if the boundary indicators are not used.
11772	(Fset_fringe_bitmap_face): Signal error in lookup_named_face.
11773
11774	* window.c (set_window_buffer): Clear display_error_modiff.
11775
117762004-11-22  Kim F. Storm  <storm@cua.dk>
11777
11778	* fringe.c (update_window_fringes): Provide sensible fall-back
11779	value for non-nil indicate-buffer-boundaries setting.
11780
117812004-11-22  Markus Rost  <rost@ias.edu>
11782
11783	* minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
11784
117852004-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
11786
11787	* eval.c (Fdefvar): Warn when var is let-bound but globally void.
11788
117892004-11-21  Kim F. Storm  <storm@cua.dk>
11790
11791	* xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
11792
11793	* xterm.c (x_clip_to_row): Add area arg.  Callers changed.
11794	(x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
11795
11796	* w32term.c (w32_clip_to_row): Add area arg.  Callers changed.
11797	(x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
11798
11799	* macterm.c (x_clip_to_row): Add area arg.  Callers changed.
11800	(x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
11801
11802	* xdisp.c (move_it_in_display_line_to, display_line):
11803	Restore saved_face_id if overflow-newline-into-fringe is enabled and
11804	line is continued before or in middle of element from display vector.
11805
11806	* indent.c (Fvertical_motion): Fix last change.  Use another
11807	method to detect if iterator moved too far ahead after reseat.
11808
11809	* xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro.  Do not
11810	expand matrix width for overflow in zero-width area.
11811	(append_glyph, append_composite_glyph, produce_image_glyph)
11812	(append_stretch_glyph): Use it to avoid loop in redisplay.
11813	(note_mode_line_or_margin_highlight): Don't let help-echo from
11814	string override help-echo from image map.
11815
118162004-11-20  Luc Teirlinck  <teirllm@auburn.edu>
11817
11818	* fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
11819	* callint.c (Fcall_interactively): Ditto.
11820
118212004-11-20  Stefan Monnier  <monnier@iro.umontreal.ca>
11822
11823	* minibuf.c (Fminibuffer_complete_and_exit):
11824	Fixup the case of the completed value, for case-indep completion.
11825
118262004-11-20  Richard M. Stallman  <rms@gnu.org>
11827
11828	* lisp.h (Fread_from_minibuffer): Add arg in decl.
11829
11830	* minibuf.c (read_minibuf): New arg KEEP_ALL.  Callers changed.
11831	(Fread_from_minibuffer): New arg KEEP_ALL.  Callers changed.
11832
11833	* search.c (Vsearch_spaces_regexp):
11834	Rename from Vsearch_whitespace_regexp.  All uses changed.
11835
118362004-11-20  Thien-Thi Nguyen  <ttn@gnu.org>
11837
11838	* eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
11839
118402004-11-19  Richard M. Stallman  <rms@gnu.org>
11841
11842	* search.c (Vsearch_whitespace_regexp): New variable.
11843	(syms_of_search): Defvar it.
11844	(compile_pattern_1): Call re_set_whitespace_regexp with it.
11845	(search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
11846	is non-nil.
11847	(struct regexp_cache): New element whitespace_regexp.
11848	(syms_of_search): Initialize whitespace_regexp elements.
11849	(compile_pattern): Compare whitespace_regexp elements.
11850	(compile_pattern_1): Set whitespace_regexp elements.
11851
11852	* regex.c (regex_compile): Substitute whitespace_regexp
11853	for spaces, if it is nonzero.
11854	(whitespace_regexp): New variable.
11855	(re_set_whitespace_regexp): New function.
11856
118572004-11-19  Kim F. Storm  <storm@cua.dk>
11858
11859	* indent.c (Fvertical_motion): Fix last change.
11860
118612004-11-18  Kim F. Storm  <storm@cua.dk>
11862
11863	* indent.c (Fvertical_motion): Undo 2004-11-16 change.
11864	Instead, move back again if reseating moves too far ahead.
11865
118662004-11-17  Luc Teirlinck  <teirllm@auburn.edu>
11867
11868	* xdisp.c (message3): Call clear_message.
11869
118702004-11-17  Kim F. Storm  <storm@cua.dk>
11871
11872	* xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
11873
118742004-11-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11875
11876	* gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
11877
11878	* xmenu.c (x_menu_in_use): Remove.
11879	(x_menu_set_in_use): Also set popup_activated_flag.
11880
11881	* xfns.c (Fx_file_dialog): Call popup_activated instead of
11882	x_menu_in_use.  Call x_menu_set_in_use in Motif version also.
11883
11884	* xterm.h (x_menu_in_use): Remove.
11885
118862004-11-16  Richard M. Stallman  <rms@gnu.org>
11887
11888	* keymap.c (Fmap_keymap): New arg SORT-FIRST.
11889	Use map-keymap-internal to implement that.
11890
11891	* indent.c (Fvertical_motion): In batch mode, use vmotion directly.
11892
118932004-11-16  Stefan Monnier  <monnier@iro.umontreal.ca>
11894
11895	* xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
11896	a window before using XWINDOW.
11897
11898	* window.c (make_window, Fselect_window, make_dummy_parent)
11899	(save_window_save):
11900	* frame.c (make_frame):
11901	* fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
11902
11903	* lisp.h (NILP): Use EQ rather than XFASTINT.
11904
119052004-11-16  Kim F. Storm  <storm@cua.dk>
11906
11907	* fringe.c (Fdefine_fringe_bitmap): Always set 'h'.  Simplify.
11908
11909	* indent.c (Fvertical_motion): Fix last change.  Only reseat when
11910	moving backwards.
11911
119122004-11-16  Luc Teirlinck  <teirllm@auburn.edu>
11913
11914	* dispextern.h: Extern reseat_at_previous_visible_line_start.
11915
119162004-11-16  Kenichi Handa  <handa@m17n.org>
11917
11918	* xdisp.c (display_mode_element): Fix previous change (calculate
11919	end position of substring to display correctly).
11920
119212004-11-16  Kim F. Storm  <storm@cua.dk>
11922
11923	* keyboard.c (Fposn_at_point): Remove extra */ after doc string.
11924	Reported by Andrew M. Scott.
11925
119262004-11-15  Kim F. Storm  <storm@cua.dk>
11927
11928	* fns.c (Fsafe_plist_get): New defun.
11929	(syms_of_fns): Defsubr it.
11930
11931	* lisp.h (Fsafe_plist_get): Add EXFUN.
11932
11933	* xdisp.c (store_mode_line_string, produce_stretch_glyph):
11934	Use Fsafe_plist_get.
11935	(note_mode_line_or_margin_highlight, note_mouse_highlight):
11936	Fix image map element parsing.  Use Fsafe_plist_get.
11937
119382004-11-15  Richard M. Stallman  <rms@gnu.org>
11939
11940	* xdisp.c (get_next_display_element): Fix previous change.
11941
119422004-11-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11943
11944	* window.c (shrink_windows): Handle special case of one window left
11945	when trying to shrink the final reminder.  Grow windows if
11946	total_removed is less than total_shrink.
11947
11948	* xmenu.c (pop_down_menu): Remove global variable current_menu,
11949	extract pointer from arg with XSAVE_VALUE.
11950	(create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
11951	Construct arg to record_unwind_protect with make_save_value.
11952
119532004-11-13  Richard M. Stallman  <rms@gnu.org>
11954
11955	* xdisp.c (reseat_at_previous_visible_line_start): No longer static.
11956	(get_next_display_element): Fix previous change to apply only to \n.
11957
11958	* indent.c (Fvertical_motion): Scan to PT from start of line to
11959	make iterator consistent.
11960
11961	* minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
11962
119632004-11-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11964
11965	* gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
11966
11967	* xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
11968	Record unwind with clean_up_file_dialog.
11969
11970	* xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
11971	Declare.
11972
11973	* xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
11974
119752004-11-13  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
11976
11977	* gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
11978	(xg_file_sel_destroy): Remove.
11979	(xg_file_response_cb, pop_down_file_dialog)
11980	(xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
11981	New functions.
11982	(xg_get_file_with_chooser, xg_get_file_with_selection):
11983	Take new arg func, set it to xg_get_file_name_from_chooser/selector.
11984	Move common code to xg_get_file_name.  Return widget created.
11985	(xg_get_file_name): Set name, transient for, modal and destroy
11986	with parent here.  Connect response signal to xg_file_response_cb,
11987	connect delete-event to gtk_true.  Record pop_down_file_dialog
11988	for unwind.  Do event loop and call x_menu_wait_for_event in loop.
11989	(xg_create_widget): Make dialogs modal.
11990
11991	* xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
11992	Lisp_Object.
11993	(popup_get_selection): Move unwind protect ...
11994	(create_and_show_popup_menu, create_and_show_dialog): ... to here.
11995	Move destroy of widget to pop_down_menu.
11996	(popup_widget_loop): Move unwind protect ...
11997	(create_and_show_popup_menu, create_and_show_dialog): ... to here.
11998	Move destroy of widget to pop_down_menu.
11999	(pop_down_menu): BLOCK_INPUT and destroy widget/window.
12000	(xmenu_show): Record unwind pop_down_menu.  Move XMenuDestroy,
12001	x_mouse_leave and grabbed = 0 to pop_down_menu.
12002
120032004-11-13  Kim F. Storm  <storm@cua.dk>
12004
12005	* xdisp.c (make_cursor_line_fully_visible_p): New variable.
12006	(syms_of_xdisp): DEFVAR_BOOL it.
12007	(make_cursor_line_fully_visible, try_cursor_movement)
12008	(try_window_id): Use it.
12009
120102004-11-12  Kim F. Storm  <storm@cua.dk>
12011
12012	* dispextern.h (struct glyph_row): New member extra_line_spacing.
12013	(struct it): New member max_extra_line_spacing.
12014	(MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
12015	(MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
12016	(MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
12017	part of last line is only extra line spacing (so the text on the
12018	line is fully visible).  Use helper macros.
12019	Add W arg (to use them).  All callers changed.
12020	(MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
12021	(MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
12022
12023	* window.c (window_scroll_pixel_based, Frecenter):
12024	Use move_it_vertically_backward directly.
12025	(Frecenter): Fix calculation of new start pos for negative arg.
12026	Before, the new start pos was sometimes chosen too far back, so
12027	the last line became only partially visible, and thus would be
12028	either only semi-visible or automatically scrolled to the middle
12029	of the window by redisplay.
12030
12031	* xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
12032	(move_it_vertically_backward): Don't recure to move further back.
12033	(move_it_vertically): Remove superfluous condition.
12034	(move_it_by_lines): Clear last_height when moved 0 lines.
12035	(resize_mini_window): Use it.max_extra_line_spacing.
12036	(display_tool_bar_line): Clear row->extra_line_spacing.
12037	(try_scrolling): Use move_it_vertically_backward directly.
12038	(redisplay_window): Likewise.
12039	(compute_line_metrics): Set row->extra_line_spacing.
12040	(display_line, display_string): Likewise.
12041	(x_produce_glyphs): Update it->max_extra_line_spacing.
12042
12043	* xmenu.c (pop_down_menu): Return nil.
12044
120452004-11-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12046
12047	* xmenu.c (x_menu_wait_for_event): New function.
12048	(popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
12049	to handle timers.
12050	(popup_widget_loop): Add argument do_timers.
12051	(create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
12052	do_timers to popup_widget_loop.
12053	(xmenu_show): Call XMenuActivateSetWaitFunction so that
12054	x_menu_wait_for_event is called by XMenuActivate.
12055	(create_and_show_popup_menu): Pass 1 for do_timers to
12056	popup_get_selection.
12057	(pop_down_menu): New function.
12058	(popup_get_selection, popup_widget_loop): Unwind protect to
12059	pop_down_menu.
12060	(popup_widget_loop): Add argument widget.
12061	(create_and_show_popup_menu, create_and_show_dialog): Pass new
12062	argument widget to popup_widget_loop.
12063
120642004-11-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12065
12066	* keymap.c (Fkeymap_prompt): Accept symbol keymaps.
12067
120682004-11-09  Kim F. Storm  <storm@cua.dk>
12069
12070	* xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
12071	Fix various comments referring to XEvents instead of input events.
12072	(x_queue_event): Fix format strings.
12073	(x_stop_queuing_selection_requests): Likewise.
12074
12075	* xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
12076	(pint2hrstr): Add extra braces to silence compiler.
12077
12078	* print.c (print_object): Fix format string.
12079
12080	* lread.c (read1): Fix next_char matching.
12081
12082	* lisp.h (Fdelete): Add EXFUN.
12083	(replace_range_2): Add prototype.
12084
12085	* keyboard.c (read_avail_input): Remove unused variable 'discard'.
12086
12087	* intervals.h (NULL_INTERVAL_P): Add separate version when
12088	ENABLE_CHECKING is not defined to silence compiler.
12089	(compare_string_intervals): Add prototype.
12090
12091	* fringe.c (destroy_fringe_bitmap): Fix return type.
12092	(Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
12093
12094	* emacs.c (Fdump_emacs): Fix format string.
12095
12096	* doc.c: Include <ctype.h>.
12097	(Fsubstitute_command_keys): Remove unused variable 'firstkey'.
12098
12099	* data.c (store_symval_forwarding): Remove unused variables.
12100
12101	* callint.c (Fcall_interactively): Remove unused variable 'funcar'.
12102
121032004-11-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12104
12105	* Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
12106	to ${OLDXMENU}.
12107
121082004-11-09  Kim F. Storm  <storm@cua.dk>
12109
12110	* process.c (Fmake_network_process): Remove kludge for interrupted
12111	connects on BSD.  If connect is interrupted, just close socket and
12112	start over rather than sleeping and retry with same socket.
12113
121142004-11-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12115
12116	* .cvsignore: Add buildobj.lst.
12117
12118	* doc.c: New variable Vbuild_files.
12119	(Fsnarf_documentation): If Vbuild_files is nil, populate it with
12120	file names from buildobj.lst.  Only attach docstrings from files
12121	that are in Vbuild_files.
12122	(syms_of_doc): Defvar Vbuild_files.
12123
12124	* Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
12125	and w32*.o.
12126	(temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
12127	(mostlyclean): Rm buildobj.lst
12128
12129	* makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
12130	is linked.
12131
121322004-11-09  Kim F. Storm  <storm@cua.dk>
12133
12134	* fringe.c (update_window_fringes): Update fringe bitmaps if
12135	cur and row ends_at_zv_p differs.  If bitmaps of a row is updated,
12136	also update previous row to get rid of misc. artifacts.
12137
121382004-11-08  Kim F. Storm  <storm@cua.dk>
12139
12140	* xdisp.c (fast_find_position): Fix start pos if header line present.
12141	(note_mouse_highlight): Clear mouse face if we move out of text area.
12142
121432004-11-08  Eli Zaretskii  <eliz@gnu.org>
12144
12145	* editfns.c: Move #include "systime.h" before <sys/resource.h>.
12146	Don't include <sys/time.h> explicitly.
12147	Include <stdio.h> unconditionally, not just on MacOS.
12148
121492004-11-08  Kenichi Handa  <handa@m17n.org>
12150
12151	* fontset.c (fontset_pattern_regexp): Cancel my previous change;
12152	don't pay attention to '\' before '*'.
12153	(fontset_pattern_regexp): Change the meaning of the second arg.
12154	(Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
12155	(check_fontset_name): Try NAME as literal at first, and if it
12156	failes, try NAME as pattern.
12157
121582004-11-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12159
12160	* emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
12161
121622004-11-07  Andreas Schwab  <schwab@suse.de>
12163
12164	* lisp.h (Fmsdos_downcase_filename): Declare.
12165	* dired.c (Fmsdos_downcase_filename): Don't declare here.
12166	* fileio.c: Likewise.
12167
121682004-11-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12169
12170	* dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
12171	comparisons with integers instead of Lisp_Object address.
12172	(Fmsdos_set_keyboard): Declare argument allkeys.
12173
12174	* msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
12175
12176	* dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
12177	int/Lisp_Object mixup.
12178
12179	* fileio.c: Ditto.
12180
121812004-11-06  Steven Tamm  <steventamm@mac.com>
12182
12183	* editfns.c: Need to include sys/time.h before resource.h on darwin.
12184
121852004-11-06  Richard M. Stallman  <rms@gnu.org>
12186
12187	* callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
12188
12189	* xfaces.c (merge_named_face): GCPRO the face_name in the
12190	named_merge_point struct that we make.
12191	(merge_face_heights): Eliminate GCPRO arg.  All callers changed.
12192
12193	* keyboard.c (command_loop_1): Change Vtransient_mark_mode
12194	before deciding whether to inactivate mark.
12195
121962004-11-06  Lars Brinkhoff  <lars@nocrew.org>
12197
12198	* config.in: Regenerate (add HAVE_GETRUSAGE).
12199	* editfns.c (Fget_internal_run_time): New function.
12200	(syms_of_data): Defsubr it.
12201	* fns.c (sxhash): As far as possible, merge calculation of
12202	hash code for symbols and strings.
12203
122042004-11-06  Eli Zaretskii  <eliz@gnu.org>
12205
12206	* frame.c (syms_of_frame): Fix the example in the doc string.
12207
122082004-11-06  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12209
12210	* eval.c (Feval): Remove check for INPUT_BLOCKED_P.
12211
12212	* xmenu.c (popup_get_selection, create_and_show_popup_menu)
12213	(create_and_show_dialog): Revert change from 2004-10-31.
12214
122152004-11-05  Luc Teirlinck  <teirllm@auburn.edu>
12216
12217	* macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
12218
122192004-11-05  Kim F. Storm  <storm@cua.dk>
12220
12221	* print.c (print_object): Print Lisp_Misc_Save_Value objects.
12222
12223	* fileio.c (Ffile_modes): Doc fix.
12224	(auto_save_1): Check for Ffile_modes nil value.
12225
122262004-11-05  Kim F. Storm  <storm@cua.dk>
12227
12228	* xselect.c (struct selection_event_queue, selection_queue)
12229	(x_queue_selection_requests, x_queue_event)
12230	(x_start_queuing_selection_requests)
12231	(x_stop_queuing_selection_requests): Add new queue for selection
12232	input events to replace previous XEvent queue in xterm.c.
12233	(queue_selection_requests_unwind): Adapt to new queue.
12234	(x_reply_selection_request): Adapt to new queue.
12235	Unexpect wait_object in case of x errors (memory leak).
12236	(x_handle_selection_request, x_handle_selection_clear): Make static.
12237	(x_handle_selection_event): New function.  May queue selection events.
12238	(wait_for_property_change_unwind): Use save_value instead of cons.
12239	Clear property_change_reply_object.
12240	(wait_for_property_change): Abort if already waiting.
12241	Use save_value instead of cons for unwind data.
12242	(x_handle_property_notify): Skip events already arrived, but don't
12243	free them, as "arrived" field is checked by wait_for_property_change,
12244	and it will be freed by unwind or explicit unexpect_property_change.
12245	(x_get_foreign_selection): Add to new queue.
12246	(receive_incremental_selection): Don't unexpect wait_object when done
12247	as it has already been freed by previous wait_for_property_change.
12248
12249	* xterm.h (x_start_queuing_selection_requests)
12250	(x_stop_queuing_selection_requests, x_handle_selection_request)
12251	(x_handle_selection_clear): Remove prototypes.
12252	(x_handle_selection_event): Add prototype.
12253
12254	* xterm.c (handle_one_xevent): Don't queue X selection events
12255	here, it may be too late if we start queuing after we have already
12256	stored some selection events into the kbd buffer.
12257	(struct selection_event_queue, queue, x_queue_selection_requests)
12258	(x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
12259	(x_stop_queuing_selection_requests): Remove/move to xselect.c.
12260	(x_catch_errors_unwind): Block input around final XSync.
12261
12262	* keyboard.h (kbd_buffer_unget_event): Add prototype.
12263
12264	* keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
12265	(kbd_buffer_unget_event): New function.
12266	(kbd_buffer_get_event, swallow_events): Combine SELECTION events
12267	and use x_handle_selection_event.
12268	(mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
12269
122702004-11-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12271
12272	* xselect.c (TRACE3): New debug macro.
12273	(x_reply_selection_request): Use it.
12274	(receive_incremental_selection): In call to TRACE0, the name of
12275	a symbol is in xname.
12276
122772004-11-05  Kim F. Storm  <storm@cua.dk>
12278
12279	* fontset.c (fontset_pattern_regexp): Use unsigned char.
12280
122812004-11-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12282
12283	* fileio.c (Fnext_read_file_uses_dialog_p): New function.
12284
12285	* gtkutil.h (use_old_gtk_file_dialog): Declare.
12286
12287	* gtkutil.c: Make use_old_gtk_file_dialog non-static.
12288	(xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
12289	* xfns.c (syms_of_xfns): ... to here.
12290
12291	* gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
12292	it doesn't start with /.
12293
122942004-11-04  Kenichi Handa  <handa@m17n.org>
12295
12296	* fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
12297	treat it as a literal character.
12298
122992004-11-03  Kim F. Storm  <storm@cua.dk>
12300
12301	* .gdbinit (ppt): New function.
12302
123032004-11-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12304
12305	* xterm.c (x_window_to_scroll_bar): Only call
12306	xg_get_scroll_id_for_window if toolkit scroll bars are used.
12307
12308	* gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
12309	of save.
12310
123112004-11-02  Andreas Schwab  <schwab@suse.de>
12312
12313	* window.c (Fscroll_right): Fix last change.
12314
123152004-11-02  Kim F. Storm  <storm@cua.dk>
12316
12317	* Makefile.in (callproc.o): Depend on blockinput.h, atimer.h, systime.h.
12318
123192004-11-02  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12320
12321	* callproc.c (Fcall_process): Block input around vfork.
12322
123232004-11-02  Kim F. Storm  <storm@cua.dk>
12324
12325	* eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
12326	(syms_of_eval): Defsubr it.
12327
123282004-11-02  Richard M. Stallman  <rms@gnu.org>
12329
12330	* insdel.c (replace_range_2): New function.
12331
12332	* casefiddle.c (casify_region): Handle changes in byte-length
12333	using replace_range_2.
12334
12335	* emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
12336
12337	* xdisp.c (back_to_previous_visible_line_start):
12338	Subtract 1 from pos when checking previous newline for invisibility.
12339
12340	* window.c (window_scroll_pixel_based): Update preserve_y
12341	for header line if any.
12342	(Fscroll_left, Fscroll_right): Don't call interactive_p;
12343	use a new second argument instead.
12344
12345	* eval.c (Fcall_interactive_p): New function.
12346	(interactive_p): Don't test INTERACTIVE here.
12347	(Finteractive_p): Doc fix.
12348
12349	* eval.c (Feval): Abort if INPUT_BLOCKED_P.
12350
123512004-11-02  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
12352
12353	* w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
12354	comparing font names.
12355
123562004-11-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12357
12358	* fileio.c (Fread_file_name): Pass Qt as fifth parameter to
12359	Fx_file_dialog if only directories should be read.
12360
12361	* lisp.h: Fx_file_dialog takes 5 parameters.
12362
12363	* xfns.c (Fx_file_dialog): Both Motif and GTK version:
12364	Add parameter only_dir_p.
12365	In Motif version, don't put DEFAULT_FILENAME in filter part of the
12366	dialog, just text field part.  Do not add DEFAULT_FILENAME
12367	to list of files if it isn't there.
12368	In GTK version, pass only_dir_p parameter to xg_get_file_name.
12369
12370	* macfns.c (Fx_file_dialog): Add parameter only_dir_p.
12371	Check only_dir_p instead of comparing prompt to "Dired".  When using
12372	a save dialog, add option kNavDontConfirmReplacement, change title
12373	to "Enter name", change text for save button to "Ok".
12374
12375	* w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
12376	Check only_dir_p instead of comparing prompt to "Dired".
12377
12378	* gtkutil.c (xg_get_file_with_chooser, xg_get_file_with_selection):
12379	New functions, only defined ifdef HAVE_GTK_FILE_CHOOSER_DIALOG_NEW
12380	and HAVE_GTK_FILE_SELECTION_NEW respectively.
12381	(xg_get_file_name): Add parameter only_dir_p.
12382	Call xg_get_file_with_chooser or xg_get_file_with_selection
12383	depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
12384	(xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
12385
12386	* gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
12387
12388	* config.in: Rebuild (added HAVE_GTK_FILE_*).
12389
123902004-11-01  Kim F. Storm  <storm@cua.dk>
12391
12392	* process.c (connect_wait_mask, num_pending_connects):
12393	Only declare and use them if NON_BLOCKING_CONNECT is defined.
12394	(init_process): Initialize them if NON_BLOCKING_CONNECT defined.
12395	(IF_NON_BLOCKING_CONNECT): New helper macro.
12396	(wait_reading_process_output): Only declare and use local vars
12397	Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
12398
123992004-11-01  Andy Petrusenco  <Igrek@star-sw.com>  (tiny change)
12400
12401	* w32term.c (x_scroll_run): Delete region objects after use.
12402
124032004-10-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12404
12405	* xmenu.c: Add prototypes for forward function declarations.
12406	(popup_get_selection): Remove parameter do_timers, remove call to
12407	timer_check.
12408	(create_and_show_popup_menu, create_and_show_dialog):
12409	Remove parameter do_timers from call to popup_get_selection.
12410
12411	* xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
12412	tool_bar_items and assign the result to f->tool_bar_items if
12413	not equal.  Move BLOCK/UNBLOCK_INPUT from around call to
12414	tool_bar_items to assignment of result.
12415
12416	* atimer.c (alarm_signal_handler): Do not call set_alarm if
12417	pending_atimers is non-zero.
12418
124192004-10-31  Kim F. Storm  <storm@cua.dk>
12420
12421	* dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
12422
124232004-10-28  Will  <will@glozer.net>
12424
12425	* macterm.c: Allow user to assign key modifiers to the Mac Option
12426	key via a 'mac-option-modifier' variable.
12427
124282004-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
12429
12430	* xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
12431	Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
12432	(x_handle_selection_request, x_handle_selection_clear)
12433	(x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
12434
124352004-10-28  Richard M. Stallman  <rms@gnu.org>
12436
12437	* w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
12438
12439	* xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
12440
124412004-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
12442
12443	* syntax.c (scan_sexps_forward): Give precedence to a 2-char
12444	comment-starter over a 1-char one.
12445
124462004-10-27  Richard M. Stallman  <rms@gnu.org>
12447
12448	* xdisp.c (get_next_display_element): In mode lines,
12449	treat newline and tab like other control characters.
12450
12451	* editfns.c (Fmessage): Doc fix.
12452
12453	* indent.c (vmotion): When moving up, check the newline before.
12454	Make prevline an int, not a Lisp_Object.
12455
124562004-10-27  Kim F. Storm  <storm@cua.dk>
12457
12458	* editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
12459	Only allocate info and discarded tables once.
12460
12461	* lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
12462	(SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
12463	(SAFE_FREE): Test it to determine if we need to unwind to free.
12464	Remove size arg.  All users changed.
12465	(SAFE_FREE_LISP) Remove.  All users changed to use SAFE_FREE.
12466
124672004-10-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12468
12469	* gtkutil.c: Put empty line between comment and function body.
12470	(xg_destroy_widgets): Rename from remove_from_container.
12471	Just destroy all widgets in list.  Argument wcont removed.
12472	(xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
12473	instead of remove_from_container.
12474	(xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
12475	(free_frame_tool_bar): Add comment.
12476
12477	* xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
12478	is not NULL before strcmp.
12479
124802004-10-26  Kim F. Storm  <storm@cua.dk>
12481
12482	* callint.c (Fcall_interactively): Add 'U' code to get the
12483	up-event discarded by a previous 'k' or 'K' argument.
12484
124852004-10-26  David Kastrup  <dak@gnu.org>
12486
12487	* buffer.c (syms_of_buffer): Fix a few typos.
12488
124892004-10-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12490
12491	* xsmfns.c: Put empty line between comment and function body.
12492	Use two spaces before comment end.
12493
124942004-10-25  Kenichi Handa  <handa@m17n.org>
12495
12496	* fontset.c (fontset_pattern_regexp): Optimize for the case that
12497	PATTERN is full XLFD.
12498
124992004-10-24  Kenichi Handa  <handa@m17n.org>
12500
12501	* regex.h (enum reg_errcode_t): New value REG_ERANGEX.
12502
12503	* regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
12504	(regex_compile): Return REG_ERANGEX if appropriate.
12505
125062004-10-22  Kenichi Handa  <handa@m17n.org>
12507
12508	* editfns.c (Ftranslate_region_internal): New function.
12509	(syms_of_editfns): Defsubr it.
12510
125112004-10-22  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12512
12513	* xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
12514
125152004-10-21  K,Aa(Broly L$,1 q(Brentey  <lorentey@elte.hu>
12516
12517	* xterm.h (x_output): New member `xic_base_fontname'.
12518	(FRAME_XIC_BASE_FONTNAME): New macro.
12519	(xic_free_xfontset): Declare.
12520
12521	* xfns.c (xic_create_xfontset): Share fontsets between frames
12522	based on base_fontname.
12523	(xic_free_xfontset): New function.
12524	(free_frame_xic): Use it.
12525	(xic_set_xfontset): Ditto.
12526
12527	* xterm.c (xim_destroy_callback): Ditto.
12528
125292004-10-20  B. Anyos  <banyos@freemail.hu>  (tiny change)
12530
12531	* w32term.c (x_draw_glyph_string): Use overline_color for overlines.
12532
125332004-10-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12534
12535	* xterm.h (XSync): If USE_GTK, define XSync as process_all and then
12536	XSync.
12537
12538	* emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
12539	New variables and constant.
12540	(main): Calculate heap_bss_diff.  If we are dumping and the
12541	heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
12542	and exec ourself again.
12543	(Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
12544	print a warning.
12545
12546	* lastfile.c: Make my_endbss and my_endbss_static available on all
12547	platforms.
12548
12549	* Makefile.in (RUN_TEMACS): Remove @SETARCH@.
12550	* config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
12551
125522004-10-19  Luc Teirlinck  <teirllm@auburn.edu>
12553
12554	* data.c (Flocal_variable_if_set_p): Doc fix.
12555
125562004-10-19  Jason Rumney  <jasonr@gnu.org>
12557
12558	* w32.c (init_environment): Set emacs_dir correctly when running
12559	emacs from the build directory.
12560
125612004-10-19  Richard M. Stallman  <rms@gnu.org>
12562
12563	* editfns.c (Fdelete_and_extract_region):
12564	If region is empty, return null string.
12565
125662004-10-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12567
12568	* gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
12569	and canon_width.
12570	(xg_frame_cleared): Remove.
12571
12572	* gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
12573	(xg_find_top_left_in_fixed): Remove.
12574	(xg_create_scroll_bar): Put an event box widget between
12575	the scroll bar widget and the edit widget.
12576	(xg_show_scroll_bar): Show the parent widget (the event box).
12577	(xg_remove_scroll_bar): Destroy parent (the event box) also.
12578	(xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
12579	Move the parent (the event box) widget inside the fixed widget.
12580	Move window clear to xterm.c.
12581
12582	* gtkutil.h (xg_frame_cleared): Remove.
12583
12584	* xterm.c (x_clear_frame): Remove call to xg_frame_cleared
12585	(x_scroll_bar_create, XTset_vertical_scroll_bar):
12586	Remove arguments left and width to xg_update_scrollbar_pos.
12587	(XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
12588
125892004-10-19  Kenichi Handa  <handa@m17n.org>
12590
12591	* xdisp.c (display_mode_element): Fix display of wide chars.
12592
125932004-10-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12594
12595	* gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
12596	gdk_window_clear and move gdk_window_process_all_updates after
12597	clear so events are sent to the X server in correct order.
12598
125992004-10-18  Kenichi Handa  <handa@m17n.org>
12600
12601	* fontset.c (fs_load_font): Use fast_string_match_ignore_case for
12602	comparing font names.
12603	(fs_query_fontset): Use fast_string_match for comparing fontset names.
12604	(list_fontsets): Likewise.
12605
12606	* search.c (fast_string_match_ignore_case): New function.
12607
12608	* lisp.h (fast_string_match_ignore_case): Extern it.
12609
126102004-10-17  Kim F. Storm  <storm@cua.dk>
12611
12612	* xdisp.c (overlay_arrow_at_row): Return overlay string rather
12613	than bitmap if there is not left fringe.
12614	(get_overlay_arrow_glyph_row): Also used on windows system.
12615	(display_line): Display overlay string if no left fringe.
12616
126172004-10-16  Jason Rumney  <jasonr@gnu.org>
12618
12619	* w32fns.c (w32_font_match): Encode font name being matched.
12620
126212004-10-16  Richard M. Stallman  <rms@gnu.org>
12622
12623	* window.c (Fspecial_display_p): Doc fix.
12624
126252004-10-15  Stefan Monnier  <monnier@iro.umontreal.ca>
12626
12627	* doc.c (Fsubstitute_command_keys): Fix remap-handling.
12628	Don't ignore menus, because where-is-internal already does it for us.
12629
126302004-10-15  Kim F. Storm  <storm@cua.dk>
12631
12632	* xdisp.c (redisplay_window): Only update fringes and vertical
12633	border on window frames.
12634
126352004-10-14  Andreas Schwab  <schwab@suse.de>
12636
12637	* m/ia64.h (DATA_SEG_BITS): Don't define.
12638
126392004-10-14  Kim F. Storm  <storm@cua.dk>
12640
12641	* xterm.h: Include Xutil.h after keysym.h to work around bug
12642	in some X versions.
12643
126442004-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12645
12646	* fns.c (map_char_table): Add missing gcpros.
12647
126482004-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12649
12650	* keymap.c (get_keymap): An autoload form is not a keymap.
12651
12652	* textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
12653
126542004-10-13  Kim F. Storm  <storm@cua.dk>
12655
12656	* callproc.c (Fcall_process): Simplify handling of display arg.
12657	Resume `display_on_the_fly' once a coding system is determined.
12658
12659	* xdisp.c (redisplay_preserve_echo_area): Fix last change.
12660
126612004-10-12  Kim F. Storm  <storm@cua.dk>
12662
12663	* xdisp.c (redisplay_preserve_echo_area): Flush display in case
12664	caller, such as call-process, is not going to poll for input.
12665	(calc_line_height_property): Handle case where it->object is nil.
12666
12667	* xterm.c (x_redisplay_interface): Fix flush_display_optional.
12668
126692004-10-12  Kenichi Handa  <handa@m17n.org>
12670
12671	* xdisp.c (get_next_display_element):
12672	If unibyte_display_via_language_environment is zero, display 8-bit
12673	chars in octal in unibyte buffer.
12674
126752004-10-12  Kim F. Storm  <storm@cua.dk>
12676
12677	* doc.c (Fsubstitute_command_keys): Ignore remappings unless there
12678	are no ordinary bindings.
12679
126802004-10-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12681
12682	* xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
12683
126842004-10-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12685
12686	* macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
12687	(x_lower_frame): Add BLOCK_INPUT around SendBehind.
12688	(make_mac_frame): Add BLOCK_INPUT around the making of a
12689	terminal frame.
12690	(mac_initialize): Add BLOCK_INPUT around carbon initialization.
12691	* macgui.h (mktime): Use emacs_mktime.
12692	* macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
12693	Make a cancel file-open dialog be like C-g.
12694	* mac.c (mktime): Use emacs_mktime.
12695	(Fdo_applescript): Add BLOCK_INPUT around do_applescript.
12696	(Fmac_paste_function): Add better error handling for carbon cut/paste.
12697
126982004-10-10  Kim F. Storm  <storm@cua.dk>
12699
12700	* keyboard.c (timer_resume_idle): New function to resume idle
12701	timer without resetting timers on the idle list.
12702	(read_char): Use timer_resume_idle.  Remove local var last_idle_start.
12703	(timer_start_idle, timer_stop_idle): Declare static.
12704	(read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
12705
12706	* keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
12707
127082004-10-08  Steven Tamm  <steventamm@mac.com>
12709
12710	* config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
12711	* macterm.c (mac_check_for_quit_char): Remove warning for using
12712	NULL where 0 should be used.
12713	* unexmacosx.c: Use malloc/malloc.h on Tiger instead of
12714	objc/malloc.h
12715	* mac.c: Include time.h for Tiger compatibility.
12716
127172004-10-07  Kim F. Storm  <storm@cua.dk>
12718
12719	* xdisp.c (redisplay_window): Fix flicker on vertical line between
12720	windows.  Update vertical line after drawing window fringes, but
12721	only if actually drawing any bitmaps--or there is no fringe.
12722
12723	* xterm.c (x_update_window_end): Likewise.
12724	* macterm.c (x_update_window_end): Likewise.
12725	* w32term.c (x_update_window_end): Likewise.
12726
12727	* fringe.c (draw_window_fringes): Return value now indicates if
12728	any fringe bitmaps were redrawn (or there are no fringes).
12729
12730	* dispextern.h (draw_window_fringes): Update prototype.
12731
127322004-10-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12733
12734	* macfns.c (mac_get_window_bounds): Add extern.
12735	(x_real_positions): Use mac_get_window_bounds.
12736
12737	* macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
12738	xmenu.c (YAILOM).
12739
12740	* macterm.c [!MAC_OSX]: Include Windows.h.
12741	(front_emacs_window): Rename from mac_front_window.  All uses
12742	changed.  Return the frontmost non-tooltip emacs window.
12743	(mac_get_window_bounds): New function.
12744	(x_calc_absolute_position): Use the difference of width and height
12745	between the inner and outer window.
12746	(x_set_offset): Specify window position by the coordinae of the
12747	outer window.  Adjust the position if the title bar is completely
12748	outside the screen.
12749	(app_is_suspended, app_sleep_time): Remove unused variables.
12750	(do_app_resume, do_app_suspend): Remove their contents because
12751	window-activate/deactivate events will do the job.
12752	(do_zoom_window): Remove unused variables.  Make compliant to the
12753	standard way of zooming.  Set f->left_pos and f->top_pos.
12754	(XTread_socket): Don't use argument `expected'.  Don't use
12755	FrontWindow to determine the clicked window.  Exclude unprocessed
12756	mouseUp cases in the early stage.  Add parentheses to fix operator
12757	precedence.
12758	(XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
12759
127602004-10-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12761
12762	* config.in: Regenerate.
12763
12764	* Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
12765	HAVE_EXECSHIELD.
12766
127672004-10-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12768
12769	* xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
12770	a row if Alt or Meta has been found for that row.  Also stop scanning
12771	for Keysyms for that row.
12772
127732004-10-04  Kim F. Storm  <storm@cua.dk>
12774
12775	* fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
12776	to list.  Include overlay arrow bitmap in return value.
12777
12778	* xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
12779	bars with fractional column width.  If scroll bar separates two
12780	windows, move it towards the window it belongs to.  Only update
12781	the padding area below the scroll bar widget when necessary,
12782	i.e. when scroll bar widget is created, moved, or resized.
12783
12784	* xdisp.c (define_frame_cursor1): Do not change frame cursor
12785	while tracking/dragging mouse.
12786	(x_draw_vertical_border): Do not draw line if frame has scroll bars.
12787
12788	* window.c (coordinates_in_window): Relax check for cursor
12789	on vertial border between mode lines.
12790	(Fset_window_fringes): Do not allow negative widths.
12791	(Fset_window_scroll_bars): Likewise.
12792
12793	* .gdbinit (pp): Shorthand for p ARG + pr.
12794	(ff): New command: flush frame updates (X only).
12795
127962004-10-03  Michael Albinus  <michael.albinus@gmx.de>
12797
12798	* fileio.c (auto_save_1) Call Ffile_modes for remote files.
12799
128002004-09-30  Kenichi Handa  <handa@m17n.org>
12801
12802	* process.c (send_process): Free composition data.
12803
12804	* fileio.c (Finsert_file_contents): Free composition data.
12805
12806	* coding.c (code_convert_region): Don't skip ASCIIs if there are
12807	compositions to encode.
12808	(encode_coding_string): Likewise.  Free composition data.
12809
128102004-09-30  Florian Weimer  <fw@deneb.enyo.de>
12811
12812	* coding.c (code_convert_region): Free composition data.
12813
128142004-09-29  Kim F. Storm  <storm@cua.dk>
12815
12816	* fringe.c: Remove limit on number of bitmaps.
12817	(fringe_bitmaps, fringe_faces): Change to pointers.
12818	(max_fringe_bitmaps): New var.
12819	(Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
12820	(init_fringe): Allocate fringe_bitmaps and fringe_faces.
12821
12822	* dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
12823	(struct glyph_row): Reorder fringe_bitmap related fields.
12824	(struct it): Likewise.
12825
12826	* w32term.c (fringe_bmp): Change to pointer.
12827	(max_fringe_bmp): New var.
12828	(w32_define_fringe_bitmap): Expand fringe_bmp.
12829	(w32_draw_fringe_bitmap): Check max_fringe_bmp.
12830	(w32_destroy_fringe_bitmap): Likewise.
12831
128322004-09-29  Kim F. Storm  <storm@cua.dk>
12833
12834	* fringe.c: Simplify last change.
12835	(lookup_fringe_bitmap): New function.
12836	(valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
12837	(Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
12838	Keep standard bitmaps in Vfringe_bitmaps.
12839	(Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
12840	(Fset_fringe_bitmap_face): Likewise.
12841
12842	* dispextern.h (lookup_fringe_bitmap): Add prototype.
12843	(valid_fringe_bitmap_p): Remove prototype.
12844
12845	* xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
12846
128472004-09-29  Kim F. Storm  <storm@cua.dk>
12848
12849	* fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
12850	(w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
12851
12852	* dispextern.h (valid_fringe_bitmap_p): Fix prototype.
12853
12854	* fringe.c (Vfringe_bitmaps): New variable.
12855	(syms_of_fringe): DEFVAR_LISP it.
12856	(valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
12857	Change arg to Lisp_Object and fail if not an integer.
12858	(get_fringe_bitmap_name, resolve_fringe_bitmap)
12859	(destroy_fringe_bitmap): New functions.
12860	(Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
12861	Use destroy_fringe_bitmap.  Remove symbol from Vfringe_bitmaps and
12862	clear its fringe property.
12863	(init_fringe_bitmap): Use destroy_fringe_bitmap instead of
12864	Fdestroy_fringe_bitmap.
12865	(Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
12866	bitmap symbol; remove WHICH arg.  Add symbol to Vfringe_bitmaps
12867	and set fringe property.  Signal error if no free slots.
12868	(Fset_fringe_bitmap_face): Change arg to bitmap symbol.
12869	(Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
12870
12871	* xdisp.c (handle_single_display_prop): Fringe bitmaps are now
12872	symbols with a fringe property.
12873
128742004-09-27  Kim F. Storm  <storm@cua.dk>
12875
12876	* buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
12877	Doc fix.  Format may now be a symbol or alist, not a cons.
12878
12879	* fringe.c (update_window_fringes): Handle new formats of
12880	indicate-buffer-boundaries (symbol or alist).  No longer
12881	allow a simple cons.
12882	(Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
12883
128842004-09-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12885
12886	* config.in: Rebuild.
12887
128882004-09-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12889
12890	* config.in: Rebuild.
12891
12892	* Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
12893
128942004-09-18  Stefan Monnier  <monnier@iro.umontreal.ca>
12895
12896	* xterm.c (x_term_init): Work around a bug in some X servers.
12897
128982004-09-18  Richard M. Stallman  <rms@gnu.org>
12899
12900	* buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
12901
12902	* xdisp.c (try_window_reusing_current_matrix):
12903	Handle the case where we reach the old displayed text,
12904	out of sync with the old line boundary.
12905
129062004-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
12907
12908	* fileio.c (Finsert_file_contents): Fix case of replacement in a
12909	narrowed buffer.
12910
129112004-09-14  Kim F. Storm  <storm@cua.dk>
12912
12913	* puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
12914
12915	* xfaces.c (Qface_no_inherit): New var.
12916	(syms_of_xfaces): Intern and staticpro it.
12917	(Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
12918	(Finternal_copy_lisp_face, update_face_from_frame_parameter):
12919	Don't increment face_change_count when face has non-nil
12920	face-no-inherit property.
12921
129222004-09-13  Stefan Monnier  <monnier@iro.umontreal.ca>
12923
12924	* bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
12925	(Fbyte_code): Remove dead code after `wrong_type_argument'.
12926
12927	* alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
12928	before doing the mark_stack_check_gcpros since they're not on the stack.
12929
129302004-09-12  Kim F. Storm  <storm@cua.dk>
12931
12932	* editfns.c (Fformat): Handle format strings with multiple text
12933	properties.  Reverse text property list from the format string,
12934	so the positions are in increasing order.
12935
129362004-09-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
12937
12938	* xselect.c (x_reply_selection_request): XSync and UNBLOCK before
12939	x_uncatch_errors so that possible protocol errors are delivered.
12940
129412004-09-10  Eli Zaretskii  <eliz@gnu.org>
12942
12943	* Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
12944	blockinput.h.
12945	(dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
12946	charset.h, and coding.h
12947	(w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
12948	(term.o): Depend on window.h and keymap.h.
12949	(abbrev.o): Depend on syntax.h.
12950	(callint.o): Depend on keymap.h.
12951	(casefiddle.o): Depend on charset.h and keymap.h.
12952	(category.o): Depend on keymap.h.
12953	(coding.o): Depend on dispextern.h.
12954	(cmds.o): Depend on keyboard.h and keymap.h.
12955	(dispnew.o): Depend on indent.h and intervals.h.
12956	(doc.o): Depend on keymap.h.
12957	(editfns.o): Depend on frame.h.
12958	(emacs.o): Depend on dispextern.h.
12959	(fileio.o): Don't depend on ccl.h.
12960	(filelock.o): Depend on charset.h and coding.h.
12961	(frame.o): Depend on w32term.h and macterm.h.
12962	(insdel.o): Depend on region-cache.h.
12963	(keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
12964	(minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
12965	(search.o): Depend on $(INTERVALS_SRC).
12966	(syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
12967	(window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
12968	xterm.h, w32term.h, and macterm.h.
12969	(xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
12970	w32term.h, and macterm.h.
12971	(xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
12972	region-cache.h, xterm.h, w32term.h, and macterm.h.
12973	(bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
12974	(data.o): Depend on frame.h.
12975	(fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
12976	(print.o): Depend on termchar.h and $(INTERVALS_SRC).
12977	(lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
12978	(intervals.o): Depend on keymap.h.
12979
12980	* msdos.c (msdos_set_cursor_shape, IT_display_cursor):
12981	Add debugging print-out to termscript.
12982
129832004-09-09  Richard M. Stallman  <rms@gnu.org>
12984
12985	* xdisp.c (decode_mode_spec): Use current buffer for most purposes.
12986
129872004-09-08  Richard M. Stallman  <rms@gnu.org>
12988
12989	* window.c (Fset_window_buffer): Doc fix.
12990
12991	* xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
12992
129932004-09-08  Dan Nicolaescu  <dann@ics.uci.edu>
12994
12995	* minibuf.c (history_delete_duplicates): New variable.
12996	(read_minibuf): Use it.
12997	(syms_of_minibuf): Create the corresponding lisp variable.
12998
129992004-09-08  Kim F. Storm  <storm@cua.dk>
13000
13001	* xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
13002	overlay just before point.
13003
130042004-09-07  Luc Teirlinck  <teirllm@auburn.edu>
13005
13006	* buffer.h (struct buffer): Add auto_save_file_format field.
13007	* buffer.c (reset_buffer, init_buffer_once):
13008	Handle auto_save_file_format field.
13009	(syms_of_buffer): Add DEFVAR_PER_BUFFER for
13010	`buffer-auto-save-file-format'.
13011	* fileio.c: Delete declaration for removed Vauto_save_file_format.
13012	(build_annotations): Adapt to replacement of
13013	`auto-save-file-format' with the new buffer-local variable
13014	`buffer-auto-save-file-format'.
13015	(syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
13016
130172004-09-07  Jason Rumney  <jasonr@gnu.org>
13018
13019	* w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
13020
13021	* w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
13022	Handle Unicode menu titles.
13023
130242004-09-07  Kim F. Storm  <storm@cua.dk>
13025
13026	* xdisp.c (set_cursor_from_row): Fix last change.  Only use 'cursor'
13027	property from text property or overlay strings at point.
13028
130292004-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
13030
13031	* xmenu.c (update_submenu_strings): YAILOM.
13032	(set_frame_menubar): Make sure last_i is initialized.
13033
130342004-09-03  Jason Rumney  <jasonr@gnu.org>
13035
13036	* w32menu.c (_widget_value): Add lname and lkey.
13037	(digest_single_submenu): Set lname and lkey in widget_value
13038	instead of name and key.
13039	(update_submenu_strings): New function.
13040	(set_frame_menubar): Remove call to inhibit_garbage_collection,
13041	call update_submenu_strings.
13042
13043	* w32menu.c (globals_of_w32menu): Check for Unicode API.
13044	(digest_single_submenu, w32_menu_show): Encode menu strings as
13045	UTF-8 if Unicode API is available.
13046	(utf8to16): New function.
13047	(add_menu_item): Use it when calling Unicode API.
13048
130492004-09-03  Kim F. Storm  <storm@cua.dk>
13050
13051	* xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
13052	in overlay or text-property strings; set cursor on corresponding
13053	glyph rather than at end of the string.
13054
130552004-09-02  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13056
13057	* macfns.c (x_real_positions): Save the current window port and
13058	set a new one before obtaining the global coordinate.
13059	Use FRAME_MAC_WINDOW.
13060	(x_set_name, x_set_title): Encode title to UTF8.
13061	Use SetWindowTitleWithCFString.
13062	(Fx_server_version): Get correct OS version.
13063
13064	* macmenu.c (add_menu_item): Remove unused variable `i'.
13065	Don't let separator items destroy refence constants of other menu items.
13066
13067	* macterm.c (x_update_end): Move SetPortWindowPort to inside
13068	BLOCK_INPUT.
13069	(x_set_offset): Use FRAME_MAC_WINDOW.
13070
13071	* xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
13072	nontext_cursor if it is on a scroll bar.
13073
13074	* s/darwin.h (LIBS_CARBON): New define to specify libraries for
13075	Carbon support.
13076	(LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
13077	Use LIBS_CARBON.
13078
130792004-09-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13080
13081	* xfns.c (x_set_name_internal): New function.  Check if we shall call
13082	xfree before ENCODE_UTF_8.
13083	(x_set_name, x_set_title): Call x_set_name_internal.
13084
130852004-08-31  NAKAMURA Toshikazu  <nr-tkz@nifty.com>  (tiny change)
13086
13087	* w32fns.c (w32_load_font): If a BDF font is already loaded, do not
13088	reload it.
13089
130902004-08-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13091
13092	* macmenu.c (_widget_value): Add lname and lkey.
13093	(single_submenu): Set lname and lkey in widget_value
13094	instead of name and key.
13095	(update_submenu_strings): New function.
13096	(set_frame_menubar): Remove call to inhibit_garbage_collection,
13097	call update_submenu_strings.
13098
13099	* xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
13100	instead of name and key.
13101	(update_submenu_strings): New function.
13102	(set_frame_menubar): Remove call to inhibit_garbage_collection,
13103	call update_submenu_strings.
13104
13105	* gtkutil.h (_widget_value): Added lname and lkey.
13106
131072004-08-30  Steven Tamm  <steventamm@mac.com>
13108
13109	* macmenu.c (mac_menu_show): Remove shadowing of menu variable
13110	by using different names for inner loop variables.
13111
131122004-08-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13113
13114	* xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
13115	from 1.233 so that strings from ENCODE_UTF_8 isn't GC:ed before used.
13116
13117	* gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
13118	tool bar items is 0.
13119
131202004-08-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13121
13122	* macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
13123	strings in menu items.
13124	(single_submenu): Use ENCODE_MENU_STRING
13125	(mac_menu_show): Use ENCODE_MENU_STRING.  Reset grabbed because
13126	button release isn't passed to event loop
13127	(add_menu_item): Use SetMenuItemWithCFString
13128
131292004-08-26  Steven Tamm  <steventamm@mac.com>
13130
13131	* fileio.c (Fread_file_name): Call x_file_dialog on carbon on
13132	tool-bar/menu click.
13133	* macfns.c (Fx_file_dialog): Implement using NavServices.
13134
131352004-08-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13136
13137	* xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
13138
13139	* xfns.c (x_window_to_frame, x_any_window_to_frame)
13140	(x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13141	(x_top_window_to_frame): Return 0 if wdesc is None.
13142
131432004-08-22  Richard M. Stallman  <rms@gnu.org>
13144
13145	* process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
13146	HAVE_TERMIOS]: If there's no char for this signal, drop through
13147	and use system calls.
13148
13149	* bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
13150
131512004-08-20  Kim F. Storm  <storm@cua.dk>
13152
13153	* process.c (wait_reading_process_output): Rename from
13154	wait_reading_process_input.  All uses changed.
13155	(wait_reading_process_output_1): Rename from
13156	wait_reading_process_input_1.  All uses changed.
13157
13158	* dispnew.c (Fsleep_for): Remove obsolete code.
13159
131602004-08-20  Kenichi Handa  <handa@m17n.org>
13161
13162	* syntax.c (skip_chars): Fix for unibyte case.
13163
131642004-08-19  Stefan Monnier  <monnier@iro.umontreal.ca>
13165
13166	* syntax.c (char_quoted): Mixup byte/char pos.
13167	(back_comment): Fixup globals in all cases.
13168
131692004-08-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13170
13171	* xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
13172	passing it to gtk_window_set_title.
13173
131742004-08-19  Kim F. Storm  <storm@cua.dk>
13175
13176	* process.c (wait_reading_process_input): Clean up.
13177	Add wait_for_cell, wait_proc, and just_wait_proc args
13178	to avoid overloading `read_kbd' and `do_display' args.
13179	Change read_kbd arg to int.  All callers changed.
13180
13181	* process.c (process_send_signal): Use CDISABLE.
13182
13183	* sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
13184
131852004-08-18  Kim F. Storm  <storm@cua.dk>
13186
13187	* process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
13188	forward to wait_reading_process_input via DO_DISPLAY arg.
13189	(wait_reading_process_input): If DO_DISPLAY < 0 for a process
13190	object, only process output from that process; also inhibit
13191	running timers if DO_DISPLAY==-2.
13192
131932004-08-17  Kim F. Storm  <storm@cua.dk>
13194
13195	* process.c (process_send_signal): Fix last change--use
13196	_POSIX_VDISABLE instead of CVDISABLE when available.
13197
131982004-08-16  Richard M. Stallman  <rms@gnu.org>
13199
13200	* sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
13201	Set VQUIT and VINTR chars to the standard ones if they are unset.
13202	[AIX]: Don't do that here.  And don't force VINTR to standard
13203	when SIGNALS_VIA_CHARACTERS.
13204
13205	* process.c (process_send_signal)
13206	[SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
13207	Do nothing if the character is CVDISABLE.
13208
13209	* xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
13210
13211	* intervals.c (move_if_not_intangible):
13212	Force POSITION to be between BEGV and ZV.
13213
132142004-08-14  John Paul Wallington  <jpw@gnu.org>
13215
13216	* buffer.c (Frestore_buffer_modified_p): Doc fix.
13217
13218	* fileio.c (Fread_file_name): Doc fix.
13219
13220	* minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
13221
132222004-08-09  Luc Teirlinck  <teirllm@auburn.edu>
13223
13224	* keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
13225
132262004-08-08  Luc Teirlinck  <teirllm@auburn.edu>
13227
13228	* keyboard.c: Declare Qdisabled_command_function instead of
13229	Qdisabled_command_hook.
13230	(Fcommand_execute): Use Qdisabled_command_function instead of
13231	Qdisabled_command_hook.
13232	(syms_of_keyboard): Ditto.
13233
132342004-08-07  Luc Teirlinck  <teirllm@auburn.edu>
13235
13236	* keymap.c (Flocal_key_binding, Fglobal_key_binding)
13237	(syms_of_keymap) <key-translation-map>: Doc fixes.
13238
132392004-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
13240
13241	* window.c (window_list_1): YAILOM.
13242
13243	* fileio.c (make_temp_name): Handle multibyte prefixes.
13244
132452004-08-06  Luc Teirlinck  <teirllm@auburn.edu>
13246
13247	* keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
13248	Doc fix.
13249
132502004-08-03  Kenichi Handa  <handa@m17n.org>
13251
13252	* coding.c (decode_coding_string): Adjust coding->consumed, and
13253	etc. with shrinked_bytes.
13254
132552004-08-03  Kim F. Storm  <storm@cua.dk>
13256
13257	* indent.c (compute_motion): Fix check for full width window
13258	in non-window case.  Do not count left truncation glyph on
13259	window systems.
13260
132612004-08-02  Luc Teirlinck  <teirllm@auburn.edu>
13262
13263	* data.c (Finteractive_form): Doc fix.
13264
132652004-08-02  Kim F. Storm  <storm@cua.dk>
13266
13267	* indent.c (compute_motion): Use actual window width if WIDTH is -1,
13268	properly accounting for continuation glyph on non-window systems.
13269	(Fcompute_motion): Use actual window width if WIDTH is nil, and
13270	actual window width/height if TOPOS is nil, properly accounting for
13271	continuation glyphs on non-window systems, and optional header lines.
13272	(vmotion): Let compute_motion calculate actual window width.
13273
13274	* window.c (window_scroll_line_based): Let compute_motion
13275	calculate actual window width.
13276
132772004-08-02  Kim F. Storm  <storm@cua.dk>
13278
13279	* process.c (read_process_output): Use whole read buffer.
13280	Don't trigger adaptive read buffering on errors.
13281
132822004-07-31  Luc Teirlinck  <teirllm@auburn.edu>
13283
13284	* keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
13285
13286	* keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
13287
13288	* callint.c (Fcall_interactively): Doc fix.
13289
132902004-07-30  Richard M. Stallman  <rms@gnu.org>
13291
13292	* abbrev.c (Fexpand_abbrev): Undo previous change.
13293
132942004-07-30  Kim F. Storm  <storm@cua.dk>
13295
13296	* editfns.c (Fformat): Allocate extra (dummy) element in info.
13297
132982004-07-28  Luc Teirlinck  <teirllm@auburn.edu>
13299
13300	* eval.c (Fdefvar, Fdefconst): Doc fixes.
13301
133022004-07-27  Kim F. Storm  <storm@cua.dk>
13303
13304	* xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
13305	we have ensured that the glyph fits on the current line (or returned
13306	MOVE_LINE_CONTINUED otherwise).
13307
133082004-07-26  Kim F. Storm  <storm@cua.dk>
13309
13310	* xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
13311	is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
13312	if target position is at end of display line but char is not a newline.
13313
133142004-07-25  Richard M. Stallman  <rms@gnu.org>
13315
13316	* window.c (coordinates_in_window): Return ON_SCROLL_BAR
13317	instead of ON_VERTICAL_BORDER, when on scroll bar.
13318	(Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
13319
13320	* dispextern.h (enum window_part): Add ON_SCROLL_BAR.
13321
13322	* window.c (Fcoordinates_in_window_p):
13323	Take account of FRAME_INTERNAL_BORDER_WIDTH.
13324
13325	* alloc.c (check_cons_list): New function (contents commented out).
13326
133272004-07-24  Luc Teirlinck  <teirllm@auburn.edu>
13328
13329	* xfaces.c (Fcolor_supported_p): Doc fix.
13330
13331	* frame.c (Fselect_frame, Fset_frame_selected_window)
13332	(Fframe_visible_p, Fraise_frame): Doc fixes.
13333
133342004-07-24  Richard M. Stallman  <rms@gnu.org>
13335
13336	* keyboard.h (not_single_kboard_state): Declare.
13337
13338	* fileio.c (Fwrite_region): Doc fix.
13339
13340	* window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
13341
13342	* abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
13343	only when a real abbrev is present.
13344
13345	* xfns.c (x_icon_verify): New function.
13346	(Fx_create_frame): Use it.
13347
133482004-07-22  Barry Fishman  <barry_fishman@att.net>  (tiny change)
13349
13350	* s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
13351
133522004-07-21  Kim F. Storm  <storm@cua.dk>
13353
13354	* window.h (struct glyph_matrix): New members nrows_scale_factor
13355	and ncols_scale_factor.
13356
13357	* window.c (make_window): Initialize nrows_scale_factor and
13358	ncols_scale_factor members.
13359
13360	* dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
13361	(allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
13362	(required_matrix_height): Apply nrows_scale_factor.
13363	(required_matrix_width): Apply ncols_scale_factor.
13364
13365	* xdisp.c (display_line): Increment nrows_scale_factor and set
13366	fonts_changed_p if past last allocated row.
13367	(append_glyph, append_composite_glyph, produce_image_glyph)
13368	(append_stretch_glyph): Increment ncols_scale_factor and set
13369	fonts_changed_p if current area is full.
13370
133712004-07-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13372
13373	* widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
13374
133752004-07-19  Luc Teirlinck  <teirllm@auburn.edu>
13376
13377	* window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
13378	(Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
13379	(Fset_window_start, Fscroll_up, Fscroll_down)
13380	(Fother_window_for_scrolling, Fscroll_other_window)
13381	(Fsave_window_excursion, Fset_window_vscroll)
13382	(syms_of_window) <window-size-fixed>: Doc fixes.
13383
133842004-07-19  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
13385
13386	* w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
13387	ENCODE_SYSTEM for filenames.
13388
133892004-07-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13390
13391	* mac.c (sys_select): Block input around call to
13392	ReceiveNextEvent to prevent breakage.  Correctly handle
13393	blocking on event queue only by calling ReceiveNextEvent
13394	instead of select (since GUI events aren't on an fd).
13395	(sys_read): Remove function
13396	* sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
13397
133982004-07-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13399
13400	* mac.c (sys_select): Redo sys_select to use alarm-based
13401	polling instead of 1 sec timeouts (like solaris).
13402
13403	* macterm.c (x_make_frame_visible): Comment in polling on
13404	frame creation.
13405
13406	* keyboard.c: Undef SIGIO on Carbon
13407
13408	* atimer.c (alarm_signal_handler): Call alarm handlers after
13409	scheduling.
13410
13411	* eval.c (Feval): Remove quit_char test
13412
13413	* process.c (wait_reading_process_input): Remove clearing
13414	stdin for select call on process input.
13415
134162004-07-18  Luc Teirlinck  <teirllm@auburn.edu>
13417
13418	* xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
13419	capitalization error in docstring.
13420
134212004-07-17  Juanma Barranquero  <lektu@terra.es>
13422
13423	* keyboard.c (not_single_kboard_state): Do nothing unless
13424	MULTI_KBOARD is defined.
13425
134262004-07-17  Richard M. Stallman  <rms@gnu.org>
13427
13428	* window.c (coordinates_in_window): Inside the window but outside
13429	its box to the L or R, return ON_VERTICAL_BORDER.
13430	(window_list_1): Rotate the list to start with WINDOW.
13431
13432	* print.c (print_preprocess): Test for print_depth at limit
13433	before entering in being_printed.
13434
13435	* keyboard.c (not_single_kboard_state): New function.
13436	(stuff_buffered_input): Now no-op only if no SIGTSTP.
13437
13438	* frame.c (Fdelete_frame): If we're in single_bboard_state on
13439	this kboard, and we delete its last frame, go to any_kboard_state.
13440
13441	* buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
13442
134432004-07-15  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
13444
13445	* w32fns.c (Fx_file_dialog): Encode strings in system coding
13446	system before passing them to OS functions for display.
13447
134482004-07-15  David Kastrup  <dak@gnu.org>
13449
13450	* search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
13451	Apparently fixes an abort condition.
13452
134532004-07-14  Luc Teirlinck  <teirllm@auburn.edu>
13454
13455	* fileio.c (Fvisited_file_modtime): Return a list of two integers,
13456	instead of a cons.
13457
134582004-07-14  K,Aa(Broly L$,1 q(Brentey  <lorentey@elte.hu>
13459
13460	* keyboard.c (echo_dash): Do nothing if there already is a dash
13461	at the end of the echo string.
13462
134632004-07-12  Kim F. Storm  <storm@cua.dk>
13464
13465	* alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
13466	if GC_MARK_STACK.
13467
134682004-07-10  Luc Teirlinck  <teirllm@auburn.edu>
13469
13470	* buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
13471
13472	* window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
13473	(Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
13474	(Freplace_buffer_in_windows, Fset_window_buffer)
13475	(Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
13476	(syms_of_window): Expand docstring of `display-buffer-function'.
13477
134782004-07-09  Luc Teirlinck  <teirllm@auburn.edu>
13479
13480	* editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
13481	(Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
13482	that time values of the type (HIGH . LOW) are considered obsolete.
13483
134842004-07-06  Luc Teirlinck  <teirllm@auburn.edu>
13485
13486	* keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
13487	docstring.
13488
13489	* fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
13490
134912004-07-06  John Paul Wallington  <jpw@gnu.org>
13492
13493	* eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
13494
13495	* fns.c (Fclear_string): Signal an error if STRING is not a string.
13496
134972004-07-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13498
13499	* macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
13500	instead of CGMainDisplayID (only in OSX 10.2 and later).
13501
135022004-07-04  John Paul Wallington  <jpw@gnu.org>
13503
13504	* fileio.c (read_file_name_completion_ignore_case): New variable.
13505	(syms_of_fileio): Declare and initialise it.
13506	(Fread_file_name): Bind `completion-ignore-case' to respect it.
13507
135082004-07-03  Eli Zaretskii  <eliz@gnu.org>
13509
13510	* msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
13511	for event.x and event.y.
13512
135132004-07-01  Kenichi Handa  <handa@m17n.org>
13514
13515	* w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
13516	after getting a new string by pre-write-conversion.
13517
135182004-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
13519
13520	* xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
13521	(x_calc_absolute_position): Remove unused var `child'.
13522
13523	* xfaces.c (x_supports_face_attributes_p)
13524	(Fdisplay_supports_face_attributes_p): YAILOM.
13525	(tty_supports_face_attributes_p): Remove unused var `i'.
13526
13527	* syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
13528	back_unibyte_ok.
13529
13530	* search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
13531
13532	* fontset.c (Fset_fontset_font): Remove unused vars `family' and
13533	`registry'.
13534
13535	* Makefile.in (${etc}DOC): Fix file name of make-docfile.
13536
135372004-06-30  Andreas Schwab  <schwab@suse.de>
13538
13539	* image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
13540	(Finit_image_library): Pass LIBRARIES through to
13541	CHECK_LIB_AVAILABLE.  Declare parameters.  Doc fix.
13542	(lookup_image_type): Pass Qnil as second argument to
13543	Finit_image_library.
13544
13545	* lisp.h (Finit_image_library): Declare.
13546
135472004-06-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13548
13549	* macterm.c (do_window_activate, do_window_deactivate): Remove.
13550	(XTread_socket): Send mouse button events to the toolbox
13551	dispatcher even when the mouse is grabbed.  Don't process window
13552	activate events for non-Emacs windows.  Replace function calls to
13553	do_window_activate and do_window_deactivate with their contents.
13554	Reset mouse grabbing status when a window is deactivated.
13555
135562004-06-29  Steven Tamm  <steventamm@mac.com>
13557
13558	* macterm.c (mac_get_emulated_btn)
13559	(mac_event_to_emacs_modifiers): Fix emulated mouse button
13560	support to correctly mask out modifiers.
13561
135622004-06-29  David Kastrup  <dak@gnu.org>
13563
13564	* search.c (Fset_match_data): Allow buffer before end of list
13565	which can happen if set-match-data is using a pre-consed list.
13566
135672004-06-28  Steven Tamm  <steventamm@mac.com>
13568
13569	* macterm.c (XTread_socket): Correctly set the frame position
13570	after the window is moved.
13571
135722004-06-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13573
13574	* gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
13575	gpix and gmask just before return to avoid memory leak.
13576	(xg_get_image_for_pixmap): Add workaround for monochrome displays
13577	so insensitive and activated icons look ok.
13578
135792004-06-27  Jason Rumney  <jasonr@gnu.org>
13580
13581	* w32fns.c (file_dialog_callback): Disable edit control if set
13582	to directories only on CDN_INITDONE message.
13583	(Fx_file_dialog): Default to directories only when prompt starts
13584	with "Dired".
13585
135862004-06-25  Kim F. Storm  <storm@cua.dk>
13587
13588	* alloc.c (allocate_misc): Update total_free_markers.
13589	(free_misc): New function.
13590	(safe_alloca_unwind, free_marker): Use it.
13591
13592	* lisp.h (free_misc): Add prototype.
13593
13594	* fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
13595
135962004-06-24  Richard M. Stallman  <rms@gnu.org>
13597
13598	* emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
13599	(syms_of_emacs): Lisp variables deleted.
13600
136012004-06-23  David Kastrup  <dak@gnu.org>
13602
13603	* search.c (Freplace_match): Adjust the match-data more thoroughly
13604	when replacing strings in the buffer.
13605	(Fmatch_data): When INTEGERS is non-nil and the last match was in
13606	a buffer, add the buffer as last element to the match data.
13607	(Fset_match_data): If an additional element of the match-data is a
13608	buffer, restore it to last_thing_searched.
13609	(save_search_regs): Save last_thing_searched as part of the match data.
13610	(restore_match_data): Restore it again.
13611
136122004-06-23  Luc Teirlinck  <teirllm@auburn.edu>
13613
13614	* keymap.c (Ftext_char_description): Doc fix.
13615	* doc.c (Fsnarf_documentation): Doc fix.
13616
136172004-06-22  Kim F. Storm  <storm@cua.dk>
13618
13619	* fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
13620
13621	* lisp.h (struct Lisp_Save_Value): New member dogc.
13622	(SAFE_ALLOCA_LISP): Change second arg to number of elements.
13623	Set dogc member in Lisp_Save_Value object so it will be GC'ed.
13624	(SAFE_FREE_LISP): New macro.
13625
13626	* alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
13627	(make_save_value): Init new dogc member.
13628	(mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
13629
13630	* fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
13631	SAFE_FREE_LISP macros.
13632
136332004-06-22  Kim F. Storm  <storm@cua.dk>
13634
13635	* lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
13636	Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
13637	in that memory area are unknown to GC.  Add comments.
13638
13639	* fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
13640
136412004-06-21  Kim F. Storm  <storm@cua.dk>
13642
13643	* lisp.h (MAX_ALLOCA): Define here.
13644	(safe_alloca_unwind): Add prototype.
13645	(USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
13646
13647	* alloc.c (safe_alloca_unwind): New function.
13648
13649	* casefiddle.c (casify_object): Use SAFE_ALLOCA.
13650
13651	* charset.c (Fstring): Use SAFE_ALLOCA.
13652
13653	* coding.c (MAX_ALLOCA): Remove define.
13654
13655	* data.c (MAX_ALLOCA): Remove define.
13656	(Faset): Use SAFE_ALLOCA.
13657
13658	* editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
13659
13660	* fns.c (string_make_multibyte, string_to_multibyte)
13661	(string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
13662	(MAX_ALLOCA): Remove define.
13663	(Fbase64_encode_region, Fbase64_encode_string)
13664	(Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
13665	(Fbase64_encode_region, Fbase64_encode_string): Fix potential
13666	memory leak if encoding fails.
13667
13668	* xdisp.c (add_to_log): Use SAFE_ALLOCA.
13669
136702004-06-21  Eli Zaretskii  <eliz@gnu.org>
13671
13672	* print.c (Fwith_output_to_temp_buffer): Doc fix.
13673
136742004-06-20  Richard M. Stallman  <rms@gnu.org>
13675
13676	* xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
13677
13678	* search.c (match_limit): Cleaner err msg when no match data available.
13679
13680	* window.c (syms_of_window): Doc fix.
13681
13682	* keyboard.c (command_loop_1): Handle values `only' and `identity'
13683	for Vtransient_mark_mode.
13684
13685	* buffer.c (syms_of_buffer): Doc fix.
13686
136872004-06-21  David Kastrup  <dak@gnu.org>
13688
13689	* minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
13690	and unbinding of `case-fold-search' according to
13691	`completion-ignore-case' around calls of string-match and
13692	predicates, respectively.  Should give satisfactory performance
13693	in all relevant cases.
13694
136952004-06-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13696
13697	* xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
13698	clip_x/y_origin.
13699
13700	* fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
13701
13702	* macfns.c (Fx_display_color_cells): Do not limit return value to 256.
13703
13704	* macterm.c (mac_initialize_display_info): Initialize n_planes correctly
13705	on Mac OSX.
13706
137072004-06-16  Luc Teirlinck  <teirllm@auburn.edu>
13708
13709	* buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
13710
137112004-06-16  Kim F. Storm  <storm@cua.dk>
13712
13713	* dispextern.h (Vimage_types): Remove extern.
13714
137152004-06-16  Miles Bader  <miles@gnu.org>
13716
13717	* image.c (lookup_image_type): Initialize image type if necessary.
13718
137192004-06-15  Kim F. Storm  <storm@cua.dk>
13720
13721	* xdisp.c (try_cursor_movement): Exclude header line from scroll
13722	margin at top of window.
13723	(try_window_reusing_current_matrix): Calculate proper cursor position
13724	after scrolling up with non-zero scroll margin, as the old cursor
13725	position corresponds to value of PT before executing this command.
13726	(try_window_id): Consider scroll margin at bottom of window too;
13727	otherwise we fail to scroll when hl-line-mode is enabled.
13728
13729	* syntax.c (skip_chars): Only recognize [:class:] when it has the
13730	proper format and class is a lower-case word.
13731
137322004-06-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
13733
13734	* gtkutil.c (xg_get_image_for_pixmap): New function.
13735	(xg_get_gdk_pixmap_and_mask): Remove.
13736	(update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
13737	xg_get_gdk_pixmap_and_mask.
13738
13739	* xterm.h (struct x_display_info): Typo in comment fixed.
13740
137412004-06-14  Juanma Barranquero  <lektu@terra.es>
13742
13743	* dispextern.h (Vimage_types): Make it conditional on
13744	HAVE_WINDOW_SYSTEM.
13745
13746	* image.c (Vimage_types): Move from xdisp.c.
13747	(Vimage_type_cache): New variable.
13748	(define_image_type): New argument indicating whether an image
13749	library was loaded; cache loaded status and return t on success,
13750	nil otherwise.
13751	(CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
13752	(w32_delayed_load): New function to load an image library from a
13753	list of possible filenames.
13754	(init_xpm_functions, init_png_functions, init_jpeg_functions)
13755	(init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
13756	(CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
13757	(Finit_image_library): New function, extracted from `init_image'.
13758	Try to initialize an image library on demand and cache whether we
13759	were successful or not.
13760	(syms_of_image): Initialize `Vimage_types' and
13761	`Vimage_type_cache'.  Add recognized image types to Vimage_types.
13762	Export `init-image-library'.
13763	(init_image): Remove initialization of all image types, except xbm
13764	and pbm.
13765
13766	* xdisp.c (Vimage_types): Delete (moved to image.c).
13767
137682004-06-14  Andreas Schwab  <schwab@suse.de>
13769
13770	* minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
13771	Avoid calling specbind when completion-regexp-list is empty.
13772
137732004-06-13  Richard M. Stallman  <rms@gnu.org>
13774
13775	* regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
13776	(re_wctype, re_iswctype, re_wctype_to_bit):
13777	Non-function definitions moved here from regex.c.
13778
13779	* regex.c (re_wctype, re_iswctype): Function defs longer static.
13780	(CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
13781	(re_wctype, re_iswctype, re_wctype_to_bit):
13782	Non-function definitions moved to regex.h.
13783
13784	* window.c (Fselect_window): Doc fix.
13785
13786	* syntax.c: Include regex.h.
13787	(skip_chars): New arg HANDLE_ISO_CLASSES.  Callers changed.
13788	If requested, make a list of classes, then check the scanned
13789	chars for membership in them.
13790	(in_classes): New function.
13791	Doc fix.
13792
13793	* keyboard.c (cmd_error): Don't call any_kboard_state
13794	if inside a recursive edit level.
13795
137962004-06-13  K,Aa(Broly L$,1 q(Brentey  <lorentey@elte.hu>
13797
13798	* keyboard.c (command_loop): Call any_kboard_state before
13799	command_loop_2 when at top level.
13800
138012004-06-13  Andreas Schwab  <schwab@suse.de>
13802
13803	* print.c (print_object): Always use %ld for printing EMACS_INT.
13804
13805	* keyboard.c (cancel_hourglass_unwind): Return a value.
13806	(modify_event_symbol): Always use %ld for printing EMACS_INT.
13807	(Fexecute_extended_command): Likewise.
13808
13809	* syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
13810	avoid clashes.
13811	(SYNTAX): Likewise.
13812	(SYNTAX_WITH_FLAGS): Likewise.
13813	(SYNTAX_MATCH): Likewise.
13814
13815	* syntax.c (char_quoted): Avoid warning about undefined operation.
13816	(find_defun_start): Likewise.
13817	(scan_lists): Likewise.
13818	(INC_FROM): Likewise.
13819	(scan_sexps_forward): Likewise.
13820
13821	* image.c: Include <ctype.h>.
13822
13823	* xfaces.c (face_attr_equal_p): Declare parameters.
13824
138252004-06-13  Kenichi Handa  <handa@m17n.org>
13826
13827	* ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
13828
138292004-06-12  Matthew Mundell  <matt@mundell.ukfsn.org>
13830
13831	* eval.c (Fdefun): Signal an error if NAME is not a symbol.
13832
138332004-06-12  Kenichi Handa  <handa@m17n.org>
13834
13835	* ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
13836	ccl_prog_stack_struct and update it.
13837	(CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
13838	(CCL_READ_CHAR): Get instruction counter from eof_ic, not from
13839	ccl->eof_ic on EOF.
13840	(ccl_debug_hook): New function.
13841	(struct ccl_prog_stack): New member eof_ic.
13842	(ccl_driver): Handle EOF in subrountine call correctly.
13843
138442004-06-11  Kenichi Handa  <handa@m17n.org>
13845
13846	* coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
13847
138482004-06-11  Kim F. Storm  <storm@cua.dk>
13849
13850	* emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
13851
138522004-06-11  Juanma Barranquero  <lektu@terra.es>
13853
13854	* keyboard.c (Fposn_at_point): Doc fix.
13855
138562004-06-11  David Kastrup  <dak@gnu.org>
13857
13858	* search.c (match_limit): Don't flag an error if match-data
13859	exceeding the allocated search_regs.num_regs gets requested, just
13860	return Qnil.
13861
138622004-06-08  Miles Bader  <miles@gnu.org>
13863
13864	* xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
13865
138662004-06-07  Juanma Barranquero  <lektu@terra.es>
13867
13868	* editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
13869	(Fcurrent_time_string, Fcurrent_time_zone)
13870	(Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
13871
138722004-06-07  Miles Bader  <miles@gnu.org>
13873
13874	* xfaces.c (struct named_merge_point): New type.
13875	(push_named_merge_point): New function.
13876	(merge_named_face): New function.
13877	(merge_face_ref, face_at_buffer_position, face_at_string_position):
13878	Use `merge_named_face'.
13879	(merge_face_inheritance): Function removed.
13880	(merge_face_ref): Rename from `merge_face_vector_with_property'.
13881	Add new `err_msgs' and `named_merge_points' args.  Return error
13882	status.  Only print error messages if ERR_MSGS is true.  Don't try to
13883	do :inherit attribute validation.
13884	(merge_face_heights): Handle `unspecified' in both directions.
13885	(merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
13886	Call `merge_face_ref' instead of `merge_face_inheritance'.
13887	(Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
13888	(compute_char_face, face_at_buffer_position)
13889	(face_at_string_position): Call `merge_face_ref' instead of
13890	`merge_face_vector_with_property'.
13891
138922004-06-07  Kenichi Handa  <handa@m17n.org>
13893
13894	* coding.c (find_safe_codings): Check NILP (safe_codings) only at
13895	the necessary places.
13896
138972004-06-07  Kim F. Storm  <storm@cua.dk>
13898
13899	* process.c (Fdelete_process): Undo 2004-05-28 change.
13900	Instead, call status_notify also for network process.
13901	(status_message): Use process instead of status as arg.
13902	Give messages "deleted" or "connection broken by remote peer" for
13903	an exited network process.
13904	(status_notify): Change call to status_message.
13905	(read_process_output): Increase readmax to 4096.  Do not increase
13906	buffer size for datagram channels (default is now large enough).
13907
139082004-06-06  Steven Tamm  <tamm@Steven-Tamms-Computer.local>
13909
13910	* macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
13911	problem due to newly defined variable.
13912
139132004-06-06  Miles Bader  <miles@gnu.org>
13914
13915	* xfaces.c (Fdisplay_supports_face_attributes_p): Give up
13916	immediately if non-interactive or not initialized.
13917
139182004-06-05  Richard M. Stallman  <rms@gnu.org>
13919
13920	* minibuf.c (Fcompleting_read): Doc fix.
13921
139222004-06-05  Andreas Schwab  <schwab@suse.de>
13923
13924	* macfns.c (x_create_tip_frame): Fix declaration after statement.
13925
139262004-06-05  Juanma Barranquero  <lektu@terra.es>
13927
13928	* keymap.c (Fdescribe_vector): Fix docstring.
13929	(Fkey_description, Fglobal_key_binding): Fix typo in docstring.
13930
139312004-06-05  Miles Bader  <miles@gnu.org>
13932
13933	* xfaces.c (tty_supports_face_attributes_p): Make sure the specified
13934	attributes have different values than the default face.
13935
139362004-06-04  Eli Zaretskii  <eliz@gnu.org>
13937
13938	* xfaces.c (x_supports_face_attributes_p): Make this function
13939	conditional on HAVE_WINDOW_SYSTEM.
13940	(Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
13941	Don't call x_supports_face_attributes_p if it was not compiled in.
13942
139432004-06-04  Miles Bader  <miles@gnu.org>
13944
13945	* xfaces.c (tty_supports_face_attributes_p): New function, mostly
13946	from Ftty_supports_face_attributes_p.
13947	(x_supports_face_attributes_p): New function.
13948	(Ftty_supports_face_attributes_p): Function deleted.
13949	(Fdisplay_supports_face_attributes_p): New function.
13950	(syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
13951	(face_attr_equal_p): New function.
13952	(lface_equal_p): Use it.
13953
139542004-06-03  Juanma Barranquero  <lektu@terra.es>
13955
13956	* w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
13957	(Vw32_color_map): Fix typo in docstring.
13958	(Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
13959	(Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
13960	Make argument names match their use in docstring.
13961
139622004-06-02  Juanma Barranquero  <lektu@terra.es>
13963
13964	Work around bugs/problems with MinGW builds of graphics libraries
13965	called from MSVC builds of Emacs.
13966
13967	* image.c (lookup_image): Make pointer to img static.
13968	(png_read_from_memory): Disable "global" optimization.
13969
139702004-06-01  Stefan Monnier  <monnier@iro.umontreal.ca>
13971
13972	* eval.c (Fcondition_case): Fix usage.  Simplify.
13973
13974	* mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
13975
139762004-05-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13977
13978	* macfns.c: Don't include ccl.h.
13979	[MAC_OSX]: Don't include QuickTime/QuickTime.h.
13980	[!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
13981	TextUtils.h.
13982	(Fx_create_frame): Sync with xfns.c.  Initialize cursor descriptors.
13983	(Fx_display_mm_height, Fx_display_mm_width): Calculate length from
13984	display height/width.
13985	(compute_tip_xy, Vx_max_tooltip_size): Declare.
13986	(unwind_create_tip_frame, compute_tip_xy): New functions.
13987	(x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
13988	(syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
13989	and last_show_tip_args.
13990
13991	* macgui.h [!MAC_OSX]: Include Gestalt.h.
13992	(Cursor, No_Cursor): New defines.
13993	[!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
13994	[!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
13995
13996	* macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
13997
13998	* macterm.c: Don't include Gestalt.h.
13999	(enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
14000	(XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
14001	(mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
14002	(XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
14003	(mac_copy_area, mac_copy_area_with_mask, x_update_end)
14004	(construct_mouse_click, XTmouse_position)
14005	(x_scroll_bar_report_motion, x_calc_absolute_position)
14006	(do_mouse_moved, do_zoom_window, mac_do_receive_drag)
14007	(XTread_socket, make_mac_frame): Use SetPortWindowPort.
14008	(note_mouse_movement): Clear the mouse face and reset the pointer
14009	shape when the pointer goes outside the frame without grabbing.
14010	(mac_front_window): New function.
14011	(mac_window_to_frame): New macro.
14012	(XTmouse_position, x_scroll_bar_report_motion, do_window_update)
14013	(do_window_activate, do_window_deactivate, do_app_resume)
14014	(do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
14015	(do_zoom_window, mac_do_receive_drag, XTread_socket)
14016	(mac_check_for_quit_char): Use mac_front_window and/or
14017	mac_window_to_frame.
14018	(x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
14019	scroll-bar click event.
14020	(mac_define_frame_cursor): Change the pointer shape.
14021	(x_free_frame_resources): Reset tip_window to NULL when it is
14022	disposed of.
14023	[!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
14024	[!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
14025	(do_window_update): Don't do anything if the updated window is the
14026	tooltip window.
14027	(do_mouse_moved): Handle mouse movement events here (previously in
14028	XTread_socket).  Clear the mouse face if
14029	dpyinfo->mouse_face_hidden is set.
14030	(do_os_event, do_events): Remove (now in XTread_socket).
14031	(XTread_socket): Immediately return if interrupt_input_blocked.
14032	Loop until all the events in the queue are processed.
14033	Rearrange codes for mouse grabbing.  Add tooltip support.  Include the
14034	contents of do_os_event and do_events.  Remove mouse movement
14035	handling (now in do_mouse_moved).  Add the case where
14036	Vmouse_highlight has an integer value.
14037	(NewMacWindow): Remove.
14038	(make_mac_frame): Do what NewMacWindow previously did.  Don't do
14039	excess initializations.
14040	(make_mac_terminal_frame): Previous initializations in
14041	make_mac_frame are moved here.
14042	(mac_initialize_display_info):
14043	Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
14044
14045	* xdisp.c [MAC_OS] (No_Cursor): Remove variable.
14046	(define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
14047
140482004-05-29  Richard M. Stallman  <rms@gnu.org>
14049
14050	* lisp.h (truncate_undo_list): Update decl.
14051
14052	* alloc.c (undo_outer_limit): New variable.
14053	(syms_of_alloc): Defvar it.
14054	(Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
14055
14056	* undo.c (truncate_undo_list): New arg LIMITSIZE.
14057
14058	* alloc.c (lisp_align_malloc): Check for base == 0
14059	regardless of HAVE_POSIX_MEMALIGN.
14060	Clean up HAVE_POSIX_MEMALIGN handling of `err'.
14061
140622004-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14063
14064	* alloc.c: Undo Kim's recent changes and fix the same bug differently.
14065	(marker_blocks_pending_free): Remove.
14066	(Fgarbage_collect): Sweep after cleaning up undo-lists.
14067	Mark the undo lists after claning them up.
14068	Don't free block in marker_blocks_pending_free.
14069	(mark_buffer): Don't mark undo_list.
14070	(gc_sweep): Sweep hash-tables and strings first.
14071	Do free marker blocks that are empty.
14072
140732004-05-28  Jim Blandy  <jimb@redhat.com>
14074
14075	* regex.c (print_partial_compiled_pattern): Add missing 'break'
14076	after 'case wordend'.  For symbeg and symend, print to stderr,
14077	like the other cases.
14078
140792004-05-28  Noah Friedman  <friedman@splode.com>
14080
14081	* process.c (Fdelete_process): Do not call remove_process.
14082
140832004-05-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14084
14085	* alloc.c (struct backtrace): Remove.
14086	(Fgarbage_collect): Use the new mark_backtrace.
14087
14088	* eval.c (mark_backtrace): New function.
14089
14090	* minibuf.c (run_exit_minibuf_hook): New function.
14091	(read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
14092	(read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
14093
140942004-05-27  Kim F. Storm  <storm@cua.dk>
14095
14096	* xdisp.c (back_to_previous_visible_line_start): Skip backwards
14097	over display properties, e.g. images, that replace buffer text.
14098
140992004-05-25  Kim F. Storm  <storm@cua.dk>
14100
14101	* alloc.c (marker_blocks_pending_free): New var.
14102	(gc_sweep): Store free marker blocks on that list.
14103	(Fgarbage_collect): Free them after undo-list cleanup.
14104
14105	* process.c (wait_reading_process_input): Check connect_wait_mask
14106	before actually accepting connection in case it has already been
14107	accepted due to recursion.
14108
141092004-05-23  K,Aa(Broly L$,1 q(Brentey  <lorentey@elte.hu>
14110
14111	* coding.c (Fset_safe_terminal_coding_system_internal):
14112	Set suppress_error in safe_terminal_coding, not terminal_coding.
14113
141142004-05-22  Richard M. Stallman  <rms@gnu.org>
14115
14116	* alloc.c (Fmake_string): Doc fix.
14117
14118	* buffer.c (clone_per_buffer_values): Copy the alist of local vars,
14119	and the alist pairs too.
14120
14121	* casefiddle.c (casify_object): Return OBJ unchanged if not real char.
14122
14123	* emacs.c (main): Update copyright year.
14124
14125	* fileio.c (Fread_file_name): Expand DIR if not absolute.
14126
14127	* insdel.c (del_range_2, replace_range): Don't write an anchor
14128	if the gap is empty.
14129
14130	* xdisp.c (try_scrolling): If scroll-up-aggressively or
14131	scroll-down-aggressively is small but positive, put point
14132	near the screen edge.
14133
141342004-05-22  Juanma Barranquero  <lektu@terra.es>
14135
14136	* keymap.c (Fdefine_key): Doc fix.
14137
141382004-05-22  Kim F. Storm  <storm@cua.dk>
14139
14140	* alloc.c (struct backtrace): Add debug_on_exit member.
14141	(Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
14142	Identify those markers as Lisp_Misc_Free objects.  Clear car and cdr of
14143	the removed cons cells.
14144	(mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
14145	(gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
14146	any cons cells pointing to unallocated stings.
14147	Do not lisp_free any marker blocks, as there may still be pointers
14148	to them from buffer undo lists at this stage of GC.
14149
14150	* keyboard.c (struct backtrace): Add debug_on_exit member.
14151	(Fcommand_execute): Clear it.
14152
141532004-05-20  Luc Teirlinck  <teirllm@auburn.edu>
14154
14155	* intervals.c (lookup_char_property): Do not prematurely return nil.
14156
141572004-05-19  Jim Blandy  <jimb@redhat.com>
14158
14159	Add support for new '\_<' and '\_>' regexp operators, matching the
14160	beginning and end of symbols.
14161
14162	* regex.c (enum syntaxcode): Add Ssymbol.
14163	(init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
14164	(re_opcode_t): New opcodes `symbeg' and `symend'.
14165	(print_partial_compiled_pattern): Print the new opcodes properly.
14166	(regex_compile): Parse the new operators.
14167	(analyse_first): Skip sym(beg|end) (they match only the empty string).
14168	(mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
14169	\sw; `symbeg' is mutually exclusive with \S_ and \Sw.
14170	(re_match_2_internal): Match symbeg and symend.
14171
14172	* search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
14173
141742004-05-19  Kim F. Storm  <storm@cua.dk>
14175
14176	* .gdbinit (xsymbol): Fix last change.
14177
141782004-05-18  Stefan Monnier  <monnier@iro.umontreal.ca>
14179
14180	* .gdbinit (xprintstr): New fun.
14181	(xstring, xprintsym): Use it.
14182
14183	* w32proc.c (create_child): Use INTMASK.
14184
14185	* alloc.c (Fgarbage_collect): Do all the marking before flushing
14186	unmarked elements of the undo list.
14187
141882004-05-18  David Ponce  <david@dponce.com>
14189
14190	* print.c (print): Reset print_depth before to call print_object.
14191
141922004-05-18  Jason Rumney  <jasonr@gnu.org>
14193
14194	* w32console.c: Prefix RIF functions with w32con_ to avoid
14195	namespace clash with functions in term.c and w32term.c.
14196
14197	* w32menu.c (add_menu_item, w32_menu_display_help)
14198	[USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
14199
14200	* w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
14201
142022004-05-18  Eli Zaretskii  <eliz@gnu.org>
14203
14204	* lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
14205
14206	* msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
14207	with make_number.
14208	(IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
14209	with XINT.
14210
142112004-05-18  Kim F. Storm  <storm@cua.dk>
14212
14213	* blockinput.h (INPUT_BLOCKED_P): New macros.
14214
14215	* keyboard.c (Frecursive_edit): Return immediately if input blocked.
14216	(Ftop_level): Unblock input if blocked.
14217
14218	* buffer.h (GET_OVERLAYS_AT): New macro.
14219	* msdos.c (IT_note_mouse_highlight): Use it.
14220	* textprop.c (get_char_property_and_overlay): Use it.
14221	* xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
14222	* xfaces.c (face_at_buffer_position): Use it.
14223
14224	* print.c (print_object): Increase buf size.
14225
142262004-05-17  Jason Rumney  <jasonr@gnu.org>
14227
14228	* w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
14229	(Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
14230	Lisp_Object using i member.
14231	(w32_quit_key): Rename from Vw32_quit_key, and make an int.
14232	(syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
14233	consistently.
14234
14235	* w32proc.c (create_child): Use make_number instead of masking pid.
14236
14237	* w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
14238	(x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
14239	Use EQ to compare Lisp_Objects.
14240	(w32_parse_hot_key): Use int for lisp_modifiers consistently.
14241
14242	* w32term.c (w32_num_mouse_buttons): Rename from
14243	Vw32_num_mouse_buttons and make it an int.
14244
14245	* w32.c (init_environment): Use it.
14246
14247	* w32fns.c (w32_wnd_proc): Likewise.
14248
14249	* w32proc.c (w32_pipe_read_delay): Rename from
14250	Vw32_pipe_read_delay and make it an int.
14251
14252	* w32.c (_sys_read_ahead): Use it.
14253
14254	* lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
14255
14256	* w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
14257
14258	* w32inevt.c (w32_console_mouse_position, do_mouse_event)
14259	(key_event): Don't mix Lisp_Object and int.
14260
14261	* w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
14262
14263	* keyboard.c (kbd_buffer_get_event): Don't use event->code and
14264	modifiers in language change event.
14265
142662004-05-17  Kim F. Storm  <storm@cua.dk>
14267
14268	* alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
14269	Such objects may be freed markers which still exist on an undo list.
14270
142712004-05-16  Juanma Barranquero  <lektu@terra.es>
14272
14273	* data.c (Fset_default): Make argument names match their use in
14274	docstring.
14275
142762004-05-15  Andreas Schwab  <schwab@suse.de>
14277
14278	* emacs.c (gdb_array_mark_flag): Define.
14279	* .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
14280
142812004-05-15  Eli Zaretskii  <eliz@gnu.org>
14282
14283	* lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
14284	__attribute__((__aligned__)), so that USE_LSB_TAG would not become
14285	defined for the MS-DOS build.
14286
142872004-05-14  Stefan Monnier  <monnier@iro.umontreal.ca>
14288
14289	* w32fns.c (Fw32_define_rgb_color): Avoid XSET.
14290
142912004-05-14  Kenichi Handa  <handa@m17n.org>
14292
14293	* ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
14294
142952004-05-14  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14296
14297	* lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
14298	section to frame.c section.
14299	(Fxw_display_color_p, Fx_file_dialog): Declare if
14300	HAVE_WINDOW_SYSTEM defined.
14301
14302	* macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
14303
14304	* macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
14305
14306	* macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
14307	(mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
14308	(XTread_socket): Fix int/Lisp_Object mixup.
14309	(mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
14310
14311	* macterm.h (struct frame, struct face, struct image)
14312	(display_x_get_resource, Fx_display_color_p)
14313	(Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
14314	Add prototypes.
14315
143162004-05-14  Kim F. Storm  <storm@cua.dk>
14317
14318	* process.c (wait_reading_process_input): Make reentrant.
14319	Make Available and Connecting non-static.  Save and restore value
14320	of waiting_for_user_input_p.
14321
143222004-05-13  Kim F. Storm  <storm@cua.dk>
14323
14324	* keyboard.c (mark_kboards): Don't mark x and y members
14325	that are overloaded in selection request events.
14326
143272004-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14328
14329	* lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
14330
143312004-05-13  Glenn Morris  <gmorris@ast.cam.ac.uk>
14332
14333	* window.c (Fdisplay_buffer, Fsplit_window)
14334	(split-height-threshold): Doc fix.
14335
143362004-05-13  Juanma Barranquero  <lektu@terra.es>
14337
14338	* xfaces.c (Ftty_supports_face_attributes_p)
14339	(Finternal_copy_lisp_face): Fix typo in docstring.
14340	(Finternal_get_lisp_face_attribute): Fix docstring.
14341
143422004-05-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14343
14344	* xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
14345
143462004-05-11  Steven Tamm  <steventamm@mac.com>
14347
14348	* macfns.c (Fx_create_frame): Default to using tool-bar by
14349	setting tool-bar-lines to 1 in default-frame-alist.
14350
143512004-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14352
14353	* image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
14354	(xpm_get_color_table_v, xpm_make_color_table_h)
14355	(xpm_put_color_table_h, xpm_get_color_table_h)
14356	(xpm_str_to_color_key, xpm_load_image, xpm_load)
14357	(syms_of_image): Support XPM on Carbon Emacs.  Does not
14358	depend on libXpm, but only supports XPM version 3 without extensions.
14359
143602004-05-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14361
14362	* macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
14363	instead of FRAME_X_P
14364
143652004-05-11  Kim F. Storm  <storm@cua.dk>
14366
14367	* process.c (read_process_output): Grow decoding_buf when needed;
14368	this could cause a crash in allocate_string and compact_small_strings.
14369
143702004-04-29  Jim Blandy  <jimb@redhat.com>
14371
14372	* regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
14373	against proper opcode.
14374
143752004-05-10  Juanma Barranquero  <lektu@terra.es>
14376
14377	* process.c (Fstart_process): Fix docstring.
14378
14379	* charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
14380	(Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
14381	(Fsplit_char, Fchar_charset): Make argument names match their use
14382	in docstring.
14383
143842004-05-10  Richard M. Stallman  <rms@gnu.org>
14385
14386	* print.c (print_preprocess): Use being_printed, loop_count and
14387	halftail to detect overdeep nesting and cyclic cdr chains.
14388
143892004-05-10  Andreas Schwab  <schwab@suse.de>
14390
14391	* lisp.h (Fmake_symbolic_link): Declare.
14392
14393	* fileio.c (Frename_file): Remove extra argument in call to
14394	Fmake_symbolic_link.
14395
143962004-05-10  Kim F. Storm  <storm@cua.dk>
14397
14398	* xdisp.c (calc_line_height_property): Use string position when
14399	object is a string.
14400
144012004-05-10  Kenichi Handa  <handa@m17n.org>
14402
14403	* print.c (temp_output_buffer_setup): Bind inhibit-read-only and
14404	inhibit-modification-hooks to t temporarily before calling
14405	Ferase_buffer.
14406
14407	* xfns.c (x_create_tip_frame): Bind inhibit-read-only and
14408	inhibit-modification-hooks to t temporarily before calling
14409	Ferase_buffer.
14410
14411	* w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
14412	inhibit-modification-hooks to t temporarily before calling
14413	Ferase_buffer.
14414
14415	* fns.c (count_combining): Delete it.
14416	(concat): Don't check combining bytes.
14417
144182004-05-09  Jason Rumney  <jasonr@gnu.org>
14419
14420	* w32fns.c (Vw32_ansi_code_page): New Lisp variable.
14421	(globals_of_w32fns): Set it.
14422
144232004-05-09  Piet van Oostrum  <piet@cs.uu.nl>
14424
14425	* data.c (Fquo): Simplify.
14426
144272004-05-08  Peter Whaite  <emacs@whaite.ca>  (tiny change)
14428
14429	* data.c (Fquo): If any argument is float, do the computation in
14430	floating point.
14431
144322004-05-08  Juanma Barranquero  <lektu@terra.es>
14433
14434	* process.c (Fwaiting_for_user_input_p, Fmake_network_process)
14435	(Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
14436	Fix spelling of Emacs on docstring.
14437	(Fset_process_coding_system, Fprocess_coding_system)
14438	(Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
14439	Make argument names match their use in docstring.
14440	(Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
14441	Fix docstring.
14442
14443	* editfns.c (Finsert_buffer_substring): Make argument names match their
14444	use in docstring.
14445
14446	* syntax.c (Fmodify_syntax_entry): Fix docstring.
14447
144482004-05-07  Steven Tamm  <steventamm@mac.com>
14449
14450	* macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
14451	around call to ReceiveEvent to avoid certain crashes.
14452
144532004-05-07  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14454
14455	* macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
14456	(mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
14457	(mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
14458	Save/restore the current graphics port and device handle when
14459	drawing into an offscreen graphics world.
14460
14461	* image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
14462	(gif_load): Likewise.
14463
144642004-05-07  Juanma Barranquero  <lektu@terra.es>
14465
14466	* window.c (Fset_window_buffer): Fix docstring.
14467
144682004-05-06  Thien-Thi Nguyen  <ttn@gnu.org>
14469
14470	* emacs.c (main) [VMS]: Fix var ref.
14471
144722004-05-06  Romain Francoise  <romain@orebokech.com>
14473
14474	* data.c (Fsetq_default): Fix docstring.
14475
144762004-05-06  Jason Rumney  <jasonr@gnu.org>
14477
14478	* image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
14479	to avoid name clash.
14480
144812004-05-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14482
14483	* fileio.c (barf_or_query_if_file_exists): Use lstat.
14484	(Frename_file): Handle renaming of symlinks across file systems.
14485	(Frename_file): Put symlink handling inside #ifdef S_IFLNK.
14486
144872004-05-04  Kim F. Storm  <storm@cua.dk>
14488
14489	* xdisp.c (Qtotal): New var.
14490	(syms_of_xdisp): Intern and staticpro it.
14491	(calc_line_height_property): New arg total.  Set it if
14492	line-spacing property has format (total . VALUE).
14493	(x_produce_glyphs): Ignore line-spacing if line-height is 0.
14494	Handle total line-spacing property.
14495
144962004-05-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14497
14498	* gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
14499	"under" scroll bar when size/position changes.
14500
145012004-05-03  Jason Rumney  <jasonr@gnu.org>
14502
14503	* makefile.nt: Remove.
14504
145052004-05-02  Eli Zaretskii  <eliz@gnu.org>
14506
14507	* syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
14508	Avoid compiler warnings.
14509
14510	* Makefile.in (region-cache.o): Depend on config.h.
14511
145122004-05-02  Romain Francoise  <romain@orebokech.com>
14513
14514	* indent.c (compute_motion): Save vpos in prev_vpos when dealing
14515	with continuation lines, too.
14516
145172004-05-02  Thien-Thi Nguyen  <ttn@gnu.org>
14518
14519	* syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
14520
145212004-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
14522
14523	* xdisp.c (calc_line_height_property): YAILOM (yet another
14524	int/Lisp_Object mixup).
14525
145262004-05-01  Eli Zaretskii  <eliz@gnu.org>
14527
14528	* msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
14529	undo bad effect of pack(4) in some versions of system headers.
14530
145312004-05-01  Jason Rumney  <jasonr@gnu.org>
14532
14533	* w32term.c (x_draw_hollow_cursor): Sync with xterm.c
14534
145352004-04-30  Kim F. Storm  <storm@cua.dk>
14536
14537	* buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
14538	(syms_of_buffer) <cursor-type>: Doc fix.
14539
14540	* dispextern.h (struct it): Remove member use_default_face.
14541	Add members override_ascent, override_descent, override_boff.
14542
14543	* xdisp.c (init_iterator): Handle line-spacing float value.
14544	Initialize override_ascent member.
14545	(append_space_for_newline): Reset override_ascent.
14546	Remove use_default_face.
14547	(calc_line_height_property): New function to calculate value of
14548	line-height and line-spacing properties.  Look at overlays, too.
14549	Set override_ascent, override_descent, override_boff members when
14550	using another face than the current face.  Float values are now
14551	relative to the frame default font, by default; accept a cons
14552	of ratio and face name to specify value relative to a specific face.
14553	(x_produce_glyphs): Use calc_line_height_property.
14554	Use override_ascent etc. when set to handle different face heights.
14555	A negative line-spacing property value is interpreted as a total
14556	line height, rather than inter-line spacing.
14557	(note_mouse_highlight): Allocate room for 40 overlays initially.
14558
145592004-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
14560
14561	* data.c (Fsubr_name): New fun.
14562	(syms_of_data): Defsubr it.
14563
145642004-04-29  Kim F. Storm  <storm@cua.dk>
14565
14566	* xdisp.c (null_glyph_slice): New var.
14567	(append_glyph, append_composite_glyph, append_stretch_glyph):
14568	Use it to initialize glyph slice.
14569
145702004-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14571
14572	* xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
14573	(on_hot_spot_p): Make sure we always return a value.
14574	(Flookup_image_map): Remove unused var ix and iy.
14575	(note_mode_line_or_margin_highlight): Remove unused var `image'.
14576
145772004-04-27  Eli Zaretskii  <eliz@gnu.org>
14578
14579	* msdos.c (init_environment): If one of the TMP... environment
14580	variables is set to a drive letter without a trailing slash,
14581	append a slash.
14582
145832004-04-27  Matthew Mundell  <matt@mundell.ukfsn.org>
14584
14585	* editfns.c (lisp_time_argument): Provide externally.
14586
14587	* fileio.c (Fset_file_times): New function.
14588	(syms_of_fileio): Intern and staticpro it.
14589
145902004-04-27  Kim F. Storm  <storm@cua.dk>
14591
14592	* xdisp.c (x_produce_glyphs): Fix last change; handle newline in
14593	header line strings.
14594
14595	* dispextern.h (struct it): New member use_default_face.
14596
14597	* xdisp.c (Qline_height): New variable.
14598	(syms_of_xdisp): Intern and staticpro it.
14599	(append_space_for_newline): Partially undo 2004-04-25 change;
14600	add default_face_p arg, and restore callers.
14601	Clear it->use_default_face after use.
14602	(x_produce_glyphs): Set default font for ascii char if
14603	it->use_default_font is set.  Change line-spacing property to set
14604	just extra line spacing.  Handle new line-height property.
14605
146062004-04-26  Andreas Schwab  <schwab@suse.de>
14607
14608	* print.c (print_object): Print non-ascii characters in bool
14609	vector representation as octal escapes.
14610
14611	* lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
14612	* print.c (print_object): Use it instead of BITS_PER_CHAR for
14613	bool vectors.
14614	* lread.c (read1): Likewise.
14615	* alloc.c (Fmake_bool_vector): Likewise.
14616	* data.c (Faref, Faset): Likewise.
14617	* fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
14618	(mapcar1): Likewise.
14619
146202004-04-26  Steven Tamm  <tamm@Steven-Tamms-Computer.local>
14621
14622	* lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
14623
146242004-04-26  Miles Bader  <miles@gnu.org>
14625
14626	* lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
14627
146282004-04-26  Juanma Barranquero  <lektu@terra.es>
14629
14630	* buffer.c (Fpop_to_buffer): Fix docstring.
14631
146322004-04-26  Steven Tamm  <steventamm@mac.com>
14633
14634	* lread.c (init_lread): Don't display missing lisp directory
14635	warnings with Carbon Emacs because self-contained bundled Emacs
14636	may be built without correct installation path.
14637
146382004-04-25  Kim F. Storm  <storm@cua.dk>
14639
14640	* macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
14641
14642	* xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
14643
14644	* xdisp.c (append_space_for_newline): Rename from append_space.
14645	Remove DEFAULT_FACE_P arg; always use current face.  Callers changed.
14646	(x_produce_glyphs): Handle line-spacing property on newline char.
14647	If value is t, adjust ascent and descent to fit current row height.
14648	If value is an integer or float, set extra_line_spacing to integer
14649	value, or to float value x current line height.
14650
146512004-04-23  Kenichi Handa  <handa@m17n.org>
14652
14653	* fontset.c (Finternal_char_font): If POSITION is nil, return
14654	font for displaying CH with the default face.
14655
146562004-04-23  Juanma Barranquero  <lektu@terra.es>
14657
14658	* makefile.w32-in: Add "-*- makefile -*-" mode tag.
14659
146602004-04-21  Stefan Monnier  <monnier@iro.umontreal.ca>
14661
14662	* lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
14663	Don't make assumptions about the relative place of i and val.
14664	(EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
14665
146662004-04-21  Kim F. Storm  <storm@cua.dk>
14667
14668	* dispextern.h (struct glyph_slice): New struct.
14669	(struct glyph): New member slice.
14670	(GLYPH_SLICE_EQUAL_P): New macro.
14671	(GLYPH_EQUAL_P): Use it.
14672	(struct glyph_string): New member slice.
14673	(struct it_slice): New struct.
14674	(struct it): New member slice, add member to stack too.
14675	New member constrain_row_ascent_descent_p.
14676	(image_ascent): Add prototype.
14677
14678	* dispnew.c (buffer_posn_from_coords): Return full image width
14679	and height even for image slices (posn is relative to full image).
14680	(marginal_area_string): Adjust x0,y0 for image slice.
14681
14682	* image.c (image_ascent): Add slice arg; calculate ascent for
14683	image slice (or full image).
14684
14685	* keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
14686	(syms_of_keyboard): Defsubr them.
14687
14688	* lisp.h (pos_visible_p): Fix prototype.
14689
14690	* macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
14691	(x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
14692	(x_draw_image_foreground, x_draw_image_relief)
14693	(x_draw_image_foreground_1, x_draw_image_glyph_string):
14694	Draw sliced images.
14695
14696	* w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
14697	(x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
14698	(x_draw_image_foreground, x_draw_image_relief)
14699	(w32_draw_image_foreground_1, x_draw_image_glyph_string):
14700	Draw sliced images.
14701
14702	* w32term.h (image_ascent): Remove prototype.
14703
14704	* window.c (Fpos_visible_in_window_p): Return pixel position if
14705	PARTIALLY arg is non-nil.  Simplify.  Doc fix.
14706	(Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
14707	to return/set vscroll in pixels.
14708
14709	* window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
14710
14711	* xdisp.c (Qslice): New variable.
14712	(syms_of_xdisp): Intern and staticpro it.
14713	(pos_visible_p): Return pixel position in new x and y args.
14714	(init_iterator): Reset it->slice info.
14715	(handle_display_prop): Parse (slice ...) property.
14716	(push_it, pop_it): Save/restore slice info.
14717	(make_cursor_line_fully_visible): Fix 2004-04-14 change.  Do not
14718	force repositioning of tall row if window is vscrolled, as that
14719	would reset vscroll.
14720	(append_space): Set it->constrain_row_ascent_descent_p to avoid
14721	increasing row height if row is non-empty.
14722	(fill_image_glyph_string): Copy slice info.
14723	(take_vertical_position_into_account): Simplify.
14724	(produce_image_glyph): Handle iterator slice info, setup glyph
14725	slice info.  Do not force minimum line height.
14726	(x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
14727	do not increase height (ascent/descent) of non-empty row when
14728	adding normal character glyph; instead reduce glyph ascent/descent
14729	appropriately; if row is higher than current glyph, adjust glyph
14730	descent/ascent to reposition glyph within the existing row.
14731	Likewise, when char is newline, only set ascent/descent if row is
14732	currently empty.
14733	(note_mouse_highlight): Handle hotspots with sliced image.
14734
14735	* xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
14736	(x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
14737	(x_draw_image_foreground, x_draw_image_relief)
14738	(x_draw_image_foreground_1, x_draw_image_glyph_string):
14739	Draw sliced images.
14740
14741	* xterm.h (image_ascent): Remove prototype.
14742
147432004-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
14744
14745	* keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
14746
147472004-04-20  John Paul Wallington  <jpw@gnu.org>
14748
14749	* fns.c (Fassoc, Feql): Fix indentation.
14750
14751	* fontset.c (regularize_fontname): Rename from regulalize_fontname.
14752
147532004-04-19  John Paul Wallington  <jpw@gnu.org>
14754
14755	* fns.c (Feql): New function.
14756	(syms_of_fns): Defsubr it.
14757
147582004-04-18  Jason Rumney  <jasonr@gnu.org>
14759
14760	* w32select.c (Fw32_set_clipboard_data): Get sequence number
14761	after closing the clipboard.
14762
147632004-04-16  Luc Teirlinck  <teirllm@auburn.edu>
14764
14765	* buffer.c (Fbuffer_base_buffer): Doc fix.
14766
147672004-04-17  Kim F. Storm  <storm@cua.dk>
14768
14769	* keymap.c (Fkey_description): Add optional PREFIX arg.
14770	Combine prefix with KEYS to make up the full key sequence to describe.
14771	Correlate meta_prefix_char and following (simple) key to describe
14772	as meta modifier.  All callers changed.
14773	(describe_map): Rename arg `keys' to `prefix'.  Remove local
14774	`elt_prefix' var.  Use Fkey_description with prefix instead of
14775	elt_prefix combined with Fsingle_key_description.
14776	(describe_vector): Declare static.  Replace arg `elt_prefix' with
14777	`prefix'.  Add KEYMAP_P arg.  Add local var `elt_prefix'; use it
14778	if !KEYMAP_P.  Use Fkey_description with prefix instead of
14779	Fsingle_key_description.
14780
14781	* keymap.h (Fkey_description): Fix prototype.
14782	(describe_vector): Remove prototype.
14783
14784	* xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
14785
14786	* image.c (PNG_BG_COLOR_SHIFT): Remove.
14787	(png_load): Fix calculation of transparent background color on X
14788	and W32 platforms.
14789
147902004-04-16  Juanma Barranquero  <lektu@terra.es>
14791
14792	* xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
14793	not too large before computing how much to scroll.
14794
147952004-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14796
14797	* dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
14798
147992004-04-14  Luc Teirlinck  <teirllm@auburn.edu>
14800
14801	* fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
14802	Add hyperlink to Elisp manual to the docstring.
14803
148042004-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
14805
14806	* callint.c (fix_command): Use XDCR.
14807
148082004-04-14  Nick Roberts  <nick@nick.uklinux.net>
14809
14810	* window.c (Fget_lru_window): Doc fix.
14811
148122004-04-14  Kim F. Storm  <storm@cua.dk>
14813
14814	* editfns.c (Fformat): Fix allocation size of precision array.
14815
14816	* dispnew.c (update_window): Only set changed_p if
14817	scrolling_window actually did scroll.
14818	(scrolling_window): Only return 1 if we actually did scroll.
14819
14820	* xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
14821	height to glyph height when cursor row is not fully visible.
14822	(make_cursor_line_fully_visible): Add FORCE_P arg to return
14823	failure in case row is higher than window.  Callers changed.
14824	(try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
14825	Try to scroll partially visible, higher-than-window cursor row.
14826	(redisplay_window): Always try to scroll partially visible,
14827	higher-than-window cursor row - both initially and again with
14828	centering_position = 0.
14829	Clear desired matrix before retrying with centering_position = 0.
14830
148312004-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
14832
14833	* syntax.c (scan_lists): Simplify backward string scan.
14834	Fix off-by-one boundary check for string and comment fences.
14835
148362004-04-13  Joe Buehler  <jbuehler@hekimian.com>
14837
14838	* sheap.c, unexcw.c: New files.
14839
148402004-04-12  Luc Teirlinck  <teirllm@auburn.edu>
14841
14842	* buffer.c (Fmake_indirect_buffer): Throw an error if the intended
14843	base buffer has been killed.  Correct the error message if the
14844	base buffer does not exist.
14845
148462004-04-12  Joe Buehler  <jbuehler@hekimian.com>
14847
14848	* s/cygwin.h: Changes for Cygwin unexec() support, changes in
14849	Cygwin itself.  Add support for Xaw3d scrollbars.
14850
14851	* puresize.h: Set up PURE_P() for Cygwin unexec() support.
14852
14853	* lastfile.c: Define my_endbss[] for Cygwin unexec() support.
14854
14855	* gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
14856	before Cygwin unexec.
14857
14858	* Makefile.in: Link changes for Cygwin unexec() support.
14859
148602004-04-12  Andreas Schwab  <schwab@suse.de>
14861
14862	* buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
14863
148642004-04-11  Luc Teirlinck  <teirllm@auburn.edu>
14865
14866	* buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
14867	IGNORE argument equals NAME.  Doc fix.
14868
148692004-04-11  Masatake YAMATO  <jet@gyve.org>
14870
14871	* buffer.c (fix_start_end_in_overlays): Make overlays
14872	empty if they are backwards.
14873
148742004-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14875
14876	* xfaces.c (face_color_supported_p): Fix compilation without X11.
14877
148782004-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
14879
14880	* doc.c (Fsnarf_documentation): Ignore new file name entries.
14881
148822004-04-06  Kim F. Storm  <storm@cua.dk>
14883
14884	* msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
14885	(dos_rawgetc): Set mouse_face_hidden after clearing highlight.
14886
14887	* w32term.c (w32_read_socket): Set mouse_face_hidden after
14888	clearing highlight.
14889
14890	* xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
14891
14892	* xterm.c (handle_one_xevent): Set mouse_face_hidden after
14893	clearing highlight.
14894
14895	* indent.c (vmotion): Do not reserve one column for continuation
14896	marks on window frames.
14897
148982004-04-04  Eli Zaretskii  <eliz@gnu.org>
14899
14900	* charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
14901	from GCC.
14902
149032004-04-03  Stefan Monnier  <monnier@iro.umontreal.ca>
14904
14905	* .gdbinit-union: Remove.
14906
14907	* .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
14908	(xgetptr, xgetint, xgettype): New funs.  Use them everywhere.
14909	($nonvalbits): Remove.
14910	($valmask): Set it by calling xreload to avoid redundancy.
14911
14912	* emacs.c (gdb_use_union, gdb_use_lsb): New vars.
14913	(gdb_emacs_intbits): Remove.
14914
149152004-03-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14916
14917	* data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
14918
149192004-03-30  Kenichi Handa  <handa@m17n.org>
14920
14921	* editfns.c (Fformat): Fix initialization of the array info.
14922
149232004-03-30  Kim F. Storm  <storm@cua.dk>
14924
14925	* xterm.c (x_mouse_click_focus_ignore_position): New var.
14926	(syms_of_xterm): DEFVAR_BOOL it.
14927	(ignore_next_mouse_click_timeout): New var.
14928	(handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
14929	Use it to filter mouse clicks following focus event.
14930
149312004-03-29  David Ponce  <david@dponce.com>
14932
14933	* callint.c (Fcall_interactively): Fix last change.
14934
149352004-03-28  Stefan Monnier  <monnier@iro.umontreal.ca>
14936
14937	* eval.c (Fcommandp): Simplify.
14938
14939	* data.c (Finteractive_form): Rename from Fsubr_interactive_form.
14940	Extend to handle all kinds of functions.
14941
14942	* lisp.h (Finteractive_form): Declare.
14943
14944	* callint.c (Fcall_interactively): Use it.
14945
149462004-03-26  Kim F. Storm  <storm@cua.dk>
14947
14948	* xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
14949	to catch errors in calc_pixel_width_or_height during redisplay.
14950
149512004-03-26  Masatake YAMATO  <jet@gyve.org>
14952
14953	* buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
14954
14955	* lisp.h (fix_start_end_in_overlays): Likewise.
14956
14957	* insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
14958
14959	* editfns.c (Ftranspose_regions): Likewise.
14960
149612004-03-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14962
14963	* xterm.c (handle_one_xevent): Do not pass key press events to GTK.
14964
149652004-03-19  Richard M. Stallman  <rms@gnu.org>
14966
14967	* s/sol2-6.h: Delete previous change.
14968
149692004-03-19  Kim F. Storm  <storm@cua.dk>
14970
14971	* xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
14972	to_charpos corresponds to newline in right fringe.  Use local
14973	BUFFER_POS_REACHED_P macro.
14974
149752004-03-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
14976
14977	* xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
14978	to compile on non-window system.
14979
149802004-03-19  Kim F. Storm  <storm@cua.dk>
14981
14982	* dispextern.h (calc_pixel_width_or_height): Add prototype.
14983
14984	* image.c (Qcenter): Move to xdisp.c.
14985
14986	* xdisp.c (Qcenter): Declare here.
14987	(syms_of_xdisp): Intern and staticpro it.
14988	(handle_single_display_prop): Allow space display property on all
14989	platforms.
14990	(display_mode_line): Set mode_line_p before displaying line.
14991	(calc_pixel_width_or_height): Declare extern.  Add separate :align-to
14992	handling.  Remove complex cases for fringes and scroll-bars.
14993	Add left, right, and center alignment positions.  Add text (area)
14994	width/height.  Return width or height for image specs.
14995	(produce_stretch_glyph): Improve handling of :align-to.  Is now
14996	relative to left of text area by default, but other base offsets
14997	can be specified -- also for text lines.
14998
14999	* term.c (produce_glyphs): Handle IT_STRETCH.
15000	(produce_stretch_glyph): New function to handle space width and
15001	align-to display properties on non-window systems.
15002
150032004-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>
15004
15005	* fileio.c (Fread_file_name): Set completion-ignore-case for
15006	case-insensitive systems.
15007
150082004-03-14  Masatake YAMATO  <jet@gyve.org>
15009
15010	* xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
15011	when keymap and cursor are setup.
15012
150132004-03-14  Steven Tamm  <steventamm@mac.com>
15014
15015	* Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
15016
150172004-03-14  Kim F. Storm  <storm@cua.dk>
15018
15019	* dispextern.h (x_find_image_file): Add prototype.
15020
15021	* image.c (x_find_image_file): Make extern.
15022
15023	* xfns.c (x_find_image_file): Remove prototype.
15024
150252004-03-13  Eli Zaretskii  <eliz@gnu.org>
15026
15027	* Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
15028
15029	* emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
15030
150312004-03-12  Richard M. Stallman  <rms@gnu.org>
15032
15033	* fns.c (internal_equal): New arg PROPS controls comparing
15034	text properties.  All callers changed.
15035	(Fequal_including_properties): New function.
15036	(syms_of_fns): defsubr it.
15037
150382004-03-12  Kim F. Storm  <storm@cua.dk>
15039
15040	Fix image support on MAC.  From YAMAMOTO Mitsuharu.
15041
15042	* dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
15043	(image_background, image_background_transparent): Fix prototypes.
15044
15045	* image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
15046
15047	* macfns.c (x_list_fonts, x_get_font_info, x_load_font)
15048	(x_query_font, x_find_ccl_program, x_set_window_size)
15049	(x_make_frame_visible, mac_initialize, XCreatePixmap)
15050	(XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
15051	(mac_draw_line_to_pixmap): Move prototypes to macterm.h.
15052
15053	* macterm.h (x_list_fonts, x_get_font_info, x_load_font)
15054	(x_query_font, x_find_ccl_program, x_set_window_size)
15055	(x_make_frame_visible, mac_initialize, XCreatePixmap)
15056	(XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
15057	(mac_draw_line_to_pixmap): Add prototypes.
15058
150592004-03-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15060
15061	* macterm.c (XTread_socket): Fix mouse click on tool bar.
15062
150632004-03-11  Kim F. Storm  <storm@cua.dk>
15064
15065	* dispextern.h: Move image related prototypes from xfns.c section
15066	to image.c.  Condition them by HAVE_WINDOW_SYSTEM rather than
15067	HAVE_X_WINDOWS.
15068
15069	* Makefile.in (XOBJ): Consolidate into one list.  Add image.o.
15070	Move gtkutil.o to new GTK_OBJ list.
15071	(XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
15072	(GTK_OBJ) [USE_GTK]: New declaration.
15073	(obj): Add $(GTK_OBJ) to list.
15074
150752004-03-11  Steven Tamm  <steventamm@mac.com>
15076
15077	* image.c [MAC_OSX]: Include sys/stat.h.
15078
15079	* macfns.c (syms_of_macfns): Remove definitions of things now
15080	defined in image.c.
15081
150822004-03-11  Kim F. Storm  <storm@cua.dk>
15083
15084	The following changes consolidates the identical/similar image
15085	support code previously found in xfns.c, w32fns.c, and macfns.c
15086	into a new file image.c.
15087
15088	* makefile.w32-in (OBJ1): Add image.o.
15089	($(BLD)/image.$(O)): Add dependencies.
15090
15091	* Makefile.in (XOBJ, MAC_OBJ): Add image.o.
15092	(image.o): Add dependencies.
15093
15094	* image.c: New file with consolidated image support code.
15095	(COLOR_TABLE_SUPPORT): New define to control whether
15096	color table support is available (X only).
15097	(Bitmap_Record): Common name for x_bitmap_record,
15098	w32_bitmap_record, and mac_bitmap_record.
15099	(XImagePtr): Common name for pointer to XImage or equivalent.
15100	(XImagePtr_or_DC): New type to simplify code sharing; equivalent
15101	to XImagePtr on X+MAC, and to HDC on W32.
15102	(GET_PIXEL): Wrapper for XGetPixel or equivalent.
15103	(NO_PIXMAP): Common name for "None" or equivalent.
15104	(PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
15105	(RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
15106	(PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
15107	(FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
15108	Define with suitable equivalents on W32 and MAC for code sharing.
15109	(XDrawLine): Define on MAC for code sharing.
15110	(Destroy_Image, Free_Pixmap): Wrappers for code sharing.
15111	(IF_LIB_AVAILABLE): Macro to simplify code sharing.
15112	(Vx_bitmap_file_path, Vimage_cache_eviction_delay)
15113	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15114	(x_reference_bitmap, x_create_bitmap_from_data)
15115	(x_create_bitmap_from_file, x_destroy_bitmap)
15116	(x_destroy_all_bitmaps, x_create_bitmap_mask)
15117	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
15118	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
15119	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
15120	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
15121	(define_image_type, lookup_image_type, valid_image_p)
15122	(image_error, enum image_value_type, struct image_keyword)
15123	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
15124	(make_image, free_image, prepare_image_for_display, image_ascent)
15125	(four_corners_best, image_background, image_background_transparent)
15126	(x_clear_image_1, x_clear_image, x_alloc_image_color)
15127	(make_image_cache, free_image_cache, clear_image_cache)
15128	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
15129	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
15130	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
15131	(find_image_fsspec, image_load_qt_1, image_load_quicktime)
15132	(init_image_func_pointer, image_load_quartz2d)
15133	(struct ct_color, init_color_table, free_color_table)
15134	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
15135	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
15136	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
15137	(x_disable_image, x_build_heuristic_mask)
15138	(XBM support, XPM support, PBM support, PNG support, JPEG support)
15139	(TIFF support, GIF support, Ghostscript support): Consolidate image
15140	code from xfns.c, w32fns.c, and macfns.c.
15141	(syms_of_image): Consolidate image related symbol setup here.
15142	(init_image): Consolidate image related initializations here.
15143
15144	* emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
15145	and init_image.  Remove call to init_xfns.
15146
15147	* macterm.h (struct mac_bitmap_record): Add file member.
15148	Not currently used, but simplifies code sharing.
15149
15150	* macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
15151	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15152	(x_reference_bitmap, x_create_bitmap_from_data)
15153	(x_create_bitmap_from_file, x_destroy_bitmap)
15154	(x_destroy_all_bitmaps, x_create_bitmap_mask)
15155	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
15156	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
15157	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
15158	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
15159	(define_image_type, lookup_image_type, valid_image_p)
15160	(image_error, enum image_value_type, struct image_keyword)
15161	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
15162	(make_image, free_image, prepare_image_for_display, image_ascent)
15163	(four_corners_best, image_background, image_background_transparent)
15164	(x_clear_image_1, x_clear_image, x_alloc_image_color)
15165	(make_image_cache, free_image_cache, clear_image_cache)
15166	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
15167	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
15168	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
15169	(find_image_fsspec, image_load_qt_1, image_load_quicktime)
15170	(init_image_func_pointer, image_load_quartz2d)
15171	(struct ct_color, init_color_table, free_color_table)
15172	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
15173	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
15174	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
15175	(x_disable_image, x_build_heuristic_mask)
15176	(XBM support, XPM support, PBM support, PNG support, JPEG support)
15177	(TIFF support, GIF support, Ghostscript support): Merge with image
15178	code from xfns.c and macfns.c into image.c.
15179	(syms_of_xfns): Move image related symbols to image.c.
15180	(init_external_image_libraries, init_xfns): Remove; initialization
15181	moved to init_image in image.c.
15182
15183	* w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
15184	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15185	(x_reference_bitmap, x_create_bitmap_from_data)
15186	(x_create_bitmap_from_file, x_destroy_bitmap)
15187	(x_destroy_all_bitmaps, x_create_bitmap_mask)
15188	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
15189	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
15190	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
15191	(define_image_type, lookup_image_type, valid_image_p)
15192	(image_error, enum image_value_type, struct image_keyword)
15193	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
15194	(make_image, free_image, prepare_image_for_display, image_ascent)
15195	(four_corners_best, image_background, image_background_transparent)
15196	(x_clear_image_1, x_clear_image, x_alloc_image_color)
15197	(make_image_cache, free_image_cache, clear_image_cache)
15198	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
15199	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
15200	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
15201	(struct ct_color, init_color_table, free_color_table)
15202	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
15203	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
15204	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
15205	(x_disable_image, x_build_heuristic_mask)
15206	(XBM support, XPM support, PBM support, PNG support, JPEG support)
15207	(TIFF support, GIF support, Ghostscript support): Merge with image
15208	code from xfns.c and macfns.c into image.c.
15209	(syms_of_xfns): Move image related symbols to image.c.
15210	(init_external_image_libraries, init_xfns): Remove; initialization
15211	moved to init_image in image.c.
15212
15213	* xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
15214	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15215	(x_reference_bitmap, x_create_bitmap_from_data)
15216	(x_create_bitmap_from_file, x_destroy_bitmap)
15217	(x_destroy_all_bitmaps, x_create_bitmap_mask)
15218	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
15219	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
15220	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
15221	(define_image_type, lookup_image_type, valid_image_p)
15222	(image_error, enum image_value_type, struct image_keyword)
15223	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
15224	(make_image, free_image, prepare_image_for_display, image_ascent)
15225	(four_corners_best, image_background, image_background_transparent)
15226	(x_clear_image_1, x_clear_image, x_alloc_image_color)
15227	(make_image_cache, free_image_cache, clear_image_cache)
15228	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
15229	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
15230	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
15231	(struct ct_color, init_color_table, free_color_table)
15232	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
15233	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
15234	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
15235	(x_disable_image, x_build_heuristic_mask)
15236	(XBM support, XPM support, PBM support, PNG support, JPEG support)
15237	(TIFF support, GIF support, Ghostscript support): Merge with
15238	w32fns.c and macfns.c image code into image.c.
15239	(syms_of_xfns): Move image related symbols to image.c.
15240	(init_xfns): Remove; initialization moved to init_image in image.c.
15241
15242	* lisp.h (syms_of_image, init_image): Add protoypes.
15243	(init_xfns): Remove prototype.
15244
15245	* dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15246	(x_reference_bitmap, x_create_bitmap_from_data)
15247	(x_create_bitmap_from_file, x_destroy_bitmap)
15248	(x_create_bitmap_mask): Move prototypes from dispextern.h.
15249	(gamma_correct) [MAC_OS]: Add prototype.
15250
15251	* xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
15252	(x_reference_bitmap, x_create_bitmap_from_data)
15253	(x_create_bitmap_from_file, x_destroy_bitmap)
15254	(x_create_bitmap_mask): Move prototypes to dispextern.h.
15255
152562004-03-09  Kenichi Handa  <handa@etlken2>
15257
15258	* coding.c (decode_coding_emacs_mule): Handle insufficent source
15259	correctly.
15260
152612004-03-04  Richard M. Stallman  <rms@gnu.org>
15262
15263	* s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
15264
15265	* window.c (Fdisplay_buffer): Doc fix.
15266
15267	* buffer.c (Fpop_to_buffer): Doc fix.
15268
152692004-03-03  Kim F. Storm  <storm@cua.dk>
15270
15271	* xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
15272
152732004-03-02  Stefan Monnier  <monnier@iro.umontreal.ca>
15274
15275	* editfns.c (Ftranslate_region): Lisp_Object/int mixup.
15276
152772004-03-02  Richard M. Stallman  <rms@gnu.org>
15278
15279	* indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
15280
152812004-03-02  Kenichi Handa  <handa@m17n.org>
15282
15283	* doc.c (Fsubstitute_command_keys): Fix counding bytes.
15284
152852004-03-02  Kim F. Storm  <storm@cua.dk>
15286
15287	* window.h (struct window): New member overlay_arrow_bitmap.
15288
15289	* window.c (make_window): Initialize overlay_arrow_bitmap.
15290
15291	* xdisp.c (Voverlay_arrow_variable_list): New variable to properly
15292	implement and integrate multiple overlay arrows with redisplay.
15293	(syms_of_xdisp): DEFVAR_LISP and initialize it.
15294	(last_arrow_position, last_arrow_string): Replace by properties.
15295	(Qlast_arrow_position, Qlast_arrow_string)
15296	(Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
15297	(syms_of_xdisp): Intern and staticpro them.
15298	(overlay_arrow_string_or_property, update_overlay_arrows)
15299	(overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
15300	(overlay_arrow_at_row): New functions for multiple overlay arrows.
15301	(redisplay_internal): Use them instead of directly accessing
15302	Voverlay_arrow_position etc. for multiple overlay arrows.
15303	(mark_window_display_accurate): Use update_overlay_arrows.
15304	(try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
15305	(try_window_id): Use overlay_arrows_changed_p.
15306	(get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
15307	(display_line): Use overlay_arrow_at_row to check multiple
15308	overlay arrows, and get relevant overlay-arrow-string and
15309	overlay-arrow-bitmap.  Set w->overlay_arrow_bitmap accordingly.
15310	(produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
15311	(syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
15312
15313	* fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
15314	(update_window_fringes): Remove unused code.
15315
153162004-03-01  Jason Rumney  <jasonr@gnu.org>
15317
15318	* w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
15319
153202004-03-01  Juanma Barranquero  <lektu@terra.es>
15321
15322	* fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
15323
15324	* makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
15325
153262004-03-01  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15327
15328	* xfns.c (Fx_display_color_cells): Use number of planes to calculate
15329	how many colors can be displayed.
15330
153312004-03-01  Kenichi Handa  <handa@m17n.org>
15332
15333	* editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
15334	correctly.
15335
153362004-02-28  Kim F. Storm  <storm@cua.dk>
15337
15338	* dispnew.c (update_window): Update header line also if there are
15339	no other changes in window (move code after set_cursor label).
15340
15341	* lisp.h (mark_window_display_accurate): Remove prototype.
15342
15343	* window.c (window_loop, Fforce_window_update): Force mode line
15344	updates by setting prevent_redisplay_optimizations_p and
15345	update_mode_lines.
15346
153472004-02-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15348
15349	* xfns.c (x_window): Fix indentation.
15350
15351	* xterm.c (x_calc_absolute_position): Call x_real_positions
15352	to get WM window sizes and use those to calculate position.
15353	(x_set_offset): Remove code commented out.
15354
153552004-02-28  Miles Bader  <miles@gnu.org>
15356
15357	* keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
15358
153592004-02-28  Kim F. Storm  <storm@cua.dk>
15360
15361	* keyboard.c (kbd_buffer_store_event_hold): New function to store
15362	an event into kbd fifo, but with special handling of quit event;
15363	a quit event is saved for later, and further events are discarded
15364	until the saved quit event has been processed.
15365	(kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
15366	(gen_help_event): Store help event in kbd fifo.
15367	(NREAD_INPUT_EVENTS): Remove.
15368	(read_avail_input): Adapt to new read_socket_hook interface.
15369	Remove allocation and initialization of local input_event buffer,
15370	as read_socket_hook stores events directly in fifo.  Allocate and
15371	initialize local hold_quit event to handle postponed quit event
15372	(and store it if set by kbd_buffer_store_event_hold).
15373
15374	* keyboard.h (kbd_buffer_store_event_hold): Add prototype.
15375	(gen_help_event): Fix prototype.
15376
15377	* macterm.c (XTread_socket): Remove bufp_r and
15378	numcharsp args.  Add hold_quit arg.
15379	Rework to use just one, local, inev input_event.  Store inev
15380	directly in fifo using kbd_buffer_store_event_hold.
15381
15382	* sysdep.c (BUFFER_SIZE_FACTOR): Remove.
15383	(read_input_waiting): Adapt to new read_socket_hook interface.
15384	Remove allocation and initialization of local input_event buffer,
15385	as read_socket_hook stores events directly in fifo.  Allocate and
15386	initialize local hold_quit event to handle postponed quit event
15387	(and store it if set by kbd_buffer_store_event_hold).
15388
15389	* term.c (read_socket_hook): Fix arg list.
15390
15391	* termhooks.h (read_socket_hook): Fix prototype.
15392
15393	* w32inevt.c (w32_console_read_socket): Remove bufp_r and
15394	numcharsp args.  Add hold_quit arg.
15395	Rework to use just one, local, inev input_event.  Store inev
15396	directly in fifo using kbd_buffer_store_event_hold.
15397
15398	* w32inevt.h (w32_console_mouse_position): Fix prototype.
15399
15400	* w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
15401	Add hold_quit arg.  Rework to use just one, local, inev
15402	input_event.  Store inev directly in fifo using
15403	kbd_buffer_store_event_hold.  Update count in one place.
15404	Postpone call to gen_help_event until inev is stored; use new
15405	local do_help for this.
15406	Remove local emacs_event in handing of ButtonPress event; just use
15407	inev instead (so no reason to copy it later).
15408
15409	* xsmfns.c (x_session_check_input): Remove numchars arg.
15410
15411	* xterm.c (x_focus_changed, x_detect_focus_change):
15412	Remove numchars arg.  Always store event into bufp arg.
15413	Return nothing.  Callers changed accordingly.
15414	(glyph_rect): Simplify.
15415	(STORE_KEYSYM_FOR_DEBUG): New macro.
15416	(SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
15417	(current_bufp, current_numcharsp) [USE_GTK]: Remove.
15418	(current_hold_quit) [USE_GTK]: Add.
15419	(event_handler_gdk): Adapt to new handle_one_xevent.
15420	(handle_one_xevent): Remove bufp_r and numcharsp args.
15421	Add hold_quit arg.  Rework to use just one, local, inev
15422	input_event.  Store inev directly in fifo using
15423	kbd_buffer_store_event_hold.  Update count in one place.
15424	Postpone call to gen_help_event until inev is stored; use new
15425	local do_help for this.
15426	Simplify handling of keysyms (consolidate common code).  Fix bug
15427	where count was updated with nchars instead of nbytes.
15428	Remove local emacs_event in handing of ButtonPress event; just use
15429	inev instead (so no reason to copy it later).
15430	Remove `out' label.  Rename label `ret' to `done'; add various
15431	`goto done' to clarify code flow in deeply nested blocks.
15432	(x_dispatch_event): Simplify as handle_one_xevent now calls
15433	kbd_buffer_store_event itself.
15434	(XTread_socket): Remove bufp_r and numcharsp args.  Add hold_quit
15435	arg.  Call handle_one_xevent with new arglist.  Store event from
15436	x_session_check_input in fifo.
15437	[USE_GTK]: Setup current_hold_quit.
15438	Decrement handling_signal before unblocking input.
15439	(x_initialize) [USE_GTK]: Initialize current_count.
15440
15441	* xterm.h (x_session_check_input): Fix prototype.
15442
154432004-02-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15444
15445	* s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
15446
15447	* dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
15448	macgui.h).
15449
15450	* emacs.c (main) [HAVE_CARBON]: Call init_xfns.
15451
15452	* macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
15453	(mktime, DEBUG, Z, free, malloc, realloc, max, min)
15454	(init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
15455	[!MAC_OSX]: Include QDOffscreen.h and Controls.h.
15456	(INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
15457	(Bitmap): Remove typedef.
15458	(Pixmap): Change int to GWorldPtr.
15459
15460	* macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
15461
15462	* macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
15463	(RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
15464	New #define to extract 16-bit depth color components from unsigned
15465	long representation.
15466	(PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
15467	colors used for masks.
15468	(struct mac_display_info): Add color_p.  Remove n_cbits.
15469
15470	* macfns.c: Include sys/types.h and sys/stat.h.
15471	[MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
15472	Include QuickTime/QuickTime.h.
15473	(XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
15474	(XSetForeground, mac_draw_line_to_pixmap): Add externs for
15475	functions defined in macterm.c.
15476	(XImagePtr): New typedef.  Corresponds to XImage * in xfns.c.
15477	(ZPixmap): New #define for compatibility with xfns.c.
15478	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
15479	(x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
15480	(find_image_fsspec, image_load_qt_1, image_load_quicktime):
15481	New functions.
15482	(four_corners_best, x_create_x_image_and_pixmap)
15483	(x_destroy_x_image, unwind_create_frame, x_disable_image)
15484	(x_edge_detection, init_color_table, colors_in_color_table)
15485	(lookup_rgb_color, lookup_pixel_color, postprocess_image)
15486	(x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
15487	(xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
15488	(x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
15489	(mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
15490	long mixup.
15491	(mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
15492	(x_decode_color): Don't use n_cbits (in struct mac_display_info).
15493	(x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
15494	(x_set_cursor_type, Fxw_color_values, valid_image_p)
15495	(image_value_type, parse_image_spec, image_ascent, x_clear_image)
15496	(x_alloc_image_color, clear_image_cache, lookup_image)
15497	(x_find_image_file, xbm_read_bitmap_file_data)
15498	(enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
15499	(xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
15500	(enum pbm_keyword_index, pbm_format, enum png_keyword_index)
15501	(png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
15502	(jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
15503	(enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
15504	(x_make_gc): Sync with xfns.c.  Enclose unused `border_tile' with
15505	#if 0.
15506	(x_free_gcs): Sync with xfns.c.  Enclose unused `border_tile' with
15507	#if 0.  Free white_relief.gc and black_relief.gc.
15508	(unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
15509	New functions (from xfns.c).
15510	(Fx_create_frame): Record unwind_create_frame.
15511	(Fxw_display_color_p): Use dpyinfo->color_p.
15512	(Fx_display_grayscale_p, Fx_display_planes): Don't use
15513	dpyinfo->n_cbits.
15514	(Fx_display_color_cells): Use dpyinfo->n_planes;
15515	(QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
15516	(Qheuristic, cross_disabled_images, emboss_matrix)
15517	(laplace_matrix): New variables (from xfns.c).
15518	(Fimage_size, Fimage_mask_p, four_corners_best, image_background)
15519	(x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
15520	(xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
15521	(image_background_transparent): New function (from xfns.c).
15522	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
15523	(image_load_quicktime): Add declaration.
15524	[MAC_OSX] (image_load_quartz2d): Likewise.
15525	[MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
15526	[MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
15527	[MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
15528	(xbm_load_image_from_file, x_laplace_read_row)
15529	(x_laplace_write_row, pbm_read_file): Remove functions.
15530	[HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
15531	(xpm_load): Sync with xfns.c (although XPM is not supported yet).
15532	(colors_in_color_table): Sync with xfns.c (although not used).
15533	(lookup_rgb_color): Don't lookup color table.  Just do gamma
15534	correction.
15535	(COLOR_INTENSITY): New #define (from xfns.c).
15536	(x_disable_image): New function (from xfns.c).
15537	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
15538	(x_build_heuristic_mask): Sync with xfns.c.
15539	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
15540	(HAVE_PBM): Remove #ifdef.
15541	(pbm_load): Sync with xfns.c.  Set img->width and img->height
15542	before IMAGE_BACKGROUND.
15543	(png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
15544	(Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
15545	Don't enclose with #if HAVE_PNG.
15546	[!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
15547	symbol _CGImageCreateWithPNGDataProvider is defined.
15548	Otherwise use image_load_quicktime.
15549	[!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
15550	[HAVE_PNG] (png_load): Sync with xfns.c.
15551	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
15552	(jpeg_image_p, jpeg_load): Don't enclose declarations with #if
15553	HAVE_JPEG.
15554	(Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
15555	(jpeg_image_p): Don't enclose with #if HAVE_JPEG.
15556	[!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
15557	[!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
15558	[HAVE_JPEG] (jpeg_load): Sync with xfns.c.
15559	(tiff_image_p, tiff_load): Don't enclose declarations with #if
15560	HAVE_TIFF.
15561	(Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
15562	(tiff_image_p): Don't enclose with #if HAVE_TIFF.
15563	[!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
15564	[HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
15565	New functions (from xfns.c).
15566	[HAVE_TIFF] (tiff_load): Sync with xfns.c.
15567	(gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
15568	(Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
15569	Don't enclose with #if HAVE_GIF.
15570	[!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
15571	animated gif.  Otherwise use image_load_quicktime.
15572	[HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
15573	gif_DrawText to avoid conflict with QuickdrawText.h.
15574	[HAVE_GIF] (gif_load): Sync with xfns.c.
15575	(enum gs_keyword_index, gs_format, gs_image_p, gs_load)
15576	[HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
15577	Ghostscript is not supported yet).
15578	(syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
15579	QCmatrix, QCcolor_adjustment, and QCmask.  Add DEFVAR_BOOL
15580	cross_disabled_images (from xfns.c).  Remove #if 0 for supported
15581	image types.  Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
15582	HAVE_PNG.  Add defsubr for Simage_size and Simage_mask_p.
15583	(init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
15584	HAVE_PNG.  Call EnterMovies to support animated gifs.
15585	Call init_image_func_pointer to bind a symbol
15586	_CGImageCreateWithPNGDataProvider if it is defined.
15587
15588	* macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
15589	(x_draw_bar_cursor): Sync declaration with xterm.c.
15590	(XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
15591	(mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
15592	graphics).
15593	(mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
15594	(mac_draw_line_to_pixmap, XCreatePixmap)
15595	(XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
15596	(mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
15597	New functions.
15598	(mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
15599	Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
15600	Cast bits to char *.
15601	(reflect_byte): New function (from w32fns.c).
15602	(mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
15603	due to byte alignment.
15604	(mac_scroll_area) [TARGET_API_MAC_CARBON]:
15605	Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
15606	(XSetForeground): Remove static (now used in macfns.c).
15607	(HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
15608	(mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
15609	(x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
15610	(x_draw_glyph_string_box, x_draw_image_foreground)
15611	(x_draw_image_foreground_1, x_draw_image_glyph_string)
15612	(x_draw_stretch_glyph_string, x_draw_glyph_string)
15613	(x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
15614	Sync with xterm.c.
15615	(x_draw_relief_rect): Sync with xterm.c.  Make 1 pixel shorter
15616	than the xterm.c version when a strictly horizontal or vertical
15617	line is drawn.
15618	(XTset_terminal_window): Add static.
15619	(x_make_frame_visible): Add UNBLOCK_INPUT.
15620	(x_free_frame_resources): New funcion (from xterm.c).
15621	(XTread_socket): Call handle_tool_bar_click if mouse up/down event
15622	occurs in tool bar area.
15623	(mac_initialize_display_info): Remove dpyinfo->n_cbits.
15624	Set dpyinfo->color_p.  Determine dpyinfo->n_planes using HasDepth.
15625	Initialize image cache.
15626	(stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
15627	Enclose unused functions with #if 0.
15628	(Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
15629	(decode_mac_font_name): New function to apply code conversions
15630	from a mac font name to an XLFD font name according to its script code.
15631	(x_font_name_to_mac_font_name): Apply code conversion from an XLFD
15632	font name to a mac font name according to REGISTRY and ENCODING fields.
15633	(init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
15634	whose name starts with `.'.
15635	(init_font_name_table): Use decode_mac_font_name.  Add both
15636	jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
15637	of a font is smJapanese.
15638	(mac_do_list_fonts): New function to list fonts that match a given
15639	pattern.
15640	(x_list_fonts, XLoadQueryFont): Use it.
15641	(XLoadQueryFont): Set rbearing field for each variable width
15642	character to avoid needless redraw.
15643	(syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
15644
156452004-02-26  Kim F. Storm  <storm@cua.dk>
15646
15647	* keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
15648	as read_socket_hook handler on X aborts if buffer is too small
15649	and W32 handler doesn't always check buffer limit.
15650
15651	* xdisp.c (handle_single_display_prop): Handle left-fringe and
15652	right-fringe similar to a display margin image.  Specifically,
15653	the characters having the fringe prop are no longer shown, and
15654	we use IT_IMAGE/next_element_from_image with image_id = -1 to
15655	do this.  Set fringe bitmap face_id in it->face_id.
15656	(produce_image_glyph): Handle image_id < 0 as "no image" case, but
15657	still realize it->face (i.e. the fringe bitmap face).
15658
156592004-02-25  Miles Bader  <miles@gnu.org>
15660
15661	* xdisp.c (check_it): Check string/string_pos consistency.
15662	(init_iterator): Initialize string-related fields properly.
15663
156642004-02-11  Miles Bader  <miles@gnu.org>
15665
15666	* xdisp.c (produce_image_glyph): Force negative descents to zero.
15667
156682004-02-10  Miles Bader  <miles@gnu.org>
15669
15670	* xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
15671	BLOCK_INPUT can be nested, so it doesn't make much sense.
15672
156732004-02-24  Michael Mauger  <mmaug@yahoo.com>
15674
15675	* w32fns.c (slurp_file, xbm_scan, xbm_load_image)
15676	(xbm_read_bitmap_data): Use unsigned char for image data.
15677
156782004-02-23  Luc Teirlinck  <teirllm@auburn.edu>
15679
15680	* abbrev.c (Finsert_abbrev_table_description): Doc fix.
15681
156822004-02-22  Jason Rumney  <jasonr@gnu.org>
15683
15684	* w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
15685	correctly over other bitmaps.
15686
156872004-02-21  Eli Zaretskii  <eliz@gnu.org>
15688
15689	* emacs.c (USAGE1): Split into two halves.
15690	(USAGE2): Second half of the old USAGE1.
15691	(USAGE3): Rename from USAGE2.
15692	(USAGE4): Rename from USAGE3.
15693
156942004-02-21  Juri Linkov  <juri@jurta.org>
15695
15696	* emacs.c (USAGE1): Add --no-desktop.  Move --display from USAGE2.
15697	Fix --multibyte.  Move --help, --version to USAGE2.  Add alias
15698	--file.  Fix -f, -l.  Sort options.  Untabify.
15699	(USAGE2): Add -hb.  Fix --name, --title.  Sort options.  Untabify.
15700
157012004-02-19  Luc Teirlinck  <teirllm@auburn.edu>
15702
15703	* category.c (Fdefine_category, Fcategory_docstring)
15704	(Fget_unused_category, Fset_category_table)
15705	(Fcategory_set_mnemonics): Doc fixes.
15706
157072004-02-20  Kim F. Storm  <storm@cua.dk>
15708
15709	* keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
15710	The following changes are relative to the 2004-01-21 revision.
15711	(NREAD_INPUT_EVENTS): Define as max number of input events to read
15712	in one call to read_socket_hook.  Value is 8.
15713	(read_avail_input): Separate and rework handling of read_socket_hook
15714	and non-read_socket_hook cases.  Use smaller input_event buffer
15715	in read_socket_hook case, and repeat if full buffer is read.
15716	Use new local variable 'discard' to skip input after C-g.
15717	In non-read_socket_hook case, just use a single input_event, and
15718	call kbd_buffer_store_event on the fly for each character.
15719
157202004-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>
15721
15722	* lisp.h (union Lisp_Object): Give a more precise type for `type'.
15723	Remove unused `gu' alternative.
15724
157252004-02-19  Andreas Schwab  <schwab@suse.de>
15726
15727	* fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
15728	warning.
15729
157302004-02-18  Kim F. Storm  <storm@cua.dk>
15731
15732	* xdisp.c (get_window_cursor_type, display_and_set_cursor):
15733	Fix last change.
15734
157352004-02-17  Kim F. Storm  <storm@cua.dk>
15736
15737	* xdisp.c (fast_find_position): Fix return value of new version;
15738	it was inverted compared to the 21.1 version.
15739	(get_window_cursor_type): Don't look at glyph if NULL.
15740	(display_and_set_cursor): Set glyph to NULL if cursor in fringe.
15741
15742	* keyboard.c: Rework previous change; it didn't consider that the
15743	buf array was allocated on the stack.
15744	(prev_read): Remove variable.
15745	(read_avail_input_buf): New static event buffer array.
15746	(in_read_avail_input): New static variable to handle re-entrancy.
15747	(read_avail_input): Change buf to pinter to read_avail_input_buf.
15748	Use in_read_avail_input to handle re-entrance; when re-entered,
15749	fully initialize and use tmp_buf array instead of read_avail_input_buf.
15750	Do not initialize read_avail_input_buf in full here; instead assume it
15751	is always cleared on entry.  To ensure that, we clear (just) the
15752	entries that were used before we return.
15753	(init_keyboard): Initialize read_avail_input_buf here.
15754
157552004-02-16  Jesper Harder  <harder@ifa.au.dk>
15756
15757	* cmds.c (Fend_of_line): Doc fix.
15758
157592004-02-16  Dmitry Antipov  <dmitry.antipov@mail.ru>  (tiny change)
15760
15761	* keyboard.c (prev_read): New static variable.
15762	(read_avail_input): Use it to zero out only those slots in buf[]
15763	that were used last time we were called.
15764
157652004-02-16  Eli Zaretskii  <eliz@gnu.org>
15766
15767	* Makefile.in (obj): Move fringe.o from here...
15768	(XOBJ, MAC_OBJ): ...to here.
15769
157702004-02-16  Stephen Eglen  <stephen@gnu.org>
15771
15772	* fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
15773
157742004-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
15775
15776	* data.c (Fbyteorder):
15777	* fringe.c (Fdefine_fringe_bitmap):
15778	* xdisp.c (handle_single_display_prop):
15779	* xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
15780
157812004-02-16  Jason Rumney  <jasonr@gnu.org>
15782
15783	* w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
15784
157852004-02-15  Steven Tamm  <steventamm@mac.com>
15786
15787	* macterm.c (Vmac_emulate_three_button_mouse): New variable for
15788	controlling emulation of a three button mouse with option and
15789	command keys.
15790	(Qreverse, mac_get_enumlated_btn): Handle the emulation.
15791	(mac_event_to_emacs_modifiers, XTread_socket): Ditto.
15792
157932004-02-15  Kim F. Storm  <storm@cua.dk>
15794
15795	* buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
15796
15797	* fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
15798	Perform byte-swapping.
15799
158002004-02-14  Kim F. Storm  <storm@cua.dk>
15801
15802	* dispextern.h (struct draw_fringe_bitmap_params): Change member
15803	bits from char to short to facilitate wider bitmaps.
15804	(struct redisplay_interface): Fix prototype of define_fringe_bitmap
15805	member.
15806
15807	* fringe.c (struct fringe_bitmap): Change member bits from char to
15808	short to facilitate 16 bits wide bitmaps.  Modify all standard
15809	bitmaps accordingly.
15810	(BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
15811	(FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
15812	(draw_fringe_bitmap): Ditto.
15813	(init_fringe_bitmap) [MAC_OS]: Don't bitswap.
15814	(init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
15815	handle up to 16 bits wide bitmaps.
15816	(Fdefine_fringe_bitmap): Doc fix.  Handle wider bitmaps.
15817	(Ffringe_bitmaps_at_pos): Add missing arg declarations.
15818
15819	* macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
15820	(x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
15821	need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
15822
15823	* w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
15824	so it is no longer necessary to expand them here.
15825
15826	* xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
15827
158282004-02-12  Kim F. Storm  <storm@cua.dk>
15829
15830	* window.c (Fwindow_fringes): Doc fix.
15831
158322004-02-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15833
15834	* xselect.c (x_get_foreign_selection): Add new optional parameter
15835	time_stamp.
15836	(Fx_get_selection_internal): Ditto, pass time_stamp to
15837	x_get_foreign_selection.
15838
15839	* data.c (Fbyteorder): New function.
15840
158412004-02-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15842
15843	* atimer.c: Move include stdio.h to same place as in other files.
15844
15845	* region-cache.c: Ditto.
15846
15847	* sysdep.c: Ditto.
15848
15849	* xfaces.c: Ditto.
15850
158512004-02-09  Sam Steingold  <sds@gnu.org>
15852
15853	* w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
15854
158552004-02-09  Kim F. Storm  <storm@cua.dk>
15856
15857	* fringe.c: New file.  Move original fringe related declarations
15858	and code from dispextern.h and xdisp.c here.
15859	Rework code to support user defined fringe bitmaps, redefining
15860	standard bitmaps, ability to overlay user defined bitmap with
15861	overlay arrow bitmap, and add faces to bitmaps.
15862	(Voverflow_newline_into_fringe): Declare here.
15863	(enum fringe_bitmap_align): New enum.
15864	(..._bits): All bitmaps are now defined without bitswapping; that
15865	is now done in init_fringe_once (if necessary).
15866	(standard_bitmaps): New array with specifications for the
15867	standard fringe bitmaps.
15868	(fringe_faces): New array.
15869	(valid_fringe_bitmap_id_p): New function.
15870	(draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
15871	(draw_fringe_bitmap): New function which draws fringe bitmap,
15872	possibly overlaying bitmap with cursor in right fringe or the
15873	overlay arrow in the left fringe.
15874	(update_window_fringes): Do not handle overlay arrow here.
15875	Compare and copy fringe bitmap faces.
15876	(init_fringe_bitmap): New function.
15877	(Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
15878	define and destroy user defined fringe bitmaps.
15879	(Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
15880	(Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
15881	(syms_of_fringe): New function.  Defsubr new DEFUNs.
15882	DEFVAR_LISP Voverflow_newline_into_fringe.
15883	(init_fringe_once, init_fringe): New functions.
15884	(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
15885
15886	* Makefile.in (obj): Add fringe.o.
15887	(fringe.o): New dependencies.
15888
15889	* dispextern.h (FRINGE_ID_BITS): New definition for number of
15890	bits allocated to hold a fringe number.  Increase number of bits
15891	from 4 to 8 to allow user defined fringe bitmaps.
15892	(struct glyph_row, struct it): New members left_user_fringe_bitmap,
15893	left_user_fringe_face_id, right_user_fringe_bitmap,
15894	right_user_fringe_face_id.
15895	(enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
15896	Move to new file fringe.c.
15897	(MAX_FRINGE_BITMAPS): Define here.
15898	(struct draw_fringe_bitmap_params): New members bits, cursor_p,
15899	and overlay_p.  Change member which to int.
15900	(struct redisplay_interface): New members define_fringe_bitmap
15901	and destroy_fringe_bitmap.
15902	(valid_fringe_bitmap_id_p): Add prototype.
15903	(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
15904
15905	* dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
15906	arrows.
15907	(update_frame): Do flush_display if force_flush_display_p to
15908	ensure display (specifically fringes) are updated in a timely
15909	manner when resizing the frame by dragging the mouse.
15910	(update_window_line): Update row if overlay arrow changed.
15911	(scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
15912	or overlay arrow changed.
15913
15914	* emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
15915	syms_of_fringe, and init_fringe.
15916
15917	* frame.h (struct frame): New member force_flush_display_p.
15918
15919	* lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
15920	Add prototypes.
15921
15922	* macterm.c (mac_draw_bitmap): Add overlay_p arg.
15923	(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
15924	thanks to YAMAMOTO Mitsuharu for advice on how to do this.
15925	Use cursor color for displaying cursor in fringe.
15926	(x_redisplay_interface): Add null handlers for
15927	define_fringe_bitmap and destroy_fringe_bitmap functions.
15928
15929	* w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
15930	xterm.c to handle overlayed fringe bitmaps and to use cursor color
15931	for displaying cursor in fringe.
15932	(w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
15933	specific functions to define and destroy fringe bitmaps in fringe_bmp.
15934	(w32_redisplay_interface): Add them to redisplay_interface.
15935	(w32_term_init): Call w32_init_fringe instead of explicitly
15936	defining fringe bitmaps in fringe_bmp array.
15937	(x_delete_display): Call w32_reset_fringes instead of explicitly
15938	destroying fringe bitmaps in fringe_bmp array.
15939
15940	* xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
15941	(left_bits, right_bits, up_arrow_bits, down_arrow_bits)
15942	(continued_bits, continuation_bits, ov_bits, first_line_bits)
15943	(last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
15944	(bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
15945	(fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
15946	(draw_window_fringes, compute_fringe_widths, update_window_fringes):
15947	Move fringe handling vars and code to new file fringe.c.
15948	(handle_display_prop): Handle left-fringe and right-fringe
15949	display properties; store user fringe bitmaps in iterator.
15950	(move_it_in_display_line_to): Handle cursor in fringe at eob.
15951	(clear_garbaged_frames): Set force_flush_display_p if resized.
15952	(redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
15953	(display_line): Handle cursor in fringe at eob.
15954	(display_line): Set row user fringe bitmaps from iterator.
15955
15956	* xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
15957	Use cursor color for displaying cursor in fringe.
15958	(x_redisplay_interface): Add null handlers for
15959	define_fringe_bitmap and destroy_fringe_bitmap functions.
15960
159612004-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15962
15963	* macfns.c (Fx_change_window_property): Make doc string and
15964	parameters same as for X version.
15965
15966	* w32fns.c (Fx_change_window_property): Ditto.
15967
159682004-02-07  Kim F. Storm  <storm@cua.dk>
15969
15970	* xdisp.c (hscroll_window_tree): Position cursor near to right
15971	margin in hscrolled window when jumping to end of line (rather
15972	than centering cursor).
15973
15974	* process.c (wait_reading_process_input): Don't do adaptive read
15975	buffering if waiting for a specific process.
15976
159772004-02-05  Luc Teirlinck  <teirllm@auburn.edu>
15978
15979	* minibuf.c (Fminibufferp, Fread_from_minibuffer)
15980	(Fread_minibuffer, Feval_minibuffer)
15981	(Fread_string, Fread_no_blanks_input)
15982	(Fcompleting_read): Doc fixes.
15983	(syms_of_minibuf): Doc fixes for minibuffer-completion-table and
15984	completion-regexp-list.  Define Qcase_fold_search and staticpro it.
15985	(read_minibuf): Fix initial comment.
15986	(Ftry_completion, Fall_completions, Ftest_completion): Bind
15987	case-fold-search to the value of completion-ignore-case when
15988	checking completion-regexp-list.
15989	(Fdisplay_completion_list): Make it handle arguments that are
15990	symbols.  Doc fix.
15991
159922004-02-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
15993
15994	* xterm.h: Add declaration of free_frame_menubar.
15995
15996	* xfns.c (x_create_bitmap_mask): Removed unused variable depth.
15997	(x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
15998	(Fx_change_window_property): Add declaration of parameters type and
15999	format.  Remove unused variable cons.
16000
16001	* xselect.c: Include stdio.h.
16002
160032004-02-05  Kenichi Handa  <handa@m17n.org>
16004
16005	* fns.c (Fset_char_table_range): Fix previous change.
16006
16007	* buffer.c (Fset_buffer_multibyte): Fix docstring.
16008
160092004-02-04  Luc Teirlinck  <teirllm@auburn.edu>
16010
16011	* editfns.c (Fchar_after, Fchar_before): Doc fixes.
16012
160132004-02-04  Stefan Monnier  <monnier@iro.umontreal.ca>
16014
16015	* keymap.c (Vmouse_events): Rename from Vmenu_events.
16016	(syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
16017
160182004-02-04  Kenichi Handa  <handa@m17n.org>
16019
16020	* fns.c (Fset_char_table_range): Handle charsets ascii,
16021	eight-bit-control, and eight-bit-graphic correctly.
16022
160232004-02-03  Jason Rumney  <jasonr@gnu.org>
16024
16025	* w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
16026
16027	* w32fns.c (x_to_w32_font): Likewise.
16028
160292004-02-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16030
16031	* xterm.h: Add x_handle_dnd_message, x_check_property_data,
16032	x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
16033
16034	* xterm.c (handle_one_xevent): Call x_handle_dnd_message for
16035	ClientMessages.
16036
16037	* xselect.c: Include termhooks.h and X11/Xproto.h.
16038	(x_check_property_data, x_fill_property_data)
16039	(x_property_data_to_lisp, mouse_position_for_drop)
16040	(Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
16041	(Fx_send_client_event): Move here from xfns.c.
16042	(syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
16043
16044	* xfns.c (x-send-client-message): Move to xselect.c.
16045	(Fx_change_window_property): Add optional arguments TYPE, FORMAT and
16046	OUTER_P.
16047	(Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
16048	VECTOR_RET_P.  Handle AnyPropertyType.  Call x_property_data_to_lisp
16049	if vector_ret_p is true.
16050	(syms_of_xfns): Sx_send_client_message moved to xselect.c.
16051
160522004-02-02  Eli Zaretskii  <eliz@gnu.org>
16053
16054	* fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
16055	basename of FILE relative to it, not FILE itself.
16056
160572004-02-02  Kenichi Handa  <handa@m17n.org>
16058
16059	* coding.c (coding_restore_composition): Check invalid
16060	composition data more rigidly.
16061
160622004-01-30  Luc Teirlinck  <teirllm@auburn.edu>
16063
16064	* fileio.c (Fread_file_name_internal): Correctly handle the case
16065	where insert-default-directory is nil.
16066	(Fread_file_name): Always return an empty string if the user exits
16067	with an empty minibuffer.  Adapt the docstring accordingly.
16068	(syms_of_fileio): Adapt the docstring of insert-default-directory
16069	to the change in Fread_file_name.
16070
160712004-01-29  Eli Zaretskii  <eliz@gnu.org>
16072
16073	* alloca.c [!alloca]: Fix the prototype for xfree.
16074
160752004-01-29  Kenichi Handa  <handa@m17n.org>
16076
16077	* fns.c (string_char_to_byte): Optimize for ASCII only string.
16078	(string_byte_to_char): Likewise.
16079
160802004-01-28  Peter Runestig  <peter@runestig.com>
16081
16082	* makefile.w32-in, w32fns.c: Add `default-printer-name' function.
16083
160842004-01-27  Steven Tamm  <steventamm@mac.com>
16085
16086	* unexmacosx.c (unexec_copy): Do not copy more than was
16087	requested to prevent overwriting during unexec.
16088
160892004-01-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16090
16091	* process.c (sigchld_handler): Add comment about not calling malloc.
16092
16093	* process.h: Add extern to synch_process_termsig.
16094
160952004-01-27  Steven Tamm  <steventamm@mac.com>
16096
16097	* macterm.c (make_mac_frame, make_mac_terminal_frame):
16098	Move setting of scroll bars from make_mac_frame to
16099	make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
16100
161012004-01-26  Richard M. Stallman  <rms@gnu.org>
16102
16103	* search.c (Freplace_match): Handle nonexistent
16104	back-references properly.
16105
161062004-01-03  Richard M. Stallman  <rms@gnu.org>
16107
16108	* window.c (decode_any_window): New function.
16109	(Fwindow_height, Fwindow_width, Fwindow_edges)
16110	(Fwindow_pixel_edges, Fwindow_inside_edges)
16111	(Fwindow_inside_pixel_edges): Use decode_any_window.
16112
161132004-01-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16114
16115	* process.h: synch_process_termsig new variable.
16116
16117	* callproc.c: Define synch_process_termsig.
16118	(Fcall_process): Initiate synch_process_termsig to zero and
16119	check if non-zero and get signal name after subprocess has ended.
16120
16121	* process.c (sigchld_handler): Set synch_process_termsig
16122	if terminated by a signal.  synch_process_death setting removed.
16123
16124	* sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
16125
161262004-01-26  Andreas Schwab  <schwab@suse.de>
16127
16128	* print.c (print_preprocess): Declare size as EMACS_INT to not
16129	lose bits.
16130	(print_object): Likewise.
16131	* alloc.c (Fpurecopy): Likewise.
16132
161332004-01-25  Luc Teirlinck  <teirllm@auburn.edu>
16134
16135	* window.c (Fwindow_minibuffer_p): Doc fix.
16136
161372004-01-24  Jonathan Yavner  <jyavner@member.fsf.org>
16138
16139	* editfns.c (Fformat): Make both passes accept the same set of flags.
16140
161412004-01-23  Kenichi Handa  <handa@m17n.org>
16142
16143	* fns.c (Fmd5): If OBJECT is a buffer different from the current
16144	one, set buffer to OBJECT temporarily.
16145
161462004-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16147
16148	* keyboard.c (kbd_buffer_gcpro): Remove.
16149	(kbd_buffer_store_event, clear_event, Fdiscard_input)
16150	(stuff_buffered_input, init_keyboard, syms_of_keyboard):
16151	Don't initialize and/or maintain the variable any more.  It was made
16152	redundant by my commit of 2003-06-15.
16153
16154	* lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
16155
161562004-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16157
16158	* lisp.h: Add undef DECL_ALIGN.
16159
161602004-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16161
16162	* process.c (wait_reading_process_input) [SYNC_INPUT]:
16163	Check interrupt_input_pending explicitly.
16164
16165	* lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
16166
16167	* keyboard.c (handle_async_input): New fun,
16168	extracted from input_available_signal.
16169	(input_available_signal, reinvoke_input_signal): Use it.
16170
161712004-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
16172
16173	* buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
16174
16175	* lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
16176	manipulation macros for when tags are in the lower bits.
16177	(struct Lisp_Free) [USE_LSB_TAG]: Add padding.
16178	(DECL_ALIGN): New macro.
16179	(DEFUN): Use it.
16180
16181	* lisp.h [ENABLE_CHECKING]: Don't force union type.
16182
16183	* s/darwin.h (__attribute__): Remove outdated workaround.
16184
16185	* macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
16186
16187	* alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
16188	Don't check range of malloc address.
16189	(pure_alloc) [USE_LSB_TAG]: Enforce alignment.
16190
16191	* process.c (wait_reading_process_input): Lisp_Object/int mixup.
16192
16193	* dired.c (Ffile_attributes): Lisp_Object/int mixup.
16194
161952004-01-19  Kenichi Handa  <handa@m17n.org>
16196
16197	* fontset.c (fontset_font_pattern): Fix previous change.
16198
161992004-01-16  Miles Bader  <miles@gnu.ai.mit.edu>
16200
16201	* xdisp.c (Voverflow_newline_into_fringe)
16202	(move_it_in_display_line_to, redisplay_internal)
16203	(update_window_fringes, redisplay_window, display_line, window):
16204	Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
16205	that it compiles without a window-system.
16206	* dispnew.c (direct_output_for_insert, update_window): Likewise.
16207
162082004-01-16  Kim F. Storm  <storm@cua.dk>
16209
16210	* buffer.h (struct buffer): New member indicate_buffer_boundaries.
16211
16212	* buffer.c (init_buffer_once): Set buffer_defaults and
16213	buffer_local_flags for indicate_buffer_boundaries.
16214	(syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
16215	default- variable for it.
16216
16217	* dispextern.h (struct glyph_row): New members left_fringe_bitmap,
16218	right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
16219	New members exact_window_width_line_p and cursor_in_fringe_p for
16220	overflowing newlines into right fringe.
16221	New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
16222	and indicate_bottom_line_p for buffer boundaries and scrolling.
16223	(enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
16224	FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
16225	HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
16226	and HOLLOW_SQUARE_BITMAP.
16227	(draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
16228	Add prototypes.
16229
16230	* dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
16231	instead of related indicator fields.
16232	Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
16233	(direct_output_for_insert): Handle exact width lines like
16234	contined lines.  Call update_window_fringes.
16235	(update_window): Call update_window_fringes.
16236	(scrolling_window): Don't skip desired rows with changed bitmaps.
16237	Check if fringe bitmaps changes when assigning scrolled rows.
16238
16239	* xdisp.c (Voverflow_newline_into_fringe): New variable.
16240	(IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
16241	(move_it_in_display_line_to): Overflow newline into fringe for
16242	rows that are exactly as wide as the window.
16243	(up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
16244	(filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
16245	(hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
16246	(fringe_bitmaps): Add new bitmaps.
16247	(draw_fringe_bitmap): Make extern.  Remove WHICH arg.
16248	Select proper bitmap for cursor in fringe when appropriate.
16249	Handle alignment of bitmap to top or bottom of row.
16250	(draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
16251	done by update_window_fringes.
16252	(update_window_fringes, draw_window_fringes): New functions.
16253	(redisplay_internal): Call update_window_fringes in case only
16254	cursor row is updated.
16255	(redisplay_window): Call update_window_fringes.
16256	Explicitly call draw_window_fringes if redisplay was done using
16257	the current matrix or the overlay arrow is in the window.
16258	(try_window_reusing_current_matrix): Mark scrolled rows for
16259	fringe update (to update buffer-boundaries / scrolling icons).
16260	(find_last_unchanged_at_beg_row): Handle exact width lines line
16261	continued lines.
16262	(display_line): Overflow newline into fringe for rows that are
16263	exactly as wide as the window.  Don't append space for newline
16264	in this case.
16265	(notice_overwritten_cursor): Explicitly clear cursor bitmap
16266	in fringe as if it had been overwritten.
16267	(erase_phys_cursor): Erase cursor bitmap in fringe.
16268	(syms_of_xdisp): Mark show-trailing-whitespace and
16269	void-text-area-pointer as user options.
16270	DEFVAR_LISP Voverflow_newline_into_fringe.  Enable by default.
16271
16272	* xterm.c (x_update_window_end): Call draw_window_fringes.
16273	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
16274	in row instead of actually drawing fringe bitmaps.
16275	(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
16276	(x_draw_window_cursor): Draw cursor in fringe.
16277
16278	* w32term.c (x_update_window_end): Call draw_window_fringes.
16279	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
16280	in row instead of actually drawing fringe bitmaps.
16281	(w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
16282	(w32_draw_window_cursor): Draw cursor in fringe.
16283
16284	* macterm.c (x_update_window_end): Call draw_window_fringes.
16285	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
16286	in row instead of actually drawing fringe bitmaps.
16287	(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
16288	(mac_draw_window_cursor): Draw cursor in fringe.
16289
162902004-01-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16291
16292	* xterm.c (handle_one_xevent): Don't handle characters that are part
16293	of an old style (XLookupString) compose sequence.
16294
162952004-01-15  Kenichi Handa  <handa@m17n.org>
16296
16297	* search.c (Freplace_match): Use make_multibyte_string or
16298	make_unibyte_string according to the buffer multibyteness.
16299
163002004-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>
16301
16302	* alloc.c (struct interval_block, struct string_block)
16303	(struct symbol_block, struct marker_block, live_string_p)
16304	(live_cons_p, live_symbol_p, live_float_p, live_misc_p):
16305	Better preserve alignment for objects in blocks.
16306	(FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
16307
16308	* lread.c (defvar_per_buffer): Remove dead declaration.
16309
16310	* macterm.c (do_check_ram_size): Don't hardcode the lisp address
16311	space size.
16312
163132004-01-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16314
16315	* xmenu.c (popup_get_selection): Check new parameter down_on_keypress
16316	if a key press should pop down.  Only pop down if a key is pressed
16317	outside the menu/dialog.
16318	(create_and_show_popup_menu): Pass 0 for down_on_keypress to
16319	popup_get_selection.
16320	(create_and_show_dialog): Pass 1 for down_on_keypress to
16321	popup_get_selection.
16322
163232004-01-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16324
16325	* alloc.c (allocate_vectorlike): Surround calls to mallopt with
16326	BLOCK/UNBLOCK_INPUT.
16327
163282004-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16329
16330	* xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
16331	specified.
16332
163332004-01-08  Kenichi Handa  <handa@m17n.org>
16334
16335	* editfns.c (Fformat): Fix '&' to '&&'.
16336
163372004-01-08  Andreas Schwab  <schwab@suse.de>
16338
16339	* print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
16340	size if PSEUDOVECTOR_FLAG is set.
16341
163422004-01-07  Kenichi Handa  <handa@m17n.org>
16343
16344	* charset.c (Fdeclare_equiv_charset): Fix docstring.
16345
16346	* fontset.c (fontset_ref_via_base): Fix previous change.
16347
163482004-01-07  Kim F. Storm  <storm@cua.dk>
16349
16350	* process.c (read_process_output): Only activate adaptive
16351	buffering if we read less than 256 bytes at a time.
16352
163532004-01-06  Kim F. Storm  <storm@cua.dk>
16354
16355	* dispnew.c (buffer_posn_from_coords): Return both buffer/string
16356	object and image object.  Return glyph width and height.
16357	(mode_line_string, marginal_area_string): Ditto.
16358
16359	* dispextern.h (buffer_posn_from_coords, mode_line_string)
16360	(marginal_area_string): Fix prototypes.
16361
16362	* keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
16363	POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN.  All uses changed.
16364	(POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
16365
16366	* keyboard.c (make_lispy_position): Use modified mode_line_string,
16367	buffer_posn_from_coords, and marginal_area_string functions to
16368	include both string object and image object in the lispy position.
16369	Also add actual glyph width and height to position.
16370	(read_key_sequence): Use real buffer position from mouse
16371	event to find keymap property even when click is in marginal area.
16372
16373	* xdisp.c (note_mode_line_or_margin_highlight): Use modified
16374	mode_line_string and marginal_area_string functions to handle
16375	both string object and image object properties.
16376
163772004-01-06  Andreas Schwab  <schwab@suse.de>
16378
16379	* syntax.c (skip_chars): Treat '-' at end of string as ordinary
16380	character.
16381
163822004-01-02  Andreas Schwab  <schwab@suse.de>
16383
16384	* macterm.c (emacs_options, x_initialized, same_x_server):
16385	Remove unused (and duplicated) definitions.
16386
163872004-01-02  Kim F. Storm  <storm@cua.dk>
16388
16389	* process.h (struct Lisp_Process): New members for adaptive read
16390	buffering: adaptive_read_buffering, read_output_delay, and
16391	read_output_skip.
16392
16393	* process.c (ADAPTIVE_READ_BUFFERING): New conditional.
16394	(READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
16395	(READ_OUTPUT_DELAY_MAX_MAX): New constants.
16396	(process_output_delay_count, process_output_skip): New vars.
16397	(Vprocess_adaptive_read_buffering): New variable.
16398	(make_process): Initialize adaptive read buffering members.
16399	(Fstart_process): Set adaptive_read_buffering member.
16400	(deactivate_process): Cleanup adaptive read buffering.
16401	(wait_reading_process_input): Temporarily omit delayed
16402	subprocesses from the set of file descriptors to read from;
16403	adjust the select timeout if we skipped any subprocesses.
16404	(read_process_output): Increase adaptive read buffering delay if
16405	we read less than a full buffer; reduce delay when we read a
16406	full buffer.
16407	(send_process): Simplify using local Lisp_Process var.
16408	Reset adaptive read buffering delay after write.
16409	(init_process): Initialize process_output_delay_count and
16410	process_output_skip.
16411	(syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
16412
164132004-01-01  Jason Rumney  <jasonr@gnu.org>
16414
16415	* w32term.c (w32_text_out): Use s->font, for consistency with callers.
16416
164172003-12-30  Luc Teirlinck  <teirllm@auburn.edu>
16418
16419	* print.c (Ferror_message_string): Add hyperlink in the docstring
16420	to the definition of `signal' in the Elisp manual.
16421	* eval.c (Fsignal): Ditto.
16422
164232003-12-29  James Clark  <jjc@jclark.com>
16424
16425	* fns.c (internal_equal): Return t for two NaN arguments.
16426
164272003-12-29  Richard M. Stallman  <rms@gnu.org>
16428
16429	* data.c (store_symval_forwarding): Handle setting
16430	default-fill-column, etc., by changing the value in
16431	buffers that use the default.
16432
16433	* minibuf.c (Fset_minibuffer_window): Doc fix.
16434
16435	* fileio.c (choose_write_coding_system): Ignore auto_saving
16436	if using the visited file for auto saves.
16437	(Fwrite_region): Don't update SAVE_MODIFF
16438	if auto-saving in visited file.
16439
164402003-12-29  Kenichi Handa  <handa@m17n.org>
16441
16442	* dispextern.h (face_font_available_p): Extern it.
16443
16444	* fontset.c (Voverriding_fontspec_alist): New variable.
16445	(lookup_overriding_fontspec): New function.
16446	(fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
16447	(fontset_font_pattern): Likewise.
16448	(regulalize_fontname): New function.
16449	(Fset_fontset_font): Call regulalize_fontname.
16450	(Fset_overriding_fontspec_internal): New function.
16451	(syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
16452	Defsubr Sset_overriding_fontspec_internal.
16453
16454	* xfaces.c (face_font_available_p): New function.
16455
164562003-12-28  Richard M. Stallman  <rms@gnu.org>
16457
16458	* buffer.c (Fother_buffer): Don't crash if BUF is nil
16459	or if its name is nil.
16460
16461	* buffer.c (Fkill_buffer): Don't delete auto-save file
16462	if it's the same as the visited file.
16463
164642003-12-28  Luc Teirlinck  <teirllm@auburn.edu>
16465
16466	* coding.c (Fcheck_coding_system): Doc fix.
16467
164682003-12-28  Kim F. Storm  <storm@cua.dk>
16469
16470	* Makefile.in (eval.o): Depend on dispextern.h.
16471
16472	* dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
16473	image glyph using image's ascent.
16474	(mode_line_string): Return image glyph as object clicked on.
16475	Adjust y0 for image glyph using image's ascent.
16476
16477	* dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
16478	(struct glyph): New members, ascent and descent.  Used to save
16479	this glyph's ascent and descent, instead of having.
16480	(struct glyph): Declare member face_id using FACE_ID_BITS.
16481	(find_hot_spot): Add prototype.
16482
16483	* keyboard.c (Qimage): Remove extern (now in lisp.h).
16484	(QCmap): Declare extern.
16485	(make_lispy_position): When position is inside image hot-spot,
16486	use hot-spot element's id as posn element.
16487
16488	* lisp.h (IMAGEP): New macro to test for image object type.
16489	(Qimage): Declare extern.
16490
16491	* macfns.c (Qimage): Remove extern (now in lisp.h).
16492	(valid_image_p, parse_image_spec): Use IMAGEP macro.
16493
16494	* macterm.c (Qface, Qmouse_face): Remove unused externs.
16495
16496	* w32fns.c (Qimage): Remove extern (now in lisp.h).
16497	(valid_image_p, parse_image_spec): Use IMAGEP macro.
16498
16499	* w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
16500
16501	* w32term.c (Qface, Qmouse_face): Remove unused externs.
16502
16503	* xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
16504	pointer types.
16505	(Qrelative_width, Qalign_to): Remove unused variables.
16506	(Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
16507	(QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for image
16508	maps.
16509	(x_y_to_hpos_vpos): Return glyph relative coordinates through new
16510	dx and dy args.  Remove buffer_only_p arg (always 0).  Simplify
16511	code accordingly.
16512	(get_glyph_string_clip_rect): Draw cursor using glyph's rather
16513	than row's ascent and height, to get sensible height on tall rows.
16514	(build_desired_tool_bar_string): Remove Qimage extern.
16515	(get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
16516	(produce_image_glyph): Adjust it.ascent to minimum row ascent if
16517	image glyph is alone on the last line.
16518	(append_glyph, append_composite_glyph, produce_image_glyph)
16519	(append_stretch_glyph): Set glyph's ascent and descent.
16520	(on_hot_spot_p): New function to check if position is inside an
16521	rectangular, circular, or polygon-shaped image hot-spot,
16522	(find_hot_spot): New function to search for image hot-spot.
16523	(Flookup_image_map): New defun to search for image hot-spot.
16524	(define_frame_cursor1): New aux function to determine frame
16525	pointer.
16526	(note_mode_line_or_margin_highlight, note_mouse_highlight): Handle
16527	`pointer' text property and :pointer image property to control
16528	frame pointer shape.  Detect image hot-spots for pointer and
16529	help_echo properties.  Use define_frame_cursor1.
16530	(note_mouse_highlight): Use Vvoid_text_area_pointer.
16531	(syms_of_xdisp): Defsubr new defun.  Intern and staticpro new
16532	variables.  DEFVAR_LISP Vvoid_text_area_pointer instead of
16533	Vshow_text_cursor_in_void.
16534
16535	* xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
16536
16537	* xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
16538	(Qimage): Remove extern (now in lisp.h).
16539	(valid_image_p, parse_image_spec): Use IMAGEP macro.
16540
16541	* xmenu.c (show_help_event): Remove unused code.
16542
16543	* xterm.c (Qface, Qmouse_face): Remove unused externs.
16544	(x_draw_hollow_cursor): Draw cursor using glyph's rather than
16545	row's ascent and descent, to get a sensible height on tall rows.
16546
165472003-12-25  Luc Teirlinck  <teirllm@auburn.edu>
16548
16549	* minibuf.c (Fcompleting_read): Undo previous change.
16550
165512003-12-25  Lars Hansen  <larsh@math.ku.dk>
16552
16553	* dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
16554	Arguments GCPRO'ed in call to file name handler.
16555
165562003-12-25  Thien-Thi Nguyen  <ttn@gnu.org>
16557
16558	* termcap.c (tgetst1): Scan for "%pN"; if all
16559	N are continuous in [1,9], remove all "%pN".
16560
165612003-12-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16562
16563	* gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
16564
16565	* xfaces.c (lface_fully_specified_p): Take into account that
16566	MAC OS always have unspecified stipple.
16567
165682003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>
16569
16570	* tparam.c (tparam1): Add handling for `%pN', which
16571	means use param N for the next substitution.
16572
165732003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>
16574
16575	* xfaces.c (Fcolor_gray_p): Fix omission bug:
16576	In case `frame' is nil, consult the selected frame.
16577	(Fcolor_supported_p): Likewise.
16578
165792003-12-23  Luc Teirlinck  <teirllm@auburn.edu>
16580
16581	* fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
16582	Doc fixes.
16583
16584	* minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
16585	and an integer.  Adapt the introductory comment accordingly.
16586	(Fread_from_minibuffer): Delete code moved into read_minibuf.
16587	Doc fix.
16588	(Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
16589	read_minibuf.
16590	(Fcompleting_read): Delete code moved into read_minibuf.
16591	(Ftest_completion): Make it handle obarrays and hash tables correctly.
16592
165932003-12-03  Kenichi Handa  <handa@m17n.org>
16594
16595	* coding.c (decode_coding_iso2022): Fix for preserving UTF-8
16596	encoding sequence.
16597
165982003-12-01  Kenichi Handa  <handa@m17n.org>
16599
16600	* composite.c (syms_of_composite): Don't make the compostion hash
16601	table week.
16602
166032003-11-30  Luc Teirlinck  <teirllm@auburn.edu>
16604
16605	* intervals.h: Add EXFUN for Fget_char_property_and_overlay.
16606	* textprop.c (Fget_char_property_and_overlay): New function.
16607	(syms_of_textprop): Defsubr it.
16608
166092003-11-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16610
16611	* dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
16612	to compile on terminal configuration.
16613
16614	* fileio.c (Fread_file_name): Check use_file_dialog also before
16615	calling Fx_file_dialog.
16616
16617	* fns.c (use_file_dialog): New variable.
16618	(syms_of_fns): DEFVAR_BOOL use-file-dialog.
16619
166202003-11-29  Kim F. Storm  <storm@cua.dk>
16621
16622	* msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
16623	(syms_of_msdos): Don't intern and staticpro them.
16624
166252003-11-27  Kim F. Storm  <storm@cua.dk>
16626
16627	* dispnew.c (buffer_posn_from_coords): Calculate and return pixel
16628	coordinates relative to glyph at posn.  If glyph is an image,
16629	return that as object at posn.  Callers changed.
16630	(mode_line_string, marginal_area_string): Calculate and return
16631	pixel coordinates relative to glyph.  Callers changed.
16632
16633	* dispextern.h (buffer_posn_from_coords, mode_line_string)
16634	(marginal_area_string): Fix prototypes.
16635	(window_box_left_offset, window_box_right_offset): Add prototypes.
16636
16637	* frame.h (get_specified_cursor_type, get_window_cursor_type):
16638	Remove prototypes.
16639
16640	* keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
16641
16642	* keyboard.c (make_lispy_position): Add x and y coordinates
16643	relative to the current glyph as 7th element of position.
16644	If glyph is an image, return it in the object element.
16645	(read_key_sequence): Skip checks for keymap property in cases
16646	where POSN_STRING is not a string (e.g. an image).
16647
16648	* xdisp.c (Vdisplay_pixels_per_inch): New variable.
16649	(Vshow_text_cursor_in_void): New variable.
16650	(glyph_to_pixel_coords): Don't use negative hpos.
16651	(x_y_to_hpos_vpos): Fix for partially visible first glyph.
16652	(append_stretch_glyph): Change ascent arg to be actual value
16653	in pixels rather than ratio to height.  Callers changed.
16654	(calc_pixel_width_or_height): New aux function, implementing
16655	pixel based artihmetic for glyph widths and heights.
16656	(produce_stretch_glyph): Use calc_pixel_width_or_height for
16657	:width, :height, :align-to, and :ascent, thus allowing these to
16658	be specified in pixels as well as multiples of characters.
16659	Don't produce stretch glyphs with zero width or height.
16660	(get_specified_cursor_type): Declare static.
16661	(get_window_cursor_type): Declare static.  Add glyph arg to be
16662	able to know when cursor is on an image; always substitute
16663	hollow-box cursor for filled-box cursor on images, to avoid
16664	negative images and flicker when blinking the cursor.
16665	(display_and_set_cursor): Pass glyph to get_window_cursor_type.
16666	(note_mode_line_or_margin_highlight): Use non-text cursor rather
16667	than vertical scroll-bar cursor in display margins.
16668	(note_mouse_highlight): Use non-text cursor rather than text
16669	cursor in fringes and over images in the text area.
16670	Use non-text cursor when mouse pointer is outside editable text,
16671	i.e. in the void after end-of-line or end-of-buffer; this was
16672	already done for W32, but is now standard for all systems --
16673	user can toggle show-text-cursor-in-void to get old behaviour.
16674	(syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
16675	Vdisplay_pixels_per_inch.
16676
166772003-11-25  Andreas Schwab  <schwab@suse.de>
16678
16679	* fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
16680	EMACS_INT to not lose bits.
16681	(Ffillarray): Don't set bits beyond the size of a bool vector.
16682
166832003-11-25  Kim F. Storm  <storm@cua.dk>
16684
16685	* print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
16686	define this defun on systems that cannot use stderr as lvalue.
16687
166882003-11-24  Gerd Moellmann  <gerd@gnu.org>
16689
16690	* s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
16691	[__FreeBSD_version >= 500042]: Define as -znocombreloc because
16692	ld's default is incompatible with unexec.
16693
166942003-11-23  Kim F. Storm  <storm@cua.dk>
16695
16696	* window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
16697	(window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
16698	(Fforce_window_update): New defun.
16699	(syms_of_window): Defsubr it.
16700	(Fset_window_margins, Fset_window_fringes): Doc fix.
16701
16702	* print.c (Fredirect_debugging_output): New defun.
16703	(syms_of_print): Defsubr it.
16704
167052003-11-22  Luc Teirlinck  <teirllm@auburn.edu>
16706
16707	* fns.c (Fset_char_table_parent): Doc fix.
16708
167092003-11-22  Kim F. Storm  <storm@cua.dk>
16710
16711	* dispnew.c (buffer_posn_from_coords): Return actual row/column
16712	for glyph clicked on, rather than (unused) pixel positions.
16713	(mode_line_string, marginal_area_string): Change X and Y args to
16714	pointers for returning actual row/column for glyph clicked on.
16715	Simplify and optimize loops.
16716
16717	* dispextern.h (mode_line_string, marginal_area_string):
16718	Update prototypes.
16719
16720	* keyboard.c (make_lispy_position): New function for generating
16721	mouse click positions from frame and pixel coordinates.
16722	Enhanced to return buffer position and actual row/column for
16723	events outside the text area using updated mode_line_string and
16724	marginal_area_string functions.
16725	Return left-fringe and right-fringe clicks as such, rather than
16726	clicks in text area.
16727	(make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
16728	pixel_to_glyph_coords, as we never use the results.
16729	(make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
16730	WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
16731	Eliminate unused code in WHEEL_EVENT handling.
16732	(make_lispy_movement): Use make_lispy_position.
16733
16734	* window.c (coordinates_in_window): Remove redundant tests.
16735	Fix returned X pixel value for left-margin.
16736
16737	* xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
16738	mode_line_string and marginal_area_string parameters.
16739
167402003-11-22  Lars Hansen  <larsh@math.ku.dk>
16741
16742	* w32.c (struct the_group, getgrgid): Add.
16743	* mac.c (struct my_group, getgrgid): Add.
16744
167452003-11-21  Luc Teirlinck  <teirllm@auburn.edu>
16746
16747	* fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
16748
167492003-11-21  Lars Hansen  <larsh@math.ku.dk>
16750
16751	* dired.c (Ffile_attributes): Add parameter ID-FORMAT and
16752	include in call to file name handler.  Optionally translate numeric
16753	UID and GID to strings.  Update docstring.
16754	(directory_files_internal): Add parameter ID-FORMAT.
16755	(Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
16756	include in call to file name handler and call to
16757	directory_files_internal.  Update Docstring.
16758	(Fdirectory_files): Add dummy parameter in call to
16759	directory_files_internal.
16760	* lisp.h (Qinteger): Add.
16761	(Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
16762	(Ffile_attributes): Add parameter.
16763	* data.c (Qinteger): Export.
16764
167652003-11-21  Luc Teirlinck  <teirllm@auburn.edu>
16766
16767	* fns.c (Freverse, Fnreverse): Doc fixes.
16768
167692003-11-19  Kim F. Storm  <storm@cua.dk>
16770
16771	* xdisp.c (init_iterator): Initialize it->start to position
16772	before reseating (in case start position is invisible).
16773	(init_to_row_start): Set it->start to row-start.
16774	(redisplay_window): Accept optional_new_start if start position
16775	is invisible (in which case IT_CHARPOS overshoots PT).
16776	(display_line): Setup row->start from it->start (rather than
16777	it->current which is wrong if first char on line is invisible).
16778	When done, reseat it->start to it->current (= start of next row).
16779	(expose_area): Fix exposure of text area when first char (e.g. TAB)
16780	is only partially visible.
16781
16782	* dispextern.h (struct it): New member start.
16783
167842003-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>
16785
16786	* alloc.c (make_float, Fcons): Clear the markbit at init time.
16787	(make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
16788	of block_index outside of the macro call.
16789	(Fgarbage_collect): Remove null code.
16790
16791	* m/amdx86-64.h: Don't redefine XPNTR.
16792
16793	* keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
16794	of VALMASK.
16795
16796	* fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
16797	(sxhash_string, sxhash): Use INTMASK instead of VALMASK.
16798	(maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
16799
16800	* lisp.h (VALMASK): Only define for non-union type.
16801	(MARKBIT): Remove.
16802	(ARRAY_MARK_FLAG): Use previous value of MARKBIT.
16803	(XTYPE): Define unconditionally.
16804	(XSETTYPE): Remove one more remnant.
16805	(EQ): Define differently for the union and non-union cases.
16806	(INTMASK): New bit mask.
16807	(struct Lisp_Marker): Move down to prepare for upcoming patch.
16808	(GC_EQ): Delegate to EQ.
16809
16810	* coding.c (coding_restore_composition): Lisp_Object/int mixup.
16811
168122003-11-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16813
16814	* xterm.c (x_window_to_scroll_bar): Move check of display to
16815	where window_id is compared.
16816
168172003-11-17  Kim F. Storm  <storm@cua.dk>
16818
16819	* dispextern.h (struct it): New member first_vpos.
16820
16821	* xdisp.c (start_display): Set it->first_vpos.
16822	(try_window_id): Use first_vpos to start display in first _text_
16823	line if no reusable lines at start of window with header line.
16824
168252003-11-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16826
16827	* w32fns.c (XPutPixel):
16828	* w32bdf.c (w32_init_bdf_font):
16829	* sunfns.c (sel_read):
16830	* process.c (Fmake_network_process):
16831	* frame.c (store_frame_param):
16832	* fontset.c (Fset_fontset_font):
16833	* emacs.c (shut_down_emacs):
16834	* ccl.c (ccl_driver): Remove period at end of error message.
16835
16836	* config.in: Regenerate.
16837
16838	* xfns.c (x_window_to_frame, x_any_window_to_frame)
16839	(x_non_menubar_window_to_frame, x_menubar_window_to_frame)
16840	(x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
16841	(x_create_bitmap_mask, xg_set_icon, create_frame_xic)
16842	(xic_set_statusarea, x_window, gif_load): Formatting adjustments.
16843
16844	* xterm.h (struct x_display_info): New field xg_cursor for GTK.
16845
16846	* xterm.c: Add Display * to x_window_to_scroll_bar declaration.
16847	(XTmouse_position, handle_one_xevent): Pass Display* to
16848	x_window_to_scroll_bar.
16849	(x_window_to_scroll_bar): Take a Display* argument.
16850	Check that display for frame is equal to Display* argument.
16851	(event_handler_gdk): Remove current_dpyinfo.  Get dpyinfo from
16852	x_display_info_for_display instead.  Use Display in xev instead
16853	of GDK_DISPLAY.
16854	(x_dispatch_event): Call x_display_info_for_display.
16855	(XTread_socket): Move GTK part out of loop.  current_dpyinfo removed.
16856	(x_connection_closed): Call xg_display_close for GTK.
16857	(x_term_init): Call xg_display_open for additional displays.
16858	Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
16859	for GTK.
16860
16861	* xmenu.c (single_menu_item, mouse_position_for_popup)
16862	(x_activate_menubar): Formatting adjustments.
16863
16864	* xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
16865	adjustments.
16866
16867	* gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
16868	(xg_display_close, xg_create_default_cursor)
16869	(xg_get_gdk_pixmap_and_mask): New functions for multiple display
16870	handling.
16871	(xg_left_ptr_cursor): Remove.
16872	(xg_set_cursor): Change cursor to GdkCursor*.  Do not create
16873	cursor here.
16874	(xg_win_to_widget): Take Display* argument, call
16875	gdk_xid_table_lookup_for_display.
16876	(xg_create_frame_widgets, xg_get_file_name, create_menus)
16877	(xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
16878	(xg_create_widget, xg_create_scroll_bar): Use xg_cursor
16879	in FRAME_X_DISPLAY_INFO.
16880	(xg_get_scroll_id_for_window): Take Display* argument.
16881	(update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
16882	(xg_initialize): Remove xg_left_ptr_cursor.
16883
16884	* gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
16885	Display* argument.
16886	(xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
16887
168882003-11-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16889
16890	* xterm.c (x_detect_focus_change): Do not change focus frame for
16891	Enter/LeaveNotify if the current focus frame has explicit focus.
16892
168932003-11-14  Kim F. Storm  <storm@cua.dk>
16894
16895	* dispnew.c (update_text_area): Fix redisplay error when hscroll
16896	is active and first glyph is only partially visible.
16897
168982003-11-13  Kenichi Handa  <handa@m17n.org>
16899
16900	* xdisp.c (select_frame_for_redisplay): New function.
16901	(redisplay_internal): Record also selected_frame for
16902	unwind_redisplay.  Call select_frame_for_redisplay before
16903	redrawing each frame.
16904	(unwind_redisplay): Argument changed to a cons.
16905
169062003-11-12  Luc Teirlinck  <teirllm@auburn.edu>
16907
16908	* fns.c (Fstring_to_multibyte): Doc fix.
16909
169102003-11-11  Kenichi Handa  <handa@m17n.org>
16911
16912	* xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
16913
169142003-11-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16915
16916	* xfns.c (x_window): Set XtNx and XtNy in shell widget for
16917	program specified positions.
16918
169192003-11-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16920
16921	* xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
16922
169232003-11-08  Kenichi Handa  <handa@m17n.org>
16924
16925	* Makefile.in (lisp): Add kannada.el.
16926	(shortlisp): Likewise.
16927
169282003-11-07  Kenichi Handa  <handa@m17n.org>
16929
16930	* coding.c (coding_allocate_composition_data):
16931	Reset coding->composing to COMPOSITION_NO.
16932	(coding_restore_composition): Detect invalid composition data.
16933	Give Fstring and Fvector a Lispy integer, not C int.
16934
169352003-11-05  Stefan Monnier  <monnier@iro.umontreal.ca>
16936
16937	* floatfns.c (Flogb): Don't use VALMASK.
16938
16939	* m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
16940	* m/ia64.h (VALBITS, XINT, XUINT): Remove.
16941
16942	* lisp.h (XINT): Move the cast to clarify what is going on.
16943	(GCTYPEMASK, XSETTYPE): Remove.
16944	(XGCTYPE): Make it an alias of XTYPE.
16945
169462003-11-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16947
16948	* xterm.c (x_term_init): Fix formatting.
16949
169502003-11-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16951
16952	* gtkutil.h (xg_have_tear_offs): Declare.
16953	(xg_keep_popup, xg_did_tearoff): Remove.
16954
16955	* gtkutil.c: Remove variable xg_did_tearoff.
16956	(xg_have_tear_offs): New function.
16957	(tearoff_remove): Just decrease xg_detached_menus.
16958	(tearoff_activate): Increase xg_detached_menus and call
16959	tearoff_remove when tearoff is removed.
16960	(xg_keep_popup): Remove function.
16961	(create_menus): Give add_tearoff_p as argument to recursive
16962	call to create_menus.
16963	(xg_create_widget): Use variables instead of multiple
16964	strcmp.  Tell create_menus to create tear off only for
16965	menu bar menus.
16966	(xg_update_menubar): Change title for a detached menu also.
16967	(xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
16968	of deep_p.
16969	(xg_initialize): Initialize xg_detached_menus, remove
16970	initialization of xg_did_tearoff.
16971
16972	* xmenu.c (set_frame_menubar): For GTK, set deep_p if
16973	xg_have_tear_offs returns non-zero.
16974	(create_and_show_popup_menu): Remove setting of xg_did_tearoff and
16975	call to xg_keep_popup.
16976
169772003-11-01  Andrew Choi  <akochoi@shaw.ca>
16978
16979	* macterm.c (XTread_socket): Handle menubar selection and grow
16980	window only for mouseDown events.
16981
169822003-10-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
16983
16984	* xterm.c (x_term_init): For GTK part, increase x_initialized
16985	to check for more than one display.  Use error instead of return 0.
16986
169872003-10-31  Andrew Choi  <akochoi@shaw.ca>
16988
16989	* unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
16990	(copy_dysymtab): Call it.
16991
169922003-10-31  Luc Teirlinck  <teirllm@auburn.edu>
16993
16994	* eval.c (Fdefvaralias): Doc fix.
16995
169962003-10-26  Luc Teirlinck  <teirllm@auburn.edu>
16997
16998	* data.c (Fsetplist): Doc fix.
16999
170002003-10-14  Lute Kamstra  <lute@gnu.org>
17001
17002	* window.c (Fset_window_fringes): Clarify docstring.
17003
170042003-10-14  Kim F. Storm  <storm@cua.dk>
17005
17006	* window.c (Fset_window_margins): Simplify arg checking.
17007
170082003-10-13  Richard M. Stallman  <rms@gnu.org>
17009
17010	* regex.c (MAX_BUF_SIZE): Reduce to 2**15.
17011	(print_partial_compiled_pattern): Replace assert with a printout.
17012	(skip_noops, mutually_exclusive_p): Change args, values to re_char *.
17013
17014	* alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
17015
17016	* window.c (Fset_window_margins): Allow only integers as args.
17017	(syms_of_window) <special-display-buffer-names,
17018	special-display-regexps>: Doc fixes.
17019
170202003-10-13  Lute Kamstra  <lute@gnu.org>
17021
17022	* window.c (Fset_window_fringes): Elaborate docstring.
17023
170242003-10-12  Andrew Choi  <akochoi@shaw.ca>
17025
17026	* macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
17027
17028	* s/darwin.h (GC_MARK_STACK): Define.
17029
170302003-10-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17031
17032	* window.c (shrink_windows): New function.
17033	(size_window): Call shrink_windows to calculate window sizes when
17034	shrinking frame with more than one window.
17035
170362003-10-12  Kim F. Storm  <storm@cua.dk>
17037
17038	* xdisp.c (compute_fringe_widths): Doc fix.
17039
170402003-10-08  Kenichi Handa  <handa@m17n.org>
17041
17042	* coding.c (Fcoding_system_p): Return t for auto-loading coding system.
17043
170442003-10-07  Kenichi Handa  <handa@m17n.org>
17045
17046	* coding.c (Qcoding_system_define_form): New variable.
17047	(syms_of_coding): Intern and staticpro it.
17048	(Fcheck_coding_system): Try to autoload the definition of
17049	CODING-SYSTEM.
17050
170512003-10-05  Luc Teirlinck  <teirllm@auburn.edu>
17052
17053	* fns.c (Frequire): Doc fix.
17054
170552003-10-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17056
17057	* xfns.c (Fx_send_client_event): New function as a base for
17058	manipulating extended window manager hints.
17059	(Fx_send_client_event): Remove unused variable s.
17060
17061	* w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
17062	that function is removed.
17063
17064	* xterm.c (x_set_offset): Use move_offset_left/top instead of
17065	x/y_pixels_outer_diff.
17066	(x_check_expected_move): Calculate move_offset_left/top.
17067
17068	* xterm.h (struct x_output): New members: move_offset_top/left.
17069
17070	* frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
17071	call x_set_offset directly.
17072
17073	* frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
17074
17075	* frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
17076
17077	* xterm.c (x_delete_display): Free font names and font_encoder
17078	in dpyinfo->font_table.
17079
17080	* xfns.c (Fx_close_connection): Only call XFreeFont here.
17081	Move xfree of font names to x_delete_display.
17082
17083	* xterm.h (struct x_display_info): New member, wm_type.
17084	(struct x_output): New members, expected_top/left and
17085	check_expected_move.
17086
17087	* xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
17088	is received.
17089	(handle_one_xevent): Rename x_check_expected_move from
17090	x_check_fullscreen_move.
17091	(x_set_offset): Only add WM decoration sizes to modified_top/left
17092	for X_WMTYPE_A.  Set check_expected_move when WM type is unknown.
17093	(x_check_expected_move): Rename from x_check_fullscreen_move.
17094	Removed fullscreen specific code.  Use check_expected_move,
17095	expected_left/top instead.  Also, set wm_type.
17096	(x_term_init): Initialize wm_type to unknown.
17097
17098	* frame.c (x_fullscreen_move): Remove addition of WM decoration
17099	sizes to move_x/y.
17100
171012003-10-03  Kenichi Handa  <handa@m17n.org>
17102
17103	* macterm.c (x_load_font): Clear all members of FONTP before start
17104	filling them.
17105
171062003-10-02  Kenichi Handa  <handa@m17n.org>
17107
17108	* fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
17109	before calling find_ccl_program_func.  Call find_ccl_program_func
17110	only when fontp->font_encoder is not NULL.
17111
17112	* xterm.c (x_load_font): Clear all members of FONTP before start
17113	filling them.
17114
171152003-10-03  John Paul Wallington  <jpw@gnu.org>
17116
17117	* keymap.c (map_keymap): Don't abort when binding is a vector.
17118
171192003-10-02  Jason Rumney  <jasonr@gnu.org>
17120
17121	* makefile.w32-in (emacs.o, coding.o, bytecode.o):
17122	Sync dependencies with Makefile.in.
17123	(alloca.o): Remove.
17124
17125	* w32fns.c (w32_load_system_font): Clear all members of FONTP before
17126	filling them.
17127
17128	* w32bdf.c (w32_load_bdf_font): Likewise.
17129
171302003-09-30  Richard M. Stallman  <rms@gnu.org>
17131
17132	* term.c (set_tty_color_mode): Calculate current_mode_spec
17133	regardless of value of VAL.
17134
17135	* intervals.c (graft_intervals_into_buffer):
17136	Set BUF_INTERVALS (buffer)->up_obj when appropriate.
17137	Handle over_used when splitting UNDER.
17138
171392003-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17140
17141	* regex.c (regex_compile): Free the stack when returning from function.
17142
171432003-09-28  Kenichi Handa  <handa@m17n.org>
17144
17145	* fontset.c (Finternal_char_font): Change return value to
17146	cons (FONT-NAME . GLYPH-CODE).
17147
171482003-09-28  Eli Zaretskii  <eliz@gnu.org>
17149
17150	* term.c (tty_setup_colors): Treat any negative argument as -1.
17151
171522003-09-27  Gaute B Strokkenes  <biggaute@uwc.net>  (tiny change)
17153
17154	* process.c (send_process): Delete unused temp_buf.
17155
171562003-09-26  Dave Love  <fx@gnu.org>
17157
17158	* xterm.c (x_bitmap_mask): Declare.
17159
171602003-09-25  Dave Love  <fx@gnu.org>
17161
17162	* Makefile.in (fns.o): Depend on md5.h.
17163
171642003-09-25  Kim F. Storm  <storm@cua.dk>
17165
17166	* window.c (set_window_buffer): Fix redisplay problems when
17167	switching between buffers with different display margin widths.
17168
171692003-09-23  Kim F. Storm  <storm@cua.dk>
17170
17171	* process.c (set_socket_option): Fix :bindtodevice option.
17172	(Fset_network_process_option): Update process contact list when
17173	setting option succeeds.
17174	(Fmake_network_process): Doc fix.
17175
171762003-09-23  Dave Love  <fx@gnu.org>
17177
17178	* process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
17179
171802003-09-22  Eli Zaretskii  <eliz@gnu.org>
17181
17182	* term.c (set_tty_color_mode): Use INTEGERP to test whether a
17183	color mode is an integer number (it could be -1).
17184
171852003-09-22  Richard M. Stallman  <rms@gnu.org>
17186
17187	* intervals.c (graft_intervals_into_buffer): Correct the main loop
17188	in the case where OVER is longer than UNDER.
17189
171902003-09-22  Masatake YAMATO  <jet@gyve.org>
17191
17192	* window.c (Fset_window_scroll_bars): Validate the value of
17193	`vertical_type'.
17194
171952003-09-21  Kim F. Storm  <storm@cua.dk>
17196
17197	* frame.c (Vdefault_frame_scroll_bars): New variable.
17198	(x_set_vertical_scroll_bars): Use it instead of hardcoded values.
17199	(syms_of_frame): DEFVAR_LISP it, and initialize according to
17200	window-system default scroll bar position.
17201
17202	* window.c (Fwindow_scroll_bars): Doc fix.
17203
172042003-09-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17205
17206	* xterm.c (x_set_offset): Take window manager decorations into account.
17207
172082003-09-19  Richard M. Stallman  <rms@gnu.org>
17209
17210	* atimer.h: Don't include lisp.h.
17211	(P_): Define it here (as well as elsewhere).
17212
17213	* print.c (Fprin1_to_string): Move the PRINTPREPARE
17214	later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
17215
17216	* data.c (Fvariable_binding_locus): New function.
17217	(syms_of_data): defsubr it.
17218	(Flocal_variable_p): Delete duplicate call to indirect_variable.
17219
172202003-09-18  Dave Love  <fx@gnu.org>
17221
17222	* alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
17223
17224	* process.c (Fnetwork_interface_info): Fix type error.
17225	(Fnetwork_interface_list): Doc fix.
17226	(read_process_output, read_process_output): Delete unused var.
17227
172282003-09-17  Kim F. Storm  <storm@cua.dk>
17229
17230	* process.c (Fnetwork_interface_list, Fnetwork_interface_info):
17231	Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
17232	(Fnetwork_interface_info): Check that ifreq struct has required
17233	fields before accessing them; this requires that those fields are
17234	defined as macros, which may be too restrictive on some platforms,
17235	but it is better than failing on other platforms.
17236	(syms_of_process): Only defsubr above fns when included.
17237
172382003-09-17  Dave Love  <fx@gnu.org>
17239
17240	* unexalpha.c: Don't include varargs.h.
17241
172422003-09-17  Kim F. Storm  <storm@cua.dk>
17243
17244	* process.c (Fset_process_sentinel): Add sentinel to childp plist
17245	for network process.
17246	(socket_options): Add `:' prefix to option names.  Add optbit field.
17247	(set_socket_option): Remove no_error arg and special handling of s < 0.
17248	Return 1<<optbit for known option, 0 for unknown.
17249	Do not interpret 0 as false for boolean option (only nil).
17250	Pass failed option and value to report_file_error.
17251	(Fset_network_process_options): Replace by Fset_network_process_option.
17252	(Fset_network_process_option): New function to set just one option.
17253	(Fmake_network_process): Allow :coding arg to be a cons.
17254	Allow :server arg to be an integer specifying backlog size.
17255	Remove :options arg, and allow options to be specified directly
17256	as :KEY, VALUE pairs.  Parse these options before binding socket.
17257	As before, :reuseaddr t is default for a server process, but this
17258	can now be disabled by specifying :reuseaddr nil.
17259	(Fnetwork_interface_info): Rename from Fget_network_interface_info.
17260	(init_process): Availability of network options is now checked with
17261	simpler syntax (featurep 'make-network-process :OPTION); use loop to
17262	setup features.
17263	(syms_of_process): Fix defsubr's for the replaced functions.
17264
172652003-09-16  Dave Love  <fx@gnu.org>
17266
17267	* Makefile.in: Depend on coding.h.
17268
172692003-09-14  Kim F. Storm  <storm@cua.dk>
17270
17271	* process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
17272	(Fnetwork_interface_list, Fget_network_interface_info): New defuns.
17273	(syms_of_process): Defsubr them.
17274
17275	* config.in: Regenerate.
17276
172772003-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
17278
17279	* m/sr2k.h (XMARKBIT, XUNMARK): Remove.
17280	* m/news-r6.h (XUNMARK): Remove.
17281	* m/mips.h (XUNMARK): Remove.
17282	* m/mips-siemens.h (XUNMARK): Remove.
17283	* m/iris4d.h (XUNMARK): Remove.
17284	* m/hp800.h (XMARKBIT, XUNMARK): Remove.
17285
172862003-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
17287
17288	* lisp.h (VALBITS): Don't remove 1 for the markbit.
17289	(union Lisp_Object): Use unsigned int for types.  Remove markbit.
17290	(MARKBIT): Remove 1 from VALBITS so we still use same old val.
17291	(XTYPE): Use unsigned right-shift.
17292	(XMARKBIT, XMARK, XUNMARK): Remove.
17293
17294	* alloc.c (init_intervals, init_symbol, init_marker):
17295	Don't preallocate anything.
17296	(Fgarbage_collect, mark_object): Ignore the markbit.
17297
17298	* bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
17299
173002003-09-08  Lute Kamstra  <lute@gnu.org>
17301
17302	* xdisp.c (pint2hrstr): New function.
17303	(decode_mode_spec): Add `%i' and `%I' specs.
17304	* buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
17305	for `mode-line-format'.
17306
173072003-09-07  Andreas Schwab  <schwab@suse.de>
17308
17309	* alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
17310	avoid warning.
17311
173122003-09-07  Eli Zaretskii  <eliz@gnu.org>
17313
17314	* editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
17315
173162003-09-03  Kim F. Storm  <storm@cua.dk>
17317
17318	* xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
17319	change (superseded by 2002-08-30 change); the default blink-off
17320	cursor is now again "no cursor".
17321
173222003-09-01  Jason Rumney  <jasonr@gnu.org>
17323
17324	* makefile.w32-in (alloca.o): Remove.
17325	(coding.o): Depend on intervals.h
17326	(emacs.o, bytecode.o): Depend on window.h
17327
173282003-09-01  Dave Love  <fx@gnu.org>
17329
17330	* Makefile.in (alloca.o): Remove commands.
17331	(coding.o): Depend on intervals.h composite.h window.h.
17332	(emacs.o): Depend on window.h keyboard.h keymap.h.
17333	(gtkutil.o): Depend on keyboard.h charset.h coding.h.
17334	(bytecode.o): Depend on window.h.
17335
173362003-08-31  Jason Rumney  <jasonr@gnu.org>
17337
17338	* w32term.c (w32_per_char_metric): Allow cached metrics to be
17339	returned even when font_type is unknown.
17340
17341	* xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
17342
173432003-08-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17344
17345	* xterm.c (x_term_init): Initialize new fields in x_display_info.
17346
17347	* xterm.h (struct x_display_info): Add red/green/blue_bits and
17348	*_offset.
17349
17350	* xfns.c (lookup_rgb_color): Use new fields in x_display_info to
17351	calculate pixel value.
17352
173532003-08-29  Gerd Moellmann  <gerd.moellmann@t-online.de>
17354
17355	* xdisp.c (redisplay_internal): Fix change of 2003-04-30.
17356	Don't tell redisplay display is accurate when it's actually been
17357	paused for pending input.
17358
173592003-08-29  Richard M. Stallman  <rms@gnu.org>
17360
17361	* dispnew.c (adjust_glyph_matrix): Call window_box
17362	whenever W is nonzero.
17363
17364	* data.c (Fmake_variable_buffer_local, Fmake_local_variable)
17365	(Fkill_local_variable, Fmake_variable_frame_local)
17366	(Flocal_variable_p, Flocal_variable_if_set_p):
17367	Use indirect_variable to trace thru variable aliases.
17368
17369	* config.in: Updated.
17370
17371	* callint.c (Fcall_interactively): Save and restore
17372	Vthis_command, Vthis_original_command, real_this_command,
17373	and current_kboard->Vlast_command.
17374
17375	* abbrev.c (Fexpand_abbrev): Insert before deleting.
17376
173772003-08-29  Gerd Moellmann  <gerd@gnu.org>
17378
17379	* xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
17380
173812003-08-28  David Abrahams  <dave@boost-consulting.com>  (tiny change)
17382
17383	* coding.c (decode_coding_iso2022): Initialize local variable c2.
17384	(decode_coding_sjis_big5): Likewise.
17385
173862003-08-27  Jason Rumney  <jasonr@gnu.org>
17387
17388	* w32.c (sys_pipe): Protect against file descriptor overflow.
17389
17390	* w32fns.c (syms_of_w32fns): Remove non-existent functions.
17391
17392	* w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
17393
173942003-08-26  Terje Rosten  <terjeros@phys.ntnu.no>
17395
17396	* xfns.c (Vgtk_version_string): New variable.
17397	(syms_of_xfns): DEFVAR_LISP it.  Provide gtk.
17398
173992003-08-24  Eli Zaretskii  <eliz@gnu.org>
17400
17401	* term.c (term_init): Remove `const' from buffer_size's declaration.
17402
17403	* Makefile.in (msdos.o): Depend on intervals.h.
17404
17405	* msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
17406
174072003-08-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17408
17409	* xterm.h (struct x_display_info): New fields: client_leader_window
17410	and Xatom_wm_client_leader.
17411
17412	* xterm.c (x_initialize): Move call to x_session_initialize to ...
17413	(x_term_init): ... here.  Initialize client_leader fields in dpyinfo.
17414
17415	* xsmfns.c (create_client_leader_window): New function.
17416	(x_session_initialize): Call create_client_leader_window, take
17417	dpyinfo as argument.
17418
17419	* xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
17420
17421	* Makefile.in (xsmfns.o): Add more depenedencies.
17422
174232003-08-21  Dave Love  <fx@gnu.org>
17424
17425	* m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
17426
174272003-08-21  Kenichi Handa  <handa@m17n.org>
17428
17429	* term.c (term_init): Fix previous change; don't rely on the
17430	length of `buffer' if TERMINFO is defined.
17431
174322003-08-20  Dave Love  <fx@gnu.org>
17433
17434	* atimer.h: Include lisp.h.
17435
17436	* lisp.h (EMACS_LISP_H): New.
17437	(popup_activated_flag): Don't declare.
17438
17439	* alloca.c: Some merging with gnulib.  Change logic and doc
17440	concerning (x)malloc/(x)free -- no longer Emacs-specific.
17441	[DO_BLOCK_INPUT]: Don't include lisp.h.
17442	(xmalloc, xfree): Declare.
17443	(malloc): Don't declare.
17444
17445	* Makefile.in (LWLIB_OPTIONS): Remove (unused).
17446	(alloca.o): Remove obsolete stuff concerning alloca.s.  Depend on
17447	atimer.h, blockinput.h.
17448
17449	* alloc.c (lisp_align_malloc): Change type of `aligned'.
17450
17451	* alloca.s: Remove.
17452
174532003-08-19  Gerd Moellmann  <gerd@gnu.org>
17454
17455	* s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
17456	use -lncurses.
17457
17458	* term.c (term_init): Use a buffer of size 4096 for tgetent since
17459	FreeBSD returns something longer than 2044.  Abort if the end of
17460	the buffer is overwritten.
17461
174622003-08-19  Miles Bader  <miles@gnu.org>
17463
17464	* xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
17465
174662003-08-19  Gerd Moellmann  <gerd@gnu.org>
17467
17468	* alloc.c (lisp_align_malloc): Check for memory full when
17469	allocating ablocks, which also avoids freeing a pointer into an
17470	ablocks structure.
17471
17472	* puresize.h (BASE_PURESIZE): Increase to 1100000.
17473
17474	* buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
17475
174762003-08-16  Richard M. Stallman  <rms@gnu.org>
17477
17478	* editfns.c (Fencode_time): Doc fix.
17479
174802003-08-16  David Ponce  <david@dponce.com>
17481
17482	* fileio.c (Fwrite_region): Fix conditional expression to issue
17483	the right message.
17484
174852003-08-16  Juri Linkov  <juri@jurta.org>
17486
17487	* syntax.c (Fforward_word): Argument changed to optional.
17488	Set default value to 1.
17489
174902003-08-15  Kenichi Handa  <handa@m17n.org>
17491
17492	* xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
17493	what autoscaled.
17494	(best_matching_font): Once we find a better scalable font, set
17495	non_scalable_has_exact_height_p to 1.
17496	(try_font_list): Call try_alternative_families to try any family
17497	with the given registry.
17498
174992003-08-09  Andreas Schwab  <schwab@suse.de>
17500
17501	* alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
17502
17503	* print.c (print_string): Fix printing of multibyte string with
17504	nontrivial printcharfun.
17505
175062003-07-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17507
17508	* xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
17509
17510	* xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
17511
175122003-07-31  Kenichi Handa  <handa@m17n.org>
17513
17514	* process.c (read_process_output): Return the actually read bytes
17515	instead of the result of decoding.
17516
175172003-07-31  Kenichi Handa  <handa@m17n.org>
17518
17519	* xterm.h (struct x_bitmap_record): New member have_mask.
17520
17521	* xfns.c (x_create_bitmap_from_data): Initialize have_mask member
17522	to 0.
17523	(x_create_bitmap_from_file): Likewise.
17524	(x_destroy_bitmap): Check have_mask member before freeing a mask.
17525	(x_destroy_all_bitmaps): Likewise.
17526	(x_create_bitmap_mask): Set have_mask member to 1.
17527
175282003-07-30  Richard M. Stallman  <rms@gnu.org>
17529
17530	* Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
17531
175322003-07-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17533
17534	* gtkutil.c (xg_mark_data): Update calls to mark_object.
17535
175362003-07-29  Richard M. Stallman  <rms@gnu.org>
17537
17538	* xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
17539	Conditionalize XIM code on HAVE_XIM.
17540
17541	* fns.c (Fclear_string): New function.
17542	(syms_of_fns): defsubr it.
17543
175442003-07-28  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
17545
17546	* xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17547
175482003-07-22  Stefan Monnier  <monnier@cs.yale.edu>
17549
17550	* xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
17551
17552	* buffer.c (delete_all_overlays): New function.
17553	* buffer.h (delete_all_overlays): Declare.
17554	* coding.c (run_pre_post_conversion_on_str):
17555	* print.c (temp_output_buffer_setup):
17556	* fileio.c (Finsert_file_contents):
17557	* minibuf.c (get_minibuffer): Use it.
17558
175592003-07-22  Andrew Choi  <akochoi@shaw.ca>
17560
17561	* unexmacosx.c (unexec_regions_sort_compare):
17562	(unexec_regions_merge): New functions.  Sort and merge unexec
17563	regions before dumping them.
17564
175652003-07-22  Dave Love  <fx@gnu.org>
17566
17567	* xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
17568
175692003-07-21  Stefan Monnier  <monnier@cs.yale.edu>
17570
17571	* alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
17572	(GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
17573	MARKBIT as the gcmarkbit for strings.
17574
175752003-07-21  Richard M. Stallman  <rms@gnu.org>
17576
17577	* s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
17578
17579	* fns.c (Flocale_info): Rename from Flanginfo.  Doc fixes.
17580	(syms_of_fns): Corresponding change.
17581
17582	* alloc.c (syms_of_alloc): Doc fixes.
17583
175842003-07-20  Han Boetes  <han@mijncomputer.nl>  (tiny change)
17585
17586	* s/netbsd.h: Use -Wl syntax.
17587
175882003-07-17  Richard M. Stallman  <rms@gnu.org>
17589
17590	* xterm.c (xim_initialize): Redo 6/24 change.
17591
175922003-07-15  Stefan Monnier  <monnier@cs.yale.edu>
17593
17594	* buffer.c (copy_overlays): Use EMACS_INT for positions.
17595	(Fswitch_to_buffer): Don't signal an error when switching to the same
17596	buffer in a dedicated window.
17597
17598	* alloc.c: Use bitmaps for cons, as was done for floats.
17599	(init_float, init_cons): Let the normal code allocate the first block.
17600	(CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
17601	(CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
17602	New macros.
17603	(struct cons_block): Move conses to the beginning.  Add gcmarkbits.
17604	(Fcons): Use lisp_align_malloc and CONS_UNMARK.
17605	(live_cons_p): Check the pointer is not past the `conses' array.
17606	(mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
17607	(mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
17608	(survives_gc_p): Use CONS_MARKED_P and simplify.
17609	(gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
17610
176112003-07-13  Paul Eggert  <eggert@twinsun.com>
17612
17613	GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
17614	puts it into BSS instead, at least on Solaris 8 and 9.
17615	This is a valid optimization, and it may occur on other platforms,
17616	so Emacs should not assume that initializing a static variable to
17617	zero puts it into data.
17618	* alloc.c (pure, staticvec):
17619	Initialize these arrays to nonzero, so that they're not
17620	put into BSS by that optimization.
17621
176222003-07-13  Stefan Monnier  <monnier@cs.yale.edu>
17623
17624	* alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING.  Update users.
17625	(lisp_align_malloc): Use posix_memalign is available.
17626	(ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
17627	(STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
17628	for consistency.  Update users.
17629
176302003-07-13  Richard M. Stallman  <rms@gnu.org>
17631
17632	* s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
17633
176342003-07-13  Terje Rosten  <terjeros@phys.ntnu.no>
17635
17636	* xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
17637	and use the Gtk+ function gtk_window_icon_from_file if available.
17638
17639	* xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
17640	handle mask of bitmaps.
17641	(x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
17642	mask property.
17643	(xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
17644
17645	* xterm.h (xg_set_icon): New function.
17646
176472003-07-12  Paul Eggert  <eggert@twinsun.com>
17648
17649	* unexelf.c (unexec): Consider a section to precede the .bss
17650	section if its addresses overlap that of .bss.
17651
176522003-07-12  Richard M. Stallman  <rms@gnu.org>
17653
17654	* Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
17655
17656	* config.in (HAVE_CRTIN): Add #undef.
17657	(INLINE): Really inline only if OPTIMIZE is defined.
17658
17659	* s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
17660	END_FILES_1.
17661	(START_FILES_1, END_FILES_1): New macros (conditional).
17662	(LD_SWITCH_SYSTEM_TEMACS): Define.
17663
17664	* s/openbsd.h: Don't include bsd4-3.h.
17665	(TERMINFO): Define.
17666	(LIBS_TERMCAP): Define.
17667	(LD_SWITCH_SYSTEM): Define (two definitions).
17668
17669	* xfns.c: Include libpng/png.h instead of png.h.
17670
176712003-07-11  Andreas Schwab  <schwab@suse.de>
17672
17673	* buffer.c (modify_overlay): Update prototype.
17674	* lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
17675	Likewise.
17676
176772003-07-09  Stefan Monnier  <monnier@cs.yale.edu>
17678
17679	* lisp.h (VALBITS): Define in terms of GCTYPEBITS.
17680	(struct interval): Move to intervals.h.
17681	(struct Lisp_Marker): Use EMACS_INT for position info.
17682	(forward_point): Remove prototype of defunct function.
17683	(Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
17684	(Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
17685	(syms_of_textprop, set_text_properties): Remove prototypes that are
17686	already in intervals.h.
17687
17688	* intervals.h (struct interval): Move from lisp.h.
17689	Use EMACS_INT for position and size info.
17690
17691	* coding.c: Include intervals.h for Fset_text_properties.
17692
17693	* buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
17694	position and length information.
17695
176962003-07-09  Stefan Monnier  <monnier@cs.yale.edu>
17697
17698	* buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
17699	position and length information.
17700
177012003-07-09  Stefan Monnier  <monnier@cs.yale.edu>
17702
17703	Change overlays_after and overlays_before so the overlays themselves
17704	are linked into lists, rather than using cons cells.  After all each
17705	Lisp_Misc already occupies 5 words, so we can add a `next' field to
17706	Lisp_Overlay for free and save up one cons cell per overlay (not
17707	to mention one indirection when traversing the list of overlay).
17708
17709	* lisp.h (struct Lisp_Overlay): New field `next'.
17710
17711	* buffer.h (struct buffer): Change overlays_before and overlays_after
17712	from Lisp lists of overlays to pointers to overlays.
17713
17714	* buffer.c (overlay_strings, recenter_overlay_lists):
17715	Fix typo in eassert in last commit.
17716	(unchain_overlay): New function.
17717	(add_overlay_mod_hooklist): Use AREF.
17718	(copy_overlays, reset_buffer, overlays_at, overlays_in)
17719	(overlay_touches_p, overlay_strings, recenter_overlay_lists)
17720	(fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
17721	(Fmove_overlay, Fdelete_overlay, Foverlay_lists)
17722	(report_overlay_modification, evaporate_overlays, init_buffer_once):
17723	Adjust to new type of overlays_(before|after).
17724
17725	* alloc.c (mark_object): Mark the new `next' field of overlays.
17726	(mark_buffer): Manually mark the overlays_(after|before) fields.
17727
17728	* coding.c (run_pre_post_conversion_on_str):
17729	* editfns.c (overlays_around):
17730	* xdisp.c (load_overlay_strings):
17731	* fileio.c (Finsert_file_contents):
17732	* indent.c (current_column):
17733	* insdel.c (signal_before_change, signal_after_change):
17734	* intervals.c (set_point_both):
17735	* print.c (temp_output_buffer_setup): Use new type for
17736	overlays_(before|after).
17737
177382003-07-08  Stefan Monnier  <monnier@cs.yale.edu>
17739
17740	* buffer.c (report_overlay_modification): Don't run hooks while
17741	traversing the list of overlays.
17742
17743	* buffer.h (struct buffer): Use an int for overlay_center.
17744	(overlays_at, evaporate_overlays, recenter_overlay_lists)
17745	(overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
17746
17747	* buffer.c (reset_buffer, recenter_overlay_lists)
17748	(adjust_overlays_for_insert, adjust_overlays_for_delete)
17749	(fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
17750	(evaporate_overlays, init_buffer_once): Update use of overlay_center.
17751	(overlays_at, evaporate_overlays, recenter_overlay_lists)
17752	(overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
17753
17754	* xdisp.c (fast_find_position): Remove unused var.
17755
17756	* cmds.c (Qexpand_abbrev): New sym.
17757	(syms_of_cmds): Initialize it.
17758	(internal_self_insert): Use it to call expand-abbrev.
17759
177602003-07-09  Kim F. Storm  <storm@cua.dk>
17761
17762	* xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
17763	was configured with --without-xim.
17764	(x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
17765
177662003-07-07  Richard M. Stallman  <rms@gnu.org>
17767
17768	* xdisp.c (reseat_1): Set it->area to TEXT_AREA.
17769
17770	* alloc.c (Fgarbage_collect): Doc fix.
17771
177722003-07-07  Nozomu Ando  <nand@mac.com>
17773
17774	* buffer.c (Fkill_buffer): Clear charpos cache if necessary.
17775
177762003-07-06  Stefan Monnier  <monnier@cs.yale.edu>
17777
17778	* minibuf.c (read_minibuf): UNGCPRO before returning.
17779	(Ftry_completion, Fall_completions): Doc fix.
17780
17781	* alloc.c (live_float_p): Check that p is not past the `floats' array,
17782	now that `floats' is not the last element of the struct any more.
17783
177842003-07-06  Jason Rumney  <jasonr@gnu.org>
17785
17786	* w32term.h (ClipboardSequence_Proc): New type.
17787
17788	* w32fns.c (clipboard_sequence_fn): New variable.
17789	(globals_of_w32fns): Initialize it.
17790
17791	* w32select.c (last_clipboard_sequence_number): New variable.
17792	(Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
17793	number if possible.
17794
177952003-07-06  Stefan Monnier  <monnier@cs.yale.edu>
17796
17797	* m/amdx86-64.h (MARKBIT):
17798	* m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
17799	MARKBIT and ARRAY_MARK_FLAG any more.
17800
17801	* m/hp800.h (XSETMARKBIT):
17802	* m/sr2k.h (XSETMARKBIT):
17803	* lisp.h (XSETMARKBIT): Remove unused macro.
17804
17805	* lisp.h (mark_object): Change prototype.
17806
17807	* alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
17808	(last_marked): Change accordingly.
17809	(mark_interval, mark_maybe_object, mark_maybe_pointer)
17810	(Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
17811	(mark_buffer): Update calls to mark_object.
17812
17813	* bytecode.c (mark_byte_stack):
17814	* fns.c (sweep_weak_table):
17815	* keyboard.c (mark_kboards): Update calls to mark_object.
17816
178172003-07-06  Jason Rumney  <jasonr@gnu.org>
17818
17819	* alloc.c (struct ablock): Only include padding when there is some.
17820
178212003-07-04  Stefan Monnier  <monnier@cs.yale.edu>
17822
17823	* alloc.c (ALIGN): Add casts to simplify usage.
17824	(BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
17825	(ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
17826	(struct ablock, struct ablocks): New types.
17827	(free_ablock): New global var.
17828	(lisp_align_malloc, lisp_align_free): New functions.
17829	(FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
17830	(struct float_block): Reorder and add gcmarkbits.
17831	(GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
17832	(FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
17833	(init_float, make_float): Use lisp_align_malloc.
17834	(free_float, live_float_p): Don't use `type' any more.
17835	(make_float): Use FLOAT_UNMARK to access to mark bit.
17836	(mark_maybe_object, mark_maybe_pointer, survives_gc_p):
17837	Use FLOAT_MARKED_P to access the mark bit.
17838	(pure_alloc): Simplify use of ALIGN.
17839	(mark_object): Use FLOAT_MARK to access the mark bit.
17840	(gc_sweep): Use new macros to access the float's mark bit.
17841	(init_alloc_once): Init free_ablock.
17842
17843	* lisp.h (struct Lisp_Float): Remove unused field `type'.
17844
178452003-06-27  Stefan Monnier  <monnier@cs.yale.edu>
17846
17847	* alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
17848	(GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
17849	(allocate_buffer): Move.
17850	(string_bytes): Don't mask markbit of `size_byte'.
17851	(mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
17852	(mark_object, mark_buffer, survives_gc_p, gc_sweep):
17853	Use the `size' field of buffers (rather than the `name' field) for
17854	the mark bit, as is done for all other vectorlike objects.
17855	Use the new macros to access the mark bit of vectorlike objects.
17856
178572003-06-26  Richard M. Stallman  <rms@gnu.org>
17858
17859	* puresize.h (BASE_PURESIZE): Increment base size.
17860
17861	* xdisp.c (fast_find_position): Enable Gerd's new definition.
17862
17863	* xterm.c (xim_initialize): Undo previous change.
17864
178652003-06-26  Stefan Monnier  <monnier@cs.yale.edu>
17866
17867	* alloc.c (survives_gc_p): Simplify.
17868
17869	* buffer.c (set_buffer_internal_1): Test CONSP for lists.
17870
17871	* window.c (Fset_window_dedicated_p): Simplify.
17872	(display_buffer_1): Don't raise the win from which minibuf was entered.
17873	(temp_output_buffer_show): Don't assume BEG == 1.  Simplify.
17874	(Fminibuffer_selected_window): Simplify.
17875
17876	* buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
17877
17878	* lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
17879	(struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
17880
17881	* insdel.c (check_markers, adjust_markers_for_delete)
17882	(adjust_markers_for_insert, adjust_markers_for_replace)
17883	(prepare_to_modify_buffer, RESTORE_VALUE):
17884	* marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
17885	(Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
17886	(set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
17887	* alloc.c (Fmake_marker, free_marker, gc_sweep):
17888	* buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
17889	* editfns.c (save_excursion_restore, transpose_markers):
17890	* window.c (delete_window):
17891	* xdisp.c (message_dolog): Update for new types.
17892
178932003-06-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
17894
17895	* xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
17896	(realize_default_face): Use default_face_done_p for the force_p
17897	argument to set_lface_from_font_name.  Set default_face_done_p to one.
17898
17899	* frame.c (make_frame): Initialize default_face_done_p.
17900
17901	* frame.h (struct frame): Add default_face_done_p.
17902
17903	* config.in: Add XRegisterIMInstantiateCallback_arg6 so it
17904	will be defined.
17905
179062003-06-25  Stefan Monnier  <monnier@cs.yale.edu>
17907
17908	* alloc.c (make_interval, Fmake_symbol, allocate_misc):
17909	Initialize the new field `gcmarkbit'.
17910	(mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
17911	(mark_interval_tree): Don't mark the tree separately from the nodes.
17912	(UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
17913	(mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
17914	(mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
17915
17916	* lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
17917	(struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
17918	(struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
17919	(struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
17920	(struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
17921
179222003-06-24  Dave Love  <fx@gnu.org>
17923
17924	* xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
17925
17926	* strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux.  Merge changes
17927	from gnulib.
17928
179292003-06-21  Richard M. Stallman  <rms@gnu.org>
17930
17931	* fileio.c (Fwrite_region): Alternate messages
17932	for append and partial write.
17933
17934	* keyboard.c (read_key_sequence): When converting upcase fn key to
17935	downcase, update fkey and keytran so `backspace' gets translated.
17936
17937	* keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
17938
17939	* process.c (wait_reading_process_input): Don't signal SIGIO
17940	in batch mode.
17941
179422003-06-17  Kenichi Handa  <handa@m17n.org>
17943
17944	* Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
17945	composite.h.
17946
17947	* xselect.c: Don't include charset.h, coding.h, composite.h.
17948	(Qforeign_selection): New variable.
17949	(syms_of_xselect): Intern and static it.
17950	(selection_data_to_lisp_data): Return a unibyte string made from
17951	data with `foreign-selection' text property.
17952
179532003-06-15  Stefan Monnier  <monnier@cs.yale.edu>
17954
17955	* termhooks.h (EVENT_INIT): New macro.
17956
17957	* keyboard.c (mark_kboards): Move from alloc.c.  Mark kbd_buffer.
17958
17959	* alloc.c (mark_kboards): Move to keyboard.c.
17960
17961	* keyboard.c (record_asynch_buffer_change, read_avail_input):
17962	* xterm.c (x_dispatch_event):
17963	* xmenu.c (find_and_call_menu_selection):
17964	* xdisp.c (handle_tool_bar_click):
17965	* w32menu.c (menubar_selection_callback):
17966	* sysdep.c (kbd_input_ast, read_input_waiting):
17967	* msdos.c (dos_rawgetc):
17968	* macterm.c (mac_check_for_quit_char):
17969	* macmenu.c (menubar_selection_callback):
17970	* gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
17971	data to kbd_buffer_store_event.
17972
179732003-06-15  Kim F. Storm  <storm@cua.dk>
17974
17975	* xdisp.c (x_fix_overlapping_area): Always use area relative X
17976	to fix redisplay problem with tall characters (such as ,AC(B).
17977
179782003-06-13  Kai Gro,A_(Bjohann  <kai.grossjohann@gmx.net>
17979
17980	* fileio.c (Fcopy_file): Doc fix: copies file modes, too.
17981
179822003-06-12  Kenichi Handa  <handa@m17n.org>
17983
17984	* fileio.c (Fwrite_region): Save and restore restriction.
17985
179862003-06-12  Dave Love  <fx@gnu.org>
17987
17988	* alloca.c (alloca): Declare arg as size_t.
17989
17990	* sysdep.c: Remove redundant include of unistd.h, stdlib.h.
17991	Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
17992
179932003-06-11  Dave Love  <fx@gnu.org>
17994
17995	* search.c (shrink_regexp_cache): Use xrealloc.
17996	(syms_of_search): Use xmalloc.
17997
179982003-06-10  Kim F. Storm  <storm@cua.dk>
17999
18000	* xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
18001	Adjust phys_cursor.x to be relative to window box, rather than
18002	text area before checking -- to ensure cursor is redrawn when
18003	exposing window.
18004	Note: This also fixes a similar (older) bug if display margins
18005	are present.
18006
180072003-06-06  Kenichi Handa  <handa@m17n.org>
18008
18009	* coding.c (encoding_buffer_size): If coding->type is
18010	coding_type_ccl, double magnification on CRLF encoding.
18011
180122003-06-06  Jason Rumney  <jasonr@gnu.org>
18013
18014	* w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
18015	(w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
18016
18017	* xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
18018	Mac too.
18019
180202003-06-05  Dave Love  <fx@gnu.org>
18021
18022	* strftime.c: Merge changes from gnulib.
18023
18024	* mktime.c (__mktime_internal): Merge changes from gnulib
18025	involving year 69 and dst2.
18026
18027	Changes to merge with gnulib version and be consistent with the
18028	autoconf test:
18029
18030	* getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
18031	Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
18032	[HAVE_LOCALE_H]: Include locale.h.
18033	(getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
18034
180352003-06-05  Kim F. Storm  <storm@cua.dk>
18036
18037	* window.c (coordinates_in_window): Convert X and Y to window
18038	relative coordinates inside mode-line and header-line parts.
18039	Convert X and Y to margin area relative coordinates inside left
18040	and right display margin parts.
18041
180422003-06-05  Jason Rumney  <jasonr@gnu.org>
18043
18044	* w32fns.c (add_system_logical_colors_to_map): New function.
18045	(Fx_open_connection): Use it.
18046
180472003-06-04  Stefan Monnier  <monnier@cs.yale.edu>
18048
18049	* process.c (allocate_pty): Revert part of the previous patch.
18050	(Faccept_process_output): Simplify.
18051
180522003-06-04  Jason Rumney  <jasonr@gnu.org>
18053
18054	* termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
18055
18056	* keyboard.c (Qmouse_wheel, mouse_wheel_syms)
18057	(lispy_mouse_wheel_names): Remove.
18058	(syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
18059	Always define drag_and_drop_syms.
18060
18061	* macterm.c (XTread_socket): Map mouse wheel events to Emacs
18062	WHEEL_EVENT events.
18063
180642003-06-03  Stefan Monnier  <monnier@cs.yale.edu>
18065
18066	* xdisp.c (update_tool_bar): Add missing UNGCPRO.
18067
18068	* buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
18069
180702003-06-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
18071
18072	* gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
18073	menu item label.
18074
180752003-06-03  Richard M. Stallman  <rms@gnu.org>
18076
18077	* window.c (Fwindow_edges): Doc fix.
18078	(Fwindow_pixel_edges, Fwindow_inside_edges)
18079	(Fwindow_inside_pixel_edges): New functions.
18080	(syms_of_window): defsubr them.
18081
18082	* window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
18083	(WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
18084
180852003-06-02  Stefan Monnier  <monnier@cs.yale.edu>
18086
18087	* dispnew.c (Fsit_for): Don't lie about the number of args.
18088
180892003-06-02  Dave Love  <fx@gnu.org>
18090
18091	* callproc.c: Use HAVE_FCNTL_H, not USG5.
18092	(syms_of_callproc) <process-environment>: Doc fix.
18093
18094	* doc.c: Use HAVE_FCNTL_H, not USG5.
18095
18096	* xfaces.c (font_rescale_ratio): Fix for K&R.
18097
18098	* termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
18099
18100	* mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
18101
18102	* lread.c [HAVE_FCNTL_H]: Include fcntl.h.
18103
18104	* gtkutil.c: Include keyboard.h, charset.h, coding.h.
18105	(xg_create_frame_widgets): Use ENCODE_UTF_8.
18106
18107	* xterm.c (Qutf_8): Move to coding.c
18108
18109	* xmenu.c (ENCODE_MENU_STRING): New.
18110	(list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
18111	Use it.
18112
18113	* coding.h (ENCODE_UTF_8): New.
18114	(Qutf_8): Declare.
18115
18116	* coding.c (Qutf_8): New.
18117	(syms_of_coding): Intern it.
18118
18119	* fns.c: Doc fixes.
18120
181212003-06-02  Kenichi Handa  <handa@m17n.org>
18122
18123	* buffer.c (Fset_buffer_multibyte): Fix previous change.
18124
181252003-06-01  Stefan Monnier  <monnier@cs.yale.edu>
18126
18127	* lread.c (openp): Make sure STR is a string.
18128
181292003-06-01  David Ponce  <david@dponce.com>
18130
18131	* termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
18132	Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
18133
18134	* keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
18135	(mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
18136	(discard_mouse_events): Discard WHEEL_EVENT events too.
18137	(lispy_wheel_names, wheel_syms): New.
18138	(syms_of_keyboard): Init and staticpro `wheel_syms'.  Init and
18139	staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
18140	(make_lispy_event): Add WHEEL_EVENT handler.
18141
18142	* w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
18143	(w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
18144	WHEEL_EVENT events.
18145
181462003-05-31  John Paul Wallington  <jpw@gnu.org>
18147
18148	* Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
18149	timer are in lisp/emacs-lisp.
18150
181512003-05-31  Kenichi Handa  <handa@m17n.org>
18152
18153	* buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
18154	region when a buffer is changed to unibyte.
18155
18156	* charset.h (VALID_LEADING_CODE_P): New macro.
18157	(UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
18158
18159	* coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
18160	is nonzero, accept multibyte form of eight-bit-control chars.
18161	(decode_composition_emacs_mule): Likewise.
18162	(decode_coding_emacs_mule): Likewise.
18163	(encode_coding_emacs_mule): If coding->flags is nonzero, produce
18164	multibyte form of eight-bit-control chars.
18165
18166	* fileio.c (Qauto_save_coding, auto_save_coding): New variables.
18167	(Finsert_file_contents): If coding-system-for-read is bound to
18168	Qauto_save_coding, use the coding system emacs-mule with special
18169	setting for recovering a file.
18170	(choose_write_coding_system): On auto saving, use the coding
18171	system emacs-mule with special setting for auto saving.
18172	(syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
18173
181742003-05-30  Kenichi Handa  <handa@m17n.org>
18175
18176	* coding.c (ccl_coding_driver): Set ccl->eight_bit_control
18177	properly before calling ccl_driver.
18178
18179	* ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
18180
18181	* ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
18182	(ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
18183	(setup_ccl_program): Initialize ccl->eight_bit_control to zero.
18184
181852003-05-29  Glenn Morris  <gmorris@ast.cam.ac.uk>
18186
18187	* xfaces.c (realize_default_face): Do not abort if lface is
18188	non-existent - reverts change from 2003-05-19.
18189
181902003-05-29  Kenichi Handa  <handa@m17n.org>
18191
18192	* coding.c (decode_coding_iso2022): Pay attention to the byte
18193	sequence of CTEXT extended segment, and retain those bytes as is.
18194
181952003-05-28  Kenichi Handa  <handa@m17n.org>
18196
18197	* coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
18198	of CODING_REPLACEMENT_CHARACTER.
18199	(decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
18200	CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
18201	check this flag on encoding.
18202	(encode_coding_sjis_big5):
18203	Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
18204	(Fset_terminal_coding_system_internal):
18205	Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
18206	instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
18207
18208	* coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
18209	CODING_INHIBIT_CHARACTER_SUBSTITUTION.
18210	(CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
18211
182122003-05-28  Richard M. Stallman  <rms@gnu.org>
18213
18214	* print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
18215
18216	* eval.c (unbind_to): Move init of this_binding to separate statement.
18217
182182003-05-28  Kim F. Storm  <storm@cua.dk>
18219
18220	* xdisp.c (expose_window): Fix error in calculation of
18221	window relative coordinates of area to redisplay.
18222
182232003-05-27  Jason Rumney  <jasonr@gnu.org>
18224
18225	* w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
18226
182272003-05-27  David Ponce  <david@dponce.com>
18228
18229	Handle W32 mouse wheel events as mouse click events, like in X.
18230
18231	* keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
18232	MOUSE_WHEEL_EVENT anymore.
18233
18234	* w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
18235	Scrolling down/up the mouse wheel is respectively mapped to mouse
18236	button 4 and 5.
18237	(w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
18238	MOUSE_CLICK_EVENT events.  Forward w32 MSH_MOUSEWHEEL events as
18239	WM_MOUSEWHEEL events.
18240
182412003-05-27  Andreas Schwab  <schwab@suse.de>
18242
18243	* buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
18244
18245	* xdisp.c (try_window_id): Avoid aborting if PT is inside a
18246	partially visible line.
18247
18248	* alloc.c (Fgarbage_collect): Fix last change.
18249
182502003-05-26  John Paul Wallington  <jpw@gnu.org>
18251
18252	* xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
18253
182542003-05-25  Stefan Monnier  <monnier@cs.yale.edu>
18255
18256	* window.c (Fset_window_buffer): Add type of `keep_margins'.
18257	(Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
18258
18259	* window.h (window_box_text_cols): Declare.
18260
18261	* xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
18262	(x_draw_vertical_border): Remove unused var `f'.
18263
18264	* xfaces.c (build_scalable_font_name): Remove `unused var
18265	pixel_size' warning.
18266
18267	* xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
18268
18269	* unexelf.c (unexec): Remove `unused var n' warning.
18270
18271	* strftime.c (my_strftime_localtime_r): Remove `defined but
18272	unused' warning.
18273
18274	* process.c (allocate_pty): Remove `unused var stb' and
18275	`cp might be used uninitialized' warnings.
18276
18277	* dispnew.c (mode_line_string): Remove unused var `f'.
18278
18279	* coding.c (find_safe_codings): Remove unused var `i'.
18280
18281	* bytecode.c (Fbyte_code): Remove `unused val' warning.
18282
18283	* buffer.c (Fkill_buffer): Remove unused var `list'.
18284
18285	* alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
18286
182872003-05-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
18288
18289	* frame.c (make_frame): Condition want_fullscreen with
18290	HAVE_WINDOW_SYSTEM.
18291
182922003-05-25  Juanma Barranquero  <lektu@terra.es>
18293
18294	* window.c (Fset_window_scroll_bars): Fix typo in argument name.
18295	(Fwindow_scroll_bars): Fix typo in docstring.
18296
182972003-05-24  Kim F. Storm  <storm@cua.dk>
18298
18299	The following changes serve several purposes:
18300
18301	1) Swap the position of fringes and display margins in windows, i.e.
18302	the fringes are now displayed between the margins and the text area
18303	(by default).
18304
18305	2) Allow fringe and scroll bar parameters to be set per-buffer and
18306	per-window (like display margins).  Such settings are now stored
18307	in window configurations, preserved when frames are resized, and
18308	copied when windows are split vertically or horizontally.
18309	Several bugs related to display margins have been fixed.
18310
18311	3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
18312
18313	4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
18314	rather than FRAME_WIDTH (FRAME_FONT (f)).
18315
18316	5) Introduce a consistent naming of variables, members and macros
18317	depending on whether their value is measured in pixels or in
18318	canonical columns/lines.  Pixel dimensions are named *_width and
18319	*_height, while canonical columns/lines are named *_cols and
18320	*_lines.  Pixel positions are named *_x and *_y, while column/line
18321	positions are named *_col and *_line.
18322
18323	6) Consolidate more of the X, W32, and MAC gui code by moving
18324	common data into struct frame, and generalize it for the non-gui
18325	case by using suitable defaults.
18326
18327	7) Cleanup and consolidate the macros controlling frame and window
18328	layout into frame.h and window.h, and generalize the use of the
18329	various window_box_* functions (enhanced to handle the new fringe
18330	position and the per-window fringe and scroll bar settings).
18331
18332	* frame.h (struct frame): Rename members height to text_lines,
18333	width to text_cols, window_height to total_lines, window_width to
18334	total_cols, new_height to new_text_lines, new_width to
18335	new_text_cols.  All uses changed.
18336	(struct frame): New members which consolidate common members of
18337	x_output, w32_output, and mac_output structures: left_pos,
18338	top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
18339	win_gravity, size_hint_flags, border_width, internal_border_width,
18340	line_height, fringe_cols, left_fringe_width, right_fringe_width,
18341	want_fullscreen.  All uses changed.
18342	(struct frame): New member column_width contaning the canonical
18343	column width, analogue to line_height.  All uses changed.
18344	(struct frame): Rename members scroll_bar_pixel_width to
18345	config_scroll_bar_width, and scroll_bar_cols to
18346	config_scroll_bar_cols.  All uses changed.
18347	(struct frame): New member scroll_bar_actual_width which
18348	consolidates and renames the vertical_scroll_bar_extra member of
18349	x_output, w32_output, and mac_output structures.  All uses changed.
18350	(FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
18351	from x/w32/macterm.h files.  All uses changed.  Also change code
18352	which referred to f->output_data...->pixel_height.
18353	(FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
18354	from x/w32/macterm.h files.  All uses changed.  Also change code
18355	which referred to f->output_data...->pixel_width.
18356	(FRAME_LINES): Rename from FRAME_HEIGHT.  All uses changed.
18357	Also change code which referred to f->height.
18358	(FRAME_COLS): Rename from FRAME_WIDTH.  All uses changed.
18359	Also change code which referred to f->width.
18360	(FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
18361	to update new_text_lines and new_text_cols members directly.
18362	(FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
18363	FRAME_SCROLL_BAR_PIXEL_WIDTH.  All uses changed.
18364	(FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
18365	FRAME_SCROLL_BAR_COLS.  All uses changed.
18366	(FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
18367	Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
18368	FRAME_RIGHT_SCROLL_BAR_WIDTH, resp.  All uses changed.
18369	(FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
18370	(FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
18371	(FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
18372	(SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
18373	(FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
18374	(WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
18375	(WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
18376	(FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
18377	Unconditionally return line_height member (it now has proper value
18378	also for non-window frames).
18379	(FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT.  Unconditionally
18380	return new column_width member (rather than the default font width).
18381	(FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
18382	(FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
18383	from x/w32/macterm.h files.  Unconditionally return corresponding
18384	member of frame structure (they now have proper values also for
18385	non-window frames).
18386	(FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
18387	Calculate return value from left and right widths.
18388	(FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
18389	internal_border_width member (has proper value for non-window frame).
18390	(FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
18391	(FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
18392	(FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
18393	(FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
18394	(FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
18395	consolidated from xterm.h, macterm.h, and w32term.h.
18396	(FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
18397	consolidated from xterm.h, macterm.h, and w32term.h.
18398	(FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
18399	CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
18400	(FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
18401	CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
18402	(FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
18403	consolidated from x/mac/w32term.h.
18404	(FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
18405	consolidated from x/mac/w32term.h.
18406	(FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
18407	PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
18408	(FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
18409	PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
18410
18411	* window.h (struct window): Rename members left to left_col,
18412	top to top_line, height to total_lines, width to total_cols,
18413	left_margin_width to left_margin_cols, right_margin_width to
18414	right_margin_cols, orig_height to orig_total_lines, orig_top to
18415	orig_top_line.  All uses changed.
18416	(struct window): New members left_fringe_width, right_fringe_width,
18417	fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
18418	(WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
18419	New macros primarily used to simplify other macros.
18420	(WINDOW_TOTAL_COLS): New macro.  Change relevant code that
18421	referred to XINT (w->width).
18422	(WINDOW_TOTAL_LINES): New macro.  Change relevant code that
18423	referred to XINT (w->height).
18424	(WINDOW_TOTAL_WIDTH): New macro.  Change relevant code that
18425	referred to XINT (w->width) * canon_x_unit.
18426	(WINDOW_TOTAL_HEIGHT): New macro.  Change relevant code that
18427	referred to XINT (w->height) * canon_y_unit.
18428	(WINDOW_LEFT_EDGE_COL): New macro.  Change relevant code that
18429	referred to XINT (w->left).
18430	(WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE.  Change
18431	all uses and code that referred to XINT (w->left) + XINT (w->width).
18432	(WINDOW_TOP_EDGE_LINE): New macro.  Change relevant code that
18433	referred to XINT (w->top).
18434	(WINDOW_BOTTOM_EDGE_LINE): New macro.  Change relevant code that
18435	referred to XINT (w->top) + XINT (w->height).
18436	(WINDOW_LEFT_EDGE_X): New macro.  Change relevant code that
18437	referred to XINT (w->left) * canon_x_unit.
18438	(WINDOW_RIGHT_EDGE_X): New macro.  Change relevant code that
18439	referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
18440	(WINDOW_TOP_EDGE_Y): New macro.  Change relevant code that
18441	referred to XINT (w->top) * canon_y_unit.
18442	(WINDOW_BOTTOM_EDGE_Y): New macro.  Change relevant code that
18443	referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
18444	(WINDOW_LEFTMOST_P): New macro.
18445	(WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
18446	All uses changed.
18447	(WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
18448	All uses changed.
18449	(WINDOW_BOX_LEFT_EDGE_X): Rename from
18450	WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
18451	Do not exclude left fringe width.
18452	(WINDOW_BOX_RIGHT_EDGE_X): Rename from
18453	WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
18454	Do not exclude fringe widths.
18455	(WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
18456	(WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
18457	Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
18458	FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
18459	FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
18460	(WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
18461	(WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
18462	(WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
18463	(WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
18464	(WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
18465	New macros.  Change code which referenced corresponding
18466	FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
18467	FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
18468	FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
18469	FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
18470	allow per-window scroll-bar settings.
18471	(WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
18472	(WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code that
18473	referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
18474	(WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro.  Change code
18475	that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
18476	FRAME_SCROLL_BAR_WIDTH.
18477	(WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
18478	(WINDOW_SCROLL_BAR_AREA_X): New macros.
18479	(WINDOW_HEADER_LINE_HEIGHT): Rename from
18480	WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
18481	(WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
18482	WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
18483	(WINDOW_BOX_TEXT_HEIGHT): Rename from
18484	WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
18485	(WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
18486	(FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
18487	(WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
18488	(WINDOW_LEFT_MARGIN_WIDTH): Rename from
18489	WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
18490	(WINDOW_RIGHT_MARGIN_WIDTH): Rename from
18491	WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
18492	(window_from_coordinates): Update prototype.
18493	(Fset_window_buffer): Update EXFUN.
18494	(set_window_buffer): Update prototype.
18495
18496	* dispextern.h (struct glyph_matrix): Rename members window_left_x
18497	to window_left_col, window_top_y to window_top_line.  All uses
18498	changed.
18499	(FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
18500	use FRAME_INTERNAL_BORDER_WIDTH macro instead as
18501	internal_border_width is now set to 0 for non-window frames.
18502	(WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
18503	(WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
18504	(WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
18505	(WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
18506	(WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
18507	(WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
18508	(FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
18509	(WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
18510	(WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
18511	Move to window.h and renamed [see window.h changes].
18512	(WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
18513	(WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
18514	(WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
18515	Use WINDOW_TOTAL_LINES.
18516	(frame_update_line_height): Remove prototype.
18517
18518	* buffer.h (struct buffer): Rename members measured in columns:
18519	left_margin_width to left_margin_cols, right_margin_width to
18520	right_margin_cols.  All uses changed.
18521	New members left_fringe_width, right_fringe_width,
18522	fringes_outside_margins for per-buffer fringe settings.
18523	New members scroll_bar_width and vertical_scroll_bar_type for
18524	per-buffer scroll bar settings.
18525
18526	* buffer.c (init_buffer_once): Set buffer_defaults and
18527	buffer_local_flags for new buffer-local variables
18528	left_fringe_width, right_fringe_width, fringes_outside_margins,
18529	scroll_bar_width, and vertical_scroll_bar_type.
18530	(syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
18531	default-* variables for them.
18532
18533	* dispnew.c: Make (many) trivial substitutions for renamed and
18534	new macros in dispextern.h, frame.h and window.h.
18535	(mode_line_string): No need to adjust width for mode lines, as it
18536	is already adjusted by the caller.
18537	(marginal_area_string): Handle fringes inside/outside margins.
18538
18539	* frame.c: Make (many) trivial substitutions for renamed and
18540	new macros in dispextern.h, frame.h and window.h.
18541	(make_frame): Initialize left_fringe_width, right_fringe_width,
18542	fringe_cols, scroll_bar_actual_width, border_width,
18543	internal_border_width, column_width, line_height, x_pixels_diff,
18544	y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
18545	members with values suitable for a non-window frames.
18546
18547	* gtkutil.c: Make (many) trivial substitutions for renamed and
18548	new macros in dispextern.h, frame.h and window.h.
18549
18550	* indent.c: Make (few) trivial substitutions for renamed and
18551	new macros in dispextern.h, frame.h and window.h.
18552
18553	* keyboard.c: Make (many) trivial substitutions for renamed and
18554	new macros in dispextern.h, frame.h and window.h.
18555	(make_lispy_event): Use window positions returned from
18556	window_from_coordinates when constructing the lisp event for
18557	MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
18558	(incorrect) values locally.
18559	(make_lispy_movement): Use window positions returned from
18560	window_from_coordinates when constructing the lisp event, rather
18561	than calculating (incorrect) values locally.
18562
18563	* scroll.c: Make (some) trivial substitutions for renamed and
18564	new macros in dispextern.h, frame.h and window.h.
18565
18566	* sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
18567	scroll-bars.
18568
18569	* sysdep.c: Make (few) trivial substitutions for renamed and
18570	new macros in dispextern.h, frame.h and window.h.
18571
18572	* term.c: Make (some) trivial substitutions for renamed and
18573	new macros in dispextern.h, frame.h and window.h.
18574
18575	* widget.c: Make (few) trivial substitutions for renamed and
18576	new macros in dispextern.h, frame.h and window.h.
18577
18578	* window.c: Make (many) trivial substitutions for renamed and
18579	new macros in dispextern.h, frame.h and window.h.
18580	(make_window): Initialize new members
18581	left_margin_cols, right_margin_cols, left_fringe_width,
18582	right_fringe_width, fringes_outside_margins, scroll_bar_width,
18583	and vertical_scroll_bar_type.
18584	(coordinates_in_window): Adapt to new fringe/margin positions
18585	and per-window fringes and scroll-bars.
18586	Fix bug related to incorrectly adjusting coordinates by
18587	frame's internal_border_width (the effect normally negible since
18588	the internal_border_width is typically 0 or 1 pixel, but very
18589	noticeable for an internal_border_width of e.g. 25 pixels).
18590	Upon successful return (other than ON_NOTHING), the coordinates
18591	are now always properly converted to window relative for the
18592	given display element.
18593	(window_from_coordinates): Add new parameters wx and wy to
18594	return the window relative x and y position in the returned
18595	window and part.  A null arg means, don't return the position.
18596	All callers changed.
18597	(adjust_window_margins): New function which may reduce the width
18598	of the display margins if a window's text area is too small after
18599	resizing or splitting windows.
18600	(size_window): Fix bug that did not account for display margin
18601	widths when checking the minimum width of a window; use
18602	adjust_window_margins.
18603	(set_window_buffer): Call Fset_window_fringes and
18604	Fset_window_scroll_bars to setup per-window elements.
18605	Add new arg KEEP_MARGINS_P.  Non-nil means to keep window's
18606	existing display margin, fringe widths, and scroll bar settings
18607	(e.g. after splitting a window or resizing the frame).
18608	All callers changed.
18609	(Fset_window_buffer): New arg KEEP_MARGINS.  All callers changed.
18610	(Fsplit_window): Duplicate original window's display margin,
18611	fringe, and scroll-bar settings; then call Fset_window_buffer with
18612	KEEP_MARGINS non-nil.  This fixes a bug which caused a split
18613	window to only preserve the display margins in one of the windows.
18614	When splitting horizontally, call adjust_window_margins on both
18615	windows to ensure that the text area of the new windows is non too
18616	narrow.  This fixes a bug which could cause Emacs to trap if the
18617	width of the split window was less than the width of the display
18618	margins.
18619	(window_box_text_cols): Rename from window_internal_width.
18620	All uses changed.  Adapt to per-window fringes and scroll bars.
18621	Fix bug that caused vertical separator to be subtracted also on
18622	window frames.  Fix another bug that did not reduce the returned
18623	value by the columns used for display margins.
18624	(window_scroll_line_based): Fix bug related to scrolling too much
18625	when display margins are present (implicitly fixed by the fix to
18626	window_box_text_cols).
18627	(scroll_left, scroll_right): Fix bug related to scrolling too far
18628	by default when display margins are present (implicitly fixed by
18629	the fix to window_box_text_cols).
18630	(struct saved_window): Rename members left to left_col, top to
18631	top_line, width to total_cols, height to total_lines, orig_top to
18632	orig_top_line, orig_height to orig_total_lines.  All uses changed.
18633	New members left_margin_cols, right_margin_cols,
18634	left_fringe_width, right_fringe_width, fringes_outside_margins,
18635	scroll_bar_width, and vertical_scroll_bar_type for saving
18636	per-window display elements.
18637	(Fset_window_configuration): Restore display margins, fringes,
18638	and scroll bar settings.  This fixes a bug which caused display
18639	margins to be discarded when saving and restoring a window
18640	configuration.
18641	(save_window_save): Save display margins, fringes, and scroll bar
18642	settings.  This fixes a bug which caused display margins to be
18643	discarded when saving and restoring a window configuration.
18644	(Fset_window_margins): Do nothing if display margins are not
18645	really changed.  Otherwise, call adjust_window_margins to ensure
18646	the text area doesn't get too narrow.  This fixes a bug which
18647	could cause Emacs to trap if setting display margins wider than
18648	the width of the window.
18649	(Fset_window_fringes): New defun to allow user to specifically set
18650	this window's fringe widths and position vs. display margins.
18651	(Fwindow_fringes): New defun to return window's actual fringe settings.
18652	(Fset_window_scroll_bars): New defun to allow user to specifically
18653	set this window's scroll bar width and position.
18654	(Fwindow_scroll_bars): New defun to return window's actual scroll
18655	bar settings.
18656	(compare_window_configurations): Also compare display margins,
18657	fringes, and scroll bar settings.
18658	(syms_of_window): Defsubr new defuns for fringe and scroll bars.
18659
18660	* xdisp.c: Make (many) trivial substitutions for renamed and
18661	new macros in dispextern.h, frame.h and window.h.
18662	(window_box_width): Adapt to per-window fringes and scroll bars,
18663	and new fringe vs. display margin position.  Note that returned
18664	value is no longer guaranteed to be a whole multiple of the frame
18665	column width, since per-window fringes may now be any width.
18666	(window_box_left_offset): New function like window_box_left, but
18667	value is relative to left border of window (rather than frame).
18668	(window_box_right_offset): New function like window_box_right,
18669	but value is relative to left border of window.
18670	(window_box_left): Adapt to per-window fringes and scroll bars,
18671	and new fringe vs. display margin position.  Simplify by using
18672	WINDOW_LEFT_EDGE_X and window_box_left_offset.
18673	(window_box): Allow null args for unnecessary return values;
18674	change/simplify relevant callers.
18675	(x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
18676	and new fringe vs. display margin position.
18677	Use window_box_left_offset and window_box_right_offset
18678	(get_glyph_string_clip_rect): Adapt to per-window fringes and
18679	scroll bars, and new fringe vs. display margin position.
18680	Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
18681	(draw_fringe_bitmap): Rework to handle per-window fringes and new
18682	fringe vs. display margin position.
18683	(hscroll_window_tree): Use window_box_width instead of window_box.
18684	(redisplay_window): Adapt to per-window scroll bars.
18685	(draw_glyphs): Rework to handle per-window fringes and scroll
18686	bars, and new fringe vs. display margin position.
18687	Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
18688	(x_clear_end_of_line): Adapt to per-window fringes and scroll
18689	bars, and new fringe vs. display margin position.  Fix bug which
18690	increased total width of full_width rows by width of scroll bars
18691	although window's total width already includes that.
18692	(x_fix_overlapping_area): Simplify using window_box_left_offset.
18693	(expose_area): Simplify using window_box_left_offset.
18694	(x_draw_vertical_border): Handle per-window scroll bar settings,
18695	mixing windows with left, right and no scroll bars.
18696
18697	* xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
18698	where it's used in x_list_fonts (for clarity).
18699	(frame_update_line_height): Remove unused function; functionality
18700	is now done directly when setting the default font in x_set_font.
18701
18702	* xfns.c: Make (many) trivial substitutions for renamed and
18703	new macros in dispextern.h, frame.h and window.h.
18704
18705	* xmenu.c: Make (some) trivial substitutions for renamed and
18706	new macros in dispextern.h, frame.h and window.h.
18707
18708	* xterm.h (struct x_output): Move members left_pos, top_pos,
18709	border_width, pixel_height, pixel_width, line_height,
18710	internal_border_width, vertical_scroll_bar_extra,
18711	left_fringe_width, right_fringe_width, fringe_cols,
18712	fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
18713	x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
18714	(FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
18715	(FRAME_DEFAULT_FONT_WIDTH): Remove macro.
18716	(PIXEL_WIDTH, PIXEL_HEIGHT)
18717	(FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
18718	(FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
18719	frame.h and renamed [see frame.h changes].
18720	(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
18721	(CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
18722	(PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
18723	and renamed [see frame.h changes].
18724
18725	* xterm.c: Make (several) trivial substitutions for renamed and
18726	new macros in dispextern.h, frame.h and window.h.
18727	(x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
18728	(scroll_run): Adapt to new fringe position.
18729	(glyph_rect): Use window coordinates returned from
18730	window_from_coordinates rather than frame_to_window_pixel_xy.
18731	(XTset_vertical_scroll_bar): Adapt to per-window fringes and
18732	scroll-bars.
18733	(handle_one_xevent): Simplify a USE_GTK conditional.
18734	(x_clip_to_row): Remove superfluous whole_line_p arg and code
18735	(fringes are now inside margins, i.e. always in the clipping area).
18736	All callers changed.
18737	(x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
18738	directly, then call compute_fringe_widths.  Don't call
18739	frame_update_line_height.
18740
18741	* w32term.h (struct w32_output): Move members left_pos, top_pos,
18742	border_width, pixel_height, pixel_width, line_height,
18743	internal_border_width, vertical_scroll_bar_extra,
18744	left_fringe_width, right_fringe_width, fringe_cols,
18745	fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
18746	x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
18747	(FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
18748	(FRAME_DEFAULT_FONT_WIDTH): Remove macro.
18749	(PIXEL_WIDTH, PIXEL_HEIGHT)
18750	(FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
18751	(FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
18752	frame.h and renamed [see frame.h changes].
18753	(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
18754	(CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
18755	(PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
18756	and renamed [see frame.h changes].
18757
18758	* w32term.c: Make (several) trivial substitutions for renamed and
18759	new macros in dispextern.h, frame.h and window.h.
18760	(x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
18761	(glyph_rect): Use window coordinates returned from
18762	window_from_coordinates rather than frame_to_window_pixel_xy.
18763	(XTset_vertical_scroll_bar): Adapt to per-window fringes and
18764	scroll-bars.
18765	(w32_clip_to_row): Remove superfluous whole_line_p arg and code
18766	(fringes are now inside margins, i.e. always in the clipping area).
18767	All callers changed.
18768	(x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
18769	directly, then call compute_fringe_widths.  Don't call
18770	frame_update_line_height.
18771
18772	* w32console.c: Make (few) trivial substitutions for renamed and
18773	new macros in dispextern.h, frame.h and window.h.
18774
18775	* w32fns.c: Make (many) trivial substitutions for renamed and
18776	new macros in dispextern.h, frame.h and window.h.
18777
18778	* w32menu.c: Make (few) trivial substitutions for renamed and
18779	new macros in dispextern.h, frame.h and window.h.
18780
18781	* macterm.h (struct mac_output): Move members left_pos, top_pos,
18782	border_width, pixel_height, pixel_width, line_height,
18783	internal_border_width, vertical_scroll_bar_extra,
18784	left_fringe_width, right_fringe_width, fringe_cols,
18785	fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
18786	x_pixels_diff, y_pixels_diff to struct frame (frame.h).
18787	(FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
18788	(FRAME_DEFAULT_FONT_WIDTH): Remove macro.
18789	(PIXEL_WIDTH, PIXEL_HEIGHT)
18790	(FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
18791	(FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
18792	frame.h and renamed [see frame.h changes].
18793	(CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
18794	(CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
18795	(PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
18796	and renamed [see frame.h changes].
18797
18798	* macterm.c: Make (several) trivial substitutions for renamed and
18799	new macros in dispextern.h, frame.h and window.h.
18800	(x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
18801	(glyph_rect): Use window coordinates returned from
18802	window_from_coordinates rather than frame_to_window_pixel_xy.
18803	(XTset_vertical_scroll_bar): Adapt to per-window fringes and
18804	scroll-bars.
18805	(x_clip_to_row): Remove superfluous whole_line_p arg and code
18806	(fringes are now inside margins, i.e. always in the clipping area).
18807	All callers changed.
18808	(x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
18809	directly, then call compute_fringe_widths.  Don't call
18810	frame_update_line_height.
18811
18812	* macfns.c: Make (several) trivial substitutions for renamed and
18813	new macros in dispextern.h, frame.h and window.h.
18814	(x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
18815
18816	* macmenu.c: Make (few) trivial substitutions for renamed and
18817	new macros in dispextern.h, frame.h and window.h.
18818
18819	* msdos.h (struct x_output): Remove members left_pos, top_pos,
18820	and line_height, and use corresponding new members in struct
18821	frame.  All uses changed.
18822	(FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
18823	superseeded by corresponding macros in frame.h.
18824
18825	* msdos.c: Make (several) trivial substitutions for renamed and
18826	new macros in dispextern.h, frame.h and window.h.
18827	(IT_note_mouse_highlight): Use updated window coordinates returned
18828	by window_from_coordinates, rather than adjusting them locally.
18829	(internal_terminal_init): No need to initialize line_height here;
18830	it now defaults to 1.
18831
188322003-05-24  Stefan Monnier  <monnier@cs.yale.edu>
18833
18834	* keyboard.c (read_key_sequence): Adjust fkey and keytran when
18835	dropping `down' events.
18836
188372003-05-24  Andreas Schwab  <schwab@suse.de>
18838
18839	* coding.c (find_safe_codings): Fix last change.
18840
188412003-05-24  Istvan Marko  <mi@imarko.dhs.org>  (tiny change)
18842
18843	* xfns.c (x_window): Fix typo from 2003-05-21 change.
18844
188452003-05-23  Stefan Monnier  <monnier@cs.yale.edu>
18846
18847	* xdisp.c (display_mode_element): Increase max depth.
18848	Simplify the error handling code.  Use a different error string
18849	for the case where we hit the depth limit.
18850
18851	* lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
18852
18853	* buffer.c (reset_buffer_local_variables): Remove redundant setting.
18854
188552003-05-21  Stefan Monnier  <monnier@cs.yale.edu>
18856
18857	* intervals.c (get_local_map): Don't get char-property of previous
18858	point any more: get_pos_property already does it and better.
18859
188602003-05-21  Dave Love  <fx@gnu.org>
18861
18862	[Merged from unicode branch.]
18863
18864	* xfns.c (x_window, x_window): Use use_xim.
18865
18866	* xterm.c (use_xim): Initialize.
18867	(xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18868	(x_term_init): Maybe set use_xim.
18869
18870	* xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18871
188722003-05-21  Jason Rumney  <jasonr@gnu.org>
18873
18874	* unexw32.c (_start): Remove _fmode initialization.
18875
18876	* emacs.c (main) [WINDOWSNT]: Move it here.
18877
188782003-05-20  Dave Love  <fx@gnu.org>
18879
18880	* s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
18881
188822003-05-19  Richard M. Stallman  <rms@gnu.org>
18883
18884	* xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
18885	as value for QCfont attribute.
18886	(realize_default_face): lface should already exist; crash if not.
18887	Specify 0 for FORCE_P when calling set_lface_from_font_name.
18888
18889	* frame.c (Fignore_event): Doc fix.
18890
188912003-05-19  Kenichi Handa  <handa@m17n.org>
18892
18893	* coding.c (decode_coding_string): Handle post-read-conversion
18894	even if the coding doesn't require decoding.
18895
188962003-05-18  Richard M. Stallman  <rms@gnu.org>
18897
18898	* callproc.c (Fcall_process_region): Doc fix.
18899
189002003-05-17  Stefan Monnier  <monnier@cs.yale.edu>
18901
18902	* lread.c (Fload): Print a message if package is obsolete.
18903
18904	* window.c (Fselect_window): Add optional `norecord' arg.
18905	(select_window_1): Fold into Fselect_window.
18906	(select_window_norecord): New function.
18907	(temp_output_buffer_show): Use it.  Preserve current buffer.
18908
18909	* window.h (Fselect_window): Update declaration.
18910
18911	* window.c (delete_window, Fother_window, Fset_window_configuration):
18912	* minibuf.c (read_minibuf):
18913	* macterm.c (x_new_focus_frame):
18914	* frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
18915	* callint.c (Fcall_interactively):
18916	* xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
18917
18918	* buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
18919
189202003-05-17  David Kastrup  <dak@gnu.org>
18921
18922	* process.c (read_process_output): Back out change from 2003-03-09.
18923
189242003-05-17  Stefan Monnier  <monnier@cs.yale.edu>
18925
18926	* editfns.c (get_pos_property): Don't assume that `object' = nil.
18927
18928	* textprop.c (text_property_stickiness): New arg `buffer'.
18929
18930	* intervals.h (text_property_stickiness): New arg `buffer'.
18931	(get_pos_property): Declare.
18932
18933	* intervals.c (get_local_map): Use get_pos_property, to obey
18934	stickiness and empty overlays.
18935	(create_root_interval, graft_intervals_into_buffer): Use BEG.
18936	(merge_properties, intervals_equal, merge_properties_sticky):
18937	Use XCAR, XCDR.
18938	(adjust_for_invis_intang): Pass new arg to text_property_stickiness.
18939
189402003-05-17  Richard M. Stallman  <rms@gnu.org>
18941
18942	* minibuf.c (read_minibuf): If buffer is empty, record the default
18943	in the history.
18944	(Fminibuffer_complete_word): When deleting the overlap, take account
18945	of its real position.
18946
18947	* fns.c (map_char_table): Fix previous change.
18948
18949	* syntax.c (find_defun_start):
18950	When open_paren_in_column_0_is_defun_start,
18951	return beginning of buffer.
18952
18953	* lisp.h (map_char_table): Declare added arg.
18954
18955	* fns.c (map_char_table): New arg TABLE gets the master table.
18956	All calls changed.
18957	Process default and inheritance, resorting to Faref if necessary.
18958
18959	* keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
18960	(Faccessible_keymaps): Pass new arg to map_char_table.
18961
18962	* fontset.c (Ffontset_info): Pass new arg to map_char_table.
18963
18964	* casetab.c (set_case_table): Pass new arg to map_char_table.
18965
18966	* data.c (let_shadows_buffer_binding_p): Make target of p volatile.
18967
18968	* lisp.h (specbinding_func): New typedef.
18969	(struct specbinding): Use specbinding_func, to put the `volatile'
18970	in the right place.
18971
18972	* alloc.c (Fgarbage_collect): Cast pointers into specpdl
18973	to avoid GCC warning.
18974
189752003-05-16  Ralph Schleicher  <rs@nunatak.allgaeu.org>
18976
18977	* fileio.c (Fdelete_file): Handle symlinks pointing to directories.
18978
189792003-05-15  Stefan Monnier  <monnier@cs.yale.edu>
18980
18981	* keyboard.c (apply_modifiers): Don't fill the other cache.
18982
189832003-05-14  Stefan Monnier  <monnier@cs.yale.edu>
18984
18985	* .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
18986
18987	* window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
18988	(Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
18989	(Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
18990	(Fset_window_configuration, Fcurrent_window_configuration)
18991	(compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
18992	(Fpos_visible_in_window_p, mark_window_cursors_off)
18993	(window_internal_height, window_internal_width, Frecenter)
18994	(Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
18995	(replace_buffer_in_all_windows, init_window_once, init_window)
18996	(syms_of_window, keys_of_window): Move from lisp.h.
18997	* lisp.h: Move window.c declarations to window.h.
18998
18999	* bytecode.c: Include window.h.
19000	* emacs.c: Include window.h.
19001
19002	* keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
19003	(keyremap): Add `parent' field.
19004	(keyremap_step): Use it.  Remove `parent' argument.
19005	(read_key_sequence): Setup and use the new `parent' field.
19006
190072003-05-11  Stefan Monnier  <monnier@cs.yale.edu>
19008
19009	* keyboard.c (adjust_point_for_property): Ensure termination.
19010
190112003-05-10  Stefan Monnier  <monnier@cs.yale.edu>
19012
19013	* keyboard.c (follow_key): Remove dead variable `did_meta'.
19014	(access_keymap_keyremap, keyremap_step): New funs, extracted from the
19015	duplicated handling of function-key-map and key-translation-map
19016	in read_key_sequence.
19017	(read_key_sequence): Use them.
19018
19019	* keyboard.c (adjust_point_for_property): Try harder to move point
19020	to the non-sticky end of an invisible property.
19021
19022	* xdisp.c (single_display_prop_intangible_p): Make `space' display
19023	property intangible as well.
19024
190252003-05-10  Andreas Schwab  <schwab@suse.de>
19026
19027	* xmenu.c (single_menu_item): Change last parameter to void* to
19028	avoid warning.
19029
190302003-05-09  Richard M. Stallman  <rms@gnu.org>
19031
19032	* print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
19033	Bind Qinhibit_modification_hooks to t so there will be no GC.
19034	Rename local `tem' to `save_deactivate_mark'.
19035
19036	* eval.c (specpdl_ptr): Declare volatile.
19037	(unbind_to): Copy the whole binding and decrement specpdl_ptr
19038	before doing the work of unbinding it.
19039
19040	* lisp.h (struct specbinding): Declare elements volatile.
19041	(specpdl_ptr): Declare volatile.
19042
19043	* Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
19044
19045	* alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
19046	for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
19047
190482003-05-08  Dave Love  <fx@gnu.org>
19049
19050	* coding.c (Vlast_coding_system_used): Doc fix.
19051
190522003-05-07  Jason Rumney  <jasonr@gnu.org>
19053
19054	* fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
19055	when system does not support them.
19056
190572003-05-05  Stefan Monnier  <monnier@cs.yale.edu>
19058
19059	* fileio.c (Qwrite_region_annotate_functions): New var.
19060	(build_annotations): Use it to process the global part of the hook.
19061	(syms_of_fileio): Init and staticpro it.
19062
19063	* keyboard.c (safe_run_hooks_error): Display a message instead of
19064	silently ignoring the error.
19065
190662003-05-03  Stefan Monnier  <monnier@cs.yale.edu>
19067
19068	* keyboard.c (input_available_signal): Mark static.
19069	(menu_bar_items): Use map_keymap.
19070	(menu_bar_one_keymap): Remove.
19071	(menu_bar_item): Adjust arglist (for use in map_keymap).
19072	Properly hide a second binding when not both are keymaps.
19073
19074	* xmenu.c (struct skp): New struct, to pass args through map_keymap.
19075	(single_keymap_panes): Use it and map_keymap.
19076	(single_menu_item): Use skp as well.
19077
19078	* keymap.h (map_keymap_function_t): New type.
19079	(map_keymap): Declare.
19080
19081	* keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
19082	(map_keymap_call, Fmap_keymap): New functions.
19083	(syms_of_keymap): Defsubr map-keymap.
19084
190852003-05-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19086
19087	* gtkutil.c (create_dialog, make_widget_for_menu_item)
19088	(make_menu_item, create_menus, xg_update_menu_item): Don't call
19089	..._with_mnemonic functions for menu items.
19090
190912003-05-01  Kenichi Handa  <handa@m17n.org>
19092
19093	* coding.c (coding_system_accept_latin_extra_p): Delete this
19094	function.
19095	(find_safe_codings): Pay attention to
19096	the property tranlsation-table-for-encode of each codings.
19097	(syms_of_coding): Give Qtranslation_table the extra slot number 2.
19098
190992003-05-01  Stefan Monnier  <monnier@cs.yale.edu>
19100
19101	* eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
19102
191032003-04-30  Stefan Monnier  <monnier@cs.yale.edu>
19104
19105	* eval.c (unbind_to): Don't handle symbol = Qnil any more.
19106
19107	* lisp.h (CHECK): Wrap args in parenthesis.
19108	(specbind): Fix doc: symbol = Qnil is not supported any more.
19109
19110	* bytecode.c (Fbyte_code) <unwind-protect>:
19111	Use Fprogn rather than 0 and Qnil.
19112
19113	* keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
19114	`double', and `triple' modifiers as well.
19115
191162003-04-30  Richard M. Stallman  <rms@gnu.org>
19117
19118	* keyboard.c (echo_char): Don't clear out a dash that follows a space.
19119
19120	* alloc.c (abort_on_gc): New variable.
19121	(Fgarbage_collect): Abort if abort_on_gc is set.
19122
19123	* lisp.h (abort_on_gc): Add decl.
19124
19125	* eval.c (Fsignal): Clear abort_on_gc.
19126
19127	* editfns.c (Fformat): Set abort_on_gc during first scan of format.
19128	Reinit FORMAT_START and END before second scan.
19129
19130	* xdisp.c (move_it_vertically_backward): Do the final big else
19131	even if nlines is 0.
19132
19133	* xdisp.c (redisplay_internal): Finish the per-frame loop
19134	even if redisplay is suspended by input.
19135
191362003-04-24  Andrew Choi  <akochoi@shaw.ca>
19137
19138	* macterm.c (x_list_fonts): Return all fonts that match if
19139	maxnames = -1.
19140
191412003-04-25  Kenichi Handa  <handa@m17n.org>
19142
19143	* syntax.c (skip_chars): Fix previous change.
19144
191452003-04-24  Kenichi Handa  <handa@m17n.org>
19146
19147	* syntax.c (skip_chars): Make the code faster by using the common
19148	technique of *p, *stop, and *endp.
19149
191502003-04-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19151
19152	* xdisp.c (update_tool_bar): BLOCK_INPUT before calling
19153	tool_bar_items so GTK tool bar expose callback does not access items
19154	being updated.
19155
191562003-04-19  Stefan Monnier  <monnier@cs.yale.edu>
19157
19158	* eval.c (Fapply): Undo last change and add a comment about why.
19159
191602003-04-18  Miles Bader  <miles@gnu.org>
19161
19162	* data.c (Faset): Calculate nbytes earlier, to satisfy the now
19163	pickier PARSE_MULTIBYTE_SEQ.
19164
191652003-04-17  Stefan Monnier  <monnier@cs.yale.edu>
19166
19167	* eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
19168	Use XCDR, XCAR, CONSP.
19169	(Fdefmacro): Fix docstring.  Use XCAR, XCDR.
19170	(Fapply): Remove unnecessary GCPRO.
19171
19172	* doc.c (Fsubstitute_command_keys): Remove spurious casts.
19173
19174	* charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
19175
19176	* buffer.h: Don't hardcode BEG==1.
19177
19178	* abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
19179
191802003-04-16  Richard M. Stallman  <rms@gnu.org>
19181
19182	* xdisp.c (try_window, try_window_reusing_current_matrix):
19183	When at end of window, set window_end_pos to Z-ZV.
19184
19185	* buffer.c (Foverlay_recenter): Doc fix.
19186
191872003-04-14  Stefan Monnier  <monnier@cs.yale.edu>
19188
19189	* dispnew.c (Fsit_For): Support XEmacs-style arg list.
19190
191912003-04-14  Andrew Choi  <akochoi@shaw.ca>
19192
19193	* macterm.c (mac_check_for_quit_char): Don't check more often than
19194	once a second.
19195
191962003-04-11  Stefan Monnier  <monnier@cs.yale.edu>
19197
19198	* keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
19199	specially, so that they can't hide an implicit switch-frame event.
19200	(make_lispy_event): Handle SELECT_WINDOW_EVENT.
19201	(head_table): Use switch-frame as event_kind for select-window.
19202	(keys_of_keyboard): Don't bind [select-window] in special-event-map.
19203
19204	* editfns.c (Fformat): Lisp_Object/int mixup.
19205	(format2): Remove unused var numargs.
19206
192072003-04-11  Kenichi Handa  <handa@m17n.org>
19208
19209	* fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
19210	(Qafter_insert_file_set_coding): New variable.
19211	(syms_of_fileio): Initialize and staticpro it.  Delete declaration
19212	for after-insert-file-adjust-coding-function.
19213	(Finsert_file_contents): Call Qafter_insert_file_set_coding
19214	instead of Vafter_insert_file_adjust_coding_function.
19215
192162003-04-11  Kenichi Handa  <handa@m17n.org>
19217
19218	* lisp.h (temp_echo_area_glyphs): Adjust prototype.
19219
19220	* minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
19221	string.  Callers changed.
19222
192232003-04-10  Kenichi Handa  <handa@m17n.org>
19224
19225	* fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
19226	(syms_of_fileio): Declare it as a lisp variable.
19227	(Finsert_file_contents):
19228	Call Vafter_insert_file_adjust_coding_function before calling
19229	decode-format.
19230
192312003-04-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19232
19233	* xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
19234	get GtkAdjustment as widget now is a GtkRange.
19235
19236	* gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
19237	GtkRange to avoid memory leak.
19238
192392003-04-09  Kenichi Handa  <handa@m17n.org>
19240
19241	* xfaces.c (Vface_font_rescale_alist): New variable.
19242	(struct font_name): New member rescale_ratio.
19243	(font_rescale_ratio): New function.
19244	(split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
19245	(better_font_p): On comparing point sized, pay attention to
19246	recale_ratio member of fonts.
19247	(build_scalable_font_name): Reflect font->rescale_ratio in the
19248	font name.
19249	(syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
19250
19251	* lread.c (read1): Before calling index, check if the 2nd
19252	arguemnt is in ASCII range.
19253
192542003-04-08  Richard M. Stallman  <rms@gnu.org>
19255
19256	* fileio.c (Ffile_symlink_p): Doc fix.
19257
19258	* editfns.c (Fformat): Translate positions of text properties
19259	in the format string to apply them to the result.
19260
19261	* fileio.c (Finsert_file_contents): Doc fix.
19262	(syms_of_fileio) <after-insert-file-functions>: Doc fix.
19263
192642003-04-08  Ivan Zakharyaschev  <imz@altlinux.org>  (tiny change)
19265
19266	* lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
19267
192682003-04-08  Steven Tamm  <steventamm@mac.com>
19269
19270	* mac.c (init_mac_osx_environment): Switch libexec and bin so
19271	that self-contained application finds libexec files.
19272
192732003-04-08  Kenichi Handa  <handa@m17n.org>
19274
19275	* coding.c (code_convert_region_unwind):
19276	Set Vlast_coding_system_used to the argument.
19277	(code_convert_region): If post-read-conversion function changed
19278	the value of last-coding-sytem, keep the new value in
19279	coding->symbol so that it won't be overridden.
19280	(run_pre_post_conversion_on_str): Likewise.
19281	(coding_system_accept_latin_extra_p): New function.
19282	(find_safe_codings): Pay attention to characters registered in
19283	latin-extra-code-table.
19284
192852003-04-07  Thien-Thi Nguyen  <ttn@gnu.org>
19286
19287	* Makefile.in (md5.o): Add missing dependency info.
19288
192892003-04-06  Richard M. Stallman  <rms@gnu.org>
19290
19291	* xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
19292
19293	* marker.c (verify_bytepos): New function.
19294
19295	* intervals.c (set_intervals_multibyte_1): When becoming
19296	multibyte, adjust right and left child sizes to a whole set of
19297	characters.  If an interval gets zero total-length, delete it.
19298	If an interval consists of just its children, delete one of them.
19299
19300	* intervals.h (CHECK_TOTAL_LENGTH): New macro.
19301	* intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
19302
19303	* alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
19304	All calls deleted.
19305	(lisp_malloc): Do the work here directly.
19306
193072003-04-06  Gareth Jones  <emacs@referential.org.uk>  (tiny change)
19308
19309	* fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
19310	char tables.
19311
193122003-04-04  Kenichi Handa  <handa@m17n.org>
19313
19314	* editfns.c (Fformat): Use a copy of FORMAT string so that we can
19315	destructively change "%S" to "%s".
19316
193172003-04-03  Miles Bader  <miles@gnu.org>
19318
19319	* xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
19320	always set.
19321
193222003-04-01  Dave Love  <fx@gnu.org>
19323
19324	* xfns.c (xpm_lookup_color): Grok "opaque".
19325
193262003-03-31  Andrew Choi  <akochoi@shaw.ca>
19327
19328	* frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
19329	parent window ID.
19330
19331	* macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
19332
19333	* macterm.h (struct mac_output): Define x_pixels_diff and
19334	y_pixels_diff.
19335
193362003-03-31  Juanma Barranquero  <lektu@terra.es>
19337
19338	* makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
19339	blockinput.h and files included from it.
19340
193412003-03-31  Kim F. Storm  <storm@cua.dk>
19342
19343	The following changes consolidates the common code related to
19344	frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
19345	files into frame.c.
19346
19347	* frame.c: Include blockinput.h.
19348	(Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
19349	(Qx_resource_name, Qface_set_after_frame_default): Define vars here.
19350	(Qauto_raise, Qauto_lower, ...): Define all frame parameter
19351	related vars here.
19352	(struct frame_parm_table, frame_parms): New table for describing
19353	frame parameters and their associated Q-variable.
19354	The order of the parameters corresponds to the sequence of the
19355	frame_parm_handlers table in redisplay_interface.
19356	(x_fullscreen_move, x_set_frame_parameters)
19357	(x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
19358	(x_set_screen_gamma, x_set_font, x_set_fringe_width)
19359	(x_set_border_width, x_set_internal_border_width, x_set_visibility)
19360	(x_set_autoraise, x_set_autolower, x_set_unsplittable)
19361	(x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
19362	Generic functions for processing of frame parameters.
19363	(validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
19364	(display_x_get_resource, x_get_resource_string): Functions for
19365	generic access to X resources.
19366	(x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
19367	(x_default_parameter, Fx_parse_geometry): Functions for generic
19368	access to frame parameters.
19369	(x_figure_window_size): Generic calculation of frame size.
19370	Fixed to add space needed for tool bar.  Also setup size_hint_flags.
19371	(syms_of_frame): Intern and staticpro frame parameter variables.
19372	Defvar_lisp Vx_resource_class and Vx_resource_name here.
19373	Defsubr Sx_get_resource and Sx_parse_geometry.
19374
19375	* frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
19376	parameter related vars defined in frame.c.
19377	(EMACS_CLASS): Define here.
19378	(enum FULLSCREEN_*): Define here.
19379	(x_set_scroll_bar_default_width, x_wm_set_icon_position)
19380	(x_set_offset, x_new_font, x_new_fontset): Add prototypes.
19381	(x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
19382	(x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
19383	(x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
19384	(x_set_visibility, x_set_autoraise, x_set_autolower)
19385	(x_set_unsplittable, x_set_vertical_scroll_bars)
19386	(x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
19387	(x_figure_window_size): Add prototypes.
19388
19389	* dispextern.h (frame_parm_handler): New typedef.
19390	(struct redisplay_interface): New member frame_parm_handlers.
19391	(enum resource_types): Move declaration here.
19392	(x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
19393	(x_default_parameter): Add prototypes.
19394
19395	* window.c: Remove extern decl for frame parameter vars.
19396	(change_window_heights): New generic function;
19397	replaces x_change_window_heights.  All users changed.
19398
19399	* window.h (change_window_heights): Add prototype.
19400
19401	* xfaces.c: Remove extern decl for frame parameter vars.
19402
19403	* xterm.h (EMACS_CLASS): Remove.  Use generic define.
19404	(struct w32_display_info): Fix type of xrdb member.
19405	(enum FULLSCREEN_*): Remove.
19406	Remove prototypes for generic functions (in frame.h).
19407
19408	* xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
19409	parameters now defined in frame.h and frame.c.
19410	(Vx_resource_name): Remove.  Use generic var.
19411	(enum x_frame_parms): Remove (bogus, unused enum).
19412	(check_x_display_info): Make non-static (for frame.c).
19413	(struct x_frame_parm_table, x_frame_parms): Remove.
19414	(init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
19415	(x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
19416	(x_set_border_width, x_set_internal_border_width, x_set_visibility)
19417	(x_change_window_heights, x_set_autoraise, x_set_autolower)
19418	(x_set_vertical_scroll_bars, x_set_scroll_bar_width)
19419	(validate_x_resource_name, Fx_get_resource, x_get_resource_string)
19420	(x_default_parameter, Fx_parse_geometry, x_figure_window_size):
19421	Remove.  Use generic functions instead.
19422	(enum resource_types): Remove.
19423	(x_set_scroll_bar_default_width): New global function (for frame.c).
19424	(Fx_create_frame): Depend on x_figure_window_size to add space for
19425	toolbar and setup size_hint_flags.
19426	(x_frame_parm_handlers): New table for redisplay_interface.
19427	(syms_of_xfns): Don't intern/staticpro removed vars.
19428
19429	* xterm.c: Remove unnecessary extern declarations.
19430	(x_fullscreen_adjust): Remove.  Use generic instead.
19431	(x_redisplay_interface): Add x_frame_parm_handlers member.
19432
19433	* w32gui.h (XrmDatabase): New (dummy) typedef.
19434
19435	* w32term.h (EMACS_CLASS): Remove.  Use generic define.
19436	(struct w32_display_info): Fix type of xrdb member.
19437	(enum FULLSCREEN_*): Remove.
19438	(x_fullscreen_adjust): Remove prototype.
19439
19440	* w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
19441	parameters now defined in frame.h and frame.c.
19442	(Vx_resource_name): Remove.  Use generic var.
19443	(enum x_frame_parms): Remove (bogus, unused enum).
19444	(check_x_display_info): Make non-static (for frame.c).
19445	(struct x_frame_parm_table, x_frame_parms): Remove.
19446	(init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
19447	(x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
19448	(x_set_border_width, x_set_internal_border_width, x_set_visibility)
19449	(x_change_window_heights, x_set_autoraise, x_set_autolower)
19450	(x_set_vertical_scroll_bars, x_set_scroll_bar_width)
19451	(validate_x_resource_name, Fx_get_resource, x_get_resource_string)
19452	(x_default_parameter, Fx_parse_geometry, x_figure_window_size):
19453	Remove.  Use generic functions instead.
19454	(enum resource_types): Remove.
19455	(x_set_scroll_bar_default_width): New global function (for frame.c).
19456	(Fx_create_frame): Depend on x_figure_window_size to add space for
19457	toolbar and setup size_hint_flags.
19458	(w32_frame_parm_handlers): New table for redisplay_interface.
19459	(syms_of_w32fns): Don't intern/staticpro removed vars.
19460
19461	* w32term.c: Remove unnecessary extern declarations.
19462	(x_fullscreen_adjust): Remove.  Use generic instead.
19463	(x_redisplay_interface): Add w32_frame_parm_handlers member.
19464
19465	* w32reg.c (x_get_string_resource): Use XrmDatabase.
19466
19467	* macgui.h (XrmDatabase): New (dummy) typedef.
19468
19469	* macterm.h (EMACS_CLASS): Remove.
19470	(struct mac_display_info): Add xrdb member.
19471	(struct mac_output): Add want_fullscreen member.
19472
19473	* macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
19474	parameters now defined in frame.h and frame.c.
19475	(Vx_resource_name): Remove.  Use generic var.
19476	(check_x_display_info): Make non-static (for frame.c).
19477	(struct x_frame_parm_table, x_frame_parms): Remove.
19478	(init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
19479	(x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
19480	(x_set_border_width, x_set_internal_border_width, x_set_visibility)
19481	(x_change_window_heights, x_set_autoraise, x_set_autolower)
19482	(x_set_vertical_scroll_bars, x_set_scroll_bar_width)
19483	(validate_x_resource_name, Fx_get_resource, x_get_resource_string)
19484	(x_default_parameter, Fx_parse_geometry, x_figure_window_size):
19485	Remove.  Use generic functions instead.
19486	(enum resource_types): Remove.
19487	(x_set_scroll_bar_default_width): New global function (for frame.c).
19488	(mac_frame_parm_handlers): New table for redisplay_interface.
19489	(syms_of_macfns): Don't intern/staticpro removed vars.
19490
19491	* macterm.c: Remove unnecessary extern declarations.
19492	(x_redisplay_interface): Add mac_frame_parm_handlers member.
19493
19494	* Makefile.in (frame.o): Add dependency on blockinput.h and files
19495	included from it (atimer.h and systime.h).
19496
194972003-03-30  Andreas Schwab  <schwab@suse.de>
19498
19499	* xdisp.c (x_insert_glyphs): Fix swapped width and height
19500	parameters for shift_glyphs_for_insert.
19501
19502	* macterm.c (x_redisplay_interface): Add missing entry for
19503	draw_vertical_window_border.
19504
195052003-03-29  Kai Gro,A_(Bjohann  <kai.grossjohann@gmx.net>
19506
19507	* fileio.c (Fexpand_file_name): In the no-handler case, after
19508	expanding, look again for a handler and invoke it.  This is needed
19509	for filenames like "/foo/../user@host:/bar/../baz" -- the first
19510	expansion produces "/user@host:/bar/../baz" which needs to be
19511	expanded again for the finame result "/user@host:/baz".
19512
195132003-03-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19514
19515	* gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
19516	of area to be redrawn for better performance.
19517
195182003-03-28  Stefan Monnier  <monnier@cs.yale.edu>
19519
19520	* xterm.c (take_vertical_position_into_account): Remove.
19521	(xt_action_hook): Call set_vertical_scroll_bar if needed.
19522	(XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
19523	(xm_scroll_callback, x_create_toolkit_scroll_bar)
19524	(x_set_toolkit_scroll_bar_thumb): Simplify.
19525	(x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
19526	(XTread_socket): Remove unused var.
19527	(x_make_frame_invisible): Replace goto with else.
19528
19529	* xdisp.c (set_vertical_scroll_bar): New fun.
19530	(redisplay_window): Use it.
19531
195322003-03-26  Richard M. Stallman  <rms@gnu.org>
19533
19534	* xdisp.c (update_tool_bar): Recompute tool bar if
19535	update_mode_lines is set.  Set w->update_mode_line
19536	only if the tool bar contents actually change.
19537	(update_menu_bar): Undo previous change.
19538
195392003-03-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19540
19541	* gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
19542	(xg_frame_set_char_size): Calculate scroll bar width before frame
19543	width.  Call SET_FRAME_GARBAGED and cancel_mouse_face.
19544	(xg_separator_p): Check for all documented separator types.
19545	(xg_update_scrollbar_pos): Variable gheight not needed, use height.
19546	(update_frame_tool_bar): Don't call gdk_window_process_all_updates.
19547
19548	* xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
19549	so tool bar gets updated.
19550
195512003-03-26  Stefan Monnier  <monnier@cs.yale.edu>
19552
19553	* data.c (store_symval_forwarding): Re-instate part of the code
19554	that was deleted with too much enthusiasm.
19555
195562003-03-25  Stefan Monnier  <monnier@cs.yale.edu>
19557
19558	* data.c (store_symval_forwarding): Delete special read-only
19559	hack for type == -1, since we now use ->constant instead.
19560	(Fkill_local_variable): Don't use XBUFFER if it can be nil.
19561
19562	* buffer.c (overlays_in): Declare static.
19563	(syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
19564	`constant' field rather than the variable's `type' field.
19565
195662003-03-24  Andrew Choi  <akochoi@shaw.ca>
19567
19568	* config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
19569
19570	* dispextern.h [HAVE_CARBON]: Include Carbon.h.
19571
19572	* fns.c [MAC_OSX]: Do not redefine vector.
19573
19574	* keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
19575
19576	* macgui.h: Remove definition of No_Cursor.
19577
19578	* macterm.h: Include Carbon.h.  Replace (struct Cursor *) by Cursor.
19579
19580	* xdisp.c: Define No_Cursor.
19581	(x_write_glyphs, notice_overwritten_cursor)
19582	(draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
19583	(note_mouse_highlight): Remove Mac-specific code.
19584	(note_mouse_highlight): Use bcmp instead of == to compare Cursors.
19585
195862003-03-24  John Paul Wallington  <jpw@gnu.org>
19587
19588	* xdisp.c (redisplay_window): If mini window's buffer is not
19589	empty, then redisplay it like other windows.
19590
195912003-03-23  Kim F. Storm  <storm@cua.dk>
19592
19593	* w32term.c (w32_draw_window_cursor): Fix last change.
19594
195952003-03-23  Kenichi Handa  <handa@m17n.org>
19596
19597	* alloc.c (make_string_from_bytes, make_specified_string):
19598	Add `const' for the arg CONTENTS.
19599
19600	* lisp.h (make_string_from_bytes, make_specified_string):
19601	Prototypes adjusted.
19602
196032003-03-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19604
19605	* xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif.
19606
19607	* gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
19608	(XG_SB_RANGE): New define.
19609
19610	* gtkutil.c (xg_fixed_handle_expose): New function.
19611	(xg_create_frame_widgets): Call xg_fixed_handle_expose for
19612	expose events.
19613	(xg_update_scrollbar_pos): Take two more arguments, left and width
19614	of scroll bar including borders.
19615	Clear left and right part outside scroll bar separately as some
19616	themes have bars that are not an even number of pixels.
19617	Don't set reallocate_redraws, don't call
19618	gdk_window_process_all_updates.
19619	(xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
19620	so no need to change it.  Calculate size and value with XG_SB_RANGE.
19621
19622	* xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
19623	Pass left and width of scroll bar including borders to
19624	xg_update_scrollbar_pos.
19625
196262003-03-22  Thien-Thi Nguyen  <ttn@gnu.org>
19627
19628	* Makefile.in: Make sure space precedes end-of-line backslashes.
19629
196302003-03-22  Kim F. Storm  <storm@cua.dk>
19631
19632	* xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
19633	Add generic versions here.  Remove system specific versions
19634	defined elsewhere.
19635
19636	* dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
19637	Add prototypes.
19638
19639	* xterm.h (STORE_NATIVE_RECT): New macro.
19640
196412003-03-21  Kim F. Storm  <storm@cua.dk>
19642
19643	* xdisp.c (get_glyph_string_clip_rect):
19644	Use FRAME_INTERNAL_BORDER_WIDTH.
19645
19646	* dispextern.h (struct redisplay_interface): Add active_p
19647	argument to draw_window_cursor member.  All uses changed.
19648
196492003-03-21  Kim F. Storm  <storm@cua.dk>
19650
19651	The following changes consolidate code related to writing and
19652	inserting glyphs, exposing frame, the tool bar, the mouse face,
19653	the output cursor, and help echo from xterm.c, w32term.c and
19654	macterm.c into xdisp.c.  It also generalizes the use of the
19655	window_part enum instead of using numeric values throughout.
19656
19657	* xdisp.c: Consolidate gui-independent code here.
19658	Include keymap.h.
19659	(Qhelp_echo): Import.
19660	(mouse_autoselect_window, x_stretch_cursor_p): Declare here.
19661	(help_echo_string, help_echo_window, help_echo_object)
19662	(previous_help_echo_string, help_echo_pos): Declare here.
19663	(output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
19664	(estimate_mode_line_height): Define here.  Handle windowing
19665	systems directly (without using estimate_mode_line_height_hook).
19666	(x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
19667	(update_window_cursor, update_cursor_in_window_tree)
19668	(fast_find_position, fast_find_string_pos)
19669	(note_mode_line_highlight, note_mode_line_or_margin_highlight)
19670	(expose_area, expose_line, expose_overlaps, expose_window)
19671	(expose_window_tree, phys_cursor_in_rect_p): New generic versions;
19672	declared static as they are only used locally in xdisp.c.
19673	(draw_glyphs): Rename from x_draw_glyphs and make static.
19674	(tool_bar_item_info, notice_overwritten_cursor): Make static.
19675	(frame_to_window_pixel_xy, get_glyph_string_clip_rect)
19676	(set_output_cursor, x_cursor_to, handle_tool_bar_click)
19677	(x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
19678	(x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
19679	(display_and_set_cursor, x_update_cursor, x_clear_cursor)
19680	(show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
19681	(note_mouse_highlight, x_clear_window_mouse_face)
19682	(cancel_mouse_face, x_draw_vertical_border, expose_frame)
19683	(x_intersect_rectangles): New generic functions for use by xdisp.c
19684	and GUI front-ends.
19685	(syms_of_xdisp): Initialize and staticpro help_echo* variables.
19686	Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
19687
19688	* dispextern.h (Display_Info): Generic typedef for *_display_info.
19689	(NativeRectangle): Generic typedef for rectangle type.
19690	(enum window_part): Move here from window.c.
19691	(struct redisplay_interface): New members flush_display_optional,
19692	define_frame_cursor, clear_frame_area, draw_window_cursor,
19693	draw_vertical_window_border, shift_glyphs_for_insert.
19694	Rename member clear_mouse_face to clear_window_mouse_face.
19695	(estimate_mode_line_height_hook): Remove hook.
19696	(auto_raise_tool_bar_buttons_p): Don't declare extern.
19697	(tool_bar_item_info): Remove prototype.
19698	(help_echo_string, help_echo_window, help_echo_object)
19699	(previous_help_echo_string, help_echo_pos)
19700	(last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
19701	(x_stretch_cursor_p, output_cursor): Declare extern.
19702	(x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
19703	(x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
19704	(x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
19705	(display_and_set_cursor, set_output_cursor, x_cursor_to)
19706	(x_update_cursor, x_clear_cursor, x_draw_vertical_border)
19707	(frame_to_window_pixel_xy, get_glyph_string_clip_rect)
19708	(note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
19709	(handle_tool_bar_click, clear_mouse_face, show_mouse_face)
19710	(cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
19711	Add prototypes.
19712	(mode_line_string, marginal_area_string): Fix prototypes.
19713
19714	* window.c (enum window_part): Move to dispextern.h.
19715	(coordinates_in_window): Use enum window_part member names
19716	instead of numbers to describe return value.
19717	(struct check_window_data): Change part member to window_part.
19718	(check_window_containing): Return window_part unaltered.
19719	(window_from_coordinates): Change part arg from int to enum
19720	window_part.  Allow part arg to be null.  All users changed.
19721
19722	* window.h (window_from_coordinates): Fix prototype.
19723
19724	* term.c (estimate_mode_line_height): Move to xdisp.c.
19725
19726	* keyboard.c (make_lispy_event): Use enum window_part.
19727
19728	* dispnew.c (mode_line_string, marginal_area_string): Use enum
19729	window_part instead of int in arg list.  Users changed.
19730
19731	* xterm.h (No_Cursor): Declare as None for X.
19732	(struct mac_output): Replace member cross_cursor by hand_cursor.
19733
19734	* xterm.c: Remove consolidated defines and code.
19735	(BETWEEN): Remove unused macro.
19736	(x_draw_vertical_window_border, x_shift_glyphs_for_insert)
19737	(x_define_frame_cursor, x_clear_frame_area)
19738	(x_draw_window_cursor): New X-specific functions for RIF.
19739	(x_redisplay_interface): Add new members.
19740
19741	* xfns.c: Setup and use hand_cursor instead of cross_cursor.
19742
19743	* w32term.h (struct w32_output): Remove cross_cursor member.
19744
19745	* w32term.c: Remove consolidated defines and code.
19746	(BETWEEN): Remove unused macro.
19747	(w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
19748	(w32_define_frame_cursor, w32_clear_frame_area)
19749	(w32_draw_window_cursor): New W32-specific functions for RIF.
19750	(w32_redisplay_interface): Add new members.
19751
19752	* w32gui.h (No_Cursor): Define as 0 for W32.
19753	(XRectangle): Add X compatible rectangle type.
19754	(NativeRectangle): Declare as RECT for W32.
19755	(CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
19756
19757	* w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
19758
19759	* w32console.c: Remove consolidated defines and code.
19760
19761	* msdos.h (Display_Info): Add generic typedef.
19762
19763	* msdos.c: Remove consolidated defines and code.
19764	(IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
19765
19766	* macterm.h (struct mac_output): Replace member cross_cursor by
19767	hand_cursor.
19768	(activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
19769
19770	* macterm.c: Remove consolidated defines and code.
19771	(BETWEEN): Remove unused macro.
19772	(mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
19773	(mac_define_frame_cursor, mac_clear_frame_area)
19774	(mac_draw_window_cursor): New Mac-specific functions for RIF.
19775	(x_redisplay_interface): Add new members.
19776
19777	* macgui.h (No_Cursor): Define as 0 for Mac.
19778	(XRectangle): Add X compatible rectangle type.
19779	(NativeRectangle): Declare as Rect for Mac.
19780	(CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
19781
19782	* macfns.c (x_set_mouse_color): Setup hand_cursor.
19783	(x_set_cursor_color): Use x_display_and_set_cursor.
19784
19785	* Makefile.in (xdisp.o): Add dependency on blockinput.h and files
19786	included from it.  Add dependency on keymap.h.
19787
19788	* makefile.w32-in (xdisp.o): Add dependency on keymap.h.
19789
197902003-03-21  Kenichi Handa  <handa@m17n.org>
19791
19792	* fileio.c (Fexpand_file_name): Fix previous change.
19793
197942003-03-19  Kenichi Handa  <handa@m17n.org>
19795
19796	* fileio.c (Ffile_name_directory): Reconstruct file name by
19797	make_specified_string.
19798	(Ffile_name_nondirectory, Ffile_name_as_directory)
19799	(Fdirectory_file_name, Fexpand_file_name)
19800	(Fsubstitute_in_file_name): Likewise.
19801	(Fread_file_name): Compare decoded homedir with DIR and
19802	DEFAULT_FILENAME.
19803
19804	* alloc.c (make_specified_string): If NCHARS is negative, count
19805	the number of characters.
19806
198072003-03-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19808
19809	* gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
19810	all widgets.
19811
19812	* gtkutil.h: Removed xg_ignore_next_thumb.
19813
198142003-03-18  Kenichi Handa  <handa@m17n.org>
19815
19816	* coding.c (Vchar_coding_system_table): Remove this variable.
19817	(Vcoding_system_safe_chars): New variable.
19818	(intersection): Remove this function.
19819	(find_safe_codings): Don't use Vchar_coding_system_table, but try
19820	all codings in SAFE_CODINGS.
19821	(Ffind_coding_systems_region_internal): Adjust for the change of
19822	find_safe_codings.  Get generic coding systems from
19823	Vcoding_system_safe_chars.
19824	(Fdefine_coding_system_internal): New function.
19825	(syms_of_coding): Defsubr Sdefine_coding_system_internal.
19826	Initialize and staticpro Vcoding_system_safe_chars.
19827
198282003-03-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19829
19830	* gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
19831	equal old values before updating.
19832
19833	* xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
19834
19835	* gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
19836
198372003-03-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19838
19839	* gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
19840	(xg_resize_widgets): Don't call foreach(handle_fixed_child).
19841	(xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
19842	(scroll_bar_button_cb): Set bar->dragging to nil on button release.
19843	(xg_create_scroll_bar): Pass bar to button event callback.
19844	(xg_find_top_left_in_fixed): New function.
19845	(xg_update_scrollbar_pos): Don't call gdk_window_clear on
19846	whole scroll bar area.  Get old position with
19847	xg_find_top_left_in_fixed, calculate and only clear needed areas.
19848	(xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
19849	dragging is in progress.  Calculate whole as for Motif.
19850	Remove code that saved last values.  Call gtk_range functions to
19851	set scroll bar sizes.
19852
19853	* gtkutil.h: Removed xg_ignore_next_thumb.
19854
198552003-03-17  Juanma Barranquero  <lektu@terra.es>
19856
19857	* makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
19858	and files included from it.
19859
198602003-03-18  Stefan Monnier  <monnier@cs.yale.edu>
19861
19862	* keymap.c (accessible_keymaps_1): Break cycles but without preventing
19863	multiple occurrences of the same keymap under different prefixes.
19864	(Faccessible_keymaps): Remove code redundant since rev 1.82.
19865
198662003-03-16  Jason Rumney  <jasonr@gnu.org>
19867
19868	* w32gui.h: Use HDC for Display.
19869
19870	* w32term.c (w32_encode_char): Prevent double-byte chars from
19871	crashing Emacs.
19872
19873	* w32fns.c (jpeg_load, png_load, slurp_file): Read image files
19874	as binary.
19875
198762003-03-16  Juanma Barranquero  <lektu@terra.es>
19877
19878	* xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
19879
198802003-03-16  Kim F. Storm  <storm@cua.dk>
19881
19882	The following changes consolidate some of the gui-independent
19883	parts of the processing and drawing of "glyph strings" from
19884	xterm.c, w32term.c, and macterm.c into xdisp.c.
19885
19886	* dispextern.h (struct glyph): Reduce face_id member from 22 to
19887	21 bits (this reduces number of faces from 4M to 2M).
19888	Replace W32 specific w32_font_type member (2 bits) by generic
19889	font_type member (3 bits) for portability.
19890	(FONT_TYPE_UNKNOWN): New define, default for font_type member.
19891	(enum draw_glyphs_face): Define here.
19892	(struct glyph_string): Define here.  Merge W32 and X versions.
19893	(struct redisplay_interface): New members per_char_metric,
19894	encode_char, compute_glyph_string_overhangs, draw_glyph_string.
19895	(VCENTER_BASELINE_OFFSET): Define here.
19896	(dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
19897	(x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
19898
19899	* xdisp.c: Consolidate gui-independent "glyph string" code here.
19900	(dump_glyph_string): Moved here.
19901	(init_glyph_string, append_glyph_string_lists, append_glyph_string)
19902	(prepend_glyph_string_lists, get_glyph_face_and_encoding)
19903	(fill_composite_glyph_string, fill_glyph_string)
19904	(fill_image_glyph_string, fill_stretch_glyph_string)
19905	(left_overwritten, left_overwriting, right_overwritten)
19906	(right_overwriting, get_char_face_and_encoding)
19907	(set_glyph_string_background_width, compute_overhangs_and_x)
19908	(append_glyph, append_composite_glyph, produce_image_glyph)
19909	(take_vertical_position_into_account, append_stretch_glyph)
19910	(produce_stretch_glyph): New generic functions (based on X version).
19911	Call platform specific functions through rif.
19912	(INIT_GLYPH_STRING): New macro, hides W32 details.
19913	(BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
19914	(BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
19915	(BUILD_GLYPH_STRINGS): Generic macros (based on X version).
19916	(x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
19917	(notice_overwritten_cursor):
19918	Generic functions exported to platform modules.  Users changed.
19919
19920	* xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
19921	(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
19922	(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
19923	New macros for consolidated code.
19924
19925	* xterm.c: Remove consolidated defines and code.
19926	(x_per_char_metric, x_encode_char)
19927	(x_compute_glyph_string_overhangs): Adapt to RIF requirements.
19928	(x_redisplay_interface): Add new members.
19929
19930	* w32gui.h (Display): Add dummy typedef for consolidation.
19931	(XChar2b): Define alias for wchar_t for consolidation.
19932	(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
19933
19934	* w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
19935	(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
19936	New macros for consolidation.
19937
19938	* w32term.c: Remove consolidated defines and code.
19939	(BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
19940	to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
19941	(w32_per_char_metric): Change font_type arg to int for RIF.
19942	(w32_encode_char): Return int according to RIF requirements.
19943	(w32_compute_glyph_string_overhangs): Adapt to RIF.
19944	(w32_get_glyph_overhangs): New function for RIF.  Uses generic
19945	x_get_glyph_overhangs.
19946	(w32_redisplay_interface): Add new members.
19947
19948	* macgui.h (XChar2b): Move typedef here for consolidation.
19949	(STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
19950
19951	* macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
19952	(FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
19953	consolidation.
19954
19955	* macterm.c: Remove consolidated defines and code.
19956	(mac_per_char_metric): New function for RIF.
19957	(mac_encode_char): Adapt to new RIF requirements.
19958	(mac_compute_glyph_string_overhangs): Adapt for RIF.
19959	(x_redisplay_interface): Add new members.
19960
199612003-03-15  Stefan Monnier  <monnier@cs.yale.edu>
19962
19963	* keymap.c (Vmenu_events): New var.
19964	(syms_of_keymap): Initialize it.
19965	(where_is_internal): Check more carefully what is a menu event.
19966
199672003-03-14  Richard M. Stallman  <rms@gnu.org>
19968
19969	* lread.c (read1): After #!, exit loop on eof.
19970
199712003-03-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
19972
19973	* gtkutil.h: Add declaration for xg_frame_cleared.
19974
19975	* xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
19976
19977	* gtkutil.c (struct xg_last_sb_pos): New structure.
19978	(handle_fixed_child): New function.
19979	(xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
19980	and force a redraw on them.
19981	(xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
19982	(xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
19983	so we can avoid unneeded redraws.
19984	(xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
19985	and force a redraw on the scroll bar.
19986	(xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
19987	if xg_last_sb_pos shows the positions are up to date.
19988	(xg_frame_cleared): New function.
19989
199902003-03-13  Kenichi Handa  <handa@m17n.org>
19991
19992	* coding.c (Fdetect_coding_region): Fix docstring.
19993	(Fdetect_coding_string): Fix docstring.
19994
199952003-03-13  Andreas Schwab  <schwab@suse.de>
19996
19997	* gtkutil.c: Add prototype for create_menus.
19998
19999	* data.c (long_to_cons): Fix type of top.
20000
20001	* xselect.c (selection_data_to_lisp_data): Use int instead of
20002	long for an integer of size 4.
20003
20004	* gtkutil.c (xg_update_frame_menubar): Add missing return value.
20005	(xg_tool_bar_help_callback): Likewise.
20006
200072003-03-12  Andreas Schwab  <schwab@suse.de>
20008
20009	* xterm.c (x_term_init) [USE_GTK]: Fix typo.
20010
200112003-03-12  Kim F. Storm  <storm@cua.dk>
20012
20013	The following changes consolidate the fringe handling from
20014	xterm.c, w32term.c, and macterm.c into xdisp.c.
20015
20016	* xdisp.c: Consolidate fringe handling code here.
20017	(left_bits, right_bits, continued_bits, continuation_bits)
20018	(ov_bits, zv_bits): Define fringe bitmaps.
20019	(fringe_bitmaps): New array holding fringe bitmaps.
20020	(draw_fringe_bitmap): Draw a specific bitmap; call display
20021	specific drawing routine via rif->draw_fringe_bitmap.
20022	(draw_row_fringe_bitmaps): Generic replacement for
20023	x_draw_row_fringe_bitmaps; all callers changed.
20024	(compute_fringe_widths): Generic replacement for
20025	x_compute_fringe_widths; all callers changed.
20026
20027	* dispextern.h (enum fringe_bitmap_type): Define here.
20028	(struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
20029	(fringe_bitmaps): Declare extern.
20030	(struct redisplay_interface): New member draw_fringe_bitmap.
20031	(draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
20032
20033	* xterm.c: Remove generic fringe code.
20034	(x_draw_fringe_bitmap): Only perform actual fringe drawing.
20035	(x_redisplay_interface): Add x_draw_fringe_bitmap member.
20036
20037	* w32term.c: Remove generic fringe code.
20038	(w32_draw_fringe_bitmap): Only perform actual fringe drawing.
20039	(w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
20040
20041	* macterm.c: Remove generic fringe code.
20042	(x_draw_fringe_bitmap): Only perform actual fringe drawing.
20043	(x_redisplay_interface): Add x_draw_fringe_bitmap member.
20044
200452003-03-11  Stefan Monnier  <monnier@cs.yale.edu>
20046
20047	* print.c (Fprin1_to_string): Return unibyte string if possible.
20048
200492003-03-09  David Kastrup  <dak@gnu.org>
20050
20051	* process.c (read_process_output): We have allocated enough space
20052	for readmax and carryover, so actually use the alloted space.
20053
200542003-03-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20055
20056	* keyboard.c (make_lispy_event): Extend mouse_syms if needed for
20057	toolkit scrollbar click.
20058
20059	* xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
20060	for USE_GTK.
20061	(x_scroll_bar_handle_click): Use this function for toolkit scrollbars
20062	also.
20063	(handle_one_xevent): ButtonPress/Release: If event is for a toolkit
20064	scrollbar and control is pressed, call x_scroll_bar_handle_click.
20065
20066	* gtkutil.h (xg_get_scroll_id_for_window): Declare.
20067
20068	* gtkutil.c (xg_get_scroll_id_for_window): New function.
20069	(xg_tool_bar_item_expose_callback): New function.
20070	(xg_tool_bar_expose_callback): Call update_frame_tool_bar.
20071	(xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
20072	on the tool bar widget.
20073	(update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
20074	to expose on the tool bar item widgets.
20075
200762003-03-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20077
20078	* gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
20079	struct image* when deciding to update (struct image* may have been
20080	deleted from the image cache).
20081
20082	* xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
20083	the event isn't for a frame (i.e. for dialogs).
20084
200852003-03-07  Kenichi Handa  <handa@m17n.org>
20086
20087	* coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
20088	composition components reaches the limit, terminate composing.
20089	(COMPOSITION_OK): New macro.
20090	(detect_coding_iso2022): Use it if an escape sequence for
20091	composition is found.
20092	(coding_restore_composition): Adjust the number of composition
20093	components if it is not sane.
20094
200952003-03-06  Juanma Barranquero  <lektu@terra.es>
20096
20097	* w32term.h (struct w32_display_info): Add xrdb member to support
20098	passing resources via -xrm on Windows.
20099
20100	* w32term.c (w32_make_rdb): New function.
20101	(w32_term_init): Use it to initialize xrdb member of w32_display_info
20102	struct.  Delete leftover code.
20103
20104	* w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
20105	for resources passed on the command line.
20106
20107	* w32reg.c (w32_get_rdb_resource): New function.
20108	(x_get_string_resource): Use it, so resources passed with -xrm
20109	supercede the ones in the registry.
20110
201112003-03-04  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20112
20113	* xterm.c (x_detect_focus_change): Call x_any_window_to_frame
20114	instead of x_top_window_to_frame.
20115
201162003-03-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20117
20118	* xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
20119	when restarting Emacs.
20120
201212003-03-03  Richard M. Stallman  <rms@gnu.org>
20122
20123	* buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
20124	to run kill-buffer-query-functions.
20125	(Qkill_buffer_query_functions): New var.
20126	(syms_of_buffer): Init and staticpro it.
20127
201282003-03-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20129
20130	* xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
20131
201322003-02-25  Kim F. Storm  <storm@cua.dk>
20133
20134	* xdisp.c (redisplay_window): Fix infinite loop in redisplay.
20135	If centering point failed to make whole line visible and vscroll
20136	is non-zero, disable vscroll and try centering point again.
20137
20138	* lread.c (read1): Accept `single space' syntax like (? x).
20139
201402003-02-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20141
20142	* keyboard.c (cancel_hourglass_unwind): Surround with
20143	#ifdef HAVE_X_WINDOWS.
20144
201452003-02-25  Kenichi Handa  <handa@m17n.org>
20146
20147	* buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
20148	process only when "subprocesses" is defined.
20149
201502003-02-24  Stefan Monnier  <monnier@cs.yale.edu>
20151
20152	* syntax.c (back_comment): Only check nestedness of 2nd char if needed.
20153
201542003-02-24  Juanma Barranquero  <lektu@terra.es>
20155
20156	* callint.c (fix_command): Declare as static void and move before
20157	Fcall_interactively.
20158
20159	* xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
20160	(syms_of_xdisp): Don't initialize Qwhen.
20161
201622003-02-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20163
20164	* keyboard.c (cancel_hourglass_unwind): New function.
20165	(command_loop_1): Cancel hourglass with unwind-protect.
20166
201672003-02-23  Richard M. Stallman  <rms@gnu.org>
20168
20169	* callint.c (fix_command): New subroutine, from Fcall_interactively.
20170	Detect (when ... (region-beginning)) etc.
20171	(Fcall_interactively): Call fix_command.
20172	(Qif, Qwhen): New variables.
20173	(syms_of_callint): Init and staticpro them.
20174
20175	* regex.c (print_partial_compiled_pattern): Output to stderr.
20176
201772003-02-23  Kai Gro,A_(Bjohann  <kai.grossjohann@uni-duisburg.de>
20178
20179	* dired.c (directory_files_internal): Don't expand directory.
20180	(Fdirectory_files, Fdirectory_files_and_attributes): Do it here
20181	instead.  From Lars Hansen <larsh@math.ku.dk>.
20182
201832003-02-22  Stefan Monnier  <monnier@cs.yale.edu>
20184
20185	* fns.c (string_to_multibyte): Remove unused var i.
20186	(Flanginfo): Fix int/Lisp_Object mixup.
20187	(void_call2): New fun.
20188	(Fmap_char_table): Use it in place of call2.
20189
20190	* xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
20191
20192	* macros.c (Fstart_kbd_macro): Remove redundant assignment.
20193
20194	* keymap.c (copy_keymap_1): Make it static.
20195
20196	* alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
20197
201982003-02-22  David Ponce  <david@dponce.com>
20199
20200	* lread.c (Fload): Don't check STRING_MULTIBYTE.
20201
202022003-02-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20203
20204	* process.h: Removed subtty field from struct Lisp_Process.
20205
20206	* process.c (create_process): Remove setting of subtty.
20207	(emacs_get_tty_pgrp): New function.
20208	(Fprocess_running_child_p, process_send_signal):
20209	Call emacs_get_tty_pgrp instead of ioctl.
20210	(process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
20211
202122003-02-21  Kai Gro,A_(Bjohann  <kai.grossjohann@uni-duisburg.de>
20213
20214	* keymap.c (Fdefine_key): Doc fix.
20215
202162003-02-21  Juanma Barranquero  <lektu@terra.es>
20217
20218	Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
20219
20220	* s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
20221	POLLING_PROBLEM_IN_SELECT.
20222
20223	* s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
20224	Delete #undef of POLLING_PROBLEM_IN_SELECT.
20225
20226	* s/hpux10-20.h: New file.
20227
20228	* process.c (wait_reading_process_input):
20229	Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
20230
202312003-02-20  Kenichi Handa  <handa@m17n.org>
20232
20233	* fontset.c (check_fontset_name): If NAME is nil, return the
20234	default fontset.
20235	(override_font_info): New function.
20236	(Fset_fontset_font): Document that NAME nil means the default fontset.
20237	(Ffontset_info): If FONTSET is not the default fontset, merge
20238	FONTSET onto the copy of the default fontset, and work on that
20239	copy.  Document that NAME nil means the default fontset.
20240	(Ffontset_font): Document that NAME nil means the default fontset.
20241
20242	* process.c (setup_process_coding_systems): If the process's
20243	in/out descriptor is -1, do nothing.
20244
202452003-02-19  Andreas Schwab  <schwab@suse.de>
20246
20247	* lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
20248	Add prototypes.
20249
202502003-02-19  Kenichi Handa  <handa@m17n.org>
20251
20252	* xfaces.c (try_alternative_families): Try all scalable fonts if
20253	Vscalable_fonts_allowed is not Qt.
20254
202552003-02-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20256
20257	* xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
20258
202592003-02-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20260
20261	* xterm.c (x_list_fonts): If maxnames is less than 0, get all font
20262	names.
20263
20264	* xfaces.c (x_face_list_fonts): Allocate struct font_name here.
20265	(sorted_font_list): Move allocation of struct font_name to
20266	x_face_list_fonts.
20267	(Fx_font_family_list): Set font-list-limit to -1 to get all font names.
20268	(Fx_list_fonts): Set maxnames to -1 to get all font names.
20269
202702003-02-18  Kim F. Storm  <storm@cua.dk>
20271
20272	* lread.c (read1): Fix last change.
20273	"`" is not always special.  Allow "?" after a character constant.
20274
202752003-02-18  Andrew Choi  <akochoi@shaw.ca>
20276
20277	* unexmacosx.c (copy_data_segment): Also copy __cfstring section.
20278
202792003-02-18  Andreas Schwab  <schwab@suse.de>
20280
20281	* window.c (window_scroll_pixel_based): Move outside a
20282	multi-glyph character before setting new window start.
20283
20284	* xdisp.c (in_display_vector_p): New function.
20285	* dispextern.h (in_display_vector_p): Declare.
20286
202872003-02-18  Kim F. Storm  <storm@cua.dk>
20288
20289	* lread.c (read1): Fix and relax read syntax.
20290	Recognize "[", ";", "#", and "?" after a dotted-pair dot.
20291	Only recognize "," after dotted-pair dot if inside backquote.
20292	Never include "`" or "," (inside backquote) in a symbol.
20293	Allow dotted-pair dot after a character constant.
20294	Allow "`" and "," (inside backquote) after a character constant.
20295
202962003-02-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20297
20298	* gtkutil.c (xg_tool_bar_expose_callback): New function.
20299	(xg_create_tool_bar): Force style of tool bar to be horizontal with
20300	icons.  Set name of tool bar to emacs-toolbar.
20301	(update_frame_tool_bar): Connect expose event to
20302	xg_tool_bar_expose_callback.
20303
203042003-02-17  Richard M. Stallman  <rms@gnu.org>
20305
20306	* keyboard.c (this_command_key_count_reset): New variable.
20307	Initiatize to 0 where this_command_key_count is set.
20308	(read_char): Save and restore this_command_key_count_reset
20309	around input method code.
20310	(read_char): If this_command_key_count_reset, echo reread commands.
20311	(Freset_this_command_lengths): Set this_command_key_count_reset to 1.
20312
203132003-02-17  Kenichi Handa  <handa@m17n.org>
20314
20315	* fns.c (string_to_multibyte): Always return a multibyte string.
20316
203172003-02-16  Jason Rumney  <jasonr@gnu.org>
20318
20319	* w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
20320	Negative max_fonts parameter means list all.
20321
203222003-02-14  Dave Love  <fx@gnu.org>
20323
20324	* fns.c (Flanginfo): Doc fix.
20325
203262003-02-13  Kim F. Storm  <storm@cua.dk>
20327
20328	* lread.c (read_escape): Interpret \s as a SPACE character, except
20329	for \s-X in a character constant which still is the super modifier.
20330	(read1): Signal an `invalid read syntax' error if a character
20331	constant is immediately followed by a digit or symbol character.
20332
20333	* search.c (Fmatch_data): Doc fix.  Explicitly state that
20334	match-data is undefined if last search failed.
20335
20336	* keymap.c (Fcommand_remapping): Rename from Fremap_command.
20337	All uses changed.
20338
203392003-02-12  Juanma Barranquero  <lektu@terra.es>
20340
20341	* eval.c (Fdefmacro): Fix typo.
20342
203432003-02-12  Kim F. Storm  <storm@cua.dk>
20344
20345	* macros.c (Fstart_kbd_macro): If appending, and last keyboard
20346	macro is a string, convert meta modifiers in string when copying
20347	the string into a vector.
20348
203492003-02-11  Kim F. Storm  <storm@cua.dk>
20350
20351	* keymap.c (Fremap_command): Return nil if arg is not a symbol.
20352
203532003-02-11  Kenichi Handa  <handa@m17n.org>
20354
20355	* Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
20356
203572003-02-10  Kim F. Storm  <storm@cua.dk>
20358
20359	* process.c: Doc fixes.
20360	(syms_of_process): Add `:' prefix to QCfilter_multibyte.
20361
203622003-02-10  Kenichi Handa  <handa@m17n.org>
20363
20364	* fns.c (Fstring_to_multibyte): Fix typo in the docstring.
20365
20366	* process.c (QCfilter_multibyte): New variable.
20367	(setup_process_coding_systems): New function.
20368	(Fset_process_buffer, Fset_process_filter):
20369	Call setup_process_coding_systems.
20370	(Fstart_process): Initialize the member `filter_multibyte' of
20371	struct Lisp_Process.
20372	(create_process): Call setup_process_coding_systems.
20373	(Fmake_network_process): New keyward `:filter-multibyte'.
20374	Initialize the member `filter_multibyte' of struct Lisp_Process.
20375	Call setup_process_coding_systems.
20376	(server_accept_connection): Call setup_process_coding_systems.
20377	(read_process_output): If the process has a filter, decide the
20378	multibyteness of a string to given to the filter by
20379	`filter_multibyte' member of the process.  If the process doesn't
20380	have a filter and the result of conversion is unibyte, use
20381	Fstring_to_multibyte (not Fstring_make_multibyte) to get the
20382	multibyte form.
20383	(Fset_process_coding_system): Call setup_process_coding_systems.
20384	(Fset_process_filter_multibyte): New function.
20385	(Fprocess_filter_multibyte_p): New function.
20386	(syms_of_process): Intern and staticpro QCfilter_multibyte.
20387	Defsubr Sset_process_filter_multibyte and
20388	Sprocess_filter_multibyte_p.
20389
20390	* process.h (struct Lisp_Process): New member filter_multibyte.
20391
20392	* lisp.h (setup_process_coding_systems): Add prototype.
20393
20394	* buffer.c (Fset_buffer_multibyte): If the current buffer has a
20395	process, update coding systems for the process.
20396
203972003-02-09  Kenichi Handa  <handa@m17n.org>
20398
20399	* fns.c (string_to_multibyte): New function.
20400	(Fstring_to_multibyte): New function.
20401	(syms_of_fns): Defsubr it.
20402
204032003-02-08  Andreas Schwab  <schwab@suse.de>
20404
20405	* Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
20406	instead of the substitution.
20407
204082003-02-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20409
20410	* xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
20411
20412	* xmenu.c (menu_position_func): Adjust menu popup position so that
20413	the menu is fully visible.
20414
204152003-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20416
20417	* xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
20418	(x_make_frame_invisible, x_wm_set_icon_position):
20419	Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
20420
20421	* xfns.c (x_set_name, x_set_title): Ditto.
20422
204232003-02-04  Richard M. Stallman  <rms@gnu.org>
20424
20425	* keyboard.c (echo_now): Update before_command_echo_length.
20426	(Freset_this_command_lengths): Reset this_command_key_count etc.
20427	immediately rather than arranging to do it later.
20428	(before_command_key_count_1, before_command_echo_length_1)
20429	(before_command_restore_flag): Vars deleted.
20430	(add_command_key): Don't handle before_command_restore_flag.
20431	(read_char, record_menu_key): Don't update before_command_key_count or
20432	before_command_echo_length.
20433	(read_char): Don't handle before_command_restore_flag.
20434
20435	* keyboard.c (command_loop_1): Don't call adjust_point_for_property
20436	in direct-output clauses if it wouldn't be called in the ordinary case.
20437
204382003-02-04  Kim F. Storm  <storm@cua.dk>
20439
20440	* keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
20441
204422003-02-02  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20443
20444	* gtkutil.c (remove_from_container): Copying list is not needed.
20445	(xg_update_menubar, xg_update_menu_item, xg_update_submenu)
20446	(xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
20447	on list returned from gtk_container_get_children to avoid memory leak.
20448
204492003-02-01  Jason Rumney  <jasonr@gnu.org>
20450
20451	* w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
20452	local malloc.
20453	[HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
20454	definitions in xpm.h.
20455	(init_xpm_functions): New function.
20456	(xpm_load): Sync with xfns.c.  Adapt for Windows version of libXpm.
20457	(init_external_image_libraries): Try to load libXpm.dll.
20458
20459	* fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
20460	timestamp.
20461
204622003-01-31  Dave Love  <fx@gnu.org>
20463
20464	* syntax.c (Fskip_chars_forward)
20465	(open-paren-in-column-0-is-defun-start): Doc fix.
20466
204672003-01-31  Joe Buehler  <jhpb@draco.hekimian.com>
20468
20469	* fileio.c: Support // at start of name for Cygwin (just added proper
20470	preprocessor tests).
20471
20472	* keyboard.c: Port to Cygwin (just added proper preprocessor tests).
20473
20474	* Makefile.in: Use @EXEEXT@ for Cygwin.
20475
20476	* mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
20477
20478	* s/cygwin.h: Added for Cygwin port.
20479
204802003-01-31  Juanma Barranquero  <lektu@terra.es>
20481
20482	* w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
20483	when including gif_lib.h.
20484	(init_gif_functions, init_tiff_functions): New functions.
20485	(gif_load, tiff_load): Sync with xfns.c version.  Adjust colors for
20486	Windows.  Disable color table lookups.  Call library functions
20487	through pointers determined at runtime.
20488	(init_external_image_libraries): Try to load libungif.dll and
20489	libtiff.dll.
20490
204912003-01-31  Kenichi Handa  <handa@m17n.org>
20492
20493	* xdisp.c (SKIP_GLYPHS): New macro.
20494	(set_cursor_from_row): Skip all glyphs that comes from overlay string.
20495
204962003-01-30  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20497
20498	* gtkutil.c (free_frame_tool_bar): Remove debug printf.
20499
205002003-01-30  Dave Love  <fx@gnu.org>
20501
20502	* alloc.c (Vgc_elapsed, gcs_done): New variables.
20503	(Fgarbage_collect): Use them.
20504	(init_alloc, syms_of_alloc): Set them up.
20505
205062003-01-30  Juanma Barranquero  <lektu@terra.es>
20507
20508	* w32fns.c (init_external_image_libraries): Add missing operator.
20509
205102003-01-29  Jason Rumney  <jasonr@gnu.org>
20511
20512	* w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
20513	an alternative name for jpeg.dll.
20514
205152003-01-29  Kenichi Handa  <handa@m17n.org>
20516
20517	* xdisp.c (set_cursor_from_row): Pay attention to string display
20518	properties.
20519
205202003-01-28  Benjamin Riefenstahl  <Benjamin.Riefenstahl@epost.de>
20521
20522	* macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
20523	<escape>.
20524	(keycode_to_xkeysym_table): Reformat and add more comments.
20525	(XTread_socket): Drop special case for backspace.
20526
205272003-01-28  Andrew Choi  <akochoi@shaw.ca>
20528
20529	* macfns.c (x_to_mac_color): Correct the order for parsing the RGB
20530	values in old-style RGB specs.
20531
205322003-01-27  Juanma Barranquero  <lektu@terra.es>
20533
20534	* w32fns.c (init_external_image_libraries): Try alternate names for the
20535	jpeg dll.
20536
205372003-01-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20538
20539	* gtkutil.c (create_dialog, xg_separator_p)
20540	(xg_item_label_same_p, xg_update_menu_item): Check for NULL string
20541	before calling strcmp or strlen.
20542
205432003-01-26  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20544
20545	* gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
20546	and handle image load failure.
20547
205482003-01-26  Jason Rumney  <jasonr@gnu.org>
20549
20550	* w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
20551	New functions.
20552	(jpeg_load): Sync with xfns.c version.  Adjust colors for Windows.
20553	Disable color table lookups.  Call jpeg library functions
20554	through pointers determined at runtime.
20555	(init_external_image_libraries): Try to load jpeg.dll.
20556
205572003-01-25  Richard M. Stallman  <rms@gnu.org>
20558
20559	* lisp.h: Declare format2 instead of format1.
20560
20561	* fileio.c (barf_or_query_if_file_exists):
20562	Call format2 instead of format1.
20563
20564	* editfns.c (format2): New function, replaces format1
20565	but takes exactly two Lisp Objects as format args.
20566
20567	* buffer.c (Fkill_buffer): Call format2 instead of format1.
20568
205692003-01-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20570
20571	* xterm.h: Change to return value of x_dispatch_event to int.
20572
20573	* xterm.c (x_filter_event): New function.
20574	(event_handler_gdk, XTread_socket): Call x_filter_event.
20575	(x_dispatch_event): Change to return value of finish.
20576	(event_handler_gdk): Use return value from x_dispatch_event.
20577
20578	* xfns.c (x_window): Call create_frame_xic for GTK version to
20579	initialize input methods.
20580
20581	* gtkutil.h: Add (void) prototypes.
20582
20583	* gtkutil.c (create_menus): Remove code that puts the help menu to
20584	the right.
20585
205862003-01-25  Jason Rumney  <jasonr@gnu.org>
20587
20588	* w32fns.c (XPutPixel): Handle monochrome images; used for masks.
20589	[HAVE_PNG]: Sync with xfns.c version.
20590	(png_load): Adjust colors for Windows.  Use Windows
20591	bitmaps.  Disable color table lookups.
20592	(DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
20593	(init_png_functions): New function.
20594	(png_read_from_memory, png_load): Call png library functions
20595	through pointers determined at runtime.
20596	(QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
20597	(init_external_image_libraries): New function.
20598	(init_xfns): Call it.
20599
206002003-01-24  Andreas Schwab  <schwab@suse.de>
20601
20602	* minibuf.c (Fminibuffer_message): Verify type of parameter.
20603
206042003-01-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20605
20606	* gtkutil.c (xg_initialize): Initialize id_to_widget here instead
20607	of static initializer.
20608
206092003-01-24  Dave Love  <fx@gnu.org>
20610
20611	* s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
20612	architectures.
20613
20614	* alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
20615	Use __alignof__.
20616
206172003-01-24  Kenichi Handa  <handa@m17n.org>
20618
20619	* keyboard.c (adjust_point_for_property): New second arg MODIFIED.
20620	It it is nonzero, don't pretend that an invisible area doesn't exist.
20621	(command_loop_1): Call adjust_point_for_property with proper
20622	second arg.
20623
206242003-01-22  Jason Rumney  <jasonr@gnu.org>
20625
20626	Sync changes with xterm.c and xfns.c.
20627
20628	* w32term.c (x_draw_glyph_string_foreground)
20629	(x_draw_composite_glyph_string_foreground): Implement overstriking.
20630
20631	* w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
20632	phys_cursor's hpos is overwritten.  This is still not completely
20633	correct, as it doesn't really make sense to use hpos at all to
20634	get the cursor glyph (as that is relative to the width of the
20635	characters on the line, which may have changed during the update).
20636
20637	* w32term.c (notice_overwritten_cursor): Handle the special case
20638	of the cursor being in the first blank non-text line at the
20639	end of a window.
20640
20641	* w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
20642	(x_draw_phys_cursor_glyph): Set phys_cursor_width here.
20643	Compute from the x position returned by x_draw_glyphs.
20644
20645	(x_display_and_set_cursor): Don't set phys_cursor_width here,
20646	except for NO_CURSOR and system caret, to make phys_cursor_width
20647	contain what its name suggests.
20648	(notice_overwritten_cursor): Consider the cursor image erased if
20649	the output area intersects the cursor image in y-direction.
20650
20651	* w32term.c (note_mode_line_or_margin_highlight): Rename from
20652	note_mode_line_highlight and extend.
20653
20654	* w32term.c (last_window): New variable.
20655	(w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
20656	(note_mouse_movement): Remove reimplemented code in #if 0.
20657
20658	* w32fns.c (x_set_cursor_type): Set cursor_type_changed,
20659	not update_mode_lines, and always set it to 1.
20660
206612003-01-21  Jason Rumney  <jasonr@gnu.org>
20662
20663	* w32fns.c (IDC_HAND): Define it if system headers don't.
20664
206652003-01-21  KOBAYASHI Yasuhiro  <kobayays@otsukakj.co.jp>
20666
20667	* w32term.h (struct w32_output): New member hand_cursor.
20668	(WM_EMACS_SETCURSOR): New message definition.
20669
20670	* w32term.c (note_mode_line_highlight): Delete #if 0 to enable
20671	function w32_define_cursor.
20672	(note_mouse_highlight): Initialize, setup cursor accoding to mouse
20673	position, change member name output_data.x to output_data.w32 and
20674	add function w32_define_cursor.
20675	(show_mouse_face): Delete #if 0 to enable function w32_define_cursor
20676	and change member name output_data.x to output_data.w32.
20677	(w32_initialize_display_info):
20678	Setup dpyinfo->vertical_scroll_bar_cursor.
20679
20680	* w32fns.c (Vx_hand_shape): New variable.
20681	(w32_wnd_proc): Add message entries for WM_SETCURSOR and
20682	WM_EMACS_SETCURSOR.
20683	(x-create-frame): Setup Cursor types.
20684
206852003-01-21  David Ponce  <david@dponce.com>
20686
20687	* w32term.c (w32_encode_char): For DIM=1 charset, set
20688	ccl->reg[2] to -1 before calling ccl_driver.
20689	(Sync. with xterm.c x_encode_char change by Kenichi Handa
20690	<handa@m17n.org> on 2002-09-30.)
20691	(w32_draw_relief_rect): Declare all args.
20692	(w32_define_cursor): New.
20693
20694	* w32fns.c (w32_load_cursor): New function.
20695	(w32_init_class): Use it.
20696	(x_put_x_image): Declare all args.
20697
206982003-01-21  Richard Dawe  <rich@phekda.freeserve.co.uk>
20699
20700	* Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
20701
207022003-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20703
20704	* gtkutil.c: Must include stdio.h before termhooks.h.
20705
207062003-01-21  Dave Love  <fx@gnu.org>
20707
20708	* alloc.c (Fgc_status): Print zombie list.
20709	(mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
20710	Fix assignment of zombies.
20711	(Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
20712	Don't take car of non-cons.
20713
20714	* s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
20715
20716	* s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
20717
207182003-01-20  David Ponce  <david@dponce.com>
20719
20720	* w32menu.c (digest_single_submenu): Declare all args.
20721
20722	Sync with 2002-12-23  Richard M. Stallman  <rms@gnu.org>
20723	changes in xmenu.c:
20724
20725	(parse_single_submenu): Use individual keymap's prompt
20726	string as pane name, if there is one.
20727	(set_frame_menubar): Save menu_items_n_panes from each call to
20728	parse_single_submenu and use it when calling digest_single_submenu.
20729
207302003-01-20  Steven Tamm  <steventamm@mac.com>
20731
20732	* macterm.c (XTread_socket): Check for valid, visible window
20733	before sending a scroll-wheel event.
20734
207352003-01-20  Richard M. Stallman  <rms@gnu.org>
20736
20737	* xdisp.c (redisplay_window): If mini window's buffer is not
20738	a minibuffer, then redisplay it like other windows.
20739
207402003-01-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20741
20742	* gtkutil.c (xg_create_frame_widgets): Check if there is an
20743	external tool bar before setting tool bar height.
20744
207452003-01-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20746
20747	* xterm.c (handle_one_xevent): Surround popup_activated
20748	with #ifdef:s for non-toolkit version.
20749
20750	* Makefile.in (XOBJ): Add gtkutil.o if USE_GTK.
20751	(gtkutil.o): New file.
20752	(TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
20753	(LIBW): Set to @GTK_LIBS@ if USE_GTK.
20754
20755	* gtkutil.c: New file for GTK version.
20756
20757	* gtkutil.h: New file for GTK version.
20758
20759	* xterm.h: Add xt_or_gtk_widget.
20760	Include gtk files for USE_GTK.
20761	(struct x_output): Add toolbar_height.
20762	(struct x_output): Add GTK widgets and Gdk size_hints.
20763	(GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
20764	(FRAME_OUTER_WINDOW): New macros for USE_GTK.
20765	(FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
20766
20767	* xterm.c: Include gtkutil.h for USE_GTK.
20768	(free_frame_menubar): Declare extern void for USE_GTK.
20769	(note_mouse_highlight): Check popup_activated for USE_GTK.
20770	(xt_action_hook): Don't compile if USE_GTK.
20771	(x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
20772	(xg_scroll_callback): New function.
20773	(x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
20774	(x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
20775	for USE_GTK.
20776	(x_scroll_bar_create): Call xg_update_scrollbar_pos and
20777	xg_show_scroll_bar for USE_GTK.
20778	(x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
20779	(XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
20780	(event_handler_gdk): New function for USE_GTK.
20781	(handle_one_xevent): Call xg_resize_widgets for USE_GTK.
20782	(handle_one_xevent): Make sure widget is mapped before
20783	calling x_real_positions for USE_GTK.
20784	(XTread_socket): Add GTK event loop for USE_GTK.
20785	(x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
20786	(x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
20787	(x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
20788	(x_iconify_frame): Add code for USE_GTK.
20789	(x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
20790	(x_wm_set_size_hint): Only compile if not USE_GTK.  GTK version
20791	is in gtkutil.c.
20792	(x_term_init): Add initialization for GTK.
20793	(syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
20794
20795	* xmenu.c: Include gtkutil.h for USE_GTK.
20796	(Fx_popup_menu): Use current position if x and y are nil.
20797	(single_menu_item, single_menu_item, Fx_popup_dialog):
20798	Check for USE_GTK.
20799	(popup_widget_loop): New function for USE_GTK.
20800	(x_activate_menubar): Add code for USE_GTK.
20801	(popup_activate_callback, popup_deactivate_callback)
20802	(menu_highlight_callback, menubar_selection_callback):
20803	Add USE_GTK versions.
20804	(update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
20805	(set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
20806	(free_frame_menubar): Only compile if not USE_GTK.  GTK version
20807	is in gtkutil.c.
20808	(popup_selection_callback): New version for USE_GTK.
20809	(create_and_show_popup_menu): New fuction, one USE_GTK version and
20810	one USE_X_TOOLKIT version.
20811	(xmenu_show): Call create_and_show_popup_menu.
20812	(dialog_selection_callback): New version for USE_GTK.
20813	(create_and_show_dialog): New fuction, one USE_GTK version and
20814	one USE_X_TOOLKIT version.
20815	(xdialog_show): Call create_and_show_dialog.
20816
20817	* xfns.c: Include gtkutil for USE_GTK.
20818	(x_window_to_frame, x_any_window_to_frame)
20819	(x_non_menubar_window_to_frame, x_menubar_window_to_frame)
20820	(x_top_window_to_frame): Add code for USE_GTK.
20821	(x_set_background_color): Call xg_set_background_color for GTK.
20822	(x_set_menu_bar_lines): Check for USE_GTK.
20823	(x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
20824	(x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
20825	(x_window): Call xg_create_frame_widgets for USE_GTK.
20826	(Fx_create_frame): Check for USE_GTK.
20827	(Fx_file_dialog): New implementation for USE_GTK.
20828
20829	* xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
20830	(update_menu_bar): Add check for USE_GTK.
20831	(update_tool_bar): Add check for USE_GTK and external tool bar.
20832	(redisplay_tool_bar): Add check for USE_GTK and external tool bar.
20833	(redisplay_internal): Add check for USE_GTK and popup_activated.
20834	(redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
20835	(redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
20836	(display_menu_bar): Add check for USE_GTK
20837
20838	* lisp.h (Vx_resource_name): Declare extern.
20839
20840	* keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
20841	for USE_GTK.
20842	(make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
20843
20844	* frame.h (struct frame): Add external_tool_bar.  Check for USE_GTK.
20845	(FRAME_EXTERNAL_TOOL_BAR): New macro.
20846	(FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
20847
20848	* fileio.c (Fread_file_name): Add check for USE_GTK.
20849
20850	* dispnew.c (adjust_frame_glyphs_for_window_redisplay):
20851	Add check for USE_GTK.
20852
20853	* config.in: Added HAVE_GTK.
20854
20855	* alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
20856
208572003-01-18  Stefan Monnier  <monnier@cs.yale.edu>
20858
20859	* charset.h (Funibyte_char_to_multibyte): Export.
20860
208612003-01-18  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20862
20863	* xmenu.c (mouse_position_for_popup): New function.
20864	(Fx_popup_menu): Call mouse_position_for_popup for X and
20865	mouse_position_hook for others.
20866
208672003-01-17  Kim F. Storm  <storm@cua.dk>
20868
20869	* editfns.c (Finsert): Mention `string-make-multibyte' and
20870	`string-as-multibyte' in doc string.
20871
208722003-01-17  Kenichi Handa  <handa@m17n.org>
20873
20874	* fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
20875
20876	* editfns.c (Fformat): Convert an unibyte char argument that is
20877	formatted by "%c" to multibyte if the total result must be a
20878	multibyte string.
20879
208802003-01-16  Kim F. Storm  <storm@cua.dk>
20881
20882	* process.c (set-process-filter): Document unibyte/multibyte-ness
20883	of string argument.
20884
208852003-01-16  Kenichi Handa  <handa@m17n.org>
20886
20887	* charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
20888
20889	* regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
20890	(re_search_2): Likewise.
20891
208922003-01-15  Kenichi Handa  <handa@m17n.org>
20893
20894	* xdisp.c (message_dolog): Fix bug of the case that *Message*
20895	buffer is unibyte.
20896
208972003-01-15  Francesco Potort,Al(B  <pot@gnu.org>
20898
20899	* fns.c (Fsubstring): Clarify doc string.
20900
20901	* textprop.c (Ftext_properties_at, Fnext_char_property_change)
20902	(Fprevious_char_property_change)
20903	(Fnext_single_char_property_change)
20904	(Fprevious_single_char_property_change, Fnext_property_change)
20905	(Fnext_single_property_change, Fprevious_property_change)
20906	(Fprevious_single_property_change, Fadd_text_properties)
20907	(Fput_text_property, Fset_text_properties)
20908	(Fremove_text_properties, Fremove_list_of_text_properties)
20909	(Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
20910
209112003-01-14  Kim F. Storm  <storm@cua.dk>
20912
20913	* process.h (struct Lisp_Process): New member plist replaces old
20914	member private_vars.  All uses changed.
20915
20916	* process.c: Reworked 2003-01-12 change -- call a plist a plist!
20917	(QCplist): Rename from QCvars.  Change all uses.
20918	(Fprocess_plist): Replaces Fprocess_variable.  Simplified.
20919	(Fset_process_plist): Replaces Fset_process_variable.  Simplify.
20920	(syms_of_process): Intern, staticpro, defsubr these.
20921	(Fmake_network_process): Describe :plist arg.  Remove :vars arg.
20922
209232003-01-14  Francesco Potort,Al(B  <pot@gnu.org>
20924
20925	* m/delta.h: Remove (obsolete).
20926
209272003-01-13  Francesco Potort,Al(B  <pot@gnu.org>
20928
20929	* fileio.c (Fdelete_directory, Fdelete_file): Document the
20930	behaviour in front of symlinks.
20931	(Fdelete_file): Raise an error on directories.
20932
209332003-01-13  Dave Love  <fx@gnu.org>
20934
20935	* fns.c (Freverse): Use QUIT.
20936
209372003-01-13  Richard M. Stallman  <rms@gnu.org>
20938
20939	* minibuf.c (minibuffer_completion_contents):
20940	Error if point is inside prompt.
20941
20942	* keyboard.c (command_loop_1): Don't redisplay directly
20943	if there's a post-command-hook.
20944
20945	* fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
20946	(Fdo_auto_save): Add gcpros around Ffile_name_directory.
20947
209482003-01-12  Kim F. Storm  <storm@cua.dk>
20949
20950	* process.h (struct Lisp_Process): New member private_vars.
20951
20952	* process.c (QCvars): New variable.
20953	(syms_of_process): Intern and staticpro it.
20954	(Fset_process_contact): Removed function.
20955	(Fprocess_variable, Fset_process_variable): New functions.
20956	(syms_of_process): Defsubr them.
20957	(Fstart_process): Initialize private_vars plist to nil.
20958	(Fmake_network_process): New arg :vars to setup the private
20959	variables for new network process.
20960	(server_accept_connection): Copy server's private variables to
20961	client process.
20962
20963	* alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
20964	crashes).  Code rewritten and simplified.  Now directly aligns the
20965	pointer and recalculates pure_bytes_used, rather than aligning the
20966	size and adjusting the pointer.
20967
209682003-01-11  Kim F. Storm  <storm@cua.dk>
20969
20970	* process.c (Fset_process_contact): New function.
20971	(syms_of_process): defsubr it.
20972	(make-network-process): Update doc.
20973
209742003-01-10  Andreas Schwab  <schwab@suse.de>
20975
20976	* alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
20977	Reported by Berthold Gunreben <b.gunreben@web.de>.
20978
209792003-01-10  Dave Love  <fx@gnu.org>
20980
20981	* composite.c (syms_of_composite): Make composition_hash_table weak.
20982
209832003-01-09  Kim F. Storm  <storm@cua.dk>
20984
20985	* process.c (Fmake_network_process): Convert new port number
20986	to host byte order for `:service t' case.  From Mario Lang.
20987
209882003-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
20989
20990	* xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
20991	instead of XtAppProcessEvent.
20992
20993	* xterm.c (handle_one_xevent): New function.
20994	(x_dispatch_event): New function.
20995	(XTread_socket): Call handle_one_xevent.
20996
20997	* xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
20998
20999	* xmenu.c (Fx_popup_menu): If popping up at mouse position,
21000	call XQueryPointer to get coordinates.
21001	(popup_get_selection): Do not set popup_activated_flag to zero,
21002	let popup_deactivate_callback do that.  Needed for Motif.
21003	Call x_dispatch_event instead of XtDispatchEvent.
21004	(xmenu_show): Calculate root coordinate from frame top/left position.
21005
210062003-01-08  Kim F. Storm  <storm@cua.dk>
21007
21008	* process.c (server_accept_connection): Fix recording of new
21009	connection's local address in :local property of contact info.
21010	(Fmake_network_process): Record local network address for new
21011	client processes in :local property of contact info.
21012	(format-network-address): Add arg OMIT-PORT.  Change callers.
21013
210142003-01-07  Dave Love  <fx@gnu.org>
21015
21016	* Makefile.in (fns.o): Depend on coding.h.
21017
210182003-01-06  Dave Love  <fx@gnu.org>
21019
21020	* fns.c: Include coding.h.  Use POINTER_TYPE*, not void*.
21021	(Vlocale_coding_system): Declare.
21022	(Qcodeset, Qdays, Qmonths, Qpaper): New.
21023	(Flanginfo): New.
21024	(syms_of_fns): Initialize new stuff.
21025
210262003-01-07  Markus Rost  <rost@math.ohio-state.edu>
21027
21028	* minibuf.c (Fread_variable): Doc fix.
21029
21030	* eval.c (Fuser_variable_p): Doc change.  For custom variables,
21031	use the same test as for custom-variable-p.
21032
210332003-01-05  Richard M. Stallman  <rms@gnu.org>
21034
21035	* xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
21036	Count LAST_LINE_MISFIT in scroll margin for end of window.
21037	Move label too_near_end before setting SCROLL_MARGIN_POS.
21038	Set LAST_LINE_MISFIT before jumping there.
21039
21040	* xdisp.c (try_scrolling): Calculate amount_to_scroll better in
21041	scroll_conservatively case.  If scrolling that much doesn't change
21042	STARTP, move it down one line.
21043
21044	* xdisp.c (redisplay_window): Pass last_line_misfit arg to
21045	try_scrolling.  Make it 1 after make_cursor_line_fully_visible fails.
21046
21047	* xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
21048	selected frame.
21049
21050	* keymap.c (apropos_predicate, apropos_accumulate): Make them static.
21051	(syms_of_keymap): Staticpro them.
21052	(Fapropos_internal): Initialize them and clear them out.
21053	Don't GCPRO them.
21054
21055	* buffer.c (syms_of_buffer) <scroll-up|down-aggressively>: Doc fixes.
21056
21057	* lisp.h: New misc type Lisp_Save_Value.
21058	(enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
21059	(XSAVE_VALUE): New macro.
21060	(struct Lisp_Save_Value): New data type.
21061	(union Lisp_Misc): Add u_save_value alternative.
21062	(make_save_value): Declare.
21063
21064	* alloc.c (make_save_value): New function.
21065
21066	* xterm.c (x_catch_errors): Save dpy using make_save_value.
21067	(x_catch_errors_unwind): Call XSync.
21068
210692003-01-01  Richard M. Stallman  <rms@gnu.org>
21070
21071	* window.c (window_scroll_pixel_based): Partially undo last change.
21072
21073	* keyboard.c (command_loop_1): Call adjust_point_for_property
21074	in direct action cases for Qforward_char and Qbackward_char.
21075	Set already_adjusted so it won't be done twice.
21076
210772002-12-30  Richard Dawe  <rich@phekda.freeserve.co.uk>
21078
21079	* src/config.in (!HAVE_SIZE_T): Fix order of arguments in
21080	type definition of size_t.
21081
210822003-01-02  Steven Tamm  <steventamm@mac.com>
21083
21084	* macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
21085	distinguish Carbon GUI builds from X11 builds on darwin.
21086
210872002-12-30  Steven Tamm  <steventamm@mac.com>
21088
21089	* macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
21090	to default to t.
21091
210922002-12-29  Francesco Potort,Al(B  <pot@gnu.org>
21093
21094	* data.c (Fstring_to_number, Fminus): Better English in doc strings.
21095
210962002-12-28  Steven Tamm  <steventamm@mac.com>
21097
21098	* Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
21099	allow building in a different directory than source.  Uses some
21100	GNU Make extensions, but there is no other make on Mac OS X.
21101
211022002-12-26  Francesco Potort,Al(B  <pot@gnu.org>
21103
21104	* data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
21105	(Fsetq_default, Fmake_local_variable, Fkill_local_variable)
21106	(Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
21107	(Fstring_to_number): Mention the returned value in the doc strings.
21108
211092002-12-23  Richard M. Stallman  <rms@gnu.org>
21110
21111	* buffer.c (syms_of_buffer) <scroll-up-aggressively>
21112	<scroll-down-aggressively>: Doc fix.
21113
21114	* xmenu.c (parse_single_submenu): Use individual keymap's prompt
21115	string as pane name, if there is one.
21116	(set_frame_menubar): Save menu_items_n_panes from each call to
21117	parse_single_submenu and use it when calling digest_single_submenu.
21118
21119	* window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
21120	Don't try to make last line fully visible if it is past end of window.
21121
211222002-12-22  Steven Tamm  <steventamm@mac.com>
21123
21124	* macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
21125	(mac_menu_show): Add support for hierarchical popup menus.
21126	(add_menu_item): Remove indentation support.
21127	(fill_submenu, fill_menu): Create hierarchical menus
21128	instead of using indentation.
21129
211302002-12-22  Richard M. Stallman  <rms@gnu.org>
21131
21132	* xdisp.c (try_cursor_movement): Don't call try_window here.
21133	(redisplay_window): Never redisplay minibuffer when inactive.
21134
21135	* window.c (select_window_1): Undo 9/21 change.
21136
211372002-12-22  Steven Tamm  <steventamm@mac.com>
21138
21139	* macterm.c (XTread_socket): Call KeyTranslate for control and
21140	meta to deal correctly shifted non-alpha characters, like C-S-5
21141	being treated like C-%.  Do not look for shift key to deal
21142	with masking off control-key with mac-reverse-ctrl-meta.
21143
211442002-12-21  Richard M. Stallman  <rms@gnu.org>
21145
21146	* xmenu.c (popup_get_selection): Now static.  New arg DO_TIMERS.
21147	If it is non-nil, run timers.  Use an unwind-protect to requeue
21148	the events that were read ahead.
21149	(popup_get_selection_unwind): New subroutine.
21150	(popup_get_selection_queue): File-scope variable now holds that queue.
21151	(xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
21152	(xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
21153	Use an unwind-protect to pop down the dialog box.
21154	(xdialog_show_unwind): New subroutine implements that.
21155
21156	* xdisp.c (row_containing_pos): Change exit test using last_y.
21157	(try_window_id): Abort if row_containing_pos returns null.
21158
21159	* lread.c (load_error_handler): New function.
21160	(Fload): Handle errors in Fsubstitute_in_file_name.
21161	Don't expect Fsignal to return.
21162
21163	* eval.c: Errors and throws work right with interrupt blocking.
21164	(struct catchtag): New elt interrupt_input_blocked.
21165	(unwind_to_catch): Restore interrupt_input_blocked from saved value.
21166	(internal_catch, Fcondition_case, internal_condition_case)
21167	(internal_condition_case_1, internal_condition_case_2): Save it.
21168	(Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
21169
21170	* editfns.c (Fformat): Add parens.
21171
21172	* dired.c (file_name_completion): Fix that change.
21173	Delete special quit-handling code; just use QUIT.
21174
211752002-12-21  Tak Ota  <Takaaki.Ota@am.sony.com>
21176
21177	* dired.c (file_name_completion): Close directory on error
21178	just as in directory_files_internal.
21179
211802002-12-19  David Kastrup  <David.Kastrup@t-online.de>
21181
21182	* window.c (Fset_window_configuration): Set old_point to correct
21183	value when new_current_buffer == current_buffer.
21184
211852002-12-17  Ben Key  <bkey1@tampabay.rr.com>
21186
21187	Revisited my earlier fix for the following entry in etc/PROBLEMS:
21188	"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
21189	or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
21190
21191	These changes were in part based upon suggestions made by Peter
21192	'Luna' Runestig [peter@runestig.com].
21193
21194	* w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
21195	(g_b_init_get_token_information, g_b_init_lookup_account_sid)
21196	(g_b_init_get_sid_identifier_authority ): Add several static
21197	global variables.
21198
21199	* w32.c (globals_of_w32): New function.  Used to initialize those
21200	global variables that must always be initialized on startup even
21201	when the global variable initialized is non zero.  Its primary
21202	purpose at this time is to set the global variables
21203	g_b_init_is_windows_9x, g_b_init_open_process_token,
21204	g_b_init_get_token_information, g_b_init_lookup_account_sid, and
21205	g_b_init_get_sid_identifier_authority to 0 on startup.
21206	Called from main.
21207
21208	* w32.c (is_windows_9x): Perform initialization only if
21209	g_b_init_is_windows_9x is equal to 0.  On initialization set
21210	g_b_init_is_windows_9x equal to 1.
21211
21212	* w32.c (open_process_token): Perform initialization only if
21213	g_b_init_open_process_token is equal to 0.  On initialization set
21214	g_b_init_open_process_token equal to 1.
21215
21216	* w32.c (get_token_information): Perform initialization only if
21217	g_b_init_get_token_information is equal to 0.  On initialization
21218	set g_b_init_get_token_information equal to 1.
21219
21220	* w32.c (lookup_account_sid): Perform initialization only if
21221	g_b_init_lookup_account_sid is equal to 0.  On initialization
21222	set g_b_init_lookup_account_sid equal to 1.
21223
21224	* w32.c (get_sid_identifier_authority): Perform initialization
21225	only if g_b_init_get_sid_identifier_authority is equal to 0.
21226	On initialization set g_b_init_get_sid_identifier_authority equal to 1.
21227
21228	* w32fns.c (globals_of_w32fns): New function.  Used to initialize
21229	those global variables that must always be initialized on startup
21230	even when the global variable initialized is non zero.
21231	Its primary purpose at this time is to initialize the global variable
21232	track_mouse_event_fn.
21233
21234	* w32fns.c (w32_wnd_proc): Remove initialization of
21235	track_mouse_event_fn from the handler for the WM_SETFOCUS message.
21236
21237	* w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
21238
21239	* w32menu.c (globals_of_w32menu): New function.  Used to
21240	initialize those global variables that must always be initialized
21241	on startup even when the global variable initialized is non zero.
21242	Its primary purpose at this time is to initialize the global
21243	variables get_menu_item_info and set_menu_item_info.
21244
21245	* w32menu.c (initialize_frame_menubar): Remove initialization of
21246	get_menu_item_info and set_menu_item_info.
21247
21248	* w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
21249
21250	* w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
21251	Declare them.
21252
21253	* emacs.c (main): Call globals_of_w32 prior to calling
21254	init_environment if WINDOWSNT is defined.  Call globals_of_w32fns
21255	and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
21256	is defined.
21257
21258	* w32term.c (x_update_window_begin): Fix Windows API error
21259	detected by BoundsChecker.  Test to determine if
21260	w32_system_caret_hwnd is NULL prior to attempting to use
21261	SendMessage to send the WM_EMACS_HIDE_CARET message to it.
21262
21263	* w32term.c (x_update_window_end): Fix Windows API error
21264	detected by BoundsChecker.  Test to determine if
21265	w32_system_caret_hwnd is NULL prior to attempting to use
21266	SendMessage to send the WM_EMACS_SHOW_CARET message to it.
21267
212682002-12-17  Kenichi Handa  <handa@m17n.org>
21269
21270	* coding.c (coding_system_require_warning): New variable.
21271	(syms_of_coding): DEFVAR it.
21272
21273	* coding.h (coding_system_require_warning): Extern it.
21274
21275	* fileio.c (choose_write_coding_system): Even if
21276	Vcoding_system_for_write is non-nil, if
21277	coding_system_require_warning is nonzero, call
21278	Vselect_safe_coding_system_function.
21279
212802002-12-17  Markus Rost  <rost@math.ohio-state.edu>
21281
21282	* Makefile.in (lisp, shortlisp): Add cus-face and timer.
21283	(lisp): Add font-core.
21284
212852002-12-13  Stefan Monnier  <monnier@cs.yale.edu>
21286
21287	* textprop.c (text_read_only): New arg `propval'.
21288	(get_char_property_and_overlay): Remove unused var `next_overlay'.
21289	(verify_interval_modification): Use text_read_only's new arg.
21290
212912002-12-13  Kenichi Handa  <handa@m17n.org>
21292
21293	* coding.c (Funencodable_char_position): Set pend correctly.
21294
212952002-12-12  Jason Rumney  <jasonr@gnu.org>
21296
21297	* w32term.c (last_mousemove_x, last_mousemove_y): New variables.
21298	(w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
21299	Be more careful about when help_events are generated.
21300
213012002-12-12  Steven Tamm  <steventamm@mac.com>
21302
21303	* macterm.c (mac_check_for_quit_char): Correctly set the
21304	modifiers of the event to 0.
21305	* mac.c (sys_select): Duplicate rfds before calling select to
21306	ensure that rfds survive the while loop.
21307
213082002-12-11  Kim F. Storm  <storm@cua.dk>
21309
21310	* xdisp.c (try_window_id): Don't call set_cursor_from_row if
21311	row_containing_pos returned NULL.
21312
213132002-12-10  Steven Tamm  <steventamm@mac.com>
21314
21315	* mac.c (sys_read): Fix sys_read to not call select if IO is
21316	non-blocking.
21317	(sys_select): Fix sys_select to not use a timeout larger than
21318	the one given.
21319
213202002-12-10  Juanma Barranquero  <lektu@terra.es>
21321
21322	* editfns.c (Fformat): Use alloca, not _alloca.
21323
213242002-12-09  Richard M. Stallman  <rms@gnu.org>
21325
21326	* buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
21327	as the last thing.
21328
213292002-12-09  Dave Love  <fx@gnu.org>
21330
21331	* s/sol2-8.h: Removed.  (Not necessary.)
21332
213332002-12-09  Matthew Swift  <swift@alum.mit.edu>
21334
21335	* editfns.c (Fformat): Handle precision in string conversion
21336	specifiers like libc functions do (ie, print at most that many
21337	characters).
21338
213392002-12-08  Richard M. Stallman  <rms@gnu.org>
21340
21341	* xdisp.c (row_containing_pos): Check more carefully
21342	whether charpos is really in the row before returning it.
21343
213442002-12-07  Steven Tamm  <steventamm@mac.com>
21345
21346	* sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
21347
21348	* eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
21349	each stack frame.  This may change as it could be time consuming.
21350
21351	* macterm.c (mac_check_for_quit_char, quit_char_comp)
21352	(init_quit_char_handler, mac_determine_quit_char_modifiers)
21353	(mac_initialize): Add code to check for pressing of quit_char
21354	in the OS event queue.
21355
21356	* mac.c (sys_select): Call mac_check_for_quit_char every second
21357	while blocking on select.
21358
21359	* mac.c (sys_read): Use sys_select to test for input first
21360	before calling read, to allow C-g to break.
21361
213622002-12-07  Richard M. Stallman  <rms@gnu.org>
21363
21364	* minibuf.c (Fcompleting_read): Doc fix.
21365
21366	* lread.c (syms_of_lread) <load-history>: Doc fix.
21367
21368	* fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
21369
21370	* eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
21371	autoload.
21372
21373	* data.c (Fdefalias): Record in load-history redefining an autoload.
21374
21375	* alloca.c: Undo ifdef change accidentally made on 12-04.
21376
213772002-12-06  Francesco Potort,Al(B  <pot@gnu.org>
21378
21379	* xfns.c (png_load): Avoid double gamma correction for PNG images.
21380
213812002-12-04  Richard M. Stallman  <rms@gnu.org>
21382
21383	* sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
21384
21385	* fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
21386
21387	* alloca.c: Don't use #error.
21388
213892002-12-03  Dave Love  <fx@gnu.org>
21390
21391	* buffer.c (Qucs_set_table_for_input): New.
21392	(Fget_buffer_create): Use it.
21393	(Qset_buffer_major_mode_hook): Deleted.
21394	(Fset_buffer_major_mode): Revert previous change.
21395	(init_buffer_once): Intern ucs-set-table-for-input.
21396	(syms_of_buffer): Delete Qset_buffer_major_mode_hook.
21397	Add &Qucs_set_table_for_input.
21398
213992002-12-03  Andreas Schwab  <schwab@suse.de>
21400
21401	* callint.c (Fcall_interactively): Use next_event only if less
21402	than key_count.
21403
214042002-12-02  Andrew Choi  <akochoi@shaw.ca>
21405
21406	* macmenu.c (add_menu_item, fill_menubar): Truncate menu item
21407	names to 255 characters.
21408
21409	* macterm.c (XTread_socket): If all frames have been collapsed,
21410	expand the first one before handling drag-and-drop events.
21411
21412	* s/darwin.h (GETPGRP_NO_ARG): Delete.  Replaced by GETPGRP_VOID,
21413	which is detected by autoconf.
21414
214152002-12-01  Steven Tamm  <steventamm@mac.com>
21416
21417	* unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
21418	offset in two hints table to allow prebinding to be redone and
21419	allow the executable to be stripped.
21420
214212002-11-29  Dave Love  <fx@gnu.org>
21422
21423	* fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
21424	already provided.
21425
214262002-11-29  Richard M. Stallman  <rms@gnu.org>
21427
21428	* xdisp.c (start_display): Check more intelligently for
21429	whether the line is continued.
21430	(move_it_vertically_backward): Clear it->continuation_lines_width.
21431
214322002-11-28  Dave Love  <fx@gnu.org>
21433
21434	* s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
21435	* s/alliant.h, s/altos.h: Deleted.  (Unused/empty.)
21436
214372002-11-27  Steven Tamm  <steventamm@mac.com>
21438
21439	* fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
21440	more descriptive error output from lread.c:Fload upon most require
21441	cycles during boostrapping.
21442
214432002-11-27  Jason Rumney  <jasonr@gnu.org>
21444
21445	* fileio.c (Finsert_file_contents): Give a more appropriate error
21446	for files bigger than 2Gb when off_t is 32 bit.
21447
21448	* dired.c (Ffile_attributes): Don't return negative file sizes for
21449	files bigger than 2Gb when off_t is 32 bit.
21450
214512002-11-27  Dave Love  <fx@gnu.org>
21452
21453	* s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
21454
21455	* systty.h: Don't conditionally define GETPGRP_NO_ARG.
21456	Test GETPGRP_VOID instead.
21457	[BSD_TERMIOS]: Remove definitions (never used).
21458
21459	* s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
21460	Don't define.
21461	(GC_SETJMP_WORKS, GC_MARK_STACK): Define.
21462
21463	* m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
21464
214652002-11-25  Jason Rumney  <jasonr@gnu.org>
21466
21467	* w32.c (sys_write): Avoid non-blocking mode, which is not fully
21468	supported.
21469
214702002-11-25  Dave Love  <fx@gnu.org>
21471
21472	* unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
21473
21474	* Makefile.in (TEMACS_LDFLAGS): Update last change.
21475
214762002-11-25  Andreas Schwab  <schwab@suse.de>
21477
21478	* m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
21479
214802002-11-24  Steven Tamm  <steventamm@mac.com>
21481
21482	* unexmacosx.c (unexec_realloc): Use malloc_default_zone to
21483	determine the size of pointers alloced in unexed space instead
21484	of using possibly invalid emacs_zone pointers.  This fixes the
21485	binary incompatibility problems caused by updates to libSystem.B.
21486
214872002-11-24  Richard M. Stallman  <rms@gnu.org>
21488
21489	* search.c (Fstring_match): Doc fix.
21490
21491	* callint.c (Fcall_interactively): If a command fails because
21492	`*' detects a read-only buffer, but RECORD_FLAG is set,
21493	record it anyway if the args don't actually do tty input.
21494
214952002-11-22  Dave Love  <fx@gnu.org>
21496
21497	* sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
21498
21499	* keyboard.c (interrupt_signal): Provide forward declaration.
21500	(kbd_buffer_store_event): Don't declare interrupt_signal.
21501
21502	* xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
21503
215042002-11-21  Richard M. Stallman  <rms@gnu.org>
21505
21506	* eval.c (interactive_p): Skip any number of bytecode
21507	and special form frames, in any order.
21508
215092002-11-20  Jason Rumney  <jasonr@gnu.org>
21510
21511	* w32fns.c (convert_mono_to_color_image): New function.
21512	(xbm_load, xbm_load_image): Use it when foreground or background
21513	is explicitly set.
21514
215152002-11-19  Dave Love  <fx@gnu.org>
21516
21517	* s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
21518
215192002-11-18  Jason Rumney  <jasonr@gnu.org>
21520
21521	* w32fns.c (x_build_heuristic_mask): Filter palette info from color.
21522	(XPutPixel): Swap blue and red.
21523	(xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
21524	(gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
21525	(xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
21526	(tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
21527
215282002-11-18  Dave Love  <fx@gnu.org>
21529
21530	* m/orion105.h (HAVE_ALLOCA): Don't define.
21531
21532	* m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
21533
21534	* m/intel386.h: Don't include alloca.h or define alloca.
21535
21536	* m/ia64.h: Don't include alloca.h, stdlib.h.  Don't declare
21537	malloc, realloc, calloc.
21538
21539	* m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
21540	(bcmp): Don't define.
21541
21542	* m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
21543
21544	* m/amdahl.h: Don't define LIB_STANDARD.
21545
21546	* m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
21547
21548	* s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
21549
21550	* s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
21551	Don't include alloca.h.
21552
21553	* s/aix3-2.h (HAVE_FSYNC): Don't define.
21554
21555	* regex.c (_GNU_SOURCE): Don't define.
21556
21557	* process.c (_GNU_SOURCE): Don't define.
21558
21559	* fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
21560
215612002-11-18  Markus Rost  <rost@math.ohio-state.edu>
21562
21563	* s/sol2-8.h: Include sol2-6.h.
21564
215652002-11-18  Miles Bader  <miles@gnu.org>
21566
21567	* dispextern.h (struct face): Add `overstrike' field.
21568	* xterm.c (x_draw_glyph_string_foreground)
21569	(x_draw_composite_glyph_string_foreground): Implement overstriking.
21570	* xfaces.c (load_face_font): Set `face->overstrike' based on
21571	result from choose_face_font.
21572	(best_matching_font, choose_face_font): Add `needs_overstrike'
21573	argument, and use it to return whether overstriking is desirable
21574	for this face/font combo.
21575	(set_font_frame_param: Pass new argument to choose_face_font.
21576
215772002-11-17  Ben Key  <BKey1@tampabay.rr.com>
21578
21579	This change is my fix for the following entry in etc/PROBLEMS:
21580	"Emacs built on Windows 9x/ME crashes at startup on Windows XP,
21581	or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
21582
21583	* w32.c: Added wrapper functions around the win32 API functions
21584	OpenProcessToken, GetTokenInformation, LookupAccountSid, and
21585	GetSidIdentifierAuthority.  These wrapper functions serve two
21586	purposes:
21587	1.  They ensure that the wrapped function can never be called
21588	when Emacs is running on an operating system on which they are
21589	not supported (Microsoft Windows 95 / 98 / ME).
21590	2.  They call the wrapped functions via function pointers rather
21591	than calling them directly.  This avoids taking advantage of the
21592	undocumented fact that although these functions are not supported
21593	in the 9x branch of Microsoft Windows, the functions do exist in
21594	the version of advapi32.dll that is found in the 9x branch of
21595	Microsoft Windows.
21596
21597	* w32.c (init_user_info): Replace the calls to the win32 API
21598	functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
21599	and GetSidIdentifierAuthority with calls to the newly added
21600	wrapper functions.
21601
21602	* w32.h: Added extern declarations for the following functions:
21603	syms_of_w32term, syms_of_w32fns, syms_of_w32select,
21604	syms_of_w32menu, and void syms_of_fontset.
21605
21606	* w32fns.c (w32_wnd_proc): Add code to reinitialize the
21607	function pointer track_mouse_event_fn in the handler for the
21608	WM_SETFOCUS message.
21609
21610	* w32menu.c (initialize_frame_menubar): Add code to
21611	reinitialize the function pointers set_menu_item_info and
21612	get_menu_item_info.
21613
216142002-11-17  Ben Key  <BKey1@tampabay.rr.com>
21615
21616	* sound.c: Added a partial implementation of play-sound-internal
21617	for Microsoft Windows.  Added various #ifdef / #else / #endif
21618	code blocks to separate the code that will compile under
21619	Microsoft Windows from the code that is specific to GNU/Linux.
21620	Moved several blocks of code around to make this separation of code
21621	into Windows compatible and GNU/Linux compatible code blocks easier.
21622
21623	* makefile.w32-in: Include sound.c and link with WinMM.lib.
21624
21625	* s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
21626	added support for play-sound-internal under Windows would be
21627	included in the build of Emacs.
21628
216292002-11-16  Jason Rumney  <jasonr@gnu.org>
21630
21631	* w32fns.c (w32_load_system_font): Don't disable Cleartype.
21632
21633	* w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
21634
216352002-11-15  Stefan Monnier  <monnier@cs.yale.edu>
21636
21637	* keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
21638	(adjust_point_for_property): Move out of display and invisible even if
21639	we were already inside before (in case a property was added while
21640	we weren't looking).  Be more careful when handling invisible props.
21641	Skip invisible text as if it really wasn't there at all.
21642
216432002-11-15  Jason Rumney  <jasonr@gnu.org>
21644
21645	* w32term.c (x_draw_image_foreground)
21646	(w32_draw_image_foreground_1): Use standard copy and invert
21647	operations to draw images.
21648
21649	* w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
21650	depth of 1.
21651	(xbm_read_bitmap_data): Invert bits as xbm is read in.
21652	(XPutPixel): Don't invert bits here.
21653
216542002-11-15  Jason Rumney  <jasonr@gnu.org>
21655
21656	* w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
21657	(w32_draw_image_foreground_1): Handle image masks.
21658	(x_draw_image_glyph_string): Don't BitBlt transparently.
21659
21660	* w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
21661	(x_from_xcolors): Adjust RGB values for W32.
21662	(image_background, image_background_transparent)
21663	(postprocess_image, x_to_xcolors, x_disable_image)
21664	(x_build_heuristic_mask): Adapt for W32 and enable.
21665	(x_create_x_image_and_pixmap): Mark images with palettes as such.
21666	(xbm_load): Remove unused variable.
21667
216682002-11-14  Richard M. Stallman  <rms@gnu.org>
21669
21670	* buffer.c (syms_of_buffer): Doc fix.
21671
216722002-11-14  Dave Love  <fx@gnu.org>
21673
21674	* alloc.c (SETJMP_WILL_NOT_WORK): Add note.
21675
21676	* xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
21677	* xmenu.c (unuse_menu_items, digest_single_submenu):
21678	* xfns.c (x_put_x_image):
21679	* xdisp.c (message2_nolog, set_message):
21680	* undo.c (record_point):
21681	* terminfo.c (tparam):
21682	* syntax.c (scan_sexps_forward):
21683	* scroll.c (calculate_scrolling, calculate_direct_scrolling):
21684	* composite.c (update_compositions):
21685	* cm.c (calccost, cmgoto):
21686	* charset.c (c_string_width): Declare all args (per C99).
21687
21688	* frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
21689
21690	* lisp.h (get_specified_cursor_type, get_window_cursor_type):
21691	Don't declare.
21692
21693	* emacs.c (main) [!VMS]: Avoid third arg.
21694
21695	* fns.c (Fcopy_sequence): Doc fix.
21696	(Fmap_char_table): Cast `call2'.
21697
216982002-11-14  Francesco Potort,Al(B  <pot@gnu.org>
21699
21700	* s/sol2-8.h: New file.
21701
217022002-11-14  Kim F. Storm  <storm@cua.dk>
21703
21704	* buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
21705	dependency on `risky-local-variable' and the :propertize form.
21706
217072002-11-12  Stefan Monnier  <monnier@cs.yale.edu>
21708
21709	* fns.c (Fmap_char_table): Don't use map_char_table's function arg.
21710
21711	* syntax.c (scan_sexps_forward): Undo last patch.
21712	Use a more obvious fix: check eob before updating the syntax table.
21713
217142002-11-09  Stefan Monnier  <monnier@cs.yale.edu>
21715
21716	* syntax.c (scan_sexps_forward): Update syntax table before reading
21717	a char rather than after so we don't update the table past eob.
21718
217192002-11-09  Dave Love  <fx@gnu.org>
21720
21721	* buffer.c (Fset_buffer_major_mode): Fix last change.
21722
21723	* regex.c (regexec): Fix pmatch declaration.
21724
21725	* cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
21726
21727	* keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
21728	to self-inserting characters.
21729	(syms_of_keyboard) <keyboard-translate-table>: Doc fix.
21730
21731	* coding.c (Vtranslation_table_for_input): New.
21732	(syms_of_coding): DEFVAR it.
21733
217342002-11-08  Juanma Barranquero  <lektu@terra.es>
21735
21736	* w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
21737	window.
21738
217392002-11-08  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
21740
21741	* process.c (Fformat_network_address): Remove unused locals p,
21742	cp, and i.
21743
217442002-11-06  Dave Love  <fx@gnu.org>
21745
21746	* buffer.c (Qset_buffer_major_mode_hook): New.
21747	(Fset_buffer_major_mode): Use it.
21748
217492002-11-06  Richard M. Stallman  <rms@gnu.org>
21750
21751	* xterm.c (x_term_init): Use turn_on_atimers, not start_polling
21752	and stop_polling.
21753
21754	* process.c (wait_reading_process_input):
21755	Test POLLING_PROBLEM_IN_SELECT, not hpux.
21756	Avoid initialization for auto Lisp_Object var.
21757
21758	* s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
21759
21760	* s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
21761
217622002-11-05  Richard M. Stallman  <rms@gnu.org>
21763
21764	* s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
21765
21766	* callint.c (Fcall_interactively): New local filter_specs.
21767	(Fcall_interactively): Check for progn as well as let.
21768	Add a gcpro.
21769	(Qprogn): New variable.
21770	(syms_of_callint): Staticpro and init Qprogn.
21771
217722002-11-04  John Paul Wallington  <jpw@shootybangbang.com>
21773
21774	* lread.c (Feval_buffer): Doc fix.
21775
217762002-11-04  Dave Love  <fx@gnu.org>
21777
21778	* keyboard.c (read_char): Always translate iff
21779	Vkeyboard_translate_table is a char table and c is valid.
21780
21781	* xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
21782	and fix C types.
21783
217842002-11-03  Stefan Monnier  <monnier@cs.yale.edu>
21785
21786	* xdisp.c (single_display_prop_intangible_p): Strings are intangible.
21787
21788	* editfns.c (get_pos_property): Don't hardcode Qfield.
21789
21790	* keyboard.c (adjust_point_for_property): Handle `display' prop on
21791	overlays.  Also handle `invisible' prop.
21792
217932002-11-02  Stefan Monnier  <monnier@cs.yale.edu>
21794
21795	* coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
21796	(decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
21797
217982002-11-01  Andreas Schwab  <schwab@suse.de>
21799
21800	* editfns.c (Fmessage): Revert last change to properly handle %%.
21801
218022002-11-01  Stefan Monnier  <monnier@cs.yale.edu>
21803
21804	* xmenu.c (unuse_menu_items): New fun.
21805	(menu_items_inuse): New var.
21806	(syms_of_xmenu): Initialize it.
21807	(init_menu_items): Use it to detect re-entrance.
21808	(Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
21809	(Fx_popup_menu): Remove spurious XSETFRAME.
21810
21811	* editfns.c (find_field): Make an exception for nil fields.
21812
218132002-11-01  Dave Love  <fx@gnu.org>
21814
21815	* m/gec63.h: Deleted.
21816
218172002-10-31  Dave Love  <fx@gnu.org>
21818
21819	* xterm.c (XTread_socket): Fix last change.
21820	(xaw_scroll_callback): Cast call_data to long to avoid warning.
21821
218222002-10-31  Stefan Monnier  <monnier@cs.yale.edu>
21823
21824	* process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
21825
218262002-10-30  Stefan Monnier  <monnier@cs.yale.edu>
21827
21828	* editfns.c (overlays_around, get_pos_property): New funs.
21829	(find_field): Use them.
21830	Also be careful not to modify POS before its last use.
21831	(Fmessage): Don't Fformat if there's nothing to format.
21832
218332002-10-30  Dave Love  <fx@gnu.org>
21834
21835	* process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
21836	[HAVE_PTY_H]; Include pty.h.
21837
21838	* lread.c (Fload) <!load_dangerous_libraries>: Close fd.
21839
21840	* xterm.c (Qeql): Declare.
21841	(Vx_keysym_table): New.
21842	(syms_of_xterm): Initialize it.
21843	(XTread_socket): Use it.  Deal with ASCII keysyms.
21844	(XSetIMValues) [HAVE_X11R6]: Prototype.
21845
21846	* keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
21847	(lispy_kana_keys): Comment out.
21848	(make_lispy_event) [XK_kana_A]: Comment out.
21849	(modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
21850	Fix sprintf call.
21851
21852	* s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
21853	regexp.h change).
21854	(TERMINFO, LIBS_TERMCAP): Define.
21855
21856	* s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
21857	(bcmp): Define conditional on HAVE_BCMP.
21858	(NO_SIOCTL_H): Don't define.
21859	(TIOCSIGSEND): Don't make conditional on IRIX6.
21860
21861	* s/sol2-5.h: Don't include strings.h.
21862	(bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
21863
21864	* s/irix6-0.h (IRIX6): Don't define.
21865	(bcopy, bcmp, bzero): Don't undef.
21866
21867	* s/irix6-5.h: Don't include strings.h.
21868	(IRIX6): Don't define.
21869	(bcopy, bcmp, bzero): Don't undef.
21870
21871	* syntax.c (Fforward_comment): Doc fix.
21872
218732002-10-29  Kim F. Storm  <storm@cua.dk>
21874
21875	* process.c (Fsignal_process): Allow PROCESS to be specified by
21876	name in addition to pid (as integer or string).
21877
218782002-10-28  Harald Maier  <Harald.Maier.BW@t-online.de>  (tiny change)
21879
21880	* w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
21881	environments.
21882
218832002-10-27  Kim F. Storm  <storm@cua.dk>
21884
21885	* xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
21886
21887	* w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
21888
21889	* msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
21890
21891	* macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
21892
218932002-10-26  Richard M. Stallman  <rms@gnu.org>
21894
21895	* editfns.c (Fformat): Detect invalid format letters for floats.
21896
218972002-10-25  Kenichi Handa  <handa@m17n.org>
21898
21899	* xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
21900	(x_set_title): Likewise.
21901
219022002-10-25  Juanma Barranquero  <lektu@terra.es>
21903
21904	* macgui.h:
21905	* w32gui.h: Remove definition of XColor.
21906
21907	* dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
21908
219092002-10-24  Kim F. Storm  <storm@cua.dk>
21910
21911	* xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
21912	Callers changed (supply dummy arg).
21913
21914	* lisp.h (get_window_cursor_type): Update prototype.
21915
21916	* w32term.c (x_display_and_set_cursor): Get active_cursor from
21917	get_window_cursor_type to track system caret.
21918
219192002-10-24  Kim F. Storm  <storm@cua.dk>
21920
21921	* process.c (Fformat_network_address): New function.
21922	(syms_of_process): Defsubr it.
21923	(list_processes_1): Use it to format :local/:remote address if
21924	service/host is not set; before Emacs would crash in that case.
21925	(Fmake_network_process): Don't use Ffind_operation_coding_system
21926	to setup coding system if host or service is not set.
21927
219282002-10-23  Juanma Barranquero  <lektu@terra.es>
21929
21930	Patch suggested by Jay Finger <jay_finger@hotmail.com>.
21931
21932	* w32term.c (w32_term_init): Pass XColor to w32_define_color, not
21933	COLORREF.
21934
21935	* macgui.h:
21936	* w32gui.h: Add definition of XColor.
21937
21938	* macfns.c:
21939	* w32fns.c:
21940	* xfaces.c: Remove definition of XColor.
21941
219422002-10-22  Stefan Monnier  <monnier@cs.yale.edu>
21943
21944	* xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
21945
21946	* window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
21947	Only ignore truly dedicated windows.  For UNSHOW_BUFFER, delete the
21948	window if it is dedicated.
21949	(Fshrink_window): Add preserve_before as was done for enlarge_window.
21950	(Vspecial_display_function): Update docstring.
21951
21952	* buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
21953	(call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
21954	(Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
21955
219562002-10-21  Stefan Monnier  <monnier@cs.yale.edu>
21957
21958	* casefiddle.c (casify_region): Don't treat a prefix char as part
21959	of a word when at the beginning.
21960
219612002-10-17  Juanma Barranquero  <lektu@terra.es>
21962
21963	* lread.c (syms_of_lread): Fix typos.
21964
219652002-10-17  Dave Love  <fx@gnu.org>
21966
21967	* Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
21968
219692002-10-16  Richard M. Stallman  <rms@gnu.org>
21970
21971	* fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
21972
219732002-10-14  Juanma Barranquero  <lektu@terra.es>
21974
21975	* w16select.c (syms_of_win16select): Fix docstring for
21976	`selection-coding-system'.
21977
21978	* w32select.c (syms_of_w32select): Likewise.
21979
219802002-10-14  Stefan Monnier  <monnier@cs.yale.edu>
21981
21982	* syntax.c (scan_lists): Don't get fooled by a symbol ending with
21983	a backslash-quoted char.
21984	(scan_lists, scan_sexps_forward): Pacify the compiler.
21985
219862002-10-13  Richard M. Stallman  <rms@gnu.org>
21987
21988	* window.c (window_scroll): Set immediate_quit.
21989
21990	* print.c (print): When backquote form is the car of a list,
21991	output in old style.  Use old_backquote_output to output all
21992	comma forms inside it in old style too.
21993
21994	* buffer.h (struct buffer): Move `undo_list' down below `name'.
21995
219962002-10-11  Markus Rost  <rost@math.ohio-state.edu>
21997
21998	* emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
21999	batch mode).
22000
22001	* lread.c (Fload): Doc fix (load-suffixes).
22002
220032002-10-10  Steven Tamm  <steventamm@mac.com>
22004
22005	* macterm.c (syms_of_macterm, mac_get_mouse_btn):
22006	Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
22007	Also switch the default to Qnil from Qt.
22008
220092002-10-08  Kenichi Handa  <handa@m17n.org>
22010
22011	* coding.c (code_convert_region): When we need more GAP for
22012	conversion, pay attention to the case that coding->produced is not
22013	greater than coding->consumed.
22014
220152002-10-07  Richard M. Stallman  <rms@gnu.org>
22016
22017	* unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
22018
220192002-10-06  Andrew Choi  <akochoi@shaw.ca>
22020
22021	* macmenu.c (mac_menu_show): Add j to count menu items; match
22022	menu_item_selection to it to find selected item.
22023
220242002-10-06  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
22025
22026	* xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
22027	cases.  The correct fix is to pass ReparentNotify to Xt.
22028	The shell widget interprets ConfigureNotify differently depending
22029	on if it has been reparented or not.
22030
220312002-10-05  Markus Rost  <rost@math.ohio-state.edu>
22032
22033	* editfns.c (Fformat_time_string): Doc fix.
22034
220352002-10-05  John Paul Wallington  <jpw@shootybangbang.com>
22036
22037	* fns.c (Flength): Doc fix.
22038
220392002-10-04  Stefan Monnier  <monnier@cs.yale.edu>
22040
22041	* keyboard.c (keyremap): New struct.
22042	(read_key_sequence): Use it: globally replace keytran_foo with
22043	keytran.foo and fkey_foo with fkey.foo.  Rename temp vars
22044	keytran_next and fkey_next to just `next'.
22045
220462002-10-04  Steven Tamm  <steventamm@mac.com>
22047
22048	* macterm.c (keycode_to_xkeysym_table): Change return to be
22049	treated like an X keysym.
22050
220512002-10-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
22052
22053	* xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
22054	and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
22055	This is to also handle x/y changes that occur because of a resize.
22056
220572002-10-02  John Paul Wallington  <jpw@shootybangbang.com>
22058
22059	* frame.c (Vdelete_frame_functions): New variable.
22060	(syms_of_frame): Initialize and defvar it.
22061	(Fdelete_frame): Use it instead of delete-frame-hook.  Don't run
22062	it when frame's `tooltip' parameter is non-nil.
22063
22064	* xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
22065
22066	* w32fns.c (x_create_tip_frame): Likewise.
22067
22068	* macfns.c (x_create_tip_frame): Likewise.
22069
220702002-09-30  Kenichi Handa  <handa@m17n.org>
22071
22072	* xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
22073	-1 before calling ccl_driver.
22074
22075	* coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
22076	Only when it is non-nil, handle composition sequence.
22077	(setup_coding_system) <0>: Don't force composition handling.
22078
22079	* Makefile.in (lisp, shortlisp): Add utf-16.elc.
22080
220812002-09-29  Richard M. Stallman  <rms@gnu.org>
22082
22083	* search.c (Freplace_match): Adjust match data for the substitution
22084	just made in the buffer.
22085
22086	* xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
22087	(redisplay_internal): Use them.  Do RESUME_POLLING at end of function.
22088
220892002-09-27  Richard M. Stallman  <rms@gnu.org>
22090
22091	* keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
22092	(read_char): Use them.  Do all exits thru the end of the function.
22093
220942002-09-27  Kenichi Handa  <handa@etl.go.jp>
22095
22096	* xfaces.c (try_font_list): Pay attention to the case that FAMILY
22097	is nil.
22098
220992002-09-26  Richard M. Stallman  <rms@gnu.org>
22100
22101	* regex.h (__restrict_arr): Don't define if already defined.
22102
22103	* coding.c (run_pre_post_conversion_on_str):
22104	Save and restore Vdeactivate_mark.
22105
221062002-09-26  John Paul Wallington  <jpw@shootybangbang.com>
22107
22108	* minibuf.c (Fminibufferp): Add an optional `buffer' argument.
22109
221102002-09-26  Kenichi Handa  <handa@etl.go.jp>
22111
22112	* xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY.  If it is
22113	nonzero, try face's family at first.  Otherwise try FAMILY at first.
22114	(choose_face_font): If C is a single byte char or latin-1, call
22115	try_font_list with PREFER_FACE_FAMILY 1.
22116
221172002-09-21  Richard M. Stallman  <rms@gnu.org>
22118
22119	* window.c (select_window_1): Don't select frame.
22120	Set frame's selected window only when frame itself is selected.
22121	(Fselect_window): Doc fix.
22122
221232002-09-18  Kim F. Storm  <storm@cua.dk>
22124
22125	* process.c (make-network-process): Doc fix (there is no
22126	network-server-log-function hook).
22127
221282002-09-18  Richard M. Stallman  <rms@gnu.org>
22129
22130	* print.c (print): Clear out the unused parts of Vprint_number_table.
22131	(syms_of_print): Doc fix for `print-number-table'.
22132
22133	* unexelf.c (unexec): Undo previous change.
22134
221352002-09-17  Andreas Schwab  <schwab@suse.de>
22136
22137	* m/alpha.h [LINUX]: Don't define DATA_START.
22138
221392002-09-16  Dave Love  <fx@gnu.org>
22140
22141	* unexelf.c (unexec): Deal with .got, reinstating change from
22142	25-08-1999.
22143
221442002-09-13  Richard M. Stallman  <rms@gnu.org>
22145
22146	* s/sol2-6.h (UNEXEC): Comment out definition.
22147
22148	* unexsol.c (unexec): Don't downcase first letter of error msg.
22149
22150	* xfaces.c (Fcolor_supported_p): Just one arg is required.
22151
221522002-09-12  Markus Rost  <rost@math.ohio-state.edu>
22153
22154	* unexsol.c: Include buffer.h, charset.h, coding.h.
22155
221562002-09-11  Richard M. Stallman  <rms@gnu.org>
22157
22158	* unexsol.c: Don't use report_file_error; do it by hand
22159	using dlerror.
22160
22161	* process.c (wait_reading_process_input, both versions):
22162	Before calling turn_on_atimers, call stop_polling.
22163
22164	* emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
22165
22166	* xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
22167	we go to too_near_end, call clear_glyph_matrix.
22168	(redisplay_window): After make_cursor_line_fully_visible,
22169	call clear_glyph_matrix and bypass `goto done'.
22170
22171	* xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
22172	and we have non-toolkit scroll bars, return nil for scroll-bar-width.
22173
221742002-09-10  Richard M. Stallman  <rms@gnu.org>
22175
22176	* fileio.c (Fdo_auto_save): Catch error making directory.
22177	Only call push_message if we need to.
22178	At the same time, make an unwind-protect to pop it.
22179	Rename local message_p to old_message_p.
22180	(do_auto_save_make_dir, do_auto_save_eh): New functions.
22181	(do_auto_save_unwind): Don't call pop_message.
22182
22183	* lisp.h (pop_message_unwind): Renamed from push_message_unwind.
22184
22185	* keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
22186
22187	* alloc.c (Fgarbage_collect): Use pop_message_unwind.
22188
22189	* xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
22190
221912002-09-10  Stefan Monnier  <monnier@cs.yale.edu>
22192
22193	* regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
22194	(CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
22195	(re_match_2_internal): Be more careful with infinite loops.
22196
221972002-09-10  Kim F. Storm  <storm@cua.dk>
22198
22199	* macros.c (end_kbd_macro): New function.
22200	(Fend_kbd_macro): Use it.
22201
22202	* macros.h (end_kbd_macro): Declare extern.
22203
22204	* keyboard.c (Fdiscard_input): If defining keyboard macro,
22205	end and save it instead of discarding it.
22206
222072002-09-09  Markus Rost  <rost@math.ohio-state.edu>
22208
22209	* s/sol2-6.h: Fix typo.  Add comment.
22210
222112002-09-09  Richard M. Stallman  <rms@gnu.org>
22212
22213	* regex.c (regnum_t): Use signed int, not unsigned int.
22214
22215	* s/sol2-6.h: New file.
22216
22217	* s/sol2-5.h (UNEXEC): Definition deleted.
22218
222192002-09-08  Kim F. Storm  <storm@cua.dk>
22220
22221	* macros.c (executing_macro_index): Change type to EMACS_INT.
22222	(syms_of_macros): DEFVAR_INT it (needed by kmacro).
22223
22224	* macros.h (executing_macro_index): Change type to EMACS_INT.
22225
222262002-09-06  Richard M. Stallman  <rms@gnu.org>
22227
22228	* casetab.c (set_case_table): Make canon table point to eqv table.
22229
222302002-09-06  Juanma Barranquero  <lektu@terra.es>
22231
22232	* coding.c (syms_of_coding): Fix spacing.
22233
22234	* composite.c (Fcompose_region_internal)
22235	(Fcompose_string_internal): Likewise.
22236
22237	* data.c (Flsh): Likewise.
22238
22239	* fontset.c (Fset_fontset_font): Likewise.
22240
22241	* macfns.c (Fx_server_max_request_size): Likewise.
22242
22243	* w16select.c (syms_of_win16select): Likewise.
22244
22245	* w32select.c (syms_of_w32select): Likewise.
22246
22247	* xselect.c (syms_of_xselect): Likewise.
22248
222492002-09-05  Richard M. Stallman  <rms@gnu.org>
22250
22251	* regex.c (set_image_of_range_1): In no-TRANSLATE case,
22252	call EXTEND_RANGE_TABLE and return a proper value.
22253	(set_image_of_range): Don't call set_image_of_range_1
22254	if no TRANSLATE or if range includes all of Latin-1.
22255	Only call it for the Latin-1 part of the range.
22256	For other cases, make two separate ranges,
22257	one for the original specified characters and one for
22258	their case-conversions.
22259
222602002-09-04  Richard M. Stallman  <rms@gnu.org>
22261
22262	* s/sol2-5.h (UNEXEC): Use unexsol.o.
22263
22264	* window.c (displayed_window_lines): Correct for one-off bug
22265	in HEIGHT on non-window displays.
22266
22267	* regex.c (set_image_of_range_1): New function.
22268	(set_image_of_range): Use set_image_of_range_1 for Latin-1.
22269	Return a value to indicate running out of memory.
22270	(SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
22271	(extend_range_table_work_area): New subroutine.
22272	(EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
22273	Different calling conventions, and used from set_image_of_range{,_1}.
22274	(IMMEDIATE_QUIT_CHECK): Definitions moved.
22275
222762002-09-04  Juanma Barranquero  <lektu@terra.es>
22277
22278	* makefile.w32-in: All dependencies updated.
22279
222802002-09-01  Richard M. Stallman  <rms@gnu.org>
22281
22282	* unexsol.c: New file.
22283
22284	* xfns.c (Qbox): Declare external, don't define.
22285
22286	* xdisp.c (redisplay_window) <force-start case>:
22287	If point is on semi-visible last line, reposition
22288	it at previous line.
22289
22290	* alloc.c (display_malloc_warning): Use display-warning.
22291	(malloc_warning_1): Function deleted.
22292
22293	* alloc.c [ALLOC_DEBUG]: #undef INLINE.
22294
22295	* lread.c (read1): Handle #! by skipping the line.
22296
222972002-08-31  Richard M. Stallman  <rms@gnu.org>
22298
22299	* Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
22300	Don't include LDFLAGS.
22301	(temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
22302
223032002-08-31  Eli Zaretskii  <eliz@is.elta.co.il>
22304
22305	* xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
22306	member of x_display_info unless we compile for some window system.
22307
223082002-08-31  Kim F. Storm  <storm@cua.dk>
22309
22310	* xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
22311	(get_window_cursor_type): Don't use them.
22312	(syms_of_xdisp): Remove intern, staticpro, and defvar for them.
22313
223142002-08-30  Kenichi Handa  <handa@etl.go.jp>
22315
22316	* xdisp.c (get_next_display_element): Fix previous change.
22317
223182002-08-30  Andrew Choi  <akochoi@shaw.ca>
22319
22320	* macterm.c (expose_overlaps): New function (merge code from xterm.c).
22321	(expose_window): Use it to fix the display of overlapping
22322	rows (merge code from xterm.c).
22323
22324	* macfns.c (Qbox): Add extern declaration.
22325
223262002-08-30  Juanma Barranquero  <lektu@terra.es>
22327
22328	* w32fns.c (Qbox): Make extern.
22329	(syms_of_w32fns): Remove initialization of Qbox.
22330
223312002-08-30  Rune Kleveland  <runekl@viewpoint.no>  (tiny change)
22332
22333	* xfns.c (Fx_open_connection): Fix error message.
22334
223352002-08-30  Kim F. Storm  <storm@cua.dk>
22336
22337	The following changes consolidates the handling of the cursor
22338	type in xdisp.c, moving duplicate code and functionality from
22339	xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
22340
22341	* frame.h (enum text_cursor_kinds): Consolidated here.
22342	Added DEFAULT_CURSOR value.
22343	(struct frame) <desired_cursor, cursor_width>
22344	<blink_off_cursor, blink_off_cursor_width>: New fields.
22345	Consolidated from output_x, output_w32 and output_mac structs.
22346	(FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
22347	(FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
22348
22349	* xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
22350	Variables consolidated here.
22351	(Valternate_cursor_type, Qalternate_cursor_type): New variables.
22352	(Vcursor_in_non_selected_windows): Renamed from
22353	cursor_in_non_selected_windows and changed to Lisp_Object.
22354	(syms_of_xdisp): Define and staticpro new and moved variables.
22355	(get_specified_cursor_type): Renamed from x_specified_cursor_type;
22356	consolidated here.  Recognize Qhollow setting.
22357	(set_frame_cursor_types): New function to set frame cursor types
22358	based on the frame parameters.
22359	(get_window_cursor_type): New function to calculate new cursor
22360	type and width for the specified window.  Based on duplicated
22361	code consolidated here.
22362	Enhancements: cursor-in-non-selected-windows may be a cursor type,
22363	check buffer-local alternate-cursor-type and blink-cursor-alist
22364	before using built-in blink off methods.
22365
22366	* dispextern.h (cursor_in_non_selected_windows): Extern removed.
22367
22368	* lisp.h (Qcursor_in_non_selected_windows): Extern removed.
22369	(get_specified_cursor_type, get_window_cursor_type)
22370	(set_frame_cursor_types): Added prototypes.
22371
22372	* macfns.c (x_specified_cursor_type): Removed.
22373	(x_set_cursor_type): Use set_frame_cursor_types.
22374	(Qbar, Qbox): Removed.
22375	(syms_of_macfns): Don't intern or staticpro them.
22376
22377	* macterm.c (x_specified_cursor_type): Remove prototype.
22378	(x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
22379	(x_display_and_set_cursor): Use get_window_cursor_type.
22380	Remove unused local variables cursor_non_selected, active_cursor.
22381	Redraw cursor if hbar cursor width changes.
22382	(make_mac_frame): Set FRAME_DESIRED_CURSOR.
22383
22384	* macterm.h (enum text_cursor_kinds): Removed.
22385	(struct output_mac) <current_cursor, desired_cursor, cursor_width>
22386	<blink_off_cursor, blink_off_cursor_width>: Members removed.
22387	(FRAME_DESIRED_CURSOR): Macro removed.
22388
22389	* w32fns.c (Vblink_cursor_alist): Removed.
22390	(Qbar, Qhbar, Qbox, Qhollow): Removed.
22391	(syms_of_w32fns): Don't intern, staticpro, or define them.
22392	(x_specified_cursor_type): Removed.
22393	(x_set_cursor_type): Use set_frame_cursor_types.
22394
22395	* w32term.c (x_specified_cursor_type): Remove prototype.
22396	(x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
22397	(x_display_and_set_cursor): Use get_window_cursor_type.
22398	Remove unused local variables cursor_off_state.
22399	Redraw cursor if hbar cursor width changes.
22400	Changed all occurrences of w32_highlight_frame to x_highlight_frame.
22401
22402	* w32term.h (enum text_cursor_kinds): Removed.
22403	(struct output_w32) <current_cursor, desired_cursor, cursor_width>
22404	<blink_off_cursor, blink_off_cursor_width>: Members removed.
22405	(FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
22406	(FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
22407	(struct w32_display_info) <x_highlight_frame>: Renamed member from
22408	w32_highlight_frame.
22409
22410	* xfns.c (Vblink_cursor_alist): Removed.
22411	(Qbar, Qhbar, Qbox, Qhollow): Removed.
22412	(syms_of_xfns): Don't intern, staticpro, or define them.
22413	(x_specified_cursor_type): Removed.
22414	(x_set_cursor_type): Use set_frame_cursor_types.
22415
22416	* xterm.c (x_specified_cursor_type): Remove prototype.
22417	(x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
22418	(x_display_and_set_cursor): Use get_window_cursor_type.
22419	Remove unused local variables cursor_off_state.
22420	Redraw cursor if hbar cursor width changes.
22421
22422	* xterm.h (enum text_cursor_kinds): Removed.
22423	(struct output_x) <current_cursor, desired_cursor, cursor_width>
22424	<blink_off_cursor, blink_off_cursor_width>: Members removed.
22425	(FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
22426	(FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
22427	(x_specified_cursor_type): Remove prototype.
22428
224292002-08-28  Richard M. Stallman  <rms@gnu.org>
22430
22431	* w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
22432	FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
22433	(Vblink_cursor_alist): New variable.
22434	(syms_of_w32fns): Initialize and defvar it.
22435	(x_specified_cursor_type): Recognize Qbox for filled box.
22436	Exceptions are hollow boxes.
22437	(Qbox, Qhollow): New variables.
22438	(syms_of_w32fns): Initialize and staticpro them.
22439
22440	* w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
22441	New macros.
22442	(struct w32_output): New fields blink_off_cursor,
22443	blink_off_cursor_width.
22444	(FRAME_CURSOR_WIDTH): New macro.
22445
22446	* w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
22447	and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
22448
22449	* w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
22450	for bar cursor.
22451
22452	* w32term.c (expose_overlaps): New function.
22453	(expose_window): Use it to fix the display of overlapping rows.
22454
224552002-08-28  Simon Josefsson  <jas@extundo.com>
22456
22457	* xfns.c (Fx_open_connection): Improve help when X connection
22458	fails, xhost is insecure and xauth is better.
22459
224602002-08-28  Juanma Barranquero  <lektu@terra.es>
22461
22462	* makefile.w32-in: Add missing dependencies on w32term.h and
22463	composite.h.
22464
22465	* emacs.c (USAGE1): Add missing newline.
22466
224672002-08-27  Andrew Choi  <akochoi@shaw.ca>
22468
22469	* s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
22470
224712002-08-27  Richard M. Stallman  <rms@gnu.org>
22472
22473	* xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
22474	FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
22475	(Vblink_cursor_alist): New variable.
22476	(syms_of_xfns): Initialize and defvar it.
22477	(x_specified_cursor_type): Recognize Qbox for filled box.
22478	Exceptions are hollow boxes.
22479	(Qbox, Qhollow): New variables.
22480	(syms_of_xfns): Initialize and staticpro them.
22481
22482	* xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
22483	New macros.
22484	(struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
22485
22486	* xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
22487	and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
22488
22489	* emacs.c (main): Handle --script.
22490	(USAGE1): Mention --script.
22491	(standard_args): Define sort order for --script.
22492
224932002-08-27  Gerd Moellmann  <gerd.moellmann@t-online.de>
22494
22495	* xdisp.c (redisplay_updating_p): Variable removed.
22496	(inhibit_free_realized_faces, Qinhibit_free_realized_faces):
22497	New variables.
22498	(init_iterator): Don't free realized faces if
22499	inhibit_free_realized_faces is set.
22500	(redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
22501	(syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
22502	initialize Qinhibit_free_realized_faces.
22503
22504	* dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
22505	when iterator is adding glyphs to a glyph matrix.
22506
225072002-08-27  Kenichi Handa  <handa@etl.go.jp>
22508
22509	* xdisp.c (get_next_display_element): In unibyte case, don't use
22510	octal form for such eight-bit characters that can be converted to
22511	multibyte char.
22512
225132002-08-26  Kim F. Storm  <storm@cua.dk>
22514
22515	* frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
22516	foreground and background colors.  From Joe Buehler.
22517
225182002-08-26  Miles Bader  <miles@gnu.org>
22519
22520	* bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
22521
225222002-08-25  Andrew Choi  <akochoi@shaw.ca>
22523
22524	* emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
22525	defined instead of MAC_OSX.
22526
22527	* s/darwin.h (select): Define select to sys_select only if
22528	HAVE_CARBON is defined.
22529	(HAVE_WORKING_VFORK): #undef it.  Define vfork to fork.
22530	(DONT_REOPEN_PTY): #def it.
22531
22532	* macterm.c (XTread_socket): Remove code to call
22533	SendEventToEventTarget for keys with command modifiers when
22534	mac_command_key_is_meta is nil.
22535
225362002-08-24  Andreas Schwab  <schwab@suse.de>
22537
22538	* eval.c (Fdefvar): Fix last change.
22539
225402002-08-23  Richard M. Stallman  <rms@gnu.org>
22541
22542	* eval.c (Fdefvar, Fdefconst, Fdefvaralias):
22543	Record variables in load history as (defvar . VAR).
22544	(Fdefvar): Don't record in load history if no initial value.
22545	(Qdefvar): New variable.
22546	(syms_of_eval): Init and staticpro it.
22547
22548	* lread.c (syms_of_lread): Doc fix.
22549	(build_load_history): Use Fmember to see if a definition
22550	is already in the Vload_history element.
22551
22552	* process.c (Fstart_process): Remove /: from program name.
22553
22554	* emacs.c (decode_env_path): Don't add /: if file name handler
22555	has a `safe-magic' property.
22556
22557	* callproc.c (Fcall_process): Remove /: from program name.
22558
225592002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
22560
22561	* regex.c (PATFETCH): Remove the translating fetch.
22562	(PATFETCH_RAW): Rename to PATFETCH.
22563	(set_image_of_range): New fun.
22564	(SET_RANGE_TABLE_WORK_AREA): Use it.
22565	(regex_compile): Don't translate the pattern chars so eagerly.
22566	Only do it when inserting an `exactn' bytecode or when handling
22567	a char-range.
22568	(mutually_exclusive_p): Avoid empty statement.
22569
225702002-08-22  Kim F. Storm  <storm@cua.dk>
22571
22572	* xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
22573	end up on a partially visible line; this reverts a specific part
22574	of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
22575	display error which has been reported several times now.
22576	However it introduces the problem that changes was supposed to fix.
22577	See my comments in the source if you want to debug this further.
22578
225792002-08-20  Kenichi Handa  <handa@etl.go.jp>
22580
22581	* abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
22582
225832002-08-19  Eli Zaretskii  <eliz@is.elta.co.il>
22584
22585	* msdos.c (croak): Add `void' to definition.
22586
22587	* sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
22588	Don't define them, they are defined in msdos.c.
22589
22590	* mem-limits.h [MSDOS]: Declare etext.
22591
22592	* fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
22593	`const' since CORRECT_DIR_SEPS modifies its target.
22594
225952002-08-19  Kim F. Storm  <storm@cua.dk>
22596
22597	* keyboard.c (Fclear_this_command_keys): Add optional arg
22598	KEEP-RECORD to avoid clearing lossage when we just want to clear
22599	the current key sequence (kmacro needs this).
22600
226012002-08-19  Kenichi Handa  <handa@localhost>
22602
22603	* composite.c (run_composition_function): Call FUNC if it is fboundp.
22604
22605	* composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
22606	cons, return Qnil.
22607
226082002-08-17  Richard M. Stallman  <rms@gnu.org>
22609
22610	* s/sol2-5.h (BROKEN_SIGIO): Add #undef.
22611
22612	* sysdep.c [!VMS]: Include sys/files.h.
22613
22614	* editfns.c (save_restriction_restore): Defend from unchained marker.
22615
22616	* buffer.c (overlays_at): Handle extending vec uniformly.
22617	(overlays_in): Handle extending vec from length 0 as in overlays_at.
22618
226192002-08-15  Andrew Choi  <akochoi@shaw.ca>
22620
22621	* mac.c (init_mac_osx_environment): New function.
22622
22623	* emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
22624
226252002-08-14  Kim F. Storm  <storm@cua.dk>
22626
22627	* macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
22628	executing macro before appending to it (when used from Lisp).
22629	(Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
22630	which is called prior to each iteration of macro (for kmacro.el).
22631	(Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
22632
22633	* lisp.h (Fexecute_kbd_macro): Update prototype.
22634
22635	* keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
22636
226372002-08-14  Kenichi Handa  <handa@etl.go.jp>
22638
22639	* xselect.c (QUTF8_STRING): New variable.
22640	(symbol_to_x_atom): Pay attention to QUTF8_STRING.
22641	(x_atom_to_symbol): Likewise.
22642	(x_get_local_selection): New argument local_request.  If it is
22643	nonzero, call handler_fn with the second arg nil.
22644	(x_handle_selection_request): Call x_get_local_selection with
22645	local_request 0.
22646	(lisp_data_to_selection_data): Don't encode the string here.
22647	(Fx_get_selection_internal): Call x_get_local_selection with
22648	local_request 1.
22649	(syms_of_xselect): Intern and staticpro QUTF8_STRING.
22650
22651	* xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
22652
22653	* xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
22654
226552002-08-13  Richard M. Stallman  <rms@gnu.org>
22656
22657	* minibuf.c (Fminibufferp): New function.
22658	(syms_of_minibuf): Defsubr it.
22659	(Fminibuffer_prompt_end): Handle non-minibuffers specially.
22660
226612002-08-13  Gerd Moellmann  <gerd.moellmann@t-online.de>
22662
22663	* coding.c (Funencodable_char_position): Lisp_Object/int mixup.
22664
226652002-08-12  Richard M. Stallman  <rms@gnu.org>
22666
22667	* syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
22668	[!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
22669	(WSTOPSIG, WTERMSIG): Define each one independently if not defined
22670	already.
22671
22672	* buffer.c (syms_of_buffer) <fill-column>: Doc fix.
22673
226742002-08-11  Andrew Choi  <akochoi@shaw.ca>
22675
22676	* macterm.c (XTmouse_position): Check wp with is_emacs_window.
22677	(Vmac_pass_command_to_system): New variable.
22678	(Vmac_pass_control_to_system): New variable.
22679	(do_mouse_moved): Check wp with is_emacs_window.
22680	(XTread_socket): Check window_ptr with is_emacs_window.
22681	Call FrontNonFloatingWindow instead of FrontWindow.  Send keydown
22682	events back to Mac Toolbox for processing, depending on values of
22683	Vmac_pass_command_to_system and Vmac_pass_control_to_system.
22684	(syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
22685	Vmac_pass_control_to_system.
22686
226872002-08-10  Kenichi Handa  <handa@etl.go.jp>
22688
22689	* coding.c (unencodable_char_position): New function.
22690	(Funencodable_char_position): New function.
22691	(syms_of_coding): Defsubr Funencodable_char_position.
22692
226932002-08-10  Andrew Choi  <akochoi@shaw.ca>
22694
22695	* mac.c (sys_select) [MAC_OSX]: New function.
22696
22697	* macterm.c (MakeMeTheFrontProcess): New function.
22698	(mac_initialize): Call MakeMeTheFrontProcess.
22699
22700	* s/darwin.h: Define select to sys_select.
22701
227022002-08-09  Richard M. Stallman  <rms@gnu.org>
22703
22704	* keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
22705
227062002-08-09  Gerd Moellmann  <gerd.moellmann@t-online.de>
22707
22708	* xdisp.c (forward_to_next_line_start): Return 0 when reaching the
22709	end of the buffer.
22710
227112002-08-08  Ken Raeburn  <raeburn@gnu.org>
22712
22713	* coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
22714
22715	* puresize.h (BASE_PURESIZE): Increase to 910000.
22716
227172002-08-08  Kenichi Handa  <handa@etl.go.jp>
22718
22719	* coding.c (Ffind_operation_coding_system): For write-region, if
22720	VISIT is a filename, make it the target.
22721
227222002-08-07  Richard M. Stallman  <rms@gnu.org>
22723
22724	* alloc.c (mark_object): Detect long lists for debugging.
22725	(mark_object_loop_halt): New variable.
22726
22727	* s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
22728
22729	* data.c (Fmake_variable_frame_local): Doc fix.
22730
227312002-08-01  David Ponce  <david@dponce.com>
22732
22733	* w32menu.c (local_heap, local_alloc, local_free): New macros.
22734	(malloc_widget_value, free_widget_value)
22735	(w32_free_submenu_strings): Use them.
22736
22737	(push_submenu_start, push_submenu_end, push_left_right_boundary)
22738	(push_menu_pane, push_menu_item, single_keymap_panes)
22739	(single_menu_item, Fx_popup_menu, menubar_selection_callback)
22740	(single_submenu, set_frame_menubar)
22741	(w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
22742
22743	(Fx_popup_menu): Don't show pop up menu until preceding one is
22744	actually cleaned up.  Moved UNGCPRO outside #ifdef HAVE_MENUS block.
22745
22746	* w32menu.c: Changes adapted from xmenu.c
22747	(set_frame_menubar): First parse all submenus,
22748	then make widget_value trees from them.
22749	Don't allocate any widget_value objects
22750	until we are done with the parsing.
22751	(parse_single_submenu): New function.
22752	(digest_single_submenu): New function.
22753	(single_submenu): Function deleted, replaced by those two.
22754
227552002-08-04  Andrew Choi  <akochoi@shaw.ca>
22756
22757	* macterm.c (XTread_socket): Check that FrontNonFloatingWindow
22758	returns a valid window pointer before proceeding for keyDown and
22759	autoKey events.
22760
227612002-08-03  Andrew Choi  <akochoi@shaw.ca>
22762
22763	* macterm.c (USE_CARBON_EVENTS): New macro.
22764	(macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
22765	(x_iconify_frame): Call CollapseWindow.
22766	(Vmac_reverse_ctrl_meta): New variable.
22767	(Vmac_wheel_button_is_mouse_2): New variable.
22768	(init_mac_drag_n_drop): New function.
22769	(mac_do_receive_drag): New function.
22770	(mac_handle_service_event): New function.
22771	(init_service_handler): New function.
22772	(mac_to_emacs_modifiers): New function.
22773	(mac_event_to_emacs_modifiers): New function.
22774	(mac_get_mouse_btn): New function.
22775	(mac_convert_event_ref): New function.
22776	(XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
22777	SendEventToEventTarget, mac_event_to_emacs_modifiers, and
22778	mac_get_mouse_btn.
22779	(mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
22780
22781	* keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
22782	lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
22783	(kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
22784	TOOL_BAR_EVENT for MAC_OS as well.
22785	(make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
22786	as for WINDOWS_NT.
22787	(syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
22788
22789	* termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
22790
227912002-08-03  Gerd Moellmann  <gerd.moellmann@t-online.de>
22792
22793	* xdisp.c (forward_to_next_line_start): Fix a condition that
22794	lead to a newline being skipped.
22795
227962002-08-02  Andrew Choi  <akochoi@shaw.ca>
22797
22798	* mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
22799
228002002-08-01  Richard M. Stallman  <rms@gnu.org>
22801
22802	* Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
22803
228042002-07-31  Andrew Choi  <akochoi@shaw.ca>
22805
22806	* macfns.c: #undef init_process before #define-ing it.
22807
22808	* s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
22809	HAVE_CARBON is defined.
22810
228112002-07-31  Richard M. Stallman  <rms@gnu.org>
22812
22813	* xmenu.c (set_frame_menubar): First parse all submenus,
22814	then make widget_value trees from them.
22815	Don't allocate any widget_value objects
22816	until we are done with the parsing.
22817	(parse_single_submenu): New function.
22818	(digest_single_submenu): New function.
22819	(single_submenu): Function deleted, replaced by those two.
22820
228212002-07-30  Juanma Barranquero  <lektu@terra.es>
22822
22823	* w32proc.c (syms_of_ntproc): Fix docstring of
22824	`w32-get-true-file-attributes'.
22825
228262002-07-28  Richard M. Stallman  <rms@gnu.org>
22827
22828	* s/hpux8.h (HPUX8): Define this before including hpux.h.
22829	(HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
22830
22831	* s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
22832
22833	* keyboard.c (make_lispy_event):
22834	Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
22835	Explicitly clear up_modifier in event->modifiers.
22836
228372002-07-27  Richard M. Stallman  <rms@gnu.org>
22838
22839	* xterm.h (FRAME_CURSOR_WIDTH): New macro.
22840
22841	* xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
22842	for bar cursor.
22843
228442002-07-26  Kenichi Handa  <handa@etl.go.jp>
22845
22846	* coding.c (detect_coding_iso2022): While checking a byte sequence
22847	for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
22848	it in the normal loop.
22849
228502002-07-24  Gerd Moellmann  <gerd.moellmann@t-online.de>
22851
22852	* xterm.c (expose_overlaps): New function.
22853	(expose_window): Use it to fix the display of overlapping rows.
22854
22855	* xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
22856
228572002-07-23  Ken Raeburn  <raeburn@gnu.org>
22858
22859	* lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
22860	since it only depends on XUINT.
22861
22862	* m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
22863	EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
22864	PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
22865	Macros deleted.
22866
22867	* mem-limits.h (start_of_data): If DATA_START is defined, prefer
22868	its value over other approaches.
22869	* sysdep.c (start_of_data): Don't define the function if a macro
22870	form has been defined.
22871
228722002-07-23  Gerd Moellmann  <gerd.moellmann@t-online.de>
22873
22874	* xdisp.c (redisplay_updating_p): New variable.
22875	(init_iterator): Don't free realized faces when
22876	redisplay_updating_p is set.
22877	(redisplay_internal): Set redisplay_updating_p while updating
22878	the display.
22879
228802002-07-23  Richard M. Stallman  <rms@gnu.org>
22881
22882	* editfns.c (Fmessage): Treat "" like nil.
22883
228842002-07-23  Kenichi Handa  <handa@etl.go.jp>
22885
22886	* xdisp.c (face_before_or_after_it_pos):
22887	Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
22888
228892002-07-22  Juanma Barranquero  <lektu@terra.es>
22890
22891	* callproc.c (init_callproc) [DOS_NT]:
22892	Initialize Vshared_game_score_directory to nil.
22893	(syms_of_callproc) [DOS_NT]: Likewise.
22894
228952002-07-22  Gerd Moellmann  <gerd.moellmann@t-online.de>
22896
22897	* xdisp.c (display_line): Replace an abort with xassert.
22898
228992002-07-21  Richard M. Stallman  <rms@gnu.org>
22900
22901	* xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
22902	and END_UNCHANGED when setting buffer_unchanged_p.
22903	Use current_matrix_up_to_date_p to decide whether to use
22904	try_cursor_movement.
22905
22906	* config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
22907
22908	* epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
22909
22910	* callproc.c (init_callproc): Set up Vshared_game_score_directory.
22911	Set to nil if dir does not exist.
22912	(syms_of_callproc): Init unconditionally and simply.
22913
22914	* buffer.c (Fbuffer_list): Doc fix.
22915
229162002-07-21  Ken Raeburn  <raeburn@gnu.org>
22917
22918	* sysdep.c (end_of_text, end_of_data): Unused functions deleted.
22919
22920	* buffer.c (mmap_realloc): When shrinking, make sure number of
22921	pages to unmap is rounded towards zero.
22922
22923	* m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
22924	(XSETINT): Deleted.
22925
22926	* m/att3b.h (XINT): Don't define.
22927	(VALBITS, VALMASK, XTYPE): Deleted.
22928	(DATA_SEG_BITS): Define.
22929	* m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
22930	ARRAY_MARK_FLAG): Deleted.
22931	(DATA_SEG_BITS): Define.
22932	* m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
22933	(DATA_SEG_BITS): Define.
22934
229352002-07-20  Richard M. Stallman  <rms@gnu.org>
22936
22937	* print.c (print_error_message): New args CONTEXT and CALLER.
22938	Calls changed.
22939
22940	* lisp.h (print_error_message): Declare new args.
22941
22942	* keyboard.c (cmd_error_internal): Pass Vsignaling_function
22943	and CONTEXT to print_error_message, don't print them here.
22944	For a Quit, don't use Vsignaling_function.
22945	Call message_log_maybe_newline.
22946
22947	* Makefile.in (xsmfns.o): Don't depend on lisp.h.
22948
229492002-07-20  Kim F. Storm  <storm@cua.dk>
22950
22951	* xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
22952
229532002-07-19  Ken Raeburn  <raeburn@gnu.org>
22954
22955	* bytecode.c (struct byte_stack): Pointers into byte string now
22956	point to const.
22957	* callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
22958	const.
22959	* charset.h (BCOPY_SHORT): Source pointer now points to const.
22960	* coding.c (encode_eol, detect_coding, detect_eol):
22961	(decode_coding, encode_coding, detect_coding_system):
22962	Source strings now treated as const.
22963	(decode_coding_string, encode_coding_string): Use STRING_COPYIN to
22964	modify Lisp string contents.
22965	* coding.h (decode_coding, encode_coding, detect_coding,
22966	detect_eol): Declarations updated.
22967	* composite.c (compose_chars_in_text): Treat Lisp string contents
22968	as const.
22969	* dispnew.c (safe_bcopy): Source pointer now points to const.
22970	* lisp.h (STRING_COPYIN): New macro.
22971	(detect_coding_system, safe_bcopy, temp_output_buffer_setup):
22972	(internal_with_output_to_temp_buffer): Declarations updated.
22973	* print.c (temp_output_buffer_setup):
22974	(internal_with_output_to_temp_buffer): Buffer name argument is now
22975	pointer to const.
22976	* sound.c (struct sound_device): Function pointer field "write"
22977	buffer argument now points to const.
22978	(vox_write): Buffer argument points to const.
22979	* syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
22980	contents as const.
22981	* sysdep.c (emacs_write): Buffer pointer now const.
22982	* term.c (encode_terminal_code): Buffer pointer now const.
22983	* xfaces.c (may_use_scalable_font_p): Argument now points to const.
22984	(x_face_list_fonts, x_update_menu_appearance):
22985	(hash_string_case_insensitive): Treat Lisp string contents as const.
22986
229872002-07-19  Juanma Barranquero  <lektu@terra.es>
22988
22989	* xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
22990
22991	* fileio.c (syms_of_fileio): Likewise.
22992	(Ffile_name_as_directory): Fix argument name in docstring.
22993	(file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
22994
229952002-07-18  Richard M. Stallman  <rms@gnu.org>
22996
22997	* data.c (Fdefalias): Doc fix.
22998
229992002-07-17  Dave Love  <fx@gnu.org>
23000
23001	* intervals.h (text_property_stickiness): Use P_.
23002
23003	* ccl.c: Remove `emacs' conditionals.
23004	(ccl_backtrace_table): Fix size spec.
23005	(ccl_driver): Fix type errors.
23006
230072002-07-16  Ken Raeburn  <raeburn@gnu.org>
23008
23009	* alloc.c (xstrdup, make_string, make_unibyte_string)
23010	(make_multibyte_string, build_string): String pointer args now
23011	point to const.
23012	* charset.c (find_charset_in_text, c_string_width):
23013	(chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
23014	* fileio.c (report_file_error):
23015	* insdel.c (copy_text, count_size_as_multibyte, insert_1):
23016	(count_combining_before, count_combining_after, insert_1_both):
23017	(insert, insert_and_inherit, insert_string):
23018	(insert_before_markers, insert_before_markers_and_inherit):
23019	* lread.c (intern, oblookup, hash_string):
23020	* minibuf.c (temp_echo_area_glyphs):
23021	* search.c (fast_c_string_match_ignore_case):
23022	* sysdep.c (emacs_open, set_file_times):
23023	* xfaces.c (xstricmp):
23024	* xdisp.c (store_frame_title, string_char_and_length):
23025	(message_dolog, message2, message2_nolog, set_message): Likewise.
23026	(set_message_1): Cast message string argument to const pointer.
23027	* editfns.c (general_insert_function): Insertion function now
23028	takes pointer to const for input data.
23029	* charset.h (find_charset_in_text, c_string_width):
23030	(parse_str_as_multibyte): Declarations updated.
23031	* dispextern.h (xstricmp): Declaration updated.
23032	* lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
23033	(count_size_as_multibyte, count_combining_before):
23034	(count_combining_after, insert_1, insert_1_both, message_dolog):
23035	(insert, insert_and_inherit, insert_before_markers)
23036	(insert_before_markers_and_inherit, set_message, message2):
23037	(message2_dolog, build_string, make_string, make_unibyte_string):
23038	(make_multibyte_string, intern, oblookup, report_file_error):
23039	(fast_c_string_match_ignore_case, temp_echo_area_glyphs):
23040	(emacs_open, xstrdup): Declarations updated.
23041	* systime.h (set_file_times): Declaration updated.
23042
23043	* charset.c (find_charset_in_text, lisp_string_width): Use const
23044	for pointer to lisp string data.
23045	* charset.h (FETCH_STRING_CHAR_ADVANCE):
23046	(FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
23047	* coding.c (Ffind_coding_systems_region_interval):
23048	* fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
23049	(Fmake_directory_internal, Fdelete_directory):
23050	(Ffile_name_absolute_p, Fwrite_region, double_dollars):
23051	* fontset.c (font_family_registry, fs_query_fontset):
23052	(list_fontsets):
23053	* frame.c (Fframe_parameter):
23054	* keyboard.c (cmd_error_internal):
23055	* keymap.c (Fdescribe_buffer_bindings):
23056	* lread.c (complete_filename_p, openp):
23057	* minibuf.c (Fminibuffer_complete_word):
23058	* xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
23059	(face_before_or_after_it_pos, next_element_from_string):
23060	(get_overlay_arrow_glyph_row, display_mode_element):
23061	(decode_mode_spec_coding):
23062	* xterm.c (same_x_server): Likewise.
23063
23064	* buffer.c (reset_buffer_local_variables): Delete "#if 0"
23065	settings of non-existent fields.
23066
23067	* editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
23068	copy a lisp value.
23069
23070	* lread.c (Fintern_soft): Use string macros instead of
23071	Lisp_String fields.
23072	* keyboard.c (echo_char, parse_modifiers_uncached):
23073	(parse_solitary_modifier, Fexecute_extended_command): Likewise.
23074	* textprop.c (validate_interval_range, interval_of): Likewise.
23075
23076	* fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
23077
23078	* charset.h (FETCH_STRING_CHAR_ADVANCE)
23079	(FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
23080	XSTRING()->size_byte.
23081
23082	* lisp.h (SDATA, SREF): Produce rvalue.
23083	(SSET): New macro.
23084	* alloc.c (make_event_array): Use SSET for storing into a string.
23085	* buffer.c (Fother_buffer): Use SREF when retrieving a byte from
23086	a string.
23087	* casefiddle.c (casify_object): Use SSET.
23088	* charset.h (FETCH_STRING_CHAR_ADVANCE)
23089	(FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
23090	address of string contents.
23091	* data.c (Faref): Use SDATA.
23092	(Faset): Use SDATA, SSET.
23093	* dired.c (directory_files_internal): Use SSET.
23094	* fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
23095	(Fread_file_name): Use SREF, SSET.
23096	* fns.c (concat): Use SSET.
23097	(concat, Fdelete): Use SDATA.
23098	* insdel.c (insert_from_string_1): Use SDATA.
23099	* keyboard.c (Fevent_convert_list): Use SREF.
23100	* lread.c (Fload): Use SDATA, SSET.
23101	* macfns.c (validate_x_resource_name): Use SSET.
23102	* process.c (status_message): Use SSET.
23103	* search.c (wordify): Use SDATA.
23104	(Freplace_match): Use SREF.
23105	* w32fns.c (validate_x_resource_name): Use SSET.
23106	* xfns.c (validate_x_resource_name): Use SSET.
23107	* xterm.c (x_catch_errors, x_clear_errors): Use SSET.
23108
231092002-07-16  Richard M. Stallman  <rms@gnu.org>
23110
23111	* s/hpux11.h (USG_SUBTTY_WORKS): Defined.
23112
23113	* xdisp.c (reconsider_clip_changes):
23114	Don't test prevent_redisplay_optimizations_p.
23115	(redisplay_internal): Test prevent_redisplay_optimizations_p
23116	along with clip_changed in some cases.
23117	(try_window_id): Likewise.
23118	(redisplay_window): New local var buffer_unchanged_p.
23119
23120	* keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
23121
23122	* process.c (create_process): Test USG_SUBTTY_WORKS.
23123	(process_send_signal): Clean up handling of GID.
23124	Detect errors in ioctls meant to set GID.
23125
23126	* window.c (temp_output_buffer_show):
23127	Don't set prevent_redisplay_optimizations_p.
23128
231292002-07-15  Juanma Barranquero  <lektu@terra.es>
23130
23131	* eval.c (Fdefvaralias): Add docstring argument.
23132
231332002-07-15  Ken Raeburn  <raeburn@gnu.org>
23134
23135	* lisp.h (STRING_INTERVALS): Produce rvalue.
23136	(STRING_SET_INTERVALS): New macro.
23137	* buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
23138	* fns.c (Fstring_as_multibyte): Likewise.
23139	* intervals.c (balance_possible_root_interval, delete_interval)
23140	(create_root_interval, copy_intervals_to_string): Likewise.
23141	* textprop.c (set_text_properties): Likewise.  Use NULL_INTERVAL
23142	instead of 0.
23143
231442002-07-14  Ken Raeburn  <raeburn@gnu.org>
23145
23146	* lisp.h (STRING_SET_CHARS): New macro.
23147	(SCHARS, SBYTES): Produce rvalues.
23148	* dired.c (directory_files_internal): Use STRING_SET_CHARS.
23149	* fns.c (concat): Likewise.
23150	* lread.c (read_vector): Likewise.
23151
23152	* lisp.h (SMBP): Delete.  All uses changed to STRING_MULTIBYTE.
23153	(STRING_SET_UNIBYTE): New macro.
23154	(SET_STRING_BYTES): Delete.  Callers (all of which supplied a
23155	length of -1) changed to use STRING_SET_UNIBYTE.
23156	* abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
23157	casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
23158	composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
23159	dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
23160	fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
23161	keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
23162	minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
23163	sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
23164	w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
23165	w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
23166	xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
23167	STRING_BYTES or indirection changed to SCHARS, SBYTES,
23168	STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
23169	unchanged for now.
23170
231712002-07-13  Kim F. Storm  <storm@cua.dk>
23172
23173	* keyboard.c (command_loop_1): Invert check on Vmemory_full.
23174
231752002-07-12  Richard M. Stallman  <rms@gnu.org>
23176
23177	* fileio.c (Fwrite_region): Doc fix.
23178
23179	* print.c (print_error_message): Don't handle Vsignaling_function here.
23180
23181	* keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
23182	(command_loop_1): Avoid certain actions after memory-full error.
23183
23184	* eval.c (Fsignal): Don't call cancel_hourglass.
23185	For a memory-full error, don't call Vsignal_hook_function
23186	and don't set Vsignaling_function.
23187
23188	* process.c (process_send_signal): Add abort call.
23189
231902002-07-11  Markus Rost  <rost@math.ohio-state.edu>
23191
23192	* keymap.c (Fkey_binding): Fix typo.
23193
231942002-07-11  Richard M. Stallman  <rms@gnu.org>
23195
23196	* alloc.c (Vmemory_full): New variable.
23197	(Vmemory_signal_data): Rename from memory_signal_data.
23198	Uses changed.
23199	(syms_of_alloc): Defvar them.
23200	(memory_full, buffer_memory_full): Set Vmemory_full.
23201
23202	* lisp.h (Vmemory_full): Add declaration.
23203	(current_column, indented_beyond_p): Change declaration.
23204
23205	* indent.c (last_known_column): Declare as double, not float.
23206	(current_column, current_column_1, string_display_width)
23207	(position_indentation): Return `double'.
23208	(indented_beyond_p): Arg `column' is `double'.  Callers changed.
23209
23210	* xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
23211	(back_to_previous_visible_line_start)
23212	(reseat_at_next_visible_line_start, next_element_from_buffer):
23213	Use `double', not `float', when calling indented_beyond_p.
23214
23215	* s/hpux11.h (BROKEN_SA_RESTART): Define.
23216
23217	* sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
23218
232192002-07-11  Juanma Barranquero  <lektu@terra.es>
23220
23221	* alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
23222	* composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
23223	* fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
23224	* macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
23225	* textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
23226	* xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
23227
232282002-07-10  Juanma Barranquero  <lektu@terra.es>
23229
23230	* lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
23231	All callers changed.
23232
232332002-07-09  Stefan Monnier  <monnier@cs.yale.edu>
23234
23235	* data.c (Fdefalias): Add an optional `docstring' argument.
23236	(set_internal, Fsetq_default): Use XCAR/XCDR.
23237
23238	* composite.c (HASH_VALUE, HASH_KEY):
23239	* ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
23240
232412002-07-09  Kenichi Handa  <handa@etl.go.jp>
23242
23243	* callproc.c (Fcall_process): Fix previous change.
23244
232452002-07-07  Stefan Monnier  <monnier@cs.yale.edu>
23246
23247	* minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
23248	Add support for hash-tables.
23249	(Ftry_completion): Return t even if the string appears multiple times.
23250
23251	* fns.c (Fnconc): Use XCDR.
23252	(Fprovide): Use CONSP and XCDR.
23253	(HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
23254	(HASH_TABLE_SIZE): Delete: moved to lisp.h.
23255	(Fmake_hash_table): Accept `:size nil'.
23256	(Fmakehash): Delete: moved to subr.el.
23257	(syms_of_fns): Don't defsubr makehash.
23258
23259	* lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
23260	(HASH_TABLE_SIZE): Move from fns.c.
23261
232622002-07-07  Richard M. Stallman  <rms@gnu.org>
23263
23264	* xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
23265	Instead just return 0 when there is something to be done.
23266	(try_scrolling): If make_cursor_line_fully_visible returns 0,
23267	retry scrolling as if cursor were off the bottom.
23268	(try_cursor_movement): If make_cursor_line_fully_visible returns 0,
23269	return CURSOR_MOVEMENT_MUST_SCROLL.
23270	(redisplay_window): If make_cursor_line_fully_visible returns 0,
23271	go to try_to_scroll.
23272
23273	* buffer.c (Fbuffer_local_value): Store current value into its binding
23274	so we get the up-to-date value for the binding that is loaded.
23275
23276	* eval.c (Fdefmacro): Doc fix.
23277
232782002-07-05  Dave Love  <fx@gnu.org>
23279
23280	* keyboard.c (read_key_sequence): Set initial_idleness_start_time
23281	correctly.
23282
23283	* ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
23284	(HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
23285	(ccl_driver): Add cases for CCL_LookupIntConstTbl,
23286	CCL_LookupCharConstTbl.
23287	(syms_of_ccl): Defvar translation-hash-table-vector.
23288
232892002-07-05  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
23290
23291	* xdisp.c: Remove unused variable `face'.
23292
232932002-07-04  Juanma Barranquero  <lektu@terra.es>
23294
23295	* keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
23296	obsolescence information.
23297
232982002-07-03  Andrew Choi  <akochoi@shaw.ca>
23299
23300	* macterm.c (x_list_fonts): Fix comment.  Cache fonts matching
23301	pattern.  Search cache first.
23302	(init_font_name_table): Also add entry for jisx0201.1976-0 coding
23303	for Japanese font.
23304	(XLoadQueryFont): Use it.
23305
233062002-07-02  Richard M. Stallman  <rms@gnu.org>
23307
23308	* keymap.c (Fdefine_key): Doc fix.
23309
23310	* xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
23311
233122002-07-02  Juanma Barranquero  <lektu@terra.es>
23313
23314	* keymap.c (syms_of_keymap): Fix typo.
23315
233162002-07-01  Andrew Choi  <akochoi@shaw.ca>
23317
23318	* s/darwin.h: Define POSIX_SIGNALS.
23319
23320	* macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
23321	and FSRefMakePath to convert FSSpec returned with Apple Event to
23322	Posix pathname.
23323	(mac_initialize) [TARGET_API_MAC_CARBON]:
23324	Call init_required_apple_events and disable the `Quit' menu item
23325	provided automatically by the Carbon Toolbox.
23326
233272002-07-01  Dave Love  <fx@gnu.org>
23328
23329	* keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
23330	for K&R.
23331
23332	* xterm.c: Fix prototype for K&R.
23333
23334	* term.c (costs_set): Declare static, non-initialized for pcc.
23335
233362002-07-01  Richard M. Stallman  <rms@gnu.org>
23337
23338	* keyboard.c (timer_last_idleness_start_time): New variable.
23339	(timer_start_idle): Set that.
23340	(read_key_sequence): Use that to reset timer_idleness_start_time
23341	to previous value.
23342
23343	* window.c (Frecenter): With arg, set optional_new_start.
23344
23345	* xdisp.c (redisplay_internal): Make optional_new_start really work.
23346
23347	* minibuf.c (Fminibuffer_complete_and_exit): Move to end of
23348	buffer for completion.
23349
233502002-06-29  Ken Raeburn  <raeburn@gnu.org>
23351
23352	* xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
23353
233542002-06-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
23355
23356	* keyboard.c (readable_filtered_events): New function that filters
23357	FOCUS_IN_EVENT depending on parameter.
23358	(readable_events): Calls readable_filtered_events, not filtering
23359	FOCUS_IN_EVENT.
23360	(get_filtered_input_pending): New function, filtering parameter passed
23361	to readable_filtered_events.
23362	(get_input_pending): Calls get_filtered_input_pending, not filtering
23363	FOCUS_IN_EVENT.
23364	(Finput_pending_p): Calls get_filtered_input_pending, DO filter
23365	FOCUS_IN_EVENT.
23366
23367	* xterm.h (struct x_output): Add focus_state.
23368
23369	* xterm.c (x_focus_changed): New function.
23370	(x_detect_focus_change): New function.
23371	(XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
23372	EnterNotify and LeaveNotify to track X focus changes.
23373
233742002-06-28  Andreas Schwab  <schwab@suse.de>
23375
23376	* lisp.h: Remove duplicate declaration of code_convert_string_norecord.
23377
233782002-06-27  Kim F. Storm  <storm@cua.dk>
23379
23380	* xdisp.c (mode_line_string_list, mode_line_string_face)
23381	(mode_line_string_face_prop): New variables.
23382	(store_mode_line_string): New function.
23383	(display_mode_element): Use store_mode_line_string to
23384	add mode-line string elements to mode_line_string_list
23385	when mode_line_string_list is non-nil.
23386	(Fformat_mode_line): Now returns propertized string by
23387	default.  New arg NO-PROPS to ignore properties.
23388	(decode_mode_spec): Only add two dashes for %- in propertized
23389	mode-line string.
23390	(syms_of_xdisp): Init and staticpro mode_line_string_list.
23391
233922002-06-27  Stefan Monnier  <monnier@cs.yale.edu>
23393
23394	* minibuf.c (minibuffer_completion_contents): Add return type.
23395
233962002-06-27  Juanma Barranquero  <lektu@terra.es>
23397
23398	* charset.c (Fchar_bytes): Remove obsolescence info from docstring.
23399
234002002-06-26  Juanma Barranquero  <lektu@terra.es>
23401
23402	* fileio.c (read_file_name_cleanup): Add missing return.
23403
234042002-06-26  Richard M. Stallman  <rms@gnu.org>
23405
23406	* window.c (Frecenter): Don't set force_start flag.
23407
23408	* minibuf.c (do_completion, Fminibuffer_complete_word)
23409	(Fminibuffer_completion_help): Complete just the text before point.
23410	(minibuffer_completion_contents): New function.
23411
23412	* buffer.c (Fbury_buffer): Use frames_discard_buffer.
23413
23414	* frame.c (frames_bury_buffer): Function deleted.
23415
234162002-06-25  Miles Bader  <miles@gnu.org>
23417
23418	* callint.c (Fcall_interactively): When checking to see if doprnt hit
23419	the end of callint_message, allow for a terminating '\0'.
23420
234212002-06-24  Juanma Barranquero  <lektu@terra.es>
23422
23423	* w32select.c: Include composite.h.
23424
23425	* w16select.c: Likewise.
23426
234272002-06-24  Kenichi Handa  <handa@etl.go.jp>
23428
23429	* callproc.c (Fcall_process): If code detection is necessary,
23430	call detect_coding directly here.
23431
23432	* coding.c (detect_eol): Preserve coding->cmp_data.
23433
23434	* w16select.c (Fw16_get_clipboard_data):
23435	* w32fns.c (w32_to_x_font):
23436	* w32select.c (Fw32_get_clipboard_data):
23437	* xselect.c (selection_data_to_lisp_data):
23438	* xterm.c (XTread_socket): Disable composition handling.
23439
234402002-06-24  Stefan Monnier  <monnier@cs.yale.edu>
23441
23442	* print.c (temp_output_buffer_setup): Kill all local variables.
23443
234442002-06-22  Stefan Monnier  <monnier@cs.yale.edu>
23445
23446	* lread.c (Fread): Remove redundant and imprecise declaration.
23447
23448	* xfns.c (check_x_display_info): Use check_x_frame.
23449
23450	* .gdbinit (xprintsym): Use the new `xname' field.
23451	(xsymbol): Use it.
23452
234532002-06-22  Jason Rumney  <jasonr@gnu.org>
23454
23455	* w32fns.c (file_dialog_callback): New function.
23456	(Fx_file_dialog): Allow selecting directories as well as files.
23457
234582002-06-21  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
23459
23460	* m/pmax.h (START_FILES): Define START_FILES for NetBSD and
23461	OpenBSD.  Add support for mipseb-*-netbsd* machines.
23462
234632002-06-17  Andrew Choi  <akochoi@shaw.ca>
23464
23465	* macterm.c (mac_scroll_area): Set foreground and backcolor to
23466	black and white before scrolling.  Restore frame background and
23467	foreground color after scrolling.
23468	(do_window_update): Call XClearWindow before calling expose_frame.
23469	(make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
23470	FRAME_FOREGROUND_PIXEL of frame.
23471
23472	* macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
23473	test Mac command key as <ALT> key.
23474
234752002-06-17  Stefan Monnier  <monnier@cs.yale.edu>
23476
23477	* window.c (Fset_window_configuration): Lisp_Object/int mixup.
23478
23479	* keyboard.c (read_key_sequence): Be more careful with first_unbound.
23480	Lookup keys in function-key-map immediately so that key-translation-map
23481	can be applied earlier.
23482	Remove function_key_possible and key_translation_possible, replaced
23483	by checking `keytran_start < t'.
23484
23485	* .gdbinit (xsymbol): Use the new `xname' field.
23486
234872002-06-17  Andrew Choi  <akochoi@shaw.ca>
23488
23489	* macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
23490	test Mac command key as <ALT> key.
23491
23492	* mac.c (do_applescript): Call initialize_applescript if necessary
23493	when first called.  Dispose of result_desc only when there is no error.
23494	(Fdo_applescript): Use %d format specifier instead of %ld.
23495
234962002-06-16  Andrew Choi  <akochoi@shaw.ca>
23497
23498	* macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
23499	of FrontWindow for cases keyDown and autoKey.
23500
23501	* fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
23502	Vdefault_fontset to Monaco with mac-roman coding.
23503
23504	* mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
23505	init_process before and after inclusion of Carbon/Carbon.h, resp.
23506
23507	* macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
23508	cursor_gc.
23509	(add_font_name_table_entry): New function.
23510	(init_font_name_table): Use add_font_name_table_entry; add italic,
23511	bold, and bold-italic entries for truetype fonts.
23512
23513	* xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
23514	for Mac too.
23515	(try_font_list) [MAC_OS]: If no font matches given registry, try
23516	fonts with any registry matching face_family.
23517	(realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
23518
23519	* s/darwin.h: If autoconf detects the Ncurses library, define
23520	LIBS_TERMCAP to -lncurses to use it.
23521
235222002-06-16  Eli Zaretskii  <eliz@is.elta.co.il>
23523
23524	* strftime.c [__hpux]: Include sys/_mbstate_t.h.
23525
235262002-06-15  Richard M. Stallman  <rms@gnu.org>
23527
23528	* window.c (Fset_window_configuration): Explicitly preserve
23529	the point value that new_current_buffer had at the start.
23530
235312002-06-14  Juanma Barranquero  <lektu@terra.es>
23532
23533	* composite.c (Fcompose_region_internal, Fcompose_string_internal):
23534	Fix typos.
23535
235362002-06-14  Kim F. Storm  <storm@cua.dk>
23537
23538	* insdel.c (insert_1_both, insert_from_string_1)
23539	(insert_from_buffer_1): Recalculate END_UNCHANGED in case the
23540	insert happened in the end_unchanged region.  Otherwise, the
23541	redisplay may be confused and duplicate the last line in the
23542	buffer [seen after save-buffer when require-final-newline==t].
23543
235442002-06-13  Jason Rumney  <jasonr@gnu.org>
23545
23546	* w32.c (init_environment): Remove EMACSLOCKDIR.
23547	(stat): Swap _S_IFDIR and _S_IFREG.
23548
235492002-06-13  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
23550
23551	* keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
23552	* termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
23553	* w32menu.c, w32inevt.c: Rename enum event_kind as follows:
23554	ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
23555	to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
23556	NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
23557	to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
23558	language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
23559	to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
23560	W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
23561	SELECTION_REQUEST_EVENT, selection_clear_event to
23562	SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
23563	delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
23564	ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
23565	menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
23566	DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
23567	no_event to NO_EVENT.
23568
235692002-06-12  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
23570
23571	* macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
23572
235732002-06-12  Stefan Monnier  <monnier@cs.yale.edu>
23574
23575	* intervals.c (textget): Don't forget to `return'.
23576	(lookup_char_property): Use XCAR/XCDR.
23577
235782002-06-12  Juanma Barranquero  <lektu@terra.es>
23579
23580	* xdisp.c (Fformat_mode_line): Fix typo.
23581
235822002-06-12  Kim F. Storm  <storm@cua.dk>
23583
23584	* xdisp.c (Fformat_mode_line): New function.
23585	(frame_title_buf, frame_title_buf_end, frame_title_ptr)
23586	(store_frame_title_char, store_frame_title): Use unconditionally.
23587	(init_xdisp): Defsubr Fformat_mode_line.
23588	Initialize frame_title_buf etc. unconditionally.
23589
235902002-06-11  Stefan Monnier  <monnier@cs.yale.edu>
23591
23592	* keyboard.c (read_key_sequence):
23593	Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
23594	things through those maps after downcasing events.
23595	Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
23596	applies after function-key-map.
23597	Make sure that keytran can be done in the middle in the sequence.
23598	Be careful not to throw away events past the one we downcase.
23599
23600	* lread.c (read_integer): Remove unused var `tem'.
23601	(read1): Fix int/Lisp_Object mixup.
23602
23603	* xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
23604
236052002-06-11  Richard M. Stallman  <rms@gnu.org>
23606
23607	* keyboard.c (readable_events): Ignore any number of
23608	FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
23609
236102002-06-09  Miles Bader  <miles@gnu.org>
23611
23612	* xfaces.c (Ftty_supports_face_attributes_p): New function.
23613	(parse_rgb_list, tty_lookup_color): New functions.
23614	(tty_defined_color): Use `tty_lookup_color' to do all the work.
23615	(color_distance, Fcolor_distance): New functions.
23616	(TTY_SAME_COLOR_THRESHOLD): New macro.
23617	(Qtty_color_standard_values): New variable.
23618	(syms_of_xfaces): Initialize new vars & functions.
23619
236202002-06-08  Colin Walters  <walters@verbum.org>
23621
23622	* textprop.c (Vchar_property_alias_alist): New variable.
23623	(syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
23624
23625	* intervals.c (lookup_char_property): New function for looking up
23626	overlay and text properties, created from textget.
23627	(textget): Use it.
23628
23629	* intervals.h (lookup_char_property): Declare.
23630	(Vchar_property_alias_alist): Declare.
23631
23632	* buffer.c (Foverlay_get): Use lookup_char_property.
23633
236342002-06-07  Sam Steingold  <sds@gnu.org>
23635
23636	* xselect.c (lisp_data_to_selection_data): Fix last change:
23637	*data_ret is not a Lisp string, while unibyte_string is.
23638
236392002-06-07  Eli Zaretskii  <eliz@is.elta.co.il>
23640
23641	* xselect.c (lisp_data_to_selection_data): Fix last change:
23642	set size_ret.
23643
236442002-06-07  Andreas Schwab  <schwab@suse.de>
23645
23646	* m/amdx86-64.h: New file.
23647
236482002-06-05  Eli Zaretskii  <eliz@is.elta.co.il>
23649
23650	* fns.c (Fstring_make_unibyte): Doc fix.
23651
23652	* xselect.c (lisp_data_to_selection_data): If the requested type
23653	 is STRING, call string_make_unibyte to encode the selected text
23654	 as a string.
23655
23656	* window.c (Fset_window_hscroll): Doc fix.
23657
236582002-06-05  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
23659
23660	* fileio.c (choose_write_coding_system):
23661	Call select-safe-coding-system properly.
23662
236632002-06-03  Richard M. Stallman  <rms@gnu.org>
23664
23665	* xdisp.c (message_with_string): Error if STRING is not a string.
23666
23667	* fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
23668
23669	* fileio.c (choose_write_coding_system): Pass FILE arg to
23670	Vselect_safe_coding_system_function.
23671
236722002-06-03  Ken Raeburn  <raeburn@gnu.org>
23673
23674	* buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
23675
236762002-06-02  Thien-Thi Nguyen  <ttn@gnu.org>
23677
23678	* bytecode.c (Fbyte_code): Cast `current_column' return value to int.
23679	* cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
23680	* keymap.c (describe_command): Likewise.
23681	* minibuf.c (read_minibuf): Likewise.
23682
23683	* xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
23684	Cast `current_column' return value to int.
23685	(back_to_previous_visible_line_start)
23686	(reseat_at_next_visible_line_start, next_element_from_buffer):
23687	Cast `indented_beyond_p' 3rd arg to float.
23688
23689	* indent.c (last_known_column): Now a float.
23690	(current_column_1, position_indentation, current_column)
23691	(string_display_width): Return float.
23692	(Fcurrent_column): Cast `current_column' return value to int.
23693	(Fcurrent_indentation): Cast `position_indentation' retval to int.
23694	(indented_beyond_p): Third arg now a float.
23695	(compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
23696
23697	* lisp.h (current_column): Now returns float.
23698	(indented_beyond_p): 3rd arg now a float.
23699
237002002-05-31  Eli Zaretskii  <eliz@is.elta.co.il>
23701
23702	* xfns.c (x_encode_text): Return stringp non-NULL if coding_system
23703	is Qcompound_text_with_extensions.
23704
23705	* xselect.c (lisp_data_to_selection_data): Always set selection
23706	type as string if x_encode_text returns streingp non-NULL.
23707
23708	* s/netbsd.h: Include /usr/pkg in the run time shared library path.
23709
237102002-05-30  Richard M. Stallman  <rms@gnu.org>
23711
23712	* window.c (Fset_window_configuration): Correct the handling
23713	of point in current buffer, to work with multiple windows.
23714
237152002-05-29  Colin Walters  <walters@verbum.org>
23716
23717	* lread.c (Fread_from_string): Don't depend on order of evaluation
23718	for C function parameters.
23719
237202002-05-28  Richard M. Stallman  <rms@gnu.org>
23721
23722	* xterm.c (x_display_and_set_cursor): Change the cursor in the same
23723	way for blinked-off state and for a nonselected window.
23724
23725	* window.c (window_scroll_pixel_based): Don't call Fbolp;
23726	instead, see if the new start pos is at beginning of line.
23727
23728	* fileio.c (Fwrite_region): If START is a string, don't
23729	make any annotations.
23730
23731	* eval.c (syms_of_eval): Doc fix.
23732
237332002-05-28  Colin Walters  <walters@debian.org>
23734
23735	* emacs.c (USAGE1): Add --no-splash.
23736	(standard_args): Ditto.
23737
237382002-05-28  Colin Walters  <walters@gnu.org>
23739
23740	* lread.c (readchar_count): New variable.
23741	(readchar): Increment it.
23742	(unreadchar): Decrement it.
23743	(read_multibyte): Decrement it.
23744	(Vread_with_symbol_positions): New variable.
23745	(Vread_symbol_positions_list): New variable.
23746	(read_internal_start): New function, created from Fread and
23747	Fread_from_string.  Handle Vread_symbol_positions_list and
23748	Vread_with_symbol_positions.
23749	(readevalloop, Fread, Fread_from_string): Use it.
23750	(read1): Use readchar_count to add symbol positions to
23751	Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
23752	(syms_of_lread): DEFVAR_LISP and initialize them.
23753
23754	* lread.c (read0, read1, read_list, read_vector, read_multibyte)
23755	(substitute_object_recurse, substitute_object_in_subtree)
23756	(substitute_in_interval): Prototype.
23757	(read_multibyte): Return c if it's less than zero.
23758
237592002-05-28  Kim F. Storm  <storm@cua.dk>
23760
23761	* fileio.c (Fread_file_name_internal): Added brute-force
23762	speed up for using predicate file-directory-p.
23763
237642002-05-28  Kim F. Storm  <storm@cua.dk>
23765
23766	* fileio.c (Vread_file_name_function, Vread_file_name_predicate):
23767	New variables.
23768	(syms_of_fileio): DEFVAR_LISP them.
23769	(read_file_name_cleanup): New unwind function.
23770	(Fread_file_name_internal): Only return completions satifying
23771	Vread_file_name_predicate.  Temporarily unwind protect and rebind
23772	default-directory while checking completions against the predicate.
23773	(Fread_file_name): Added PREDICATE argument.  Specbind it to
23774	Vread_file_name_predicate during completion.
23775	Call Vread_file_name_function to read the file name if non-nil.
23776
23777	* lisp.h (Fread_file_name): Now has 6 args.
23778
23779	* callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
23780	predicate for Fread_file_name when reading directory name.
23781	Supply Qnil for predicate in other calls to Fread_file_name.
23782
237832002-05-26  Miles Bader  <miles@gnu.org>
23784
23785	* term.c (tty_capable_p): New function.
23786	* dispextern.h (tty_capable_p): New function declaration.
23787	(TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
23788	(TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
23789
237902002-05-23  Stefan Monnier  <monnier@cs.yale.edu>
23791
23792	* fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
23793	(Finsert_file_contents, build_annotations): Use XCAR, XCDR.
23794	(Vwrite_region_annotate_functions): Docstring fix.
23795
237962002-05-23  Kim F. Storm  <storm@cua.dk>
23797
23798	* xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
23799	phys_cursor's hpos is overwritten.  This is still not completely
23800	correct, as it doesn't really make sense to use hpos at all to
23801	get the cursor glyph (as that is relative to the width of the
23802	characters on the line, which may have changed during the update).
23803
238042002-05-22  Jason Rumney  <jasonr@gnu.org>
23805
23806	* w32fns.c (enumfont_t): Remove tail, make pattern a normal
23807	Lisp_Object.
23808	(enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
23809	Use modified enumfont_t struct.
23810
23811	* w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
23812
23813	* w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
23814	Handle the `hbar' cursor type.
23815	(x_display_and_set_cursor): Handle the HBAR_CURSOR case.
23816
23817	* w32fns.c (Qhbar): New variable.
23818	(x_specified_cursor_type): Use it.
23819
238202002-05-21  Ken Raeburn  <raeburn@gnu.org>
23821
23822	* w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
23823	now, when the address is needed.
23824
238252002-05-21  Colin Walters  <walters@gnu.org>
23826
23827	* Makefile.in (shortlisp): Add font-core.el.
23828
238292002-05-20  Richard M. Stallman  <rms@gnu.org>
23830
23831	* buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
23832
23833	* keyboard.c (read_char_minibuf_menu_prompt): Don't list
23834	equivalent key bindings here.
23835
238362002-05-20  Ken Raeburn  <raeburn@gnu.org>
23837
23838	Change symbol structure to contain a lisp object for the symbol
23839	name:
23840	* lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
23841	object field named "xname".
23842	(SYMBOL_NAME): New macro.
23843	* abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
23844	name field.
23845	* alloc.c (Fmake_symbol): Set symbol xname field instead of name.
23846	(mark_object, gc_sweep): Use symbol xname field and XSTRING
23847	instead of name field.
23848	* buffer.c (buffer_slot_type_mismatch): Use XSTRING and
23849	SYMBOL_NAME instead of XSYMBOL and name field.
23850	* callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
23851	instead of XSYMBOL and name field.
23852	* charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
23853	and SYMBOL_NAME instead of XSYMBOL and name field.
23854	* coding.c (Fread_coding_system, code_convert_region1)
23855	(code_convert_string1, code_convert_string_norecord)
23856	(Ffind_operation_coding_system): Use SYMBOL_NAME instead of
23857	XSYMBOL and name field.
23858	* data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
23859	(Fmake_variable_buffer_local, Fmake_local_variable)
23860	(Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
23861	of XSYMBOL and name field.
23862	* editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
23863	XSYMBOL and name field.
23864	* emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
23865	instead of XSYMBOL and name field.
23866	* eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
23867	XSYMBOL and name field.
23868	* fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
23869	Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
23870	* fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
23871	instead of XSYMBOL and name field.
23872	* keyboard.c (echo_char, record_char, parse_modifiers_uncached)
23873	(parse_modifiers, apply_modifiers, Fevent_convert_list)
23874	(parse_solitary_modifier, Fexecute_extended_command):
23875	Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
23876	* keymap.c (silly_event_symbol_error, Fsingle_key_description)
23877	(Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
23878	of XSYMBOL and name field.
23879	(describe_command, describe_translation): Use SYMBOL_NAME and
23880	assignment instead of XSYMBOL and name field and XSETSTRING.
23881	* lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
23882	instead of XSYMBOL and name field.
23883	(Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
23884	name field and XSETSTRING.
23885	* macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
23886	of XSYMBOL and name field.
23887	* minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
23888	assignment instead of XSYMBOL and name field and XSETSTRING.
23889	* print.c (print_error_message, print_object): Use SYMBOL_NAME and
23890	XSTRING instead of XSYMBOL and name field.
23891	* process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
23892	and XSTRING instead of XSYMBOL and name field.
23893	* w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
23894	and XSTRING instead of XSYMBOL and name field.
23895	* xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
23896	XSTRING instead of XSYMBOL and name field.
23897	* xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
23898	of XSYMBOL and name field.
23899	* xselect.c (symbol_to_x_atom, x_get_foreign_selection):
23900	Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
23901
239022002-05-19  Ken Raeburn  <raeburn@gnu.org>
23903
23904	* lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
23905	and XCDR real rvalues in most configurations.
23906
23907	* buffer.c (fix_overlays_in_range, fix_overlays_before):
23908	Don't take the address of the cdr part of a cons cell; instead, track
23909	the parent cell and call XSETCDR, or set the variable for the head
23910	of the list if we haven't started down the list yet.
23911
239122002-05-19  Richard M. Stallman  <rms@gnu.org>
23913
23914	* doc.c (reread_doc_file): Don't ask for confirmation.
23915
239162002-05-18  Jason Rumney  <jasonr@gnu.org>
23917
23918	* w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
23919	(xbm_load_image): Use it.
23920	(xbm_load): Ditto.
23921	(xbm_read_bitmap_data): Reverted to xfns.c version.
23922	From David Ponce <david@dponce.com>.
23923
239242002-05-17  Eli Zaretskii  <eliz@is.elta.co.il>
23925
23926	* msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
23927	2.02 and later.
23928
239292002-05-16  Juanma Barranquero  <lektu@terra.es>
23930
23931	* keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
23932
239332002-05-15  Stefan Monnier  <monnier@cs.yale.edu>
23934
23935	* keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
23936	meaningful test.
23937	(read_char_minibuf_menu_prompt): Fix typo.
23938
239392002-05-15  Eli Zaretskii  <eliz@is.elta.co.il>
23940
23941	* eval.c (Fcommandp): Doc fix.
23942
239432002-05-13  Stefan Monnier  <monnier@cs.yale.edu>
23944
23945	* keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
23946	(Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
23947	(Fset_keymap_parent): Gcpro a bit more.
23948	(access_keymap): Gcpro around meta_map call and around the main loop.
23949	(get_keyelt): Gcpro when following indirect references.
23950	(copy_keymap_item): New fun, extracted from Fcopy_keymap.
23951	(copy_keymap_1, Fcopy_keymap): Use it.  Don't copy the parent map.
23952	(Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
23953	Remove useless ad-hoc remap code.
23954
239552002-05-13  Richard M. Stallman  <rms@gnu.org>
23956
23957	* search.c (search_buffer): Give up boyer moore search if inverse
23958	translation change charset_base.
23959
239602002-05-12  Eli Zaretskii  <eliz@is.elta.co.il>
23961
23962	* coding.c (decode_coding) <coding_type_ccl>: If a lone CR
23963	characters is carried over from the previous block of text, adjust
23964	coding->produced to account for the extra character.
23965
239662002-05-11  Andreas Schwab  <schwab@suse.de>
23967
23968	* coding.c (intersection): Keep the elements of the returned list
23969	in the same order as in the first list.
23970
239712002-05-11  Kim F. Storm  <storm@cua.dk>
23972
23973	* keymap.c (current_minor_maps): Fix resizing of cmm_maps;
23974	only update cmm_size if realloc actually succeeds.
23975	Testing with initial size of 2 elements revealed that using
23976	realloc on GNU/Linux would cause a random trap in xmalloc
23977	later on, so I rewrote the code to use malloc/bcopy/free instead
23978	of realloc.
23979
239802002-05-10  Jason Rumney  <jasonr@gnu.org>
23981
23982	* w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
23983
239842002-05-10  Eli Zaretskii  <eliz@is.elta.co.il>
23985
23986	* coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
23987	parens, to ensure correct evaluation order.
23988
239892002-05-10  Kim F. Storm  <storm@cua.dk>
23990
23991	* keymap.c (Vemulation_mode_map_alists): New variable.
23992	(syms_of_keymap): DEFVAR_LISP it.
23993	(current_minor_maps): Process keymap alists in that list before
23994	minor-mode-overriding-map-alist and minor-mode-map-alist.
23995
239962002-05-09  Richard M. Stallman  <rms@gnu.org>
23997
23998	* search.c (Freplace_match): Doc fix.
23999
240002002-05-09  Kim F. Storm  <storm@cua.dk>
24001
24002	* macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
24003	Enlarge cursor rectangle drawn around image with non-zero relief.
24004
24005	* w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
24006	Enlarge cursor rectangle drawn around image with non-zero relief.
24007
24008	* xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
24009	Enlarge cursor rectangle drawn around image with non-zero relief.
24010
240112002-05-07  Eli Zaretskii  <eliz@is.elta.co.il>
24012
24013	* xselect.c (lisp_data_to_selection_data): Don't set selection
24014	type if comes from the Lisp object's car.  If the selection
24015	contains a pure ASCII text, always return QSTRING as its type.
24016
240172002-05-06  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24018
24019	* mac.c (mac-cut-function): Doc fix.
24020
240212002-05-05  Richard M. Stallman  <rms@gnu.org>
24022
24023	* s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
24024
240252002-05-04  Jason Rumney  <jasonr@gnu.org>
24026
24027	* keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
24028	for event-click-count.
24029
24030	* process.c (init_process): Only add server subfeature if we can
24031	use non-blocking I/O.
24032
240332002-05-04  Andrew Choi  <akochoi@shaw.ca>
24034
24035	* macterm.c (XTread_socket): Call WaitNextEvent once instead of
24036	repeatedly.
24037
240382002-05-03  Jason Rumney  <jasonr@gnu.org>
24039
24040	* process.c (Fmake_network_process): Only support server sockets
24041	when we can make them non-blocking.
24042
24043	* s/ms-w32.h (HAVE_SELECT): Define.
24044
24045	* w32.h (FILE_NDELAY): New flag.
24046
24047	* w32.c (sys_getpeername, fcntl): New functions.
24048	(_sys_read_ahead): Temporarily block on non-blocking sockets.
24049
24050	* w32proc.c: Include sys/file.h.
24051
240522002-05-03  Colin Walters  <walters@verbum.org>
24053
24054	* callproc.c (Vgame_score_directory): Renamed to
24055	Vshared_game_score_directory.
24056
240572002-04-30  Richard M. Stallman  <rms@gnu.org>
24058
24059	* s/gnu.h [emacs]: Include stdio.h.
24060	(GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
24061
24062	* eval.c (do_autoload): Error if called while preparing to dump.
24063
24064	* fns.c (Frequire): Error if need to load while preparing to dump.
24065
240662002-04-28  Colin Walters  <walters@verbum.org>
24067
24068	* callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
24069	Default to "~/.emacs.d/games".
24070
240712002-04-29  Stefan Monnier  <monnier@cs.yale.edu>
24072
24073	* lread.c (openp): Change arg exec_only to predicate.
24074	(build_load_history): Use XCAR/XCDR.
24075	(Flocate_file_internal): New fun.
24076	(syms_of_lread): Defsubr it.
24077	(Fload): Update call to openp.
24078
24079	* lisp.h (openp): Update prototype.
24080
24081	* xfns.c (x_create_bitmap_from_file, x_find_image_file):
24082	* w32proc.c (sys_spawnve):
24083	* w32fns.c (x_create_bitmap_from_file, x_find_image_file):
24084	* w32.c (check_windows_init_file):
24085	* sound.c (Fplay_sound_internal):
24086	* process.c (Fstart_process):
24087	* macfns.c (x_create_bitmap_from_file, x_find_image_file):
24088	* mac.c (run_mac_command):
24089	* emacs.c (init_cmdargs):
24090	* callproc.c (Fcall_process): Update call to openp.
24091
24092	* textprop.c (remove_properties): Don't use XCAR without CONSP.
24093
24094	* xterm.c (XTread_socket): Disable the Xutf8LookupString code.
24095
240962002-04-29  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24097
24098	* dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
24099	(DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
24100
241012002-04-28  Richard M. Stallman  <rms@gnu.org>
24102
24103	* minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
24104
24105	* eval.c (Fcommandp): New arg for_call_interactively.
24106	* lisp.h (Fcommandp): Declare new arg.
24107
241082002-04-28  Jason Rumney  <jasonr@gnu.org>
24109
24110	* w32proc.c (syms_of_w32proc): Get true file attributes by default.
24111
24112	* w32.c (stat, fstat): Use file index information to generate
24113	inodes for directories where available.
24114
241152002-04-26  Andrew Choi  <akochoi@shaw.ca>
24116
24117	* Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
24118	[HAVE_CARBON]: Include Mac object files.
24119
24120	* alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
24121	fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
24122	termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
24123	MAC_OSX, and MAC_OS instead of macintosh.
24124
24125	* editfns.c [MAC_OS8]: Include stdio.h.
24126
24127	* emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
24128
24129	* fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
24130	Apple Monaco.
24131
24132	* process.c (QCfamily, QCfilte): Declare extern.
24133	(wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
24134	calling select.
24135
24136	* termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
24137
24138	* tparam.c [MAC_OSX]: Don't define BC and UP.
24139
24140	* config.in [HAVE_CARBON]: Add.
24141
24142	* mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
24143	Move here from mac/src and mac/inc.
24144
24145	* s/darwin.h, m/powermac.h, unexmacosx.c: New files.
24146
241472002-04-26  Gerd Moellmann  <gerd@gnu.org>
24148
24149	* xterm.c (x_draw_phys_cursor_glyph): Undo last change.
24150	Compute phys_cursor_width from the x position returned
24151	by x_draw_glyhs, which is cheaper.
24152	(x_display_and_set_cursor): Compute the buffer-local value
24153	of `cursor-in-non-selected-windows' only when needed.
24154
241552002-04-25  Gerd Moellmann  <gerd@gnu.org>
24156
24157	* xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
24158	cursor on a stretch glyph has a width that depends on
24159	x_stretch_cursor_p.
24160
241612002-04-25  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24162
24163	* abbrev.c (abbrev-start-location): Doc fix.
24164
24165	* indent.c (Fvertical_motion): Fix last change.
24166
241672002-04-25  Gerd Moellmann  <gerd@gnu.org>
24168
24169	* indent.c (Fvertical_motion): Move to the start of the line
24170	containing PT before moving up or down.
24171
241722002-04-24  Gerd Moellmann  <gerd@gnu.org>
24173
24174	* dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
24175	case of writing a whole row, more or less analogous to the case of
24176	writing only parts of a row.
24177
24178	* xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
24179	0 for NO_CURSOR.
24180
24181	* xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
24182
241832002-04-23  Colin Walters  <walters@verbum.org>
24184
24185	* buffer.c (syms_of_buffer): Doc fix.
24186
241872002-04-23  Gerd Moellmann  <gerd@gnu.org>
24188
24189	* xterm.c (notice_overwritten_cursor): Handle the special case
24190	of the cursor being in the first blank non-text line at the
24191	end of a window.
24192
24193	* xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
24194	(x_draw_phys_cursor_glyph): Set phys_cursor_width here.
24195	(x_display_and_set_cursor): Don't set phys_cursor_width here, for
24196	bar cursors only, to make phys_cursor_width contain what its name
24197	suggests.
24198	(notice_overwritten_cursor): Consider the cursor image erased if
24199	the output area intersects the cursor image in y-direction.
24200
242012002-04-23  Simon Marshall  <simon@gnu.org>
24202
24203	* xfns.c (x_set_mouse_color): Change default for cross_cursor
24204	to XC_hand2.
24205
242062002-04-23  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24207
24208	* xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
24209
242102002-04-22  Kim F. Storm  <storm@cua.dk>
24211
24212	* textprop.c (remove_properties): Fixed trap for malformed plist.
24213
242142002-04-22  Richard M. Stallman  <rms@gnu.org>
24215
24216	* cmds.c (Fend_of_line): Handle intangible text in mid line.
24217
24218	* window.c (make_window): Initialize height_fixed_p,
24219	last_cursor_off_p, and p->cursor_off_p slots.
24220
242212002-04-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24222
24223	* fns.c (use-dialog-box): Doc fix.
24224
242252002-04-19  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24226
24227	* xterm.c (note_mode_line_or_margin_highlight): Remove unused
24228	variables `row', `i' and `area'.
24229	(XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
24230	toolkit library.
24231
242322002-04-19  Stefan Monnier  <monnier@cs.yale.edu>
24233
24234	* xfaces.c (clear_font_table): Don't free the default font of
24235	a frame even if it's on another display.
24236	(Finternal_set_lisp_face_attribute): Don't use XFRAME on something
24237	that could be Qt.
24238
242392002-04-19  Juanma Barranquero  <lektu@terra.es>
24240
24241	* indent.c (Fmove_to_column): Remove unused local variable
24242	`next_boundary_byte'.
24243	(current_column_1): Likewise.
24244
242452002-04-19  Eli Zaretskii  <eliz@is.elta.co.il>
24246
24247	* msdos.c (Qhbar): New variable.
24248	(syms_of_msdos): Intern and staticpro it.
24249	(IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
24250	cursor type.
24251
242522002-04-19  Dave Lambert  <dlambert@acm.org>
24253
24254	Theses change implement an underscore-like (`hbar') cursor.
24255
24256	* xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
24257
24258	* xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
24259	Handle the `hbar' cursor type.
24260	(x_display_and_set_cursor): Handle the HBAR_CURSOR case.
24261
24262	* xfns.c (Qhbar): New variable.
24263	(syms_of_xfns): Intern and staticpro it.
24264	(x_specified_cursor_type): Handle `hbar' cursor.
24265
24266	* s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
24267	not defined.
24268
242692002-04-18  Richard M. Stallman  <rms@gnu.org>
24270
24271	* textprop.c (remove_properties): New arg LIST allows scanning
24272	either a list or a plist.
24273	(interval_has_some_properties_list): New function, like
24274	interval_has_some_properties using list instead of plist.
24275	All callers changed.
24276	(Fremove_list_of_text_properties): New function.
24277	(syms_of_textprop): Defsubr it.
24278
242792002-04-17  Eli Zaretskii  <eliz@is.elta.co.il>
24280
24281	* s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
24282
242832002-04-17  Juanma Barranquero  <lektu@terra.es>
24284
24285	* indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
24286
242872002-04-17  Eli Zaretskii  <eliz@is.elta.co.il>
24288
24289	* window.c (coordinates_in_window): Don't report on margin area
24290	if its width is zero.
24291
242922002-04-16  Jason Rumney  <jasonr@gnu.org>
24293
24294	* w32fns.c (Fx_file_dialog): Decode file name before using.
24295
24296	* w32term.c (construct_drag_n_drop): Likewise.
24297
242982002-04-16  Eli Zaretskii  <eliz@is.elta.co.il>
24299
24300	* puresize.h (BASE_PURESIZE): Increase to 830000, since we now
24301	store load-history in pure space.
24302
24303	* s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
24304
243052002-04-16  Stefan Monnier  <monnier@cs.yale.edu>
24306
24307	* xterm.c (Qlatin_1, Qutf_8): New vars.
24308	(syms_of_xterm): Initialize them.
24309	(XTread_socket): Eliminate incorrect optimization that tried to avoid
24310	decoding the output of X*LookupString.
24311	Always use latin-1 to decode the output of XLookupString.
24312	Try Xutf8LookupString if XmbLookupString failed.
24313
24314	* region-cache.c (new_region_cache): Use BEG.
24315
243162002-04-16  Gerd Moellmann  <gerd@gnu.org>
24317
24318	* buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
24319	configuration files.
24320	(mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
24321	returns 0.
24322
243232002-04-15  Andreas Schwab  <schwab@suse.de>
24324
24325	* config.in: Regenerated using autoheader.
24326
24327	* m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
24328	m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
24329	m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
24330	m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
24331	m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
24332	m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
24333	m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
24334	m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
24335	m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
24336	m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
24337	m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
24338	m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
24339	m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
24340	m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
24341	m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
24342	s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
24343	STACK_DIRECTION, now set by autoconf.
24344
243452002-04-14  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24346
24347	* dispnew.c (marginal_area_string): Sort arguments.
24348
24349	* dispextern.h (marginal_area_string): Add prototype.
24350
243512002-04-13  Richard M. Stallman  <rms@gnu.org>
24352
24353	* fileio.c (Finsert_file_contents):
24354	Don't call temp_output_buffer_setup--do just part, by hand.
24355
24356	* coding.c (run_pre_post_conversion_on_str):
24357	Don't call temp_output_buffer_setup--do just part, by hand.
24358
24359	* keyboard.c (command_loop_1): Don't call start_hourglass
24360	or cancel_hourglass when executing a macro.
24361
24362	* marker.c (count_markers): New function.
24363
24364	* xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
24365	grow without limit.  Move recently used elements to the front.
24366
243672002-04-13  Eli Zaretskii  <eliz@is.elta.co.il>
24368
24369	* unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
24370
243712002-04-12  Gerd Moellmann  <gerd@gnu.org>
24372
24373	* xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
24374	rows marginal areas.
24375	(Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
24376	(syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
24377
24378	* dispnew.c (marginal_area_string): Check that glyph row is enabled.
24379
243802002-04-12  Dave Love  <fx@gnu.org>
24381
24382	* dispnew.c (marginal_area_string): New.
24383
24384	* window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
24385	(Qleft_margin, Qright_margin): Declare.
24386	(coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
24387
24388	* xterm.c (note_mode_line_or_margin_highlight): Renamed from
24389	note_mode_line_highlight and extended.
24390
24391	* keyboard.c (Qleft_margin, Qright_margin): Declare.
24392	(make_lispy_event): Deal with mouse events in margins.
24393
243942002-04-12  Stefan Monnier  <monnier@cs.yale.edu>
24395
24396	* msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
24397
24398	* keyboard.c (command_loop_1): Turn off transient-mark-mode rather
24399	than deactivating the mark if tmm is set to `lambda'.
24400	(gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
24401	Use a single event for HELP_EVENT.
24402	(Fexecute_extended_command): Save last_point_position.
24403
244042002-04-12  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24405
24406	* lisp.h (Fpropertize): Add prototype.
24407
24408	* fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
24409
244102002-04-10  Colin Walters  <walters@verbum.org>
24411
24412	* config.in: Add HAVE_SHARED_GAME_DIR.
24413
24414	* callproc.c (Vgame_score_directory): New variable.
24415	(syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
24416
244172002-04-10  Richard M. Stallman  <rms@gnu.org>
24418
24419	* puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
24420
244212002-04-09  Stefan Monnier  <monnier@cs.yale.edu>
24422
24423	* minibuf.c (read_minibuf): Use empty_string.
24424	(Ftry_completion): Allow lambda forms and lists of strings for `alist'.
24425	Short-circuit the search as soon as it "failed".
24426	(Fall_completions): Allow lambda forms and lists of strings for alist.
24427	(Fcompleting_read): Set Qminibuffer_completion_confirm to nil
24428	when require_match is nil.
24429	(Ftest_completion): Rename from `test_completion' and export to elisp.
24430	Call the predicate also when alist is a list.
24431	Obey Vcompletion_regexp_list.
24432	(do_completion, Fminibuffer_complete_and_exit): Use it.
24433	(Fassoc_string): Rename from `assoc_for_completion'.
24434	Allow list of strings as well and export to elisp.
24435
244362002-04-08  Stefan Monnier  <monnier@cs.yale.edu>
24437
24438	* puresize.h (BASE_PURESIZE): Increase to 900KB.
24439
244402002-04-08  Juanma Barranquero  <lektu@terra.es>
24441
24442	* w32.c (sys_accept): Don't hide variable `s'.
24443
244442002-04-05  Gerd Moellmann  <gerd@gnu.org>
24445
24446	* callint.c (Fcall_interactively): Use INTEGERP instead of
24447	NUMBERP for checking Vhistory_length.
24448
244492002-04-05  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24450
24451	* sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
24452	Doc fix to reflect it.
24453
244542002-04-04  Richard M. Stallman  <rms@gnu.org>
24455
24456	* xdisp.c (display_mode_element): New arg RISKY.
24457	Disregard text props found or specified within a variable
24458	that isn't marked risky-local-variable.
24459	(Qrisky_local_variable): New variable.
24460	(syms_of_xdisp): Init and staticpro it.
24461
244622002-04-04  Stefan Monnier  <monnier@cs.yale.edu>
24463
24464	* undo.c (record_point): New fun.
24465	(record_delete, record_insert): Use it.
24466
244672002-04-03  Juanma Barranquero  <lektu@terra.es>
24468
24469	* doc.c (Fdocumentation): Add missing parentheses.
24470	(Fdocumentation_property): Likewise.
24471
244722002-04-03  Stefan Monnier  <monnier@cs.yale.edu>
24473
24474	* doc.c (Fdocumentation, Fdocumentation_property): When the doc
24475	data is 0, just return nil.
24476
244772002-04-03  Eli Zaretskii  <eliz@is.elta.co.il>
24478
24479	* msdos.c (syms_of_msdos): Fix last change with
24480	mouse_autoselect_window.
24481
244822002-04-03  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24483
24484	* w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
24485	mouse_autoselect_window.
24486
244872002-04-02  Stefan Monnier  <monnier@cs.yale.edu>
24488
24489	* keyboard.c (make_lispy_event): Handle unknown keysyms together
24490	with system-specific keysyms.  Use it also for unknown function keys.
24491
24492	* doc.c (reread_doc_file): Return whether reload was attempted.
24493	(Fdocumentation, Fdocumentation_property): Don't try to reload
24494	if the doc is 0 and only ask once.
24495
24496	* Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
24497
244982002-04-02  Eli Zaretskii  <eliz@is.elta.co.il>
24499
24500	* keyboard.c (read_char): If the event was Qselect_window,
24501	restore timer_idleness_start_time to its previous value.
24502
24503	* msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
24504
245052002-04-01  Stefan Monnier  <monnier@cs.yale.edu>
24506
24507	* region-cache.c (new_region_cache): Use BEG.
24508
24509	* marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
24510	Use BEG and BEG_BYTE.
24511
24512	* doc.c (get_doc_string): Return nil if the location is wrong.
24513	(reread_doc_file): New fun.
24514	(Fdocumentation, Fdocumentation_property):
24515	Call it if get_doc_string fails.
24516	(Fsnarf_documentation): Make it work for a dumped Emacs.
24517
24518	* charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
24519	Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
24520
24521	* charset.c (Fstring): Allow 0 arguments.
24522
24523	* xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
24524
24525	* process.c (DATAGRAM_CONN_P, list_processes_1)
24526	(Fprocess_datagram_address, Fset_process_datagram_address)
24527	(Fset_network_process_options, server_accept_connection):
24528	Fix some int/Lisp_Object confusions (thank you union types).
24529
245302002-04-01  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24531
24532	* msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
24533
24534	* w32term.c: Likewise.
24535	(note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
24536
24537	* keyboard.c (Qselect_window): New symbol.
24538	(head_table): Use it.
24539	(keys_of_keyboard): Bound select-window event to handle-select-window.
24540	(kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
24541
24542	* xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
24543	(last_window): New variable.
24544	(XTread_socket): Generate SELECT_WINDOW_EVENTs.
24545	(note_mouse_movement): Remove reimplemented code in #if 0.
24546	(XTread_socket): Generate SELECT_WINDOW_EVENTs only for
24547	Emacs windows.
24548
24549	* termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
24550
245512002-03-31  Gerd Moellmann  <gerd@gnu.org>
24552
24553	* xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
24554	Callers changed.
24555
245562002-03-30  Richard M. Stallman  <rms@gnu.org>
24557
24558	* window.c (window_scroll_pixel_based): Exit the move_it_by_lines
24559	loop whenever it stops making progress.
24560
24561	* widget.c (set_frame_size): Don't call change_frame_size.
24562
245632002-03-30  Gerd Moellmann  <gerd@gnu.org>
24564
24565	* dispnew.c (direct_output_for_insert):
24566	Call mark_window_display_accurate.
24567
245682002-03-29  Jason Rumney  <jasonr@gnu.org>
24569
24570	* w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
24571
245722002-03-29  Eli Zaretskii  <eliz@is.elta.co.il>
24573
24574	* Makefile.in (lread.o): Depend on coding.h.
24575
24576	* lread.c (openp, Fload): Encode the file name before passing it
24577	to `stat', `access', and `emacs_open'.
24578	(openp): GCPRO the encoded file name.  Don't recompute Lisp
24579	strings unnecessarily.
24580
245812002-03-29  Kim F. Storm  <storm@cua.dk>
24582
24583	* fns.c (Flax_plist_put): Doc fix.
24584
245852002-03-28  Miles Bader  <miles@gnu.org>
24586
24587	* process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
24588
245892002-03-27  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24590
24591	* process.c (set-network-process-options): Add usage.
24592	(make-network-process): Doc fix.
24593
245942002-03-26  Eli Zaretskii  <eliz@is.elta.co.il>
24595
24596	* emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
24597
245982002-03-26  Richard M. Stallman  <rms@gnu.org>
24599
24600	* fns.c (Fsubstring_no_properties): New function.
24601	(Flax_plist_get, Flax_plist_put): New functions.
24602	(syms_of_fns): defsubr them.
24603
24604	* xdisp.c (update_menu_bar): Test only update_mode_lines;
24605	don't test or alter w->update_mode_line.
24606
24607	* window.c (Fdisplay_buffer): Doc fix.
24608
246092002-03-24  Richard M. Stallman  <rms@gnu.org>
24610
24611	* regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
24612
246132002-03-24  Gerd Moellmann  <gerd@gnu.org>
24614
24615	* eval.c (Qdeclare, Vmacro_declaration_function): New variables.
24616	(Fdefmacro): Handle `(declare ...)'.
24617	(syms_of_eval) <Qdeclare>: Initialize and staticpro.
24618	(syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
24619
246202002-03-24  Jason Rumney  <jasonr@gnu.org>
24621
24622	* w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
24623	(xbm_file_p): Add prototypes.
24624	(xbm_format, xbm_image_p): Sync with xfns.c.
24625	(reflect_byte): New function.
24626	(xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
24627	(xbm_load_image): Create bitmaps with a depth of 1.
24628	(init_xfns): Enable XBM images.
24629
246302002-03-23  Jason Rumney  <jasonr@gnu.org>
24631
24632	* w32term.c (w32_handle_tool_bar_click): Detect up and down events
24633	correctly.  Do not pass up_modifier to keyboard buffer.
24634
24635	* w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
24636
246372002-03-22  Stefan Monnier  <monnier@cs.yale.edu>
24638
24639	* Makefile.in (bootstrapclean): New target.
24640	(bootstrap-temacs, bootstrap-doc): Remove.
24641	(bootstrap-emacs): Use a bog-standard `temacs'.
24642	Don't bother to build a DOC file.
24643
24644	* sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
24645
24646	* emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
24647	in temacs even if !CANNOT_DUMP.
24648	(standard_args): Keep --no-loadup even if !CANNOT_DUMP.
24649
24650	* alloc.c (check_pure_size): Only output a warning.
24651
246522002-03-22  Jason Rumney  <jasonr@gnu.org>
24653
24654	* w32fns.c (Fx_create_frame): Enable tool-bar when images are
24655	supported.
24656
24657	* w32term.c (zv_bits): Declare as short, for word alignment.
24658	(w32_read_socket) <WM_XBUTTONUP>: Fix last change.
24659	(syms_of_w32term): Define x-use-underline-position-properties.
24660
24661	* w32fns.c (x_set_cursor_color): Set cursor_gc as well.
24662	(clear_image_cache): Block input, fix logic, clear matrices in
24663	all frames that share this cache.
24664
246652002-03-22  Eli Zaretskii  <eliz@is.elta.co.il>
24666
24667	* emacs.c (main): Update the Copyright year in the blurb printed
24668	by "emacs --version".
24669
24670	* xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
24671
24672	* xterm.c (XTread_socket): If XK_ISO_Lock and
24673	XK_ISO_Last_Group_Lock are defined, handle keysyms between
24674	XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
24675
246762002-03-21  Kim F. Storm  <storm@cua.dk>
24677
24678	* keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
24679	menu-bar bindings in keymap and local-map properties _are_ used.
24680	But try keymap property first in accordance with 2002-01-03 patch.
24681	Added comment describing why this is not always reliable.
24682	(tool_bar_items): Ditto for tool-bar.
24683
246842002-03-21  Jason Rumney  <jasonr@gnu.org>
24685
24686	* w32fns.c (x_clear_image_1): Disable color table code.
24687
246882002-03-21  Kim F. Storm  <storm@cua.dk>
24689
24690	* lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
24691	removed the wrong version of the DEFUN macro; fixed it.
24692
24693	* fns.c (Ffeaturep): Allow subfeature to be a list (test using
24694	Fmember rather than Fmemq).
24695	(Fprovide): Check that subfeatures is a list.
24696
24697	* process.c (QCfeature, QCdatagram): Removed variables.
24698	(QCtype, Qdatagram): New variables.
24699	(network_process_featurep): Removed function.
24700	(Fmake_network_process): Removed :feature check.
24701	Use :type 'datagram instead of :datagram t to create a datagram
24702	socket.  This allows us to add other connection types (e.g. raw
24703	sockets) later in a consistent manner.
24704	(init_process) [subprocess, HAVE_SOCKETS]: Provide list of
24705	supported subfeatures for feature make-network-process.
24706	(syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
24707	Intern and staticpro QCtype and Qdatagram.
24708	(syms_of_process) [!subprocess]: Intern and staticpro QCtype.
24709
24710	* xfns.c (QCtype): Remove duplicate declaration and
24711	initialization (is now declared in process.c).
24712
24713	* w32fns.c (QCtype): Remove duplicate declaration and
24714	initialization (is now declared in process.c).
24715
247162002-03-21  Richard M. Stallman  <rms@gnu.org>
24717
24718	* regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
24719	(CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
24720	when jumping to `fail' to avoid undoing reg changes in the
24721	last iteration of the loop.
24722	(GET_UNSIGNED_NUMBER): Skip spaces around the number.
24723
24724	* Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
24725	Depend on process.h.
24726
247272002-03-20  Jason Rumney  <jasonr@gnu.org>
24728
24729	Most of the following changes are still conditional on HAVE_IMAGES
24730	which is not set by default on Windows.
24731
24732	* emacs.c (main) [WINDOWSNT]: Call init_xfns.
24733
24734	* w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
24735	(Fimage_size, Fimage_mask_p, XPutPixel): New functions.
24736	(four_corners_best, x_clear_image_1, x_clear_image)
24737	(x_alloc_image_color, postprocess_image)
24738	(x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
24739	(x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
24740	(init_xfns, syms_of_w32fns): Initialize image functions and constants.
24741
24742	* w32gui.h (struct XImage): Define.
24743
24744	* w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
24745	extract mouse co-ordinates.
24746
247472002-03-20  Jason Rumney  <jasonr@gnu.org>
24748
24749	* w32.c (init_winsock): Dynamically load new server and UDP
24750	socket functions.
24751	(socket_to_fd): New function.
24752	(sys_socket): Use it.
24753	(sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
24754	(sys_recvfrom, sys_sendto): New wrapper functions.
24755
24756	* process.c (QCfamily, QCfilter): Remove duplicate declaration
24757	and initialization.
24758
24759	* makefile.w32-in (LIBS): Remove $(WSOCK32).
24760
247612002-03-20  Eli Zaretskii  <eliz@is.elta.co.il>
24762
24763	* process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
24764	Don't use "sun" as a variable, it's a predefined constant on Sun
24765	machines.
24766
247672002-03-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24768
24769	* bytecode.c (Fbyte_code): Revert last change.
24770
247712002-03-19  Kim F. Storm  <storm@cua.dk>
24772
24773	* makefile.w32-in (LIBS): Add $(WSOCK32).
24774	From David Ponce <dponce@voila.fr>.
24775
247762002-03-18  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24777
24778	* process.c (wait_reading_process_input): Move variables `pname'
24779	and `pnamelen' down where they are used.
24780
24781	* bytecode.c (Fbyte_code): Discard unused computed value to
24782	prevent gcc warning.
24783
24784	* lisp.h (Fplist_member): Add prototype.
24785
247862002-03-18  Kim F. Storm  <storm@cua.dk>
24787
24788	* config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
24789	HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
24790
24791	* process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
24792	Remove explicit GNU_LINUX settings for datagram support.
24793
247942002-03-18  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24795
24796	* process.c (Fmake_network_process): Remove unused variable `sa'.
24797	Doc fix.  Add usage:.
24798	(set_socket_options): Remove unused variables `optnum' and `opttype'.
24799
248002002-03-17  Richard M. Stallman  <rms@gnu.org>
24801
24802	* xdisp.c (cursor_type_changed): New variable.
24803	(redisplay_internal): Redisplay all windows if cursor_type_changed.
24804	Clear it when clearing windows_or_buffers_changed.
24805	(try_cursor_movement, redisplay_window, try_window_id)
24806	(try_window_reusing_current_matrix): Test cursor_type_changed
24807	along with windows_or_buffers_changed.
24808
24809	* window.h (cursor_type_changed): New variable.
24810
24811	* xfns.c (x_set_cursor_type): Set cursor_type_changed,
24812	not update_mode_lines, and always set it to 1.
24813
24814	* xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
24815	if no frames needed redrawing.
24816
248172002-03-17  Kim F. Storm  <storm@cua.dk>
24818
24819	The following changes add support for network server processes,
24820	datagram connections, and local (unix) sockets.
24821
24822	* process.h (struct Lisp_Process): New member log.
24823	Doc fix: Member command used to indicate stopped network process.
24824	Doc fix: Member childp contains plist for network process.
24825	Doc fix: Member kill_without_query is inverse of query-on-exit flag.
24826
24827	* process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
24828	(QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
24829	(QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature): New
24830	variables.
24831	(NETCONN1_P): New macro.
24832	(DATAGRAM_SOCKETS): New conditional symbol.
24833	(datagram_address): New array.
24834	(DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
24835	(status_message): Use concat3.
24836	(Fprocess_status): Add `listen' status to doc string.  Return
24837	`stop' for a stopped network process.
24838	(Fset_process_buffer): Update contact plist for network process.
24839	(Fset_process_filter): Ditto.  Don't enable input for stopped
24840	network processes.  Server must listen, even if filter is t.
24841	(Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
24842	New functions.
24843	(Fprocess_kill_without_query): Removed.  Now defined in simple.el.
24844	(Fprocess_contact): Added KEY argument.  Handle datagrams.
24845	(list_processes_1): Optionally show only processes with the query
24846	on exit flag set.  Dynamically adjust column widths.  Omit tty
24847	column if not needed.  Report stopped network processes.  Identify
24848	server and datagram network processes.
24849	(Flist_processes): New optional arg `query-only'.
24850	(conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
24851	(conv_lisp_to_sockaddr, set_socket_options)
24852	(network_process_featurep, unwind_request_sigio): New helper
24853	functions.
24854	(Fprocess_datagram_address, Fset_process_datagram_address):
24855	(Fset_network_process_options): New lisp functions.
24856	(Fopen_network_stream): Removed.  Now defined in simple.el.
24857	(Fmake_network_process): New lisp function.  Code is based on
24858	previous Fopen_network_stream, but heavily reworked with new
24859	property list based argument list, support for datagrams, server
24860	processes, and local sockets in addition to old client-only
24861	functionality.
24862	(server_accept_connection): New function.
24863	(wait_reading_process_input): Use it to handle incoming connects.
24864	Do not enable input on a new connection if process is stopped.
24865	(read_process_output): Handle datagram sockets.  Use 2k buffer for
24866	them.
24867	(send_process): Handle datagram sockets.
24868	(Fstop_process, Fcontinue_process): Apply to network processes.  A
24869	stopped network process is indicated by setting command field to t.
24870	(Fprocess_send_eof): No-op if datagram connection.
24871	(Fstatus_notify): Don't read input for a stream server socket or a
24872	stopped network process.
24873	(init_process): Initialize datagram_address array.
24874	(syms_of_process): Intern and staticpro new variables, defsubr new
24875	functions.
24876
248772002-03-16  Jason Rumney  <jasonr@gnu.org>
24878
24879	* w32fns.c (w32_to_all_x_charsets): Return correct type in
24880	startup case.
24881
248822002-03-16  Richard M. Stallman  <rms@gnu.org>
24883
24884	* xdisp.c (redisplay_internal, redisplay_windows):
24885	Use list_of_error to call internal_condition_case_1.
24886	(safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
24887	so as to catch all errors with no possibility of debugger redisplay.
24888	(list_of_error): New variable.
24889	(syms_of_xdisp): Init and staticpro it.
24890
24891	* print.c (print_object): Delete `\ ' from printed rep of frame.
24892
248932002-03-15  Eli Zaretskii  <eliz@is.elta.co.il>
24894
24895	* msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
24896	until its implementation is fixed.
24897
248982002-03-14  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
24899
24900	* xfns.c (png_load): Remove unused variable `gamma_str'.
24901
249022002-03-14  Richard M. Stallman  <rms@gnu.org>
24903
24904	* xfns.c (x_real_positions): Handle failure in XQueryTree.
24905
249062002-03-14  Miles Bader  <miles@gnu.org>
24907
24908	* intervals.c (adjust_for_invis_intang): New function.
24909	(set_point_both): Use `adjust_for_invis_intang' to do most of the
24910	work for dealing with invisible+intangible regions.  Do so before
24911	and after both forward and backward movements, to handle both
24912	front-sticky and rear-sticky cases.
24913	* textprop.c (text_property_stickiness): Function moved here from
24914	`editfns.c'.
24915	* intervals.h (text_property_stickiness): New declaration.
24916	* editfns.c (char_property_eq): Function removed.
24917	(text_property_stickiness): Function moved to `textprop.c'.
24918
249192002-03-13  Jason Rumney  <jasonr@gnu.org>
24920
24921	* config.in: Add STRFTIME_NO_POSIX2.
24922
24923	* strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
24924	and %OX when underlying strftime does not.
24925
249262002-03-13  Stefan Monnier  <monnier@cs.yale.edu>
24927
24928	* xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
24929	Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
24930	line) to avoid annoying flicker.
24931	(xm_scroll_callback): Get rid of the now unnecessary kludge.
24932	(XTread_socket): Mark it static.
24933
24934	* xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
24935
249362002-03-13  Kim F. Storm  <storm@cua.dk>
24937
24938	* puresize.h (BASE_PURESIZE): Increase to 775000.
24939
249402002-03-12  Juanma Barranquero  <lektu@terra.es>
24941
24942	* editfns.c (syms_of_editfns): Fix typo.
24943
249442002-03-12  Gerd Moellmann  <gerd@gnu.org>
24945
24946	* xsmfns.c: Include stdio.h because termhooks.h needs it.
24947	Include termopt.h for interrupt_input.
24948
249492002-03-11  Andreas Schwab  <schwab@suse.de>
24950
24951	* coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
24952
249532002-03-11  Gerd Moellmann  <gerd@gnu.org>
24954
24955	* xterm.c (note_mouse_movement): Put code for
24956	x_autoselect_window_p in #if 0.
24957
24958	* lread.c (Fload): Don't assume that message_with_string uses the
24959	string it is given like a C string.
24960
249612002-03-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
24962
24963	* xterm.h (x_session_check_input, x_session_initialize): Declare.
24964
24965	* xterm.c (XTread_socket): Add call to x_session_check_input and
24966	x_session_have_connection.
24967	(x_initialize): Add call to x_session_initialize.
24968
24969	* termhooks.h (enum event_kind): Add save_session_event.
24970
24971	* keyboard.c: Add Emacs event save_session_event.
24972
24973	* emacs.c (main): Add call to syms_of_xsmfns.
24974
24975	* lisp.h (syms_of_xsmfns): Declare extern.
24976
24977	* config.in: Add HAVE_X_SM.
24978
24979	* Makefile.in (LIBXT): Add -lSM -lICE
24980	if HAVE_X_SM and not USE_X_TOOLKIT.
24981	(XOBJ): New file xsmfns.c added.
24982
24983	* xsmfns.c: New file for X session management.
24984
249852002-03-09  Jason Rumney  <jasonr@gnu.org>
24986
24987	* fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
24988	read-only when setting modified time.
24989
249902002-03-08  Gerd Moellmann  <gerd@gnu.org>
24991
24992	* xdisp.c (move_it_vertically_backward): At the end of the function,
24993	when moving forward by lines, treat terminal frames specially.
24994
24995	* keyboard.c (echo_char): Make sure to add a separator between
24996	keys even if echo_dash hasn't been called.
24997
24998	* xdisp.c: Use new string macros.
24999	(update_echo_area): Pass number of bytes to message3 instead of
25000	number of chars.
25001	(set_message_1): Don't access a string's size_byte directly.
25002	(decode_mode_spec_coding): Use number of bytes of eoltype string
25003	instead number of chars.
25004
25005	* lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
25006
250072002-03-08  Juanma Barranquero  <lektu@terra.es>
25008
25009	* w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
25010	24-bit.
25011
250122002-03-06  Jason Rumney  <jasonr@gnu.org>
25013
25014	* w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
25015
250162002-03-06  Gerd Moellmann  <gerd@gnu.org>
25017
25018	* keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
25019	(cancel_echoing, echo_length, echo_truncate): Changed to
25020	work with new kboard definition.
25021	(echo_now): Use message3_nolog instead of message2_nolog.
25022
25023	* alloc.c (mark_kboards): Mark echo_string.
25024
25025	* keyboard.h (ECHOBUFSIZE): Removed.
25026	(struct kboard): Member echoptr removed, member echobuf renamed
25027	to echo_string.
25028
25029	* xdisp.c (message_with_string): Use Fformat instead of doprnt and
25030	message3 instead of message2 to display the message using STRING's
25031	text properties.
25032
250332002-03-05  Andreas Schwab  <schwab@suse.de>
25034
25035	* xdisp.c (hscroll_margin): Change to EMACS_INT.
25036
250372002-03-05  Per Abrahamsen  <abraham@dina.kvl.dk>
25038
25039	* frame.c (default-frame-alist): Explain that setting it doesn't
25040	affect existing frames.
25041
250422002-03-05  Stefan Monnier  <monnier@cs.yale.edu>
25043
25044	* indent.c (skip_invisible): Fix my brain fart.
25045
25046	* dispnew.c (sit_for): Don't wait if executing a kbd macro.
25047
250482002-03-04  Stefan Monnier  <monnier@cs.yale.edu>
25049
25050	* dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
25051	* alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
25052	* lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
25053	* window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
25054	and variables to use EMACS_INT instead of just int.
25055
25056	* buffer.c (syms_of_buffer): Allow non-string `mode-name'.
25057
250582002-03-04  Eli Zaretskii  <eliz@is.elta.co.il>
25059
25060	* sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
25061	environment, pass it down with corrected value.
25062
250632002-03-04  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25064
25065	* lread.c (read_filtered_event): Do not call start_hourglass
25066	before returning.
25067
250682002-03-04  Juanma Barranquero  <lektu@terra.es>
25069
25070	* w32term.c (x_display_and_set_cursor): Fix typo.
25071
250722002-03-03  Richard M. Stallman  <rms@gnu.org>
25073
25074	* fileio.c (Fmake_temp_name): Doc fix.
25075
250762002-03-03  Gary Wong  <gtw@gnu.org>
25077
25078	* termcap.c [!emacs]: Replace ospeed for building standalone
25079	libtermcap, for binary compatibility.
25080
25081	* tparam.c [!emacs]: Move #define of bcopy to after string.h.
25082
250832002-03-03  Richard M. Stallman  <rms@gnu.org>
25084
25085	* xrdb.c (file_p): Rename arg `path' to `filename'.
25086
25087	* abbrev.c (Fexpand_abbrev): Increment plist as use count
25088	only if it is an integer.
25089
25090	* xfns.c (png_load): Set screen_gamma based on f->gamma.
25091	If png_get_sRGB gives an answer, call png_set_gamma
25092	using the default image gamma value.
25093
25094	* lread.c (read1): When reading from a file, default string to
25095	multibyte only if it has some multibyte characters.
25096
25097	* print.c (print_object): Output multibyte chars 128...255
25098	using \x even if ! print_escape_multibyte.
25099
25100	* xdisp.c (display_mode_element): Move the places where
25101	bytepos, charpos, this, and lisp_string are set.
25102	Use lisp_string to set bytepos.
25103
25104	* xdisp.c (redisplay_internal):
25105	Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
25106
25107	* xdisp.c (display_mode_element): Merge properties specified with
25108	:propertize onto those that come with the string.
25109
251102002-03-03  Eli Zaretskii  <eliz@is.elta.co.il>
25111
25112	* xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
25113	automatic-hscrolling.  Users changed.
25114	<hscroll-margin>: Renamed from automatic-hscroll-margin.
25115	Users changed.
25116	<hscroll-step>: Renamed from automatic-hscroll-step.  Users changed.
25117
251182002-03-02  Eli Zaretskii  <eliz@is.elta.co.il>
25119
25120	* buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
25121
251222002-03-02  Kim F. Storm  <storm@cua.dk>
25123
25124	* window.c (Fminibuffer_selected_window): New function.
25125	(syms_of_window): Defsubr it.
25126
251272002-03-01  Kim F. Storm  <storm@cua.dk>
25128
25129	* window.h (struct window): New member phys_cursor_width.
25130
25131	* window.c (make_window, replace_window): Init phys_cursor_width.
25132
25133	* xterm.c (x_display_and_set_cursor): Blink box cursor using
25134	hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
25135
25136	* w32term.c (x_display_and_set_cursor): Blink box cursor using
25137	hollow box cursor.  Blink bar cursor using 1 pixel wide bar.
25138
25139	* lisp.h (GCPRO6): New macro.
25140
25141	* process.c (Fopen_network_stream): Use GCPRO6.
25142
251432002-03-01  Kim F. Storm  <storm@cua.dk>
25144
25145	* process.c (Qconnect, Qfailed): New variables.
25146	(syms_of_process): Intern and staticpro them.
25147	(Fprocess_status): Document connect and failed return values.
25148	[NON_BLOCKING_CONNECT]: New conditional.
25149	(connect_wait_mask, num_pending_connects): New variables.
25150	(status_message): Convert Qfailed status.
25151	(Fopen_network_stream): Added support for non-blocking connect.
25152	New optional args: filter, sentinel, non_blocking.  Doc updated.
25153	[HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
25154	(deactivate_process): Handle pending non-blocking connect.
25155	(wait_reading_process_input): Poll for status of non-blocking
25156	connects.  Exec sentinel directly when connect succeeds.
25157	(status_notify): Don't read process output if not yet connected.
25158
251592002-02-28  Kim F. Storm  <storm@cua.dk>
25160
25161	* window.c (minibuf_selected_window): Renamed from
25162	Vminibuf_selected_window.  Users changed.
25163	(syms_of_window): Staticpro it.
25164
251652002-02-26  Kim F. Storm  <storm@cua.dk>
25166
25167	The following changes add a new Vminibuf_selected_window variable
25168	which is similar to Vminibuf_scroll_window, but which is only set
25169	on entry to the minibuffer (from a non-minibuffer window):
25170
25171	* window.c (Vminibuf_selected_window): New variable.
25172	(struct save_window_data): New member minibuf_selected_window.
25173	(Fset_window_configuration): Restore Vminibuf_selected_window.
25174	(Fcurrent_window_configuration): Save Vminibuf_selected_window.
25175	Set minibuf_scroll_window member to nil if minibuf_level is 0.
25176	(compare_window_configurations): Compare minibuf_selected_window.
25177
25178	* window.h (Vminibuf_selected_window): Declare extern.
25179
25180	* minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
25181	entry to minibuffer or on entry from a non-minibuffer window.
25182
25183	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
25184	Vminibuf_selected_window instead of Vminibuf_scroll_window.
25185
25186	* xdisp.c (init_iterator): Compare with Vminibuf_selected_window
25187	instead of Vminibuf_scroll_window when deciding in which window
25188	the region should be highlighted.  Consequently, the region remains
25189	highlighteded even when a completion buffer is also displayed.
25190
251912002-02-26  Eli Zaretskii  <eliz@is.elta.co.il>
25192
25193	* fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
25194
25195	* xselect.c (Qcompound_text_with_extensions): Renamed from
25196	Qcompound_text_no_extensions.
25197	(lisp_data_to_selection_data, syms_of_xselect): Use the new name.
25198
251992002-02-26  Juanma Barranquero  <lektu@terra.es>
25200
25201	* w32proc.c (syms_of_ntproc): Doc fix.
25202
252032002-02-24  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25204
25205	* intervals.h: Include "dispextern.h" unconditionally.
25206
252072002-02-24  Jason Rumney  <jasonr@gnu.org>
25208
25209	* Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
25210	and disp-table.elc.
25211	(lisp): Add emacs-lisp/backquote.elc.
25212
252132002-02-24  Kim F. Storm  <storm@cua.dk>
25214
25215	* keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
25216	The validation of the event type was too strict as it didn't
25217	allow string events; buffer names are used in bindings for
25218	menu-bar-select-buffer (see `menu-bar-update-buffers').
25219
252202002-02-23  Kim F. Storm  <storm@cua.dk>
25221
25222	The following changes rework my patch of 2002-02-06 which
25223	added command remapping by entering the commands directly into
25224	the keymaps.  Now, command remapping uses an explicit `remap'
25225	prefix in the keymaps, i.e. [remap COMMAND].
25226
25227	* keymap.c (Qremap, remap_command_vector): New variables.
25228	(is_command_symbol): Remove function.
25229	(Fdefine_key): No longer accept a symbol for KEY.
25230	Added validation of [remap COMMAND] argument for KEY.
25231	The DEF is no longer required to be a symbol when remapping a command.
25232	(Fremap_command): New function to remap command through keymaps.
25233	(Flookup_key): Perform command remapping initiated by
25234	Fremap_command directly for speed.
25235	(Fkey_binding): Use Fremap_command for command remapping.
25236	(where_is_internal): Handle new command remapping representation.
25237	(syms_of_keymap): Intern Qremap, initialize remap_command_vector,
25238	staticpro them.  Defsubr Fremap_command.
25239
25240	* keymap.h (Fremap_command): Declare extern.
25241	(is_command_symbol): Remove extern.
25242
25243	* keyboard.c (command_loop_1): Use Fremap_command for command
25244	remapping; now try command remapping for all symbols.
25245
252462002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
25247
25248	* coding.h (run_pre_post_conversion_on_str): Add prototype.
25249
252502002-02-23  Jason Rumney  <jasonr@gnu.org>
25251
25252	* w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
25253	on the string before encoding it.
25254	(Fw32_get_clipboard_data): Run post-read-conversion on the string
25255	after decoding it.
25256
25257	* w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
25258
252592002-02-23  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25260
25261	* w32term.c (enter_timestamp): Remove unused static variable to
25262	prevent warning.
25263
25264	* xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
25265
252662002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>
25267
25268	* w16select.c (Fw16_get_clipboard_data): Fix last change.
25269
25270	* xselect.c (selection_data_to_lisp_data): Fix last change.
25271
252722002-02-22  Jason Rumney  <jasonr@gnu.org>
25273
25274	* w32term.h (struct w32_output): New member menu_command_in_progress.
25275
25276	* w32menu.c (menubar_selection_callback): Free the menu and
25277	clear the menu_command_in_progress flag.
25278
25279	* w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
25280	(menu_free_timer): New variable.
25281	(MENU_FREE_ID, MENU_FREE_DELAY): New constants.
25282	(w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
25283	<WM_EXITMENULOOP>: Delay before freeing menu.  Do nothing if a
25284	menu command is in progress.
25285	<WM_COMMAND>: Set the menu_command_in_progress flag.
25286	Kill any menu_free_timer that is running.
25287
25288	* w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
25289	Call ExtTextOutA rather than ExtTextOut.
25290
252912002-02-22  Eli Zaretskii  <eliz@gnu.org>
25292
25293	* puresize.h (BASE_PURESIZE): Increase to 755000.
25294
252952002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
25296
25297	* w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
25298	on the string before encoding it.
25299	(Fw16_get_clipboard_data): Run post-read-conversion on the string
25300	after decoding it.
25301
253022002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>
25303
25304	Support for ICCCM Extended Segments in X selections:
25305
25306	* xselect.c <Qcompound_text_no_extensions>: New variable.
25307	(syms_of_xselect): Intern and staticpro it.
25308	(selection_data_to_lisp_data): Run post-read-conversion on decoded
25309	selection text.
25310	(lisp_data_to_selection_data): If next-selection-coding-system is
25311	compound-text-no-extensions, set the type of selection to be
25312	compound-text.
25313
25314	* xterm.h (x_encode_text): Update prototype.
25315
25316	* xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
25317	callers changed.  If SELECTIONP is non-zero, run the
25318	pre-write-conversion function before encoding the selection text.
25319
253202002-02-21  Kim F. Storm  <storm@cua.dk>
25321
25322	* frame.c (syms_of_frame): Change mouse-highlight default to t.
25323
25324	* keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
25325	Correct composing of language-change event.
25326
253272002-02-20  Kim F. Storm  <storm@cua.dk>
25328
25329	* keyboard.c (menu_bar_items): Don't include keymap or local-map
25330	bindings at PT when building menu (the menu is not updated often
25331	enough for this to work reliable).
25332	(tool_bar_items): Likewise.
25333	(current_active_maps): Removed unused (and buggy) function.
25334
253352002-02-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25336
25337	* xfns.c (gif_load): Use correct width and height for GIF images.
25338
253392002-02-19  Eli Zaretskii  <eliz@is.elta.co.il>
25340
25341	* floatfns.c (Fatan): Accept an optional second arg and call
25342	atan2 if passed 2 args.
25343
253442002-02-18  Jason Rumney  <jasonr@gnu.org>
25345
25346	* w32term.c (glyph_rect): Determine the row and glyph more precisely.
25347
253482002-02-17  Jason Rumney  <jasonr@gnu.org>
25349
25350	* w32term.c (x_autoselect_window_p): New variable.
25351	(syms_of_w32term): DEFVAR_BOOL and initialize it.
25352	(note_mouse_movement): Use it.
25353
25354	* w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
25355
25356	* w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
25357
25358	* w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
25359	New variables.
25360	(syms_of_w32fns): Intern and staticpro them.
25361	(x_frame_parms) <"fullscreen">: New parameter.
25362	(x_fullscreen_move, x_set_fullscreen): New functions.
25363	(x_set_frame_parameters): Support Qfullscreen.
25364	(x_real_positions): Save x/y_pixels_diff frame params.
25365	(x_figure_window_size): Support full-screen frames.
25366	(Fx_create_frame): Default the fullscreen parameter.
25367
25368	* w32term.c (x_check_fullscreen, x_check_fullscreen_move)
25369	(x_fullscreen_adjust): New functions.
25370	(w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
25371	fullscreen.  Call x_check_fullscreen_move, and set the
25372	want_fullscreen member of output_data.w32
25373	<WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
25374
25375	* w32term.h: New enum for FULLSCREEN_* constants.
25376	(struct w32_output): New members want_fullscreen, x_pixels_diff,
25377	y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
25378	(x-fullscreen-adjust): New prototype.
25379
253802002-02-17  Kim F. Storm  <storm@cua.dk>
25381
25382	* frame.c (Vmouse_highlight): New variable.
25383	(syms_of_frame): DEFVAR_LISP it.
25384
25385	* frame.h (Vmouse_highlight): Declare extern.
25386
25387	* xterm.h (struct x_display_info): Add mouse_face_hidden.
25388
25389	* xterm.c (disable_mouse_highlight): Removed variable.
25390	(note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
25391	(show_mouse_face): Don't show highlight if mouse_face_hidden is set.
25392	(XTread_socket): Turn mouse_face_hidden off after mouse movement,
25393	and on after keyboard input.
25394	(x_term_init): Initialize mouse_face_hidden.
25395
25396	* msdos.h (struct display_info): Add mouse_face_hidden.
25397
25398	* msdos.c (disable_mouse_highlight): Removed variable.
25399	(show_mouse_face): Don't show highlight if mouse_face_hidden is set.
25400	(IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
25401	(internal_terminal_init): Initialize mouse_face_hidden.
25402	(dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
25403	and on after keyboard input.
25404
25405	* w32term.h (struct w32_display_info): Add mouse_face_hidden.
25406
25407	* w32term.c (disable_mouse_highlight): Removed variable.
25408	(note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
25409	(show_mouse_face): Don't show highlight if mouse_face_hidden is set.
25410	(w32_read_socket): Turn mouse_face_hidden off after mouse movement,
25411	and on after keyboard input.
25412	(w32_initialize_display_info): Initialize mouse_face_hidden.
25413
254142002-02-16  Eli Zaretskii  <eliz@is.elta.co.il>
25415
25416	* msdos.c (last_mouse_window): New variable.
25417	(dos_rawgetc): Fix last change--if the mouse is in the same window
25418	as recorded in last_mouse_window, don't select this window.
25419
25420	* Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
25421
25422	* msdos.c (x_autoselect_window_p): New variable.
25423	(syms_of_msdos): Defvar it.
25424	(dos_rawgetc): If x_autoselect_window_p is set, select the window in
25425	which the last mouse movement occured, unless it is already selected.
25426
25427	* xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
25428	New variables.
25429	(syms_of_xdisp): DEVFAR them.
25430	(hscroll_window_tree): Use automatic_hscroll_margin and
25431	Vautomatic_hscroll_step to compute the amount of window scrolling.
25432
254332002-02-16  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25434
25435	* xterm.c (x-autoselect-window): New variable.
25436	(note_mouse_movement): Use it.
25437
25438	* keyboard.c: Do not include "systime.h" twice.
25439
254402002-02-15  Andreas Schwab  <schwab@suse.de>
25441
25442	* puresize.h (PURESIZE_RATIO): Increase to 9/5.
25443
25444	* alloc.c (NSTATICS): Increase to 1280.
25445
254462002-02-15  Kai Gro,A_(Bjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>
25447
25448	* alloc.c (NSTATICS): Bump to 1026.
25449
25450	* xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
25451	(Vx_super_keysym): New variables.
25452	(syms_of_xterm): DEFVAR_LISP them.
25453	(x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
25454	variables to determine which keys to use for the various modifiers.
25455
254562002-02-13  Kim F. Storm  <storm@cua.dk>
25457
25458	* window.c (Vmode_line_in_non_selected_windows): Removed.
25459	(mode_line_in_non_selected_windows): New variable.
25460	(syms_of_window): DEFVAR_BOOL it.
25461
25462	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
25463	Use mode_line_in_non_selected_windows.
25464	(mode_line_in_non_selected_windows): Declare extern.
25465	(Vmode_line_in_non_selected_windows): Removed extern.
25466
254672002-02-13  Richard M. Stallman  <rms@gnu.org>
25468
25469	* keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
25470	(Fthis_single_command_keys, Fthis_single_command_raw_keys)
25471	(Fclear_this_command_keys): Doc fixes.
25472
25473	* xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
25474	(update_face_from_frame_parameter): Increment face_change_count
25475	and windows_or_buffers_changed to force redisplay using changed faces.
25476
25477	* xdisp.c (QCpropertize): New variable.
25478	(mode_line_proptrans_alist): New variable.
25479	(display_mode_element): New arg PROPS; all calls changed.
25480	Implement this, for strings.
25481	Handle literal output of strings by sharing the
25482	main-line code for strings, using local var `literal'.
25483	Handle :propertize feature.
25484	(syms_of_xdisp): Initialze and staticpro QCpropertize and
25485	mode_line_proptrans_alist.
25486
254872002-02-11  Kim F. Storm  <storm@cua.dk>
25488
25489	* window.c (Vmode_line_in_non_selected_windows): New variable.
25490	(syms_of_window): DEFVAR_LISP it.
25491
25492	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
25493	(CURRENT_MODE_LINE_FACE_ID): Use it.
25494	(Vmode_line_in_non_selected_windows): Declare extern.
25495
25496	* xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
25497	to get mode line face.
25498
254992002-02-11  Eli Zaretskii  <eliz@is.elta.co.il>
25500
25501	* msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
25502	variables; cus-start.el doesn't need them anymore.
25503
255042002-02-09  Kim F. Storm  <storm@cua.dk>
25505
25506	* insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
25507	reduction.  This fixes a display problem where stray newlines were
25508	inserted in the window (corrected by C-l).  Clarified code (IMHO).
25509
255102002-02-09  Eli Zaretskii  <eliz@is.elta.co.il>
25511
25512	* dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
25513
25514	* xdisp.c (display_mode_lines): Fix last change.
25515
255162002-02-09  Jason Rumney  <jasonr@gnu.org>
25517
25518	* w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
25519	match each other.
25520	(w32_load_system_font): Prevent Cleartype fonts from loading.
25521	(Fx_show_tip): Ensure tip frames are above other topmost windows.
25522
255232002-02-09  Kim F. Storm  <storm@cua.dk>
25524
25525	* dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
25526	(CURRENT_MODE_LINE_HEIGHT): Use it.
25527	(enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
25528
25529	* xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
25530	(pos_visible_p, handle_face_prop): Likewise.
25531	(display_mode_lines): Likewise, but for the real selected window.
25532	(init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
25533
25534	* xfaces.c (Qmode_line_inactive): New face variable for mode-line
25535	in non-selected windows.
25536	(realize_basic_faces): Realize it.
25537	(syms_of_term): Intern and staticpro it.
25538
255392002-02-08  Kim F. Storm  <storm@cua.dk>
25540
25541	* alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
25542	Changed mail addresses to emacs-devel@gnu.org.
25543
255442002-02-08  Eli Zaretskii  <eliz@is.elta.co.il>
25545
25546	* fileio.c (Fsubstitute_in_file_name): If the file name includes
25547	~user, and there's no such user, don't discard everything before ~user.
25548
25549	* floatfns.c (Fround): Doc fix.
25550
255512002-02-08  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25552
25553	* sysdep.c (init_system_name): Put unused variable `p' in #if 0.
25554
255552002-02-07  Stefan Monnier  <monnier@cs.yale.edu>
25556
25557	* lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
25558
255592002-02-07  Kim F. Storm  <storm@cua.dk>
25560
25561	* keymap.c (where_is_internal): Only check whether definition is
25562	remapped if it fulfills is_command_symbol.
25563
255642002-02-07  Andreas Schwab  <schwab@suse.de>
25565
25566	* s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
25567
25568	* alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
25569
255702002-02-06  Kim F. Storm  <storm@cua.dk>
25571
25572	* keymap.c (Fdefine_key): Allow symbol as KEY argument for
25573	defining command remapping.  Doc updated.
25574	(Flookup_key): Remap command through keymap if KEY is a symbol.
25575	(is_command_symbol): New function.
25576	(Fkey_binding): Use it.  New optional argument NO-REMAP.
25577	Doc updated.  Callers changed.  Perform command remapping via
25578	recursive call unless that arg is non-nil.
25579	(where_is_internal): New argument no_remap.  Callers changed.
25580	Call recursively to find original key bindings for a remapped
25581	comand unless that arg is non-nil.
25582	(Fwhere_is_internal): New optional argument NO-REMAP.
25583	Doc updated.  Callers changed.  Pass arg to where_is_internal.
25584
25585	* keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
25586	(is_command_symbol): Add prototype.
25587
25588	* keyboard.c (Vthis_original_command): New variable.
25589	(syms_of_keyboard): DEFVAR_LISP it.
25590	(command_loop_1): Set it, and perform command remapping.
25591
255922002-02-06  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25593
25594	* keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
25595
255962002-02-06  Jason Rumney  <jasonr@gnu.org>
25597
25598	* w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
25599
256002002-02-06  Eli Zaretskii  <eliz@is.elta.co.il>
25601
25602	* charset.c (get_charset_id): Use if-else instead of ?:.
25603
256042002-02-06  Richard M. Stallman  <rms@gnu.org>
25605
25606	* filelock.c (S_ISLNK): Define if not defined.
25607
256082002-02-03  Richard M. Stallman  <rms@gnu.org>
25609
25610	* fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
25611
25612	* lread.c (read1): Redesign strategy for force_multibyte and
25613	force_singlebyte.  Now is_multibyte records whether read_buffer
25614	is multibyte.  Encountering any multibyte character makes it so.
25615
256162002-02-02  Stefan Monnier  <monnier@cs.yale.edu>
25617
25618	* term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
25619	with the same sequence, map that sequence to f10 rather than f0.
25620
256212002-02-03  Andreas Schwab  <schwab@suse.de>
25622
25623	* s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
25624	latter never being defined on GNU/Linux.
25625
256262002-02-02  Eli Zaretskii  <eliz@is.elta.co.il>
25627
25628	* xfaces.c (realize_default_face): Don't set the weight and slant of
25629	the default face to Qnormal, unless these attributes are unspecified.
25630
256312002-02-02  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25632
25633	* keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
25634	Call cancel_hourglass unconditionally.
25635
25636	* eval.c (Fsignal): Remove duplicated declaration of
25637	the variable `display_hourglass_p'.
25638
256392002-01-31  Richard M. Stallman  <rms@gnu.org>
25640
25641	* editfns.c (region_limit): Nicer error message.
25642
25643	* coding.c (decode_composition_emacs_mule):
25644	Give up if NCOMPONENT gets too large to index `component'.
25645
25646	* callint.c (check_mark): New arg to specify clearer error message.
25647	Callers changed.
25648
256492002-01-27  Richard M. Stallman  <rms@gnu.org>
25650
25651	* minibuf.c (Fcompleting_read): Doc fix.
25652
256532002-01-27  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25654
25655	* minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
25656	(Fread_variable, Fread_buffer, minibuffer-completion-confirm):
25657	Fix doc-strings.
25658
256592002-01-26  Richard M. Stallman  <rms@gnu.org>
25660
25661	* buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
25662
25663	* xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
25664	and scroll_up_aggressively.
25665
256662002-01-26  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25667
25668	* keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
25669
256702002-01-25  Stefan Monnier  <monnier@cs.yale.edu>
25671
25672	* textprop.c (Fnext_property_change, Fnext_single_property_change)
25673	(Fprevious_property_change, Fprevious_single_property_change):
25674	Stay within the narrowed-buffer boundaries.
25675
256762002-01-25  Eli Zaretskii  <eliz@is.elta.co.il>
25677
25678	* term.c (Ftty_display_color_cells): New function.
25679	(syms_of_term): Defsubr it.
25680	(Ftty_display_color_cells, Ftty_display_color_p): Change the
25681	argument name to DISPLAY.  Doc fix.
25682
25683	* dispextern.h: Add prototype for set_tty_color_mode and
25684	tty_setup_colors.
25685
256862002-01-24  Jason Rumney  <jasonr@gnu.org>
25687
25688	* w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
25689	If region left to draw is not what was expected, mark the frame as
25690	garbaged.
25691
25692	* w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
25693	Combine the regions returned by BeginPaint and GetUpdateRect.
25694
256952002-01-23  Jason Rumney  <jasonr@gnu.org>
25696
25697	* w32term.c (x_update_window_begin): Only hide caret if
25698	w32_use_visible_system_caret is set.
25699	(x_update_window_end): Only show caret if
25700	w32_use_visible_system_caret is set.
25701	(syms_of_w32term): Handle SystemParametersInfo call failing.
25702
25703	* w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
25704
257052002-01-22  Richard M. Stallman  <rms@gnu.org>
25706
25707	* unexelf.c (unexec): Define n so as to cause compilation error
25708	for the code where people have often written n instead of nn.
25709
25710	* .gdbinit (hookpost-run): Defined.
25711
257122002-01-22  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
25713
25714	* xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
25715
257162002-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
25717
25718	* xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
25719	if fullscreen is being set.
25720
257212002-01-21  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25722
25723	* minibuf.c (Fminibuffer_contents)
25724	(Fminibuffer_contents_no_properties, Fread_from_minibuffer)
25725	(Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
25726
257272002-01-21  Richard M. Stallman  <rms@gnu.org>
25728
25729	* window.c (check_frame_size): Fix minimum height calculation.
25730
257312002-01-20  Ken Raeburn  <raeburn@gnu.org>
25732
25733	* dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
25734	height before comparison.
25735	(WINDOW_WANTS_HEADER_LINE_P): Likewise.
25736
257372002-01-20  Jason Rumney  <jasonr@gnu.org>
25738
25739	* w32term.c (w32_system_caret_width): Remove.
25740	(w32_use_visible_system_caret): New user flag.
25741	(syms_of_w32term): DEFVAR_BOOL it.  Initialize based on whether
25742	Windows reports a screen reader running.
25743	(x_update_window_begin): Hide the system caret.
25744	(x_update_window_end): Show the system caret.
25745	(x_display_and_set_cursor): Don't draw a cursor when
25746	w32_use_visible_system_caret is set.  Do not adjust width.
25747
25748	* w32fns.c (w32_visible_system_caret_hwnd): New static variable.
25749	(w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
25750	<WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
25751	the user requests it.  Use system default width when creating.
25752	<WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
25753
25754	* w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
25755	New window messages.
25756
257572002-01-20  Richard M. Stallman  <rms@gnu.org>
25758
25759	* window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
25760
257612002-01-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25762
25763	* doprnt.c (doprnt1): Fix typos in error call.
25764
257652002-01-20  Eli Zaretskii  <eliz@is.elta.co.il>
25766
25767	* unexelf.c (unexec) [__sgi]: Support the .got sections.
25768
257692002-01-20  Jason Rumney  <jasonr@gnu.org>
25770
25771	* w32term.c (w32_native_per_char_metric): Don't trust the metrics
25772	that Windows returns.  If a double check fails, try to guess how
25773	ExtTextOut is going to act.
25774
25775	* w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
25776	in place of stricmp.
25777	(w32_list_synthesized_fonts): Removed.
25778	(w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
25779	(struct enumfont_t): New element; list.
25780	(enum_font_cb2): List all style and charset variations of a font.
25781	(Fw32_select_font): New optional argument; include_proportional.
25782	Exclude vertical fonts.  Exclude proportional fonts unless
25783	include_proportional is non-nil.
25784	(w32_enable_synthesized_fonts): Change to a boolean.
25785	(Fw32_send_sys_command): Doc fix.
25786
257872002-01-19  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25788
25789	* dispnew.c (update_frame): Move the variable `tem' to the block
25790	where it is used.
25791
257922002-01-19  Jason Rumney  <jasonr@gnu.org>
25793
25794	* w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
25795	call to face-set-after-frame-default.
25796
257972002-01-18  Richard M. Stallman  <rms@gnu.org>
25798
25799	* dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
25800	(WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
25801
258022002-01-17  Richard M. Stallman  <rms@gnu.org>
25803
25804	* window.c (enlarge_window): When exceeding size of parent,
25805	directly delete all the siblings instead of trying to resize it.
25806
258072002-01-17  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25808
25809	* term.c (set_tty_color_mode): Remove unused variable `tem'.
25810
258112002-01-16  Henrik Enberg  <henrik@enberg.org>
25812
25813	* lread.c (init_lread): Move the installed-lisp dirs later in the path.
25814
258152002-01-16  Kim F. Storm  <storm@cua.dk>
25816
25817	* xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
25818	is invisible.  This can happen if cursor is on top line of a
25819	window, and we switch to a buffer with a header line.
25820
25821	* w32term.c (x_erase_phys_cursor): Ditto.
25822
258232002-01-16  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25824
25825	* xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
25826	`dont_resize' only when used.
25827
25828	* xdisp.c: Remove forgotten extern declaration of `Qimage'.
25829
258302002-01-15  Eli Zaretskii  <eliz@is.elta.co.il>
25831
25832	* xdisp.c (display_mode_element): When computing charpos, depend
25833	on multibyteness of elt, not the text in field.
25834
258352002-01-15  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25836
25837	* buffer.c (Fkill_all_local_variables):
25838	Increment `update_mode_lines' only once.
25839
258402002-01-14  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25841
25842	* lisp.h (adjust_after_replace_noundo)
25843	(Fupdate_coding_systems_internal): Add prototypes.
25844
25845	* sound.c (Fplay_sound): Initialize header_size also for :data case.
25846
258472002-01-14  Eli Zaretskii  <eliz@is.elta.co.il>
25848
25849	Support for the --color command-line argument and tty-color-mode
25850	frame parameter:
25851
25852	* term.c (tty_default_color_capabilities, tty_setup_colors)
25853	(set_tty_color_mode): New functions.
25854	(term_init): Call tty_default_color_capabilities.
25855	(Qtty_color_mode_alist): New variable.
25856	(syms_of_term): Intern and staticpro it.
25857
25858	* frame.c (store_frame_param): Call set_tty_color_mode for termcap
25859	frames.
25860	(do_switch_frame): For termcap frames, switch the tty
25861	color mode as specified by the frame's parameters.
25862	(Qtty_color_mode): New variable.
25863	(syms_of_frame): Intern and staticpro it.
25864
25865	* emacs.c (USAGE2): Add the --color option.
25866	(standard_args): Ditto.
25867
258682002-01-13  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
25869
25870	* xterm.h (struct x_output): New members want_fullscreen,
25871	x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
25872	y_pixels_outer_diff.
25873	New enum for FULLSCREEN_* constants.
25874	(FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
25875	is NULL.
25876	(x_fullscreen_adjust): Add prototype.
25877
25878	* emacs.c (USAGE2): Add the new full-screen arguments.
25879	(standard_args): Ditto.
25880
25881	* xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
25882	New variables.
25883	(syms_of_xfns): Intern and staticpro them.
25884	(x_frame_parms) <"fullscreen">: New parameter.
25885	(x_fullscreen_move, x_set_fullscreen): New functions.
25886	(x_set_frame_parameters): Support for Qfullscreen.
25887	(x_real_positions): More accurate computation of the frame position.
25888	(x_figure_window_size): Support full-screen frames.
25889	(Fx_create_frame): Default the fullscreen parameter.
25890
25891	* xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
25892	(XTread_socket) <Expose>: Call x_check_fullscreen.
25893	<ConfigureNotify>: Don't resize to fullscreen.
25894	Call x_check_fullscreen_move, and set the want_fullscreen member of
25895	output_data.x.
25896
258972002-01-13  Jason Rumney  <jasonr@gnu.org>
25898
25899	* w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
25900	for mice with more than 3 buttons.
25901
25902	* w32term.c (parse_button): New parameter xbutton.  Callers changed.
25903	(w32_read_socket): Handle new "XBUTTON" messages.
25904
25905	* w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
25906	(syms_of_w32fns): DEFVAR_BOOL it.
25907	(w32_wnd_proc): Handle new "XBUTTON" messages.
25908
259092002-01-13  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
25910
25911	* keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
25912
259132002-01-13  Andreas Schwab  <schwab@suse.de>
25914
25915	* xterm.c (x_load_font): Never set fonts_changed_p to zero.
25916
259172002-01-12  Andreas Schwab  <schwab@suse.de>
25918
25919	* .gdbinit (xbuffer): Remove address operator since data is now a
25920	pointer.
25921
259222002-01-11  Richard M. Stallman  <rms@gnu.org>
25923
25924	* insdel.c (adjust_after_replace_noundo): New function.
25925
25926	* coding.c (code_convert_region): Don't copy old text if undo disabled.
25927
259282002-01-09  Jason Rumney  <jasonr@gnu.org>
25929
25930	* xdisp.c (x_consider_frame_title): Don't count the tooltip frame
25931	when checking for multiple frames.
25932
259332002-01-08  Richard M. Stallman  <rms@gnu.org>
25934
25935	* window.c (delete_window): Rewrite the code for changing the
25936	selected window to handle the case where WINDOW is not a leaf.
25937
259382002-01-07  Eli Zaretskii  <eliz@is.elta.co.il>
25939
25940	* process.c (send_process): Set src_multibyte to 1 after the call
25941	top setup_coding_system, not before the call.
25942
259432002-01-07  Jason Rumney  <jasonr@gnu.org>
25944
25945	* xmenu.c (set_frame_menubar, xmenu_show):
25946	(xdialog_show): Initialize wv->help to Qnil.
25947
25948	* w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
25949	(w32_dialog_show): Initialize wv->help to Qnil.
25950
259512002-01-06  Jason Rumney  <jasonr@gnu.org>
25952
25953	* xmenu.c (single_submenu): Initialize wv->help to Qnil.
25954
25955	* w32menu.c (w32_menu_display_help): Revert last change.
25956
25957	* xmenu.c (menu_highlight_callback): Revert last change.
25958
259592002-01-06  Andreas Schwab  <schwab@suse.de>
25960
25961	* insdel.c (make_gap_larger): Make sure buffer size does not
25962	overflow range of int.
25963
259642002-01-05  Jason Rumney  <jasonr@gnu.org>
25965
25966	* w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
25967	OVERLAPS_P.
25968
25969	* w32menu.c (w32_menu_display_help): Hide any tooltip window.
25970
25971	* w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
25972	to the left or to the right of the pointer, put it against
25973	the left screen edge.
25974	(x_frame_parms): Add missing braces around initializer.
25975
25976	* w32term.c (x_setup_relief_colors): Don't compute an image's
25977	background color if it doesn't have a Pixmap.
25978	(notice_overwritten_cursor): Don't depend on
25979	output_cursor and updated_area.  Compare pixel coordinates with
25980	window's cursor pixel coordinates.
25981	(x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
25982	Call notice_overwritten_cursor with new arg list.
25983	(show_mouse_face): Fix bug setting a row's mouse_face_p flag
25984	unconditionally.
25985	(x_draw_image_relief): Use predefined macro instead of
25986	constant when the value of `tool_bar_button_relief' is negative.
25987
25988	* w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
25989
259902002-01-04  Richard M. Stallman  <rms@gnu.org>
25991
25992	* xmenu.c (menu_highlight_callback): Hide any tooltip window.
25993
259942002-01-03  Richard M. Stallman  <rms@gnu.org>
25995
25996	* keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
25997	(Fkey_binding): Try the `keymap' property map first.
25998	(Fdescribe_buffer_bindings): Show `keymap' property bindings before
25999	minor mode bindings.
26000
260012002-01-03  Kim F. Storm  <storm@cua.dk>
26002
26003	* keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
26004
260052002-01-02  Richard M. Stallman  <rms@gnu.org>
26006
26007	* keyboard.c (read_key_sequence): Handle the keymap property
26008	before minor mode maps.
26009
26010	* editfns.c (Fformat): Update thissize from field_width
26011	based on the actual width, in the string case.
26012
260132002-01-01  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26014
26015	* charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
26016	when used as truth value to prevent gcc warnings.
26017
26018	* sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
26019	* w32proc.c: Include <config.h>.
26020
260212002-01-01  Andreas Schwab  <schwab@suse.de>
26022
26023	* eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
26024	not EMACS_INT, to make them compatible with DEFVAR_INT.
26025	* lisp.h (max_specpdl_size): Adjust declaration.
26026
260272002-01-01  Richard M. Stallman  <rms@gnu.org>
26028
26029	* print.c (print_object): Test print_escape_nonascii only for
26030	unibyte strings.
26031	(PRINTPREPARE): Once again bind Qprint_escape_nonascii
26032	when outputting to a multibyte buffer.
26033
260342001-12-29  Richard M. Stallman  <rms@gnu.org>
26035
26036	* print.c (print_object): In multibyte string, use hex escapes.
26037	Use octal only for unibyte strings.
26038	(PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
26039
26040	* lread.c (read_escape): New arg BYTEREP for reporting whether
26041	escape forces unibyte or multibyte.
26042	(read1): When reading a string, take note of that info.
26043
260442001-12-29  Ken Raeburn  <raeburn@gnu.org>
26045
26046	* abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
26047	comparison to test lisp value returned by Fget.
26048
260492001-12-29  Richard M. Stallman  <rms@gnu.org>
26050
26051	* lisp.h (max_specpdl_size): Add declaration.
26052
26053	* fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
26054
26055	* keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
26056	Handle modifier bits.  Correct typo in error message.
26057
260582001-12-28  Richard M. Stallman  <rms@gnu.org>
26059
26060	* abbrev.c: Use the plist of an abbrev for multiple params if nec.
26061	(Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
26062	(Fdefine_global_abbrev, Fdefine_mode_abbrev):
26063	Update calls to Fdefine_abbrev.
26064	(write_abbrev): Update for changed data format.
26065	Don't list "system" abbrevs.
26066	(Fexpand_abbrev): Update use count with new data format.
26067	(describe_abbrev): Update for changed data format.
26068	(Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
26069
26070	* config.in (HAVE_MBSINIT): Add #undef.
26071
26072	* strftime.c (mbsinit): Define as no-op if not available.
26073
26074	* s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
26075	(sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
26076
26077	* keymap.c (Flookup_key): Error message if key has wrong data type.
26078	(Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
26079	(exclude_key): New variable.
26080
260812001-12-28  Gerd Moellmann  <gerd@gnu.org>
26082
26083	* xterm.c (x_setup_relief_colors): Don't compute an image's
26084	background color if it doesn't have a Pixmap.
26085
26086	* xterm.c (notice_overwritten_cursor): Don't depend on
26087	output_cursor and updated_area.  Compare pixel coordinates with
26088	window's cursor pixel coordinates.
26089	(x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
26090	Call notice_overwritten_cursor with new arg list.
26091	(show_mouse_face): Fix bug setting a row's mouse_face_p flag
26092	unconditionally.
26093
26094	* xdisp.c (try_scrolling) <PT below scroll margin>: Add the
26095	height of the cursor line to the amount to scroll.
26096
260972001-12-27  Richard M. Stallman  <rms@gnu.org>
26098
26099	* intervals.c (set_point_both): The position after an invisible,
26100	intangible character is not an acceptable stopping point.
26101
261022001-12-27  Ken Raeburn  <raeburn@gnu.org>
26103
26104	* window.c (enlarge_window): In new preserve_before code, convert
26105	CURBEG from lisp object to integer before doing arithmetic.
26106
261072001-12-27  Richard M. Stallman  <rms@gnu.org>
26108
26109	* bytecode.c (Fbyte_code): Undo previous change.
26110
261112001-12-26  Kim F. Storm  <storm@cua.dk>
26112
26113	* keyboard.c (record_char): Ignore duplicate help-echo events only
26114	separated by mouse-movement.  When tracking mouse, only record
26115	first and last mouse-movement event in same window.
26116	Don't record mouse-movement events in keyboard macros.
26117
261182001-12-25  Richard M. Stallman  <rms@gnu.org>
26119
26120	* window.c (enlarge_window): New arg PRESERVE_BEFORE.  Callers changed.
26121	(Fenlarge_window): New arg PRESERVE_BEFORE.
26122
26123	* bytecode.c (Fbyte_code): Use Fstring_make_unibyte
26124	instead of Fstring_as_unibyte.
26125
261262001-12-22  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26127
26128	The following changes remove mocklisp support:
26129
26130	* mocklisp.h, mocklisp.c: Files removed.
26131
26132	* lisp.h: Remove declarations of variables `Vmocklisp_arguments',
26133	`Qmocklisp' and `Qmocklisp_arguments'.
26134	Remove prototype of syms_of_mocklisp.
26135
26136	* makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
26137
26138	* callint.c: Do not include mocklisp.h.
26139	(Fcall_interactively): Do not test for mocklisp case.
26140
26141	* eval.c: Remove variables `Qmocklisp_arguments',
26142	`Vmocklisp_arguments' and `Qmocklisp'.  Remove prototype of ml_apply.
26143	(Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
26144	Do not test for mocklisp case.
26145	(Fwhile): Remove unused variable `tem'.
26146	(syms_of_eval): Remove variable `moclisp-arguments'.
26147
26148	* data.c (wrong_type_argument): Remove mocklisp case.
26149
26150	* doc.c (Fdocumentation): Remove mocklisp case.
26151
26152	* emacs.c (main): Do not call syms_of_mocklisp.
26153
261542001-12-21  Richard M. Stallman  <rms@gnu.org>
26155
26156	* xfns.c (compute_tip_xy): If tooltip won't fit on the screen
26157	to the left or to the right of the pointer, put it against
26158	the left screen edge.
26159
261602001-12-21  Eli Zaretskii  <eliz@is.elta.co.il>
26161
26162	* Makefile.in (distclean): Remove .gdbinit if we are building
26163	outside the source tree.
26164
261652001-12-19  Eli Zaretskii  <eliz@is.elta.co.il>
26166
26167	* w32.c (emacs_root_dir): New function.
26168
26169	* msdos.c (emacs_root_dir): New function.
26170
26171	* fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
26172	of the current drive as the fallback for default_directory.
26173
26174	* dired.c (file_name_completion): Run the elements of
26175	completion-ignored-extensions through ENCODE_FILE.
26176
26177	* lisp.h (scmp): Remove prototype, since it's now a static
26178	function private to dired.c.
26179
261802001-12-18  Richard M. Stallman  <rms@gnu.org>
26181
26182	* dired.c (scmp): Function moved from minibuf.c.
26183	Delete multibyte handling--used only on encoded strings.
26184
26185	* minibuf.c (scmp): Function moved to dired.c.
26186
26187	* fns.c (merge): Add QUIT call.
26188
261892001-12-18  Dave Love  <fx@gnu.org>
26190
26191	* Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
26192	language/georgian.el.
26193
261942001-12-18  Eli Zaretskii  <eliz@is.elta.co.il>
26195
26196	* Makefile.in (lisp, shortlisp): Synchronize with changes to
26197	lisp/Makefile.in:DONTCOMPILE.
26198
261992001-12-18  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26200
26201	* xdisp.c (window_box_height): Do not return negative values.
26202	From Gerd Moellmann <gerd@gnu.org>.
26203
26204	* keyboard.c (head_table): Add missing braces around initializer.
26205
26206	* term.c (keys): Likewise.
26207
26208	* xfns.c (x_frame_parms, visual_classes): Likewise.
26209
262102001-12-17  Sam Steingold  <sds@gnu.org>
26211
26212	* coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
26213	patch (COMPOSING_P, not COMPOSING).
26214
262152001-12-17  Richard M. Stallman  <rms@gnu.org>
26216
26217	* editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
26218
26219	* coding.c (code_convert_region): Update coding->cmp_data->char_offset
26220	before calling decode_coding.
26221
26222	* charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
26223
26224	* coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
26225	instead of only for COMPOSITION_DISABLED.
26226
262272001-12-16  Richard M. Stallman  <rms@gnu.org>
26228
26229	* alloc.c (pure_alloc): After overflow, allocate just a small block.
26230
26231	* Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
26232
26233	* buffer.h (struct buffer): New field `display_error_modiff'.
26234	* buffer.c (reset_buffer): Initialize `display_error_modiff'.
26235
26236	* window.c (Frecenter): Clear display_error_modiff field.
26237
26238	* xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
26239	Call redisplay_window, but not if display_error_modiff field says no.
26240	(redisplay_window_error): New function.
26241	(displayed_buffer): New variable.
26242	(redisplay_internal, redisplay_windows): Call the new functions
26243	instead of redisplay_window directly.
26244
262452001-12-15  Richard M. Stallman  <rms@gnu.org>
26246
26247	* keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
26248
262492001-12-14  Andrew Innes  <andrewi@gnu.org>
26250
26251	* makefile.w32-in (EMACSLOADPATH): Define.
26252	($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
26253	(bootstrap-temacs): Remove dependency on bootstrap-clean.
26254
262552001-12-13  Eli Zaretskii  <eliz@is.elta.co.il>
26256
26257	* xfns.c (x_report_frame_params): Make the scroll-bar-width frame
26258	parameter have a numeric value all the time.
26259
26260	* w32fns.c (x_report_frame_params): Likewise.
26261
262622001-12-12  Richard M. Stallman  <rms@gnu.org>
26263
26264	* fileio.c (Fwrite_region): Doc fix.
26265
26266	* xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
26267	(redisplay_internal): Call clear_image_cache only for window terminals.
26268
262692001-12-12  Gerd Moellmann  <gerd@gnu.org>
26270
26271	* xdisp.c (move_it_vertically_backward): Change heuristic
26272	for the case that we didn't move far enough initially.
26273
26274	* window.c (Frecenter): Simplify computation in the case of window
26275	system frames and ARG < 0; use window_box_height.
26276
262772001-12-11  Richard M. Stallman  <rms@gnu.org>
26278
26279	* Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
26280	* process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
26281
262822001-12-11  Andrew Innes  <andrewi@gnu.org>
26283
26284	* insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
26285	arg is negative.
26286
262872001-12-11  Richard M. Stallman  <rms@gnu.org>
26288
26289	* m/hp800.h: Split the __hpux conditional into the parts
26290	that are right for GNU/Linux too and the parts that are not.
26291	Use the former if GNU_LINUX.
26292	(HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
26293
26294	* s/gnu-linux.h (GNU_LINUX): Defined.
26295
262962001-12-11  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26297
26298	* macros.c, msdos.c, w16select.c: Change doc-string comments to
26299	`new style' [w/`doc:' keyword].
26300
263012001-12-10  Jason Rumney  <jasonr@gnu.org>
26302
26303	* w32menu.c (w32_free_submenu_strings): Clear menu item struct
26304	before using.
26305
263062001-12-09  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26307
26308	* dosfns.c: Change doc-string comments to `new style' [w/`doc:'
26309	keyword].
26310
263112001-12-09  Eli Zaretskii  <eliz@is.elta.co.il>
26312
26313	* dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
26314
26315	* s/hpux10.h (srand48): Don't undefine.
26316
263172001-12-09  Jason Rumney  <jasonr@gnu.org>
26318
26319	* w32menu.c (_widget_value): Make `help' field a Lisp_Object.
26320	Add comment to explain where the struct came from.
26321	(single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
26322	(add_menu_item): Process pop-up menus first to avoid memory leak.
26323	(add_menu_item, w32_menu_display_help): Use `help' field as
26324	Lisp_Object.
26325	(w32_free_submenu_strings): Only free owner-drawn strings.
26326
263272001-12-09  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26328
26329	* COPYING: Moved back.
26330
26331	* charset.c (char_to_string_1, translate_char, Fdefine_charset):
26332	Add parentheses around && within ||.
26333
26334	* indent.c (compute_motion): Likewise.
26335
26336	* intervals.c (merge_properties_sticky): Likewise.
26337
26338	* coding.c (setup_coding_system, shrink_encoding_region)
26339	(Fdecode_sjis_char): Likewise.
26340
263412001-12-07  Andreas Schwab  <schwab@suse.de>
26342
26343	* xdisp.c (display_mode_element): Don't read past end of string if
26344	it ends with '%'.
26345
26346	* alloc.c (inhibit_garbage_collection): Don't exceed value an int
26347	can hold.
26348
26349	* data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
26350	Rename from most_positive_fixnum and most_negative_fixnum, resp., and
26351	type changed to Lisp_Object.
26352	(syms_of_data): DEFVAR_LISP them.
26353
263542001-12-07  Richard M. Stallman  <rms@gnu.org>
26355
26356	* callproc.c (init_callproc): Set Vdata_directory based on the source
26357	location whenever Emacs was run uninstalled.
26358
263592001-12-06  Paul Eggert  <eggert@twinsun.com>
26360
26361	* config.in (HAVE_WORKING_VFORK): New #undefs.
26362	* process.c (create_process):
26363	Use HAVE_WORKING_VFORK, not HAVE_VFORK.
26364	* m/cnvrgnt.h (HAVE_VFORK): Remove #define.
26365	* m/ibm370aix.h (HAVE_VFORK): Remove #undef.
26366	* m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
26367	* m/intel386.h (HAVE_VFORK): Likewise.
26368	* m/mips-siemens.h (HAVE_VFORK): Likewise.
26369	* m/mips.h (HAVE_VFORK): Likewise.
26370	* s/freebsd.h (vfork): Remove #define.
26371	* s/lynxos.h (HAVE_VFORK): Remove #undef.
26372	* s/usg5-4-2.h: Fix comment about vfork.
26373
263742001-12-06  Richard M. Stallman  <rms@gnu.org>
26375
26376	* s/hpux10.h (random): Add undef.
26377	(HAVE_RANDOM): Define it just once.
26378
263792001-12-06  Stefan Monnier  <monnier@cs.yale.edu>
26380
26381	* eval.c: Undo last change: the standard syntax is not wanted.
26382
263832001-12-06  Eli Zaretskii  <eliz@is.elta.co.il>
26384
26385	* xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
26386	scroll bars of the frame before deleting the frame itself.  If the
26387	frame has a widget, delete the frame with XtDestroyWidget, and do
26388	not call XDestroyWindow before that.
26389
263902001-12-06  Kim F. Storm  <storm@cua.dk>
26391
26392	* xfns.c (x_report_frame_params): Return actual fringe widths.
26393
26394	* w32fns.c (x_report_frame_params): Return actual fringe widths.
26395
263962001-12-05  Andrew Innes  <andrewi@gnu.org>
26397
26398	* alloc.c (Fgarbage_collect): Shrink buffer gaps that are
26399	excessively large.
26400
26401	* insdel.c (make_gap_larger): New function.
26402	(make_gap_smaller): New function.
26403	(make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
26404	Call make_gap_smaller if arg is negative.
26405
264062001-12-04  Stefan Monnier  <monnier@cs.yale.edu>
26407
26408	* keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
26409	Pass a dummy argument when calling interrupt_signal.
26410	(parse_menu_item): Mark disabled items before checking for empty def.
26411	(read_char_minibuf_menu_prompt): Make safety more visible.
26412	(read_key_sequence): Add a `first_unbound' variable.
26413	Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
26414	unbound prefix as soon as we can detect it.
26415
26416	* doc.c (Fsnarf_documentation): Add prototype.
26417	(get_doc_string): Handle negative arguments.
26418	(Fdocumentation): Use AREF and ASIZE.
26419	Move the calls to get_doc_string to a single place.
26420	Don't confuse an interactive-spec for a docstring reference.
26421	(Fdocumentation_property): Take advantage of the fact that
26422	get_doc_string now ignores the sign of the docstring position.
26423
26424	* eval.c: Use standard syntax for usage in docstrings.
26425
264262001-12-03  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26427
26428	* xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
26429
264302001-12-02  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26431
26432	* xterm.c (x_draw_image_relief): Use predefined macro instead of
26433	constant when the value of `tool_bar_button_relief' is negative.
26434
264352001-12-02  Richard M. Stallman  <rms@gnu.org>
26436
26437	* xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
26438	(single_submenu, xmenu_show): Set `help' field as Lisp_Object.
26439
26440	* fileio.c (read_non_regular): Delete Fsignal call.
26441
264422001-12-01  Stefan Monnier  <monnier@cs.yale.edu>
26443
26444	* lisp.h (run_hook_list_with_args): Undo last change.
26445
264462001-12-01  Gerd Moellmann  <gerd@gnu.org>
26447
26448	* xterm.c (x_draw_fringe_bitmap): Always undo clipping.
26449
264502001-12-01  Jason Rumney  <jasonr@gnu.org>
26451
26452	* window.c (Qleft_fringe, Qright_fringe): Remove.  Now in frame.c.
26453
26454	* w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
26455	[!WM_MOUSELEAVE]: Define.
26456
26457	* w32menu.c (current_popup_menu, get_menu_item_info):
26458	(set_menu_item_info): New vars.
26459	(set_frame_menubar): Doc fix clarifying GC interaction with menus.
26460	(w32_menu_show): Set current_popup_menu.
26461	(add_menu_item): Allocate new strings for owner-drawn menu items
26462	and help strings.
26463	Use owner-draw for disabled menu items again.
26464	(w32_menu_display_help): Ignore owner-drawn items and popup menus.
26465	(w32_free_submenu_strings, w32_free_menu_strings): New functions.
26466
26467	* w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
26468	(w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
26469	<WM_EXITMENULOOP>: Free menu strings.
26470	<WM_MOUSELEAVE>: Stop tracking mouse.
26471	(x_create_tip_frame): Specify no minibuffer, modeline or fringes.
26472
26473	* w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
26474	and mouse face.
26475
264762001-12-01  Kim F. Storm  <storm@cua.dk>
26477
26478	The following changes add left-fringe and right-fringe
26479	frame parameters to adjust fringe widths, or remove one or
26480	both fringes.
26481
26482	* frame.h (struct frame): Remove trunc_area_pixel_width and
26483	trunc_area_cols fields.
26484	(Qleft_fringe, Qright_fringe): Declare.
26485	(FRAME_RIGHT_FRINGE_WIDTH): New macro.
26486
26487	* frame.c (Qleft_fringe, Qright_fringe): New vars.
26488	(syms_of_frame): Initialize them.
26489
26490	* window.c (coordinates_in_window): Handle separate left and right
26491	fringe widths.
26492
26493	* xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
26494	and fringe_cols fields.
26495	(FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
26496	(FRAME_X_FRINGE_COLS): Use fringe_cols field.
26497	(FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
26498	(FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
26499	(FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
26500	(x_compute_fringe_widths): Add prototype.
26501
26502	* xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
26503	fill fringe evenly with small dashes.
26504	(x_draw_fringe_bitmap): Clear background if necessary.  Align and
26505	clip the new ZV bitmap to avoid jitter between rows.
26506	(x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
26507	background.  Don't draw fringe bitmaps if fringe width is zero.
26508	(x_compute_fringe_widths): New function.
26509	(x_new_font, x_set_window_size_1): Use it.
26510
26511	* xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
26512	(x_set_frame_parameters): Process `font' parameter before other
26513	parameters as fringe widths depend on it.
26514	(x_set_fringe_width): New function.
26515	(x_figure_window_size): Use x_compute_fringe_widths.
26516	(Fx_create_frame): Process `left-fringe' and `right-fringe' frame
26517	parameters.
26518
26519	* widget.c (set_frame_size): Use x_compute_fringe_widths.
26520	(EmacsFrameSetCharSize): Ditto.
26521
26522	* w32term.h: Merged changes from xterm.h.
26523	* w32term.c: Merged changes from xterm.c.
26524	* w32fns.c: Merged changes from xfns.c.
26525
265262001-11-29  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26527
26528	* COPYING: Removed.
26529
265302001-11-29  Dave Love  <fx@gnu.org>
26531
26532	* coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
26533	extra extra slot.
26534	(detect_coding_mask): Fix call of detect_coding_iso2022.
26535
265362001-11-29  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26537
26538	* fileio.c (file-name-coding-system)
26539	(default-file-name-coding-system): Doc fix (links to referenced
26540	variables added).
26541
265422001-11-28  Stefan Monnier  <monnier@cs.yale.edu>
26543
26544	* lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
26545	Add dummy uses of gcproN variables.
26546
26547	* category.c (describe_category, describe_category_1)
26548	(Fdescribe_categories): Remove.  (Moved to lisp/help-fns.el.)
26549	(syms_of_category): Don't defsubr Sdescribe_categories.
26550
265512001-11-28  Richard M. Stallman  <rms@gnu.org>
26552
26553	* fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
26554
26555	* Makefile.in (lispdir): New variable, referring to build dir.
26556	(TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
26557
265582001-11-28  Andrew Innes  <andrewi@gnu.org>
26559
26560	* w32menu.c (w32_menu_display_help): Actually add the new argument
26561	OWNER.
26562
265632001-11-28  Jason Rumney  <jasonr@gnu.org>
26564
26565	* w32menu.c (add_menu_item): Do not use owner-draw for disabled
26566	menu items.  From David Ponce <dponce@wanadoo.fr>.
26567	(w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
26568	conditionally.
26569	(w32_menu_display_help): New argument OWNER.  Rewritten to store a
26570	help event in the owner frame's keyboard buffer.
26571
26572	* w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
26573	(Fx_show_tip): Don't subtract last width from row width.
26574
26575	* w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
26576	(w32_read_socket): Use EQ to compare frames.
26577
265782001-11-28  Gerd Moellmann  <gerd@gnu.org>
26579
26580	* xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
26581	OVERLAPS_P.
26582
265832001-11-28  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26584
26585	* xdisp.c (message_dolog): Remove unused variables `gcpro2',
26586	`gcpro3' and `gcpro4'.
26587
26588	* coding.c (decode_coding_string): Remove unused variable `gcpro1'.
26589
265902001-11-28  Stefan Monnier  <monnier@cs.yale.edu>
26591
26592	* ccl.c: Use AREF and ASIZE.
26593
265942001-11-27  Stefan Monnier  <monnier@cs.yale.edu>
26595
26596	* lisp.h (run_hook_list_with_args): Remove.
26597	(LIST_END_P): Fix call to wrong_type_argument.
26598	(make_fixnum_or_float): Use EMACS_INT rather than int.
26599
266002001-11-26  Stefan Monnier  <monnier@cs.yale.edu>
26601
26602	* syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
26603	(describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
26604
26605	* eval.c: Use AREF and ASIZE.
26606	(Ffetch_bytecode): Add the file name to the error message.
26607
26608	* fileio.c (Ffind_file_name_handler): Give precedence to handlers
26609	which match the end of the file-name.
26610	(Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
26611	is not a valid env var, but leave it as is instead.
26612
26613	* keymap.c (access_keymap): Handle t bindings like nil bindings.
26614	Make nil bindings in char-tables transparent.
26615	(store_in_keymap): Turn a nil binding into a t binding for char-tables.
26616
266172001-11-26  Richard M. Stallman  <rms@gnu.org>
26618
26619	* textprop.c (set_text_properties_1): Allow START, END in either order.
26620	Do nothing if range is empty.
26621
26622	* Makefile.in (mallocobj): Simplify logic using auxiliary vars.
26623
26624	* Makefile.in (mostlyclean): Delete bootstrap-emacs here.
26625	(clean): Not here.
26626
266272001-11-25  Stefan Monnier  <monnier@cs.yale.edu>
26628
26629	* textprop.c (set_text_properties_1): Clearly mark that the
26630	interval should not be empty.
26631
26632	* intervals.c (graft_intervals_into_buffer):
26633	Don't call set_text_properties_1 on an empty interval.
26634
266352001-11-25  Richard M. Stallman  <rms@gnu.org>
26636
26637	* unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
26638
26639	* callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
26640	don't lose the data in it.
26641
266422001-11-25  Juanma Barranquero  <lektu@terra.es>
26643
26644	* abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
26645
26646	* buffer.c (Fkill_buffer): Likewise.
26647
26648	* print.c (temp_output_buffer_setup): Likewise.
26649
266502001-11-25  Stefan Monnier  <monnier@cs.yale.edu>
26651
26652	* xfaces.c (merge_face_heights): Coerce back to int explicitly.
26653
266542001-11-25  Eli Zaretskii  <eliz@is.elta.co.il>
26655
26656	* window.c (Fset_window_vscroll): Doc fix.  From Kalle Olavi
26657	Niemitalo <kon@iki.fi>.
26658
266592001-11-25  Jason Rumney  <jasonr@gnu.org>
26660
26661	* w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
26662
26663	* w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
26664	(Fx_show_tip): Block input during frame creation.
26665	(Fx_show_tip, Fx_hide_tip): Enable.
26666
266672001-11-24  Richard M. Stallman  <rms@gnu.org>
26668
26669	* lread.c (Fload): Detect recursive load error for more than 3
26670	nestings of the same file.
26671	(Vrecursive_load_depth_limit): Variable deleted.
26672	(syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
26673
266742001-11-24  Jason Rumney  <jasonr@gnu.org>
26675
26676	* xfns.c (compute_tip_xy): Initialize root_x and root_y from
26677	mouse position if either left or top is not specified.
26678
26679	* w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
26680	<WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
26681	(my_create_tip_window, Fx_show_tip): Adjust size for external border.
26682	(my_create_tip_window): Assign tip_window.
26683	(x_create_tip_frame): Use same defaults as X.
26684	(compute_tip_xy): Remove unused variable.  Use full screen width.
26685	(Fx_show_tip): Do not double height.  Call ShowWindow directly.
26686
26687	* w32term.c (x_after_update_window_line): Doc fix.
26688	(w32_read_socket): Doc fix.  Avoid SET_FRAME_GARBAGED for tip
26689	frames.
26690	<WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
26691
26692	* xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
26693	for all Windowed systems.
26694
266952001-11-23  Eli Zaretskii  <eliz@is.elta.co.il>
26696
26697	* msdos.c (IT_clear_screen): If the frame's faces are not yet
26698	realized, use the initial screen colors to clear the screen.
26699
267002001-11-23  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26701
26702	* textprop.c (Fset_text_properties): Remove unused variables
26703	`unchanged', `prev_changed', `s' and `len'.
26704
26705	* search.c (Freplace_match): Remove unused variable `inslen'.
26706
26707	* keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
26708
267092001-11-22  Jason Rumney  <jasonr@gnu.org>
26710
26711	* w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
26712	(w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
26713	(my_create_tip_window): New function.
26714	(x_create_tip_frame, compute_tip_xy): Adapt for Windows.
26715	(Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
26716
267172001-11-20  Jason Rumney  <jasonr@gnu.org>
26718
26719	* coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
26720	(ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
26721
26722	* w32fns.c (Vw32_system_coding_system): Remove.
26723	(w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
26724
267252001-11-19  Stefan Monnier  <monnier@cs.yale.edu>
26726
26727	* fileio.c (Fwrite_region): Move choose_write_coding_system to
26728	after build_annotations.
26729
26730	* syntax.c (describe_syntax): Add dummy arg.
26731	(describe_syntax_1): Update call to describe_vector.
26732
26733	* category.c (describe_category): Add dummy arg.
26734	(describe_category_1): Update call to describe_vector.
26735
26736	* keymap.c (Fdescribe_vector): Add `describer' parameter.
26737	(describe_command, describe_translation): Add dummy second param.
26738	(describe_map): Call elt_describer with two arguments.
26739	(describe_vector_princ): Add `fun' parameter.
26740	Call it instead of the hardcoded `princ'.
26741	(describe_vector): Add arg `args'.
26742	Pass it as a new second argument to elt_describer.
26743
26744	* keymap.h (describe_vector): Update prototype.
26745
26746	* frame.c: Don't include keymap.h any more.
26747	(keys_of_frame): Remove.
26748
26749	* lisp.h (keys_of_frame): Remove declaration.
26750
26751	* emacs.c (main): Don't call `keys_of_frame' any more.
26752
267532001-11-14  Andreas Schwab  <schwab@suse.de>
26754
26755	* unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
26756	if defined, 0 otherwise.
26757	(MAP_FAILED): Define if not defined and use it to test mmap failure.
26758	(unexec) [!MAP_ANON]: Use /dev/zero as file to map.
26759
267602001-11-19  Richard M. Stallman  <rms@gnu.org>
26761
26762	* indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
26763
267642001-11-18  Jason Rumney  <jasonr@gnu.org>
26765
26766	* w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
26767	(x_draw_bar_cursor): If the background color of the glyph under
26768	the cursor equals the frame's cursor color, use the glyph's
26769	foreground color for drawing the bar cursor.
26770	(x_after_update_window_line): Clear internal border in different
26771	circumstances.
26772	(w32_set_vertical_scroll_bar): Check for width and height > 0.
26773	(w32_draw_relief_rect): Correct relief by 1 pixel.
26774	(x_set_glyph_string_background_width):
26775	Set extends_to_end_of_line_p if the row's fill_line_p is set and
26776	drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
26777	(x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
26778	if cursor_in_non_selected_windows is false.
26779	(show_mouse_face): Clean up.  Recognize overwritten cursor differently.
26780	(x_draw_glyphs): Remove parameters REAL_START and REAL_END.
26781	Notice if cursor gets overwritten.
26782	(notice_overwritten_cursor): Renamed from
26783	note_overwritten_text_cursor.  Rewritten to take glyph widths
26784	into account, and to take X positions as parameters.
26785	(x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
26786	around call to x_draw_glyphs.
26787	(x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
26788	`IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
26789	color to use for image glyph reliefs.
26790	(x_draw_image_relief): Accept zero tool_bar_button_relief.
26791	(glyph_rect): Remove unused variable `area'.
26792
26793	* w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
26794	some items.
26795	(x_set_internal_border_width): Set frame garbaged when window
26796	doesn't exist yet.
26797	(Fx_create_frame): Accept zero tool_bar_button_relief.
26798	(x_clear_image_1, four_corners_best, image_background)
26799	(image_background_transparent): New functions.
26800	(xpm_format, png_format, jpeg_format, tiff_format, gif_format)
26801	(gs_format): Add `:background' entry.
26802	(lookup_image): Set IMG's background color if specified.
26803	(pbm_load, xbm_load_image, png_load): Set IMG's background field
26804	when appropriate.
26805	(x_clear_image_1): Reset `background_valid' and
26806	`background_transparent_valid' fields.
26807	(x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
26808	calculating it here.  Set IMG's background_transparent field.
26809	(enum xpm_keyword_index): Add XPM_BACKGROUND.
26810	(enum png_keyword_index): Add PNG_BACKGROUND.
26811	(enum jpeg_keyword_index): Add JPEG_BACKGROUND.
26812	(enum tiff_keyword_index): Add TIFF_BACKGROUND.
26813	(enum gif_keyword_index): Add GIF_BACKGROUND.
26814	(enum gs_keyword_index): Add GS_BACKGROUND.
26815	(pbm_load, png_load, jpeg_load, tiff_load, gif_load):
26816	Pre-calculate image background color where necessary.
26817	(x_create_x_image_and_pixmap, xbm_load, gs_load):
26818	Use display info's n_cbits entry for screen depth.
26819	(Fx_show_tip): Remove unused variables `buffer', `top',
26820	`left', `max_width' and `max_height'.
26821
26822	* w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
26823
268242001-11-18  Gerd Moellmann  <gerd@gnu.org>
26825
26826	* puresize.h (BASE_PURESIZE): Increase to 750000.
26827
268282001-11-18  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26829
26830	* frame.c (Fframe_live_p): Doc fix.
26831
268322001-11-18  Richard M. Stallman  <rms@gnu.org>
26833
26834	* xdisp.c (message_dolog_marker1, message_dolog_marker2)
26835	(message_dolog_marker3): New static variables hold three markers.
26836	(syms_of_xdisp): Initialize and staticpro them.
26837	(message_dolog): Use message_dolog_marker1..3 instead of
26838	allocating markers each time.  Unchain them when done.
26839
268402001-11-17  Richard M. Stallman  <rms@gnu.org>
26841
26842	* doc.c (Fsnarf_documentation): Doc fix.
26843
268442001-11-17  Andreas Schwab  <schwab@suse.de>
26845
26846	* xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
26847
268482001-11-17  Richard M. Stallman  <rms@gnu.org>
26849
26850	* fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
26851
268522001-11-17  Jason Rumney  <jasonr@gnu.org>
26853
26854	* xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
26855
268562001-11-17  Gerd Moellmann  <gerd@gnu.org>
26857
26858	* xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
26859	with invalid position.
26860
268612001-11-16  Richard M. Stallman  <rms@gnu.org>
26862
26863	* syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
26864
26865	* s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
26866	* s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
26867	* s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
26868
26869	* m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
26870
268712001-11-16  Stefan Monnier  <monnier@cs.yale.edu>
26872
26873	* fileio.c (build_annotations): Split off the tail.
26874	(build_annotations_2): New fun.  Extracted from build_annotations.
26875	(Fwrite_region): Split the call to build_annotations into two
26876	calls to build_annotations and build_annotations_2.
26877
268782001-11-16  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
26879
26880	* sysdep.c (wait_for_kbd_input) [VMS]: Do not call
26881	clear_waiting_for_input with argument.
26882
26883	* xterm.h (x_update_cursor): Remove duplicated prototype.
26884
26885	* keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
26886
26887	* xterm.c (waiting_for_input): Remove unnecessary declaration.
26888
26889	* data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
26890
268912001-11-16  Stefan Monnier  <monnier@cs.yale.edu>
26892
26893	* fileio.c (choose_write_coding_system): New fun, extracted
26894	from Fwrite_region.
26895	(Fwrite_region): Use it.
26896
26897	* eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
26898	(funcall_lambda, run_hook_with_args): Make static and add prototype.
26899	(ml_apply, find_handler_clause): Add prototype.
26900
269012001-11-16  Eli Zaretskii  <eliz@gnu.org>
26902
26903	* config.in: Add #undef HAVE_COFF_H.
26904
26905	* unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
26906	Required for ISC 4.1.
26907
269082001-11-16  Eli Zaretskii  <eliz@is.elta.co.il>
26909
26910	* syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1.  Reported by
26911	Andrew Wiseman <a.wiseman@btclick.com>.
26912
269132001-11-16  Kim F. Storm  <storm@cua.dk>
26914
26915	The following changes are made to clean up the various internal
26916	references to the fringes to actually use the term `fringe' for
26917	them.  Previously, they were called `flags areas', `bitmap areas',
26918	`left/right side of windows', or implicitly as `flags' or
26919	`bitmaps':
26920
26921	* dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
26922	Comments fixed.  Use renamed symbols.
26923
26924	* dispnew.c: Comment fix.  Use renamed symbols.
26925
26926	* frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
26927	(FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
26928	(FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
26929
26930	* msdos.c: Comment fix.
26931
26932	* w32fns.c: Use renamed symbols.
26933
26934	* w32term.c: Comment fixes.  Use renamed symbols.
26935	(fringe_bitmap_type): Renamed from bitmap_type.
26936	(NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
26937	(w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
26938	(x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
26939
26940	* w32term.h: Comment fixes.  Use renamed symbols.
26941	(fringes_extra): Renamed from flags_areas_extra.
26942	(FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
26943	(FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
26944	(FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
26945	(FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
26946	(FRAME_X_LEFT_FRINGE_WIDTH):
26947	Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
26948	(FRAME_X_RIGHT_FRINGE_WIDTH):
26949	Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
26950
26951	* widget.c: Use renamed symbols.
26952
26953	* window.c: Comment fixes.  Use renamed symbols.
26954	(coordinates-in-window-p): Doc fix.
26955
26956	* xdisp.c: Comment fixes.  Use renamed symbols.
26957
26958	* xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
26959
26960	* xfns.c: Use renamed symbols.
26961
26962	* xterm.c: Comment fixes.  Use renamed symbols.
26963	(fringe_bitmap_type): Renamed from bitmap_type.
26964	(NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
26965	(x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
26966	(x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
26967
26968	* xterm.h: Comment fixes.  Use renamed symbols.
26969	(fringes_extra): Renamed from flags_areas_extra.
26970	(FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
26971	(FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
26972	(FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
26973	(FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
26974	(FRAME_X_LEFT_FRINGE_WIDTH):
26975	Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
26976	(FRAME_X_RIGHT_FRINGE_WIDTH):
26977	Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
26978
269792001-11-15  Jason Rumney  <jasonr@gnu.org>
26980
26981	* w32menu.c (add-menu-item): Make help_echo and radio buttons
26982	work for most menu items.  From David Ponce
26983	<david.ponce@wanadoo.fr>.
26984
269852001-11-15  Gerd Moellmann  <gerd@gnu.org>
26986
26987	* xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
26988	Some x_set_* function expect to be called even if old and new
26989	value are equal.
26990
26991	* xdisp.c (build_desired_tool_bar_string): Accept zero
26992	tool_bar_button_relief.
26993
26994	* xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
26995
26996	* xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
26997
26998	* xterm.c (x_draw_bar_cursor): If the background color of the
26999	glyph under the cursor equals the frame's cursor color, use
27000	the glyph's foreground color for drawing the bar cursor.
27001
27002	* dispnew.c (direct_output_forward_char): Fix character/byte
27003	position comparison.
27004
270052001-11-15  Miles Bader  <miles@gnu.org>
27006
27007	* editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
27008	(Fdelete_field, Ffield_string, Ffield_string_no_properties):
27009	Update arguments to find_field.
27010	(Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
27011	(Fconstrain_to_field): Use LIMIT arg to shorten search time.
27012	* lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
27013	* minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
27014
270152001-11-14  Richard M. Stallman  <rms@gnu.org>
27016
27017	* editfns.c (Fpropertize): Allow call with 1 arg.
27018
27019	* dispextern.h (image_background, image_background_transparent):
27020	Conditionalize on HAVE_X_WINDOWS.
27021
270222001-11-13  Richard M. Stallman  <rms@gnu.org>
27023
27024	* print.c (Fprin1_to_string): Doc fix.
27025
27026	* sunfns.c (Fsun_change_cursor_icon): Doc fix.
27027
27028	* floatfns.c (Fceiling, Ffloor): Doc fixes.
27029
27030	* filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
27031
27032	* fileio.c (Ffile_accessible_directory_p): Doc fix.
27033
27034	* eval.c (syms_of_eval): Doc fix.
27035
27036	* coding.c (syms_of_coding): Doc fix.
27037
27038	* doc.c (Fsnarf_documentation): Doc fix.
27039
27040	* dispnew.c (syms_of_display): Doc fix.
27041
27042	* category.c (Fget_unused_category): Doc fix.
27043
27044	* buffer.c (syms_of_buffer): Doc fixes.
27045
270462001-11-14  Eli Zaretskii  <eliz@is.elta.co.il>
27047
27048	* print.c (prin1, print): Doc fix.
27049
270502001-11-14  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27051
27052	* fontset.h: Remove declarations of variables
27053	`Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
27054
27055	* fontset.c: Remove variables `Vhighlight_wrong_size_font' and
27056	`Vclip_large_size_font'.
27057
270582001-11-13  Jason Rumney  <jasonr@gnu.org>
27059
27060	* w32fns.c: Doc fix.
27061
270622001-11-13  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27063
27064	* xfaces.c (Fface_attributes_as_vector): Doc fix.
27065
27066	* fns.c: Doc fix.
27067
27068	* emacs.c: Doc fix.
27069
27070	* coding.c: Doc fix.
27071
27072	* cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
27073	* fontset.c, insdel.c, keymap.c: Change doc-string comments to
27074	`new style' [w/`doc:' keyword].
27075
270762001-11-12  Richard M. Stallman  <rms@gnu.org>
27077
27078	* xterm.c (XTread_socket): Don't update focus for EnterNotify or
27079	LeaveNotify events.  Only FocusIn and FocusOut do that now.
27080	(x_display_and_set_cursor): Do display hollow cursors in active
27081	minibuffer windows when they are not selected.
27082
270832001-11-12  Jason Rumney  <jasonr@gnu.org>
27084
27085	* w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
27086	* w32term.c: Change doc-string comments to `new style'
27087	[w/`doc:' keyword].  Doc fixes.
27088
27089	* w32fns.c: Don't define max.
27090	(Fx_open_connection): Only execute once.
27091
270922001-11-12  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27093
27094	* ccl.c: Change macros to use do-while block instead of if-else.
27095	Use braces to follow GNU Coding Standards.
27096
270972001-11-11  Richard M. Stallman  <rms@gnu.org>
27098
27099	* sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
27100
27101	* lread.c (read_escape): Use end_of_file_error for reporting eof.
27102
27103	* insdel.c (replace_range): Use adjust_markers_for_replace
27104	instead of adjust_markers_for_delete and adjust_markers_for_insert.
27105
27106	* intervals.h (set_text_properties, set_text_properties_1): Declare.
27107
27108	* textprop.c (set_text_properties_1): New subroutine
27109	broken out of set_text_properties.
27110	(set_text_properties): Use set_text_properties_1.
27111
27112	* intervals.c (graft_intervals_into_buffer):
27113	Use set_text_properties_1 to clear out properties.
27114
27115	* search.c (Freplace_match): Use replace_range to insert
27116	and delete.  Don't request property inheritance from
27117	surrounding text.
27118
271192001-11-10  Jason Rumney  <jasonr@gnu.org>
27120
27121	* w32fns.c (enum_font_cb2): Use leading @ on face name to detect
27122	vertical fonts.  Allow them if face name is explicitly specified.
27123	Do not give up if we find a font that cannot be converted to an xlfd.
27124
271252001-11-10  Gerd Moellmann  <gerd@gnu.org>
27126
27127	* unexelf.c (unexec): Use mmap/munmap to allocate buffers
27128	instead of malloc/free.
27129
271302001-11-09  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27131
27132	* xfaces.c (merge_face_vectors): Use braces to follow GNU
27133	Coding Standards.
27134	(Finternal_set_lisp_face_attribute): Likewise.
27135
27136	* buffer.c (Fbury_buffer): Likewise.
27137
27138	* indent.c (current_column_1): Remove unused variable `prev_col'.
27139
27140	* coding.c (encode_coding): Use precomputed value of `src'.
27141	(encode_coding): Remove unused variable `src_end'.
27142	(code_convert_region): Remove unused variables `count'.
27143
271442001-11-07  Jason Rumney  <jasonr@gnu.org>
27145
27146	* w32term.c (x_display_and_set_cursor): Do not move system caret
27147	if cursor_glyph is NULL.
27148
271492001-11-07  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27150
27151	* keymap.c (access_keymap): Fix compilation error.
27152
271532001-11-07  Miles Bader  <miles@gnu.org>
27154
27155	* xfns.c (x_set_frame_parameters): Avoid infinite recursion.
27156
271572001-11-07  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27158
27159	* intervals.c (graft_intervals_into_buffer):
27160	Remove #ifdef'd-out code.
27161	(graft_intervals_into_buffer): Remove unused variable `middle'.
27162
27163	* lread.c (Feval_region): Remove obsolete #ifdef'd-out
27164	code (eval-current-buffer).
27165	Change doc-string comments to `new style' [w/`doc:' keyword].
27166
271672001-11-06  Richard M. Stallman  <rms@gnu.org>
27168
27169	* keymap.c (access_keymap): Don't use initializers on Lisp_Object.
27170
271712001-11-06  Stefan Monnier  <monnier@cs.yale.edu>
27172
27173	* lread.c (read1): Fix behavior with nested backquoting.
27174
27175	* keyboard.c (make_lispy_event): Check integerness and fix
27176	Lisp_Object/int mixup.
27177
271782001-11-06  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27179
27180	* fns.c (copy_hash_table): Remove unused variable `v'.
27181
27182	* fontset.c (fontset_font_pattern): Remove unused variable
27183	`family_registry'.
27184
27185	* indent.c (current_column_1): Remove unused variable `prev_col'.
27186
271872001-11-05  Richard M. Stallman  <rms@gnu.org>
27188
27189	* m/news-risc.h (BROKEN_PROTOTYPES): Defined.
27190
27191	* buffer.c (Fkill_buffer): Don't delete auto save file
27192	if buffer is modified.
27193
271942001-11-05  Andrew Innes  <andrewi@gnu.org>
27195
27196	* w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
27197	CHECK_NUMBER_CDR.
27198
271992001-11-05  Richard M. Stallman  <rms@gnu.org>
27200
27201	* unexelf.c (unexec): Minor changes; clean up comments.
27202
272032001-11-05  Sam Steingold  <sds@gnu.org>
27204
27205	* w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
27206
272072001-11-05  Andreas Schwab  <schwab@suse.de>
27208
27209	* sound.c (sound_perror): Save errno from being clobbered.
27210
272112001-11-05  Dale Hagglund  <rdh@yottayotta.com>
27212
27213	* unexelf.c (unexec): Don't use `mmap'.  Instead, read and write
27214	the program image directly.
27215
272162001-11-05  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27217
27218	* buffer.h (Fbuffer_local_value): Add prototype.
27219
272202001-11-04  Richard M. Stallman  <rms@gnu.org>
27221
27222	* buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
27223	and CHECK_BUFFER.
27224
27225	* keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
27226	(record_char): Likewise.
27227
27228	* keyboard.c (make_lispy_event): Don't insist a drag event must
27229	move to a different buffer position.  Instead, check for moving at
27230	least double_click_fuzz.
27231
27232	* fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
27233
27234	* keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
27235
27236	* indent.c (current_column_1, Fmove_to_column): Separate the code
27237	for display-table glyphs from the code for buffer text, to fix
27238	bugs in the former.
27239
272402001-11-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
27241
27242	* buffer.c (Fbuffer_local_value): New function.
27243	(syms_of_buffer): Defsubr it.
27244
27245	* xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
27246	value of `cursor-in-non-selected-windows'.
27247
27248	* lisp.h (Qcursor_in_non_selected_windows): New declaration.
27249	* xdisp.c (Qcursor_in_non_selected_windows): New variable.
27250	(syms_of_xdisp): Initialize it.
27251
272522001-11-04  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27253
27254	* xfns.c (Fx_create_frame): Doc fix.
27255
27256	* coding.c: Change doc-string comments to `new style' [w/`doc:'
27257	keyword].
27258
27259	* eval.c (top_level_value, top_level_set): Remove commented and
27260	#ifdef'd-out code.
27261	(Fdefvar): Fix usage in doc-string.
27262
272632001-11-03  Richard M. Stallman  <rms@gnu.org>
27264
27265	* xfns.c: Include unistd.h, if it exists.
27266
27267	* editfns.c: Move the include of ctype.h after unistd.h.
27268
27269	* gmalloc.c: Test BROKEN_PROTOTYPES.
27270
272712001-11-03  Ken Raeburn  <raeburn@gnu.org>
27272
27273	* lisp.h (CHECK_STRING_CAR): New macro.
27274	* lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
27275	treating XCAR and XCDR as lvalues.
27276	(openp): Use CHECK_STRING_CAR.
27277	(read_list): Use XSETCDR instead of treating XCDR as lvalue.
27278
272792001-11-03  Eli Zaretskii  <eliz@is.elta.co.il>
27280
27281	* s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
27282	(SIGMASKTYPE): Define.
27283
27284	* syssignal.h (sigunblock): Don't define if already defined.
27285
272862001-11-02  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27287
27288	* eval.c (debugger_may_continue, Vdebug_ignored_errors)
27289	(call_debugger, Fcondition_case, skip_debugger, unbind_to):
27290	Fix typos in comments.
27291
27292	* mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
27293	and #ifdef'd-out code.
27294	Fix and reindent comments.
27295
27296	* mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
27297
27298	* category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
27299	argument `i' in macros.
27300
27301	* frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
27302	`i' in macros.
27303
27304	* lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
27305	(CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
27306	(CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
27307	(CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
27308	(CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
27309	(CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
27310	(CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
27311	(CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
27312	in macros.
27313
27314	* abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
27315	* casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
27316	* composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
27317	* eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
27318	* indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
27319	* minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
27320	* sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
27321	* w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
27322	* xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
27323	(remove unused second argument).
27324
273252001-11-02  Stefan Monnier  <monnier@cs.yale.edu>
27326
27327	* syntax.c (describe_syntax): New wrapper.
27328	(Finternal_describe_syntax_value): Rename from describe_syntax.
27329	Don't insert space at front and \n at the end.
27330	(syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
27331
27332	* regex.c (re_wctype): Try to fix some warnings.
27333	(regcomp, regexec): Don't forget the __restrict.
27334
273352001-11-02  Richard M. Stallman  <rms@gnu.org>
27336
27337	* textprop.c (Fget_char_property): Doc fix.
27338
273392001-11-02  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27340
27341	* process.c (Fstart_process): Add usage to doc-string.
27342
27343	* data.c (Fsetq_default): Ditto.
27344
27345	* callint.c (Finteractive): Ditto.
27346
273472001-11-01  Stefan Monnier  <monnier@cs.yale.edu>
27348
27349	* macros.c: Don't include keymap.h any more.
27350
273512001-11-01  Richard M. Stallman  <rms@gnu.org>
27352
27353	* data.c (Fmake_local_variable): Doc fix.
27354
27355	* eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
27356	(Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
27357
27358	* keymap.c (Fdescribe_buffer_bindings): Print character property
27359	bindings along with or instead of the buffer local map.
27360	Make the overriding maps override what they should.
27361
273622001-11-01  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27363
27364	* window.c (grow_mini_window): Fix typo in comment.
27365
273662001-11-01  Gerd Moellmann  <gerd@gnu.org>
27367
27368	* xterm.c (x_scroll_bar_create): Check for width and height > 0.
27369	(XTset_vertical_scroll_bar): Likewise.
27370
27371	* xfns.c (x_build_heuristic_mask): Use four_corners_best
27372	instead of IMAGE_BACKGROUND.
27373
27374	* xfns.c (four_corners_best): Reindent.
27375
27376	* xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27377	Handle :box so that it is possible to specify sexprs.
27378
273792001-10-31  Eli Zaretskii  <eliz@is.elta.co.il>
27380
27381	* s/hpux11.h: New file.
27382
273832001-10-31  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27384
27385	* emacs.c (USAGE1): Show command line option --no-window-system
27386	instead of --no-windows in usage.
27387	(standard_args): Rename --no-windows to --no-window-system.
27388	(bug_reporting_address): Follow Emacs coding conventions.
27389
27390	* eval.c (Fcommandp): Doc fix.
27391	Change doc-string comments to `new style' [w/`doc:' keyword].
27392
27393	* frame.c (Fframe_live_p): Doc fix.
27394
27395	* buffer.c (selective-display-ellipses): Doc fix.
27396
273972001-10-31  Gerd Moellmann  <gerd@gnu.org>
27398
27399	* lread.c (to_multibyte): Fix computation of new read_buffer_size.
27400
27401	* xfaces.c (realize_x_face): If C is not a single-byte character,
27402	set the face's colors_copied_bitwise_p instead of the defaulted_p
27403	members which have a different meaning.
27404	(free_face_colors): Do nothing for a face whose colors have been
27405	copied bitwise.
27406
27407	* dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
27408
274092001-10-31  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27410
27411	* marker.c, mocklisp.c: Change doc-string comments to `new style'
27412	[w/`doc:' keyword].
27413
274142001-10-31  Gerd Moellmann  <gerd@gnu.org>
27415
27416	* fns.c (require_unwind): Return Lisp_Object.
27417
274182001-10-31  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27419
27420	* keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
27421	(last-input-char): Revert doc-string to be the same as the
27422	doc-string of `last-input-event'.
27423
27424	* xdisp.c: Fix typos in comments.
27425
274262001-10-31  Gerd Moellmann  <gerd@gnu.org>
27427
27428	* window.c (grow_mini_window): Handle case that the root
27429	window is already smaller than the nominal mininum height.
27430
274312001-10-30  Stefan Monnier  <monnier@cs.yale.edu>
27432
27433	* emacs.c (main): Don't call keys_of_macros any more.
27434
27435	* lisp.h (keys_of_macros): Remove.
27436
27437	* macros.c (keys_of_macros): Remove.
27438
27439	* xfaces.c (Fface_attribute_relative_p): Declare args.
27440
274412001-10-30  Jason Rumney  <jasonr@gnu.org>
27442
27443	* w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
27444	(enum_font_cb2): Ignore fonts with vertical orientation.
27445
274462001-10-30  Richard M. Stallman  <rms@gnu.org>
27447
27448	* keyboard.c (Finput_pending_p): Doc fix.
27449
274502001-10-30  Gerd Moellmann  <gerd@gnu.org>
27451
27452	* xterm.c (x_after_update_window_line): Don't run the code
27453	clearing in borders for rows whose visible height is 0.
27454
27455	* xdisp.c (clear_garbaged_frames): Redraw the frame only if its
27456	resized_p flag is set.  If not set, use the much less flickering
27457	method previously used.
27458
27459	* dispnew.c (change_frame_size_1): Set frame's resized_p.
27460
27461	* frame.h (struct frame) <resized_p>: New member.
27462
27463	* lread.c (to_multibyte): Ensure read_buffer is at least twice
27464	as large as the number of bytes to convert.
27465
27466	* lread.c (to_multibyte): New function.
27467	(read1): Use it.
27468
274692001-10-30  Eli Zaretskii  <eliz@is.elta.co.il>
27470
27471	* msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
27472
274732001-10-30  Gerd Moellmann  <gerd@gnu.org>
27474
27475	* xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
27476	(x_set_glyph_string_background_width): Set extends_to_end_of_line_p
27477	if the row's fill_line_p is set and drawing the last glyph with
27478	DRAW_IMAGE_{RAISED,SUNKEN}.
27479
27480	* xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
27481
274822001-10-29  Stefan Monnier  <monnier@cs.yale.edu>
27483
27484	* xmenu.c: Include coding.h and charset.h.
27485	(Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
27486	(Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
27487	(single_submenu, xmenu_show): Use ENCODE_SYSTEM.
27488	Explicitly set wv->help.  Use `TRUE' rather than `True'.
27489	(menu_help_callback): Use empty_string.
27490
27491	* w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
27492	(Fx_popup_dialog): Explicitly init f.
27493	(w32_menu_display_help): Use empty_string.
27494
274952001-10-29  Richard M. Stallman  <rms@gnu.org>
27496
27497	* fns.c (Frequire): Detect recursive try to require the same
27498	feature 3 or more levels deep, and get error.
27499	(require_unwind): New subroutine.
27500	(require_nesting_list): New variable.
27501	(syms_of_fns): Init and staticpro it.
27502
27503	* print.c (print_object): Clarify indication of insertion type.
27504
275052001-10-29  Eli Zaretskii  <eliz@is.elta.co.il>
27506
27507	* coding.c (syms_of_coding): Document that locale-coding-system is
27508	used for decoding input on X.
27509
27510	* window.c (Fscroll_left, Fscroll_right): Doc fix.
27511
275122001-10-29  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27513
27514	* keyboard.c (Finput_pending_p): Fix typo in doc-string.
27515	(echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
27516
275172001-10-29  Gerd Moellmann  <gerd@gnu.org>
27518
27519	* xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
27520	use NO_CURSOR if cursor_in_non_selected_windows is false.
27521
27522	* xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
27523	the slant attribute if FRAME is t.
27524
27525	* xfns.c (x_set_internal_border_width): Set frame garbaged
27526	when X window doesn't exist yet.
27527
27528	* xterm.c (x_after_update_window_line): Clear internal border
27529	in different circumstances.
27530
27531	* xterm.c (XTread_socket) <KeyPress>: Don't use
27532	STRING_CHAR_AND_LENGTH if nchars == nbytes.  From Kenichi Handa
27533	<handa@etl.go.jp>.
27534
275352001-10-28  Eli Zaretskii  <eliz@is.elta.co.il>
27536
27537	* m/ibms390.h: New file.  From Adam Thornton
27538	<athornton@sinenomine.net>.
27539
275402001-10-28  Gerd Moellmann  <gerd@gnu.org>
27541
27542	* xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
27543
27544	* xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
27545	a loop counter.
27546
275472001-10-28  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27548
27549	* emacs.c: Use argv[0] instead of "emacs" when -t was specified.
27550
27551	* keyboard.c: Change doc-string comments to `new style' [w/`doc:'
27552	keyword].
27553	Fix typos in comments.
27554
27555	* emacs.c (bug_reporting_address): New function.
27556	Use it when displaying usage message.
27557
27558	* minibuf.c (read_minibuf): Remove unused external declaration of
27559	variable `Qread_only'.
27560
27561	* keymap.c (access_keymap): Remove unused variable `charset'.
27562
275632001-10-28  Miles Bader  <miles@gnu.org>
27564
27565	* xfaces.c (merge_face_heights): Handle TO being relative as well.
27566	Remove #ifdef'd-out code.
27567	(Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
27568	(syms_of_xfaces): Initialize them.
27569
275702001-10-27  Jason Rumney  <jasonr@gnu.org>
27571
27572	* w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
27573	<WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
27574	position using the system caret.
27575
27576	* w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
27577	(w32_system_caret_height, w32_system_caret_x)
27578	(w32_system_caret_y): New variables for tracking system caret.
27579	(w32_initialize): Initialize them.
27580	(x_display_and_set_cursor): Make system caret follow the active cursor.
27581
27582	* w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
27583	New messages types.
27584
27585	* w32term.c (note_mouse_highlight): Clear old help_echo.
27586
275872001-10-27  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27588
27589	* xterm.c: Fix typo in a comment.
27590
27591	* emacs.c: Fix typos in comments.
27592	Remove unnecessary spaces.
27593	Change doc-string comments to `new style' [w/`doc:' keyword].
27594	(USAGE2): Fix typos in usage string.
27595
27596	* xterm.c: Fix typo in a comment.
27597
27598	* lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
27599	emacs.c.
27600
276012001-10-27  Gerd Moellmann  <gerd@gnu.org>
27602
27603	* xdisp.c (move_it_vertically_backward): Use 2/3 line_height
27604	instead of 1/2 line_height in the heuristic for skipping
27605	farther backward when target_y was not reached.
27606
27607	* sound.c (sound_perror): Unblock SIGIO, turn on atimers.
27608	Display errno only if non-zero.
27609	(sound_warning): New function.
27610	(vox_configure): Don't treat failing to set sample rate as error.
27611	(various places): Improve error messages.
27612
276132001-10-26  Eli Zaretskii  <eliz@is.elta.co.il>
27614
27615	* fileio.c (Faccess_file): Run the argument filename through
27616	Fexpand_file_name, before using it.
27617
27618	* dispnew.c (syms_of_display) <visible-bell>: Add a reference to
27619	ring-bell-function.  Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
27620
276212001-10-26  Gerd Moellmann  <gerd@gnu.org>
27622
27623	* insdel.c (insert_1_both): Do nothing if NCHARS == 0.
27624
27625	* xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
27626	Fix clearing in the case of scroll bars on the right.
27627
276282001-10-26  Juanma Barranquero  <lektu@terra.es>
27629
27630	* w32gui.h (XImage): Add a dummy typedef.
27631
276322001-10-26  Gerd Moellmann  <gerd@gnu.org>
27633
27634	* xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
27635
276362001-10-25  Eli Zaretskii  <eliz@is.elta.co.il>
27637
27638	* frame.c (Fframe_parameter): Fix last change.
27639
27640	* fileio.c: Revert last change (which removed old commented-out
27641	version of expand-file-name).  Add a comment that explains why
27642	this old version should not be removed.
27643
276442001-10-25  Gerd Moellmann  <gerd@gnu.org>
27645
27646	* frame.c (Fframe_parameter): Fix a bug whereby some
27647	``artificial'' frame parameters, like `minibuffer' were not
27648	obtained by calling Fframe_parameters.
27649
27650	* xterm.c (show_mouse_face): Clean up.  Recognize overwritten
27651	cursor differently.
27652
27653	* xdisp.c (move_it_vertically_backward): Compute line height
27654	differently.  Add heuristic to try to be more compatible to 20.x.
27655
276562001-10-25  Stefan Monnier  <monnier@cs.yale.edu>
27657
27658	* lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
27659
27660	* editfns.c (text_property_stickiness): Fix Lisp_Object used as
27661	boolean.
27662
276632001-10-25  Miles Bader  <miles@gnu.org>
27664
27665	* xfns.c (png_load): Make sure SPECIFIED_BG is a string.
27666	BG is a pointer to a structure, not a structure.
27667	(gif_format, png_format): Add missing commas.
27668
276692001-10-24  Richard M. Stallman  <rms@gnu.org>
27670
27671	* xfaces.c (Fface_attributes_as_vector): New function.
27672	(syms_of_xfaces): Defsubr it.
27673
276742001-10-24  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27675
27676	* dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
27677	variable `area'.
27678
276792001-10-25  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27680
27681	* search.c (scan_newline): Remove unused variable `selective_display'.
27682
276832001-10-25  Miles Bader  <miles@gnu.org>
27684
27685	* dispextern.h (struct image): Add `background',
27686	`background_valid', and `background_transparent' fields.
27687	(image_background, image_background_transparent): New declarations.
27688	(IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
27689	* xfns.c (image_background, image_background_transparent)
27690	(four_corners_best): New functions.
27691	(xpm_format, png_format, jpeg_format, tiff_format, gif_format)
27692	(gs_format): Add `:background' entry.
27693	(lookup_image): Set IMG's background color if specified.
27694	(pbm_load, xbm_load_image, png_load): Set IMG's background field
27695	when appropriate.
27696	(x_clear_image_1): Reset `background_valid' and
27697	`background_transparent_valid' fields.
27698	(x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
27699	calculating it here.  Set IMG's background_transparent field.
27700	(enum xpm_keyword_index): Add XPM_BACKGROUND.
27701	(enum png_keyword_index): Add PNG_BACKGROUND.
27702	(enum jpeg_keyword_index): Add JPEG_BACKGROUND.
27703	(enum tiff_keyword_index): Add TIFF_BACKGROUND.
27704	(enum gif_keyword_index): Add GIF_BACKGROUND.
27705	(enum gs_keyword_index): Add GS_BACKGROUND.
27706	(pbm_load, png_load, jpeg_load, tiff_load, gif_load):
27707	Pre-calculate image background color where necessary.
27708	* xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
27709	`IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
27710	color to use for image glyph reliefs.
27711
277122001-10-24  Gerd Moellmann  <gerd@gnu.org>
27713
27714	* xterm.c (x_draw_glyphs): Don't check for cursor overwriting
27715	in full-width rows.
27716
27717	* xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
27718	Fix clearing of area not covered by scroll bar.
27719
277202001-10-24  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27721
27722	* xterm.c (x_insert_glyphs): Remove unused variables `real_end'
27723	and `real_start'.
27724	(x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
27725	(glyph_rect): Remove unused variable `area'.
27726
277272001-10-24  Gerd Moellmann  <gerd@gnu.org>
27728
27729	* xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
27730
27731	* xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
27732	(row_containing_pos): Take additional argument DY.
27733	Treat rows ending in middle of char differently.
27734	(display_line): Handle tabs on window systems differently.
27735
27736	* xterm.c, w32term.c (fast_find_position): Call row_containing_pos
27737	with additional argument.
27738
27739	* dispextern.h (row_containing_pos): Adjust prototype.
27740
27741	* xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
27742	(inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
27743	(try_window_id, try_window_reusing_current_matrix)
27744	(try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
27745	(syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
27746
277472001-10-24  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27748
27749	* xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
27750	gnuemacs).
27751	(HAVE_BOXES): Fix typo in comment.
27752	(push_menu_pane): Fix typo in comment.
27753
27754	* xdisp.c (display_prop_string_p): Remove unused local declaration
27755	of `Qwhen'.
27756	(single_display_prop_string_p): Remove unused local declarations
27757	of `Qwhen' and `Qmargin'.
27758	(string_buffer_position): Remove unused variable `around'.
27759	(store_frame_title): Remove unused variable `width'.
27760
27761	* window.c: Don't define max.
27762	(coordinates_in_window): Remove unused variable `uy'.
27763
27764	* widget.c: Don't define max.
27765
27766	* process.c: Don't define max.
27767	(create_process): Remove unused variable `buffer'.
27768
277692001-10-23  Gerd Moellmann  <gerd@gnu.org>
27770
27771	* xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
27772
277732001-10-23  Eli Zaretskii  <eliz@is.elta.co.il>
27774
27775	* xfaces.c (Finternal_set_lisp_face_attribute)
27776	[HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
27777	frame is on a windowed display.
27778
277792001-10-23  Gerd Moellmann  <gerd@gnu.org>
27780
27781	* dispnew.c (sync_window_with_frame_matrix_rows):
27782	Fix handling of windows which aren't full-width, fix handling
27783	of marginal areas.
27784
27785	* lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
27786
277872001-10-23  Andreas Schwab  <schwab@suse.de>
27788
27789	* m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
27790	LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
27791
277922001-10-23  Gerd Moellmann  <gerd@gnu.org>
27793
27794	* xterm.c (x_draw_glyphs): Remove parameters READ_START and
27795	REAL_END.  Notice if cursor gets overwritten.
27796	(notice_overwritten_cursor): Take X positions as parameters.
27797	(x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
27798	around call to x_draw_glyphs.
27799
278002001-10-23  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27801
27802	* syntax.c (modify-syntax-entry): Fix argument names (use CHAR
27803	instead of C) and usage.
27804
27805	* editfns.c (char-to-string): Fix argument names (use CHAR instead
27806	of C) and usage.
27807
27808	* xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
27809	`left', `max_width' and `max_height'.
27810
278112001-10-23  Gerd Moellmann  <gerd@gnu.org>
27812
27813	* xdisp.c (display_line): For a tab continued to the next line,
27814	set row's ends_in_middle_of_char_p.
27815
278162001-10-22  Gerd Moellmann  <gerd@gnu.org>
27817
27818	* xdisp.c (display_line): Fix computation of continuation lines
27819	width for TABs.
27820
278212001-10-22  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27822
27823	* xdisp.c (build_desired_tool_bar_string): Remove unused variable
27824	`Qlaplace'.
27825
27826	* fileio.c: Remove unused code.
27827
278282001-10-22  Miles Bader  <miles@gnu.org>
27829
27830	* lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
27831	(DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
27832	Remove `DOC_STRINGS_IN_COMMENTS' cases.
27833
278342001-10-21  Jason Rumney  <jasonr@gnu.org>
27835
27836	* w32term.c (x_erase_phys_cursor): Remove inverse_p again.
27837
278382001-10-21  Eli Zaretskii  <eliz@is.elta.co.il>
27839
27840	* mocklisp.c (Fml_if, Fml_provide_prefix_argument)
27841	(Finsert_string): Avoid the multi-line string literals warning.
27842
278432001-10-22  Miles Bader  <miles@gnu.org>
27844
27845	* doc.c (Vhelp_manyarg_func_alist): Variable removed.
27846	(Fdocumentation): Don't use it.
27847	(syms_of_doc): Don't initialize it.
27848
27849	* keyboard.c (Ftrack_mouse): Add usage: string to doc string.
27850	* print.c (Fwith_output_to_temp_buffer): Likewise.
27851	* window.c (Fsave_window_excursion): Likewise.
27852	* editfns.c (Fsave_excursion, Fsave_current_buffer)
27853	(Fsave_restriction): Likewise.
27854	* eval.c (Frun_hooks, Frun_hook_with_args)
27855	(Frun_hook_with_args_until_failure)
27856	(Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
27857	(Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
27858	(Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
27859	(Funwind_protect, Fcondition_case): Likewise.
27860	* coding.c (Ffind_operation_coding_system): Likewise.
27861	* keyboard.c (Ftrack_mouse): Likewise.
27862
278632001-10-21  Miles Bader  <miles@gnu.org>
27864
27865	* fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
27866	(Fmake_hash_table): Add usage: string to doc string.
27867	* editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
27868	(Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
27869	(Fencode_time, Finsert_and_inherit_before_markers): Likewise.
27870	* mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
27871	(Fml_prefix_argument_loop): Likewise.
27872
278732001-10-21  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
27874
27875	* fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
27876
27877	* sysdep.c (init_sys_modes): Change doc-string comments to `new
27878	style' [w/`doc:' keyword].
27879
27880	* data.c, fileio.c, indent.c, print.c, search.c, sound.c,
27881	* sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
27882	comments to `new style' [w/`doc:' keyword].
27883
278842001-10-21  Jason Rumney  <jasonr@gnu.org>
27885
27886	* w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
27887
27888	* w32term.c (remember_mouse_glyph): New function.
27889	(w32_mouse_position): Use it.
27890	(note_mouse_movement): If the mouse moved off the glyph, remember
27891	its new position.
27892
27893	* w32term.h (struct w32_output): Correct spelling of x_compatible.
27894	(w32_display_info): Add mouse_face_overlay.
27895
27896	* w32term.c (notice_overwritten_cursor): Renamed from
27897	note_overwritten_text_cursor.  Rewritten to take glyph widths into
27898	account.
27899	(x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
27900	(fast_find_string_pos): New function.
27901	(fast_find_position): Return the correct vpos.  Add parameter
27902	STOP.  In the final row, stop before glyphs having STOP as object.
27903	Don't consider glyphs that are not from a buffer.
27904	(fast_find_position) [0]: Add a presumably more correct version
27905	for after 21.1.
27906	(expose_window_tree, expose_frame): Don't compute intersections here.
27907	(expose_window): Do it here instead.
27908	(expose_window_tree, expose_window, expose_line): Return 1 when
27909	overwriting mouse-face.
27910	(expose_window): If W is the window currently being updated, mark
27911	the frame garbaged.
27912	(expose_frame): If mouse-face was overwritten, redo it.
27913	(x_use_underline_position_properties): New variable.
27914	(syms_of_xterm): DEFVAR_BOOL it.
27915	(x_draw_glyph_string): Add comment to use it in future.
27916	(x_draw_glyph_string): Restore clipping after drawing box.
27917	Fix a computation of the underline position.
27918	(w32_get_glyph_string_clip_rect): Minor cleanup.
27919	(x_fill_stretch_glyph_string): Remove an assertion.
27920	(x_produce_glyphs): Don't convert multibyte characters
27921	to unibyte characters in unibyte buffers.
27922	(cursor_in_mouse_face_p): New function.
27923	(x_draw_stretch_glyph_string): Use it to choose a different GC
27924	when drawing a cursor within highlighted text.  Don't draw
27925	background again if it has already been drawn.
27926	(x_draw_glyph_string_box): Don't draw a full-width
27927	box just because the glyph row's full_width_p flag is set.
27928	(x_draw_glyphs): Fix computation of rightmost x for
27929	full-width rows.
27930	(x_dump_glyph_string): Put in #if GLYPH_DEBUG.
27931	(w32_draw_relief_rect): Extend left shadow to the bottom and left;
27932	change bottom shadow accordingly.  Some cleanup.
27933	(x_update_window_end): Handle overwritten mouse face
27934	also for tool bar windows.
27935	(show_mouse_face): Set the glyph row's mouse_face_p flag also when
27936	DRAW is DRAW_IMAGE_RAISED.
27937	(clear_mouse_face): Return 1 if text with mouse face was
27938	actually redrawn.  Make the function static.
27939	Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
27940	optimize away highlighting if we pass over that same overlay again.
27941	(note_mouse_highlight): Call mouse_face_overlay_overlaps
27942	to detect a case where we have to highlight a different region
27943	despite not having left the currently highlighted region.
27944	Set mouse_face_overlay in the x_display_info.  Avoid changing the
27945	mouse pointer shape when show_mouse_face has already done it, or
27946	there is no need.  Handle mouse-face and help-echo in strings.
27947	(glyph_rect): New function.
27948	(w32_mouse_position): Use it to raise the threshold for mouse
27949	movement event generation.
27950	(w32_initialize_display_info): Initialize the x_display_info's
27951	mouse_face_overlay.
27952	(w32_set_vertical_scroll_bar): Don't clear a zero height
27953	or width area.
27954	(w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
27955	a widget to zero height.
27956
27957	* w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
27958	Protect unibyte strings created by replacing their multibyte
27959	equivalents in menu_items.
27960	(w32_menu_show): Don't overwrite an item's name with its key
27961	description in case the description is a multibyte string.
27962	(single_submenu): Some cleanup.
27963
27964	* w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
27965	(postprocess_image): New function.
27966	(lookup_image): Call it for all image types except PostScript.
27967	(x_kill_gs_process): Call postprocess_image.
27968	(tiff_error_handler, tiff_warning_handler): New functions.
27969	(tiff_load): Install them as handlers.
27970	(x_kill_gs_process): Recognize if someone has cleared the image
27971	cache under us.
27972	(valid_image_p): Protect better against invalid image
27973	specifications.  Previous code could signal an error.
27974	(Fx_hide_tip, Fshow_tip): Doc fix.
27975	(Fv_max_tooltip_size): New variable.
27976	(syns_of_xfns): DEFVAR_LISP it.
27977	(Fx_show_tip): Add parameter TEXT.  Set the tip frame's root
27978	window buffer to *tip* right after creating the frame.  Set frame's
27979	window_width.  Use a maximum tooltip size specified by
27980	Vx_max_tooltip_size, if that has valid contents.
27981	(compute_tip_xy): Add parameters WIDTH and HEIGHT.
27982	Make sure the tooltip is completely visible.
27983	(x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
27984	(Fx_create_frame): Adjust the frame's height for presence
27985	of the tool bar before calling x_figure_window_size.
27986	(x_set_tool_bar_lines): Clear the tool bar window's current matrix
27987	when the window gets smaller.
27988	(x_set_foreground_color): Set frame's cursor_pixel.
27989	(x_set_foreground_color, x_set_background_color): Cleaned up.
27990	(x_set_font): Handle case of x_new_fontset returning the same name
27991	as before, although there was a change in fontsets.
27992
279932001-10-21  Miles Bader  <miles@gnu.org>
27994
27995	* data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
27996	(Flogxor): Add usage: string to doc string.
27997	* charset.c (Fstring): Likewise.
27998	* callproc.c (Fcall_process_region, Fcall_process): Likewise.
27999	* alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
28000
280012001-10-21  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
28002
28003	* buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
28004
28005	* alloc.c: Reindent DEFUNs with doc: keywords.
28006
28007	* abbrev.c (Finsert_abbrev_table_description): Reindent.
28008
28009	* frame.c: Change doc-string comments to `new style' [w/`doc:'
28010	keyword].
28011
28012See ChangeLog.9 for earlier changes.
28013
28014;; Local Variables:
28015;; coding: iso-2022-7bit
28016;; add-log-time-zone-rule: t
28017;; End:
28018
28019    Copyright (C) 2001, 2002, 2003, 2004, 2005,
28020	2006, 2007 Free Software Foundation, Inc.
28021
28022  This file is part of GNU Emacs.
28023
28024  GNU Emacs is free software; you can redistribute it and/or modify
28025  it under the terms of the GNU General Public License as published by
28026  the Free Software Foundation; either version 2, or (at your option)
28027  any later version.
28028
28029  GNU Emacs is distributed in the hope that it will be useful,
28030  but WITHOUT ANY WARRANTY; without even the implied warranty of
28031  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
28032  GNU General Public License for more details.
28033
28034  You should have received a copy of the GNU General Public License
28035  along with GNU Emacs; see the file COPYING.  If not, write to the
28036  Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
28037  Boston, MA 02110-1301, USA.
28038
28039;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4
28040