]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2006-07-29 Eli Zaretskii <eliz@gnu.org>
2
3 * coding.c (Ffind_operation_coding_system): Revert the change from
4 2006-05-29.
5
6 * alloc.c [WINDOWSNT]: Include fcntl.h, to fix last change.
7
8 2006-07-28 Richard Stallman <rms@gnu.org>
9
10 * xfaces.c (lookup_named_face, Fdisplay_supports_face_attributes_p):
11 Add conditional aborts for clarity.
12
13 * xdisp.c (update_menu_bar): New arg HOOKS_RUN. Callers changed.
14 Used to avoid running the hooks over and over for each frame.
15 (prepare_menu_bars): Pass value from update_menu_bar
16 as HOOKS_RUN of next call.
17
18 * keyboard.c (safe_run_hooks_1): Don't crash if Vrun_hooks is nil.
19
20 2006-07-28 Kim F. Storm <storm@cua.dk>
21
22 * alloc.c (valid_pointer_p): New function (from valid_lisp_object_p).
23 (valid_lisp_object_p): Use it to check for valid SUBRP obj.
24
25 2006-07-26 Chong Yidong <cyd@stupidchicken.com>
26
27 * keyboard.c (read_char): New arg END_TIME specifying timeout.
28 All callers changed. Turn off echoing if END_TIME is non-NULL.
29 (kbd_buffer_get_event): New arg END_TIME.
30
31 * lread.c (read_filtered_event): New arg SECONDS to wait until.
32 (Fread_char, Fread_event, Fread_char_exclusive): New arg SECONDS.
33
34 * lisp.h: Update read-char, read-event, and read_filtered_event
35 prototypes.
36
37 * keyboard.h: Include systime.h. Update read_char prototype.
38
39 2006-07-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
40
41 * alloc.c (find_string_data_in_pure): New function.
42 (make_pure_string): Use it to reuse existing string data if possible.
43
44 * puresize.h (BASE_PURESIZE): Decrease to 1102000.
45
46 2006-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
47
48 * keymap.c (Fdefine_key): If the key binding definition looks like an
49 XEmacs-style key sequence, convert it to Emacs's format.
50
51 2006-07-22 Ralf Angeli <angeli@caeruleus.net>
52
53 * w32fns.c (w32_createwindow): If `left' and/or `top' frame
54 parameters are bound to some values, use that instead of
55 CW_USEDEFAULT.
56
57 2006-07-21 Eli Zaretskii <eliz@gnu.org>
58
59 * w32.c (convert_time): Use explicit long double constants to
60 ensure long double arithmetics is used throughout.
61
62 2006-07-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
63
64 * alloc.c (pure_bytes_used_lisp, pure_bytes_used_non_lisp): New vars.
65 (init_alloc_once): Initialize them.
66 (pure_alloc): Allocate non-Lisp objects from the end of pure storage
67 without alignment.
68
69 * puresize.h (BASE_PURESIZE): Decrease to 1141000.
70
71 2006-07-18 Francis Litterio <franl@world.std.com>
72
73 * w32term.c (x_calc_absolute_position): Fix frame positioning
74 with negative X/Y coordinates.
75
76 2006-07-18 Dan Nicolaescu <dann@ics.uci.edu>
77
78 * xterm.c (x_connection_closed, x_error_quitter): Mark as NO_RETURN.
79
80 * textprop.c (text_read_only): Likewise.
81
82 * lread.c (end_of_file_error): Likewise.
83
84 * lisp.h (circular_list_error, memory_full, buffer_memory_full):
85 Likewise.
86
87 * eval.c (unwind_to_catch): Likewise.
88
89 * buffer.h (buffer_slot_type_mismatch): Likewise.
90
91 2006-07-18 Kim F. Storm <storm@cua.dk>
92
93 Cleanup Fsignal calls that never returns; now only use it for Qquit.
94
95 * eval.c (xsignal): New func. Like Fsignal, but marked no-return.
96 (xsignal0, xsignal1, xsignal2, xsignal3): New no-return functions.
97 (signal_error): New no-return function (from xfaces.c).
98 (Fthrow): Use xsignal2 instead of Fsignal + abort.
99 (error): Use xsignal1 instead of Fsignal + abort.
100 (FletX, Flet, grow_specpdl): Use signal_error.
101 (Feval, Ffuncall, funcall_lambda): Use xsignal1, xsignal2.
102
103 * alloc.c (buffer_memory_full, memory_full): Use xsignal. Remove loop.
104 (list1): New function.
105
106 * lisp.h (list1): Add EXFUN.
107 (xsignal, xsignal0, xsignal1, xsignal2, xsignal3, signal_error):
108 Add prototypes. Mark them as no-return.
109
110 * buffer.c (Fbuffer_local_value, Fbarf_if_buffer_read_only):
111 Use xsignal1.
112
113 * callint.c (check_mark): Use xsignal0.
114
115 * casefiddle.c (casify_object): wrong_type_argument is no-return.
116
117 * cmds.c (Fforward_char, Fdelete_char): Use xsignal0.
118
119 * coding.c (Fcheck_coding_system): Use xsignal1. Remove loop.
120 (Fdefine_coding_system_internal): Use xsignal1.
121
122 * data.c (circular_list_error): Use xsignal.
123 (wrong_type_argument): Use xsignal2. Don't care about return value.
124 (args_out_of_range, args_out_of_range_3): Use xsignal2, xsignal3.
125 Remove loop around Fsignal.
126 (indirect_variable, Fsymbol_value, set_internal, Fdefault_value)
127 (indirect_function, Findirect_function, Fstring_to_number)
128 (Fmakunbound, Ffmakunbound, Fsymbol_function, Ffset): Use xsignal1.
129 (arith_driver, float_arith_driver, Frem, Fmod, arith_error):
130 Use xsignal0.
131
132 * doc.c (Fdocumentation): Use xsignal1.
133
134 * editfns.c (region_limit, Fget_internal_run_time): Use xsignal0.
135
136 * fileio.c (report_file_error): Use xsignal.
137 (barf_or_query_if_file_exists, Fcopy_file, Fdelete_file)
138 (Finsert_file_contents): Use xsignal2.
139 (syms_of_fileio): Use list2, list3.
140
141 * floatfns.c (arith_error, range_error, domain_error): Use xsignal2.
142 (range_error2, domain_error2): Use xsignal3.
143 (rounding_driver, fmod_float): Use xsignal0.
144 (float_error): Use xsignal1.
145 (matherr): Use xsignal.
146
147 * fns.c (Flength): wrong_type_argument is no-return.
148 (hashfn_user_defined, Fmake_hash_table): Use signal_error.
149 (Fmd5): Use xsignal1.
150
151 * frame.c (x_set_line_spacing, x_set_screen_gamma): Use signal_error.
152
153 * keyboard.c (recursive_edit_1): Use xsignal1.
154
155 * keymap.c (Fmap_keymap): Use xsignal1.
156
157 * lread.c (Fload): Use xsignal2, signal_error.
158 (end_of_file_error): Use xsignal0, xsignal1.
159 (read0): Use xsignal1.
160 (invalid_syntax): New error function marked no-return.
161 (read_integer, read1, read_list): Use it.
162
163 * macselect.c (x_get_local_selection): Use signal_error.
164
165 * msdos.c (Fmsdos_set_mouse_buttons): Use xsignal2.
166
167 * search.c (compile_pattern_1): Use xsignal1.
168 (signal_failure): Remove (was only called once).
169 (search_command): Use xsignal1 instead of signal_failure.
170
171 * syntax.c (scan_lists): Use xsignal3.
172
173 * textprop.c (text_read_only): Use xsignal0, xsignal1.
174
175 * unexsol.c (unexec): Use xsignal.
176
177 * window.c (window_scroll_pixel_based, window_scroll_line_based):
178 Use xsignal0.
179
180 * xfaces.c (signal_error): Move to eval.c.
181 (resolve_face_name): Use xsignal1.
182
183 * xfns.c (x_decode_color): Use signal_error.
184
185 * xselect.c (x_get_local_selection, copy_multiple_data)
186 (x_get_window_property_as_lisp_data)
187 (lisp_data_to_selection_data, CHECK_CUT_BUFFER)
188 (Fx_get_cut_buffer_internal): Use signal_error.
189
190 2006-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
191
192 * macterm.c (XTread_socket): Undo previous change.
193
194 2006-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
195
196 * macterm.c (keycode_to_xkeysym): Remove function. All uses now
197 directly lookup keycode_to_xkeysym_table.
198 [USE_MAC_TSM] (mac_handle_text_input_event): Don't construct
199 ASCII_KEYSTROKE_EVENT for non-zero keycode_to_xkeysym_table entries.
200 (XTread_socket): Use character codes to construct keypad key events.
201 (mac_initialize_display_info) [MAC_OSX]: Use CGDisplaySamplesPerPixel.
202 (x_delete_display): Apply 2006-07-04 change for xterm.c.
203
204 2006-07-17 Richard Stallman <rms@gnu.org>
205
206 * keyboard.c (Vcommand_error_function): New variable.
207 (syms_of_keyboard): Defvar it.
208 (cmd_error_internal): Simplify, and handle Vcommand_error_function.
209
210 * dispnew.c (init_display): Mention DISPLAY as well as TERM in err msg.
211
212 2006-07-17 Kim F. Storm <storm@cua.dk>
213
214 * xdisp.c (handle_single_display_spec): Ensure the right value of
215 it->position is saved by push_it.
216 (pop_it): Restore it->object for GET_FROM_BUFFER and GET_FROM_STRING.
217 (reseat_1): Don't setup it->object twice.
218 (set_iterator_to_next): No need to set it->object after pop_it.
219 (move_it_to): Explicitly check to see if last move reached to_charpos.
220
221 2006-07-17 Thien-Thi Nguyen <ttn@gnu.org>
222
223 * xdisp.c (display_mode_line): Preserve match data.
224
225 2006-07-14 Kim F. Storm <storm@cua.dk>
226
227 * w32.c (pfn_WSACreateEvent, pfn_WSACloseEvent): New func ptrs.
228 (init_winsock): Load them. Use ws2_32.dll.
229 (sys_listen): Undo last change. Just set FILE_LISTEN flag.
230 (sys_accept): Undo last change. Instead, set child status to
231 STATUS_READ_ACKNOWLEDGED and reset char_avail event so next
232 sys_select will wakeup the reader thread.
233 (_sys_wait_accept): New function used by reader thread to wait for
234 an incoming connection on a server socket.
235
236 * w32.h (_sys_read_ahead, _sys_wait_accept): Add prototypes.
237
238 * w32proc.c (reader_thread): Use _sys_wait_accept to wait on a
239 server socket (FILE_LISTEN flag).
240
241 2006-07-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
242
243 * sound.c (alsa_init): Call snd_pcm_close after successful snd_pcm_open.
244
245 2006-07-14 Kim F. Storm <storm@cua.dk>
246
247 * w32.c: Fix high cpu load for server sockets.
248 (pfn_WSAEventSelect): New function ptr.
249 (init_winsock): Load it.
250 (sys_listen): Set FILE_LISTEN flag. Set event mask for socket's
251 char_avail event object to FD_ACCEPT.
252 (sys_accept): Check FILE_LISTEN flag. Set event mask on new
253 socket's char_avail event object to FD_READ|FD_CLOSE.
254
255 * w32.h (FILE_LISTEN): New filedesc flag value.
256
257 2006-07-13 Kim F. Storm <storm@cua.dk>
258
259 * bytecode.c (Fbyte_code): Use CAR, CDR for Bcar, Bcdr.
260 Use CAR_SAFE, CDR_SAFE for Bcar_safe, Bcdr_safe.
261 Simplify loops and use CAR for Bnth and Belt.
262
263 * data.c (Findirect_function): Optimize for no indirection.
264
265 * eval.c (Fthrow): Remove loop around Fsignal.
266 (Feval, Fapply, Ffuncall): Optimize for no function indirection.
267 Use original function name in all signaled errors.
268 Simplify Fsignal calls (no return).
269 (funcall_lambda): Simplify Fsignal calls (no return).
270
271 2006-07-13 Andreas Schwab <schwab@suse.de>
272
273 * syntax.c (scan_sexps_forward): Use EMACS_INT for out_bytepos and
274 out_charpos.
275
276 2006-07-13 Kenichi Handa <handa@m17n.org>
277
278 * editfns.c (Fformat): Fix calculation of text property positions
279 of format string.
280
281 2006-07-12 Kim F. Storm <storm@cua.dk>
282
283 * lisp.h (CHECK_TYPE): New macro for generic type checking.
284 (CAR_SAFE, CDR_SAFE): New macros.
285 (ARRAYP, CHECK_ARRAY): New macros.
286 (CHECK_VECTOR_OR_STRING, CHECK_SUBR): New macros.
287 (CHECK_WINDOW_CONFIGURATION): New macro.
288 (CHECK_LIST_CONS, CHECK_LIST_END): New checks for list traversal.
289 (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
290 (CHECK_STRING, CHECK_STRING_CAR, CHECK_CONS, CHECK_SYMBOL)
291 (CHECK_CHAR_TABLE, CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE)
292 (CHECK_BUFFER, CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS)
293 (CHECK_NUMBER, CHECK_NATNUM, CHECK_MARKER, CHECK_OVERLAY)
294 (CHECK_NUMBER_COERCE_MARKER, CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
295 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER): Use CHECK_TYPE.
296
297 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET):
298 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Use CHECK_TYPE.
299
300 * callint.c (Fcall_interactively):
301 * casefiddle.c (casify_object):
302 * editfns.c (general_insert_function):
303 * fns.c (Flength, Felt, Ffillarray):
304 * data.c (Fcar, Fcdr): Remove loop around wrong_type_argument.
305
306 * data.c (wrong_type_argument): Remove loop around Fsignal.
307 (Farrayp, Fsequencep): Use ARRAYP.
308 (Fcar): Use CAR.
309 (Fcar_safe): Use CAR_SAFE.
310 (Fcdr): Use CDR.
311 (Fcdr_safe): Use CDR_SAFE.
312 (Fsetcar, Fsetcdr): Use CHECK_CONS.
313 (Fsubr_arity, Fsubr_name): Use CHECK_SUBR.
314 (Faset): Use CHECK_ARRAY.
315
316 * fns.c (Felt): Use CHECK_ARRAY.
317 (concat): Use CHECK_NUMBER.
318 (Fsubstring, substring_both): Use CHECK_VECTOR_OR_STRING.
319 (Fmemq): Use CHECK_LIST.
320 (Fassq, Fassoc, Frassq, Frassoc): Use CAR.
321 (assq_no_quit): Use CAR_SAFE.
322 (Fnthcdr, Fmember, Fdelq, Fdelete, Fnreverse, Fnconc):
323 Use CHECK_LIST_CONS.
324 (Freverse, Fplist_get, Flax_plist_get): Use CHECK_LIST_END.
325
326 * bytecode.c (Fbyte_code): Use CHECK_VECTOR.
327
328 * casetab.c (check_case_table):
329 * category.c (check_category_table):
330 * marker.c (Fcopy_marker):
331 * syntax.c (check_syntax_table):
332 * xfaces.c (load_pixmap): Use CHECK_TYPE.
333
334 * fns.c (Fcopy_sequence, concat):
335 * fringe.c (Fdefine_fringe_bitmap):
336 * lread.c (check_obarray): Cleanup wrong_type_argument use.
337
338 * keyboard.c (access_keymap_keyremap): Use ARRAYP.
339
340 * keymap.c (Fdefine_key, Flookup_key):
341 * macros.c (Fstart_kbd_macro): Use CHECK_VECTOR_OR_STRING.
342
343 * mac.c (Fmac_get_preference): Use CHECK_LIST_END.
344
345 * search.c (Fset_match_data): Use CHECK_LIST.
346
347 * sunfns.c (sun_item_create): Use CHECK_LIST_CONS.
348
349 * window.c (Fwindow_configuration_frame, Fset_window_configuration):
350 (compare_window_configurations): Use CHECK_WINDOW_CONFIGURATION.
351
352 2006-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
353
354 * Makefile.in (dired.o, editfns.o, fileio.o): Depend on blockinput.h.
355
356 * dired.c: Include blockinput.h.
357 (Ffile_attributes): Add BLOCK_INPUT around getpwuid/getgrgid.
358
359 * editfns.c: Include blockinput.h.
360 (Fuser_login_name, Fuser_full_name): Add BLOCK_INPUT around
361 getpwuid/getpwnam.
362
363 * fileio.c: Include blockinput.h.
364 (Fexpand_file_name, search_embedded_absfilename): Add BLOCK_INPUT
365 around getpwnam.
366 (search_embedded_absfilename): Remove spurious xfree.
367
368 2006-07-11 Kim F. Storm <storm@cua.dk>
369
370 * dispnew.c (sit_for): Reduce number of args from 5 to 3.
371 Now just one TIMEOUT arg that can be a Lisp float or Lisp int.
372 Combine args DISPLAY and INITIAL_DISPLAY into one arg DO_DISPLAY.
373 Signal error if TIMEOUT is not a number.
374 Undo 2006-06-14 change for non-preemptive display if TIMEOUT < 0.
375 The rework of sit_for args also fixes several incorrect Qt args
376 which should have been 1.
377 (Fredisplay): Pass 1 instead of Qt to swallow_events and
378 detect_input_pending_run_timers.
379
380 * lisp.h (sit_for): Update prototype.
381 (Fredisplay): Add EXFUN.
382
383 * dispextern.h (sit_for): Remove prototype.
384
385 * callint.c (Fcall_interactively):
386 * minibuf.c (temp_echo_area_glyphs):
387 * keyboard.c (command_loop_1, read_char, Fexecute_extended_command):
388 * fileio.c (Fdo_auto_save): Update/simplify sit_for calls.
389
390 2006-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
391
392 * syntax.c (forw_comment): Also use EMACS_INT for buffer positions.
393
394 2006-07-11 Kim F. Storm <storm@cua.dk>
395
396 * dispnew.c (Fredisplay): Add FORCE argument to force redisplay when
397 input is available. Fix test for redisplay_dont_pause non-nil.
398 Specbind redisplay-dont-pause to t if FORCE non-nil.
399
400 2006-07-10 Chong Yidong <cyd@stupidchicken.com>
401
402 * puresize.h (BASE_PURESIZE): Increment to 1211000.
403
404 * dispnew.c (Fredisplay): New function, equivalent to (sit-for 0).
405 (Fsit_for): Function deleted.
406
407 * keyboard.c (command_loop_1, Fexecute_extended_command):
408 Call sit_for instead of Fsit_for.
409
410 * minibuf.c (temp_echo_area_glyphs): Likewise.
411
412 2006-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
413
414 * syntax.c (Fforward_comment): Revert the reversion.
415 (back_comment, scan_lists): Also use EMACS_INT for buffer positions.
416
417 2006-07-09 John Paul Wallington <jpw@pobox.com>
418
419 * syntax.c (Fforward_comment): Revert previous change.
420
421 2006-07-09 Kim F. Storm <storm@cua.dk>
422
423 * window.c (Fforce_window_update): Doc fix.
424
425 2006-07-08 Stephen Gildea <gildea@stop.mail-abuse.org>
426
427 * fileio.c (do_auto_save_make_dir): Make the auto-save-list-file
428 directory unreadable for better user privacy.
429
430 2006-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
431
432 * syntax.c (Fforward_comment): Fix int-32 vs EMACS_INT-64 mixup.
433
434 * lread.c (read_filtered_event): Remove `register' qualifier because it
435 causes compilation problem with gcc-4.0.2-20051125 on amd64.
436 (readevalloop): Remove unused var `bpos'.
437 Yet another int/Lisp_Object mixup (YAILOM).
438
439 2006-07-07 Eli Zaretskii <eliz@gnu.org>
440
441 * keyboard.c (Fexecute_extended_command): Mention the argument
442 PREFIXARG in the doc string.
443
444 2006-07-07 Kim F. Storm <storm@cua.dk>
445
446 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
447
448 2006-07-05 Chong Yidong <cyd@stupidchicken.com>
449
450 * insdel.c (prepare_to_modify_buffer): For an indirect buffer, do
451 clash detection using the base buffer.
452
453 * puresize.h (BASE_PURESIZE): Increment to 1210500.
454
455 2006-07-04 Kim F. Storm <storm@cua.dk>
456
457 * xterm.c (x_delete_display): Don't free or derefence NULL pointers.
458
459 2006-07-04 Kenichi Handa <handa@m17n.org>
460
461 * fontset.c (Fset_overriding_fontspec_internal): Check if we need
462 to update Voverriding_fontspec_alist.
463
464 2006-07-03 Richard Stallman <rms@gnu.org>
465
466 * xfns.c (Fx_create_frame): Move unwind_create_frame setup down.
467
468 * xfaces.c (Fface_attribute_relative_p): Doc fix.
469
470 * textprop.c (Fget_char_property_and_overlay): Doc fix.
471
472 * eval.c (Fdefvaralias): Doc fix.
473
474 2006-07-03 Kim F. Storm <storm@cua.dk>
475
476 * dispnew.c (sit_for): Fix preempt condition.
477
478 2006-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
479
480 * lread.c (read_filtered_event): Treat select-window just like
481 switch-frame.
482
483 2006-07-02 Kim F. Storm <storm@cua.dk>
484
485 * xdisp.c (display_tool_bar_line): Skip glyphs which are too big
486 to ever fit the tool-bar,
487 (MAX_FRAME_TOOL_BAR_HEIGHT): New macro.
488 (tool_bar_lines_needed): Use unused mode-line row as temp_row.
489 (redisplay_tool_bar): Only clear desired matrix if we actually
490 change the tool-bar window height. Only try to make the tool-bar
491 window bigger if there is actually room for it.
492
493 2006-06-30 Ralf Angeli <angeli@caeruleus.net>
494
495 * w32term.c (x_make_frame_visible): Use SystemParametersInfo with
496 SPI_GETWORKAREA to find the dimensions of the screen work area,
497 and adjust vertical position of the frame in order to avoid being
498 covered by the task bar.
499
500 * w32fns.c (w32_createwindow): Use CW_USEDEFAULT instead of
501 f->left_pos and SH_SHOW instead of f->top_pos in the call to
502 CreateWindow. Record the actual position in f->left_pos and
503 f->top_pos.
504
505 2006-06-30 John Paul Wallington <jpw@pobox.com>
506
507 * w32console.c (syms_of_ntterm) <w32-use-full-screen-buffer>:
508 Doc fix - default value has changed.
509
510 2006-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
511
512 * mac.c [!TARGET_API_MAC_CARBON]: Don't include FixMath.h or Scrap.h.
513
514 * macfns.c (Fx_create_frame): Apply 2006-06-24 change for xfns.c.
515
516 * macgui.h (USE_MAC_TSM) [TARGET_API_MAC_CARBON]: Set default to 1.
517
518 * macterm.c (Qeql): Add extern.
519 (x_set_mouse_pixel_position) [MAC_OSX]: Use CGWarpMouseCursorPosition.
520 (fm_style_face_attributes_alist) [USE_ATSUI]: New variable.
521 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
522 Change keys of Vmac_atsu_font_table from strings to numbers.
523 (fm_style_to_face_attributes) [USE_ATSUI]: New function.
524 (init_font_name_table) [USE_ATSUI]: Use it.
525 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: New variable.
526 (syms_of_macterm) [USE_MAC_TSM]: Initialize and staticpro it.
527 [USE_MAC_TSM] (mac_tsm_resume): Restore script and language codes
528 only when saved_ts_script_language_on_focus coincides with
529 Vmac_ts_script_language_on_focus.
530 [USE_MAC_TSM] (mac_tsm_suspend): Save value of
531 Vmac_ts_script_language_on_focus to saved_ts_script_language_on_focus.
532 (XTread_socket) [USE_MAC_TSM]: Add Mac OS Classic support.
533 [USE_MAC_TSM] (mac_handle_text_input_event, init_tsm): Likewise.
534
535 2006-06-27 Chong Yidong <cyd@stupidchicken.com>
536
537 * editfns.c (Fdelete_field, Ffield_string, Ffield_beginning)
538 (Ffield_string_no_properties, Ffield_end): Mention
539 args-out-of-range error condition in docstring.
540
541 2006-06-27 Kim F. Storm <storm@cua.dk>
542
543 * xdisp.c (handle_composition_prop): Set stop_charpos before push_it.
544
545 2006-06-25 Kim F. Storm <storm@cua.dk>
546
547 * s/gnu-linux.h (SIGNALS_VIA_CHARACTERS): Define for Linux kernel
548 version 2.4 and later.
549
550 2006-06-24 Chong Yidong <cyd@stupidchicken.com>
551
552 * xfns.c (Fx_create_frame): Set font parameter directly instead of
553 using x_default_parameter, since x_get_args clears the parm alist.
554
555 2006-06-24 Eli Zaretskii <eliz@gnu.org>
556
557 * dired.c (directory_files_internal) [WINDOWSNT]: Find files
558 case-insensitively.
559
560 2006-06-24 Aidan Kehoe <kehoea@parhasard.net>
561
562 * lread.c (read_escape): When an unknown Unicode code point is
563 encountered as a string or character escape, signal an error.
564
565 2006-06-23 Kim F. Storm <storm@cua.dk>
566
567 * .gdbinit (pitx): Dump iterator stack.
568
569 * xdisp.c (handle_composition_prop): Push iterator on stack.
570 (set_iterator_to_next): Pop iterator at end of composition.
571
572 2006-06-23 Martin Rudalics <rudalics@gmx.at>
573
574 * fileio.c (Frename_file) [DOS_NT]: Don't try to move directory to
575 itself on DOS_NT platforms, if the old and new names are identical
576 but for the letter-case.
577
578 2006-06-21 Kim F. Storm <storm@cua.dk>
579
580 * dispextern.h (struct it): Add `position' member to iterator stack.
581 Rename `pos' member to `current'. Rearrange and add comments.
582
583 * xdisp.c (handle_stop): Set it->ignore_overlay_strings_at_pos_p
584 if we get any overlays.
585 (set_cursor_from_row): Don't clobber `end' if we rescan from
586 start_string.
587 (push_it, pop_it): Save it->position.
588
589 2006-06-19 Richard Stallman <rms@gnu.org>
590
591 * window.c (size_window): New arg FIRST_ONLY. All callers changed.
592 (adjust_window_trailing_edge): Specially compute FIRST_PARALLEL
593 for the case of a top-level window and the following minibuffer.
594 Don't exit because of no `next' when there is a parent.
595 Use the FIRST_ONLY feature when resizing following windows.
596
597 * syntax.c (init_syntax_once): Give most control chars' syntax Spunct.
598
599 2006-06-17 Kim F. Storm <storm@cua.dk>
600
601 * dispnew.c (update_frame): Check for input pending on entry.
602 (update_window, update_frame_1): Break loop if input is detected.
603
604 2006-06-16 Francis Litterio <flitterio@gmail.com>
605
606 * xterm.c (x_check_expected_move, handle_one_xevent)
607 (x_set_offset, x_check_fullscreen): Extensive changes to make
608 frame positioning deterministic under X.
609
610 * xterm.h (x_output): Added members left_before_move and
611 top_before_move. Removed members expected_left and expected_top.
612
613 2006-06-16 Kim F. Storm <storm@cua.dk>
614
615 * dispextern.h (struct it): Add union to iterator stack to save
616 image, composition, and stretch specific paramters.
617
618 * xdisp.c (next_overlay_string): Fix assert.
619 (push_it, pop_it): Handle composition and stretch specific values.
620 Only handle it->slice in image (for now).
621 (back_to_previous_visible_line_start): Continue search if newline is
622 part of a compisition. Simplify.
623 (reseat_1): Set it->object to buffer.
624 (set_iterator_to_next): Set it->object to string or buffer, when
625 setting it->method to GET_FROM_STRING or GET_FROM_BUFFER.
626 (next_element_from_composition): Set it->object to buffer if not
627 from string.
628 (set_cursor_from_row): Only save start of string if not already
629 done to handle multiple strings in a row.
630
631 * .gdbinit (pitx): Show composition parameters.
632 (pgx, pg): New commands to print a glyph structure.
633 (pgi, pgn): New commands to print specific/next glyph.
634 (pgrowx, pgrow): New commands to print all glyphs in a row.
635
636 2006-06-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
637
638 * macfns.c (Fx_display_mm_height, Fx_display_mm_width)
639 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Use CGDisplayScreenSize.
640
641 * macterm.c (do_app_resume, do_app_suspend): Remove functions.
642 (mac_tsm_resume, mac_tsm_suspend) [USE_MAC_TSM]: New functions.
643 (mac_handle_window_event, XTread_socket) [USE_MAC_TSM]: Use them.
644 (Vmac_ts_script_language_on_focus) [USE_MAC_TSM]: New variable.
645 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
646 (saved_ts_language, saved_ts_component) [USE_MAC_TSM]: New variables.
647 (mac_initialize_display_info) [MAC_OSX]: Use Quartz Display
648 Services functions to get size of main display in pixels.
649
650 2006-06-14 Chong Yidong <cyd@stupidchicken.com>
651
652 * xdisp.c (back_to_previous_visible_line_start): Reset
653 it->continuation_lines_width.
654
655 2006-06-14 Richard Stallman <rms@gnu.org>
656
657 * eval.c (Fdefconst): Mark variable as risky.
658
659 * callproc.c (Fcall_process): Doc fix.
660
661 * window.c (adjust_window_trailing_edge): Don't break out of the loop
662 because there's no next window, if there are parallel windows.
663 Do break out when WINDOW is nil.
664
665 2006-06-14 Kim F. Storm <storm@cua.dk>
666
667 * dispextern.h (IT_STACK_SIZE): New macro specifying size of
668 iterator stack (instead of hardcoded number). Increase from 2 to
669 4 to make room for propertized overlay strings before and after a
670 display string, image or composition.
671 (struct it): Add image_id and method members to iterator stack.
672
673 * xdisp.c (init_from_display_pos): Don't set it->method and
674 overlay_string_index after pop_it. Add asserts.
675 (handle_stop): Look for overlay strings around a display string,
676 image, or composition. Handle properties on those strings.
677 (next_overlay_string): Don't set string, pos or method after pop_it.
678 (get_overlay_strings_1): Split from get_overlay_strings; don't
679 modify it if no overlay strings are found.
680 (get_overlay_strings): Use get_overlay_strings_1. Always set
681 it->string and it->method.
682 (push_it): Push it->image_id and it->method. Push it->object
683 instead of it->string if method is GET_FROM_IMAGE.
684 (pop_it): Pop it->image_id and it->method. Ppo it->object
685 instead of it->string if method is GET_FROM_IMAGE.
686 Reset it->current.string_pos if popped it->string is nil.
687 (reseat_1): Remove comment dated 19 May 2003. It expressed doubt
688 whether a given change was correct; but the change is correct.
689 Clear it->string_from_display_prop_p.
690 (set_iterator_to_next): Rely on it->method and it->image_id from
691 iterator stack, instead of setting them explicitly after pop_it.
692
693 * dispnew.c (sit_for): Undo 2006-06-01 change. Instead, a
694 negative time forces redisplay even when input is available.
695 (Fsit_for): Doc fix.
696
697 2006-06-13 Kim F. Storm <storm@cua.dk>
698
699 * dispnew.c: Modify preemptive redisplay to be based on periodic
700 checks for input.
701 (PERIODIC_PREEMPTION_CHECKING): Define to 1 iff EMACS_HAS_USECS.
702 (Vredisplay_preemption_period): New variable.
703 (syms_of_display): DEFVAR_LISP and initialize it.
704 (preemption_period, preemption_next_check): New variables.
705 (update_frame, update_single_window): Initialize them based on
706 Vredisplay_preemption_period if !force_p.
707 (update_window, update_frame_1): Use them to determine when to
708 check for input.
709
710 2006-06-03 Aidan Kehoe <kehoea@parhasard.net>
711
712 * lread.c (read_escape): Provide a Unicode character escape
713 syntax; \u followed by exactly four or \U followed by exactly
714 eight hex digits in a comment or string is read as a Unicode
715 character with that code point.
716
717 2006-06-09 Eli Zaretskii <eliz@gnu.org>
718
719 * window.c (window_scroll_pixel_based): Signal "Beginning of
720 buffer" when scroll-down at the beginning of an empty buffer.
721
722 2006-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
723
724 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event): Exclude
725 0x7f from ASCII range.
726
727 2006-06-05 Jason Rumney <jasonr@gnu.org>
728
729 * w32term.c (w32_set_scroll_bar_thumb, x_scroll_bar_create)
730 (w32_set_vertical_scroll_bar, w32_scroll_bar_handle_click)
731 (x_scroll_bar_report_motion): Remove workarounds for
732 versions of Windows NT < 3.51.
733 [!SIF_ALL]: Remove.
734 (pfnSetScrollInfo, pfnGetScrollInfo): Remove.
735 (w32_initialize): Don't dynamically load Get/SetScrollInfo.
736
737 2006-06-04 David Kastrup <dak@gnu.org>
738
739 * dispnew.c: Mention `redisplay-dont-pause' in doc string of
740 `sit-for'.
741
742 2006-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
743
744 * macfns.c (x_set_icon_name): Apply 2006-06-02 change for xfns.c.
745
746 * macgui.h (USE_MAC_TSM): Set default to 1 on Mac OS X.
747
748 * macterm.c (tsm_document_id) [USE_MAC_TSM]: New variable.
749 (Qtext_input, Qupdate_active_input_area, Qunicode_for_key_event)
750 [USE_MAC_TSM]: Likewise.
751 (syms_of_macterm) [USE_MAC_TSM]: Intern and staticpro them.
752 (Qbefore_string) [USE_MAC_TSM]: Add extern.
753 (do_app_resume, do_app_suspend) [USE_MAC_TSM]: Call
754 ActivateTSMDocument/DeactivateTSMDocument.
755 (mac_store_event_ref_as_apple_event): Call mac_post_mouse_moved_event.
756 (mac_handle_window_event) [USE_MAC_TSM]: Handle
757 kEventWindowFocusAcquired/kEventWindowFocusRelinquish.
758 (mac_handle_text_input_event) [USE_MAC_TSM]: New function.
759 (install_window_handler) [USE_MAC_TSM]: Install it. Register
760 kEventWindowFocusAcquired/kEventWindowFocusRelinquish.
761 (keycode_to_xkeysym_table): Add entry for f16.
762 (XTread_socket) [USE_MAC_TSM]: Set/reset read_socket_inev
763 before/after passing keystroke event to toolbox dispatcher.
764 (init_tsm) [USE_MAC_TSM]: New function.
765 (mac_initialize) [USE_MAC_TSM]: Call it.
766 (Vmac_ts_active_input_overlay) [USE_MAC_TSM]: New defvar.
767
768 * macterm.h (EVENT_PARAM_TEXT_INPUT_SEQUENCE_NUMBER): New enumerator.
769
770 2006-06-02 John Paul Wallington <jpw@gnu.org>
771
772 * xfns.c (x_set_name_internal): Set icon to `text', derived from
773 name, when frame's icon_name isn't a string rather than only when
774 it is nil.
775
776 2006-06-03 Eli Zaretskii <eliz@gnu.org>
777
778 * w32fns.c (x_set_icon_name): Don't use arg if it's not a string
779 and not nil.
780
781 2006-06-02 Chong Yidong <cyd@stupidchicken.com>
782
783 * xfns.c (x_set_icon_name): No-op if arg is non-nil and not a
784 string.
785
786 2006-06-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
787
788 * xdisp.c (next_element_from_composition): Set it->object to
789 it->string if composition is coming from string.
790 (set_cursor_from_row): Don't return 0 unless row displays a
791 continued line.
792 (dump_glyph): Dump composite glyph.
793
794 2006-06-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
795
796 * gtkutil.c (menu_nav_ended): Check that menubar_widget is not NULL.
797
798 2006-06-01 Richard Stallman <rms@gnu.org>
799
800 * window.c (Fsplit_window): Doc fix.
801
802 2006-06-01 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org>
803
804 * process.c (deleted_pid_list): New variable to store the pids
805 of deleted processes. Declare it only if SIGCHLD is defined.
806 (init_process): Initialize it.
807 (syms_of_process): Staticpro it.
808 (Fdelete_process): Add pid of the deleted process to it. Check after
809 the addition and before the kill if the process is already stopped,
810 in which case it is deleted from the list and not killed.
811 (sigchld_handler): Define it only if SIGCHLD is. Search the process
812 that signaled Emacs in `deleted_pid_list' before `Vprocess_alist'.
813 Original idea by Stefan Monnier.
814
815 2006-06-01 Kim F. Storm <storm@cua.dk>
816
817 * dispnew.c (sit_for): Perform redisplay even if input is pending
818 when redisplay-dont-pause is non-nil.
819
820 2006-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
821
822 * macterm.c (mac_handle_visibility_change): Set buf.arg to Qnil.
823 (XTread_socket): Remove obsolete comment.
824
825 2006-06-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
826
827 * xmenu.c (syms_of_xmenu): Make accelerate-menu an alias for
828 menu-bar-open.
829
830 2006-06-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
831
832 * xmenu.c (Fmenu_bar_open, syms_of_xmenu): Change menu-bar-start to
833 menu-bar-open.
834
835 * gtkutil.c (menu_nav_ended): Change x-menu-bar-start to menu-bar-open.
836
837 2006-05-31 Juri Linkov <juri@jurta.org>
838
839 * minibuf.c (Vhistory_add_new_input): New variable.
840 (read_minibuf): Use it.
841 (syms_of_minibuf) <history-add-new-input>: New Lisp variable.
842 (syms_of_minibuf) <history-delete-duplicates>: Doc fix.
843
844 2006-05-31 Kim F. Storm <storm@cua.dk>
845
846 * process.c (select_wrapper): Add wrapper around select to work around
847 "incomplete backtrace" bug in gdb 5.3, when emacs is stopped inside
848 select called from wait_reading_process_output.
849
850 2006-05-30 Andreas Schwab <schwab@suse.de>
851
852 * xmenu.c (Fmenu_bar_start): Return a value.
853
854 2006-05-30 Richard Stallman <rms@gnu.org>
855
856 * coding.c (Ffind_operation_coding_system): Doc fix.
857
858 2006-05-30 Eli Zaretskii <eliz@gnu.org>
859
860 * w32term.c (x_draw_hollow_cursor): Fix last change.
861
862 2006-05-29 Kim F. Storm <storm@cua.dk>
863
864 * w32term.c (x_draw_stretch_glyph_string): Fix last change.
865
866 2006-05-29 Eli Zaretskii <eliz@gnu.org>
867
868 * coding.c (Ffind_operation_coding_system): Doc fix.
869
870 2006-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
871
872 * macfns.c [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility):
873 Call mac_set_font_info_for_selection if font panel is made visible.
874
875 * macterm.c (font_panel_shown_p) [USE_MAC_FONT_PANEL]: New variable.
876 (mac_font_panel_visible_p, mac_show_hide_font_panel)
877 [USE_MAC_FONT_PANEL]: New functions.
878 [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Return
879 immediately if font panel is not visible.
880
881 * macterm.h (mac_font_panel_visible_p, mac_show_hide_font_panel):
882 Add externs.
883
884 2006-05-29 Dan Nicolaescu <dann@ics.uci.edu>
885
886 * search.c (matcher_overflow): Mark as NO_RETURN.
887
888 * xterm.c (x_connection_closed): Likewise.
889
890 * sysdep.c (croak): Likewise.
891
892 * sound.c (sound_perror, alsa_sound_perror): Likewise.
893
894 * lisp.h (die, nsberror): Likewise.
895
896 2006-05-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
897
898 * sound.c (alsa_open, alsa_configure, alsa_write): Move
899 assignment to err out of if-statement.
900
901 * gtkutil.c (menu_nav_ended): New function.
902 (create_menus): Connect menu_nav_ended to "selection-done" to fix
903 grabs.
904
905 * xmenu.c (Fmenu_bar_start): New function for USE_GTK and USE_X_TOOLKIT.
906
907 2006-05-28 Dan Nicolaescu <dann@ics.uci.edu>
908
909 * charset.h (invalid_character): Mark as NO_RETURN.
910
911 2006-05-29 Kenichi Handa <handa@m17n.org>
912
913 * coding.c (Ffind_operation_coding_system): Call a function by
914 safe_call1 instead of call1.
915
916 2006-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
917
918 * window.c (struct saved_window): Add `dedicated'.
919 (Fset_window_configuration, save_window_save): Save/restore the
920 `dedicated' flag.
921
922 2006-05-28 Kim F. Storm <storm@cua.dk>
923
924 * xdisp.c (set_cursor_from_row): If cursor cannot be set in row,
925 don't update w->cursor and return 0. Return 1 on success.
926 (try_cursor_movement): Repeat set_cursor_from_row on successive rows
927 until it succeeds.
928
929 * dispextern.h (set_cursor_from_row): Update prototype.
930
931 2006-05-28 Kim F. Storm <storm@cua.dk>
932
933 * xdisp.c (get_phys_cursor_geometry): Return computed x and y through
934 parameters. Adjust x and width in case cursor in on a partially
935 visible stretch glyph on the left edge.
936 (erase_phys_cursor): Don't erase into left fringe/margin in case
937 previous cursor glyph is a partially visible stretch glyph on left.
938
939 * dispextern.h (get_phys_cursor_geometry): Update prototype.
940
941 * xterm.c (x_draw_stretch_glyph_string): Fix problems with invisible
942 cursor and erasing cursor on partially visible stretch glyph on left.
943 (x_draw_hollow_cursor): Compute x via get_phys_cursor_geometry.
944
945 * macterm.c: Likewise.
946
947 * w32term.c: Likewise.
948
949 2006-05-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
950
951 * macselect.c (mac_handle_apple_event):
952 Return errAEEventNotHandled if key binding is not found.
953
954 2006-05-26 Eli Zaretskii <eliz@gnu.org>
955
956 * emacs.c (main) [PROFILING]: Enable also for __MINGW32__.
957 [__MINGW32__]: MinGW-specific declaration of `etext'.
958
959 * w32heap.c (etext, edata): Remove unused definitions.
960
961 2006-05-26 Chong Yidong <cyd@stupidchicken.com>
962
963 * fileio.c (Fcopy_file): Delete argument MUSTBENEW.
964 Incorporate the exclusive file-opening functionality into the behavior
965 when OK-IF-ALREADY-EXISTS is nil.
966 (Frename_file): Call Fcopy_file without MUSTBENEW argument.
967
968 2006-05-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
969
970 * sound.c (alsa_configure): Move get period/buffer_size after
971 setting hwparams.
972
973 2006-05-26 Kenichi Handa <handa@m17n.org>
974
975 * coding.c (Ffind_operation_coding_system): Allow (FILENAME
976 . BUFFER) in TARGET.
977
978 2006-05-25 Chong Yidong <cyd@stupidchicken.com>
979
980 * image.c (png_load): Don't call fclose on NULL.
981
982 2006-05-25 Luc Teirlinck <teirllm@auburn.edu>
983
984 * fns.c (Fyes_or_no_p):
985 * callint.c (Fcall_interactively): Fread_from_minibuffer now takes
986 only seven args.
987
988 2006-05-25 Juri Linkov <juri@jurta.org>
989
990 * lisp.h (Fread_from_minibuffer): Decrement number of args.
991
992 * minibuf.c (read_minibuf): Remove arg KEEP_ALL. Callers changed.
993 (Fread_from_minibuffer): Remove arg KEEP_ALL. Callers changed.
994
995 * buffer.c (mode-line-format): Fix docstring.
996
997 2006-05-25 Richard Stallman <rms@gnu.org>
998
999 * emacs.c (main, Fdump_emacs): Don't test __linux or __linux__.
1000
1001 2006-05-24 Luc Teirlinck <teirllm@auburn.edu>
1002
1003 * puresize.h (BASE_PURESIZE): Increase to 1210000.
1004
1005 2006-05-24 Alan Mackenzie <acm@muc.de>
1006
1007 * lread.c (Vload_history): Enhance doc-string to say that the file
1008 is the absolute truename of the loaded file.
1009
1010 * lread.c (Vafter_load_alist): doc-string: state that an element
1011 now has a regexp to match file names, not a file name as such.
1012
1013 * lread.c (readevalloop): Call file-truename on the name for
1014 load-history, except at preloading time.
1015
1016 * lread.c (Fload): At preloading time, preserve the extension of
1017 the filename which goes into load-history. New var hist_file_name.
1018
1019 * lread.c (Fload): Do eval-after-load stuff by calling the lisp
1020 function do-after-load-evaluation.
1021
1022 2006-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1023
1024 * mac.c (ae_attr_table): New variable.
1025 (syms_of_mac): Intern and staticpro its elements.
1026 (mac_aelist_to_lisp): Also convert Apple event attributes.
1027 (mac_ae_put_lisp): New function.
1028 (create_apple_event_from_event_ref) [MAC_OSX]: Use typeUTF8Text.
1029
1030 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor etc.
1031
1032 * macselect.c (Qemacs_suspension_id): New variable.
1033 (syms_of_macselect): Intern and staticpro it.
1034 (struct suspended_ae_info): New struct.
1035 (deferred_apple_events, defer_apple_events)
1036 (Fmac_process_deferred_apple_events): Use it.
1037 (suspended_apple_events): New variable.
1038 (mac_handle_apple_event_1): New function.
1039 (mac_handle_apple_event): Use it. Don't process previously
1040 suspended events.
1041 (cleanup_suspended_apple_events, get_suspension_id)
1042 (cleanup_all_suspended_apple_events): New functions.
1043 (init_apple_event_handler): Call cleanup_all_suspended_apple_events
1044 at exit.
1045 (Fmac_cleanup_expired_apple_events, Fmac_ae_set_reply_parameter)
1046 (Fmac_resume_apple_event): New defuns.
1047 (syms_of_macselect): Defsubr them.
1048
1049 * macterm.c (fn_keycode_to_keycode_table, XTread_socket) [MAC_OSX]:
1050 Fix last change. Don't map `fn' modifier if pressed with F1 ... F12.
1051
1052 * macterm.h (TYPE_FILE_NAME): Change from macro to enumerator.
1053 (KEY_EMACS_SUSPENSION_ID_ATTR): New enumerator.
1054 (keyReplyRequestedAttr) [MAC_OS_X_VERSION_MAX_ALLOWED < 1030]: Likewise.
1055 (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
1056 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
1057 Likewise.
1058 (typeUTF8Text, kEventParamWindowMouseLocation)
1059 [MAC_OSX && MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Likewise.
1060 (x_get_focus_frame, mac_ae_put_lisp): Add externs.
1061
1062 2006-05-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1063
1064 * macterm.c (fn_keycode_to_xkeysym_table, convert_fn_keycode): Remove.
1065 (fn_keycode_to_keycode_table) [MAC_OSX]: New variable.
1066 (mac_set_unicode_keystroke_event) [TARGET_API_MAC_CARBON]: New function.
1067 (XTread_socket) [TARGET_API_MAC_CARBON]: Use it.
1068 (XTread_socket) [MAC_OSX]: Try 'uchr' Unicode keyboard-layout
1069 resource to backtranslate key with modifiers.
1070 (XTread_socket): Don't set read_socket_inev around AEProcessAppleEvent.
1071
1072 2006-05-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1073
1074 * xterm.c: Remove declarations already in xterm.h
1075
1076 * xterm.h: Add extern declarations for x_clear_errors,
1077 x_fully_uncatch_errors, x_catching_errors and
1078 x_alloc_lighter_color_for_widget. Remove duplicated declarations.
1079
1080 2006-05-21 Richard Stallman <rms@gnu.org>
1081
1082 * xfaces.c (best_matching_font): Abort for best == NULL
1083 before we start to use it.
1084
1085 * buffer.c (syms_of_buffer, Fmake_overlay): Doc fixes.
1086
1087 2006-05-20 Kim F. Storm <storm@cua.dk>
1088
1089 * xfaces.c (best_matching_font): Fix crash in 2006-05-17 change.
1090
1091 2006-05-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1092
1093 * macterm.c (convert_fn_keycode): Fix last change.
1094
1095 2006-05-19 Eli Zaretskii <eliz@gnu.org>
1096
1097 * w32.c (init_environment): Perform the processing of environment
1098 variables on a copy of default variables and their values, not on
1099 the original. Simplify code that calls ExpandEnvironmentStrings
1100 and make buf1[] and buf2[] more visible for easier debugging.
1101
1102 2006-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1103
1104 * frame.c (x_set_border_width): Remove #ifndef MAC_OS.
1105
1106 * image.c [MAC_OS] (gif_load): Allocate Lisp string first.
1107
1108 * macfns.c (Fx_focus_frame): Don't check dpyinfo->x_focus_frame.
1109
1110 * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON && MAC_OSX]:
1111 Forward keyUp events to toolbox_dispatcher.
1112
1113 * window.c (foreach_window): Check WINDOWP (FRAME_ROOT_WINDOW (f)).
1114
1115 2006-05-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1116
1117 * config.in: Regenerated (HAVE_ALSA).
1118
1119 * sound.c (alsa_sound_perror, alsa_open, alsa_period_size)
1120 (alsa_configure, alsa_close, alsa_choose_format, alsa_write)
1121 (snd_error_quiet, alsa_init): New functions.
1122 (vox_init): Return 0 if unable to open device.
1123 (Fplay_sound_internal): Test for alsa first and use vox (oss) as
1124 a fallback.
1125 (struct sound_device): Add period_size.
1126 (wav_play, au_play): Use period_size if set.
1127
1128 * Makefile.in (CFLAGS_SOUND): New flags for ALSA
1129 (ALL_CFLAGS): Add CFLAGS_SOUND
1130
1131 2006-05-18 Kenichi Handa <handa@m17n.org>
1132
1133 * callproc.c (Fcall_process): Reject encoding arguments by
1134 ascii-incompatible coding systems (e.g. utf-16).
1135
1136 * coding.c (Qascii_incompatible): New variable.
1137 (syms_of_coding): Setup Qascii_incompatible.
1138 (setup_coding_system): Be sure to initialize coding->common_flags.
1139 Check `ascii-incompatible' property of the coding system.
1140
1141 * coding.h (CODING_ASCII_INCOMPATIBLE_MASK): New macro.
1142
1143 2006-05-18 Kim F. Storm <storm@cua.dk>
1144
1145 * xdisp.c (display_tool_bar_line): Restore entire tool-bar geometry when
1146 backtracking in case last image doesn't fit on line.
1147
1148 2006-05-18 MIYOSHI Masanori <miyoshi@meadowy.org> (tiny change)
1149
1150 * xdisp.c (display_tool_bar_line): Don't adjust tool-bar height by more than
1151 height of one frame default line.
1152
1153 2006-05-17 Richard Stallman <rms@gnu.org>
1154
1155 * xfaces.c (better_font_p): Any font beats no font.
1156 (best_matching_font): Simplify based on above change.
1157
1158 * buffer.c (Fprevious_overlay_change, Fnext_overlay_change): Doc fixes.
1159
1160 2006-05-16 Kim F. Storm <storm@cua.dk>
1161
1162 * xterm.c (handle_one_xevent): Check that f is not NULL before
1163 calling x_kill_gs_process.
1164
1165 2006-05-14 Richard Stallman <rms@gnu.org>
1166
1167 * textprop.c (Fnext_single_char_property_change)
1168 (Fprevious_single_char_property_change): Don't allow returning
1169 value beyond LIMIT in any cases.
1170 (Fnext_char_property_change, Fprevious_char_property_change): Doc fix.
1171
1172 * intervals.c (get_local_map): Abort if POSITION outside BEGV, ZV.
1173
1174 2006-05-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1175
1176 * xterm.c (handle_one_xevent): Check that f is not NULL before
1177 calling _XEditResCheckMessages.
1178
1179 2006-05-14 Kim F. Storm <storm@cua.dk>
1180
1181 * xterm.c (handle_one_xevent): Fix crash in 2006-03-24 change.
1182
1183 2006-05-13 Eli Zaretskii <eliz@gnu.org>
1184
1185 * frame.c (x_set_border_width): Fix error message to say "frame",
1186 not "window".
1187
1188 * Makefile.in (SOME_MACHINE_LISP): Add fringe.elc.
1189
1190 2006-05-12 Chong Yidong <cyd@stupidchicken.com>
1191
1192 * intervals.c (set_point_both): Fix mixup before before and after
1193 in variable names.
1194
1195 * editfns.c (Fline_beginning_position): Inhibit point-motion hooks
1196 while setting point temporarily.
1197
1198 2006-05-11 Richard Stallman <rms@gnu.org>
1199
1200 * lread.c (readevalloop): Abort if START non-nil for non-buffer input.
1201
1202 2006-05-11 Kim F. Storm <storm@cua.dk>
1203
1204 * xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values.
1205
1206 2006-05-11 Kenichi Handa <handa@m17n.org>
1207
1208 * fileio.c (Finsert_file_contents): Fix for the case of IO error
1209 while handling replace operation.
1210
1211 2006-05-10 Kenichi Handa <handa@m17n.org>
1212
1213 * xfaces.c (realize_default_face) [HAVE_X_WINDOWS]: If the font
1214 chosen for the default face was different from the frame font,
1215 adjust the frame font.
1216
1217 2006-05-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1218
1219 * image.c (Qduration) [MAC_OS]: Undo previous change.
1220 (syms_of_image) [MAC_OS]: Likewise.
1221 [MAC_OS] (gif_load): Emulate Graphic Control Extension block.
1222
1223 * macfns.c (x_to_mac_color): Fix shift amount change.
1224 (mac_set_font) [USE_MAC_FONT_PANEL]: Use x_get_focus_frame.
1225 [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): Doc fix.
1226
1227 * macselect.c (Vmac_service_selection) [MAC_OSX]: Rename from
1228 Vmac_services_selection. All uses changed.
1229 (mac_store_service_event): Rename from mac_store_services_event in
1230 extern and calls.
1231
1232 * macterm.c (Qservice) [MAC_OSX]: Rename from Qservices. All uses
1233 changed.
1234 [MAC_OSX] (mac_store_service_event): Rename from
1235 mac_store_services_event. All callers changed.
1236 [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Add args
1237 FACE_ID and C. All callers changed.
1238 (x_free_frame_resources) [USE_MAC_FONT_PANEL]: Call
1239 mac_set_font_info_for_selection when focus frame is destroyed.
1240 (XTread_socket): Revert to FrontNonFloatingWindow/FrontWindow.
1241
1242 * macterm.h (mac_set_font_info_for_selection): Add 2nd and 3rd
1243 args in extern.
1244
1245 2006-05-09 Chong Yidong <cyd@stupidchicken.com>
1246
1247 * keymap.c (describe_map): Avoid generating duplicate entries if
1248 the shadowed binding has the same definition.
1249
1250 2006-05-09 Kenichi Handa <handa@m17n.org>
1251
1252 * keymap.c (push_key_description): Handle invalid character key.
1253
1254 2006-05-08 Kenichi Handa <handa@m17n.org>
1255
1256 * callproc.c (Fcall_process): Use system_eol_type for encoding
1257 arguments if eol_type is not yet decided.
1258
1259 * coding.h (system_eol_type): Extern it.
1260
1261 * coding.c (setup_coding_system): For invalid coding-system, set
1262 coding->eol_type to CODING_EOL_UNDECIDED.
1263 (encode_coding): Cancel previous change.
1264 (shrink_encoding_region): Likewise.
1265 (code_convert_region1): Likewise.
1266 (code_convert_string1): Likewise.
1267 (code_convert_string_norecord): Likewise.
1268
1269 * fileio.c (choose_write_coding_system): Use system_eol_type for
1270 encoding if eol_type is not yet decided.
1271
1272 * process.c (setup_process_coding_systems): Use system_eol_type
1273 for encoding if eol_type is not yet decided.
1274 (read_process_output): Likewise.
1275 (send_process): Likewise.
1276
1277 2006-05-07 Juanma Barranquero <lekktu@gmail.com>
1278
1279 * minibuf.c (syms_of_minibuf) <history-length>: Fix typo in doc.
1280
1281 2006-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1282
1283 * mac.c (Fmac_clear_font_name_table): Move defun to macfns.c.
1284 (syms_of_mac): Likewise for defsubr.
1285
1286 * macfns.c (mac_set_font): New function.
1287 (mac_frame_parm_handlers, syms_of_macfns): Replace x_set_font with it.
1288 (mac_window) [TARGET_API_MAC_CARBON && MAC_OSX]: Specify
1289 kWindowToolbarButtonAttribute when creating window.
1290 (Fmac_clear_font_name_table): Move from macfns.c.
1291 (syms_of_macfns): Likewise for defsubr.
1292 [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): New defun.
1293 (syms_of_macfns) [USE_MAC_FONT_PANEL]: Defsubr it.
1294
1295 * macgui.h (USE_MAC_FONT_PANEL): Define to 1 if USE_ATSUI is set
1296 and build is done on Mac OS X 10.2 and later.
1297
1298 * macselect.c (mac_do_receive_drag): Remove unused variable `index'.
1299 (mac_store_services_event): Change return type in extern.
1300
1301 * macterm.c (XLoadQueryFont) [USE_ATSUI]: Set font->mac_fontnum to
1302 FMFontFamily value.
1303 [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): New function.
1304 (x_new_focus_frame) [USE_MAC_FONT_PANEL]: Use it.
1305 (QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic): Add extern.
1306 (QWindow) [MAC_OSX]: Likewise.
1307 (Qfont) [USE_MAC_FONT_PANEL]: Likewise.
1308 (Vmac_atsu_font_table) [USE_ATSUI]: New variable.
1309 (syms_of_macterm) [USE_ATSUI]: Defvar it.
1310 (Qtoolbar_switch_mode) [MAC_OSX]: New variable.
1311 (Qpanel_closed, Qselection) [USE_MAC_FONT_PANEL]: Likewise.
1312 (syms_of_macterm): Intern and staticpro them.
1313 (init_font_name_table) [USE_ATSUI]: Add data to Vmac_atsu_font_table.
1314 [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): New
1315 function.
1316 [USE_CARBON_EVENTS] (mac_handle_command_event): Use it.
1317 [MAC_OSX] (mac_store_services_event): Likewise.
1318 [USE_CARBON_EVENTS] (mac_handle_window_event) [MAC_OSX]: Handle
1319 kEventWindowToolbarSwitchMode event.
1320 (install_window_handler) [USE_CARBON_EVENTS && MAC_OSX]: Register it.
1321 [MAC_OSX] (mac_store_services_event): Change return type to OSStatus.
1322 [USE_MAC_FONT_PANEL] (mac_handle_font_event): New function.
1323 (install_window_handler) [USE_MAC_FONT_PANEL]: Install it.
1324 (XTread_socket): Select window on mouse click if x_focus_frame is NULL.
1325
1326 * macterm.h (mac_set_font_info_for_selection): Add extern.
1327
1328 2006-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1329
1330 * image.c (Qduration) [MAC_OS]: New variable.
1331 (syms_of_image) [MAC_OS]: Intern and staticpro it.
1332 [MAC_OS] (gif_load): Save image extension data in img->data.lisp_val.
1333 [MAC_OSX] (image_load_quartz2d): Use cfstring_create_with_utf8_cstring
1334 instead of cfstring_create_with_string.
1335
1336 2006-05-06 Kim F. Storm <storm@cua.dk>
1337
1338 * .gdbinit (xframe): Print frame name.
1339 (xlist): New command to print a list (max 10 elements).
1340 (xpr): Print lisp object of any type.
1341 (pitx): Print it->pixel_width.
1342
1343 2006-05-05 Kenichi Handa <handa@m17n.org>
1344
1345 * xdisp.c (handle_composition_prop): Fix for the case of empty
1346 composition component.
1347
1348 2006-05-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1349
1350 * keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info
1351 from event->arg.
1352
1353 * termhooks.h (enum event_kind) [MAC_OS]: Update comment for
1354 MAC_APPLE_EVENT.
1355
1356 * macterm.h (mac_make_lispy_event_code): Remove extern.
1357 (mac_post_mouse_moved_event): Add extern.
1358 (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
1359 `const AEDesc *' in externs.
1360 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern.
1361
1362 * mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
1363 `const AEDesc *'.
1364 [TARGET_API_MAC_CARBON] (create_apple_event): New function.
1365 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it.
1366 Use xrealloc instead of repeated xmalloc/xfree.
1367 [TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref): New
1368 function.
1369
1370 * macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value.
1371
1372 * macselect.c: Update copyright year.
1373 (mac_store_apple_event): Change return type to void in extern.
1374 (mac_handle_apple_event): Don't get return value from
1375 mac_store_apple_event.
1376 [TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable.
1377 (syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it.
1378 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from
1379 macterm.c. Use Vmac_dnd_known_types as acceptable flavors.
1380 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. New
1381 implementation using create_apple_event_from_drag_ref.
1382 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
1383 (mac_do_receive_dragUPP): Move variables from macterm.c.
1384 (install_drag_handler, remove_drag_handler): New functions.
1385
1386 * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window
1387 path select also for proxy icon click.
1388 [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function.
1389 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it.
1390 (xlfdpat_create): Remove unused label `error' and trailing sentences.
1391 (mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c.
1392 (mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to
1393 macselect.c.
1394 (install_drag_handler, remove_drag_handler): Add extern.
1395 (mac_store_apple_event): Change return type to void. All uses changed.
1396 Create Lisp object from Apple event and store it into input event.
1397 (mac_make_lispy_event_code): Remove function.
1398 [TARGET_API_MAC_CARBON] (mac_store_drag_event): New function.
1399 (install_window_handler): Call install_drag_handler.
1400 (remove_window_handler): Call remove_drag_handler.
1401
1402 2006-05-03 Richard Stallman <rms@gnu.org>
1403
1404 * sound.c (Fplay_sound_internal): Dynamically allocate
1405 current_sound_device and current_sound.
1406 (sound_cleanup): Free them.
1407
1408 * minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive
1409 when inside a keyboard macro.
1410
1411 2006-05-02 Andreas Schwab <schwab@suse.de>
1412
1413 * xmenu.c (restore_menu_items): Return a value.
1414
1415 2006-05-01 Martin Rudalics <rudalics@gmx.at>
1416
1417 * syntax.c (Fforward_comment): Detect generic comment at beginning of
1418 buffer when moving backwards.
1419
1420 2006-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1421
1422 * dispnew.c (update_window): Don't set changed_p when mode/header
1423 line is updated.
1424
1425 * xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar.
1426 (get_glyph_face_and_encoding, get_char_face_and_encoding):
1427 Don't distinguish known faces from others.
1428
1429 * mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion
1430 through typeFileURL failed.
1431
1432 * macfns.c (mac_update_title_bar): New function.
1433 [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function.
1434 (show_hourglass, hide_hourglass) [USE_CG_DRAWING]:
1435 Call mac_prepare_for_quickdraw.
1436
1437 * macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined.
1438 (USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1.
1439 (enum pcm_status): New enum.
1440 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID)
1441 (XCharStructRow): Remove. Now validity is represented by
1442 non-negativeness of sum of ascent and descent.
1443 (struct MacFontStruct): Change type of member `rows'.
1444 (struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'.
1445
1446 * macterm.c (mac_draw_line, mac_draw_line_to_pixmap):
1447 Adjust endpoints of strictly horizontal/vertical lines.
1448 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects.
1449 (pcm_init, pcm_get_status): New functions.
1450 (x_per_char_metric, XLoadQueryFont): Use them instead of
1451 XCharStructRow and related macros.
1452 (x_draw_relief_rect): Don't adjust arguments of mac_draw_line.
1453 (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME.
1454 (XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag
1455 and window path pop-up menu on title bar.
1456 (mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1.
1457
1458 * macterm.h (mac_update_title_bar): Add extern.
1459 (struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'.
1460 (FRAME_FILE_NAME): New macro.
1461
1462 * unexmacosx.c (unexec): Error if trying unexec from dumped executable.
1463
1464 2006-04-30 Richard Stallman <rms@gnu.org>
1465
1466 * keymap.c (Fdefine_key): Improve error message
1467 when KEY begins with a non-prefix key.
1468
1469 2006-04-30 Martin Rudalics <rudalics@gmx.at>
1470
1471 * syntax.c (Fforward_comment): Don't forget to break out of the loop
1472 when we skipped backward over a generic comment.
1473
1474 2006-04-27 Nick Roberts <nickrob@snap.net.nz>
1475
1476 * .gdbinit (pp1, pv1): Only print value as expression is now
1477 printed out by gud-print.
1478 (pv1): Correct doc string.
1479
1480 2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
1481
1482 * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
1483 Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8):
1484 keymap.c:895: error: address of register variable `def' requested.
1485
1486 2006-04-26 Jason Rumney <jasonr@gnu.org>
1487
1488 * w32term.c (construct_mouse_wheel): Handle negative coordinates.
1489
1490 * w32fns.c (w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN>:
1491 <WM_LBUTTONUP, WM_RBUTTONUP>: Call signal_user_input in the cases
1492 where we preempt mouse_button_timer.
1493
1494 2006-04-25 Miles Bader <miles@gnu.org>
1495
1496 * editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23.
1497
1498 2006-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
1499
1500 * process.h: Include headers for pid_t.
1501
1502 2006-04-24 Kim F. Storm <storm@cua.dk>
1503
1504 * xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which
1505 does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief.
1506 (produce_stretch_glyph): Assume that face box height and width is
1507 already included in stretch glyph size so caller doesn't have to
1508 consider the extra space otherwise added (fixes problem in ses.el).
1509
1510 * frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame
1511 matrices to force recalculation of tool-bar height after font change.
1512
1513 * xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity.
1514 Clear it when done, so we don't accidentally draw a second copy of
1515 the tool-bar after resetting f->n_tool_bar_rows.
1516 (redisplay_tool_bar): Update tool-bar-lines frame parameter whenever
1517 we recalculate f->n_tool_bar_rows.
1518
1519 2006-04-23 Lars Hansen <larsh@soem.dk>
1520
1521 * editfns.c (find_field): Fix comment.
1522 (Ffield_beginning): Fix bug when POS is at field beginning.
1523
1524 2006-04-22 Eli Zaretskii <eliz@gnu.org>
1525
1526 * puresize.h (BASE_PURESIZE): Increase to 1205000.
1527
1528 2006-04-21 Kim F. Storm <storm@cua.dk>
1529
1530 * xdisp.c (redisplay_window): Fix last change. Don't recenter if
1531 window start is at BEGV.
1532
1533 * dispextern.h (struct image): New member `corners'.
1534 (TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros.
1535
1536 * image.c (four_corners_best): New arg CORNERS specifies what pixels
1537 to look at in case image has margin.
1538 (x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best.
1539 (image_background, image_background_transparent)
1540 (x_build_heuristic_mask): Pass img->corners to four_corners_best.
1541 (gif_load): Set img->corners according to image's margin spec.
1542 Use img->corners values directly where applicable.
1543 Save image extension data in img->data.lisp_val.
1544 (gif_clear_image): New function to free img->data.lisp_val.
1545 (gif_type): Use it instead of generic x_clear_image.
1546 (Fimage_extension_data): New defun.
1547 (syms_of_image): Defsubr it.
1548
1549 2006-04-21 John Sullivan <john@wjsullivan.net> (tiny change)
1550
1551 * window.c (Fdisplay_buffer): Doc fix.
1552
1553 2006-04-21 Eli Zaretskii <eliz@gnu.org>
1554
1555 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000.
1556
1557 2006-04-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1558
1559 * image.c [MAC_OS] (xpm_load_image): Fill in background field
1560 while we have ximg handy.
1561
1562 * macmenu.c (restore_menu_items, save_menu_items): New functions
1563 from xmenu.c.
1564 (set_frame_menubar, digest_single_submenu): Apply 2006-04-18
1565 changes for xmenu.c.
1566
1567 * macterm.c (x_per_char_metric): Return NULL if glyph width is 0.
1568 (add_mac_font_name): New function.
1569 (init_font_name_table): Use it. Adopt the first found font from
1570 those having the same family name.
1571
1572 2006-04-21 Nick Roberts <nickrob@snap.net.nz>
1573
1574 * xdisp.c (note_mouse_highlight): Use build_string.
1575
1576 2006-04-20 Lars Hansen <larsh@soem.dk>
1577
1578 * textprop.c (Fremove_list_of_text_properties):
1579 Ensure modify_region is called only when buffer is modified and that
1580 signal_after_change is allways called in that case.
1581
1582 * print.c (PRINTFINISH): Call signal_after_change.
1583
1584 2006-04-20 Kim F. Storm <storm@cua.dk>
1585
1586 * xdisp.c (redisplay_window): Fix last change.
1587
1588 * xdisp.c (redisplay_window): If current window start is not at the
1589 beginning of a line, select a new window start if buffer is modified
1590 and window start is in the modified region, but the first change is
1591 before window start.
1592
1593 2006-04-18 Richard Stallman <rms@gnu.org>
1594
1595 * xmenu.c (restore_menu_items, save_menu_items): New fns.
1596 (set_frame_menubar): Use save_menu_items. Save updated vector in
1597 the frame before unwinding it. Don't use unuse_menu_items.
1598 Don't use discard_menu_items.
1599 (digest_single_submenu): Abort if an item is not in a pane.
1600 (init_menu_items): Put the error check at the top.
1601
1602 * keymap.c (describe_map): Make "shadowed" warning more verbose.
1603
1604 * window.c (adjust_window_trailing_edge): Correctly distinguish
1605 series vs parallel cases, even when window has no parent.
1606
1607 * abbrev.c (record_symbol): New function.
1608 (Finsert_abbrev_table_description): Sort the abbrevs alphabetically.
1609
1610 2006-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1611
1612 * image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return
1613 value of xmalloc.
1614
1615 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
1616 (create_apple_event_from_event_ref, xrm_get_preference_database)
1617 (cfstring_create_normalized): Don't check return value of xmalloc.
1618
1619 * macselect.c (get_scrap_target_type_list, defer_apple_events)
1620 (copy_scrap_flavor_data, mac_handle_service_event): Don't check
1621 return value of xmalloc/xrealloc.
1622
1623 * macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create)
1624 (init_font_name_table, init_font_name_table, mac_do_list_fonts)
1625 (XLoadQueryFont, mac_store_apple_event): Don't check return value
1626 of xmalloc.
1627
1628 2006-04-17 Kim F. Storm <storm@cua.dk>
1629
1630 * window.c (coordinates_in_window): On the vertical border,
1631 calculate the row number measured from the top of the window, not
1632 the top of the frame.
1633 (window_loop): Test w->dedicated with !NILP instead of EQ Qt.
1634 (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change.
1635
1636 2006-04-16 Eli Zaretskii <eliz@gnu.org>
1637
1638 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000.
1639
1640 2006-04-16 Romain Francoise <romain@orebokech.com>
1641
1642 * puresize.h (BASE_PURESIZE): Decrement back to 1200000.
1643
1644 2006-04-16 Andreas Schwab <schwab@suse.de>
1645
1646 * puresize.h (PURESIZE_RATIO): Reduce to 10/6.
1647
1648 2006-04-15 Romain Francoise <romain@orebokech.com>
1649
1650 * puresize.h (BASE_PURESIZE): Increment to 1210000.
1651
1652 2006-04-13 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org>
1653
1654 * print.c (Fprin1_to_string): Mention in the `doc' that the
1655 behavior is modified by `print-level' and `print-length'.
1656
1657 2006-04-13 Kenichi Handa <handa@m17n.org>
1658
1659 * coding.c (setup_coding_system): If eol-type is not yet decided
1660 and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK.
1661 If coding_system is nil, return 0.
1662 (code_convert_region1): Even if coding_system is nil, don't skip
1663 conversion if system_eol_type is not LF.
1664 (code_convert_string1): Likewise.
1665 (code_convert_string_norecord): Likewise.
1666
1667 2006-04-13 Kenichi Handa <handa@m17n.org>
1668
1669 * coding.c (setup_coding_system): Fix previous change.
1670 (encode_coding): If eol_type is not yet decided, use system_eol_type.
1671 (shrink_encoding_region): If eol_type is not yet decided and
1672 system_eol_type is not LF, don't shrink.
1673
1674 2006-04-13 Nick Roberts <nickrob@snap.net.nz>
1675
1676 * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical
1677 line.
1678
1679 2006-04-12 Richard Stallman <rms@gnu.org>
1680
1681 * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1].
1682
1683 * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return.
1684 (Fprocess_send_eof): Abort if fail to open null device.
1685
1686 2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1687
1688 * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h.
1689
1690 * image.c [MAC_OS] (xpm_load_image): Add parentheses around
1691 assignment used as truth value. Add explicit braces to avoid
1692 ambiguous `else'.
1693 [MAC_OS] (gif_load): Remove unused variable `gcpro1'.
1694
1695 * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and
1696 EXFUN in #ifdef HAVE_WINDOW_SYSTEM.
1697 (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm):
1698 Put externs in #ifdef HAVE_X_WINDOWS.
1699 (syms_of_macfns, syms_of_macselect, syms_of_macterm)
1700 (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs.
1701 (init_mac_osx_environment) [MAC_OSX]: Add extern.
1702
1703 * mac.c (init_process): Remove undef.
1704 (select) [MAC_OSX]: Undefine before including sysselect.h.
1705 (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]:
1706 Remove functions and prototypes.
1707 (parse_value): Add parentheses around + inside shift.
1708 (path_from_vol_dir_name): Make static.
1709 (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'.
1710 [!MAC_OSX] (get_path_to_system_folder): Likewise.
1711 (Fmac_get_file_creator, Fmac_get_file_type): Remove unused
1712 variable `cCode'.
1713 (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'.
1714 (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'.
1715
1716 * macfns.c (x_to_mac_color): Remove unused variable `tail'.
1717 (x_set_mouse_color): Remove unused variable `dpy'.
1718 (Fx_create_frame): Remove unused variable `x_frame_count'.
1719 (Fx_server_version): Add explicit braces to avoid ambiguous `else'.
1720 (x_sync): Move from macterm.c.
1721 (Fx_file_dialog): Remove unused variable `default_filter_index'.
1722
1723 * macmenu.c (min_menu_id): Make element type explicit.
1724
1725 * macselect.c (get_flavor_type_from_symbol): Remove unused
1726 variable `val'.
1727 (get_scrap_private_timestamp, x_get_foreign_selection)
1728 (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'.
1729 (Fmac_process_deferred_apple_events): Remove unused variables
1730 `keyword', `reply', `apple_event', `count', and `err'.
1731
1732 * macterm.c: Don't include gnu.h.
1733 (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes.
1734 (x_sync): Move to macfns.c.
1735 [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused
1736 variable `mask_bits'.
1737 (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'.
1738 (x_draw_image_glyph_string): Remove unused variable `pixmap'.
1739 (x_mac_to_emacs_modifiers): Remove function.
1740 (XTset_vertical_scroll_bar, mac_handle_visibility_change)
1741 (x_make_frame_visible, xlfdpat_create, mac_handle_command_event):
1742 Add explicit braces to avoid ambiguous `else'.
1743 (x_make_frame_visible): Remove unused variables `type',
1744 `original_top', and `original_left'.
1745 (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||.
1746 (x_load_font): Remove unused variables `full_name', and `value'.
1747 (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]:
1748 Remove functions.
1749 (do_zoom_window): Reorganize variables with respect to conditionals.
1750 (init_command_handler): Remove unused variable `err'.
1751 [MAC_OSX] (mac_check_bundle): Remove unused variable `child'.
1752
1753 * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position)
1754 (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
1755 (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC)
1756 (do_menu_choice, have_menus_p, x_real_positions)
1757 (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width)
1758 (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar)
1759 (free_frame_menubar): Add externs.
1760
1761 * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H.
1762 (malloc, realloc, free): Add undefs.
1763 (read_load_commands): Remove unused variable `n' and `j'.
1764 (copy_data_segment): Remove unused variable `r'.
1765
1766 * xdisp.c (get_glyph_string_clip_rects): Add parentheses around &&
1767 within ||. Add explicit braces to avoid ambiguous `else'.
1768 (dump_glyph_row): Remove label for `inverse_p' from legend.
1769
1770 * xfaces.c (Finternal_merge_in_global_face, try_font_list):
1771 Add explicit braces to avoid ambiguous `else'.
1772
1773 2006-04-11 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org>
1774
1775 * dispnew.c (init_display): Don't init X display if the user asked
1776 for a non-X display.
1777
1778 2006-04-12 Kenichi Handa <handa@m17n.org>
1779
1780 * coding.c (setup_coding_system): Use system_eol_type for default
1781 coding->eol_type.
1782
1783 2006-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1784
1785 * lisp.h (wrong_type_argument): Mark as NO_RETURN.
1786
1787 * data.c (wrong_type_argument): Try to avoid compiler warnings due
1788 to the fact the function is now marked as NO_RETURN.
1789
1790 2006-04-10 Eli Zaretskii <eliz@gnu.org>
1791
1792 * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef.
1793
1794 2006-04-10 Romain Francoise <romain@orebokech.com>
1795
1796 * xrdb.c (gethomedir): Use xstrdup.
1797
1798 2006-04-10 Andreas Schwab <schwab@suse.de>
1799
1800 * xrdb.c (gethomedir): Make sure to always return a pointer that
1801 can be passed to free.
1802
1803 2006-04-09 Richard Stallman <rms@gnu.org>
1804
1805 * lisp.h (Fkill_emacs): Undo previous change.
1806
1807 2006-04-08 Richard Stallman <rms@gnu.org>
1808
1809 * search.c (boyer_moore): Test ch >= 0400, not >.
1810
1811 2006-04-09 Dan Nicolaescu <dann@ics.uci.edu>
1812
1813 * puresize.h (pure_write_error): Mark as NO_RETURN.
1814
1815 * lisp.h (args_out_of_range, args_out_of_range_3)
1816
1817 2006-04-08 Eli Zaretskii <eliz@gnu.org>
1818
1819 * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements
1820 if a menu is active on this frame.
1821
1822 2006-04-08 Dan Nicolaescu <dann@ics.uci.edu>
1823
1824 * lisp.h (report_file_error): Mark as NO_RETURN.
1825
1826 2006-04-08 Eli Zaretskii <eliz@gnu.org>
1827
1828 * alloc.c [STDC_HEADERS]: Include stddef.h.
1829
1830 * lisp.h (PSEUDOVECSIZE): Fix last change.
1831
1832 2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
1833
1834 * process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
1835 `raw_status_high', and `raw_status_low' with plain integers, and move
1836 them to the end of the structure.
1837
1838 * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
1839 pseudovector's size field so only the Lisp_Object fields get GC'd.
1840
1841 * process.c (update_status, make_process, Fdelete_process)
1842 (Fprocess_status, list_processes_1, start_process_unwind)
1843 (create_process, Fmake_network_process, server_accept_connection)
1844 (wait_reading_process_output, send_process, Fprocess_running_child_p)
1845 (process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
1846 (sigchld_handler, status_notify): Adjust to new non-Lisp fields for
1847 `pid' and `raw_status'.
1848 (Fprocess_id, Fsignal_process): Same, and additionally use floats when
1849 representing PIDs that are larger than most-positive-fixnum.
1850
1851 * keymap.c (describe_map): Only use XINT if we checked INTEGERP.
1852
1853 * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
1854
1855 2006-04-08 Eli Zaretskii <eliz@gnu.org>
1856
1857 * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
1858
1859 2006-04-03 Paul Eggert <eggert@cs.ucla.edu>
1860
1861 * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
1862 ../lib-src/b2m.c and ../lib-src/editfns.c.
1863 (Fcurrent_time_string): Use it.
1864 Document that the year might not consume 4 columns if it's outside
1865 the range 1000-9999.
1866 Check for asctime failure.
1867 Don't assume that the output string length is always exactly 24.
1868
1869 2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1870
1871 * macterm.c (XTread_socket): Initialize variable `f' before its use.
1872
1873 2006-04-03 Kenichi Handa <handa@m17n.org>
1874
1875 * image.c: Include "charset.h" and "coding.h".
1876 (x_find_image_file): Return an encoded file name.
1877
1878 2006-04-01 Eli Zaretskii <eliz@gnu.org>
1879
1880 * configure: Regenerated.
1881
1882 2006-03-31 Kenichi Handa <handa@m17n.org>
1883
1884 * xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
1885
1886 2006-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1887
1888 * xdisp.c (syms_of_xdisp): Fix variable name.
1889
1890 2006-03-30 Kenichi Handa <handa@m17n.org>
1891
1892 * xterm.c (x_term_init): Delete superfluous UNGCPRO.
1893
1894 2006-03-29 Juanma Barranquero <lekktu@gmail.com>
1895
1896 * keyboard.c (process_tool_bar_item): Reorder dummy args.
1897
1898 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
1899
1900 * keyboard.c (tool_bar_items): Use map_keymap.
1901 (process_tool_bar_item): Add dummy args to fit the required interface.
1902
1903 2006-03-25 Eli Zaretskii <eliz@gnu.org>
1904
1905 * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
1906 to zero before calling debug_print or safe_debug_print.
1907
1908 * print.c (print_output_debug_flag): New global variable.
1909 (Fexternal_debugging_output) [WINDOWSNT]: Don't call
1910 OutputDebugString if print_output_debug_flag is zero.
1911
1912 2006-03-24 Paul Eggert <eggert@cs.ucla.edu>
1913
1914 * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
1915 (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
1916 (Fdecode_time): Cast tm_year to EMACS_INT.
1917 (Fcurrent_time_string): Report an invalid time specification if
1918 the argument is invalid. Also, check for out-of-range time stamps.
1919
1920 2006-03-24 Kim F. Storm <storm@cua.dk>
1921
1922 * xterm.c (handle_one_xevent):
1923 * w32term.c (w32_read_socket):
1924 * macterm.c (XTread_socket): Don't let key-press clear mouse face
1925 on in toolbar window if mouse-highlight is an integer.
1926
1927 * fns.c (sxhash_list): Include last non-nil CDR in hash.
1928
1929 2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1930
1931 * macmenu.c (enum mac_menu_kind): New enum.
1932 (min_menu_id): New variable.
1933 (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
1934 (MIN_SUBMENU_ID): Remove defines. All uses are replaced with
1935 min_menu_id and enumerators in enum mac_menu_kind.
1936 (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
1937 All uses changed. Add range check for menu ID.
1938 (fill_menubar): Add range check for menu ID.
1939 [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
1940 GetEventParameter.
1941 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
1942 for each menu kind.
1943
1944 2006-03-22 Kim F. Storm <storm@cua.dk>
1945
1946 * xdisp.c: Undo 2006-03-21 change.
1947
1948 * term.c: Define aliases for append_glyph and produce_stretch_glyph
1949 when `static' is defined to avoid name clash with those in xdisp.c.
1950
1951 * process.c (Faccept_process_output): Fix to comply with lisp reference.
1952 Change arg "timeout" to "seconds" and allow both integer and float value.
1953 Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
1954 rather than microseconds. Fix doc string accordingly.
1955
1956 2006-03-21 Ken Raeburn <raeburn@raeburn.org>
1957
1958 * xdisp.c (store_next_glyph): Rename from append_glyph.
1959 (generate_stretch_glyph): Rename from produce_stretch_glyph.
1960 All callers changed accordingly.
1961
1962 2006-03-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1963
1964 * xterm.c: x_session_initialized new variable.
1965 (x_term_init): Use x_session_initialized to check if
1966 x_session_initialize should be called.
1967 (x_initialize): Initialize x_session_initialized.
1968
1969 2006-03-21 Kim F. Storm <storm@cua.dk>
1970
1971 * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
1972 bitmap here, but ...
1973 (update_window_fringes): ... here, so we can test if it has changed.
1974
1975 2006-03-20 Andreas Schwab <schwab@suse.de>
1976
1977 * dispnew.c (init_display): Check DISPLAY here.
1978
1979 * emacs.c (main): Don't check here.
1980
1981 * xterm.c (x_display_ok): Don't use DISPLAY env var.
1982
1983 2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1984
1985 * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
1986 mixup (YAILOM).
1987
1988 2006-03-20 Eli Zaretskii <eliz@gnu.org>
1989
1990 * emacs.c (main): Fix last change.
1991
1992 2006-03-20 Kenichi Handa <handa@m17n.org>
1993
1994 * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
1995
1996 * keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
1997
1998 * xfns.c (xg_set_icon): Remove unnecessary GCPRO.
1999
2000 * xterm.c (x_term_init): Remove unnecessary GCPRO.
2001
2002 2006-03-19 Kim F. Storm <storm@cua.dk>
2003
2004 * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
2005 so it doesn't associate overlay string with following glyph by default.
2006 Allow integer property value to specify explicit number of buffer
2007 positions associate with overlay string.
2008
2009 2006-03-18 Chong Yidong <cyd@stupidchicken.com>
2010
2011 * xterm.c (x_display_ok): Fix minor bug and compilation warnings.
2012
2013 2006-03-18 Nozomu Ando <nand@mac.com>
2014
2015 * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
2016 (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
2017 (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
2018 Don't redefine.
2019
2020 * m/mips.h: Don't use unexmips on NetBSD.
2021 (LIBS_MACHINE): Move definition lower, so it doesn't use
2022 LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
2023 C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
2024
2025 * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
2026 (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
2027 option is broken (e.g., MIPS/NetBSD).
2028
2029 2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change)
2030
2031 * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
2032 Remove the HAVE_X_WINDOWS conditional.
2033
2034 2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change)
2035
2036 * emacs.c (main): If user asks for a display that is unavailable,
2037 simulate -nw.
2038
2039 * xterm.c (x_display_ok): New function.
2040
2041 * xterm.h: Add prototype for x_display_ok.
2042
2043 2006-03-18 Eli Zaretskii <eliz@gnu.org>
2044
2045 * w32fns.c (Fw32_select_font): Doc fix.
2046
2047 2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2048
2049 * image.c [MAC_OS] (XPutPixel, XGetPixel)
2050 [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
2051 version when depth is 32.
2052 (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
2053 New function.
2054 (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
2055 (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
2056
2057 * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
2058 Create GWorld in ARGB pixel format.
2059 (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
2060 Remove functions.
2061 (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
2062 instead of mac_copy_area/mac_copy_area_with_mask.
2063
2064 2006-03-15 Kim F. Storm <storm@cua.dk>
2065
2066 * xdisp.c (extend_face_to_end_of_line): Always add space glyph to
2067 empty row. Fixes memory corruption revealed by 2006-03-02 change.
2068 (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
2069 (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
2070 width is exactly the same as the window width. Don't count a final
2071 empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
2072
2073 2006-03-15 Juanma Barranquero <lekktu@gmail.com>
2074
2075 * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
2076 conditional on HAVE_NTGUI, not WINDOWS_NT.
2077
2078 2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2079
2080 * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
2081
2082 * fringe.c (mac_init_fringe) [MAC_OS]: New function.
2083
2084 * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
2085 (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
2086 (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
2087 (mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
2088 (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
2089 (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
2090 instead of mac_draw_bitmap.
2091 (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
2092 define_fringe_bitmap and destroy_fringe_bitmap.
2093
2094 2006-03-14 Chong Yidong <cyd@stupidchicken.com>
2095
2096 * xterm.c (x_uncatch_errors): Block input for entire function.
2097
2098 2006-03-12 Jason Rumney <jasonr@gnu.org>
2099
2100 * w32fns.c (Fx_create_frame): Remove call to
2101 Qface_set_after_frame_default (from xfns.c 2003-05-26).
2102
2103 * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
2104 finished with the menu.
2105
2106 * w32term.c: Sync 2005-10-24 xterm.c changes.
2107 (last_mouse_glyph_frame): New var.
2108 (note_mouse_movement): Say mouse moved if current frame differs
2109 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2110 (w32_mouse_position): Set last_mouse_glyph_frame.
2111 Remove OLD_REDISPLAY_CODE block.
2112
2113 2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2114
2115 * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
2116
2117 * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
2118 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
2119
2120 * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
2121
2122 * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
2123
2124 * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
2125 (x_draw_composite_glyph_string_foreground)
2126 (x_draw_image_foreground): Undo previous changes.
2127 (x_draw_hollow_cursor): Likewise. Subtract 1 from the last
2128 argument of mac_draw_rectangle.
2129 (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
2130 (mac_draw_string_common, mac_draw_image_string_cg): Use them.
2131 (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
2132 (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
2133 [USE_CG_DRAWING]: New functions.
2134 (mac_draw_line, mac_erase_rectangle, mac_clear_window)
2135 (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
2136 (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
2137 (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
2138 (mac_copy_area, mac_scroll_area, x_scroll_bar_create)
2139 (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
2140 (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
2141
2142 2006-03-12 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2143
2144 * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
2145
2146 2006-03-11 Jason Rumney <jasonr@gnu.org>
2147
2148 * w32fns.c (signal_user_input): New function.
2149 (post_character_message): Use it for keyboard input.
2150 (w32_msg_pump): Use it for mouse input.
2151
2152 2006-03-11 Luc Teirlinck <teirllm@auburn.edu>
2153
2154 * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
2155 (window_scroll_pixel_based, syms_of_window): Adapt to above change.
2156
2157 2006-03-11 Eli Zaretskii <eliz@gnu.org>
2158
2159 * w32fns.c (w32_wnd_proc): Ignore middle and extra button events
2160 if a menu is already active (the menubar_active flag is on).
2161
2162 2006-03-11 David Ponce <david@dponce.com>
2163
2164 * xfns.c (x_create_tip_frame): Preserve received parms by copying them.
2165
2166 2006-03-11 Eli Zaretskii <eliz@gnu.org>
2167
2168 * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
2169 the list of unused display error handling functions.
2170
2171 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
2172 HAVE_X_WINDOWS.
2173 (internal_condition_case, internal_condition_case_1)
2174 (internal_condition_case_2): Call x_catching_errors only if
2175 HAVE_X_WINDOWS.
2176
2177 * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
2178 Don't include sys/resource.h unless defined.
2179
2180 2006-03-11 Richard Stallman <rms@gnu.org>
2181
2182 * keymap.c (describe_map): Shorten string to indicate shadowed binding.
2183
2184 * vm-limit.c (get_lim_data, lim_data, data_space_start):
2185 Move from mem-limits.h.
2186 (enum warnlevel): New data type.
2187 (check_memory_limits): Rewrite the logic about warnings.
2188 Use standard `struct rlimit'. Check return values for nonsense.
2189 (memory_warnings): Always clear lim_data.
2190
2191 * mem-limits.h (get_lim_data, lim_data, data_space_start):
2192 Move to vm-limit.c.
2193
2194 * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
2195
2196 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
2197 (internal_condition_case_1, internal_condition_case_2):
2198 Abort if within unclosed x_catch_errors.
2199
2200 2006-03-11 Romain Francoise <romain@orebokech.com>
2201
2202 * process.c (Vprocess_adaptive_read_buffering): Doc fix.
2203
2204 2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2205
2206 * lisp.h: Remove duplicate prototypes. Make the prototype of
2207 getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
2208
2209 2006-03-11 Eli Zaretskii <eliz@gnu.org>
2210
2211 * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
2212 argument of XDrawRectangle.
2213
2214 * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
2215
2216 * macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
2217 (x_draw_glyph_string_foreground)
2218 (x_draw_composite_glyph_string_foreground)
2219 (x_draw_image_foreground): Don't subtract 1 from width and height
2220 arguments to mac_draw_rectangle.
2221 (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
2222
2223 2006-03-10 Kim F. Storm <storm@cua.dk>
2224
2225 * alloc.c (USE_POSIX_MEMALIGN): Fix last change.
2226
2227 2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca>
2228
2229 * alloc.c (USE_POSIX_MEMALIGN): New macro.
2230 (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
2231
2232 2006-03-09 Kenichi Handa <handa@m17n.org>
2233
2234 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
2235 ASCII component of a composition.
2236
2237 2006-03-08 Luc Teirlinck <teirllm@auburn.edu>
2238
2239 * window.c: Declare preserve_y as a static global variable.
2240 (window_scroll_pixel_based): No longer declare preserve_y;
2241 it is global now.
2242 (syms_of_window): Set preserve_y to -1.
2243
2244 2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2245
2246 * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
2247 depth is 32.
2248 [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
2249 depth is 32.
2250
2251 2006-03-06 Chong Yidong <cyd@stupidchicken.com>
2252
2253 * xdisp.c (handle_invisible_prop): Don't update it->position with
2254 a buffer position if we're in a display string.
2255
2256 2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2257
2258 * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
2259 (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
2260
2261 * macfns.c (x_default_scroll_bar_color_parameter)
2262 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
2263 Remove unnecessary prototypes.
2264 (x_set_scroll_bar_default_width):
2265 Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
2266 (mac_set_scroll_bar_width): New function.
2267 (mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
2268
2269 * macterm.c (get_control_part_bounds): Fix type of return value.
2270 (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
2271 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
2272 scroll bar if it is not tall enough to display scroll bar thumb.
2273 [USE_CARBON_EVENTS] (mac_convert_event_ref)
2274 (mac_handle_command_event, mac_handle_window_event)
2275 (mac_handle_mouse_event): Check error code of GetEventParameter.
2276 (convert_fn_keycode) [MAC_OSX]: Likewise.
2277
2278 2006-03-05 Andreas Schwab <schwab@suse.de>
2279
2280 * xselect.c (x_catch_errors_unwind): Fix missing return value.
2281
2282 2006-03-02 Kim F. Storm <storm@cua.dk>
2283
2284 * frame.h (struct frame): New member n_tool_bar_rows.
2285
2286 * xdisp.c: Minimize the unpleasent visual impact of the requirement
2287 that non-toolkit tool-bars must occupy an integral number of screen
2288 lines, by distributing the rows evenly over the tool-bar screen area.
2289 (Vtool_bar_border): New variable.
2290 (syms_of_xdisp): DEFVAR_LISP it.
2291 (display_tool_bar_line): Add HEIGHT arg for desired row height.
2292 Make tool-bar row the desired height. Use default face for border
2293 below tool-bar.
2294 (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of
2295 actual tool-bar rows.
2296 (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
2297 Adjust the height of the tool-bar rows to fill tool-bar screen area.
2298 (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
2299 is resized.
2300
2301 2006-03-01 Luc Teirlinck <teirllm@auburn.edu>
2302
2303 * search.c (Fregexp_quote): Do not precede a literal `]' with two
2304 backslashes to try to make clear that it has a literal meaning; it
2305 does not do that. (It could close a character alternative
2306 containing a backslash.)
2307
2308 2006-02-28 Chong Yidong <cyd@stupidchicken.com>
2309
2310 * xselect.c (x_catch_errors_unwind): New function.
2311 (x_reply_selection_request): Put x_uncatch_errors in an unwind.
2312 (Fx_get_atom_name): Call x_uncatch_errors earlier.
2313
2314 * window.c (Qscroll_up, Qscroll_down): New syms.
2315 (window_scroll_pixel_based): Make preserve_y static to avoid
2316 getting point stuck when scrolling 1 line.
2317
2318 2006-02-26 Chong Yidong <cyd@stupidchicken.com>
2319
2320 * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
2321
2322 * xterm.c (x_load_font, x_term_init, XTmouse_position)
2323 (handle_one_xevent, x_connection_closed, x_list_fonts):
2324 No arg for x_uncatch_errors.
2325
2326 * xselect.c (x_own_selection, x_decline_selection_request)
2327 (x_reply_selection_request, x_get_foreign_selection)
2328 (Fx_get_atom_name, Fx_send_client_event): Likewise.
2329
2330 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
2331 Likewise.
2332
2333 2006-02-26 Luc Teirlinck <teirllm@auburn.edu>
2334
2335 * lread.c: Declare Vload_file_rep_suffixes instead of
2336 deleted variable default_suffixes.
2337 (Fget_load_suffixes): New function.
2338 (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
2339 No longer use deleted variable default_suffixes. Update docstring.
2340 (syms_of_lread): defsubr Sget_load_suffixes.
2341 Expand `load-suffixes' docstring.
2342 Delete default_suffixes and DEFVAR_LISP the new variable
2343 `load-file-rep-suffixes'.
2344
2345 * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
2346 of Vload_suffixes.
2347
2348 * lisp.h: EXFUN Fget_load_suffixes.
2349 Extern Vload_file_rep_suffixes.
2350
2351 * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
2352 with lisp.h.
2353
2354 2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
2355
2356 * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
2357 qualifier which was trying to avoid the bug that was fixed by
2358 yesterday's changes to xterm.c.
2359
2360 2006-02-25 Chong Yidong <cyd@stupidchicken.com>
2361
2362 * xterm.h (x_catch_errors) Return value changed to void.
2363 (x_uncatch_errors): Delete unused count argument.
2364
2365 * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
2366 it can be called in a signal handler.
2367 (x_catch_errors_unwind): Function deleted.
2368 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
2369 (x_check_errors): Call x_uncatch_errors before signalling error.
2370
2371 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
2372 (x_connection_closed, x_list_fonts): Use new versions of
2373 x_catch_errors and x_uncatch_errors.
2374
2375 * xselect.c (x_own_selection, x_decline_selection_request)
2376 (x_reply_selection_request, x_get_foreign_selection)
2377 (Fx_get_atom_name, Fx_send_client_event): Likewise.
2378
2379 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
2380 Likewise.
2381
2382 * eval.c (record_unwind_protect): Add an assertion.
2383
2384 2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
2385
2386 * process.c (Fmake_network_process): Init the process's mark.
2387
2388 2006-02-25 Kim F. Storm <storm@cua.dk>
2389
2390 * buffer.c (modify_overlay): Force redisplay if we modify an
2391 overlay at the end of the buffer.
2392
2393 2006-02-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2394
2395 * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
2396 nil the image file has been removed, in that case use the (cached)
2397 pixmap.
2398
2399 2006-02-24 Kenichi Handa <handa@m17n.org>
2400
2401 * fileio.c (Finsert_file_contents): When a text is replaced
2402 partially, be sure to set point before the inserted characters.
2403
2404 2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change)
2405
2406 * xfns.c (Fx_file_dialog): Return a decoded file name.
2407
2408 2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2409
2410 * dispnew.c (update_text_area): Avoid needless redraw of rightmost
2411 glyph whose face is extended to the text area end.
2412
2413 * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
2414 values if control is not visible or values are not changed.
2415
2416 2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
2417
2418 * window.c (Fwindow_list): Check `window' before doing XWINDOW.
2419 The default `window' should not be "on a different frame".
2420
2421 2006-02-22 Kim F. Storm <storm@cua.dk>
2422
2423 * indent.c (Fvertical_motion): Only try to move back if we can.
2424
2425 2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2426
2427 * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
2428 n_clip_rects.
2429
2430 * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
2431 xmenu.c.
2432
2433 * macterm.c (GC_CLIP_REGION): Remove macro.
2434 (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
2435 All uses changed. Don't do clipping if n_clip_rects is zero.
2436 (mac_set_clip_rectangles): Use xassert instead of abort.
2437 Set n_clip_rects. Don't make clip_region empty when number of
2438 clipping rectangles is zero.
2439 (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
2440 calling mac_set_clip_rectangles.
2441 (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
2442 avoid multiple redraws.
2443
2444 2006-02-22 Kim F. Storm <storm@cua.dk>
2445
2446 * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
2447
2448 2006-02-21 Kim F. Storm <storm@cua.dk>
2449
2450 * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
2451
2452 2006-02-21 Zhang Wei <brep@newsmth.org>
2453
2454 * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
2455 returning it.
2456
2457 2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2458
2459 * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
2460 (standard_bitmaps): Use it.
2461
2462 2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2463
2464 * macterm.c (mac_draw_string_common): Remove arg MODE. New arg
2465 BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero.
2466 (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
2467 [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
2468 mac_draw_string_cg. New arg BG_WIDTH. All uses changed.
2469 Draw background if BG_WIDTH is not zero. Use float constants as
2470 divisors instead of double. Use alloca instead of xmalloc/xfree.
2471 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2472 [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
2473 mac_draw_image_string* functions.
2474 (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
2475 some fonts when srcCopy text transfer mode might be used.
2476 (mac_begin_clip, mac_end_clip): Check if region is empty.
2477 (mac_set_clip_rectangles): When resetting clip region, make it
2478 empty instead of disposing of it.
2479
2480 2006-02-20 Kim F. Storm <storm@cua.dk>
2481
2482 * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
2483
2484 * buffer.h (struct buffer): New members fringe_indicator_alist and
2485 fringe_cursor_alist.
2486
2487 * buffer.c (init_buffer_once): Set dummy default values for
2488 fringe-indicator-alist and fringe-cursor-alist. The proper
2489 default values are set by pre-loading fringe.el.
2490 (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
2491 fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
2492 corresponding default- variables.
2493
2494 * fringe.c (enum fringe_bitmap_type): Remove. Change all uses
2495 to use `int'.
2496 (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
2497 Define explicitly.
2498 (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
2499 (Qhollow_small): New variables.
2500 (syms_of_fringe): Intern and staticpro them.
2501 (question_mark_bits): Rename from unknown_bits.
2502 (left_curly_arrow_bits): Rename from continuation_bits.
2503 (right_curly_arrow_bits): Rename from continued_bits.
2504 (left_triangle_bits): Rename from ov_bits.
2505 (right_triangle_bits): Add.
2506 (filled_rectangle_bits): Rename from filled_box_cursor_bits.
2507 (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
2508 (filled_square_bits): Add.
2509 (vertical_bar_bits): Rename from bar_cursor_bits.
2510 (horizontal_bar_bits): Rename from hbar_cursor_bits.
2511 (empty_line_bits): Rename from zv_bits.
2512 (standard_bitmaps): Update to use new names.
2513 (draw_fringe_bitmap_1): Make static.
2514 (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
2515 to map from logical cursors and indicators to physical bitmaps.
2516 (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
2517 bitmaps using symbol names instead of bitmap numbers.
2518 (update_window_fringes): Use logical indicator symbol names
2519 instead of bitmap numbers for logical. Add bitmap cache.
2520 (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
2521
2522 2006-02-20 Chong Yidong <cyd@stupidchicken.com>
2523
2524 * regex.c: Revert 2006-02-19 change.
2525 (xmalloc, xrealloc): Define these when not linked to Emacs.
2526 Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
2527
2528 2006-02-19 Luc Teirlinck <teirllm@auburn.edu>
2529
2530 * regex.c (extend_range_table_work_area): Fix typo.
2531
2532 2006-02-19 Richard M. Stallman <rms@gnu.org>
2533
2534 * xterm.c (x_catch_errors): Use xmalloc.
2535
2536 * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
2537 (regex_compile): Likewise.
2538 (regcomp): Use xmalloc.
2539
2540 * gtkutil.c (malloc_widget_value): Use xmalloc.
2541
2542 * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
2543 (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
2544
2545 * xmenu.c (digest_single_submenu): When pane_string is empty,
2546 do initialize save_wv.
2547
2548 2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2549
2550 * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
2551 w->update_mode_line if arg F is not the selected frame.
2552
2553 * macmenu.c (popup_activated_flag, submenu_id)
2554 (next_menubar_widget_id): Remove variables.
2555 (initialize_frame_menubar): Remove function.
2556 (pop_down_menu, mac_menu_show): Simplify save value.
2557 (dispose_menus): New function.
2558 (pop_down_menu, fill_menubar): Use it.
2559 (fill_submenu): Remove function. All uses changed to fill_menu.
2560 (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg
2561 POS. Don't call SetMenuItemHierarchicalID here.
2562 (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be
2563 used next. Call SetMenuItemHierarchicalID here.
2564 (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu
2565 objects if needed. Reuse existing menu bar titles if possible.
2566 (set_frame_menubar): Don't clean up menu objects here.
2567
2568 2006-02-18 Chong Yidong <cyd@stupidchicken.com>
2569
2570 * window.c (window_min_size_1): Ensure room for the scroll bar and
2571 fringes.
2572
2573 2006-02-17 Romain Francoise <romain@orebokech.com>
2574
2575 * puresize.h (BASE_PURESIZE): Increment to 1200000.
2576
2577 2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca>
2578
2579 * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
2580 addition of the BLOCK_INPUTs.
2581
2582 2006-02-17 Juanma Barranquero <lekktu@gmail.com>
2583
2584 * window.c (Fset_window_scroll_bars): Doc fix.
2585
2586 2006-02-17 Kenichi Handa <handa@m17n.org>
2587
2588 * xdisp.c (display_mode_element): Call display_string with correct
2589 PREC arg (which must be a number of characters, not column width).
2590
2591 2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2592
2593 * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
2594
2595 * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
2596
2597 * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
2598
2599 2006-02-14 Richard M. Stallman <rms@gnu.org>
2600
2601 * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
2602
2603 * m/ibms390x.h: New file.
2604
2605 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2606
2607 * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
2608 value of x-gtk-whole-detached-tool-bar.
2609 (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
2610
2611 * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
2612
2613 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2614
2615 * xterm.c (x_x_to_emacs_modifiers): Make non-static.
2616
2617 * xterm.h: Declare x_x_to_emacs_modifiers.
2618
2619 * gtkutil.c (xg_tool_bar_button_cb): New function.
2620 (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
2621 store modifiers in event.
2622 (update_frame_tool_bar): Connect button-release-event to
2623 xg_tool_bar_button_cb.
2624
2625 2006-02-13 Richard M. Stallman <rms@gnu.org>
2626
2627 * .gdbinit (xwindow): Update the code to show the window box.
2628
2629 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2630
2631 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
2632
2633 2006-02-12 Richard M. Stallman <rms@gnu.org>
2634
2635 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
2636
2637 2006-02-11 Eli Zaretskii <eliz@gnu.org>
2638
2639 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
2640 (syms_of_keyboard): DEVFAR_LISP and initialize it.
2641 (parse_tool_bar_item, parse_menu_item): If that variable is
2642 non-nil, don't disable menu items and tool-bar buttons.
2643
2644 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
2645
2646 * doc.c (Fsubstitute_command_keys): Doc fix.
2647
2648 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
2649
2650 * data.c (Findirect_function): Rewrite docstring.
2651 Fix omission bug: Declare new arg NOERROR.
2652
2653 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2654
2655 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
2656 if window_desc is not set yet.
2657 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
2658 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
2659 parameter `visibility' is `icon'.
2660 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
2661 instead of "fontset-mac".
2662 (Fx_focus_frame): New defun.
2663 (syms_of_macfns): Defsubr it.
2664
2665 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
2666 for unfocused frame.
2667 (x_raise_frame): Call BringToFront instead of SelectWindow.
2668 (x_lower_frame): Use NULL instead of nil.
2669 (x_make_frame_visible): Don't call SelectWindow.
2670 (XTread_socket): Increment handling_signal at the start, decrement
2671 it at the end.
2672 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
2673 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
2674
2675 2006-02-10 Kim F. Storm <storm@cua.dk>
2676
2677 * data.c (Findirect_function): Add NOERROR arg. All callers changed
2678 to pass Qnil for NOERROR.
2679
2680 * keymap.c (current_minor_maps_error): Remove.
2681 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
2682 instead of using internal_condition_case_1+current_minor_maps_error.
2683
2684 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2685
2686 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
2687 frames for GTK, in that case it is the tool bar. This is so that
2688 highlighted text get reset properly.
2689
2690 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
2691
2692 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
2693
2694 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2695
2696 * window.c (adjust_window_trailing_edge): Check that shrinking
2697 does not set a window to size zero or less.
2698
2699 2006-02-08 Miles Bader <miles@gnu.org>
2700
2701 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
2702 of Fget_text_property (other field functions work with overlays as
2703 well as text-properties).
2704
2705 2006-02-07 Kenichi Handa <handa@m17n.org>
2706
2707 * dispextern.h (unibyte_display_via_language_environment): Extern it.
2708
2709 * xterm.h (unibyte_display_via_language_environment):
2710 * w32term.h (unibyte_display_via_language_environment):
2711 * macterm.h (unibyte_display_via_language_environment): Delete extern.
2712
2713 2006-02-07 Kenichi Handa <handa@m17n.org>
2714
2715 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
2716 (produce_glyphs): Set the character to print in
2717 it->char_to_display. Handle unibyte-display-via-language-environment.
2718 (produce_stretch_glyph): Set character to print in it->char_to_display.
2719
2720 2006-02-06 Kenichi Handa <handa@m17n.org>
2721
2722 * lread.c (openp): Initialize encoded_fn before GCPRO it.
2723
2724 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
2725
2726 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
2727
2728 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
2729 Cast bitfield value to EMACS_INT, to suppress gcc warning.
2730
2731 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
2732 defining.
2733
2734 2006-02-03 Kim F. Storm <storm@cua.dk>
2735
2736 * xdisp.c: Cache last merged escape glyph face.
2737 (last_escape_glyph_frame, last_escape_glyph_face_id)
2738 (last_escape_glyph_merged_face_id): New variables.
2739 (get_next_display_element): Use/update them.
2740 (redisplay_internal): Reset them before redisplay.
2741
2742 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
2743 Only recheck faces after displaying ellipsis.
2744
2745 2006-02-02 Kenichi Handa <handa@m17n.org>
2746
2747 * coding.c (decode_composition_emacs_mule): Fix handling of
2748 incorrect format data.
2749
2750 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2751
2752 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
2753 (gtk_toolbar_insert) so we can have tool bars of different sizes.
2754
2755 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
2756
2757 * data.c (Flistp): Doc fix.
2758
2759 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
2760
2761 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
2762 Fix typos in docstrings.
2763
2764 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
2765
2766 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
2767
2768 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
2769
2770 * alloc.c (make_interval, allocate_string)
2771 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
2772 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
2773 global variables.
2774
2775 2006-01-27 Eli Zaretskii <eliz@gnu.org>
2776
2777 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
2778 the MSDOS definition.
2779
2780 2006-01-26 Richard M. Stallman <rms@gnu.org>
2781
2782 * alloc.c (check_pure_size): Make overflow message an "error message".
2783
2784 * keymap.c (Fmap_keymap): Doc fix.
2785
2786 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
2787 unless they were cleared out.
2788
2789 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
2790
2791 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2792
2793 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
2794 (find_field): Set before_field to after_field when pos is at BEGV.
2795 (Fline_beginning_position, Fline_end_position):
2796 Clarify confusing doc string.
2797
2798 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
2799 string.
2800
2801 2006-01-26 Kenichi Handa <handa@m17n.org>
2802
2803 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
2804 current_dir, and error_file. On reporting an error, decode them
2805 back.
2806
2807 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2808
2809 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
2810 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
2811 Don't check for quit, since any loop will go through fail or jump.
2812
2813 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
2814
2815 * alloc.c (allocate_string_data): Update next_free immediately, to
2816 reduce risk of memory clobberage.
2817
2818 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2819
2820 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
2821 display when point moves across an ellipsis. If there are
2822 adjacent invisible texts, don't lose the second one's ellipsis.
2823 (x_produce_glyphs): Doc fix.
2824
2825 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
2826
2827 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
2828
2829 2006-01-23 Kim F. Storm <storm@cua.dk>
2830
2831 * xdisp.c (handle_single_display_spec): Fix handling of space
2832 property on char from string: set *position rather than
2833 it->current.pos.
2834 (produce_stretch_glyph): Reduce width of stretch glyphs so they
2835 don't get wider than the window (unless truncate-lines is on).
2836
2837 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
2838
2839 * xterm.c: Avoid allocating Lisp data from a signal handler.
2840 (x_error_message): New var to replace x_error_message_string.
2841 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
2842 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
2843 (syms_of_xterm): Use it instead of x_error_message_string.
2844
2845 * alloc.c (lisp_align_free): Add an assertion.
2846 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
2847 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
2848 a signal handler.
2849
2850 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
2851
2852 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
2853
2854 2006-01-21 Romain Francoise <romain@orebokech.com>
2855
2856 * xdisp.c (get_window_cursor_type): Fix last change.
2857 Update copyright year.
2858
2859 2006-01-20 Eli Zaretskii <eliz@gnu.org>
2860
2861 * lread.c (Fload): Don't leak the file descriptor returned by
2862 openp if we are going to signal an error.
2863
2864 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
2865 directly to _close.
2866 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
2867 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
2868 to _read.
2869 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
2870 directly to _write.
2871
2872 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
2873 if it is NULL.
2874
2875 2006-01-20 Kenichi Handa <handa@m17n.org>
2876
2877 * puresize.h (BASE_PURESIZE): Increment to 1190000.
2878
2879 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
2880
2881 * xdisp.c (get_window_cursor_type): Use cursor type specified by
2882 the selected buffer for the echo area too.
2883
2884 2006-01-19 Richard M. Stallman <rms@gnu.org>
2885
2886 * keymap.c (Fmap_keymap): Doc fix.
2887
2888 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
2889
2890 * keyboard.c (echo_char): Don't omit the space between first two
2891 echoed chars.
2892
2893 * minibuf.c (read_minibuf): Fix previous change.
2894
2895 2006-01-19 Kenichi Handa <handa@m17n.org>
2896
2897 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
2898
2899 2006-01-17 Richard M. Stallman <rms@gnu.org>
2900
2901 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
2902 value in f->param_alist.
2903
2904 2006-01-15 Andreas Schwab <schwab@suse.de>
2905
2906 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
2907
2908 2006-01-13 Richard M. Stallman <rms@gnu.org>
2909
2910 * Makefile.in: Define new macro WINDOW_SUPPORT.
2911 (lisp): Use it.
2912 (SOME_MACHINE_LISP): Add conditionally loaded files.
2913
2914 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2915
2916 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
2917 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
2918 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
2919 decomposed form.
2920
2921 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
2922 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
2923 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
2924 macro. Also try member ifr_addr when getting netmask.
2925
2926 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
2927
2928 * fileio.c (Fexpand_file_name): Remove redundant tests.
2929 Fix elimination of // so that it doesn't prevent elimination of an
2930 immediately following /. or /..
2931
2932 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2933
2934 * gtkutil.c (xg_toggle_notify_cb): New function.
2935 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
2936 xg_toggle_notify_cb.
2937 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
2938 parameter value changes so the toggle button gets updated.
2939
2940 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
2941
2942 * .gdbinit: Fix typo.
2943
2944 2006-01-05 Eli Zaretskii <eliz@gnu.org>
2945
2946 * .gdbinit: Fix last change.
2947
2948 2006-01-05 Kim F. Storm <storm@cua.dk>
2949
2950 * process.c (Fmake_network_process): Use AF_INET instead of
2951 AF_UNSPEC when AF_INET6 is not defined.
2952
2953 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2954
2955 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
2956 Don't check that the other type is known file-related one.
2957
2958 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
2959 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
2960 OS X 10.4 and later.
2961
2962 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2963
2964 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
2965 let GTK do all image processing. Importing Emacs own pixmaps to GTK
2966 looks bad for inactive tool bar items with some Gnome themes.
2967
2968 2006-01-04 Eli Zaretskii <eliz@gnu.org>
2969
2970 * .gdbinit: Avoid a warning message when x_error_quitter is not
2971 compiled in.
2972
2973 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
2974 for w32.
2975
2976 2006-01-04 Kim F. Storm <storm@cua.dk>
2977
2978 * process.c: Add IPv6 support.
2979 (Qipv4, Qipv6): New vars.
2980 (syms_of_process): Intern and staticpro them.
2981 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
2982 with or without port number. Handle 4 element vector as IPv4 address
2983 without port number.
2984 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
2985 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
2986 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
2987 request that address family only. :family nil or omitted means to
2988 determine address family from the specified :host and :service.
2989 (ifflag_table): Add missing OpenBSD IFF_ flags.
2990 (server_accept_connection): Handle IPv6 addresses.
2991 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
2992
2993 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
2994 determine which breakpoints to set.
2995
2996 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
2997
2998 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
2999
3000 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
3001
3002 2006-01-03 Romain Francoise <romain@orebokech.com>
3003
3004 * emacs.c (main): Update copyright year.
3005
3006 2006-01-03 Ken Raeburn <raeburn@gnu.org>
3007
3008 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
3009 nil for the call to internal_delete_file.
3010
3011 2006-01-01 Ken Raeburn <raeburn@gnu.org>
3012
3013 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
3014 to nil for the call to Fwrite_region.
3015
3016 2005-12-31 Richard M. Stallman <rms@gnu.org>
3017
3018 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
3019
3020 2005-12-31 Eli Zaretskii <eliz@gnu.org>
3021
3022 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
3023
3024 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
3025
3026 * textprop.c (set_text_properties): Reword description of return value.
3027 Return Qnil if caller wants to remove all text properties from a
3028 string and the string already has no intervals.
3029
3030 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
3031
3032 * term.c (visible_cursor): New boolean var.
3033 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
3034 visible_cursor.
3035 (syms_of_term): Export the new var as "visible-cursor".
3036
3037 2005-12-30 Eli Zaretskii <eliz@gnu.org>
3038
3039 * .gdbinit: Tell users not to worry about GDB warnings that some
3040 functions do not exist in the binary.
3041
3042 2005-12-30 Andreas Schwab <schwab@suse.de>
3043
3044 * process.c (Fnetwork_interface_info): Correctly terminate the
3045 loop over ifflag_table.
3046
3047 2005-12-29 Richard M. Stallman <rms@gnu.org>
3048
3049 * lread.c (readevalloop): Test for reading a whole buffer
3050 before actually reading anything. Handle all cases, including
3051 START = END = nil and an already-narrowed buffer.
3052 Convert END to a marker if it is a number.
3053
3054 * keymap.c (describe_map): Put sparse map elements into an array,
3055 sort them, then output a sequence of identical bindings on one line.
3056 (struct describe_map_elt): New data type.
3057 (describe_map_compare): New function.
3058
3059 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3060
3061 * gtkutil.c (xg_get_file_with_chooser): Change message shown
3062 in file chooser.
3063
3064 2005-12-27 Richard M. Stallman <rms@gnu.org>
3065
3066 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
3067 not the current one.
3068
3069 * minibuf.c (Fminibuffer_message): Doc fix.
3070 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
3071
3072 * eval.c (do_autoload): Ignore elements of Vautoload_queue
3073 where car is not symbol.
3074
3075 2005-12-27 Kenichi Handa <handa@m17n.org>
3076
3077 * charset.c (lisp_string_width): Check multibyteness of STRING.
3078
3079 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3080
3081 * xfns.c: x_show_hidden_files, new variable.
3082 (syms_of_xfns): Defvar it.
3083
3084 * gtkutil.c (xg_toggle_visibility_cb): New function.
3085 (xg_get_file_with_chooser): Add toggle hidden files and a message
3086 to the new file chooser dialog. Show hidden files if
3087 x_show_hidden_files is non-zero.
3088
3089 2005-12-26 Richard M. Stallman <rms@gnu.org>
3090
3091 * keyboard.h: Undo previous change.
3092
3093 * Makefile.in (undo.o): Undo previous change.
3094
3095 * undo.c: Undo previous change.
3096
3097 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
3098
3099 * keyboard.h: extern last_point_position_window.
3100
3101 * undo.c: include keyboard.h.
3102
3103 * Makefile.in (undo.o): Depend on keyboard.h.
3104
3105 2005-12-26 Richard M. Stallman <rms@gnu.org>
3106
3107 * commands.h (last_point_position_window): Declare.
3108
3109 * undo.c: Depend on window.h.
3110 (record_point): Save old point from the correct window.
3111
3112 * keyboard.c (last_point_position_window): New variable.
3113 (command_loop_1): Set last_point_position_window.
3114 (syms_of_keyboard): Init it.
3115
3116 * Makefile.in (undo.o): Depend on window.h.
3117
3118 2005-12-25 Richard M. Stallman <rms@gnu.org>
3119
3120 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
3121 to undo a `provide'.
3122
3123 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
3124
3125 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
3126
3127 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
3128 define for FreeBSD on this platform.
3129
3130 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3131
3132 * macterm.h (TYPE_FILE_NAME): New define.
3133 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
3134
3135 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
3136 Add prototypes. Make static.
3137 (mac_aedesc_to_lisp): Initialize err to noErr.
3138 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
3139 (init_coercion_handler): New functions.
3140 (Fmac_coerce_ae_data): Use coercion of Apple event data for
3141 translation from/to file names.
3142
3143 * macterm.c: Don't include sys/param.h.
3144 (init_coercion_handler): Add extern.
3145 [MAC_OS8] (main): Call init_coercion_handler.
3146 (mac_initialize) [MAC_OSX]: Likewise.
3147 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
3148 Apple event data for translation from/to file names.
3149
3150 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3151
3152 * image.c [MAC_OS] (find_image_fsspec): Likewise.
3153
3154 2005-12-23 Martin Rudalics <rudalics@gmx.at>
3155
3156 * insdel.c (insert, insert_and_inherit, insert_before_markers)
3157 (insert_before_markers_and_inherit): Make sure FROM is correct
3158 when `after-change-functions' are called.
3159
3160 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3161
3162 * xfns.c (Fx_uses_old_gtk_dialog): New function.
3163
3164 * gtkutil.c (xg_uses_old_file_dialog): New function.
3165 (xg_get_file_name): Use xg_uses_old_file_dialog.
3166
3167 * gtkutil.h: Declare xg_uses_old_file_dialog.
3168
3169 2005-12-22 Richard M. Stallman <rms@gnu.org>
3170
3171 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
3172
3173 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3174
3175 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
3176
3177 * macgui.h (XCharStruct): Remove member `valid_p'.
3178 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
3179 (XCharStructRow): New typedef.
3180 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
3181 New macros.
3182 (struct MacFontStruct): Add member `bounds'. Remove member
3183 `per_char'. All uses for QuichDraw Text fonts are changed to
3184 `bounds.per_char'. ATSUI font bounds are represented as an array
3185 `bounds.rows' of XCharStructRow's, each of which consists of a
3186 bitmap of valid entries and an array of char bounds.
3187
3188 * macterm.c (mac_per_char_metric): Add prototype.
3189 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
3190 (mac_query_char_extents): New function.
3191 (x_per_char_metric): Use it.
3192 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
3193 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
3194 Use mac_per_char_metric instead of x_per_char_metric.
3195 (mac_text_extents_16): New function.
3196 (mac_compute_glyph_string_overhangs): Use it.
3197 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
3198
3199 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
3200
3201 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
3202 (Fminibuffer_completion_help): Remove duplicates before display.
3203
3204 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
3205
3206 * print.c (print_preprocess): Don't lose print_depth levels while
3207 iterating.
3208
3209 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3210
3211 * macmenu.c (Qmac_apple_event): Add extern.
3212 (set_frame_menubar, mac_menu_show keymp_panes)
3213 (single_keymap_panes, list_of_panes, list_of_item)
3214 (single_menu_item): Add argument types to prototypes.
3215 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
3216 (struct skp): New struct (from xmenu.c).
3217 (single_keymap_panes, single_menu_item, list_of_panes)
3218 (list_of_item): Sync with xmenu.c.
3219 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
3220 POSITION if it is mac-apple-event event.
3221 (menubar_selection_callback): Don't use menu_command_in_progress.
3222 (set_frame_menubar): First parse all submenus, then make
3223 widget_value trees from them. Don't allocate any widget_value
3224 objects until we are done with the parsing.
3225 (parse_single_submenu, digest_single_submenu): New functions.
3226 (single_submenu): Function deleted, replaced by those two.
3227 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
3228 create or dispose of EventHandlerUPP. Install hander to all submenus.
3229 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
3230 instead of ENCODE_SYSTEM.
3231 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
3232 integer values.
3233 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
3234 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
3235 format menu item string. Don't use NULL for integer value.
3236
3237 * macterm.h (struct mac_output): Remove unused member
3238 menu_command_in_progress.
3239
3240 2005-12-20 Juri Linkov <juri@jurta.org>
3241
3242 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
3243 position is non-nil, else set it to nil.
3244
3245 * macmenu.c (Fx_popup_menu): Add `else' to set
3246 Vmenu_updating_frame to nil only if position is nil.
3247
3248 * w32menu.c (Fx_popup_menu): Add `else' to set
3249 Vmenu_updating_frame to nil only if position is nil.
3250
3251 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3252
3253 * keyboard.c (make_lispy_event): Drag-and-drop items are now
3254 stored in member `args' of struct input_event.
3255
3256 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
3257
3258 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
3259 stored in member `args' of struct input_event.
3260
3261 * w32term.c (construct_drag_n_drop): Likewise.
3262
3263 * macterm.c (mac_do_receive_drag): Likewise.
3264 (x_use_underline_position_properties): Undo 2005-07-13 change.
3265 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
3266 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
3267 (mac_pass_command_to_system, mac_pass_control_to_system):
3268 New boolean variables renamed from Lisp_Object ones
3269 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
3270 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
3271 All uses changed.
3272 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
3273 Make them user options.
3274 (mac_handle_command_event, mac_store_services_event):
3275 Call create_apple_event_from_event_ref without 5th argument.
3276 (backtranslate_modified_keycode): Mask off modifier keys that are
3277 mapped to some Emacs modifiers before passing it to KeyTranslate.
3278 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
3279 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
3280 Fix docstrings of `mac-*-modifier'.
3281
3282 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
3283 (do_applescript): Change argument types to Lisp_Object.
3284 All uses changed.
3285
3286 * macterm.h (create_apple_event_from_event_ref): Remove 5th
3287 argument from extern.
3288
3289 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
3290
3291 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
3292 the answer, return `lambda', not nil.
3293
3294 2005-12-17 Eli Zaretskii <eliz@gnu.org>
3295
3296 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
3297 enclosed in $(ARGQUOTE)s should not be split between two lines, as
3298 that will break with GNU Make >3.80, when sh.exe is used and
3299 arg quoting is with '..'.
3300
3301 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
3302
3303 * print.c (print_preprocess): Just signal an error if print_depth
3304 is exceeded.
3305
3306 2005-12-17 Eli Zaretskii <eliz@gnu.org>
3307
3308 * .gdbinit: Set a breakpoint on w32_abort.
3309
3310 2005-12-16 Juri Linkov <juri@jurta.org>
3311
3312 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
3313 created from minibuffer_completion_contents.
3314 (minibuffer_completion_contents): Remove.
3315 (do_completion, Fminibuffer_complete_word)
3316 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
3317 with Fminibuffer_completion_contents.
3318 (syms_of_minibuf): Add Sminibuffer_completion_contents.
3319 (Fdisplay_completion_list): Doc fix.
3320 (display_completion_list_1): Use `nil' for second arg of
3321 `Fdisplay_completion_list'.
3322
3323 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3324
3325 * xfns.c (compute_tip_xy): Handle negative dx and dy.
3326
3327 * w32fns.c (compute_tip_xy): Ditto.
3328
3329 * macfns.c (compute_tip_xy): Ditto.
3330
3331 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
3332
3333 * print.c (print_preprocess): Go to a deeper print_depth to avoid
3334 print_object loop.
3335
3336 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
3337
3338 * coding.c (code_convert_region_unwind): GCPRO arg.
3339
3340 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3341
3342 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
3343 i.e. dy is offset from top of frame instead of bottom.
3344
3345 * macfns.c (compute_tip_xy): Ditto.
3346
3347 * w32fns.c (compute_tip_xy): Ditto.
3348
3349 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
3350 (xg_get_image_for_pixmap, xg_create_frame_widgets)
3351 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
3352
3353 * xmenu.c (menubar_selection_callback): Do nothing if the callback
3354 is for an unselected radio menu item.
3355
3356 2005-12-11 Richard M. Stallman <rms@gnu.org>
3357
3358 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
3359
3360 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
3361
3362 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
3363 (Flookup_key): Doc fix.
3364 (syms_of_keymap) <function-key-map>: Doc fix.
3365
3366 * fns.c (Frequire): Treat evaluating from a source file
3367 like loading the file.
3368
3369 * floatfns.c (Flog): Doc fix.
3370
3371 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
3372 when we change the buffer.
3373
3374 2005-12-11 Juri Linkov <juri@jurta.org>
3375
3376 * minibuf.c (display_completion_list_1):
3377 Call `minibuffer_completion_contents' instead of using `nil' as
3378 second arg of `Fdisplay_completion_list'.
3379 (keys_of_minibuf): Unbind SPC in
3380 Vminibuffer_local_filename_completion_map (see also related
3381 change on 2005-12-06).
3382
3383 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3384
3385 * emacs.c (main) [MAC_OS8]: Undo previous change.
3386
3387 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
3388 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
3389
3390 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3391
3392 * Makefile.in (macselect.o): Depend on keymap.h.
3393
3394 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
3395 syms_of_macselect.
3396
3397 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
3398 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
3399
3400 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
3401 (syms_of_keyboard) [MAC_OS]: Initialize it.
3402 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
3403
3404 * mac.c (Qundecoded_file_name): New variable.
3405 (syms_of_mac): Initialize it.
3406 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
3407 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
3408 (Fmac_coerce_ae_data): New defun.
3409 (syms_of_mac): Defsubr it.
3410
3411 * macselect.c: Include keymap.h.
3412 (mac_ready_for_apple_events): New variable.
3413 (Vmac_apple_event_map, Qmac_apple_event_class)
3414 (Qmac_apple_event_id): New variables.
3415 (syms_of_macselect): Initialize them.
3416 (Qundefined, mac_store_apple_event): Add externs.
3417 (struct apple_event_binding): New struct.
3418 (find_event_binding_fun, find_event_binding)
3419 (mac_find_apple_event_spec, defer_apple_events)
3420 (mac_handle_apple_event, init_apple_event_handler)
3421 (copy_scrap_flavor_data): New functions.
3422 (Fmac_process_deferred_apple_events): New defun.
3423 (syms_of_macselect): Defsubr it.
3424 (mac_store_services_event): Fix extern.
3425 (mac_handle_service_event): Don't allocate Lisp objects during
3426 asynchronous input processing. Use mac_store_services_event
3427 instead of mac_store_application_menu_event.
3428
3429 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
3430 (Qpreferences): Remove variables.
3431 (syms_of_macterm) : Don't initialize them.
3432 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
3433 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
3434 (init_required_apple_events, do_ae_open_application)
3435 (do_ae_print_documents, do_ae_open_documents)
3436 (do_ae_quit_application): Remove functions and prototypes.
3437 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
3438 (mac_find_apple_event_spec): Add externs.
3439 (mac_store_application_menu_event): Remove function.
3440 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
3441 (mac_handle_command_event): Create Apple event from Carbon event.
3442 Use mac_store_apple_event instead of mac_store_application_menu_event.
3443 [MAC_OSX] (mac_store_services_event): Likewise.
3444 (struct SelectionRange, SelectionRange): Remove struct and typedef.
3445 [MAC_OS8] (main): Call init_apple_event_handler instead of
3446 init_required_apple_events.
3447 (mac_initialize) [MAC_OSX]: Likewise.
3448 [!USE_CARBON_EVENTS] (mac_wait_next_event):
3449 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
3450
3451 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
3452 Add externs.
3453 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
3454 (Fmac_get_preference): Add EXFUN.
3455
3456 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
3457 event.
3458
3459 2005-12-09 Richard M. Stallman <rms@gnu.org>
3460
3461 * xfns.c (Fx_create_frame): Reinstate previous change.
3462
3463 2005-12-09 Eli Zaretskii <eliz@gnu.org>
3464
3465 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
3466 GDB to the abort dialog.
3467
3468 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
3469
3470 * indent.c (Fvertical_motion): Force move if starting on
3471 stretch glyph.
3472
3473 2005-12-08 Richard M. Stallman <rms@gnu.org>
3474
3475 * lread.c (read_escape) <\s>: Don't treat strings specially.
3476
3477 * xfns.c (Fx_create_frame): Comment out previous change.
3478
3479 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
3480
3481 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
3482 when needed.
3483
3484 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
3485
3486 * minibuf.c (keys_of_minibuf): Just unbind SPC in
3487 Vminibuffer_local_filename_completion_map rather than forcing it
3488 explicitly to the same binding as the global map.
3489
3490 2005-12-06 Ken Raeburn <raeburn@gnu.org>
3491
3492 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
3493 * bytecode.c (Fbyte_code): Likewise.
3494 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
3495 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
3496 * undo.c (truncate_undo_list): Likewise.
3497
3498 2005-12-05 Richard M. Stallman <rms@gnu.org>
3499
3500 * window.c (enlarge_window): Eliminate arg preserve_before.
3501 Assume it is 0. All callers changed.
3502 (Fenlarge_window, Fshrink_window): Likewise.
3503
3504 2005-12-02 Eli Zaretskii <eliz@gnu.org>
3505
3506 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
3507 fit below.
3508
3509 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3510
3511 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
3512
3513 * xfns.c (x_real_positions): int ign => unsigned int.
3514 (xg_set_icon_from_xpm_data): Remove unused variable err.
3515 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
3516 to remove compiler warning.
3517 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
3518
3519 2005-12-02 David Reitter <david.reitter@gmail.com>
3520
3521 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
3522 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
3523 and Vminibuffer_local_must_match_filename_map keymaps.
3524 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
3525
3526 * keymap.c (Vminibuffer_local_filename_completion_map)
3527 (Vminibuffer_local_must_match_filename_map): New variables.
3528 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
3529 parent to be Vminibuffer_local_completion_map and
3530 Vminibuffer_local_must_match_map, respectively.
3531
3532 * commands.h (Vminibuffer_local_filename_completion_map)
3533 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
3534
3535 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
3536
3537 * window.c (Fset_window_configuration): Don't accidentally copy the
3538 window-point of one window to another.
3539
3540 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
3541
3542 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
3543
3544 2005-11-30 Kim F. Storm <storm@cua.dk>
3545
3546 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
3547 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
3548 passing it to `emacs_write'.
3549
3550 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
3551
3552 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
3553
3554 2005-11-27 Richard M. Stallman <rms@gnu.org>
3555
3556 * window.c (adjust_window_trailing_edge): New function.
3557 (Fadjust_window_trailing_edge): New function.
3558 (syms_of_window): Defsubr it.
3559 (window_deletion_count): New variable.
3560 (delete_window): Update window_deletion_count.
3561
3562 2005-11-26 Eli Zaretskii <eliz@gnu.org>
3563
3564 * minibuf.c (syms_of_minibuf): Mention the extension of
3565 `completion-auto-help's meaning by complete.el.
3566
3567 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
3568
3569 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
3570 Handle :inherit property as a lisp expression.
3571
3572 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3573
3574 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
3575 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
3576 Qsuper, and Qmodifier_value.
3577 (Vmac_control_modifier, Vmac_option_modifier)
3578 (Vmac_command_modifier, Vmac_function_modifier)
3579 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
3580 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
3581 (Vmac_charset_info_alist): Doc fixes.
3582
3583 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3584
3585 * emacs.c (main) [MAC_OSX]: Change working directory to home
3586 directory if `-psn_*' option is specified.
3587
3588 * mac.c (DECODE_UTF_8): Remove macro.
3589 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
3590 created from cfstring_to_lisp.
3591 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
3592 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
3593
3594 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
3595 Add prototype.
3596
3597 2005-11-21 Ken Raeburn <raeburn@gnu.org>
3598
3599 * keymap.c (shadow_lookup): Use make_number to pass a number to
3600 Fsubstring.
3601
3602 2005-11-21 Juri Linkov <juri@jurta.org>
3603
3604 * puresize.h (BASE_PURESIZE): Increment to 1180000.
3605
3606 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
3607
3608 * xfaces.c (Finternal_set_lisp_face_attribute):
3609 Use :ignore-defface for new frame defaults when `unspecified' is
3610 supplied.
3611 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
3612 (merge_face_vectors): Don't do :ignore-defface overwriting here.
3613 (Finternal_merge_in_global_face): Do it here.
3614
3615 2005-11-20 Juri Linkov <juri@jurta.org>
3616
3617 * charset.c (invalid_character): Use Lisp-readable syntax
3618 for octal and hex. Reorder decimal, octal and hex values.
3619
3620 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
3621
3622 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
3623 this type is recognised when debugging.
3624
3625 2005-11-19 Andreas Schwab <schwab@suse.de>
3626
3627 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
3628 Lisp_Cons and Lisp_Float.
3629
3630 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3631
3632 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
3633 New variable.
3634 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
3635 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
3636 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
3637 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
3638
3639 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
3640
3641 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
3642
3643 * xfaces.c (Qignore_defface): New variable.
3644 (syms_of_xfaces): Provide `:ignore-defface'.
3645 (IGNORE_DEFFACE_P): New macro.
3646 (check_lface_attrs, lface_fully_specified_p)
3647 (Finternal_set_lisp_face_attribute)
3648 (Fface_attribute_relative_p, Fmerge_face_attribute):
3649 Handle Qignore_defface as a possible value.
3650 (merge_face_vectors): The merged face is `unspecified' if the
3651 mergee specifies `:ignore-defface'.
3652
3653 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
3654
3655 * lread.c (readevalloop): Add missing GCPROs.
3656
3657 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
3658
3659 * xfns.c (xg_set_icon_from_xpm_data): New function.
3660
3661 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
3662 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
3663
3664 * xterm.c (x_bitmap_icon): Use the xpm if available.
3665
3666 * image.c (x_create_bitmap_from_xpm_data): New function.
3667 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
3668
3669 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
3670
3671 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
3672
3673 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
3674
3675 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
3676
3677 2005-11-15 Andreas Schwab <schwab@suse.de>
3678
3679 * lisp.h (struct Lisp_Cons): Make cdr a union.
3680 (XCDR_AS_LVALUE): Adjust.
3681 (struct Lisp_Float): Make data a union.
3682 (XFLOAT_DATA): Adjust.
3683
3684 * alloc.c (free_float): Make free list chaining aliasing-safe.
3685 (make_float): Likewise.
3686 (free_cons): Likewise.
3687 (Fcons): Likewise.
3688 (check_cons_list): Likewise.
3689 (Fmake_symbol): Likewise.
3690 (allocate_misc): Likewise.
3691 (free_misc): Likewise.
3692 (gc_sweep): Likewise.
3693
3694 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3695
3696 * mac.c (HASHKEY_QUERY_CACHE): New define.
3697 (xrm_create_database, xrm_q_put_resource): Empty query cache.
3698 (xrm_get_resource): Use query cache.
3699
3700 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
3701 inhibit_window_system is set.
3702
3703 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3704
3705 * macgui.h (USE_CG_TEXT_DRAWING): New define.
3706 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
3707 and cg_glyphs.
3708
3709 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
3710 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
3711 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
3712 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
3713 not used and font substitution never occurs for ASCII and Latin-1
3714 characters.
3715 (XLoadQueryFont): Maximum and minimum metrics are now those among
3716 ASCII characters.
3717 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
3718 height adjustments for Courier, Helvetica, and Times.
3719
3720 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
3721
3722 2005-11-11 David Reitter <david.reitter@gmail.com>
3723
3724 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
3725 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
3726 Vmac_control_modifier / mac-control-modifier,
3727 Vmac_option_modifier / mac-option-modifier,
3728 Vmac_command_modifier / mac-command-modifier.
3729 (mac_to_emacs_modifiers): Use the new style modifier
3730 variables. Return UInt32 (modifiers are longs now.)
3731 (backtranslate_modified_keycode): New function (refactoring).
3732 (XTread_socket): Use new modifier variables and refactored function.
3733 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
3734 no dedicated meta key. Not in use anyway.)
3735 (convert_fn_keycode): Map Fn-keys to their original keycode
3736 using a table (english keyboard only).
3737
3738 2005-11-11 Kim F. Storm <storm@cua.dk>
3739
3740 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
3741 Add post hook to "backtrace" to always dump lisp call stack to
3742 increase chance of people sending it to us when reporting bugs.
3743
3744 * doc.c (Fsubstitute_command_keys): Doc fix.
3745
3746 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
3747
3748 * xdisp.c (handle_stop): Skip overlay string handling if
3749 ignore_overlay_strings_at_pos_p is set.
3750 (set_iterator_to_next): At end of display vector, set
3751 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
3752 string, so we skip those overlay strings at current pos.
3753
3754 2005-11-10 Lars Hansen <larsh@soem.dk>
3755
3756 * fileio.c (file-regular-p): Doc fix.
3757
3758 2005-11-10 Kim F. Storm <storm@cua.dk>
3759
3760 * alloc.c (valid_lisp_object_p): New function to validate that
3761 an object is really a valid Lisp_Object.
3762
3763 * lisp.h (valid_lisp_object_p): Add prototype.
3764
3765 * print.c (safe_debug_print): New function to be called from gdb
3766 to print Lisp objects; use valid_lisp_object_p to avoid crashing
3767 if user tries to print something which is not a Lisp object.
3768
3769 * .gdbinit (pp, pp1): Use safe_debug_print.
3770 (pv, pv1): New commands to print value of a lisp variable.
3771
3772 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
3773
3774 * .gdbinit (pp1): New user-defined function.
3775
3776 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3777
3778 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
3779
3780 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
3781 related variables for dumped executable.
3782
3783 * unexmacosx.c (unexec_write_zero): New function.
3784 (copy_data_segment): Clear uninitialized local variables in
3785 statically linked libraries.
3786
3787 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
3788
3789 2005-11-09 Juri Linkov <juri@jurta.org>
3790
3791 * keymap.c (shadow_lookup): If Flookup_key returns a number,
3792 call it again with a sub-key-sequence, and if its return value
3793 is non-nil (sub-key is bound), return nil.
3794
3795 2005-11-08 Kim F. Storm <storm@cua.dk>
3796
3797 * process.c (Fsignal_process): Recognize signal names with and
3798 without SIG prefix, e.g. SIGHUP and HUP.
3799
3800 * search.c (search_buffer): No need to initialize base_pat.
3801
3802 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
3803
3804 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
3805 Don't abuse the `mini' arg. Use the `obj' arg instead.
3806
3807 2005-11-04 Kim F. Storm <storm@cua.dk>
3808
3809 * xdisp.c (show_mouse_face): Clear mouse face to eol.
3810
3811 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
3812
3813 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
3814 font-lock.elc and jit-lock.elc.
3815
3816 2005-11-03 Richard M. Stallman <rms@gnu.org>
3817
3818 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
3819 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
3820 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
3821
3822 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
3823
3824 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
3825
3826 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3827
3828 * window.c (Fdisplay_buffer): Fix last change to not use
3829 a dedicated window.
3830
3831 2005-11-01 Kim F. Storm <storm@cua.dk>
3832
3833 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
3834 Instead, rotate the bottom angle bitmap 180 degrees to indicate
3835 that the bottom row does not end in a newline.
3836
3837 2005-11-01 Andreas Schwab <schwab@suse.de>
3838
3839 * unexelf.c (unexec): Handle .plt section in BSS segment.
3840
3841 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3842
3843 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
3844
3845 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
3846 determine whether to consider dedicated windows as well.
3847 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
3848 (Fdisplay_buffer): Do consider dedicated windows in those cases where
3849 we will split the window rather than reuse it.
3850 Don't try to use windows on other displays.
3851
3852 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
3853
3854 * puresize.h (BASE_PURESIZE): Increment to 1170000.
3855
3856 2005-10-31 Romain Francoise <romain@orebokech.com>
3857
3858 * macfns.c: Update copyright year.
3859 * m/gould.h: Likewise.
3860
3861 2005-10-30 Kim F. Storm <storm@cua.dk>
3862
3863 * xdisp.c (display_line): Restore it->current_x and call
3864 extend_face_to_end_of_line when last glyph doesn't fit on line.
3865 (set_glyph_string_background_width): Remove specific tests here
3866 to see if face background should extend to end of line. Simplify.
3867
3868 2005-10-30 Richard M. Stallman <rms@gnu.org>
3869
3870 * alloc.c (BYTES_USED): Use uordblks, not arena.
3871 (bytes_used_when_reconsidered): New variable.
3872 (emacs_blocked_free): Set that.
3873
3874 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
3875
3876 * alloc.c (emacs_blocked_free): Fix typo.
3877
3878 2005-10-29 Richard M. Stallman <rms@gnu.org>
3879
3880 * data.c (Fmake_variable_frame_local): Doc fix.
3881
3882 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
3883 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
3884 controls whether to save and restore mode_line_proptrans_alist.
3885 Callers changed.
3886 (unwind_format_mode_line): Work with that feature.
3887 (redisplay_internal): Don't call prepare_menu_bars if memory full.
3888 (move_elt_to_front): New function.
3889 (display_mode_element): Use move_elt_to_front.
3890 Don't bother munging text props on a null string.
3891 Delete obsolete elts from mode_line_proptrans_alist.
3892 (decode_mode_spec): Test Vmemory_full, not spare_memory.
3893 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
3894
3895 * lisp.h (memory_full_cons_threshold): Declare.
3896 (internal_lisp_condition_case): Declare.
3897
3898 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
3899 (Fmemory_full_p): Function deleted.
3900 (syms_of_alloc): Don't defsubr it.
3901 (memory_full_cons_threshold): New variable.
3902 (spare_memory): Now a vector of 7 elts.
3903 (buffer_memory_full): Don't set Vmemory_full here.
3904 (xfree): Don't try to refill here.
3905 (emacs_blocked_free): Record BYTES_USED in local var.
3906 (memory_full): Now free all the slots in spare_memory.
3907 (refill_memory_reserve): Allocate each slot in spare_memory.
3908 (init_alloc_once): Call refill_memory_reserve.
3909
3910 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
3911
3912 * eval.c (internal_lisp_condition_case): New function.
3913 (Fcondition_case): Use internal_lisp_condition_case.
3914 (Feval): Test Vmemory_full and memory_full_cons_threshold.
3915 (Ffuncall): Likewise.
3916
3917 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
3918
3919 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
3920
3921 * syntax.c (Fparse_partial_sexp): Fix docstring.
3922
3923 2005-10-28 Romain Francoise <romain@orebokech.com>
3924
3925 * puresize.h (BASE_PURESIZE): Increment to 1130000.
3926
3927 2005-10-28 Richard M. Stallman <rms@gnu.org>
3928
3929 * xfns.c (syms_of_xfns): Provide `x' as feature.
3930
3931 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
3932
3933 * editfns.c (Fformat): Don't include string padding
3934 between info[n].start and info[n].end.
3935
3936 * alloc.c (spare_memory): No longer static.
3937 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
3938
3939 * puresize.h (BASE_PURESIZE): Increment to 1120000.
3940
3941 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
3942
3943 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
3944
3945 * fringe.c (update_window_fringes): Handle case where buffer ends
3946 with a newline.
3947
3948 2005-10-27 Kenichi Handa <handa@m17n.org>
3949
3950 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
3951
3952 2005-10-24 Kenichi Handa <handa@m17n.org>
3953
3954 * charset.h (charset_mule_unicode_0100_24ff)
3955 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
3956 Extern them.
3957
3958 * charset.c (charset_mule_unicode_0100_24ff)
3959 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
3960 New variables.
3961 (Fsetup_special_charsets): Initialize them.
3962
3963 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
3964 supported Unicode characters.
3965
3966 2005-10-25 Jason Rumney <jasonr@gnu.org>
3967
3968 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
3969
3970 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3971
3972 * image.c [MAC_OS] (image_load_qt_1): Check image size.
3973 Use GraphicsImportGetImageDescription instead of
3974 GraphicsImportGetNaturalBounds.
3975 [MAC_OSX] (image_load_quartz2d): Check image size.
3976 [MAC_OS] (xpm_load_image): Likewise.
3977
3978 * macterm.c (last_mouse_glyph_frame): New var.
3979 (note_mouse_movement): Say mouse moved if current frame differs
3980 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
3981 (XTmouse_position): Set last_mouse_glyph_frame.
3982 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
3983 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
3984 Use EndianU16_BtoN.
3985 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
3986 (x_per_char_metric, XLoadQueryFont)
3987 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
3988 glyph bounds.
3989 (mac_to_x_fontname, mac_do_list_fonts)
3990 (mac_initialize_display_info): Change screen resolutions to 72dpi.
3991
3992 2005-10-25 Masatake YAMATO <jet@gyve.org>
3993
3994 * minibuf.c (Fdisplay_completion_list): Small doc fix.
3995
3996 2005-10-24 Kim F. Storm <storm@cua.dk>
3997
3998 * xterm.c: Undo 2005-10-23 change.
3999 (last_mouse_glyph_frame): New var.
4000 (note_mouse_movement): Say mouse moved if current frame differs
4001 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
4002 (XTmouse_position): Set last_mouse_glyph_frame.
4003 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
4004 last_mouse_glyph] on mouse up/down event.
4005
4006 * editfns.c (Fcompare_buffer_substrings): Fix last change.
4007
4008 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
4009
4010 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
4011
4012 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4013
4014 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
4015 so tool tips don't interfere with press on tool bar button.
4016
4017 2005-10-23 Richard M. Stallman <rms@gnu.org>
4018
4019 * casetab.c (Fset_case_table): Doc fix.
4020
4021 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
4022 (readevalloop): Compute ENTIRE properly.
4023 (syms_of_lread) <load-history>: Doc fix.
4024
4025 2005-10-21 Richard M. Stallman <rms@gnu.org>
4026
4027 * lread.c (Fload): Simplify gcpro structure.
4028 Gcpro FOUND as well as FILE, but not EFOUND.
4029 Unless preloading, record FOUND instead of FILE in Vload_history.
4030 Rename repeat local FILE to MSG_FILE.
4031 (syms_of_lread) <load-history>: Doc fix.
4032
4033 2005-10-21 Kenichi Handa <handa@m17n.org>
4034
4035 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
4036
4037 2005-10-20 Kim F. Storm <storm@cua.dk>
4038
4039 * buffer.c (clone_per_buffer_values): Remove unused var tem.
4040 (init_buffer): Remove unused vars dotstat, pwdstat.
4041
4042 * ccl.c (check_ccl_update): Remove unused var vp.
4043
4044 * fileio.c (auto_save_error): Call SAFE_FREE.
4045
4046 * fns.c (Fchar_table_range): Remove unused var i.
4047
4048 * minibuf.c (display_completion_list_1): New wrapper function
4049 for Fdisplay_completion_list.
4050 (Fminibuffer_completion_help): Use it.
4051
4052 * term.c (encode_terminal_code): Remove unused var src_start.
4053
4054 * window.c (Fwindow_tree): Remove unused var alist.
4055
4056 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
4057
4058 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
4059
4060 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
4061
4062 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
4063
4064 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
4065
4066 2005-10-20 Andreas Schwab <schwab@suse.de>
4067
4068 * minibuf.c (Fdisplay_completion_list): Doc fix.
4069
4070 2005-10-19 Kim F. Storm <storm@cua.dk>
4071
4072 * image.c (check_image_size): Handle integer Vmax_image_size value
4073 directly as max pixel value. Use default frame size for null frame.
4074 (syms_of_image) <max-image-size>: Describe integer value.
4075
4076 2005-10-19 Romain Francoise <romain@orebokech.com>
4077
4078 * emacs.c (main): Update copyright year.
4079
4080 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
4081
4082 * image.c (Vmax_image_size): New variable.
4083 (check_image_size): New function.
4084 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
4085 (gif_load, gs_load): Use it.
4086 (lookup_image): Try loading again if previous load failed.
4087 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
4088 to display in, NULL if none.
4089 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
4090 argument.
4091
4092 2005-10-18 Richard M. Stallman <rms@gnu.org>
4093
4094 * search.c (Fstring_match): Doc fix.
4095
4096 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4097
4098 * macterm.c (note_mouse_movement): Use PtInRect.
4099 (XTread_socket): Also ignore mouse motion just before a button
4100 release event. Don't process button release event when mouse is
4101 not grabbed.
4102
4103 2005-10-16 Masatake YAMATO <jet@gyve.org>
4104
4105 * minibuf.c (Fdisplay_completion_list): Add new optional
4106 argument COMMON_SUBSTRING. Bind `completion-common-substring'
4107 to the optional argument during running `completion-setup-hook'.
4108
4109 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4110
4111 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
4112 Allow nil as argument.
4113 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
4114 for encoding arguments as UTF-16 in native byte order, no BOM.
4115
4116 * macfns.c (Fx_create_frame): Add debugging code.
4117 (Fx_show_tip): Set frame pixel width and height.
4118
4119 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
4120 (FRAME_NORMAL_GC): New macro.
4121 (mac_draw_line, mac_clear_area, mac_clear_window)
4122 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
4123 (mac_draw_image_string, mac_draw_image_string_16): Rename from
4124 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
4125 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
4126 All uses changed.
4127 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
4128 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
4129 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
4130 (mac_draw_string_16, mac_draw_image_string)
4131 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
4132 (mac_scroll_area): Drawing functions now take frame as destination.
4133 All uses changed.
4134 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
4135 (x_draw_fringe_bitmap): Set clipping area in face->gc.
4136
4137 * macterm.h (mac_clear_area): Add extern.
4138
4139 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4140
4141 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
4142 changes for xterm.c.
4143
4144 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
4145
4146 2005-10-14 Kenichi Handa <handa@m17n.org>
4147
4148 * search.c (search_buffer): Give up BM search on case-fold-search
4149 if one of a target character has a case-equivalence of different
4150 charset even if that target charcter is an ASCII.
4151
4152 * casefiddle.c (casify_object): Fix for the case that case
4153 conversion change the byte length.
4154
4155 2005-10-14 Kim F. Storm <storm@cua.dk>
4156
4157 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
4158 (handle_one_xevent): Only clear help_echo_string; restore it if
4159 note_mouse_movement didn't record any mouse movement.
4160
4161 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
4162 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
4163
4164 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
4165 (Fposn_at_x_y): Fix calculation of x coordinate.
4166 (Fposn_at_point): Return nil if point is hscrolled out of view.
4167
4168 2005-10-13 Andreas Schwab <schwab@suse.de>
4169
4170 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
4171 non-interactive mode.
4172
4173 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4174
4175 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
4176
4177 2005-10-12 Kim F. Storm <storm@cua.dk>
4178
4179 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
4180
4181 2005-10-12 Romain Francoise <romain@orebokech.com>
4182
4183 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
4184
4185 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4186
4187 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
4188 get end of text rows. Obtain header-line/mode-line rows directly.
4189
4190 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
4191 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
4192
4193 2005-10-12 Kim F. Storm <storm@cua.dk>
4194
4195 * xdisp.c (remember_mouse_glyph): New generic version based on
4196 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
4197 properly handle all different window areas.
4198
4199 * dispextern.h (remember_mouse_glyph): Add prototype.
4200
4201 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
4202 (note_mouse_movement, XTmouse_position): Use generic
4203 remember_mouse_glyph, add last_mouse_glyph arg.
4204
4205 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
4206 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
4207 (note_mouse_movement, w32_mouse_position): Use generic
4208 remember_mouse_glyph, add last_mouse_glyph arg.
4209
4210 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
4211 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
4212 (XTmouse_position): Adapt to use generic remember_mouse_glyph
4213 instead of pixel_to_glyph_coords.
4214
4215 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
4216 Fix x position for ON_TEXT when left margin width > 0.
4217
4218 2005-10-11 Kim F. Storm <storm@cua.dk>
4219
4220 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
4221
4222 * keyboard.c (make_lispy_position): Fix buffer calculations for
4223 mouse click or movement in right fringe and the margins.
4224
4225 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
4226
4227 * image.c (fn_jpeg_stdio_src): Don't define it.
4228 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
4229 (our_common_init_source): Rename from `our_init_source'.
4230 (our_common_term_source): Rename from `our_term_source'.
4231 (our_memory_fill_input_buffer): Rename from
4232 `our_fill_input_buffer'.
4233 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
4234 (jpeg_memory_src): Use the new names.
4235 (struct jpeg_stdio_mgr): New struct.
4236 (JPEG_STDIO_BUFFER_SIZE): New constant.
4237 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
4238 (jpeg_file_src): New functions.
4239 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
4240
4241 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4242
4243 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
4244 (fm_font_family_alist): New variable.
4245 (syms_of_macterm): Initialize and staticpro it.
4246 (decode_mac_font_name): Replace '-' in family name with '_' if it
4247 occurs just once. Lower family name.
4248 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
4249 All uses changed. Remove argument MF and code conversion for it.
4250 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
4251 to CHARSET. Parse font size. Lower family name. Return integer
4252 value for status of parsing.
4253 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
4254 Don't use Fdowncase because family name is already lowered by
4255 decode_mac_font_name.
4256 (init_font_name_table): Always call decode_mac_font_name.
4257 Add pair of family name and its reference to fm_font_family_alist.
4258 (mac_clear_font_name_table): Clear fm_font_family_alist.
4259 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
4260 Lookup fm_font_family_alist to get font family reference.
4261 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
4262 name is already lowered by parse_x_font_name.
4263
4264 2005-10-11 Kim F. Storm <storm@cua.dk>
4265
4266 * xterm.c (glyph_rect): Return 0 if position is outside text area.
4267
4268 * keyboard.c (make_lispy_position): Fix buffer position calculation for
4269 mouse click or movement in fringe.
4270
4271 2005-10-10 Jason Rumney <jasonr@gnu.org>
4272
4273 * xterm.c (remember_mouse_glyph): New function.
4274 (note_mouse_movement): Use it to remember the current glyph if changed.
4275 (XTmouse_position): Fix calculation of fake glyph under mouse.
4276 Move code to calculate glyph under mouse into remember_mouse_glyph.
4277
4278 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4279
4280 * emacs.c (USAGE3, standard_args): -nb => -nbi.
4281
4282 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
4283
4284 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
4285 (next_frame, prev_frame, set_term_frame_name): Make static.
4286
4287 * window.c (Fwindow_tree): Fix spelling.
4288
4289 2005-10-09 Romain Francoise <romain@orebokech.com>
4290
4291 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
4292
4293 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4294
4295 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
4296 Add options -nb, --no-bitmap-icon.
4297
4298 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
4299
4300 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4301
4302 * macgui.h (MAX_CLIP_RECTS): New define.
4303 (struct _XGC): New member clip_region.
4304 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
4305 clip_rects.
4306
4307 * macterm.c (GC_CLIP_REGION): New macro.
4308 (saved_port_clip_region): New variable.
4309 (mac_begin_clip, mac_end_clip): New functions.
4310 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
4311 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
4312 (mac_copy_area_with_mask, mac_scroll_area): Use them.
4313 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
4314 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
4315 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
4316 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
4317 rectangles stored in gc.
4318 (XFreeGC): Dispose of clipping region.
4319 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
4320 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
4321 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
4322 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
4323 (x_draw_bar_cursor): Use them.
4324 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
4325 get multiple clipping rectangles.
4326
4327 * macterm.h (mac_term_init): Add types to extern.
4328 (struct mac_output): Remove members mWP and pending_menu_activation.
4329 Put members scroll_bar_foreground_pixel and
4330 scroll_bar_background_pixel in #if 0.
4331 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
4332
4333 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
4334 Add debugging code.
4335
4336 2005-10-08 Kim F. Storm <storm@cua.dk>
4337
4338 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
4339
4340 2005-10-07 Kim F. Storm <storm@cua.dk>
4341
4342 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
4343 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
4344 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
4345
4346 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4347
4348 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
4349 to for_overlaps. Now occupy 3 bits.
4350 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
4351 (OVERLAPS_ERASED_CURSOR): New defines.
4352 (struct redisplay_interface): Add new OVERLAPS arg to member
4353 fix_overlapping_area.
4354 (x_fix_overlapping_area): Add new OVERLAPS arg.
4355 (get_glyph_string_clip_rects): Add extern.
4356
4357 * dispnew.c (redraw_overlapping_rows):
4358 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
4359
4360 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
4361 for_overlaps.
4362 (get_glyph_string_clip_rects): New function created from
4363 get_glyph_string_clip_rect. Set clipping rectangles according to the
4364 value of for_overlaps. Enable to store multiple clipping rectangles.
4365 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
4366 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
4367 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
4368 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
4369 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
4370 calculating clipping rectangles later. Call x_fix_overlapping_area
4371 with new OVERLAPS arg to draw only erased cursor area.
4372 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
4373 to draw overlaps in both preceding and succeeding rows.
4374
4375 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
4376 struct glyph_string to for_overlaps.
4377
4378 2005-10-04 Richard M. Stallman <rms@gnu.org>
4379
4380 * alloc.c (refill_memory_reserve): Conditionalize the body,
4381 not the function's existence.
4382
4383 2005-10-04 Kim F. Storm <storm@cua.dk>
4384
4385 * window.c (window_split_tree): New function.
4386 (Fwindow_split_tree): New defun.
4387 (syms_of_window): Defsubr it.
4388
4389 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4390
4391 * macterm.c (mac_invert_rectangle): New function.
4392 (XTflash): Use it.
4393
4394 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
4395
4396 * regex.h (re_char): Don't expose it in the interface.
4397 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
4398
4399 * regex.c (re_char): Move it back here.
4400 (re_set_whitespace_regexp): Change the arg's type to not use it.
4401
4402 * keyboard.c (make_lispy_event): If point has moved between down and up
4403 event, make it a drag, not a click, to mirror what
4404 mouse-drag-region expects.
4405
4406 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
4407
4408 * lisp.h (fatal): Undo previous change.
4409 * term.c (fatal): Undo previous change.
4410
4411 2005-10-01 Richard M. Stallman <rms@gnu.org>
4412
4413 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
4414
4415 2005-10-01 Kim F. Storm <storm@cua.dk>
4416
4417 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
4418
4419 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4420
4421 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
4422
4423 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
4424 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
4425 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
4426 Try ATSUI-compatible 12pt Monaco font first.
4427
4428 * macgui.h (struct _XCharStruct): New member valid_p.
4429 (STORE_XCHARSTRUCT): Set valid_p.
4430 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
4431
4432 * macterm.c (mac_draw_string_common, x_per_char_metric)
4433 (mac_compute_glyph_string_overhangs, init_font_name_table)
4434 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
4435 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
4436 (x_draw_glyph_string_background)
4437 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
4438 XDrawImageString. Always draw background and foreground separately.
4439 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
4440 functions for one-byte chars when using ATSUI-compatible fonts.
4441 (atsu_font_id_hash) [USE_ATSUI]: New variable.
4442 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
4443 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
4444 max_char_or_byte2 more in detail.
4445 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
4446
4447 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
4448
4449 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
4450 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
4451
4452 * unexelf.c (fatal): Fix prototype.
4453
4454 * term.c (fatal): Implement using varargs.
4455
4456 * regex.c (re_char): Move typedef ...
4457 * regex.h (re_char): ... here.
4458 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
4459
4460 * emacs.c (malloc_set_state): Fix return type.
4461 (endif): Fix type.
4462
4463 * lisp.h (fatal): Add argument types.
4464
4465 * dispextern.h (fatal): Delete prototype.
4466
4467 * systime.h (make_time): Prototype moved from ...
4468 * editfns.c (make_time): ... here.
4469
4470 * editfns.c: Move systime.h include after lisp.h.
4471 * dired.c:
4472 * xsmfns.c:
4473 * process.c: Likewise.
4474
4475 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
4476 Add parameter types.
4477 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
4478 (emacs_blocked_free): Change definition to match __free_hook.
4479 (emacs_blocked_malloc): Change definition to match __malloc_hook.
4480 (emacs_blocked_realloc): Change definition to match __realloc_hook.
4481
4482 2005-09-30 Romain Francoise <romain@orebokech.com>
4483
4484 * minibuf.c (Fread_buffer): Follow convention for reading from the
4485 minibuffer with a default value. Doc fix.
4486
4487 2005-09-29 Juri Linkov <juri@jurta.org>
4488
4489 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
4490 Rename argument name `string' to `format-string'.
4491 (Fformat): Doc fix.
4492
4493 2005-09-28 Kim F. Storm <storm@cua.dk>
4494
4495 * image.c (gif_load): Fix size of allocated image buffer
4496 for images where a sub-image may be larger than the image's
4497 total height/width specifications.
4498
4499 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4500
4501 * macgui.h (struct _XCharStruct): Each member now takes short value.
4502
4503 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
4504
4505 * xfaces.c (lookup_derived_face): Add parameter type.
4506
4507 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
4508
4509 * marker.c (verify_bytepos): Add parameter type.
4510
4511 * process.c (get_operating_system_release): Move prototype ...
4512
4513 * systime.h (get_operating_system_release): ... here.
4514
4515 * xterm.c (handle_one_xevent): Refer to union field to match the
4516 type required by the function definition.
4517 (set_vertical_scroll_bar): Move prototype ...
4518
4519 * xterm.h: ... here.
4520
4521 * fns.c (internal_equal, seed_random): Fix prototypes.
4522 (internal_equal): Add missing parameter.
4523
4524 2005-09-25 Richard M. Stallman <rms@gnu.org>
4525
4526 * keyboard.c (update_menu_bindings): Variable deleted.
4527 (syms_of_keyboard): Don't defvar it.
4528 (parse_menu_item): Don't test it.
4529
4530 2005-09-23 Richard M. Stallman <rms@gnu.org>
4531
4532 * editfns.c (Fformat): Explicitly test for end of format string
4533 and don't use `index'.
4534
4535 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
4536
4537 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
4538 Define BROKEN_GET_CURRENT_DIR_NAME.
4539
4540 * sysdep.c (get_current_dir_name): Also define if
4541 BROKEN_GET_CURRENT_DIR_NAME.
4542
4543 * m/ibmrs6000.h: Test for USG5, not USG5_4.
4544
4545 2005-09-22 Kim F. Storm <storm@cua.dk>
4546
4547 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
4548 (message2): Fix commentary. Ok to use alloca'ed memory.
4549 Still not ok to use Lisp string data (because of GC).
4550 (set_message): Add comment why GC cannot happen.
4551
4552 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4553
4554 * macterm.c (xlfdpat_block_match_1): Fix assertion.
4555 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
4556 variants for a scalable font multiple times.
4557
4558 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4559
4560 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
4561 Setup slave tty options before forking.
4562
4563 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4564
4565 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
4566 positions have been set for the frame (as is done for frames in
4567 special-display-buffer-names).
4568
4569 2005-09-19 Kim F. Storm <storm@cua.dk>
4570
4571 * editfns.c (Fformat): Don't scan past end of format string that
4572 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
4573
4574 2005-09-18 Andreas Schwab <schwab@suse.de>
4575
4576 * window.h (struct window): Remove height_fixed_p, no longer set.
4577
4578 * window.c (make_window): Don't initialize height_fixed_p.
4579 (window_fixed_size_p): Don't use it.
4580
4581 2005-09-18 John Paul Wallington <jpw@pobox.com>
4582
4583 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
4584
4585 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4586
4587 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
4588
4589 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
4590 New variables.
4591 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
4592 file selection.
4593
4594 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
4595
4596 2005-09-17 Eli Zaretskii <eliz@gnu.org>
4597
4598 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
4599 (obj): Use XMENU_OBJ, not a literal xmenu.o.
4600
4601 2005-09-16 Romain Francoise <romain@orebokech.com>
4602
4603 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
4604
4605 2005-09-15 Richard M. Stallman <rms@gnu.org>
4606
4607 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
4608 (display_mode_element): Instead of `lisp_string' and `this',
4609 record `offset' and increment that.
4610 `last_offset' replaces `last'.
4611
4612 * Makefile.in (XMENU_OBJ): Variable deleted.
4613 (obj): Use xmenu.o unconditionally.
4614 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
4615
4616 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
4617
4618 2005-09-15 Kim F. Storm <storm@cua.dk>
4619
4620 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
4621 (reseat_at_next_visible_line_start): Likewise (in xassert).
4622
4623 2005-09-14 Romain Francoise <romain@orebokech.com>
4624
4625 * fileio.c (write_region_inhibit_fsync): New variable.
4626 (Fwrite_region): Use it to skip call to fsync.
4627 (syms_of_fileio): Initialize it.
4628
4629 2005-09-14 Kenichi Handa <handa@m17n.org>
4630
4631 * coding.c (code_convert_region_unwind): Argument format changed.
4632 (run_pre_post_conversion_on_str): If pre-write-conversion function
4633 changed the current buffer, delete the new buffer.
4634 (run_pre_write_conversin_on_c_str): Likewise.
4635
4636 * fileio.c (Fexpand_file_name): Check multibyteness of
4637 default_directory.
4638
4639 2005-09-13 Kenichi Handa <handa@m17n.org>
4640
4641 * composite.c (compose_chars_in_text): Delete it.
4642
4643 * composite.h (compose_chars_in_text): Delete extern.
4644
4645 2005-09-13 Kim F. Storm <storm@cua.dk>
4646
4647 * print.c (print_error_message): Fix last change.
4648
4649 2005-09-12 Kim F. Storm <storm@cua.dk>
4650
4651 * composite.c (compose_chars_in_text): Fix setup of `pend'.
4652 Unconditionally reload `ptr' and `pend' after eval.
4653
4654 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
4655
4656 * print.c (print_error_message): Pass copy of caller name to
4657 message_dolog.
4658
4659 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
4660
4661 2005-09-12 Kenichi Handa <handa@m17n.org>
4662
4663 * xdisp.c (display_mode_element): Be sure to make variables THIS
4664 and LISP_STRING point into a string data of ELT.
4665
4666 2005-09-12 Kim F. Storm <storm@cua.dk>
4667
4668 * editfns.c (Ftranslate_region_internal): Reload `tt' after
4669 signal_after_change that may have GC'ed.
4670 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
4671
4672 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
4673 after insert while runs signal_after_change.
4674
4675 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
4676 declaration to where it is used.
4677
4678 * w32.c (check_windows_init_file): Fix allocation of error buffer.
4679
4680 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
4681 (x_set_name_internal): Call x_encode_text with new FREEP arg to
4682 know if xfree is needed instead of guessing.
4683
4684 * xterm.h (x_encode_text): Remove prototype.
4685
4686 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
4687
4688 * w32term.c (x_bitmap_icon): Load small icons too.
4689
4690 2005-09-10 Romain Francoise <romain@orebokech.com>
4691
4692 * buffer.c (init_buffer): Grow buffer to add directory separator
4693 and terminal zero. Fix typos.
4694
4695 2005-09-10 Eli Zaretskii <eliz@gnu.org>
4696
4697 * buffer.c (init_buffer): Fix error message for failed call to
4698 get_current_dir_name.
4699 (get_current_dir_name): Remove prototype.
4700
4701 * xsmfns.c (get_current_dir_name): Remove prototype.
4702
4703 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
4704 Add prototype.
4705
4706 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
4707 Don't #undef NULL after including blockinput.h.
4708
4709 * config.in: Regenerated.
4710
4711 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
4712
4713 Remove the MAXPATHLEN limitations:
4714
4715 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
4716 New function.
4717
4718 * buffer.c (init_buffer): Use it.
4719
4720 * xsmfns.c (smc_save_yourself_CB): Ditto.
4721
4722 2005-09-09 Kim F. Storm <storm@cua.dk>
4723
4724 * doc.c (Fsubstitute_command_keys): Lookup key binding for
4725 commands that are remapped from some other command.
4726
4727 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
4728 flag in disabled rows below the window.
4729
4730 * frame.h (struct frame): New member updated_p.
4731
4732 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
4733 member. Remove local `updated' array and associated variables.
4734
4735 2005-09-07 Kim F. Storm <storm@cua.dk>
4736
4737 * xdisp.c (handle_display_prop): Respect overlay window property.
4738
4739 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
4740 Fixes crash reported by YAMAMOTO Mitsuharu.
4741
4742 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4743
4744 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
4745 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
4746 (xlfdpat_block_match_1, xlfdpat_match): New functions.
4747 (xlfdpat_block_match): New macro.
4748 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
4749 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
4750 (add_font_name_table_entry): Increase font_name_table_size more
4751 rapidly.
4752 (mac_c_string_match): Remove function.
4753 (mac_do_list_fonts): Use XLFD pattern match instead of regular
4754 expression match.
4755
4756 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
4757
4758 2005-09-03 Richard M. Stallman <rms@gnu.org>
4759
4760 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
4761 (move_it_in_display_line_to): Stop after last char on line even
4762 on a windowing terminal, if that's the specified stop position.
4763
4764 * fns.c (Fsort): Doc fix.
4765
4766 * editfns.c (Fpropertize): Don't insist that properties be symbols.
4767
4768 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
4769
4770 * dired.c (directory_files_internal_unwind, directory_files_internal)
4771 (file_name_completion): Use a Save_Value object rather than a cons of
4772 two 16bit ints to store the DIR*.
4773 (directory_files_internal, file_name_completion): Handle both EINTR and
4774 EAGAIN consistently after `readdir'.
4775
4776 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
4777
4778 * intervals.c (update_interval): Add position info in error.
4779
4780 * dispnew.c (window_to_frame_hpos, update_window):
4781 Avoid gcc warning about unused variable `f'.
4782
4783 2005-08-31 Jason Rumney <jasonr@gnu.org>
4784
4785 * w32menu.c (add_menu_item): If unicode_append_menu returns an
4786 error, revert to using AppendMenu.
4787
4788 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4789
4790 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
4791 All uses changed.
4792 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
4793 cases.
4794 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
4795 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
4796 Use posix_pathname_to_fsspec.
4797 [MAC_OS] (xpm_load_image): Fill in background_transparent field
4798 while we have mask.
4799
4800 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
4801
4802 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
4803
4804 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
4805
4806 * syntax.c (update_syntax_table): Properly reproduce the special +1
4807 setting of e_property at the end of the buffer when bumping into the
4808 INTERVALS_AT_ONCE limit.
4809
4810 2005-08-27 Eli Zaretskii <eliz@gnu.org>
4811
4812 * emacs.c (USAGE1): Fix the description of the -Q option.
4813
4814 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
4815
4816 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
4817
4818 2005-08-26 Kim F. Storm <storm@cua.dk>
4819
4820 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
4821 Don't move PT to new window start.
4822
4823 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4824
4825 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
4826 ICONIFY/DEICONIFY_EVENT.
4827
4828 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
4829 Restore background color.
4830 (mac_handle_visibility_change): New function.
4831 (x_make_frame_invisible, x_iconify_frame)
4832 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
4833 [USE_CARBON_EVENTS] (mac_handle_window_event)
4834 (install_window_handler): Handle visibility change events.
4835 (x_make_frame_visible): Don't reposition window if it is iconified
4836 or asked for visible before. Select and uncollapse window when it
4837 is made visible.
4838 (x_make_frame_invisible): Don't reset x_highlight_frame.
4839 (x_iconify_frame): Likewise. Make invisible frame visible before
4840 it is iconified.
4841 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
4842 (do_window_update): Don't change visibility of invisible frame.
4843
4844 2005-08-22 Juri Linkov <juri@jurta.org>
4845
4846 * term.c (turn_on_face): Check for TS_set_foreground and
4847 TS_set_background depending on standout_mode. Simplify.
4848
4849 2005-08-21 Kim F. Storm <storm@cua.dk>
4850
4851 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
4852 bitmaps on fully visible rows.
4853
4854 * fringe.c (update_window_fringes): Replace FORCE_P arg with
4855 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
4856 and return 0.
4857
4858 * xdisp.c (redisplay_window): Call update_window_fringes with
4859 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
4860
4861 2005-08-20 Richard M. Stallman <rms@gnu.org>
4862
4863 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
4864 (resize_mini_window): Set w->start, and PT, so as to display the tail
4865 end of the buffer, if it doesn't all fit.
4866
4867 2005-08-18 Kim F. Storm <storm@cua.dk>
4868
4869 * xdisp.c (calc_pixel_width_or_height): Use actual display
4870 resolution when available instead of Vdisplay_pixels_per_inch.
4871
4872 2005-08-17 Kim F. Storm <storm@cua.dk>
4873
4874 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
4875
4876 * dispnew.c (buffer_posn_from_coords): Check that target row is
4877 within matrix.
4878
4879 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4880
4881 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
4882 xg_set_frame_icon and call it.
4883
4884 * gtkutil.c (xg_set_frame_icon): New function.
4885
4886 * gtkutil.h (xg_set_frame_icon): Declare it.
4887
4888 2005-08-16 Kim F. Storm <storm@cua.dk>
4889
4890 * dispnew.c (increment_row_positions): Skip non-enabled rows.
4891
4892 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
4893 (Fcurrent_window_configuration): Use VECSIZE macro instead.
4894
4895 2005-08-15 Richard M. Stallman <rms@gnu.org>
4896
4897 * xdisp.c (message3_nolog): Clear echo_message_buffer.
4898
4899 2005-08-15 Kim F. Storm <storm@cua.dk>
4900
4901 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
4902
4903 * process.c (deactivate_process, status_notify, read_process_output)
4904 (update_status, status_convert, decode_status, allocate_pty)
4905 (make_process, remove_process, list_processes_1)
4906 (create_process_1, unwind_request_sigio, read_process_output)
4907 (send_process, keyboard_bit_set): Declare static.
4908 (Fdelete_process): Simplify. Pass process to status_notify, so we
4909 don't try to read output from it.
4910 (status_notify): New arg deleting_process--don't try to read
4911 output from that process.
4912
4913 * lisp.h (deactivate_process, status_notify, read_process_output):
4914 Remove prototypes.
4915
4916 2005-08-14 Richard M. Stallman <rms@gnu.org>
4917
4918 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
4919 define_image_type.
4920
4921 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4922
4923 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
4924 (xg_get_image_for_pixmap): Move some code to
4925 xg_get_pixbuf_from_pix_and_mask, and call it.
4926
4927 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
4928
4929 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
4930 to get an GTK icon and set it with GTK functions to avoid having GTK
4931 override an icon set with just X functions.
4932
4933 2005-08-11 Richard M. Stallman <rms@gnu.org>
4934
4935 * image.c (syms_of_image): Init image_types here, and call
4936 define_image_type.
4937 (init_image): Not here.
4938
4939 2005-08-09 Richard M. Stallman <rms@gnu.org>
4940
4941 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
4942
4943 * lisp.h (QUIT): Throw t to Vthrow_on_input.
4944
4945 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
4946
4947 * floatfns.c (Fexpt): Use floats for negative exponent.
4948
4949 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4950
4951 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
4952 should not be there, causing menu display errors with GTK 2.6.9.
4953
4954 2005-08-07 Richard M. Stallman <rms@gnu.org>
4955
4956 * floatfns.c (Fexpt): Undo previous change.
4957
4958 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
4959 so it can be used with various state vectors.
4960
4961 * emacs.c (endif): Convert -script into -scriptload.
4962 (standard_args): Add -scriptload. Allow -basic-display with one dash.
4963
4964 * fns.c (syms_of_fns): Add `emacs' to features.
4965
4966 * term.c (set_terminal_modes): If no TS_termcap_modes string,
4967 output newlines to scroll the old screen contents off the screen.
4968
4969 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
4970
4971 * floatfns.c (Fexpt): Use floats for negative exponent.
4972 Reported by D Goel.
4973
4974 2005-08-02 Richard M. Stallman <rms@gnu.org>
4975
4976 * frame.c (Fframe_char_width): Doc fix.
4977
4978 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
4979
4980 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
4981 Defvar it.
4982
4983 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
4984
4985 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
4986 (my_create_window, my_create_tip_window): Make static.
4987
4988 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
4989 (my_set_foreground_window, my_destroy_window): Make static.
4990
4991 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
4992
4993 Merge gnulib getopt implementation into Emacs.
4994
4995 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
4996 now part of lib-src.
4997
4998 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
4999
5000 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
5001
5002 2005-07-25 Jason Rumney <jasonr@gnu.org>
5003
5004 * w32menu.c (w32_menu_display_help): Suppress tooltip when
5005 navigating menus with the keyboard.
5006
5007 2005-07-23 Richard M. Stallman <rms@gnu.org>
5008
5009 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
5010
5011 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
5012 gc_relative_threshold, one by one.
5013
5014 * keyboard.c (read_char): Test gc_cons_threshold.
5015 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
5016
5017 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
5018 gc_relative_threshold, one by one.
5019
5020 * alloc.c (gc_cons_threshold): Not static.
5021 (gc_cons_combined_threshold): Var deleted.
5022 (gc_relative_threshold): New variable.
5023 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
5024 instead of gc_cons_combined_threshold.
5025
5026 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
5027 (gc_cons_combined_threshold): Declaration deleted.
5028
5029 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5030
5031 * mac.c: Don't include stdlib.h or string.h.
5032 (Fdo_applescript, Fmac_file_name_to_posix)
5033 (Fmac_file_name_to_posix): Doc fixes.
5034 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
5035 (Fmac_code_convert_string): Likewise.
5036 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
5037 if the executable is not contained in a bundle.
5038
5039 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
5040 (gray_width, gray_height): Remove defines.
5041 (gray_bits, gray_bitmap_width, gray_bitmap_height)
5042 (gray_bitmap_bits): Remove variables.
5043 (lispy_function_keys): Remove extern.
5044 (free_frame_menubar): Add extern.
5045 (x_window_to_frame): Remove function.
5046 (unwind_create_tip_frame): Add declaration.
5047 (x_set_name_internal): New function.
5048 (x_set_name, x_set_title): Use it.
5049 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
5050 (Fx_display_pixel_height, Fx_display_planes)
5051 (Fx_display_color_cells, Fx_server_max_request_size)
5052 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5053 (Fx_display_mm_height, Fx_display_mm_width)
5054 (Fx_display_backing_store, Fx_display_visual_class)
5055 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
5056
5057 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
5058
5059 * macselect.c (Fx_own_selection_internal): Follow error conventions.
5060 (Fx_get_selection_internal, Fx_selection_owner_p)
5061 (Fx_selection_exists_p): Doc fixes.
5062 (syms_of_macselect) <selection-converter-alist>: Likewise.
5063
5064 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
5065
5066 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
5067
5068 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
5069 (Fccl_execute_on_string): Likewise; add usage info.
5070
5071 * composite.c (Fcompose_region_internal)
5072 (Fcompose_string_internal):
5073 Improve argument/docstring consistency.
5074
5075 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
5076 Fix typos in docstrings.
5077
5078 * textprop.c (Fnext_char_property_change)
5079 (Fprevious_char_property_change): Doc fixes.
5080
5081 * window.c (Fset_window_margins, Fset_window_fringes):
5082 Improve argument/docstring consistency.
5083
5084 * xfaces.c (Finternal_lisp_face_p): Doc fix.
5085
5086 2005-07-21 Andreas Schwab <schwab@suse.de>
5087
5088 * eval.c (restore_stack_limits): Return a value.
5089
5090 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
5091
5092 * eval.c (Fdefvar): Doc fix.
5093
5094 2005-07-20 Kim F. Storm <storm@cua.dk>
5095
5096 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
5097 Use make_save_value to unwind protect stream.
5098
5099 * lread.c (Fload, load_unwind):
5100 Use make_save_value to unwind protect stream.
5101
5102 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
5103
5104 * eval.c (Fprog2, Fcalled_interactively_p),
5105 (syms_of_eval) <debug-on-quit>: Doc fixes.
5106 (syms_of_eval) <max-specpdl-size>:
5107 (Finteractive_p): Fix typos in docstrings.
5108
5109 2005-07-19 Kim F. Storm <storm@cua.dk>
5110
5111 * w32fns.c (Vx_hand_shape): Variable removed.
5112 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
5113
5114 2005-07-19 Kenichi Handa <handa@m17n.org>
5115
5116 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
5117
5118 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
5119
5120 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
5121
5122 2005-07-18 Kim F. Storm <storm@cua.dk>
5123
5124 * frame.h (struct frame): New member already_hscrolled_p.
5125
5126 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
5127 to avoid redisplay looping hscrolling back and forth ad infinitum.
5128
5129 2005-07-18 Juri Linkov <juri@jurta.org>
5130
5131 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
5132 * keymap.c (Fminor_mode_key_binding):
5133 * macterm.c (mac-emulate-three-button-mouse):
5134 Delete duplicate duplicate words.
5135
5136 2005-07-18 Ken Raeburn <raeburn@gnu.org>
5137
5138 * minibuf.c (Ftest_completion): Fix odd syntax in test.
5139
5140 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5141
5142 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
5143
5144 * macgui.h (struct _XGC): New struct.
5145 (GC): Use it.
5146 (GCForeground, GCBackground, GCFont): Use X11 mask values.
5147 (XCreateGC, XParseGeometry): Move externs to macterm.h.
5148
5149 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
5150 (XSetFont): Add declaration.
5151 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
5152 Remove functions.
5153 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
5154 New defines.
5155 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
5156 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
5157 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
5158 Use them.
5159 (mac_erase_rectangle): New function.
5160 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
5161 (x_draw_stretch_glyph_string): Use it.
5162 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
5163 (XSetBackground, XSetFont): Adjust for new GC implementation.
5164 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
5165 (XTset_vertical_scroll_bar): Clear area under scroll bar.
5166
5167 * macterm.h (struct mac_display_info): Change types of
5168 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
5169 (XCreateGC, XParseGeometry): Move externs from macgui.h.
5170
5171 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
5172
5173 2005-07-16 Richard M. Stallman <rms@gnu.org>
5174
5175 * buffer.c (Fmake_overlay): Doc fix.
5176
5177 2005-07-16 Eli Zaretskii <eliz@gnu.org>
5178
5179 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
5180 Vw32_valid_locale_ids, and Vw32_valid_codepages.
5181
5182 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5183
5184 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
5185 Use Fstring_as_unibyte instead of string_make_unibyte.
5186
5187 2005-07-15 Richard M. Stallman <rms@gnu.org>
5188
5189 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
5190
5191 2005-07-15 Kim F. Storm <storm@cua.dk>
5192
5193 * xdisp.c: Fix redisplay loop in last change.
5194 (IT_POS_VALID_AFTER_MOVE_P): New macro.
5195 (move_it_vertically_backward, move_it_by_lines): Use it.
5196
5197 2005-07-14 Jason Rumney <jasonr@gnu.org>
5198
5199 * w32.c (init_environment): Default HOME directory to user's
5200 appdata directory if possible.
5201
5202 2005-07-14 Kim F. Storm <storm@cua.dk>
5203
5204 * .gdbinit (pitx): Fix output format. Print string charpos.
5205
5206 * lread.c (syms_of_lread): Initialize seen_list.
5207
5208 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
5209
5210 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
5211 Staticpro re_match_object.
5212
5213 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5214
5215 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
5216 dereference.
5217
5218 * macterm.c (mac_window_to_frame): Remove duplicate define.
5219
5220 2005-07-14 Kenichi Handa <handa@m17n.org>
5221
5222 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
5223 (code_convert_region): Adjust for the above change.
5224 (set_conversion_work_buffer): If the work buffer is already in
5225 use, generate a new buffer and return it. Otherwise return Qnil.
5226 (run_pre_post_conversion_on_str): Adjust for the above change.
5227 (run_pre_write_conversin_on_c_str): Likewise.
5228
5229 2005-07-13 Kim F. Storm <storm@cua.dk>
5230
5231 * xdisp.c (start_display): Don't reseat to next visible line start
5232 if current start position is in a string or image.
5233 (move_it_vertically_backward): Be sure to move out of strings and
5234 images when moving it2 forward.
5235 (move_it_by_lines): When moving forward, move to next buffer
5236 position if we end up in a string or image. When moving backward,
5237 count rows moved over when moving to start of current row in case
5238 row starts in middle of a string or image. Also move further
5239 backward if we end up in a string or image.
5240 (try_cursor_movement): If overlay string spans multiple lines,
5241 move backward to set cursor on start of an overlay string.
5242 (cursor_row_p): Row is ok if cursor is at newline from string, but
5243 string starts on this line (so we always position cursor at start
5244 of string).
5245
5246 * indent.c (Fvertical_motion): If start position is on an image,
5247 don't move back if we move too far (that's almost certain to happen).
5248
5249 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
5250 row in minibuffer windows.
5251 (try_window): Don't check margins in minibuffer windows.
5252
5253 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5254
5255 * macterm.c: Don't include stdlib.h or composite.h.
5256 (x_use_underline_position_properties, last_mouse_press_frame)
5257 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
5258 (syms_of_macterm, mac_initialize): Don't initialize them.
5259 (waiting_for_input, initial_argv, initial_argc)
5260 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
5261 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
5262 (extra_keyboard_modifiers): Fix type in extern.
5263 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
5264 (x_scroll_bar_report_motion): Add argument types to declaration.
5265 (mac_compute_glyph_string_overhangs): Add declaration.
5266 (disable_mouse_highlight): Remove unused variable.
5267 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
5268 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
5269 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
5270 All callers changed.
5271 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
5272 timestamp.
5273 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
5274 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
5275 only when its width is less than the height.
5276 (XTredeem_scroll_bar): Sync with xterm.c.
5277 (font_name_table, font_name_table_size, font_name_count):
5278 Make static.
5279 (drag_and_drop_file_list): Remove variable. Previous use is now
5280 local to function.
5281 (do_ae_open_documents): Move DRAG_N_DROP event construction part
5282 from XTread_socket.
5283 (XTread_socket): Consolidate setting of event timestamp.
5284 Move DRAG_N_DROP event construction part to do_ae_open_documents.
5285 Support extra_keyboard_modifiers.
5286
5287 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
5288 beginning with that for ASCII.
5289
5290 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
5291
5292 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
5293 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
5294 (syms_of_alloc): Declare gc-cons-percentage.
5295
5296 * eval.c (Feval, Ffuncall):
5297 * keyboard.c (read_char):
5298 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
5299
5300 * lisp.h (gc_cons_combined_threshold): Declare.
5301
5302 2005-07-12 Kim F. Storm <storm@cua.dk>
5303
5304 * coding.c (Qprocess_argument):
5305 * coding.h (Qprocess_argument): Remove unused var.
5306
5307 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
5308
5309 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5310
5311 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
5312 Endian.h.
5313 [!MAC_OSX] (fchmod, fchown): New functions.
5314 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
5315 Use SBYTES and EndianU32_BtoN.
5316 (mac_get_object_from_code): Return 4 byte string even if argument
5317 is 0. Use make_unibyte_string and EndianU32_NtoB.
5318 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
5319 (Fmac_set_file_type): Fix documents and argument declarations.
5320 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
5321
5322 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
5323
5324 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
5325
5326 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5327
5328 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
5329 Lucid if X_I18N, font otherwise.
5330
5331 2005-07-10 Steven Tamm <steventamm@mac.com>
5332
5333 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
5334 (Fmac_set_file_type, Fmac_set_file_creator): Add.
5335 (mac_get_object_from_code, mac_get_code_from_arg): Add.
5336
5337 2005-07-10 Richard M. Stallman <rms@gnu.org>
5338
5339 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
5340 (syms_of_lread): Set up eval-buffer-list.
5341 (Feval_buffer, Feval_region): Bind eval-buffer-list.
5342
5343 2005-07-08 Richard M. Stallman <rms@gnu.org>
5344
5345 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
5346
5347 2005-07-08 Kim F. Storm <storm@cua.dk>
5348
5349 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
5350 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
5351
5352 2005-07-07 Kim F. Storm <storm@cua.dk>
5353
5354 * window.c (Frecenter): Fix last change (set iarg before use).
5355
5356 2005-07-06 Richard M. Stallman <rms@gnu.org>
5357
5358 * window.c (Frecenter): When arg is inside the scroll margin,
5359 move it out of the margin.
5360
5361 2005-07-06 Jason Rumney <jasonr@gnu.org>
5362
5363 * w32console.c (initialize_w32_display): Detect when the console
5364 dimensions are insane, and default to 80x25 instead.
5365 (w32_use_full_screen_buffer): Default to NIL.
5366
5367 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5368
5369 * macterm.c (mac_draw_vertical_window_border): Use foreground of
5370 VERTICAL_BORDER_FACE_ID for vertical border line.
5371 (mac_encode_char): Call check_ccl_update in advance.
5372 (mac_to_x_fontname, x_font_name_to_mac_font_name)
5373 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
5374 Don't assume that font family length is less than 32.
5375 (x_compute_min_glyph_bounds): Make static.
5376 (x_load_font): Never set fonts_changed_p to zero.
5377
5378 2005-07-04 Lute Kamstra <lute@gnu.org>
5379
5380 * Update FSF's address in GPL notices.
5381
5382 2005-07-03 Richard M. Stallman <rms@gnu.org>
5383
5384 * xdisp.c (try_window): Fix previous change in how it handles
5385 a partially-visible line or one only partly past the margin.
5386
5387 * window.c (window_scroll_pixel_based): Take account
5388 of this_scroll_margin when finding point when scrolling up.
5389
5390 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
5391
5392 * window.c (window_scroll_pixel_based, window_scroll_line_based):
5393 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
5394 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
5395
5396 2005-07-02 Juri Linkov <juri@jurta.org>
5397
5398 * w32term.c (w32_draw_vertical_window_border): Use foreground of
5399 VERTICAL_BORDER_FACE_ID for vertical border line.
5400
5401 2005-07-02 Eli Zaretskii <eliz@gnu.org>
5402
5403 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
5404 fchmod so that chmod doesn't get called on MSDOS before the file
5405 is closed.
5406
5407 2005-07-01 Jason Rumney <jasonr@gnu.org>
5408
5409 * w32term.c (cleartype_active): New flag for enabling sub-pixel
5410 workaround.
5411 (w32_initialize): Initialize it.
5412 (w32_native_per_char_metric): Allow a couple of extra pixels when
5413 Cleartype is active.
5414
5415 * w32term.c (w32_initialize): Move check for screen reader here
5416 from syms_of_w32term.
5417
5418 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5419
5420 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
5421 is not zero.
5422
5423 2005-07-01 Masatake YAMATO <jet@gyve.org>
5424
5425 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
5426
5427 2005-06-30 Juri Linkov <juri@jurta.org>
5428
5429 * xdisp.c (x_draw_vertical_border): If left fringe is not present
5430 decrease x coord of vertical border by 1 pixel to not occupy text
5431 area of the right window.
5432
5433 * xterm.c (x_draw_vertical_window_border): Use foreground of
5434 VERTICAL_BORDER_FACE_ID for vertical border line.
5435
5436 * term.c (turn_on_face): In standout mode apply specified
5437 fg to bg, and specified bg to fg (this makes the logic of
5438 inversion on terminal consistent with X).
5439
5440 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
5441
5442 * eval.c (user_variable_p_eh): New function.
5443 (Fuser_variable_p): Use it. Clarify docstring.
5444 Return t for aliases of user options, nil for alias loops.
5445
5446 2005-06-27 Richard M. Stallman <rms@gnu.org>
5447
5448 * eval.c (Fdefvar): Improve error message.
5449
5450 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5451
5452 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
5453 change.
5454
5455 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
5456
5457 * eval.c (Fdefvar): Don't try to set constant symbols.
5458
5459 2005-06-25 Richard M. Stallman <rms@gnu.org>
5460
5461 * macfns.c (Fx_show_tip): Pass new arg to try_window.
5462
5463 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
5464
5465 * xfns.c (Fx_show_tip): Pass new arg to try_window.
5466
5467 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
5468 (redisplay_window): Handle try_window reporting point in scroll margin.
5469
5470 * dispextern.h (try_window): Declare new arg.
5471
5472 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
5473 Use fchmod to copy the file modes.
5474 (Frename_file): Don't copy UID and GID here;
5475 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
5476
5477 * eval.c (call_debugger): Take full care of extending stack limits
5478 to make space for the debugger, and restore the change afterward.
5479 Bind debug-on-error to nil.
5480 (restore_stack_limits): New subroutine.
5481 (Fsignal): Extend specpdl bound along with eval depth bound,
5482 for calling edebug. Don't do either one, for calling debugger.
5483 (find_handler_clause): Don't bind debug-on-error here.
5484 Don't unbind anything either.
5485 Temporarily advance max_specpdl_size for calling
5486 internal_with_output_to_temp_buffer.
5487 (grow_specpdl): Don't alter max_specpdl_size before signaling
5488 an error.
5489 (syms_of_eval) <max-specpdl-size>: Doc fix.
5490
5491 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
5492
5493 2005-06-24 Eli Zaretskii <eliz@gnu.org>
5494
5495 * fileio.c (Frename_file): Undo last change: no need to ifdef away
5496 chown on DOS_NT platforms.
5497
5498 * w32.c (sys_chown): New function.
5499
5500 * s/ms-w32.h (chown): New; define to sys_chown.
5501
5502 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
5503
5504 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
5505 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
5506
5507 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
5508
5509 2005-06-23 Richard M. Stallman <rms@gnu.org>
5510
5511 * xdisp.c (get_next_display_element): Finish reversing the tests of
5512 Vnobreak_char_display.
5513
5514 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
5515 All uses changed.
5516 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
5517 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
5518
5519 * fileio.c (Frename_file): Preserve owner and group, if possible,
5520 when copying.
5521
5522 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
5523
5524 * abbrev.c (Funexpand_abbrev):
5525 * category.c (Fmake_category_set):
5526 * dispnew.c (Fsleep_for, Fsit_for):
5527 * editfns.c (Fsubst_char_in_region):
5528 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
5529 * frame.c (make_frame_without_minibuffer):
5530 * lread.c (read_vector):
5531 * macfns.c (check_x_frame):
5532 * process.c (Fstop_process, Fcontinue_process):
5533 * search.c (Freplace_match):
5534 * syntax.c (Fstring_to_syntax):
5535 * w32fns.c (check_x_frame, check_x_display_info):
5536 * xfaces.c (x_supports_face_attributes_p):
5537 * xselect.c (Fx_own_selection_internal): Follow error conventions.
5538
5539 * image.c (fn_png_init_io): Don't define it.
5540 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
5541 (png_read_from_file): New function, based on png_read_from_memory.
5542 (png_load): Use it, instead of fn_png_init_io.
5543
5544 2005-06-23 Kim F. Storm <storm@cua.dk>
5545
5546 * search.c (Fmatch_data): Remove evaporate option.
5547 (Fset_match_data): Do not mention evaporate option in doc string.
5548 Add commentary explaining evaporate arg (for internal use only).
5549 (unwind_set_match_data): Add comment on evaporate use.
5550
5551 2005-06-22 Miles Bader <miles@gnu.org>
5552
5553 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
5554 (realize_basic_faces, syms_of_xfaces): Update references to it.
5555 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
5556 to `VERTICAL_BORDER_FACE_ID'.
5557 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
5558
5559 2005-06-21 Juri Linkov <juri@jurta.org>
5560
5561 * dispextern.h: Add extern Qframe_set_background_mode.
5562
5563 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
5564 Qframe_set_background_mode.
5565
5566 * frame.c (Fmodify_frame_parameters):
5567 Call frame-set-background-mode after changing the background color
5568 on non-window non-dos branch.
5569
5570 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
5571
5572 * fns.c (Fchar_table_range):
5573 * process.c (Fmake_network_process): Fix spellings.
5574
5575 2005-06-20 Kim F. Storm <storm@cua.dk>
5576
5577 * fns.c (Fsort): Doc fix.
5578
5579 2005-06-20 Miles Bader <miles@gnu.org>
5580
5581 * xfaces.c (Qvertical_divider): New variable.
5582 (realize_basic_faces): Realize its face.
5583 (syms_of_xfaces): Initialize it.
5584
5585 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
5586
5587 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
5588 window-separator on ttys using `vertical-divider' face by default.
5589
5590 2005-06-17 Richard M. Stallman <rms@gnu.org>
5591
5592 * xdisp.c (get_next_display_element):
5593 Reverse test of Vshow_nonbreak_escape.
5594
5595 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
5596 (Ftty_no_underline): New function.
5597 (syms_of_term): defsubr it.
5598
5599 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
5600
5601 * dispnew.c (spec_glyph_lookup_face): New function.
5602 (build_frame_matrix_from_leaf_window): Use it.
5603
5604 * dispextern.h (spec_glyph_lookup_face): Add declaration.
5605
5606 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
5607
5608 2005-06-12 Richard M. Stallman <rms@gnu.org>
5609
5610 * keyboard.c (read_char): After catching a longjmp,
5611 call restore_getcjmp.
5612
5613 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
5614
5615 * xselect.c (lisp_data_to_selection_data): Fix spelling.
5616
5617 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5618
5619 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
5620 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
5621 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
5622 events.
5623 (XTread_socket): Don't pass keyboard events with the option
5624 modifier to the system when Vmac_command_key_is_meta is nil or
5625 Vmac_option_modifier is non-nil.
5626 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
5627 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
5628 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
5629 handler function.
5630 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
5631 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
5632 handler part to mac_handle_mouse_event.
5633
5634 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
5635
5636 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
5637 NEW-ALIAS and BASE-VARIABLE, respectively.
5638
5639 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
5640
5641 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
5642 (get_phys_cursor_geometry, format_mode_line_unwind_data)
5643 (get_line_height_property, x_produce_glyphs): Remove unused vars.
5644
5645 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
5646
5647 2005-06-13 Eli Zaretskii <eliz@gnu.org>
5648
5649 * w32term.c (x_use_underline_position_properties): New variable.
5650 (x_draw_glyph_string): Remind in a comment to change doc string of
5651 x-use-underline-position-properties if/when underline positioning
5652 is implemented.
5653 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
5654 and initialize it to nil.
5655
5656 2005-06-12 Jason Rumney <jasonr@gnu.org>
5657
5658 * w32fns.c (NEWOPENFILENAME): New struct.
5659 (Fx_file_dialog): Use it to trick the system into giving us up to
5660 date dialogs on systems that are documented to support it.
5661 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
5662
5663 2005-06-12 Eli Zaretskii <eliz@gnu.org>
5664
5665 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
5666 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
5667
5668 2005-06-11 Eli Zaretskii <eliz@gnu.org>
5669
5670 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
5671 to CreateDIBSection to avoid a compiler warning.
5672 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
5673 warning.
5674 (png_load): Cast return values of fn_png_create_read_struct and
5675 fn_png_create_info_struct, to avoid compiler warnings on W32.
5676 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
5677 to avoid compiler warnings.
5678 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
5679 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
5680 avoid a compiler warning.
5681 (tiff_load): Cast return values of fn_TIFFOpen and
5682 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
5683 to IMAGE_BACKGROUND to avoid a compiler warning.
5684 (gif_load): Cast return values of fn_DGifOpenFileName and
5685 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
5686 IMAGE_BACKGROUND to avoid a compiler warning.
5687 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
5688 before redefining.
5689
5690 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
5691 the call to CreateDIBSection, to avoid a compiler warning.
5692
5693 2005-06-11 Jason Rumney <jasonr@gnu.org>
5694
5695 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
5696 minibuffer.
5697 * macfns.c (Fx_file_dialog): Likewise.
5698
5699 2005-06-10 Eli Zaretskii <eliz@gnu.org>
5700
5701 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
5702
5703 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
5704
5705 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
5706 * w32fns.c (syms_of_w32fns): Fix spellings.
5707
5708 2005-06-10 Eli Zaretskii <eliz@gnu.org>
5709
5710 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
5711 `verbose'; print diagnostic messages only if it is non-zero.
5712 All callers changed to pass a zero value unless DEBUG_DUMP is defined
5713 in the environment.
5714 (copy_executable_and_dump_data): Print section names with %.8s.
5715
5716 2005-06-10 Masatake YAMATO <jet@gyve.org>
5717
5718 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
5719 when mouse_face is not given.
5720
5721 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
5722
5723 * window.c (Fselect_window): Adapt call to Fselect_frame.
5724
5725 * lisp.h: Update EXFUN of Fselect_frame.
5726
5727 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
5728
5729 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
5730 no_enter.
5731 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
5732 Adapt to above change.
5733
5734 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
5735
5736 * fns.c (Fmemq, Fmaphash): Doc fixes.
5737
5738 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
5739
5740 * xfaces.c (Fdisplay_supports_face_attributes_p):
5741 Fix typo in docstring.
5742
5743 2005-06-08 Steven Tamm <steventamm@mac.com>
5744
5745 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
5746 used by gcc4 on intel mac.
5747
5748 2005-06-09 Kim F. Storm <storm@cua.dk>
5749
5750 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
5751 in REUSE list if non-nil; free them if equal to evaporate.
5752 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
5753 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
5754 (restore_search_regs): Rename from restore_match_data. Uses changed.
5755 (unwind_set_match_data): New function.
5756 (record_unwind_save_match_data): New function like save-match-data.
5757
5758 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
5759 (record_unwind_save_match_data): Add prototype.
5760 (restore_search_regs): Rename from restore_match_data.
5761
5762 * composite.c (compose_chars_in_text):
5763 * eval.c (do_autoload):
5764 * macmenu.c (set_frame_menubar):
5765 * process.c (read_process_output, exec_sentinel):
5766 * xmenu.c (set_frame_menubar):
5767 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
5768 * w32menu.c (set_frame_menubar):
5769 Use record_unwind_save_match_data.
5770
5771 2005-06-08 Richard M. Stallman <rms@gnu.org>
5772
5773 * xdisp.c (get_next_display_element): Alter previous change:
5774 Distinguish Vshow_nonbreak_escape = t or not t.
5775 For t, use escape_glyph once again, as before previous change.
5776 Use space or hyphen for display, instead of the non-ASCII char.
5777 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
5778
5779 * process.c (Fstart_process): Don't touch command_channel_p slot.
5780
5781 * process.h (struct process): Delete command_channel_p.
5782
5783 2005-06-07 Masatake YAMATO <jet@gyve.org>
5784
5785 * xdisp.c (note_mode_line_or_margin_highlight):
5786 Check the overlapping of re-rendering area to avoid flickering.
5787 (note_mouse_highlight): Call clear_mouse_face if PART
5788 is not ON_MODE_LINE nor ON_HEADER_LINE.
5789
5790 2005-06-07 Kim F. Storm <storm@cua.dk>
5791
5792 * process.c: Improve commentary for adaptive read buffering.
5793
5794 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
5795
5796 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
5797 if available.
5798
5799 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5800
5801 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
5802 New functions for popping down menus on C-g.
5803 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
5804
5805 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
5806 non-static.
5807
5808 * config.in: Add HAVE_CANCELMENUTRACKING.
5809
5810 2005-06-06 Eli Zaretskii <eliz@gnu.org>
5811
5812 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
5813
5814 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
5815
5816 * w32proc.c (RVA_TO_PTR): New macro.
5817
5818 * w32heap.c (RVA_TO_PTR): No need to #undef now.
5819
5820 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
5821 Depend on w32heap.h.
5822
5823 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
5824
5825 * keyboard.c (command_loop_1): Update Vthis_original_command.
5826
5827 2005-06-06 Richard M. Stallman <rms@gnu.org>
5828
5829 * xmenu.c (popup_get_selection): Undo previous change.
5830
5831 2005-06-06 Juri Linkov <juri@jurta.org>
5832
5833 * xdisp.c (Qno_break_space): New variable.
5834 (syms_of_xdisp): Initialize it.
5835 (get_next_display_element): Add no-break space and soft hypen
5836 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
5837 Use `no-break-space' face for no-break spaces.
5838
5839 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5840
5841 * window.c (delete_window): Handle the case where a h/vchild has
5842 a h/vchild.
5843
5844 2005-06-05 Eli Zaretskii <eliz@gnu.org>
5845
5846 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
5847 call to pfn_setsockopt, cast optval to `const char *'.
5848
5849 2005-06-04 Eli Zaretskii <eliz@gnu.org>
5850
5851 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
5852 (open_unc_volume): Cast return value of map_w32_filename, to avoid
5853 compiler warnings.
5854
5855 * s/ms-w32.h (fileno): Don't define if already defined.
5856
5857 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
5858
5859 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
5860
5861 2005-06-04 Richard M. Stallman <rms@gnu.org>
5862
5863 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
5864
5865 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5866
5867 * macmenu.c (cleanup_popup_menu): New function.
5868 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
5869 mac_menu_show Quit:s.
5870 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
5871 a dialog).
5872
5873 2005-06-04 Kim F. Storm <storm@cua.dk>
5874
5875 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
5876
5877 * callproc.c (Fcall_process): Don't use alloca to gradually
5878 increase size of buf, as it effectively uses twice the necessary
5879 space on the stack. Instead, pre-allocate buf of full size, and
5880 gradually increase the read size.
5881
5882 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
5883
5884 * eval.c (unbind_to): Preserve value of Vquit_flag.
5885
5886 * xterm.c (handle_one_xevent): Also ignore mouse motion just
5887 before a button release event.
5888
5889 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
5890
5891 * xfaces.c (Finternal_lisp_face_equal_p): Really report
5892 on faces in a frame, if the argument FRAME is non-nil.
5893 Improve argument/docstring consistency.
5894
5895 2005-06-02 Kim F. Storm <storm@cua.dk>
5896
5897 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
5898 (x_consider_frame_title, Fformat_mode_line): Save offset into
5899 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
5900
5901 2005-06-01 Kim F. Storm <storm@cua.dk>
5902
5903 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
5904
5905 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5906
5907 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
5908 resolution fields for scalable fonts to 0.
5909
5910 * xfaces.c (build_scalable_font_name): Round pixel size to the
5911 nearest integer.
5912
5913 2005-06-01 Kim F. Storm <storm@cua.dk>
5914
5915 * xdisp.c (display_mode_line): Support nested calls to redisplay
5916 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
5917
5918 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
5919
5920 * fileio.c (Finsert_file_contents):
5921 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
5922
5923 2005-05-31 Kim F. Storm <storm@cua.dk>
5924
5925 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
5926 (mode_line_noprop_ptr): Rename from frame_title_*.
5927 (store_mode_line_noprop_char): Rename from store_frame_title_char.
5928 (store_mode_line_noprop): Rename from store_frame_title.
5929 (mode_line_target): New enum to specify current output target
5930 for mode line formatting.
5931 (display_mode_element): Test it rather than frame_title_ptr and
5932 mode_line_string_list to determine where output should go.
5933 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
5934 (Vmode_line_unwind_vector): New variable.
5935 (format_mode_line_unwind_data, unwind_format_mode_line):
5936 New functions for unwind protection in mode line formatting.
5937 (x_consider_frame_title): Use them and new local var 'title_start'
5938 to support nested calls to format-mode-line and redisplay.
5939 Set mode_line_target to MODE_LINE_TITLE.
5940 (Fformat_mode_line): Use them and new local var 'string_start' to
5941 support nested calls to format-mode-line and redisplay.
5942 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
5943 Don't trim trailing dashes.
5944 (decode_mode_spec): Don't make infinite number of trailing dashes
5945 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
5946 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
5947 mode_line_string_face_prop, and Vmode_line_unwind_vector.
5948 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
5949 Initialize mode_line_target to MODE_LINE_DISPLAY.
5950
5951 2005-05-29 Richard M. Stallman <rms@gnu.org>
5952
5953 * buffer.c (Fbuffer_local_value): Call indirect_variable.
5954
5955 2005-05-28 Masatake YAMATO <jet@gyve.org>
5956
5957 * xdisp.c (note_mode_line_or_margin_highlight): Change the
5958 pointer to a hand cursor when hoovering over a mouse-face.
5959
5960 2005-05-27 Kenichi Handa <handa@m17n.org>
5961
5962 * xterm.c (x_encode_char): Call check_ccl_update in advance.
5963
5964 * ccl.c: Now an element of Vccl_program_table is a vector of
5965 length 4, not 3.
5966 (ccl_get_compiled_code): New arg idx. Caller changed.
5967 Adjust for the change of Vccl_program_table.
5968 (setup_ccl_program): Adjust for the change of Vccl_program_table.
5969 (check_ccl_update): New function.
5970 (Fregister_ccl_program): Use ASET to set an element of a vector.
5971 Adjusted for the change of Vccl_program_table.
5972
5973 * ccl.h (struct ccl_program): New member idx.
5974 (check_ccl_update): Extern it.
5975
5976 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
5977
5978 * image.c (Vimage_library_alist): Move from image.el.
5979 (syms_of_image): Defvar it.
5980 (lookup_image_type): Use it.
5981
5982 * buffer.c (Fbuffer_local_value): Make argument name match its use
5983 in docstring.
5984
5985 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
5986
5987 * keyboard.c (Frecursive_edit): Fix typo in docstring.
5988 (Fposn_at_x_y): Make argument name match its use in docstring.
5989
5990 2005-05-26 Lute Kamstra <lute@gnu.org>
5991
5992 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
5993
5994 2005-05-24 Masatake YAMATO <jet@gyve.org>
5995
5996 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
5997 as loop sentinels.
5998
5999 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
6000
6001 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
6002 select frame title ("Question"/"Information").
6003 (xdialog_show): Use it.
6004
6005 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
6006
6007 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
6008
6009 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
6010 a third argument (Qnil).
6011
6012 * lisp.h: x-popup-dialog can have three arguments.
6013
6014 * editfns.c (Fmessage_box): Use "Information" for frame title.
6015
6016 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
6017
6018 * termcap.c [VMS]: Include <starlet.h>.
6019
6020 2005-05-23 Masatake YAMATO <jet@gyve.org>
6021
6022 * xdisp.c (note_mode_line_or_margin_highlight): Add code
6023 for mouse-face. Change the type of the first argument from `window'
6024 to `Lisp_Object'.
6025 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
6026 window instead of w.
6027
6028 2005-05-22 Andreas Schwab <schwab@suse.de>
6029
6030 * process.c (send_process): Move misplaced volatile.
6031
6032 2005-05-21 Richard M. Stallman <rms@gnu.org>
6033
6034 * xdisp.c (display_mode_element): If we're processing a list and
6035 padding is specified, put it after the last element.
6036
6037 2005-05-21 Eli Zaretskii <eliz@gnu.org>
6038
6039 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
6040 "superroot" on DOS_NT systems.
6041
6042 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
6043
6044 * process.c (send_process): Restore the SIGPIPE handler if we
6045 catch a SIGPIPE.
6046
6047 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
6048
6049 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
6050 misleading comments).
6051 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
6052
6053 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6054
6055 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
6056 Correct the right value.
6057
6058 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
6059
6060 * keyboard.c (syms_of_keyboard): Remove Lisp variables
6061 post-command-idle-hook and post-command-idle-delay.
6062 (command_loop_1): Don't try to execute post-command-idle-hook.
6063
6064 2005-05-16 Kim F. Storm <storm@cua.dk>
6065
6066 * xdisp.c (handle_display_prop): Handle empty replacement.
6067 (handle_single_display_spec): Return -1 for empty replacement.
6068
6069 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
6070
6071 * .gdbinit (pitx): Print more info about iterator.
6072
6073 2005-05-16 Andreas Schwab <schwab@suse.de>
6074
6075 * unexmacosx.c (unexec_realloc): Move declarations before statements.
6076
6077 2005-05-14 Richard M. Stallman <rms@gnu.org>
6078
6079 * xdisp.c (message3): Call cancel_echoing.
6080
6081 * alloc.c (Fmemory_full_p): New function.
6082 (syms_of_alloc): defsubr it.
6083
6084 * process.c (send_process_trap): Unblock SIGPIPE.
6085 (send_process): Reset SIGPIPE handler before reporting error.
6086
6087 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
6088
6089 * emacs.c (syms_of_emacs): Fix doc string for system-type.
6090
6091 2005-05-13 Richard M. Stallman <rms@gnu.org>
6092
6093 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
6094 (Finsert_file_contents): If we read 0 bytes from a special file,
6095 unlock the visited file if we locked it.
6096 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
6097 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
6098
6099 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6100
6101 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
6102
6103 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
6104 Regard toolkit scroll bar thumb drag events as squeezable and prevent
6105 redisplay from being paused by them.
6106
6107 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
6108 [!MAC_OSX] (target_ticks): Remove variable.
6109 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
6110 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
6111 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
6112 event occurs before timeout, behave as if the function were interrupted.
6113 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
6114 handling using Time Manager routines.
6115 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
6116 New variables.
6117 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
6118 (setitimer): New functions.
6119
6120 * macfns.c, macmenu.c: Don't include signal.h.
6121
6122 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
6123 Rename from get_control_part_bound. All callers changed.
6124 (x_scroll_bar_clear): New function.
6125 (x_clear_frame): Use it.
6126 (XTset_vertical_scroll_bar): Don't call Draw1Control.
6127 (x_scroll_bar_handle_click): Change type of second argument from
6128 int to ControlPartCode.
6129 (check_alarm): Remove declaration.
6130 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
6131 (XTread_socket): Use ControlPartCode instead of SInt16.
6132
6133 2005-05-13 Nozomu Ando <nand@mac.com>
6134
6135 * unexmacosx.c: Include assert.h.
6136 (MACOSX_MALLOC_MULT16): New define.
6137 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
6138 ptr is in unexec regions by checking it is multiple of 16.
6139 (unexec_malloc_header_t): New typedef.
6140 (unexec_malloc, unexec_realloc, unexec_free): Store and use
6141 allocated size information in unexec_malloc_header.
6142
6143 2005-05-10 Richard M. Stallman <rms@gnu.org>
6144
6145 * xterm.c (noinclude): Add #undef.
6146
6147 * image.c, xfns.c, xmenu.c: Don't include signal.h.
6148
6149 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
6150
6151 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
6152 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
6153 Doc fixes.
6154
6155 * dired.c (Ffile_name_completion): Make argument name
6156 match its use in docstring.
6157
6158 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
6159
6160 * eval.c (Fdefvaralias): Remove any pre-existing
6161 variable-documentation property of the alias.
6162
6163 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
6164
6165 * xfns.c (start_hourglass): Do nothing when running on a tty.
6166
6167 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
6168
6169 * fns.c (Fchar_table_range): Fix typos in docstring.
6170
6171 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6172
6173 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
6174
6175 2005-05-06 Eli Zaretskii <eliz@gnu.org>
6176
6177 * lread.c (Flocate_file_internal): Doc fix.
6178
6179 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
6180
6181 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6182
6183 * macselect.c (x_own_selection): Accept Lisp string as result of
6184 selection converter function.
6185 (x_clear_frame_selections): Don't call x-lost-selection-functions
6186 if Emacs is not owner of the selection.
6187 (Vmac_services_selection): Put variable and initialization in
6188 #ifdef MAC_OSX.
6189 (syms_of_macselect) [MAC_OSX]: Set default value of
6190 Vmac_services_selection to PRIMARY.
6191
6192 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
6193 (mac_handle_tool_bar_click): Remove unused function and declaration.
6194 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
6195 (install_scroll_bar_timer, set_scroll_bar_timer)
6196 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
6197 (get_control_part_bound, x_scroll_bar_handle_press)
6198 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
6199 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
6200 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
6201 (scroll_bar_timer_event_posted_p): New variables.
6202 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
6203 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
6204 (x_scroll_bar_create): Set control reference with NewControl.
6205 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
6206 Initialize track_top and track_height to nil.
6207 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
6208 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
6209 (XTset_vertical_scroll_bar): Don't make space between scroll bar
6210 and associated window.
6211 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
6212 from window config.
6213 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
6214 Set track_top and track_height to nil when scroll bar size is changed.
6215 Recalculate them if they are nil.
6216 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
6217 clicked control is a scroll bar.
6218 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
6219 event handler functions. Don't add modifiers to scroll bar click
6220 events. Call scroll bar release handler when window is deactivated.
6221 (mac_initialize): Remove unused code for X toolkit.
6222 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
6223 Initialize Vx_toolkit_scroll_bars to nil.
6224
6225 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
6226 New members track_top and track_height.
6227
6228 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
6229 init_process when including sys/select.h.
6230
6231 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
6232
6233 * eval.c (Fdefvaralias): Doc fix.
6234
6235 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
6236
6237 2005-05-05 Kim F. Storm <storm@cua.dk>
6238
6239 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
6240 default value.
6241 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
6242 Fix type of cursor-in-non-selected-windows.
6243
6244 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6245
6246 * mac.c: #undef init_process so not to conflict with system headers.
6247
6248 2005-05-02 Richard M. Stallman <rms@gnu.org>
6249
6250 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
6251
6252 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
6253
6254 * xdisp.c (Vcursor_in_non_selected_windows)
6255 (Qcursor_in_non_selected_windows): Vars deleted.
6256 (syms_of_xdisp): Don't initialize them.
6257 (get_window_cursor_type): Use cursor_in_non_selected_windows
6258 buffer slot.
6259
6260 2005-05-02 Kim F. Storm <storm@cua.dk>
6261
6262 * macros.c (executing_kbd_macro_index): Rename from
6263 executing_macro_index. All uses changed.
6264 (executing_kbd_macro_iterations): Rename from
6265 executing_macro_iterations. All uses changed.
6266 (executing_kbd_macro): Rename from executing_macro.
6267 All uses changed.
6268 (syms_of_macros): Rename Lisp var executing-macro-index to
6269 executing-kbd-macro-index.
6270
6271 * xdisp.c (move_it_in_display_line_to): Fix last change.
6272
6273 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
6274
6275 * xmenu.c (Fx_popup_menu): Doc fix.
6276
6277 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
6278
6279 2005-05-02 Jason Rumney <jasonr@gnu.org>
6280
6281 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
6282
6283 2005-05-02 Nozomu Ando <nand@mac.com>
6284
6285 * sysselect.h: Fix typo.
6286
6287 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
6288
6289 * charset.c (Fchars_in_region): Remove as obsolete.
6290
6291 2005-05-01 Kim F. Storm <storm@cua.dk>
6292
6293 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
6294 TO_CHARPOS. This may happen if last glyphs was an image or stretch
6295 glyph.
6296
6297 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
6298
6299 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
6300
6301 2005-05-01 Richard M. Stallman <rms@gnu.org>
6302
6303 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
6304 If user cancels the menu, quit unless FOR_CLICK.
6305
6306 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
6307 All uses changed.
6308 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
6309 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
6310 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
6311 * commands.h (Vexecuting_kbd_macro): Likewise.
6312
6313 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
6314
6315 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
6316
6317 2005-04-30 Richard M. Stallman <rms@gnu.org>
6318
6319 * fileio.c (Ffind_file_name_handler): Handle the `operations'
6320 property of the file name handler.
6321 (Qoperations): New variable.
6322 (syms_of_fileio): Initialize and staticpro it.
6323
6324 * xdisp.c (set_message_1): Delete xassert.
6325
6326 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6327
6328 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
6329
6330 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
6331
6332 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
6333 before/after including Carbon.h if there is a working mktime.
6334
6335 2005-04-28 Kim F. Storm <storm@cua.dk>
6336
6337 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
6338 Fix cyclic alias check. If alias loop is detected, signal
6339 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
6340
6341 2005-04-28 Lute Kamstra <lute@gnu.org>
6342
6343 * eval.c (do_autoload): Record only autoloads in the autoload
6344 property of symbols.
6345
6346 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
6347
6348 * emacs.c (USAGE1): Add --basic-display and --quick options.
6349
6350 2005-04-27 Kim F. Storm <storm@cua.dk>
6351
6352 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
6353
6354 2005-04-26 Richard M. Stallman <rms@gnu.org>
6355
6356 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
6357 (syms_of_window): Doc fixes.
6358
6359 * indent.c (Fvertical_motion): Undo previous change.
6360
6361 2005-04-26 Kenichi Handa <handa@m17n.org>
6362
6363 * fns.c (char_table_range): New function.
6364 (Fchar_table_range): Signal an error if characters in the range
6365 have inconsistent values. Don't check the parent.
6366
6367 2005-04-25 Kenichi Handa <handa@m17n.org>
6368
6369 * fontset.c (fontset_set): Fix previous change.
6370
6371 2005-04-24 Richard M. Stallman <rms@gnu.org>
6372
6373 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
6374
6375 2005-04-24 Eli Zaretskii <eliz@gnu.org>
6376
6377 * regex.c (re_search_2, re_match_2_internal): Convert second arg
6378 of RE_TRANSLATE to int, to shut up GCC warnings.
6379
6380 * fileio.c (Fcopy_file): Doc fix.
6381 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
6382 not needed.
6383
6384 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6385
6386 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
6387 (SOME_MACHINE_OBJECTS): Likewise.
6388 (mac.o): Depend on ccl.h.
6389 (macselect.o): New target.
6390
6391 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
6392 Call syms_of_macselect.
6393
6394 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
6395
6396 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
6397 (QCLIPBOARD): Remove variable.
6398 (syms_of_mac): Don't initialize it.
6399 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
6400 Remove functions.
6401 (syms_of_mac): Don't defsubr them.
6402 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
6403 (QHFS_plus_D, QHFS_plus_C): New variables.
6404 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
6405 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
6406 (cfstring_create_normalized): New functions.
6407 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
6408 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
6409
6410 * macterm.c (handling_window_update, terminate_flag):
6411 Remove variables.
6412 (do_window_update, do_ae_quit_application, XTread_socket):
6413 Don't use them.
6414 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
6415 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
6416 (init_service_handler): Move to macselect.c. Remove declarations.
6417 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
6418 (Qapplication, Qabout): New variables.
6419 (syms_of_mac): Initialize them.
6420 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
6421 (Qperform): New variables.
6422 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
6423 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
6424 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
6425 (mac_store_application_menu_event, init_menu_bar): New functions.
6426 [USE_CARBON_EVENTS] (mac_handle_command_event)
6427 (init_command_handler): New functions.
6428 (mac_handle_window_event): Return noErr on window update event.
6429 (do_ae_quit_application): Call mac_store_application_menu_event.
6430 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
6431 and init_menu_bar.
6432
6433 * macterm.h (x_clear_frame_selections): Add extern.
6434
6435 * macselect.c: New file for selection processing on Mac OS.
6436
6437 2005-04-23 Richard M. Stallman <rms@gnu.org>
6438
6439 * fileio.c (Fcopy_file): New arg MUSTBENEW.
6440 (Frename_file): Pass new arg to Fcopy_file.
6441
6442 * window.c (window_size_fixed): Variable deleted.
6443 (syms_of_window): Initialize window-size-fixed to nil.
6444 But don't DEFVAR window_size_fixed.
6445
6446 2005-04-23 Andreas Schwab <schwab@suse.de>
6447
6448 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
6449 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
6450 use lib64 instead of lib.
6451 (_LP64) [_ARCH_PPC64]: Define if not defined.
6452
6453 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
6454
6455 * s/ms-w32.h (HAVE_PWD_H): Define.
6456
6457 2005-04-22 Kenichi Handa <handa@m17n.org>
6458
6459 * fns.c (copy_sub_char_table): Explicitly copy the default value
6460 of the sub-chartable.
6461
6462 * fontset.c (fontset_set): When a sub-chartable is created,
6463 explicitly sets the defalt value.
6464
6465 2005-04-22 Kim F. Storm <storm@cua.dk>
6466
6467 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
6468 (Fsafe_plist_get): Rename to Fplist_get.
6469 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
6470 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
6471
6472 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
6473
6474 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
6475 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6476 Use Fplist_get instead of Fsafe_plist_get.
6477
6478 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
6479
6480 2005-04-21 Miles Bader <miles@gnu.org>
6481
6482 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
6483
6484 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
6485
6486 * sysdep.c: Remove reference to defunct vms-pwd.h.
6487 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
6488 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
6489
6490 * config.in: Regenerate.
6491
6492 2005-04-20 Kenichi Handa <handa@m17n.org>
6493
6494 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
6495 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
6496 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
6497
6498 * alloc.c (make_sub_char_table): Argument changed to initial
6499 value of the slots.
6500
6501 * data.c (Faref): Handle special slots used as default values of
6502 ascii, eight-bit-control, eight-bit-control. Don't ignore a
6503 default value set for a group of characters.
6504 (Faset): Signal an error if IDXVAL is not a valid character code.
6505 Make a sub-chartable with correct initial value.
6506
6507 * fns.c (Fset_char_table_range): Don't set slots used as default
6508 values for ascii, eight-bit-control, eight-bit-graphic.
6509 Don't call Faref with charset-id.
6510 (Fset_char_table_default): Document how to treat normal character
6511 argument. Handle special slots used as default values of ascii,
6512 eight-bit-control, eight-bit-control. Make a sub chartable if
6513 necessary.
6514
6515 2005-04-20 Kenichi Handa <handa@m17n.org>
6516
6517 * search.c (boyer_moore): Fix previous change.
6518
6519 2005-04-19 Kim F. Storm <storm@cua.dk>
6520
6521 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
6522 face unless last visible char and first invisible char have the
6523 same face. Also use default face if saved_face_id is undefined.
6524
6525 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6526
6527 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
6528 `full_name'.
6529 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
6530 mac_scriptcode member.
6531
6532 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
6533 (syms_of_mac): Don't initialize them.
6534 (Vmac_charset_info_alist): New variable.
6535 (syms_of_mac): Defvar it.
6536 (create_text_encoding_info_alist): New function.
6537 (decode_mac_font_name, mac_to_x_fontname)
6538 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
6539 code the correspondence among XLFD charsets, Mac script codes, and
6540 Emacs coding systems. Use Vmac_charset_info_alist and result of
6541 create_text_encoding_info_alist instead.
6542 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
6543 routines also on Mac OS Classic.
6544 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
6545 Use add_font_name_table_entry.
6546 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
6547 specified. Derive unspecified scalable fields from specified one.
6548 (x_list_fonts): Consider Valternate_fontname_alist.
6549 (kDefaultFontSize): Change value from 9 to 12.
6550 (XLoadQueryFont): Get decoded font family, font face, and charset
6551 from x_font_name_to_mac_font_name. Set full name of loaded font.
6552 (mac_unload_font): Free `full_name' member.
6553 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
6554 NULL. Copy full_name member of struct MacFontStruct to that of
6555 struct font_info.
6556
6557 2005-04-19 Kim F. Storm <storm@cua.dk>
6558
6559 * xdisp.c (handle_stop): Set saved_face_id to current face if
6560 selective_display_ellipsis_p so ellipsis will be shown in same
6561 face as preceding text.
6562 (setup_for_ellipsis): Don't set saved_face_id here.
6563 (next_element_from_display_vector): Default to saved_face_id.
6564
6565 * fns.c (Fsafe_get): New function.
6566 (syms_of_fns): Defsubr it.
6567
6568 * lisp.h (Fsafe_get): EXFUN it.
6569
6570 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
6571 loops in case of bad face property lists. Limit number of face
6572 alias lookups to 10 (in case of face alias loops).
6573
6574 2005-04-18 Kim F. Storm <storm@cua.dk>
6575
6576 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
6577 It replaces the corresponding member from struct window, as a
6578 window may now show multiple overlay arrows.
6579 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
6580
6581 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
6582 Compare overlay_arrow_bitmap than overlay_arrow_p members.
6583
6584 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
6585 rather than from window.
6586 (update_window_fringes): Compare overlay_arrow_bitmap rather than
6587 overlay_arrow_p members.
6588 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
6589 if not default.
6590
6591 * window.h (struct window): Remove member overlay_arrow_bitmap.
6592
6593 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
6594
6595 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
6596 Calls changed. Don't check for overlay-arrow-bitmap property here.
6597 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
6598 fringe is present, return Lisp integer for bitmap (or -1 for default).
6599 Fix value of overlay-arrow-bitmap property to be a symbol, use
6600 lookup_fringe_bitmap to parse it.
6601 (display_line): Change call to overlay_arrow_at_row. Store integer
6602 return value as overlay bitmap in row rather than window.
6603 Only show overlay arrow if row displays text, or if no other overlay
6604 arrow is seen in window (if overlay marker is at point-max).
6605
6606 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
6607
6608 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
6609
6610 2005-04-18 Lute Kamstra <lute@gnu.org>
6611
6612 * lread.c (Vloads_in_progress): Static.
6613 * fns.c (Vloads_in_progress): Remove extern.
6614 (load_in_progress): Add extern.
6615 (Frequire): Use load_in_progress instead of Vloads_in_progress.
6616
6617 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
6618
6619 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
6620
6621 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6622
6623 * macterm.c (XTread_socket): Don't beep on keyboard input even if
6624 no frame is visible.
6625
6626 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
6627
6628 * term.c (struct keys): Add support for shifted keys.
6629
6630 2005-04-16 Richard M. Stallman <rms@gnu.org>
6631
6632 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
6633 (set_message): Call with_echo_area_buffer with WHICH = 0.
6634 (set_message_1): Erase the echo area buffer first thing.
6635 (echo_area_display): Don't clear echo_message_buffer.
6636
6637 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6638
6639 * Makefile.in (mac.o): Depend on charset.h and coding.h.
6640
6641 * mac.c: Include charset.h and coding.h.
6642 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
6643 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
6644 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
6645
6646 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
6647
6648 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
6649
6650 * macterm.c (x_autoselect_window_p): Remove variable.
6651 (last_window): New variable.
6652 (XTreassert_line_highlight, x_change_line_highlight):
6653 Remove declarations.
6654 (mac_focus_changed, x_detect_focus_change): New functions and
6655 declarations.
6656 (XTextExtents16, front_emacs_window): Remove function.
6657 (mac_focus_frame): New function.
6658 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
6659 (mac_check_for_quit_char): Use it instead of front_emacs_window.
6660 (x_scroll_bar_report_motion): Obtain window from control owner.
6661 (x_make_frame_invisible): Set window manager size hint.
6662 (do_mouse_moved): Remove function.
6663 (XTread_socket): Move its contents here. Generate select-window
6664 event on mouse movement if needed. Use x_detect_focus_change on
6665 activate/deactivate events. Don't deiconify frame or invalidate
6666 window rectangle when dnd items are dropped.
6667 Don't activate/deactivate root control.
6668 (frame_highlight, frame_unhighlight): Activate/deactivate root
6669 control here.
6670 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
6671
6672 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
6673 New extern.
6674
6675 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
6676
6677 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
6678 (lisp): Use it.
6679 (SOME_MACHINE_LISP): Add tooltip.
6680
6681 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6682
6683 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
6684 Don't include TextEncodingConverter.h.
6685 (mac_system_script_code, Vmac_system_locale): New variables.
6686 (syms_of_mac): Defvar them.
6687 (mac_get_system_locale): New function.
6688
6689 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
6690 Use ENCODE_SYSTEM to encode title bar string.
6691 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
6692 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
6693 Use CFStringGetSystemEncoding to get system default string encoding.
6694
6695 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
6696 TextEncodingConverter.h.
6697
6698 2005-04-13 Steven Tamm <steventamm@mac.com>
6699
6700 * macterm.c (syms_of_macterm): Remove redundant definition of
6701 mac-pass-control-to-system.
6702
6703 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
6704
6705 * window.c (Fset_window_configuration): Be careful when you choose
6706 among several possible points for the new_current_buffer.
6707
6708 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6709
6710 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
6711 poll_for_input_1. Set interrupt_input_pending to 1 instead.
6712 (Qlanguage_change) [MAC_OS]: New variable.
6713 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
6714 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
6715
6716 * macterm.c (mac_keyboard_text_encoding)
6717 (current_mac_keyboard_text_encoding): Remove variables.
6718 (XTread_socket): Store language-change event if keyboard script change
6719 is detected. Don't convert input to `mac_keyboard_text_encoding'.
6720 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
6721
6722 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
6723
6724 2005-04-10 Richard M. Stallman <rms@gnu.org>
6725
6726 * emacs.c (standard_args): Rename --bare-bones to --quick.
6727 Add -D aka --basic-display.
6728
6729 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
6730
6731 2005-04-09 Richard M. Stallman <rms@gnu.org>
6732
6733 * keymap.c (where_is_internal): Convert a string used as event type
6734 into "(any string)".
6735
6736 * lread.c (Vloads_in_progress): Not static.
6737 * fns.c (Vloads_in_progress): Add extern.
6738 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
6739
6740 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
6741
6742 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
6743
6744 2005-04-09 Lute Kamstra <lute@gnu.org>
6745
6746 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
6747 within the accessible part of the buffer.
6748
6749 2005-04-09 Kim F. Storm <storm@cua.dk>
6750
6751 * lread.c (readevalloop): Add args START and END as region in
6752 current buffer to read. Callers changed.
6753 When specified, narrow to this region only when reading,
6754 not during eval. Track next point to read from during eval.
6755 Also restore point to "real" buffer position before eval.
6756 (Feval_region): Don't save excursion and restriction here, and
6757 don't narrow to region. Just pass region to readevalloop.
6758 Note: Point is now preserved even when PRINTFLAG is nil.
6759
6760 2005-04-08 Kim F. Storm <storm@cua.dk>
6761
6762 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
6763
6764 2005-04-06 Kim F. Storm <storm@cua.dk>
6765
6766 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
6767
6768 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6769
6770 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
6771 (Fmac_get_preference): Doc fix.
6772
6773 * macfns.c (Fx_create_frame, x_create_tip_frame):
6774 Add "fontset-mac" to fallback font/fontsets.
6775
6776 2005-04-04 Kim F. Storm <storm@cua.dk>
6777
6778 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
6779
6780 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
6781 Call it again after autoload.
6782
6783 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6784
6785 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
6786 mallopt.
6787
6788 * ralloc.c (r_alloc_init): Ditto.
6789
6790 2005-04-01 Kenichi Handa <handa@m17n.org>
6791
6792 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
6793 (Vascii_eqv_table): Extern them.
6794
6795 * casetab.c (set_case_table): If standard is nonzero, setup
6796 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
6797
6798 * search.c (looking_at_1): Use current_buffer->case_canon_table,
6799 not DOWNCASE_TABLE.
6800 (string_match_1): Likewise.
6801 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
6802 Vascii_downcase_table.
6803 (fast_string_match_ignore_case): Likewise.
6804 (search_buffer): Fix checking of boyer-moore usability.
6805 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
6806 No need of tranlating characters in PAT. Fix calculation of
6807 simple_translate.
6808
6809 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
6810
6811 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
6812 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
6813 Use XtNtopShadowPixel and XtNbottomShadowPixel.
6814 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
6815 really work and that breaks with some versions of Xaw3d.
6816
6817 2005-03-31 Kenichi Handa <handa@m17n.org>
6818
6819 * coding.c (syms_of_coding): Fix previous change.
6820
6821 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
6822
6823 * fileio.c (search_embedded_absfilename): Fix last change.
6824
6825 2005-03-25 Kenichi Handa <handa@m17n.org>
6826
6827 * coding.c (syms_of_coding): Suggest to use set-coding-category in
6828 the docstring of coding-category-list.
6829
6830 2005-03-31 Kim F. Storm <storm@cua.dk>
6831
6832 * keyboard.c (Qmouse_fixup_help_message): New var.
6833 (syms_of_keyboard): Intern and staticpro it.
6834 (show_help_echo): Apply mouse-fixup-help-message to help string.
6835
6836 2005-03-30 Kim F. Storm <storm@cua.dk>
6837
6838 * xdisp.c (display_line): Allow multiple overlay arrows in window.
6839
6840 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
6841
6842 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
6843 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
6844 (Ffile_name_absolute_p): Use it.
6845 (search_embedded_absfilename): New fun, extracted from
6846 Fsubstitute_in_file_name. Use file_name_absolute_p.
6847 Free the pw data after use.
6848 (Fsubstitute_in_file_name): Use it.
6849 After cutting a prefix, re-check file-name-handler.
6850
6851 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
6852
6853 * w32term.h (x_output): Add focus_state.
6854
6855 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
6856 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
6857
6858 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
6859
6860 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
6861 Use Fexit_minibuffer.
6862 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
6863
6864 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
6865
6866 * dired.c (Ffile_attributes): Add a missing gcpro.
6867
6868 * alloc.c (make_number): The arg can be bigger than `int'.
6869 * lisp.h (make_number): Make prototype more precise.
6870
6871 * process.c, dired.c (Vfile_name_coding_system)
6872 (Vdefault_file_name_coding_system):
6873 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
6874 (Vdefault_file_name_coding_system): Remove unused declarations.
6875
6876 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6877
6878 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
6879 if it failed to pop up (Gnome "show pointer on ctrl" option makes
6880 menus fail to pop up).
6881
6882 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
6883
6884 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
6885 Just prepend a backslash without replacing the NBSP by an SPC.
6886
6887 2005-03-22 Kim F. Storm <storm@cua.dk>
6888
6889 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
6890 * dispextern.h (lookup_derived_face): Fix prototype.
6891 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
6892
6893 * xdisp.c (handle_single_display_spec): Derive left-fringe and
6894 right-fringe face from fringe face.
6895
6896 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
6897 Derive face from fringe face.
6898
6899 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6900
6901 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
6902
6903 2005-03-22 David Kastrup <dak@gnu.org>
6904
6905 * textprop.c (Fnext_char_property_change)
6906 (Fprevious_char_property_change): Allow marker as limit.
6907 (Fnext_single_char_property_change)
6908 (Fprevious_single_char_property_change): Check that limit is a
6909 number in strings.
6910 (Fnext_single_char_property_change): Coerce position to integer.
6911 (Fprevious_single_char_property_change): Same here.
6912
6913 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
6914
6915 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
6916
6917 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
6918
6919 * frame.c (Fignore_event): Remove.
6920 (syms_of_frame): Don't defsubr it.
6921
6922 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
6923 redundant `ignore-event'.
6924
6925 2005-03-19 Eli Zaretskii <eliz@gnu.org>
6926
6927 * unexec.c (write_segment, unexec): Move these functions to avoid
6928 forward references (which cause errors with "gcc -gcoff").
6929
6930 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6931
6932 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
6933 that it doesn't become "tooltip". The specbind is enough.
6934
6935 * xrdb.c (x_load_resources): Use different char *helv when I18N
6936 is present.
6937
6938 2005-03-17 Kenichi Handa <handa@m17n.org>
6939
6940 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
6941
6942 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6943
6944 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
6945 Use xic_create_fontsetname even for non-Motif menus.
6946 Don't forget to free the fontsetname.
6947
6948 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
6949
6950 2005-03-17 Richard M. Stallman <rms@gnu.org>
6951
6952 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
6953
6954 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
6955 (Fmake_symbolic_link): Use G to read the new file name.
6956
6957 * callint.c (Finteractive): Document G option.
6958 (Fcall_interactively): Implement G option.
6959
6960 * buffer.c (buffer_lisp_local_variables): New function,
6961 broken out from Fbuffer_local_variables.
6962 (clone_per_buffer_values): Use buffer_lisp_local_variables.
6963
6964 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6965
6966 * xfns.c (xic_create_fontsetname): Add `motif' argument.
6967 Always return a freshly allocated string.
6968 (xic_create_xfontset): Adjust call.
6969
6970 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
6971 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
6972 (dump_realized_face): Fix warning.
6973
6974 * emacs.c (Fkill_emacs): YAILOM.
6975
6976 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
6977
6978 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6979
6980 * mac.c (HASHKEY_TERMINAL): Remove.
6981 (HASHKEY_MAX_NID): New macro.
6982 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
6983 argument.
6984 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
6985 (xrm_create_database, xrm_q_put_resource)
6986 (xrm_merge_string_database, xrm_q_get_resource_1)
6987 (xrm_q_get_resource): Change resource database representation so
6988 that it may not use multiple hash tables for a single database.
6989 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
6990
6991 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
6992
6993 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
6994
6995 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
6996 locale-coding-system, as was already done for WINDOWSNT.
6997
6998 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
6999 translation for chars in the 0-255 range.
7000
7001 2005-03-16 Lute Kamstra <lute@gnu.org>
7002
7003 * floatfns.c (Ffloor): Doc fix.
7004
7005 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7006
7007 * mac.c: Include macterm.h instead of directly including Carbon.h.
7008 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
7009 (Qarray, Qdictionary): New variables.
7010 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
7011 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
7012 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
7013 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
7014 in callback for CFDictionaryApplyFunction.
7015 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
7016 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
7017 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
7018 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
7019 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
7020 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
7021 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
7022 (skip_white_space, parse_comment, parse_include_file)
7023 (parse_binding, parse_component, parse_resource_name, parse_value)
7024 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
7025 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
7026 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
7027 New functions.
7028
7029 * macfns.c (mac_get_rdb_resource): Remove function.
7030 (x_get_string_resource): Use xrm_get_resource.
7031
7032 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
7033
7034 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
7035 name_list_element.
7036 (mac_make_rdb): Create resource database from preferences and
7037 argument string.
7038 (mac_term_init): Save resource database to cddr part of
7039 name_list_element.
7040
7041 * macterm.h (xrm_merge_string_database, xrm_get_resource)
7042 (xrm_get_preference_database): Add externs.
7043 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
7044 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
7045 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
7046
7047 * process.c (init_process): Change `#ifdef DARWIN' to `#if
7048 defined (DARWIN) || defined (MAC_OSX)'
7049
7050 * s/darwin.h (DARWIN): Don't define.
7051
7052 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7053
7054 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
7055 Remove unused variables.
7056 (syms_of_macfns): Don't initialize them. Likewise for
7057 Qface_set_after_frame_default. Defvar and initialize
7058 Vx_window_horizontal_drag_shape.
7059 (x_set_mouse_color): Change mouse pointer shape.
7060 (mac_window) [!MAC_OSX]: Create root control.
7061 (Fx_create_frame): Remove initializations of mouse pointer shapes.
7062 (hourglass_started): New function (from xfns.c).
7063 (start_hourglass, cancel_hourglass): Put function body in #ifdef
7064 MAC_OSX.
7065 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
7066 indicator for each non-tooltip frame if needed, and show it.
7067 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
7068
7069 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
7070 Controls.h. Use ThemeCursor instead of CursHandle.
7071
7072 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
7073 Remove functions and declarations.
7074 (mac_set_colors): Take argument for saving background color.
7075 All callers changed.
7076 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
7077 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
7078 background color.
7079 (x_update_end, mac_do_track_drag): Don't reset background color.
7080 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
7081 Use SetThemeCursor.
7082 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
7083 indicator control to the upper-right corner of the window.
7084 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
7085 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
7086 (do_window_update): Update controls after updating content area.
7087 (mac_handle_window_event): Remove unused extern.
7088 (XTread_socket): Check both control handle and control part code
7089 to determine whether a scroll bar is clicked. Activate/deactivate
7090 root control instead of contained scroll bar controls.
7091 (make_mac_terminal_frame): Use ThemeCursor constants.
7092
7093 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
7094 New member hourglass_control.
7095 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
7096 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
7097
7098 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7099
7100 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
7101 coincides with that in Apple X11 except `clear', `enter' on
7102 laptops, and fn + `enter' on laptops.
7103
7104 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
7105
7106 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
7107 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
7108 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
7109
7110 * xfns.c (xic_defaut_fontset): New constant.
7111 (xic_create_fontsetname): New function.
7112 Extracted from create_frame_xic. Try to generate a slightly
7113 better fontset.
7114 (xic_create_xfontset): Use it.
7115 (create_frame_xic): Simplify.
7116
7117 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
7118
7119 * fileio.c (Fmake_symbolic_link): Fix last change.
7120
7121 2005-03-11 Richard M. Stallman <rms@gnu.org>
7122
7123 * fileio.c (Frename_file, Fadd_name_to_file)
7124 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
7125 expand the basename of FILE relative to it.
7126
7127 2005-03-11 Kenichi Handa <handa@m17n.org>
7128
7129 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
7130 before calling setup_coding_system so that autoloading of a coding
7131 system work.
7132
7133 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7134
7135 * xfns.c (hourglass_started): New function.
7136
7137 * dispextern.h: Declare hourglass_started.
7138
7139 * keyboard.c (Fexecute_extended_command): Restart hourglass
7140 after call to Fcompleting_read if already started.
7141
7142 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
7143 GTK main loop is entered in xterm.c, thus doing the redraw.
7144
7145 2005-03-10 Kim F. Storm <storm@cua.dk>
7146
7147 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
7148
7149 2005-03-08 Kenichi Handa <handa@m17n.org>
7150
7151 * frame.c (x_set_font): Call set_default_ascii_font if an
7152 available font is found.
7153
7154 * fontset.c (set_default_ascii_font): New function.
7155 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
7156
7157 * fontset.h (set_default_ascii_font): Extern it.
7158
7159 2005-03-07 Kim F. Storm <storm@cua.dk>
7160
7161 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
7162 (clear_image_cache_count): New var.
7163 (redisplay_internal): Don't clear face and image caches in the
7164 middle of redisplay; do it afterwards.
7165
7166 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
7167
7168 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
7169 is valid. If not, clear phys_cursor_on_p and return.
7170
7171 2005-03-07 Andreas Schwab <schwab@suse.de>
7172
7173 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
7174
7175 2005-03-06 Richard M. Stallman <rms@gnu.org>
7176
7177 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
7178
7179 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
7180 (Feval, Ffuncall): Use CHECK_CONS_LIST.
7181
7182 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
7183
7184 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
7185 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
7186
7187 2005-03-05 Juri Linkov <juri@jurta.org>
7188
7189 * emacs.c (USAGE1): Replace Info node name "command arguments"
7190 with "emacs invocation".
7191 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
7192 allow arguments `--color' and `MODE' to be separated by space.
7193 Add --no-blinking-cursor, -nbc.
7194 (standard_args): Add -nbc, --no-blinking-cursor.
7195
7196 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
7197
7198 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
7199 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
7200 * fileio.c (Fexpand_file_name) [VMS]:
7201 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
7202 * doc.c (munge_doc_file_name) [VMS]: Likewise.
7203 (Fsnarf_documentation): Call munge_doc_file_name.
7204
7205 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
7206
7207 * s/vms.h (FILE_SYSTEM_CASE): New macro.
7208 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
7209 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
7210
7211 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7212
7213 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
7214 defined (MAC_OSX) && defined (HAVE_CARBON)'.
7215
7216 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
7217
7218 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
7219 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
7220 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
7221 (mac_clear_font_name_table): Move extern to macterm.h.
7222
7223 * macfns.c (install_window_handler): Move extern to macterm.h.
7224 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
7225 valid. Don't check !NILP (dir) because it is already checked with
7226 CHECK_STRING.
7227 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
7228 specifying the default location and obtaining the selected filename.
7229
7230 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
7231
7232 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
7233 are included via Carbon.h.
7234
7235 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
7236 Define USE_CARBON_EVENTS to 1.
7237 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
7238 (x_free_frame_resources): Call remove_window_handler for
7239 non-tooltip windows.
7240 [TARGET_API_MAC_CARBON]: Don't include headers that are included
7241 via Carbon.h.
7242 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
7243 (mac_do_receive_dragUPP): New variables.
7244 (mac_handle_service_event, init_service_handler): Put declarations
7245 and definitions in #ifdef MAC_OSX.
7246 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
7247 drag-and-drop handler functions and register them.
7248 (remove_window_handler): New function.
7249 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
7250 Use fsspec_to_posix_pathname.
7251 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
7252 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
7253 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
7254 Set default cursors.
7255 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
7256 init_service_handler or init_quit_char_handler.
7257 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
7258
7259 * macterm.h (install_window_handler, remove_window_handler)
7260 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
7261 (mac_clear_font_name_table): New externs.
7262
7263 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
7264
7265 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
7266 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
7267 (Fexpand_file_name): Likewise.
7268
7269 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
7270
7271 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
7272 no longer special-case VMS. Add bogus return value.
7273
7274 2005-03-02 Kim F. Storm <storm@cua.dk>
7275
7276 * dispextern.h (XASSERTS): Define to 0 if not already defined.
7277 (xassert) [!XASSERTS]: Define dummy version.
7278
7279 2005-03-02 Kim F. Storm <storm@cua.dk>
7280
7281 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
7282 Reported by David Kastrup.
7283
7284 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
7285
7286 * xdisp.c (get_next_display_element): Fix control and escape
7287 glyph from display vector.
7288
7289 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
7290
7291 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
7292
7293 2005-02-27 Richard M. Stallman <rms@gnu.org>
7294
7295 * xdisp.c (fast_find_position): Rename END to BEG.
7296 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
7297
7298 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7299
7300 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
7301 gtk_window_resize and x_wm_set_size_hint.
7302
7303 2005-02-25 Kim F. Storm <storm@cua.dk>
7304
7305 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
7306
7307 * xdisp.c (init_from_display_pos): Don't read past end of
7308 it->overlay_strings array.
7309
7310 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
7311
7312 * buffer.c (syms_of_buffer): Fix typo.
7313
7314 2005-02-23 Lute Kamstra <lute@gnu.org>
7315
7316 * buffer.c (Foverlay_buffer): Doc fix.
7317
7318 2005-02-22 Kim F. Storm <storm@cua.dk>
7319
7320 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
7321 and symbol keys in alists and hash tables.
7322
7323 * xdisp.c (fast_find_position): Fix search for start of overlay.
7324
7325 2005-02-21 Kim F. Storm <storm@cua.dk>
7326
7327 * window.c (window_scroll_pixel_based): When scrolling backwards,
7328 handle partial visible line at end of window even when we hit PT.
7329
7330 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
7331
7332 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
7333
7334 2005-02-21 Kim F. Storm <storm@cua.dk>
7335
7336 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
7337 I think those asserts are bogus if buffer contains invisible text
7338 or images.
7339
7340 2005-02-21 David Kastrup <dak@gnu.org>
7341
7342 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
7343
7344 2005-02-20 Kim F. Storm <storm@cua.dk>
7345
7346 * xdisp.c (pos_visible_p): Be sure to move to the specified
7347 position. Always get the full ascent / descent of the
7348 corresponding row, to return reliable rtop and rbot values.
7349 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
7350 Must look one character back, as back_to_previous_line_start
7351 returns position after the newline.
7352 (move_it_vertically_backward): Fix heuristic for when to move further
7353 back in case line_height * 2/3 is larger than window height.
7354 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
7355 as it does not do anything anymore. Add arg current_matrix_p to
7356 use current matrix rather than desired matrix when set.
7357 (try_cursor_movement): Don't scroll to make cursor row fully
7358 visible if cursor didn't move. This avoids unexpected recentering
7359 in case of blinking cursor or accepting process output.
7360 Use current matrix to check cursor row visibility.
7361 (redisplay_window): Fix whether to recenter or move to top in case
7362 cursor line is taller than window height.
7363 (find_first_unchanged_at_end_row): Stop search if we reach a row
7364 which not enabled (instead of abort).
7365
7366 2005-02-18 Kim F. Storm <storm@cua.dk>
7367
7368 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
7369 to be nil in a :box attribute value list; customize prints that
7370 as lisp value when no box color is specified.
7371
7372 * .gdbinit (pitx, pit): Pretty print display iterator.
7373 (prowx, prow): Pretty print glyph row.
7374 (pcursorx, pcursor): Pretty print a window cursor.
7375 (pwinx, pwin): Pretty print struct window.
7376
7377 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
7378
7379 * alloc.c (BLOCK_BYTES): Harmless typo.
7380
7381 2005-02-17 Andreas Schwab <schwab@suse.de>
7382
7383 * xfns.c (hack_wm_protocols): Use correct type for last parameter
7384 of XGetWindowProperty to avoid aliasing issues.
7385 (Fx_window_property): Likewise.
7386
7387 * xselect.c (Fx_disown_selection_internal): Use union of struct
7388 input_event and struct selection_input_event to avoid aliasing issues.
7389
7390 * xterm.c (handle_one_xevent): Use union of struct input_event and
7391 struct selection_input_event to avoid aliasing issues.
7392 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
7393
7394 2005-02-17 Kim F. Storm <storm@cua.dk>
7395
7396 * dispextern.h (enum it_method): New enum.
7397 (GET_FROM_*): Its members.
7398 (struct it): Change member method from function pointer to enum.
7399
7400 * xdisp.c (check_it, init_from_display_pos, handle_stop)
7401 (setup_for_ellipsis, handle_single_display_spec)
7402 (handle_composition_prop, next_overlay_string)
7403 (get_overlay_strings, reseat_1, reseat_to_string)
7404 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
7405 (in_display_vector_p, display_line, get_next_display_element):
7406 Change it->method from function pointer to enum.
7407 (get_next_element): New array to map it->method to function.
7408 (get_next_display_element): Use it.
7409 (set_iterator_to_next): Use switch instead of if/else chain.
7410
7411 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7412
7413 * w32select.c: Summary: Thorough rework to implement Unicode
7414 clipboard operations and delayed rendering.
7415
7416 Drop last_clipboard_text and related code, keep track of
7417 ownership via clipboard_owner instead. Drop old #if0 sections.
7418
7419 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
7420 (clipboard_owner, modifying_clipboard, cfg_coding_system)
7421 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
7422 (current_coding_system, current_requires_encoding)
7423 (current_num_nls, current_clipboard_type, current_lcid):
7424 New static variables.
7425
7426 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
7427 (render, render_all, run_protected, lisp_error_handler)
7428 (owner_callback, create_owner, setup_config)
7429 (enum_locale_callback, cp_from_locale, coding_from_cp):
7430 New local functions.
7431
7432 (term_w32select, globals_of_w32select): New global functions.
7433
7434 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
7435 clipboard_owner instead. Use delayed rendering and provide
7436 all text formats. Provide CF_LOCALE if necessary.
7437
7438 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
7439 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
7440 available. Force DOS line-ends for decoding.
7441
7442 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
7443
7444 (syms_of_w32select): Init and register new variables.
7445
7446 * w32.h: Add prototypes for globals_of_w32select and
7447 term_w32select. Make the neighboring K&R declarations into
7448 prototypes, too.
7449
7450 * emacs.c: Include w32.h to get function prototypes.
7451 (main): Call globals_of_w32select.
7452
7453 * w32.c (term_ntproc): Call term_w32select.
7454
7455 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
7456
7457 2005-02-16 Kim F. Storm <storm@cua.dk>
7458
7459 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
7460 at end of display vector.
7461
7462 2005-02-15 Richard M. Stallman <rms@gnu.org>
7463
7464 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
7465 for mode and header lines.
7466
7467 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
7468
7469 * keymap.h (describe_map_tree): Change decl.
7470
7471 * keyboard.c (command_loop_1): Always use safe_run_hooks
7472 to run Qdeferred_action_function.
7473
7474 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
7475 (describe_map, describe_vector): Likewise. When it's 1,
7476 don't omit shadowed bindings, instead mark them as shadowed.
7477
7478 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
7479 for describe_map_tree. Pass 1 for MENTION_SHADOW.
7480
7481 * data.c (Fsetq_default): Allow no arg case.
7482
7483 2005-02-14 Kenichi Handa <handa@m17n.org>
7484
7485 * coding.c (encode_coding_string): Always return a unibyte string.
7486 If NOCOPY is nonzero and there's no need of encoding, make STR
7487 unibyte directly.
7488
7489 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
7490 multibyte string, signal an error instead of aborting.
7491
7492 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
7493
7494 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
7495
7496 2005-02-12 Kim F. Storm <storm@cua.dk>
7497
7498 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
7499
7500 2005-02-10 Kim F. Storm <storm@cua.dk>
7501
7502 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
7503 if it moves outside window or it doesn't display text.
7504
7505 2005-02-09 Kim F. Storm <storm@cua.dk>
7506
7507 * undo.c (Fprimitive_undo): Check that undo function does not
7508 switch buffer.
7509
7510 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7511
7512 * xselect.c (selection_data_to_lisp_data): For the special case
7513 type == XA_ATOM, data contains array of int, not array of Atom.
7514 (x_property_data_to_lisp, selection_data_to_lisp_data):
7515 Comment update: data must be array of int for format == 32.
7516
7517 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
7518
7519 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
7520
7521 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7522
7523 * xfns.c (Fx_change_window_property): Use long array when format is 32.
7524 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
7525 convert long array returned from XGetWindowProperty to an int array.
7526 (x_set_tool_bar_lines): Check that width and height is greater than
7527 zero before clearing area.
7528
7529 * xselect.c (x_reply_selection_request): Pass long array to
7530 XChangeProperty so that 64 bit longs are handeled correctly.
7531 (x_get_window_property): If format is 32 and long is bigger than 32
7532 bits convert data from XGetWindowProperty from long array to int array.
7533 (lisp_data_to_selection_data): When the input is a vector and the
7534 format is 32, allocate a long array even if long is bigger than 32 bits.
7535 (x_fill_property_data): Use char, short and long as the man page
7536 for XChangeProperty specifies. This way the data returned is OK for
7537 both 32 and 64 bit machines.
7538 (x_handle_dnd_message): Calculate size correctly even for 64 bit
7539 machines.
7540 (Fx_send_client_event): Undo change from 2005-02-05,
7541 x_fill_property_data now handles that case.
7542
7543 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
7544 reason for the approach in the code.
7545
7546 2005-02-07 Kim F. Storm <storm@cua.dk>
7547
7548 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
7549
7550 2005-02-06 Richard M. Stallman <rms@gnu.org>
7551
7552 * eval.c (Frun_hook_with_args)
7553 (Frun_hook_with_args_until_success)
7554 (Frun_hook_with_args_until_failure): Doc fixes.
7555
7556 2005-02-05 Andreas Schwab <schwab@suse.de>
7557
7558 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
7559
7560 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7561
7562 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
7563 the longs in a XClientMessageEvent correctly when long is 64 bits.
7564
7565 2005-02-05 Eli Zaretskii <eliz@gnu.org>
7566
7567 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
7568 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
7569
7570 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7571
7572 * xmenu.c (menubar_selection_callback): Force out GTK buffered
7573 events so the menu event comes after them. This is to prevent sit-for
7574 from exiting on buffered events directly after a menu selection,
7575 lisp code for Help => About Emacs uses sit-for.
7576
7577 * gtkutil.c (create_menus): Connect selection-done event instead of
7578 the deactivate event to deactivate_cb. This will make the last
7579 leave event come before the call to deactivate_cb, so the leave
7580 event does not make sit-for exit after a menu selection.
7581
7582 2005-02-03 Kim F. Storm <storm@cua.dk>
7583
7584 * dispnew.c (build_frame_matrix_from_leaf_window)
7585 [!GLYPH_DEBUG]: Fix xassert.
7586
7587 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
7588
7589 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7590
7591 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7592
7593 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
7594 the compiling OS version.
7595
7596 * macfns.c (x_create_tip_frame): Likewise.
7597
7598 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
7599
7600 2005-02-03 Richard M. Stallman <rms@gnu.org>
7601
7602 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
7603
7604 * xdisp.c (echo_area_display): Clear echo_message_buffer.
7605
7606 * buffer.c (Fbury_buffer): Doc fix.
7607
7608 2005-02-02 Steven Tamm <steventamm@mac.com>
7609
7610 * macfns.c (unwind_create_frame): Fix compile error due to
7611 xassert being uncondition, but predicate is.
7612 * dispnew.c (update_window): Fix compile error due to
7613 xassert being uncondition, but predicate is.
7614
7615 2005-02-02 Miles Bader <miles@gnu.org>
7616
7617 * dispextern.h (xassert): Enable unconditionally.
7618
7619 2005-02-02 Kim F. Storm <storm@cua.dk>
7620
7621 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
7622
7623 2005-02-02 Kenichi Handa <handa@m17n.org>
7624
7625 * casefiddle.c (casify_object): Enable changing characters of
7626 different byte length.
7627 (casify_region): Fix loop condition, args to replace_range_2, and
7628 update opoint_byte.
7629
7630 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
7631
7632 2005-02-01 Kim F. Storm <storm@cua.dk>
7633
7634 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
7635 stack before calling handle_display_prop.
7636
7637 2005-01-31 Kim F. Storm <storm@cua.dk>
7638
7639 * undo.c (Qapply): New lisp var.
7640 (syms_of_undo): Intern and staticpro it.
7641 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
7642 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
7643
7644 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
7645
7646 2005-01-30 Jesper Harder <harder@phys.au.dk>
7647
7648 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
7649 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7650
7651 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
7652
7653 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
7654 Increase value to 3 Meg.
7655
7656 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7657
7658 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
7659 button events are not received otherwise.
7660
7661 2005-01-29 Richard M. Stallman <rms@gnu.org>
7662
7663 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
7664
7665 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
7666
7667 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
7668
7669 * keymap.c (access_keymap): YAILOM.
7670
7671 2005-01-27 Kim F. Storm <storm@cua.dk>
7672
7673 * xdisp.c (get_phys_cursor_geometry): New function to calculate
7674 phys cursor position and size for hollow cursor. Position is
7675 aligned with get_glyph_string_clip_rect and ensures that a hollow
7676 cursor is shown, even when the actual glyph is not visible.
7677
7678 * dispextern.h (get_phys_cursor_geometry): Add prototype.
7679
7680 * xterm.c (x_clip_to_row): Ensure y >= 0.
7681 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
7682
7683 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
7684
7685 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
7686
7687 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
7688
7689 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
7690
7691 2005-01-27 Kim F. Storm <storm@cua.dk>
7692
7693 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
7694 glyph, even when row is only partially visible and actual cursor
7695 position is not visible.
7696
7697 2005-01-24 Richard M. Stallman <rms@gnu.org>
7698
7699 * xterm.c (x_error_quitter): No longer static, and moved after
7700 x_error_handler.
7701
7702 2005-01-24 Kim F. Storm <storm@cua.dk>
7703
7704 * xdisp.c (move_it_by_lines): If we move forward after going too
7705 far back, cancel move if end position is same as start position.
7706
7707 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7708
7709 * dispextern.h (struct glyph_string): New members clip_head and
7710 clip_tail.
7711
7712 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
7713 region to the area between clip_head and clip_tail.
7714 (draw_glyphs): Record the area that need to be actually redrawn to
7715 the new variables clip_head and clip_tail when there are
7716 overhangs. Set values of these variables to the corresponding
7717 members in struct glyph_string. Refine x coordinates for
7718 notice_overwritten_cursor using clip_head and clip_tail.
7719
7720 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
7721
7722 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
7723 QDTextBounds.
7724 (x_draw_glyph_string): Don't fill the background of the successor
7725 of a glyph with a right overhang if the successor will draw a cursor.
7726 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
7727 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
7728
7729 2005-01-24 Kim F. Storm <storm@cua.dk>
7730
7731 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
7732 direction if window height was smaller than next-screen-context-lines.
7733 Now always scroll at least one line in the requested direction.
7734 Ensure that we actually do scroll backwards when requested to do so.
7735
7736 * xdisp.c (redisplay_window): Only try to make cursor line fully
7737 visible once (to avoid redisplay loop).
7738
7739 2005-01-23 Kim F. Storm <storm@cua.dk>
7740
7741 * window.c (Fpos_visible_in_window_p): Simplify return value for
7742 partially visible rows.
7743 (window_scroll_pixel_based): Adapt to that change.
7744
7745 * window.c (window_scroll_pixel_based): Force moving to next line
7746 if scrolling doesn't move start point, e.g. if looking at tall image.
7747
7748 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
7749 Clear last_height before calling line_bottom_y to get real height.
7750 Fix calculation of y.
7751
7752 2005-01-22 Steven Tamm <steventamm@mac.com>
7753
7754 * s/darwin.h: Removed PTY_ITERATION from here.
7755 (DARWIN): Define.
7756
7757 * process.c (init_process): Default process-connection-type to
7758 nil on darwin 6 or less, t if it is 7 or higher. This way the
7759 broken pty behavior is still allowed on darwin 6 for interactive
7760 processes for people that know what they are doing.
7761
7762 2005-01-22 Kim F. Storm <storm@cua.dk>
7763
7764 * window.c (auto_window_vscroll_p): New boolean.
7765 (syms_of_window): DEFVAR_BOOL it.
7766 (Fpos_visible_in_window_p): Extend return value to include RTOP
7767 and RBOT values if FULLY is nil.
7768 (window_scroll_pixel_based): Adjust vscroll for partially visible
7769 rows if auto_window_vscroll_p is set.
7770 (Fset_window_vscroll): Do nothing if vscroll is not modified.
7771
7772 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
7773 to return number of partially invisible pixels at top and bottom
7774 of the dislay row at POS.
7775
7776 * lisp.h (pos_visible_p): Fix prototype.
7777
7778 2005-01-21 Richard M. Stallman <rms@gnu.org>
7779
7780 * fileio.c (Fcopy_file): Doc fix.
7781
7782 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7783
7784 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
7785 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
7786 start of function for older compilers.
7787
7788 2005-01-20 Richard M. Stallman <rms@gnu.org>
7789
7790 * editfns.c (Fmessage): If arg is "", return "" (as before).
7791
7792 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
7793
7794 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
7795 variable.
7796
7797 2005-01-20 Steven Tamm <steventamm@mac.com>
7798
7799 * editfns.c (Voperating_system_release): Add.
7800 (init_editfns): Assign new variable operating-system-release
7801 based on call to uname if available.
7802 (get_operating_system_release): Add function to
7803 allow c-level access to operating system release.
7804
7805 * config.h: Regenerated.
7806
7807 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
7808 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
7809 using ptys as '7'.
7810
7811 2005-01-20 Kim F. Storm <storm@cua.dk>
7812
7813 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
7814
7815 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
7816 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
7817
7818 * macterm.c (x_draw_glyph_string_box): Likewise.
7819
7820 * w32term.c (x_draw_glyph_string_box): Likewise.
7821
7822 * indent.c (Fvertical_motion): Temporarily disable selective display.
7823
7824 2005-01-19 Kim F. Storm <storm@cua.dk>
7825
7826 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
7827 image property.
7828
7829 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
7830
7831 2005-01-18 Kim F. Storm <storm@cua.dk>
7832
7833 * xdisp.c (fast_find_position): Backtrack to find first row if
7834 charpos is inside a display overlay that spans multiple lines.
7835
7836 2005-01-18 Kenichi Handa <handa@m17n.org>
7837
7838 * coding.c (decode_coding_iso2022): Translate invalid codes if
7839 translation-table is specified.
7840
7841 2005-01-18 Kim F. Storm <storm@cua.dk>
7842
7843 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
7844 change. If handle_display_prop indicates newline is replaced by
7845 image or text, move back to start of relevant overlay or interval
7846 and continue scan from there. Simplify.
7847
7848 2005-01-17 Kim F. Storm <storm@cua.dk>
7849
7850 * dispnew.c (mode_line_string, marginal_area_string):
7851 Fix off-by-one error in search for glyph.
7852
7853 2005-01-16 Kim F. Storm <storm@cua.dk>
7854
7855 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
7856
7857 2005-01-16 Steven Tamm <steventamm@mac.com>
7858
7859 * macterm.c (mac_to_x_fontname): Remove spurious argument.
7860
7861 2005-01-16 Andreas Schwab <schwab@suse.de>
7862
7863 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
7864
7865 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7866
7867 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
7868 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
7869
7870 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7871
7872 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
7873 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
7874 New flags for readable_events.
7875 (get_filtered_input_pending, readable_filtered_events): Remove.
7876 (tracking_off): Call readable_events and get_input_pending with
7877 flag READABLE_EVENTS_DO_TIMERS_NOW.
7878 (readable_events): Move code from old readable_filtered_events here,
7879 but check new READABLE_EVENTS_* in argument flags instead of previous
7880 two boolean arguments do_timers_now and filter_events.
7881 If we are doing mouse tracking and the mouse moved, return only if
7882 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
7883 (swallow_events): Call get_input_pending with flag
7884 READABLE_EVENTS_DO_TIMERS_NOW.
7885 (get_input_pending): Move code from old get_filtered_input_pending
7886 here. Replace boolean arguments do_timers_now, filter_events with
7887 flags, and pass flags to readable_events. Document new
7888 READABLE_EVENTS_* flags.
7889 (detect_input_pending_ignore_squeezables): New function.
7890 (detect_input_pending_run_timers): Call get_input_pending with flag
7891 READABLE_EVENTS_DO_TIMERS_NOW.
7892 (Finput_pending_p): Call get_input_pending with flags
7893 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
7894
7895 * dispnew.c (update_window, update_frame_1): Replace calls to
7896 detect_input_pending with detect_input_pending_ignore_squeezables
7897 so that redisplay is not paused if the event queue contains only
7898 mouse movements.
7899
7900 * lisp.h: Declare detect_input_pending_ignore_squeezables.
7901
7902 2005-01-15 Steven Tamm <steventamm@mac.com>
7903
7904 * macterm.c (Vmac_use_core_graphics): Declare variable for
7905 mac-allow-anti-aliasing.
7906 (syms_of_macterm): DEFVAR_LISP and initialize it.
7907 (mac_draw_string_common): Use core graphics text rendering if
7908 mac-allow-anti-aliasing is enabled.
7909
7910 * macfns.c (Fx_file_dialog): Save As dialog includes only the
7911 file name in the text box.
7912
7913 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7914
7915 * macfns.c (x_set_foreground_color, x_set_background_color):
7916 Sync with xfns.c.
7917 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
7918 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
7919 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
7920
7921 2005-01-14 Kim F. Storm <storm@cua.dk>
7922
7923 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
7924
7925 2005-01-13 Richard M. Stallman <rms@gnu.org>
7926
7927 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
7928 if Voverriding_terminal_local_map is non-nil.
7929
7930 * keyboard.c (syms_of_keyboard): Doc fix.
7931
7932 2005-01-13 Kim F. Storm <storm@cua.dk>
7933
7934 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
7935 (specify 0 for FACE instead). Reorder arg list. Doc fix.
7936
7937 2005-01-12 Richard M. Stallman <rms@gnu.org>
7938
7939 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
7940 face property for characters that don't specify one.
7941
7942 * fns.c (Frequire): Record in load-history unconditionally.
7943
7944 2005-01-10 Kim F. Storm <storm@cua.dk>
7945
7946 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
7947
7948 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
7949 Callers changed.
7950 Add support to merge with lisp face id too (if face_name is t).
7951
7952 * xdisp.c (get_next_display_element, next_element_from_display_vector):
7953 Don't lookup lface_id from display table glyphs here; instead use
7954 merge_faces to merge the lisp face id into current face.
7955
7956 2005-01-09 Kim F. Storm <storm@cua.dk>
7957
7958 * dispextern.h (struct it): New member dpvec_face_id.
7959 (merge_into_realized_face): Add prototype.
7960
7961 * xfaces.c (merge_into_realized_face): New function. Used to
7962 merge escape-glyph face or face from display table into current face.
7963
7964 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
7965 (syms_of_xdisp): DEFVAR_LISP it.
7966 (escape_glyph_face): Remove var.
7967 (redisplay_window): Don't initialize it.
7968 (setup_for_ellipsis, get_next_display_element):
7969 Set it->dpvec_face_id to -1.
7970 (get_next_display_element): Test Vshow_nonbreak_escape.
7971 Do not setup escape_glyph_face.
7972 Properly merge escape-glyph face or face from display table with
7973 current face for escape and control characters.
7974 Set it->dpvec_face_id to relevant face id instead of adding it to each
7975 element of display vector.
7976 (next_element_from_display_vector): If it->dpvec_face_id is set,
7977 use that instead of lface_id from glyph itself.
7978
7979 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7980
7981 * xterm.h (struct x_output): New member, toolbar_detached.
7982
7983 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
7984 38.
7985 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
7986 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
7987 (xg_create_tool_bar): Initialize toolbar_detached.
7988 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
7989 toolbar_detached is zero.
7990
7991 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7992
7993 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
7994 gtk_menu_popup if not for_click, so callbacks for the menu are called.
7995
7996 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
7997 (xg_tool_bar_callback, xg_tool_bar_help_callback)
7998 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
7999
8000 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8001 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
8002 XFLOAT_DATA to get extract number from Lisp object.
8003
8004 2005-01-07 Kim F. Storm <storm@cua.dk>
8005
8006 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
8007 Set stop_charpos to current charpos instead of 0.
8008
8009 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
8010
8011 * xdisp.c (Fformat_mode_line): First arg now required.
8012
8013 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8014
8015 * macterm.c (XLoadQueryFont): Correctly handle 0 size
8016 font widths that are returned from some Japanese fonts.
8017
8018 2005-01-06 Kim F. Storm <storm@cua.dk>
8019
8020 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
8021 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
8022 (destroy_fringe_bitmap): Set fringe_faces element to nil.
8023 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
8024 fringe_faces array and init elements to nil.
8025 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
8026 non-persistent face id.
8027 (mark_fringe_data): New function for GC.
8028
8029 * alloc.c (mark_fringe_data): Declare extern.
8030 (Fgarbage_collect): Call mark_fringe_data.
8031
8032 * alloc.c (overrun_check_free): Invalidate freed memory if
8033 XMALLOC_CLEAR_FREE_MEMORY is defined.
8034
8035 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8036
8037 * macfns.c: Include sys/param.h.
8038 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
8039 and function.
8040 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
8041 of filename string. Set event callback function when creating
8042 dialog boxes. Add code conversions for filenames. Don't dispose
8043 of apple event descriptor record if failed to create it.
8044
8045 * macterm.c: Include sys/param.h.
8046 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
8047 kEventWindowUpdate.
8048 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
8049 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
8050 of FSSpec from apple event descriptor record.
8051 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
8052 size of filename string.
8053 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
8054 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
8055 file dialog is in action.
8056 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
8057 Reject only when there are no filename items. Set background color
8058 before (un)highlighting the window below the dragged items.
8059 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
8060
8061 2005-01-05 Romain Francoise <romain@orebokech.com>
8062
8063 * term.c (encode_terminal_code): Fix buffer size computation.
8064
8065 2005-01-04 Richard M. Stallman <rms@gnu.org>
8066
8067 * xdisp.c (Fformat_mode_line): Doc fix.
8068
8069 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
8070
8071 * alloc.c (refill_memory_reserve): Move.
8072 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
8073 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
8074
8075 2005-01-03 Richard M. Stallman <rms@gnu.org>
8076
8077 * window.c (window_scroll_pixel_based): Don't correct preserve_y
8078 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
8079
8080 2005-01-03 Jason Rumney <jasonr@gnu.org>
8081
8082 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
8083 fontp->space_width to FONT_WIDTH so they are valid.
8084
8085 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
8086 average width. Set fontp->average_width and fontp->space_width to
8087 their appropriate values.
8088
8089 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
8090 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
8091 fontp->space_width.
8092
8093 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8094
8095 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
8096 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
8097 metrics for max and min bounds.
8098 (x_load_font): Correctly calculate average font width metrics.
8099
8100 2005-01-02 Richard M. Stallman <rms@gnu.org>
8101
8102 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
8103
8104 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8105
8106 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
8107
8108 2004-12-31 Richard M. Stallman <rms@gnu.org>
8109
8110 * xdisp.c (setup_for_ellipsis, get_next_display_element):
8111 Set it->ellipsis_p to 1 or 0.
8112 (display_line): Record whether row ends in mid-ellipsis.
8113 (set_cursor_from_row): If ends in ellipsis, find start of it.
8114 (cursor_row_p): If PT's at the end of the ellipsis the row
8115 ends within, don't display cursor on this row.
8116
8117 * dispextern.h (struct it): New element ellipsis_p.
8118 (struct glyph_row): New element ends_in_ellipsis_p.
8119
8120 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
8121 position if we're reading from something other than the buffer.
8122
8123 * window.c (window_scroll_pixel_based): Only look at
8124 Vscroll_preserve_screen_position if the old PT can't be kept.
8125 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
8126
8127 2004-12-30 Kim F. Storm <storm@cua.dk>
8128
8129 * xdisp.c (get_line_height_property): New function extracted from
8130 original calc_line_height_property.
8131 (calc_line_height_property): Rework. Handle t and (nil . ratio).
8132 (x_produce_glyphs): Use them to handle line-height and
8133 line-spacing according to new height spec.
8134 (Qtotal): Remove.
8135 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
8136
8137 2004-12-30 Kenichi Handa <handa@m17n.org>
8138
8139 * fileio.c (Finsert_file_contents): Don't use
8140 current_buffer->buffer_file_coding_system even if REPLACE is
8141 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
8142
8143 * fontset.h (struct font_info): New members space_width and
8144 average_width.
8145
8146 * frame.h (struct frame): New member space_width.
8147 (FRAME_SPACE_WIDTH): New macro.
8148
8149 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
8150
8151 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
8152 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
8153 fontp->space_width.
8154 (x_load_font): Calculate fontp->space_width and fontp->average_width.
8155 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
8156
8157 * xdisp.c (x_produce_glyphs): Calculate tab width by
8158 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
8159
8160 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
8161
8162 * macterm.c (SelectionRange): Add Xcode position apple event struct.
8163 (do_ae_open_documents): Handle Xcode-style file position open events.
8164
8165 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
8166
8167 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
8168
8169 2004-12-29 Richard M. Stallman <rms@gnu.org>
8170
8171 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
8172
8173 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8174
8175 * macfns.c (install_window_handler): Modify extern to return OSErr
8176 value.
8177 (mac_window): Handle return value of install_window_handler.
8178
8179 * macterm.c (reflect_byte): Remove function.
8180 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
8181 Lookup table instead.
8182 (mac_do_font_lists): Simplify calculation of the longest
8183 nonspecial string.
8184 (init_mac_drag_n_drop): Remove function and declaration.
8185 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
8186 init_mac_drag_n_drop.
8187 (mac_do_track_drag): New function and declaration.
8188 (install_window_handler): Return OSErr value.
8189 (install_window_handler) [TARGET_API_MAC_CARBON]:
8190 Register handlers for tracking/receiving drag-and-drop items.
8191 (do_ae_open_documents): Generate unibyte strings for filenames.
8192 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
8193 Reject only non-filename items. Set event modifiers, and return value.
8194
8195 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
8196
8197 * coding.c (decode_coding): Fix previous change.
8198
8199 2004-12-28 Richard M. Stallman <rms@gnu.org>
8200
8201 * xdisp.c (back_to_previous_visible_line_start):
8202 Don't call handle_display_prop.
8203
8204 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
8205
8206 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
8207 (decode_coding_emacs_mule, encode_coding_emacs_mule)
8208 (decode_coding_iso2022, encode_designation_at_bol)
8209 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
8210 (decode_coding): Constify arguments and local vars.
8211
8212 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8213
8214 * xmenu.c (popup_get_selection): Only pop down dialogs
8215 on C-g and Escape.
8216 (popup_get_selection): Remove parameter down_on_keypress.
8217 (create_and_show_popup_menu, create_and_show_dialog):
8218 Remove parameter down_on_keypress to popup_get_selection.
8219
8220 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8221
8222 * dispextern.h: Change HAVE_CARBON to MAC_OS.
8223 (struct glyph_string): Likewise.
8224
8225 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
8226 mac_initialize.
8227
8228 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
8229 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
8230
8231 * fns.c (vector): Change MAC_OSX to MAC_OS.
8232
8233 * frame.c (x_set_frame_parameters, x_report_frame_params)
8234 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
8235 (x_set_border_width, Vdefault_frame_scroll_bars):
8236 Change HAVE_CARBON to MAC_OS.
8237
8238 * image.c [MAC_OS]: Include sys/stat.h.
8239 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
8240 QuickTimeComponents.h.
8241
8242 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
8243 [!MAC_OSX] (select): Use mac_wait_next_event.
8244 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
8245 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
8246 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
8247 (mac_clear_font_name_table): Add extern.
8248 (Fmac_clear_font_name_table): New defun.
8249 (syms_of_mac): Defsubr it.
8250 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
8251 [MAC_OSX] (select_and_poll_event): New function.
8252 [MAC_OSX] (sys_select): Use it.
8253 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
8254 [MAC_OSX && SELECT_USE_CFSOCKET]
8255 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
8256 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
8257 RunLoop for simultaneously monitoring two kinds of inputs, window
8258 events and process outputs, without periodically polling.
8259
8260 * macfns.c (mac_initialized): Remove extern.
8261 (stricmp): Put in #if 0. All callers changed to use xstricmp in
8262 xfaces.c.
8263 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
8264 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
8265 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
8266 (mac_get_rdb_resource): New function (from w32reg.c).
8267 (x_get_string_resource): Use it.
8268 (install_window_handler): Add extern.
8269 (mac_window): New function.
8270 (Fx_create_frame): Use it instead of make_mac_frame.
8271 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
8272 (Fx_open_connection, Fx_close_connection): New defuns.
8273 (syms_of_macfns): Defsubr them.
8274 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
8275 Add kWindowNoUpdatesAttribute to the window attribute.
8276 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
8277 (x_create_tip_frame): Don't call ShowWindow.
8278 (Fx_show_tip): Call ShowWindow.
8279 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
8280 TARGET_API_MAC_CARBON'.
8281 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
8282 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
8283
8284 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
8285 (Window): Typedef to WindowPtr and move outside `#if
8286 TARGET_API_MAC_CARBON'.
8287 (XSizeHints): New struct.
8288
8289 * macterm.c (x_update_begin, x_update_end)
8290 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
8291 frame.
8292 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
8293 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
8294 (construct_mouse_click): Put in #if 0.
8295 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
8296 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
8297 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
8298 (activate_scroll_bars, deactivate_scroll_bars)
8299 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
8300 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
8301 if the position is neither user-specified nor program-specified.
8302 (x_free_frame_resources): Free size_hints.
8303 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
8304 (mac_clear_font_name_table): New function.
8305 (mac_do_list_fonts): Initialize font_name_table if needed.
8306 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
8307 around mac_do_list_fonts.
8308 (mac_unload_font): New function.
8309 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
8310 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
8311 and definitions with #if TARGET_API_MAC_CARBON.
8312 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
8313 (install_window_handler): Add decl.
8314 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
8315 window. Use UpdateControls. Get the rectangle that should be
8316 updated and restrict the target of expose_frame to it.
8317 (do_grow_window): Set minimum height/width according to size_hints.
8318 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
8319 (do_zoom_window): Don't use x_set_window_size.
8320 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
8321 (install_window_handler): New function.
8322 [!USE_CARBON_EVENTS] (mouse_region): New variable.
8323 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
8324 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
8325 GetEventDispatcherTarget inside BLOCK_INPUT.
8326 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
8327 Update mouse_region when mouse is moved.
8328 (make_mac_frame): Remove.
8329 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
8330 Initialize mouse pointer shapes. Change values of f->left_pos and
8331 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
8332 Don't call ShowWindow.
8333 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
8334 Vinvocation_name and Vsystem_name.
8335 (mac_make_rdb): New function (from w32term.c).
8336 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
8337 already been opened. Don't pass argument to
8338 mac_initialize_display_info. Don't set dpyinfo->height/width.
8339 Add entries to x_display_list and x_display_name_list.
8340 (x_delete_display): New function.
8341 (mac_initialize): Don't call mac_initialize_display_info.
8342 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
8343
8344 * macterm.h (check_mac): Add extern.
8345 (struct mac_output): New member size_hints.
8346 (FRAME_SIZE_HINTS): New macro.
8347 (mac_unload_font): Add extern.
8348
8349 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
8350
8351 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
8352
8353 2004-12-27 Richard M. Stallman <rms@gnu.org>
8354
8355 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
8356 (syms_of_buffer): Don't defsubr it.
8357
8358 * process.c (list_processes_1): Set undo_list instead
8359 of calling Fbuffer_disable_undo.
8360
8361 * xdisp.c (single_display_spec_string_p): Rename from
8362 single_display_prop_string_p.
8363 (single_display_spec_intangible_p): Rename from
8364 single_display_prop_intangible_p.
8365 (handle_single_display_spec): Rename from handle_single_display_prop.
8366 Rewritten to be easier to understand.
8367
8368 Change in load-history format. Functions now get (defun . NAME),
8369 and variables get just NAME.
8370
8371 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
8372
8373 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
8374 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
8375 (Qdefvar): Var deleted.
8376 (syms_of_eval): Don't initialze it.
8377
8378 * lread.c (syms_of_lread) <load-history>: Doc fix.
8379
8380 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8381
8382 * xmenu.c (popup_get_selection): Pop down on C-g.
8383 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
8384 pops down menu on C-g.
8385 (xdialog_show): If dialog popped down and no button in the dialog was
8386 pushed, call Fsignal to quit.
8387 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
8388 Fsignal to quit.
8389
8390 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
8391
8392 * gtkutil.c (xg_initialize): Install bindings for C-g so that
8393 dialogs and menus pop down.
8394
8395 2004-12-27 Kenichi Handa <handa@m17n.org>
8396
8397 * coding.c (code_convert_region): Fix calculation of `ratio'.
8398
8399 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8400
8401 * gtkutil.c (update_frame_tool_bar): Make the value of
8402 tool-bar-button-margin control margins of images in tool bar.
8403
8404 * alloc.c (check_depth): New variable.
8405 (overrun_check_malloc, overrun_check_realloc): Only add
8406 overhead and write check pattern if check_depth is 1 (to handle
8407 recursive calls). Increase/decrease check_depth in entry/exit.
8408 (overrun_check_free): Only check for overhead if check_depth is 1.
8409 Increase/decrease check_depth in entry/exit.
8410
8411 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8412
8413 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
8414 before touching input_available_clear_time, to avoid accessing it
8415 from multiple threads.
8416
8417 2004-12-23 Jason Rumney <jasonr@gnu.org>
8418
8419 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
8420 of JPEG library.
8421
8422 2004-12-22 Richard M. Stallman <rms@gnu.org>
8423
8424 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
8425
8426 * lisp.h (Vundo_outer_limit): Fix decl.
8427
8428 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
8429 Uses changed.
8430 (syms_of_undo): Initialize appropriately.
8431 (truncate_undo_list): If it's nil, there's no limit.
8432
8433 2004-12-22 Kenichi Handa <handa@m17n.org>
8434
8435 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
8436
8437 2004-12-21 Richard M. Stallman <rms@gnu.org>
8438
8439 * eval.c (unwind_to_catch): Clear immediate_quit.
8440
8441 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
8442 specially as `\ ' and `\-'.
8443
8444 * keyboard.c (kbd_buffer_store_event_hold):
8445 In the code for while-no-input, handle immediate_quit.
8446
8447 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
8448 Call that at the very start.
8449 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
8450 (syms_of_alloc): Don't define undo-limit,
8451 undo-strong-limit and undo-outer-limit here.
8452
8453 * undo.c (truncate_undo_list): Return void.
8454 Take just one argument, the buffer.
8455 Make it current, and inhibit recursive GC.
8456 Access and update the undo list directly; return void.
8457 Refer to the undo...limit variables directly.
8458 Test undo_outer_limit only after counting the whole current command.
8459 When it's exceeded, call the function in undo-outer-limit-function.
8460 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
8461 (Vundo_outer_limit_function): New variable.
8462 (syms_of_undo): Define undo-limit, undo-strong-limit
8463 and undo-outer-limit here, and undo-outer-limit-function.
8464 Doc fixes.
8465
8466 * lisp.h (truncate_undo_list): Update decl.
8467
8468 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
8469
8470 * fileio.c (Fread_file_name): Delete duplicates in
8471 file-name-history when history_delete_duplicates is true.
8472
8473 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8474
8475 * macterm.c (mac_do_list_fonts): Fix memory leak
8476
8477 2004-12-20 Richard M. Stallman <rms@gnu.org>
8478
8479 * regex.c (re_match_2_internal) <symend, wordend>:
8480 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
8481
8482 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8483
8484 * macterm.c (endif, x_font_name_to_mac_font_name):
8485 Use maccentraleurroman instead of maccentraleuropean
8486 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
8487 quickly finding a specific font without needing regexps.
8488
8489 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8490
8491 * syssignal.h: Declare main_thread.
8492 (SIGNAL_THREAD_CHECK): New macro.
8493
8494 * keyboard.c (input_available_signal): Move thread checking code
8495 to macro SIGNAL_THREAD_CHECK and call that macro.
8496 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
8497
8498 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
8499
8500 * emacs.c: Define main_thread.
8501 (main): Initialize main_thread.
8502 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
8503 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
8504
8505 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
8506
8507 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
8508
8509 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
8510
8511 * process.c (send_process_trap, sigchld_handler):
8512 Call SIGNAL_THREAD_CHECK.
8513
8514 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
8515
8516 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
8517
8518 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
8519 returning when xg_ignore_gtk_scrollbar is true.
8520
8521 2004-12-14 Kim F. Storm <storm@cua.dk>
8522
8523 * keyboard.c (read_char): Save and restore echo_string when
8524 handling input method.
8525
8526 2004-12-13 Richard M. Stallman <rms@gnu.org>
8527
8528 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
8529
8530 * keyboard.c (Vthrow_on_input): New variable.
8531 (syms_of_keyboard): Defvar and initialize it.
8532 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
8533
8534 * lisp.h (QUIT): Check for Vthrow_on_input.
8535 (Vthrow_on_input): Declare it.
8536
8537 2004-12-13 Kim F. Storm <storm@cua.dk>
8538
8539 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
8540 vector.
8541
8542 2004-12-12 Richard M. Stallman <rms@gnu.org>
8543
8544 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
8545
8546 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
8547 (Ftry_completion): Really use outer `zero'; eliminate inner one.
8548
8549 2004-12-12 Kenichi Handa <handa@m17n.org>
8550
8551 * term.c (encode_terminal_code): Fix previous change.
8552
8553 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
8554
8555 * keyboard.c (handle_async_input): Remove pthread mutex handling.
8556 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
8557
8558 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
8559 in macro arguments.
8560
8561 * minibuf.c (Ftry_completion, Fall_completions): Don't use
8562 XFASTINT blindly.
8563
8564 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
8565
8566 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8567
8568 * w32term.c (x_calc_absolute_position): Remove calculation of
8569 difference between inner and outer window. Don't subtract difference
8570 for left and top calculations.
8571
8572 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
8573 for left and top calculations. Remove call to x_real_positions.
8574 [Bug report by Drew Adams in November]
8575 (x_check_expected_move): Do not set change_gravity to 1 when calling
8576 x_set_offset.
8577
8578 2004-12-08 Richard M. Stallman <rms@gnu.org>
8579
8580 * xdisp.c (get_next_display_element): Use `escape-glyph' for
8581 control chars and escaped octal codes.
8582 (Qescape_glyph): New variable.
8583 (syms_of_xdisp): Initialize it.
8584 (escape_glyph_face): New variable.
8585 (redisplay_window): Initialize it.
8586
8587 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
8588
8589 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
8590 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
8591
8592 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8593
8594 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
8595 reset_malloc_hooks.
8596
8597 * keyboard.c (handle_async_input, input_available_signal):
8598 Add ! defined (SYSTEM_MALLOC) around thread code.
8599
8600 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
8601
8602 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
8603
8604 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
8605
8606 * config.in: Regenerate.
8607
8608 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8609
8610 * xmenu.c (Fx_popup_menu): Correct documentation about position.
8611 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
8612 if not given by a mouse click to correspond with x-popup-menu
8613 documentation.
8614
8615 * config.in: Regenerate.
8616
8617 * gtkutil.c: Include signal.h and syssignal.h.
8618 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
8619
8620 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
8621 new variables main_thread and alloc_mutex,
8622 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
8623 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
8624 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
8625 (UN)BLOCK_INPUT.
8626 (emacs_blocked_free, emacs_blocked_malloc)
8627 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
8628 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
8629 (reset_malloc_hooks): New function.
8630
8631 * lisp.h: Declare reset_malloc_hooks.
8632
8633 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
8634
8635 * keyboard.c: Conditionally include pthread.h
8636 (handle_async_input, input_available_signalt): If not in the main
8637 thread, block signal, send signal to main thread and return.
8638
8639 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
8640 Set current folder in file chooser if default_filename is a directory.
8641
8642 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
8643
8644 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
8645 Remove redundant correctness checks.
8646 (regex_compile): Fix up error codes for \{..\} expressions.
8647
8648 2004-12-05 Richard M. Stallman <rms@gnu.org>
8649
8650 * regex.c (regex_compile): Fix end-of-pattern case for space.
8651
8652 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8653
8654 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
8655 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
8656 crashes with invalid characters.
8657 * macmenu.c (add_menu_item): Use it.
8658 * image.c (image_load_quartz2d): Likewise.
8659 * macfns.c (x_set_name, x_set_title): Likewise.
8660 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
8661 creating them each time for labels.
8662
8663 2004-12-02 Richard M. Stallman <rms@gnu.org>
8664
8665 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
8666 don't use it here.
8667
8668 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
8669 (interactive_p): Skip Scalled_interactively_p frames
8670 like Sinteractive_p frames.
8671 (unwind_to_catch): Clear handling_signal.
8672
8673 * data.c (Fmake_variable_buffer_local): Doc fix.
8674 (Fmake_local_variable): Doc fix.
8675
8676 * insdel.c (insert_from_string_before_markers)
8677 (insert_from_string): Don't modify buffer on empty insertion.
8678
8679 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
8680
8681 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8682
8683 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
8684 menu text as UTF8 fails.
8685
8686 2004-12-01 Kim F. Storm <storm@cua.dk>
8687
8688 * alloc.c: Add commentary for last change.
8689 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
8690 sizeof(size_t) != 4.
8691 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
8692 Use them. Also clear header and trailer of freed memory.
8693 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
8694 (string_overrun_cookie): Rename from string_overrun_pattern.
8695 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
8696
8697 2004-12-01 Andreas Schwab <schwab@suse.de>
8698
8699 * lisp.h: Declare string_to_multibyte.
8700
8701 2004-12-01 Kenichi Handa <handa@m17n.org>
8702
8703 * w32console.c (w32con_write_glyphs): Decide coding here.
8704 Adjusted for the change of encode_terminal_code.
8705
8706 * term.c (encode_terminal_code): Don't make it "static".
8707
8708 2004-11-30 Kenichi Handa <handa@m17n.org>
8709
8710 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
8711 (encode_terminal_code): Argument changed. Encode all
8712 characters at once, and return a pointer to the result of encoding.
8713 (write_glyphs): Decide coding here. Adjusted for the above change.
8714 (insert_glyphs): Likewise.
8715 (term_init): Initialize encode_terminal_bufsize to 0.
8716
8717 * coding.c (Vcode_conversion_workbuf_name): New variable.
8718 (syms_of_coding): Initialize and staticpro it.
8719 (set_conversion_work_buffer): New function.
8720 (run_pre_post_conversion_on_str): Use it.
8721 (run_pre_write_conversin_on_c_str): New function.
8722
8723 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
8724
8725 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8726
8727 * keyboard.c: Don't undef SIGIO
8728 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
8729 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
8730 (macfns.o): Don't depend on ccl.h.
8731 * macfns.c (mac_frame_parm_handlers): Set handlers for
8732 Qleft_fringe and Qright_fringe.
8733 * macterm.c (mac_fill_rectangle_to_pixmap)
8734 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
8735 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
8736 Put in #if 0.
8737 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
8738 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
8739 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
8740 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
8741 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
8742 XDrawImageString. Always draw background and foreground separately.
8743 (x_draw_image_foreground): Use clipping instead of computing the
8744 intersection rectangle.
8745 (x_draw_image_glyph_string): Don't draw an image with mask to a
8746 pixmap.
8747 (x_redisplay_interface): Set flush_display_optional member to 0.
8748 (XTread_socket): Correctly reset the TEConverter
8749 object.
8750
8751 2004-11-30 Kim F. Storm <storm@cua.dk>
8752
8753 * lisp.h: New defines to enable buffer overrun checking.
8754 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
8755 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
8756
8757 * alloc.c: Add more checks for buffer overruns.
8758 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
8759 xmalloc_overrun_check_trailer, overrun_check_malloc)
8760 overrun_check_realloc, overrun_check_free): Add.
8761 (GC_STRING_EXTRA, string_overrun_pattern): Add.
8762 (check_sblock, allocate_string_data, compact_small_strings):
8763 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
8764 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
8765 (check_string_free_list): Add.
8766 (allocate_string, sweep_strings): Call check_string_free_list.
8767
8768 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
8769 XMALLOC_OVERRUN_CHECK to avoid crash during load.
8770
8771 2004-11-29 Kim F. Storm <storm@cua.dk>
8772
8773 * fns.c (concat): Use SAFE_ALLOCA.
8774
8775 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
8776
8777 * sysdep.c (emacs_write): Don't use QUIT.
8778
8779 2004-11-29 Kenichi Handa <handa@m17n.org>
8780
8781 * buffer.c (init_buffer): Set current_buffer->directory to a
8782 multibyte string made by string_to_multibyte.
8783
8784 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
8785
8786 2004-11-27 Andreas Schwab <schwab@suse.de>
8787
8788 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
8789
8790 * s/gnu-linux.h: Enable no-op gcpros on ia64.
8791 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
8792
8793 * filelock.c (lock_file_1): Call get_boot_time early.
8794 Increase buffer size.
8795
8796 2004-11-27 Eli Zaretskii <eliz@gnu.org>
8797
8798 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
8799 is not defined.
8800
8801 2004-11-27 Kim F. Storm <storm@cua.dk>
8802
8803 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
8804 marker out of doc string.
8805
8806 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
8807
8808 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
8809 which was not mentioned in the log.
8810
8811 2004-11-26 Kim F. Storm <storm@cua.dk>
8812
8813 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
8814 angle bitmaps at top/bottom line.
8815
8816 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
8817 set it when it->method is set to next_element_from_display_vector.
8818 (setup_for_ellipsis): Add LEN argument. Callers changed.
8819 Set it->saved_face_id.
8820 (get_next_display_element): Use loop instead of recursion.
8821 Set it->saved_face_id. Combine duplicate code for ctr chars.
8822 (next_element_from_display_vector): Do not set it->saved_face_id.
8823 (next_element_from_ellipsis): Use setup_for_ellipsis.
8824
8825 2004-11-26 Eli Zaretskii <eliz@gnu.org>
8826
8827 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
8828 prevent compiler warnings.
8829
8830 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
8831
8832 * keyboard.c (command_loop_1): Print a message describing the key
8833 the user just pressed when this key has no binding.
8834
8835 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
8836 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
8837
8838 * lread.c (readchar): Check QUIT when `getc' is interrupted.
8839
8840 2004-11-24 Richard M. Stallman <rms@gnu.org>
8841
8842 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
8843
8844 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
8845
8846 2004-11-24 Kim F. Storm <storm@cua.dk>
8847
8848 * xdisp.c (move_it_in_display_line_to, display_line):
8849 Restore saved_face_id also when truncate-lines or hscrolled.
8850
8851 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8852
8853 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
8854 x-use-old-gtk-file-dialog.
8855
8856 * xfns.c: Define x_use_old_gtk_file_dialog.
8857 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
8858 outside ifdef USE_GTK.
8859
8860 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
8861
8862 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
8863 Don't use XFASTINT blindly.
8864
8865 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
8866
8867 * indent.c (skip_invisible): Avoid non-idempotent side-effects
8868 in macro arguments.
8869
8870 * keymap.c (Flookup_key): Check INTEGERP before XINT.
8871
8872 * lread.c (oblookup): Don't use XFASTINT blindly.
8873
8874 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
8875 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
8876
8877 2004-11-23 Kim F. Storm <storm@cua.dk>
8878
8879 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
8880 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
8881
8882 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
8883 signal_p is zero and face name is unknown.
8884 (Fx_list_fonts): Don't signal error in lookup_named_face.
8885 (Fface_font): Signal error in lookup_named_face.
8886 (ascii_face_of_lisp_face): Likewise.
8887
8888 * dispextern.h (lookup_named_face): Fix prototype.
8889
8890 * xdisp.c (handle_single_display_prop): Don't signal error in
8891 lookup_named_face for unknown fringe face name.
8892 (highlight_trailing_whitespace): Don't signal error in
8893 lookup_named_face if trailing-whitespace face unknown.
8894 (calc_line_height_property): Don't signal error in
8895 lookup_named_face if specified face name is unknown.
8896
8897 * fringe.c (update_window_fringes): Show top row indicator if
8898 window has header-line. Don't show arrow at bob and eob
8899 if the boundary indicators are not used.
8900 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
8901
8902 * window.c (set_window_buffer): Clear display_error_modiff.
8903
8904 2004-11-22 Kim F. Storm <storm@cua.dk>
8905
8906 * fringe.c (update_window_fringes): Provide sensible fall-back
8907 value for non-nil indicate-buffer-boundaries setting.
8908
8909 2004-11-22 Markus Rost <rost@ias.edu>
8910
8911 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
8912
8913 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
8914
8915 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
8916
8917 2004-11-21 Kim F. Storm <storm@cua.dk>
8918
8919 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
8920
8921 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
8922 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
8923
8924 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
8925 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
8926
8927 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
8928 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
8929
8930 * xdisp.c (move_it_in_display_line_to, display_line):
8931 Restore saved_face_id if overflow-newline-into-fringe is enabled and
8932 line is continued before or in middle of element from display vector.
8933
8934 * indent.c (Fvertical_motion): Fix last change. Use another
8935 method to detect if iterator moved too far ahead after reseat.
8936
8937 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
8938 expand matrix width for overflow in zero-width area.
8939 (append_glyph, append_composite_glyph, produce_image_glyph)
8940 (append_stretch_glyph): Use it to avoid loop in redisplay.
8941 (note_mode_line_or_margin_highlight): Don't let help-echo from
8942 string override help-echo from image map.
8943
8944 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
8945
8946 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
8947 * callint.c (Fcall_interactively): Ditto.
8948
8949 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
8950
8951 * minibuf.c (Fminibuffer_complete_and_exit):
8952 Fixup the case of the completed value, for case-indep completion.
8953
8954 2004-11-20 Richard M. Stallman <rms@gnu.org>
8955
8956 * lisp.h (Fread_from_minibuffer): Add arg in decl.
8957
8958 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
8959 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
8960
8961 * search.c (Vsearch_spaces_regexp):
8962 Rename from Vsearch_whitespace_regexp. All uses changed.
8963
8964 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
8965
8966 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
8967
8968 2004-11-19 Richard M. Stallman <rms@gnu.org>
8969
8970 * search.c (Vsearch_whitespace_regexp): New variable.
8971 (syms_of_search): Defvar it.
8972 (compile_pattern_1): Call re_set_whitespace_regexp with it.
8973 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
8974 is non-nil.
8975 (struct regexp_cache): New element whitespace_regexp.
8976 (syms_of_search): Initialize whitespace_regexp elements.
8977 (compile_pattern): Compare whitespace_regexp elements.
8978 (compile_pattern_1): Set whitespace_regexp elements.
8979
8980 * regex.c (regex_compile): Substitute whitespace_regexp
8981 for spaces, if it is nonzero.
8982 (whitespace_regexp): New variable.
8983 (re_set_whitespace_regexp): New function.
8984
8985 2004-11-19 Kim F. Storm <storm@cua.dk>
8986
8987 * indent.c (Fvertical_motion): Fix last change.
8988
8989 2004-11-18 Kim F. Storm <storm@cua.dk>
8990
8991 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
8992 Instead, move back again if reseating moves too far ahead.
8993
8994 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
8995
8996 * xdisp.c (message3): Call clear_message.
8997
8998 2004-11-17 Kim F. Storm <storm@cua.dk>
8999
9000 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
9001
9002 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9003
9004 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
9005
9006 * xmenu.c (x_menu_in_use): Remove.
9007 (x_menu_set_in_use): Also set popup_activated_flag.
9008
9009 * xfns.c (Fx_file_dialog): Call popup_activated instead of
9010 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
9011
9012 * xterm.h (x_menu_in_use): Remove.
9013
9014 2004-11-16 Richard M. Stallman <rms@gnu.org>
9015
9016 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
9017 Use map-keymap-internal to implement that.
9018
9019 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
9020
9021 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
9022
9023 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
9024 a window before using XWINDOW.
9025
9026 * window.c (make_window, Fselect_window, make_dummy_parent)
9027 (save_window_save):
9028 * frame.c (make_frame):
9029 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
9030
9031 * lisp.h (NILP): Use EQ rather than XFASTINT.
9032
9033 2004-11-16 Kim F. Storm <storm@cua.dk>
9034
9035 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
9036
9037 * indent.c (Fvertical_motion): Fix last change. Only reseat when
9038 moving backwards.
9039
9040 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
9041
9042 * dispextern.h: Extern reseat_at_previous_visible_line_start.
9043
9044 2004-11-16 Kenichi Handa <handa@m17n.org>
9045
9046 * xdisp.c (display_mode_element): Fix previous change (calculate
9047 end position of substring to display correctly).
9048
9049 2004-11-16 Kim F. Storm <storm@cua.dk>
9050
9051 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
9052 Reported by Andrew M. Scott.
9053
9054 2004-11-15 Kim F. Storm <storm@cua.dk>
9055
9056 * fns.c (Fsafe_plist_get): New defun.
9057 (syms_of_fns): Defsubr it.
9058
9059 * lisp.h (Fsafe_plist_get): Add EXFUN.
9060
9061 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
9062 Use Fsafe_plist_get.
9063 (note_mode_line_or_margin_highlight, note_mouse_highlight):
9064 Fix image map element parsing. Use Fsafe_plist_get.
9065
9066 2004-11-15 Richard M. Stallman <rms@gnu.org>
9067
9068 * xdisp.c (get_next_display_element): Fix previous change.
9069
9070 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9071
9072 * window.c (shrink_windows): Handle special case of one window left
9073 when trying to shrink the final reminder. Grow windows if
9074 total_removed is less than total_shrink.
9075
9076 * xmenu.c (pop_down_menu): Remove global variable current_menu,
9077 extract pointer from arg with XSAVE_VALUE.
9078 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
9079 Construct arg to record_unwind_protect with make_save_value.
9080
9081 2004-11-13 Richard M. Stallman <rms@gnu.org>
9082
9083 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
9084 (get_next_display_element): Fix previous change to apply only to \n.
9085
9086 * indent.c (Fvertical_motion): Scan to PT from start of line to
9087 make iterator consistent.
9088
9089 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
9090
9091 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9092
9093 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
9094
9095 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
9096 Record unwind with clean_up_file_dialog.
9097
9098 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
9099 Declare.
9100
9101 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
9102
9103 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9104
9105 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
9106 (xg_file_sel_destroy): Remove.
9107 (xg_file_response_cb, pop_down_file_dialog)
9108 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
9109 New functions.
9110 (xg_get_file_with_chooser, xg_get_file_with_selection):
9111 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
9112 Move common code to xg_get_file_name. Return widget created.
9113 (xg_get_file_name): Set name, transient for, modal and destroy
9114 with parent here. Connect response signal to xg_file_response_cb,
9115 connect delete-event to gtk_true. Record pop_down_file_dialog
9116 for unwind. Do event loop and call x_menu_wait_for_event in loop.
9117 (xg_create_widget): Make dialogs modal.
9118
9119 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
9120 Lisp_Object.
9121 (popup_get_selection): Move unwind protect ...
9122 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
9123 Move destroy of widget to pop_down_menu.
9124 (popup_widget_loop): Move unwind protect ...
9125 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
9126 Move destroy of widget to pop_down_menu.
9127 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
9128 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
9129 x_mouse_leave and grabbed = 0 to pop_down_menu.
9130
9131 2004-11-13 Kim F. Storm <storm@cua.dk>
9132
9133 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
9134 (syms_of_xdisp): DEFVAR_BOOL it.
9135 (make_cursor_line_fully_visible, try_cursor_movement)
9136 (try_window_id): Use it.
9137
9138 2004-11-12 Kim F. Storm <storm@cua.dk>
9139
9140 * dispextern.h (struct glyph_row): New member extra_line_spacing.
9141 (struct it): New member max_extra_line_spacing.
9142 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
9143 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
9144 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
9145 part of last line is only extra line spacing (so the text on the
9146 line is fully visible). Use helper macros.
9147 Add W arg (to use them). All callers changed.
9148 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
9149 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
9150
9151 * window.c (window_scroll_pixel_based, Frecenter):
9152 Use move_it_vertically_backward directly.
9153 (Frecenter): Fix calculation of new start pos for negative arg.
9154 Before, the new start pos was sometimes chosen too far back, so
9155 the last line became only partially visible, and thus would be
9156 either only semi-visible or automatically scrolled to the middle
9157 of the window by redisplay.
9158
9159 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
9160 (move_it_vertically_backward): Don't recure to move further back.
9161 (move_it_vertically): Remove superfluous condition.
9162 (move_it_by_lines): Clear last_height when moved 0 lines.
9163 (resize_mini_window): Use it.max_extra_line_spacing.
9164 (display_tool_bar_line): Clear row->extra_line_spacing.
9165 (try_scrolling): Use move_it_vertically_backward directly.
9166 (redisplay_window): Likewise.
9167 (compute_line_metrics): Set row->extra_line_spacing.
9168 (display_line, display_string): Likewise.
9169 (x_produce_glyphs): Update it->max_extra_line_spacing.
9170
9171 * xmenu.c (pop_down_menu): Return nil.
9172
9173 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9174
9175 * xmenu.c (x_menu_wait_for_event): New function.
9176 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
9177 to handle timers.
9178 (popup_widget_loop): Add argument do_timers.
9179 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
9180 do_timers to popup_widget_loop.
9181 (xmenu_show): Call XMenuActivateSetWaitFunction so that
9182 x_menu_wait_for_event is called by XMenuActivate.
9183 (create_and_show_popup_menu): Pass 1 for do_timers to
9184 popup_get_selection.
9185 (pop_down_menu): New function.
9186 (popup_get_selection, popup_widget_loop): Unwind protect to
9187 pop_down_menu.
9188 (popup_widget_loop): Add argument widget.
9189 (create_and_show_popup_menu, create_and_show_dialog): Pass new
9190 argument widget to popup_widget_loop.
9191
9192 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
9193
9194 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
9195
9196 2004-11-09 Kim F. Storm <storm@cua.dk>
9197
9198 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
9199 Fix various comments referring to XEvents instead of input events.
9200 (x_queue_event): Fix format strings.
9201 (x_stop_queuing_selection_requests): Likewise.
9202
9203 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
9204 (pint2hrstr): Add extra braces to silence compiler.
9205
9206 * print.c (print_object): Fix format string.
9207
9208 * lread.c (read1): Fix next_char matching.
9209
9210 * lisp.h (Fdelete): Add EXFUN.
9211 (replace_range_2): Add prototype.
9212
9213 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
9214
9215 * intervals.h (NULL_INTERVAL_P): Add separate version when
9216 ENABLE_CHECKING is not defined to silence compiler.
9217 (compare_string_intervals): Add prototype.
9218
9219 * fringe.c (destroy_fringe_bitmap): Fix return type.
9220 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
9221
9222 * emacs.c (Fdump_emacs): Fix format string.
9223
9224 * doc.c: Include <ctype.h>.
9225 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
9226
9227 * data.c (store_symval_forwarding): Remove unused variables.
9228
9229 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
9230
9231 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9232
9233 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
9234 to ${OLDXMENU}.
9235
9236 2004-11-09 Kim F. Storm <storm@cua.dk>
9237
9238 * process.c (Fmake_network_process): Remove kludge for interrupted
9239 connects on BSD. If connect is interrupted, just close socket and
9240 start over rather than sleeping and retry with same socket.
9241
9242 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9243
9244 * .cvsignore: Add buildobj.lst.
9245
9246 * doc.c: New variable Vbuild_files.
9247 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
9248 file names from buildobj.lst. Only attach docstrings from files
9249 that are in Vbuild_files.
9250 (syms_of_doc): Defvar Vbuild_files.
9251
9252 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
9253 and w32*.o.
9254 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
9255 (mostlyclean): Rm buildobj.lst
9256
9257 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
9258 is linked.
9259
9260 2004-11-09 Kim F. Storm <storm@cua.dk>
9261
9262 * fringe.c (update_window_fringes): Update fringe bitmaps if
9263 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
9264 also update previous row to get rid of misc. artifacts.
9265
9266 2004-11-08 Kim F. Storm <storm@cua.dk>
9267
9268 * xdisp.c (fast_find_position): Fix start pos if header line present.
9269 (note_mouse_highlight): Clear mouse face if we move out of text area.
9270
9271 2004-11-08 Eli Zaretskii <eliz@gnu.org>
9272
9273 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
9274 Don't include <sys/time.h> explicitly.
9275 Include <stdio.h> unconditionally, not just on MacOS.
9276
9277 2004-11-08 Kenichi Handa <handa@m17n.org>
9278
9279 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
9280 don't pay attention to '\' before '*'.
9281 (fontset_pattern_regexp): Change the meaning of the second arg.
9282 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
9283 (check_fontset_name): Try NAME as literal at first, and if it
9284 failes, try NAME as pattern.
9285
9286 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9287
9288 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
9289
9290 2004-11-07 Andreas Schwab <schwab@suse.de>
9291
9292 * lisp.h (Fmsdos_downcase_filename): Declare.
9293 * dired.c (Fmsdos_downcase_filename): Don't declare here.
9294 * fileio.c: Likewise.
9295
9296 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9297
9298 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
9299 comparisons with integers instead of Lisp_Object address.
9300 (Fmsdos_set_keyboard): Declare argument allkeys.
9301
9302 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
9303
9304 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
9305 int/Lisp_Object mixup.
9306
9307 * fileio.c: Ditto.
9308
9309 2004-11-06 Steven Tamm <steventamm@mac.com>
9310
9311 * editfns.c: Need to include sys/time.h before resource.h on darwin.
9312
9313 2004-11-06 Richard M. Stallman <rms@gnu.org>
9314
9315 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
9316
9317 * xfaces.c (merge_named_face): GCPRO the face_name in the
9318 named_merge_point struct that we make.
9319 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
9320
9321 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
9322 before deciding whether to inactivate mark.
9323
9324 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
9325
9326 * config.in: Regenerate (add HAVE_GETRUSAGE).
9327 * editfns.c (Fget_internal_run_time): New function.
9328 (syms_of_data): Defsubr it.
9329 * fns.c (sxhash): As far as possible, merge calculation of
9330 hash code for symbols and strings.
9331
9332 2004-11-06 Eli Zaretskii <eliz@gnu.org>
9333
9334 * frame.c (syms_of_frame): Fix the example in the doc string.
9335
9336 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9337
9338 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
9339
9340 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
9341 (create_and_show_dialog): Revert change from 2004-10-31.
9342
9343 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
9344
9345 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
9346
9347 2004-11-05 Kim F. Storm <storm@cua.dk>
9348
9349 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
9350
9351 * fileio.c (Ffile_modes): Doc fix.
9352 (auto_save_1): Check for Ffile_modes nil value.
9353
9354 2004-11-05 Kim F. Storm <storm@cua.dk>
9355
9356 * xselect.c (struct selection_event_queue, selection_queue)
9357 (x_queue_selection_requests, x_queue_event)
9358 (x_start_queuing_selection_requests)
9359 (x_stop_queuing_selection_requests): Add new queue for selection
9360 input events to replace previous XEvent queue in xterm.c.
9361 (queue_selection_requests_unwind): Adapt to new queue.
9362 (x_reply_selection_request): Adapt to new queue.
9363 Unexpect wait_object in case of x errors (memory leak).
9364 (x_handle_selection_request, x_handle_selection_clear): Make static.
9365 (x_handle_selection_event): New function. May queue selection events.
9366 (wait_for_property_change_unwind): Use save_value instead of cons.
9367 Clear property_change_reply_object.
9368 (wait_for_property_change): Abort if already waiting.
9369 Use save_value instead of cons for unwind data.
9370 (x_handle_property_notify): Skip events already arrived, but don't
9371 free them, as "arrived" field is checked by wait_for_property_change,
9372 and it will be freed by unwind or explicit unexpect_property_change.
9373 (x_get_foreign_selection): Add to new queue.
9374 (receive_incremental_selection): Don't unexpect wait_object when done
9375 as it has already been freed by previous wait_for_property_change.
9376
9377 * xterm.h (x_start_queuing_selection_requests)
9378 (x_stop_queuing_selection_requests, x_handle_selection_request)
9379 (x_handle_selection_clear): Remove prototypes.
9380 (x_handle_selection_event): Add prototype.
9381
9382 * xterm.c (handle_one_xevent): Don't queue X selection events
9383 here, it may be too late if we start queuing after we have already
9384 stored some selection events into the kbd buffer.
9385 (struct selection_event_queue, queue, x_queue_selection_requests)
9386 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
9387 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
9388 (x_catch_errors_unwind): Block input around final XSync.
9389
9390 * keyboard.h (kbd_buffer_unget_event): Add prototype.
9391
9392 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
9393 (kbd_buffer_unget_event): New function.
9394 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
9395 and use x_handle_selection_event.
9396 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
9397
9398 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9399
9400 * xselect.c (TRACE3): New debug macro.
9401 (x_reply_selection_request): Use it.
9402 (receive_incremental_selection): In call to TRACE0, the name of
9403 a symbol is in xname.
9404
9405 2004-11-05 Kim F. Storm <storm@cua.dk>
9406
9407 * fontset.c (fontset_pattern_regexp): Use unsigned char.
9408
9409 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9410
9411 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
9412
9413 * gtkutil.h (use_old_gtk_file_dialog): Declare.
9414
9415 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
9416 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
9417 * xfns.c (syms_of_xfns): ... to here.
9418
9419 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
9420 it doesn't start with /.
9421
9422 2004-11-04 Kenichi Handa <handa@m17n.org>
9423
9424 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
9425 treat it as a literal character.
9426
9427 2004-11-03 Kim F. Storm <storm@cua.dk>
9428
9429 * .gdbinit (ppt): New function.
9430
9431 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9432
9433 * xterm.c (x_window_to_scroll_bar): Only call
9434 xg_get_scroll_id_for_window if toolkit scroll bars are used.
9435
9436 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
9437 of save.
9438
9439 2004-11-02 Andreas Schwab <schwab@suse.de>
9440
9441 * window.c (Fscroll_right): Fix last change.
9442
9443 2004-11-02 Kim F. Storm <storm@cua.dk>
9444
9445 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
9446
9447 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9448
9449 * callproc.c (Fcall_process): Block input around vfork.
9450
9451 2004-11-02 Kim F. Storm <storm@cua.dk>
9452
9453 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
9454 (syms_of_eval): Defsubr it.
9455
9456 2004-11-02 Richard M. Stallman <rms@gnu.org>
9457
9458 * insdel.c (replace_range_2): New function.
9459
9460 * casefiddle.c (casify_region): Handle changes in byte-length
9461 using replace_range_2.
9462
9463 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
9464
9465 * xdisp.c (back_to_previous_visible_line_start):
9466 Subtract 1 from pos when checking previous newline for invisibility.
9467
9468 * window.c (window_scroll_pixel_based): Update preserve_y
9469 for header line if any.
9470 (Fscroll_left, Fscroll_right): Don't call interactive_p;
9471 use a new second argument instead.
9472
9473 * eval.c (Fcall_interactive_p): New function.
9474 (interactive_p): Don't test INTERACTIVE here.
9475 (Finteractive_p): Doc fix.
9476
9477 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
9478
9479 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9480
9481 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
9482 comparing font names.
9483
9484 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9485
9486 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
9487 Fx_file_dialog if only directories should be read.
9488
9489 * lisp.h: Fx_file_dialog takes 5 parameters.
9490
9491 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
9492 Add parameter only_dir_p.
9493 In Motif version, don't put DEFAULT_FILENAME in filter part of the
9494 dialog, just text field part. Do not add DEFAULT_FILENAME
9495 to list of files if it isn't there.
9496 In GTK version, pass only_dir_p parameter to xg_get_file_name.
9497
9498 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
9499 Check only_dir_p instead of comparing prompt to "Dired". When using
9500 a save dialog, add option kNavDontConfirmReplacement, change title
9501 to "Enter name", change text for save button to "Ok".
9502
9503 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
9504 Check only_dir_p instead of comparing prompt to "Dired".
9505
9506 * gtkutil.c (xg_get_file_with_chooser)
9507 (xg_get_file_with_selection): New functions, only defined ifdef
9508 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
9509 respectively.
9510 (xg_get_file_name): Add parameter only_dir_p.
9511 Call xg_get_file_with_chooser or xg_get_file_with_selection
9512 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
9513 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
9514
9515 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
9516
9517 * config.in: Rebuild (added HAVE_GTK_FILE_*).
9518
9519 2004-11-01 Kim F. Storm <storm@cua.dk>
9520
9521 * process.c (connect_wait_mask, num_pending_connects):
9522 Only declare and use them if NON_BLOCKING_CONNECT is defined.
9523 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
9524 (IF_NON_BLOCKING_CONNECT): New helper macro.
9525 (wait_reading_process_output): Only declare and use local vars
9526 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
9527
9528 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
9529
9530 * w32term.c (x_scroll_run): Delete region objects after use.
9531
9532 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9533
9534 * xmenu.c: Add prototypes for forward function declarations.
9535 (popup_get_selection): Remove parameter do_timers, remove call to
9536 timer_check.
9537 (create_and_show_popup_menu, create_and_show_dialog):
9538 Remove parameter do_timers from call to popup_get_selection.
9539
9540 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
9541 tool_bar_items and assign the result to f->tool_bar_items if
9542 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
9543 tool_bar_items to assignment of result.
9544
9545 * atimer.c (alarm_signal_handler): Do not call set_alarm if
9546 pending_atmers is non-zero.
9547
9548 2004-10-31 Kim F. Storm <storm@cua.dk>
9549
9550 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
9551
9552 2004-10-28 Will <will@glozer.net>
9553
9554 * macterm.c: Allow user to assign key modifiers to the Mac Option
9555 key via a 'mac-option-modifier' variable.
9556
9557 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
9558
9559 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
9560 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
9561 (x_handle_selection_request, x_handle_selection_clear)
9562 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
9563
9564 2004-10-28 Richard M. Stallman <rms@gnu.org>
9565
9566 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
9567
9568 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
9569
9570 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
9571
9572 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
9573 comment-starter over a 1-char one.
9574
9575 2004-10-27 Richard M. Stallman <rms@gnu.org>
9576
9577 * xdisp.c (get_next_display_element): In mode lines,
9578 treat newline and tab like other control characters.
9579
9580 * editfns.c (Fmessage): Doc fix.
9581
9582 * indent.c (vmotion): When moving up, check the newline before.
9583 Make prevline an int, not a Lisp_Object.
9584
9585 2004-10-27 Kim F. Storm <storm@cua.dk>
9586
9587 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
9588 Only allocate info and discarded tables once.
9589
9590 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
9591 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
9592 (SAFE_FREE): Test it to determine if we need to unwind to free.
9593 Remove size arg. All users changed.
9594 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
9595
9596 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9597
9598 * gtkutil.c: Put empty line between comment and function body.
9599 (xg_destroy_widgets): Rename from remove_from_container.
9600 Just destroy all widgets in list. Argument wcont removed.
9601 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
9602 instead of remove_from_container.
9603 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
9604 (free_frame_tool_bar): Add comment.
9605
9606 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
9607 is not NULL before strcmp.
9608
9609 2004-10-26 Kim F. Storm <storm@cua.dk>
9610
9611 * callint.c (Fcall_interactively): Add 'U' code to get the
9612 up-event discarded by a previous 'k' or 'K' argument.
9613
9614 2004-10-26 David Kastrup <dak@gnu.org>
9615
9616 * buffer.c (syms_of_buffer): Fix a few typos.
9617
9618 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9619
9620 * xsmfns.c: Put empty line between comment and function body.
9621 Use two spaces before comment end.
9622
9623 2004-10-25 Kenichi Handa <handa@m17n.org>
9624
9625 * fontset.c (fontset_pattern_regexp): Optimize for the case that
9626 PATTERN is full XLFD.
9627
9628 2004-10-24 Kenichi Handa <handa@m17n.org>
9629
9630 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
9631
9632 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
9633 (regex_compile): Return REG_ERANGEX if appropriate.
9634
9635 2004-10-22 Kenichi Handa <handa@m17n.org>
9636
9637 * editfns.c (Ftranslate_region_internal): New function.
9638 (syms_of_editfns): Defsubr it.
9639
9640 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9641
9642 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
9643
9644 2004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
9645
9646 * xterm.h (x_output): New member `xic_base_fontname'.
9647 (FRAME_XIC_BASE_FONTNAME): New macro.
9648 (xic_free_xfontset): Declare.
9649
9650 * xfns.c (xic_create_xfontset): Share fontsets between frames
9651 based on base_fontname.
9652 (xic_free_xfontset): New function.
9653 (free_frame_xic): Use it.
9654 (xic_set_xfontset): Ditto.
9655
9656 * xterm.c (xim_destroy_callback): Ditto.
9657
9658
9659 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
9660
9661 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
9662
9663 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9664
9665 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
9666 XSync.
9667
9668 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
9669 New variables and constant.
9670 (main): Calculate heap_bss_diff. If we are dumping and the
9671 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
9672 and exec ourself again.
9673 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
9674 print a warning.
9675
9676 * lastfile.c: Make my_endbss and my_endbss_static available on all
9677 platforms.
9678
9679 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
9680 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
9681
9682 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
9683
9684 * data.c (Flocal_variable_if_set_p): Doc fix.
9685
9686 2004-10-19 Jason Rumney <jasonr@gnu.org>
9687
9688 * w32.c (init_environment): Set emacs_dir correctly when running
9689 emacs from the build directory.
9690
9691 2004-10-19 Richard M. Stallman <rms@gnu.org>
9692
9693 * editfns.c (Fdelete_and_extract_region):
9694 If region is empty, return null string.
9695
9696 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9697
9698 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
9699 and canon_width.
9700 (xg_frame_cleared): Remove.
9701
9702 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
9703 (xg_find_top_left_in_fixed): Remove.
9704 (xg_create_scroll_bar): Put an event box widget between
9705 the scroll bar widget and the edit widget.
9706 (xg_show_scroll_bar): Show the parent widget (the event box).
9707 (xg_remove_scroll_bar): Destroy parent (the event box) also.
9708 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
9709 Move the parent (the event box) widget inside the fixed widget.
9710 Move window clear to xterm.c.
9711
9712 * gtkutil.h (xg_frame_cleared): Remove.
9713
9714 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
9715 (x_scroll_bar_create, XTset_vertical_scroll_bar):
9716 Remove arguments left and width to xg_update_scrollbar_pos.
9717 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
9718
9719 2004-10-19 Kenichi Handa <handa@m17n.org>
9720
9721 * xdisp.c (display_mode_element): Fix display of wide chars.
9722
9723 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9724
9725 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
9726 gdk_window_clear and move gdk_window_process_all_updates after
9727 clear so events are sent to the X server in correct order.
9728
9729 2004-10-18 Kenichi Handa <handa@m17n.org>
9730
9731 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
9732 comparing font names.
9733 (fs_query_fontset): Use fast_string_match for comparing fontset names.
9734 (list_fontsets): Likewise.
9735
9736 * search.c (fast_string_match_ignore_case): New function.
9737
9738 * lisp.h (fast_string_match_ignore_case): Extern it.
9739
9740 2004-10-17 Kim F. Storm <storm@cua.dk>
9741
9742 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
9743 than bitmap if there is not left fringe.
9744 (get_overlay_arrow_glyph_row): Also used on windows system.
9745 (display_line): Display overlay string if no left fringe.
9746
9747 2004-10-16 Jason Rumney <jasonr@gnu.org>
9748
9749 * w32fns.c (w32_font_match): Encode font name being matched.
9750
9751 2004-10-16 Richard M. Stallman <rms@gnu.org>
9752
9753 * window.c (Fspecial_display_p): Doc fix.
9754
9755 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
9756
9757 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
9758 Don't ignore menus, because where-is-internal already does it for us.
9759
9760 2004-10-15 Kim F. Storm <storm@cua.dk>
9761
9762 * xdisp.c (redisplay_window): Only update fringes and vertical
9763 border on window frames.
9764
9765 2004-10-14 Andreas Schwab <schwab@suse.de>
9766
9767 * m/ia64.h (DATA_SEG_BITS): Don't define.
9768
9769 2004-10-14 Kim F. Storm <storm@cua.dk>
9770
9771 * xterm.h: Include Xutil.h after keysym.h to work around bug
9772 in some X versions.
9773
9774 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
9775
9776 * fns.c (map_char_table): Add missing gcpros.
9777
9778 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
9779
9780 * keymap.c (get_keymap): An autoload form is not a keymap.
9781
9782 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
9783
9784 2004-10-13 Kim F. Storm <storm@cua.dk>
9785
9786 * callproc.c (Fcall_process): Simplify handling of display arg.
9787 Resume `display_on_the_fly' once a coding system is determined.
9788
9789 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
9790
9791 2004-10-12 Kim F. Storm <storm@cua.dk>
9792
9793 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
9794 caller, such as call-process, is not going to poll for input.
9795 (calc_line_height_property): Handle case where it->object is nil.
9796
9797 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
9798
9799 2004-10-12 Kenichi Handa <handa@m17n.org>
9800
9801 * xdisp.c (get_next_display_element):
9802 If unibyte_display_via_language_environment is zero, display 8-bit
9803 chars in octal in unibyte buffer.
9804
9805 2004-10-12 Kim F. Storm <storm@cua.dk>
9806
9807 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
9808 are no ordinary bindings.
9809
9810 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9811
9812 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
9813
9814 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9815
9816 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
9817 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
9818 (make_mac_frame): Add BLOCK_INPUT around the making of a
9819 terminal frame.
9820 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
9821 * macgui.h (mktime): Use emacs_mktime.
9822 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
9823 Make a cancel file-open dialog be like C-g.
9824 * mac.c (mktime): Use emacs_mktime.
9825 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
9826 (Fmac_paste_function): Add better error handling for carbon cut/paste.
9827
9828 2004-10-10 Kim F. Storm <storm@cua.dk>
9829
9830 * keyboard.c (timer_resume_idle): New function to resume idle
9831 timer without resetting timers on the idle list.
9832 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
9833 (timer_start_idle, timer_stop_idle): Declare static.
9834 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
9835
9836 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
9837
9838 2004-10-08 Steven Tamm <steventamm@mac.com>
9839
9840 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
9841 * macterm.c (mac_check_for_quit_char): Remove warning for using
9842 NULL where 0 should be used.
9843 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
9844 objc/malloc.h
9845 * mac.c: Include time.h for Tiger compatibility.
9846
9847 2004-10-07 Kim F. Storm <storm@cua.dk>
9848
9849 * xdisp.c (redisplay_window): Fix flicker on vertical line between
9850 windows. Update vertical line after drawing window fringes, but
9851 only if actually drawing any bitmaps--or there is no fringe.
9852
9853 * xterm.c (x_update_window_end): Likewise.
9854 * macterm.c (x_update_window_end): Likewise.
9855 * w32term.c (x_update_window_end): Likewise.
9856
9857 * fringe.c (draw_window_fringes): Return value now indicates if
9858 any fringe bitmaps were redrawn (or there are no fringes).
9859
9860 * dispextern.h (draw_window_fringes): Update prototype.
9861
9862 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9863
9864 * macfns.c (mac_get_window_bounds): Add extern.
9865 (x_real_positions): Use mac_get_window_bounds.
9866
9867 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
9868 xmenu.c (YAILOM).
9869
9870 * macterm.c [!MAC_OSX]: Include Windows.h.
9871 (front_emacs_window): Rename from mac_front_window. All uses
9872 changed. Return the frontmost non-tooltip emacs window.
9873 (mac_get_window_bounds): New function.
9874 (x_calc_absolute_position): Use the difference of width and height
9875 between the inner and outer window.
9876 (x_set_offset): Specify window position by the coordinae of the
9877 outer window. Adjust the position if the title bar is completely
9878 outside the screen.
9879 (app_is_suspended, app_sleep_time): Remove unused variables.
9880 (do_app_resume, do_app_suspend): Remove their contents because
9881 window-activate/deactivate events will do the job.
9882 (do_zoom_window): Remove unused variables. Make compliant to the
9883 standard way of zooming. Set f->left_pos and f->top_pos.
9884 (XTread_socket): Don't use argument `expected'. Don't use
9885 FrontWindow to determine the clicked window. Exclude unprocessed
9886 mouseUp cases in the early stage. Add parentheses to fix operator
9887 precedence.
9888 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
9889
9890 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
9891
9892 * config.in: Regenerate.
9893
9894 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
9895 HAVE_EXECSHIELD.
9896
9897 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9898
9899 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
9900 a row if Alt or Meta has been found for that row. Also stop scanning
9901 for Keysyms for that row.
9902
9903 2004-10-04 Kim F. Storm <storm@cua.dk>
9904
9905 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
9906 to list. Include overlay arrow bitmap in return value.
9907
9908 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
9909 bars with fractional column width. If scroll bar separates two
9910 windows, move it towards the window it belongs to. Only update
9911 the padding area below the scroll bar widget when necessary,
9912 i.e. when scroll bar widget is created, moved, or resized.
9913
9914 * xdisp.c (define_frame_cursor1): Do not change frame cursor
9915 while tracking/dragging mouse.
9916 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
9917
9918 * window.c (coordinates_in_window): Relax check for cursor
9919 on vertial border between mode lines.
9920 (Fset_window_fringes): Do not allow negative widths.
9921 (Fset_window_scroll_bars): Likewise.
9922
9923 * .gdbinit (pp): Shorthand for p ARG + pr.
9924 (ff): New command: flush frame updates (X only).
9925
9926 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
9927
9928 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
9929
9930 2004-09-30 Kenichi Handa <handa@m17n.org>
9931
9932 * process.c (send_process): Free composition data.
9933
9934 * fileio.c (Finsert_file_contents): Free composition data.
9935
9936 * coding.c (code_convert_region): Don't skip ASCIIs if there are
9937 compositions to encode.
9938 (encode_coding_string): Likewise. Free composition data.
9939
9940 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
9941
9942 * coding.c (code_convert_region): Free composition data.
9943
9944 2004-09-29 Kim F. Storm <storm@cua.dk>
9945
9946 * fringe.c: Remove limit on number of bitmaps.
9947 (fringe_bitmaps, fringe_faces): Change to pointers.
9948 (max_fringe_bitmaps): New var.
9949 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
9950 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
9951
9952 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
9953 (struct glyph_row): Reorder fringe_bitmap related fields.
9954 (struct it): Likewise.
9955
9956 * w32term.c (fringe_bmp): Change to pointer.
9957 (max_fringe_bmp): New var.
9958 (w32_define_fringe_bitmap): Expand fringe_bmp.
9959 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
9960 (w32_destroy_fringe_bitmap): Likewise.
9961
9962 2004-09-29 Kim F. Storm <storm@cua.dk>
9963
9964 * fringe.c: Simplify last change.
9965 (lookup_fringe_bitmap): New function.
9966 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
9967 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
9968 Keep standard bitmaps in Vfringe_bitmaps.
9969 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
9970 (Fset_fringe_bitmap_face): Likewise.
9971
9972 * dispextern.h (lookup_fringe_bitmap): Add prototype.
9973 (valid_fringe_bitmap_p): Remove prototype.
9974
9975 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
9976
9977 2004-09-29 Kim F. Storm <storm@cua.dk>
9978
9979 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
9980 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
9981
9982 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
9983
9984 * fringe.c (Vfringe_bitmaps): New variable.
9985 (syms_of_fringe): DEFVAR_LISP it.
9986 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
9987 Change arg to Lisp_Object and fail if not an integer.
9988 (get_fringe_bitmap_name, resolve_fringe_bitmap)
9989 (destroy_fringe_bitmap): New functions.
9990 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
9991 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
9992 clear its fringe property.
9993 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
9994 Fdestroy_fringe_bitmap.
9995 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
9996 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
9997 and set fringe property. Signal error if no free slots.
9998 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
9999 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
10000
10001 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
10002 symbols with a fringe property.
10003
10004 2004-09-27 Kim F. Storm <storm@cua.dk>
10005
10006 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
10007 Doc fix. Format may now be a symbol or alist, not a cons.
10008
10009 * fringe.c (update_window_fringes): Handle new formats of
10010 indicate-buffer-boundaries (symbol or alist). No longer
10011 allow a simple cons.
10012 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
10013
10014 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10015
10016 * config.in: Rebuild.
10017
10018 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10019
10020 * config.in: Rebuild.
10021
10022 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
10023
10024 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
10025
10026 * xterm.c (x_term_init): Work around a bug in some X servers.
10027
10028 2004-09-18 Richard M. Stallman <rms@gnu.org>
10029
10030 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
10031
10032 * xdisp.c (try_window_reusing_current_matrix):
10033 Handle the case where we reach the old displayed text,
10034 out of sync with the old line boundary.
10035
10036 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
10037
10038 * fileio.c (Finsert_file_contents): Fix case of replacement in a
10039 narrowed buffer.
10040
10041 2004-09-14 Kim F. Storm <storm@cua.dk>
10042
10043 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
10044
10045 * xfaces.c (Qface_no_inherit): New var.
10046 (syms_of_xfaces): Intern and staticpro it.
10047 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
10048 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
10049 Don't increment face_change_count when face has non-nil
10050 face-no-inherit property.
10051
10052 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
10053
10054 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
10055 (Fbyte_code): Remove dead code after `wrong_type_argument'.
10056
10057 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
10058 before doing the mark_stack_check_gcpros since they're not on the stack.
10059
10060 2004-09-12 Kim F. Storm <storm@cua.dk>
10061
10062 * editfns.c (Fformat): Handle format strings with multiple text
10063 properties. Reverse text property list from the format string,
10064 so the positions are in increasing order.
10065
10066 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10067
10068 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
10069 x_uncatch_errors so that possible protocol errors are delivered.
10070
10071 2004-09-10 Eli Zaretskii <eliz@gnu.org>
10072
10073 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
10074 blockinput.h.
10075 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
10076 charset.h, and coding.h
10077 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
10078 (term.o): Depend on window.h and keymap.h.
10079 (abbrev.o): Depend on syntax.h.
10080 (callint.o): Depend on keymap.h.
10081 (casefiddle.o): Depend on charset.h and keymap.h.
10082 (category.o): Depend on keymap.h.
10083 (coding.o): Depend on dispextern.h.
10084 (cmds.o): Depend on keyboard.h and keymap.h.
10085 (dispnew.o): Depend on indent.h and intervals.h.
10086 (doc.o): Depend on keymap.h.
10087 (editfns.o): Depend on frame.h.
10088 (emacs.o): Depend on dispextern.h.
10089 (fileio.o): Don't depend on ccl.h.
10090 (filelock.o): Depend on charset.h and coding.h.
10091 (frame.o): Depend on w32term.h and macterm.h.
10092 (insdel.o): Depend on region-cache.h.
10093 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
10094 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
10095 (search.o): Depend on $(INTERVALS_SRC).
10096 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
10097 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
10098 xterm.h, w32term.h, and macterm.h.
10099 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
10100 w32term.h, and macterm.h.
10101 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
10102 region-cache.h, xterm.h, w32term.h, and macterm.h.
10103 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
10104 (data.o): Depend on frame.h.
10105 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
10106 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
10107 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
10108 (intervals.o): Depend on keymap.h.
10109
10110 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
10111 Add debugging print-out to termscript.
10112
10113 2004-09-09 Richard M. Stallman <rms@gnu.org>
10114
10115 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
10116
10117 2004-09-08 Richard M. Stallman <rms@gnu.org>
10118
10119 * window.c (Fset_window_buffer): Doc fix.
10120
10121 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
10122
10123 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
10124
10125 * minibuf.c (history_delete_duplicates): New variable.
10126 (read_minibuf): Use it.
10127 (syms_of_minibuf): Create the corresponding lisp variable.
10128
10129 2004-09-08 Kim F. Storm <storm@cua.dk>
10130
10131 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
10132 overlay just before point.
10133
10134 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
10135
10136 * buffer.h (struct buffer): Add auto_save_file_format field.
10137 * buffer.c (reset_buffer, init_buffer_once):
10138 Handle auto_save_file_format field.
10139 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
10140 `buffer-auto-save-file-format'.
10141 * fileio.c: Delete declaration for removed Vauto_save_file_format.
10142 (build_annotations): Adapt to replacement of
10143 `auto-save-file-format' with the new buffer-local variable
10144 `buffer-auto-save-file-format'.
10145 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
10146
10147 2004-09-07 Jason Rumney <jasonr@gnu.org>
10148
10149 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
10150
10151 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
10152 Handle Unicode menu titles.
10153
10154 2004-09-07 Kim F. Storm <storm@cua.dk>
10155
10156 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
10157 property from text property or overlay strings at point.
10158
10159 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
10160
10161 * xmenu.c (update_submenu_strings): YAILOM.
10162 (set_frame_menubar): Make sure last_i is initialized.
10163
10164 2004-09-03 Jason Rumney <jasonr@gnu.org>
10165
10166 * w32menu.c (_widget_value): Add lname and lkey.
10167 (digest_single_submenu): Set lname and lkey in widget_value
10168 instead of name and key.
10169 (update_submenu_strings): New function.
10170 (set_frame_menubar): Remove call to inhibit_garbage_collection,
10171 call update_submenu_strings.
10172
10173 * w32menu.c (globals_of_w32menu): Check for Unicode API.
10174 (digest_single_submenu, w32_menu_show): Encode menu strings as
10175 UTF-8 if Unicode API is available.
10176 (utf8to16): New function.
10177 (add_menu_item): Use it when calling Unicode API.
10178
10179 2004-09-03 Kim F. Storm <storm@cua.dk>
10180
10181 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
10182 in overlay or text-property strings; set cursor on corresponding
10183 glyph rather than at end of the string.
10184
10185 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10186
10187 * macfns.c (x_real_positions): Save the current window port and
10188 set a new one before obtaining the global coordinate.
10189 Use FRAME_MAC_WINDOW.
10190 (x_set_name, x_set_title): Encode title to UTF8.
10191 Use SetWindowTitleWithCFString.
10192 (Fx_server_version): Get correct OS version.
10193
10194 * macmenu.c (add_menu_item): Remove unused variable `i'.
10195 Don't let separator items destroy refence constants of other menu items.
10196
10197 * macterm.c (x_update_end): Move SetPortWindowPort to inside
10198 BLOCK_INPUT.
10199 (x_set_offset): Use FRAME_MAC_WINDOW.
10200
10201 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
10202 nontext_cursor if it is on a scroll bar.
10203
10204 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
10205 Carbon support.
10206 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
10207 Use LIBS_CARBON.
10208
10209 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10210
10211 * xfns.c (x_set_name_internal): New function. Check if we shall call
10212 xfree before ENCODE_UTF_8.
10213 (x_set_name, x_set_title): Call x_set_name_internal.
10214
10215 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
10216
10217 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
10218 reload it.
10219
10220 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10221
10222 * macmenu.c (_widget_value): Add lname and lkey.
10223 (single_submenu): Set lname and lkey in widget_value
10224 instead of name and key.
10225 (update_submenu_strings): New function.
10226 (set_frame_menubar): Remove call to inhibit_garbage_collection,
10227 call update_submenu_strings.
10228
10229 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
10230 instead of name and key.
10231 (update_submenu_strings): New function.
10232 (set_frame_menubar): Remove call to inhibit_garbage_collection,
10233 call update_submenu_strings.
10234
10235 * gtkutil.h (_widget_value): Added lname and lkey.
10236
10237 2004-08-30 Steven Tamm <steventamm@mac.com>
10238
10239 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
10240 by using different names for inner loop variables.
10241
10242 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10243
10244 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
10245 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
10246
10247 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
10248 tool bar items is 0.
10249
10250 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10251
10252 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
10253 strings in menu items.
10254 (single_submenu): Use ENCODE_MENU_STRING
10255 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
10256 button release isn't passed to event loop
10257 (add_menu_item): Use SetMenuItemWithCFString
10258
10259 2004-08-26 Steven Tamm <steventamm@mac.com>
10260
10261 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
10262 tool-bar/menu click.
10263 * macfns.c (Fx_file_dialog): Implement using NavServices.
10264
10265 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10266
10267 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
10268
10269 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10270 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10271 (x_top_window_to_frame): Return 0 if wdesc is None.
10272
10273 2004-08-22 Richard M. Stallman <rms@gnu.org>
10274
10275 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
10276 HAVE_TERMIOS]: If there's no char for this signal, drop through
10277 and use system calls.
10278
10279 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
10280
10281 2004-08-20 Kim F. Storm <storm@cua.dk>
10282
10283 * process.c (wait_reading_process_output): Rename from
10284 wait_reading_process_input. All uses changed.
10285 (wait_reading_process_output_1): Rename from
10286 wait_reading_process_input_1. All uses changed.
10287
10288 * dispnew.c (Fsleep_for): Remove obsolete code.
10289
10290 2004-08-20 Kenichi Handa <handa@m17n.org>
10291
10292 * syntax.c (skip_chars): Fix for unibyte case.
10293
10294 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
10295
10296 * syntax.c (char_quoted): Mixup byte/char pos.
10297 (back_comment): Fixup globals in all cases.
10298
10299 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10300
10301 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
10302 passing it to gtk_window_set_title.
10303
10304 2004-08-19 Kim F. Storm <storm@cua.dk>
10305
10306 * process.c (wait_reading_process_input): Clean up.
10307 Add wait_for_cell, wait_proc, and just_wait_proc args
10308 to avoid overloading `read_kbd' and `do_display' args.
10309 Change read_kbd arg to int. All callers changed.
10310
10311 * process.c (process_send_signal): Use CDISABLE.
10312
10313 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
10314
10315 2004-08-18 Kim F. Storm <storm@cua.dk>
10316
10317 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
10318 forward to wait_reading_process_input via DO_DISPLAY arg.
10319 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
10320 object, only process output from that process; also inhibit
10321 running timers if DO_DISPLAY==-2.
10322
10323 2004-08-17 Kim F. Storm <storm@cua.dk>
10324
10325 * process.c (process_send_signal): Fix last change--use
10326 _POSIX_VDISABLE instead of CVDISABLE when available.
10327
10328 2004-08-16 Richard M. Stallman <rms@gnu.org>
10329
10330 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
10331 Set VQUIT and VINTR chars to the standard ones if they are unset.
10332 [AIX]: Don't do that here. And don't force VINTR to standard
10333 when SIGNALS_VIA_CHARACTERS.
10334
10335 * process.c (process_send_signal)
10336 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
10337 Do nothing if the character is CVDISABLE.
10338
10339 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
10340
10341 * intervals.c (move_if_not_intangible):
10342 Force POSITION to be between BEGV and ZV.
10343
10344 2004-08-14 John Paul Wallington <jpw@gnu.org>
10345
10346 * buffer.c (Frestore_buffer_modified_p): Doc fix.
10347
10348 * fileio.c (Fread_file_name): Doc fix.
10349
10350 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
10351
10352 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
10353
10354 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
10355
10356 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
10357
10358 * keyboard.c: Declare Qdisabled_command_function instead of
10359 Qdisabled_command_hook.
10360 (Fcommand_execute): Use Qdisabled_command_function instead of
10361 Qdisabled_command_hook.
10362 (syms_of_keyboard): Ditto.
10363
10364 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
10365
10366 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
10367 (syms_of_keymap) <key-translation-map>: Doc fixes.
10368
10369 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
10370
10371 * window.c (window_list_1): YAILOM.
10372
10373 * fileio.c (make_temp_name): Handle multibyte prefixes.
10374
10375 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
10376
10377 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
10378 Doc fix.
10379
10380 2004-08-03 Kenichi Handa <handa@m17n.org>
10381
10382 * coding.c (decode_coding_string): Adjust coding->consumed, and
10383 etc. with shrinked_bytes.
10384
10385 2004-08-03 Kim F. Storm <storm@cua.dk>
10386
10387 * indent.c (compute_motion): Fix check for full width window
10388 in non-window case. Do not count left truncation glyph on
10389 window systems.
10390
10391 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
10392
10393 * data.c (Finteractive_form): Doc fix.
10394
10395 2004-08-02 Kim F. Storm <storm@cua.dk>
10396
10397 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
10398 properly accounting for continuation glyph on non-window systems.
10399 (Fcompute_motion): Use actual window width if WIDTH is nil, and
10400 actual window width/height if TOPOS is nil, properly accounting for
10401 continuation glyphs on non-window systems, and optional header lines.
10402 (vmotion): Let compute_motion calculate actual window width.
10403
10404 * window.c (window_scroll_line_based): Let compute_motion
10405 calculate actual window width.
10406
10407 2004-08-02 Kim F. Storm <storm@cua.dk>
10408
10409 * process.c (read_process_output): Use whole read buffer.
10410 Don't trigger adaptive read buffering on errors.
10411
10412 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
10413
10414 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
10415
10416 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
10417
10418 * callint.c (Fcall_interactively): Doc fix.
10419
10420 2004-07-30 Richard M. Stallman <rms@gnu.org>
10421
10422 * abbrev.c (Fexpand_abbrev): Undo previous change.
10423
10424 2004-07-30 Kim F. Storm <storm@cua.dk>
10425
10426 * editfns.c (Fformat): Allocate extra (dummy) element in info.
10427
10428 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
10429
10430 * eval.c (Fdefvar, Fdefconst): Doc fixes.
10431
10432 2004-07-27 Kim F. Storm <storm@cua.dk>
10433
10434 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
10435 we have ensured that the glyph fits on the current line (or returned
10436 MOVE_LINE_CONTINUED otherwise).
10437
10438 2004-07-26 Kim F. Storm <storm@cua.dk>
10439
10440 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
10441 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
10442 if target position is at end of display line but char is not a newline.
10443
10444 2004-07-25 Richard M. Stallman <rms@gnu.org>
10445
10446 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
10447 instead of ON_VERTICAL_BORDER, when on scroll bar.
10448 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
10449
10450 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
10451
10452 * window.c (Fcoordinates_in_window_p):
10453 Take account of FRAME_INTERNAL_BORDER_WIDTH.
10454
10455 * alloc.c (check_cons_list): New function (contents commented out).
10456
10457 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
10458
10459 * xfaces.c (Fcolor_supported_p): Doc fix.
10460
10461 * frame.c (Fselect_frame, Fset_frame_selected_window)
10462 (Fframe_visible_p, Fraise_frame): Doc fixes.
10463
10464 2004-07-24 Richard M. Stallman <rms@gnu.org>
10465
10466 * keyboard.h (not_single_kboard_state): Declare.
10467
10468 * fileio.c (Fwrite_region): Doc fix.
10469
10470 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
10471
10472 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
10473 only when a real abbrev is present.
10474
10475 * xfns.c (x_icon_verify): New function.
10476 (Fx_create_frame): Use it.
10477
10478 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
10479
10480 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
10481
10482 2004-07-21 Kim F. Storm <storm@cua.dk>
10483
10484 * window.h (struct glyph_matrix): New members nrows_scale_factor
10485 and ncols_scale_factor.
10486
10487 * window.c (make_window): Initialize nrows_scale_factor and
10488 ncols_scale_factor members.
10489
10490 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
10491 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
10492 (required_matrix_height): Apply nrows_scale_factor.
10493 (required_matrix_width): Apply ncols_scale_factor.
10494
10495 * xdisp.c (display_line): Increment nrows_scale_factor and set
10496 fonts_changed_p if past last allocated row.
10497 (append_glyph, append_composite_glyph, produce_image_glyph)
10498 (append_stretch_glyph): Increment ncols_scale_factor and set
10499 fonts_changed_p if current area is full.
10500
10501 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10502
10503 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
10504
10505 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
10506
10507 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
10508 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
10509 (Fset_window_start, Fscroll_up, Fscroll_down)
10510 (Fother_window_for_scrolling, Fscroll_other_window)
10511 (Fsave_window_excursion, Fset_window_vscroll)
10512 (syms_of_window) <window-size-fixed>: Doc fixes.
10513
10514 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10515
10516 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
10517 ENCODE_SYSTEM for filenames.
10518
10519 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10520
10521 * mac.c (sys_select): Block input around call to
10522 ReceiveNextEvent to prevent breakage. Correctly handle
10523 blocking on event queue only by calling ReceiveNextEvent
10524 instead of select (since GUI events aren't on an fd).
10525 (sys_read): Remove function
10526 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
10527
10528 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10529
10530 * mac.c (sys_select): Redo sys_select to use alarm-based
10531 polling instead of 1 sec timeouts (like solaris).
10532
10533 * macterm.c (x_make_frame_visible): Comment in polling on
10534 frame creation.
10535
10536 * keyboard.c: Undef SIGIO on Carbon
10537
10538 * atimer.c (alarm_signal_handler): Call alarm handlers after
10539 scheduling.
10540
10541 * eval.c (Feval): Remove quit_char test
10542
10543 * process.c (wait_reading_process_input): Remove clearing
10544 stdin for select call on process input.
10545
10546 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
10547
10548 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
10549 capitalization error in docstring.
10550
10551 2004-07-17 Juanma Barranquero <lektu@terra.es>
10552
10553 * keyboard.c (not_single_kboard_state): Do nothing unless
10554 MULTI_KBOARD is defined.
10555
10556 2004-07-17 Richard M. Stallman <rms@gnu.org>
10557
10558 * window.c (coordinates_in_window): Inside the window but outside
10559 its box to the L or R, return ON_VERTICAL_BORDER.
10560 (window_list_1): Rotate the list to start with WINDOW.
10561
10562 * print.c (print_preprocess): Test for print_depth at limit
10563 before entering in being_printed.
10564
10565 * keyboard.c (not_single_kboard_state): New function.
10566 (stuff_buffered_input): Now no-op only if no SIGTSTP.
10567
10568 * frame.c (Fdelete_frame): If we're in single_bboard_state on
10569 this kboard, and we delete its last frame, go to any_kboard_state.
10570
10571 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
10572
10573 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
10574
10575 * w32fns.c (Fx_file_dialog): Encode strings in system coding
10576 system before passing them to OS functions for display.
10577
10578 2004-07-15 David Kastrup <dak@gnu.org>
10579
10580 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
10581 Apparently fixes an abort condition.
10582
10583 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
10584
10585 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
10586 instead of a cons.
10587
10588 2004-07-14 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
10589
10590 * keyboard.c (echo_dash): Do nothing if there already is a dash
10591 at the end of the echo string.
10592
10593 2004-07-12 Kim F. Storm <storm@cua.dk>
10594
10595 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
10596 if GC_MARK_STACK.
10597
10598 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
10599
10600 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
10601
10602 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
10603 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
10604 (Freplace_buffer_in_windows, Fset_window_buffer)
10605 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
10606 (syms_of_window): Expand docstring of `display-buffer-function'.
10607
10608 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
10609
10610 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
10611 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
10612 that time values of the type (HIGH . LOW) are considered obsolete.
10613
10614 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
10615
10616 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
10617 docstring.
10618
10619 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
10620
10621 2004-07-06 John Paul Wallington <jpw@gnu.org>
10622
10623 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
10624
10625 * fns.c (Fclear_string): Signal an error if STRING is not a string.
10626
10627 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10628
10629 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
10630 instead of CGMainDisplayID (only in OSX 10.2 and later).
10631
10632 2004-07-04 John Paul Wallington <jpw@gnu.org>
10633
10634 * fileio.c (read_file_name_completion_ignore_case): New variable.
10635 (syms_of_fileio): Declare and initialise it.
10636 (Fread_file_name): Bind `completion-ignore-case' to respect it.
10637
10638 2004-07-03 Eli Zaretskii <eliz@gnu.org>
10639
10640 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
10641 for event.x and event.y.
10642
10643 2004-07-01 Kenichi Handa <handa@m17n.org>
10644
10645 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
10646 after getting a new string by pre-write-conversion.
10647
10648 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
10649
10650 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
10651 (x_calc_absolute_position): Remove unused var `child'.
10652
10653 * xfaces.c (x_supports_face_attributes_p)
10654 (Fdisplay_supports_face_attributes_p): YAILOM.
10655 (tty_supports_face_attributes_p): Remove unused var `i'.
10656
10657 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
10658 back_unibyte_ok.
10659
10660 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
10661
10662 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
10663
10664 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
10665
10666 2004-06-30 Andreas Schwab <schwab@suse.de>
10667
10668 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
10669 (Finit_image_library): Pass LIBRARIES through to
10670 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
10671 (lookup_image_type): Pass Qnil as second argument to
10672 Finit_image_library.
10673
10674 * lisp.h (Finit_image_library): Declare.
10675
10676 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10677
10678 * macterm.c (do_window_activate, do_window_deactivate): Remove.
10679 (XTread_socket): Send mouse button events to the toolbox
10680 dispatcher even when the mouse is grabbed. Don't process window
10681 activate events for non-Emacs windows. Replace function calls to
10682 do_window_activate and do_window_deactivate with their contents.
10683 Reset mouse grabbing status when a window is deactivated.
10684
10685 2004-06-29 Steven Tamm <steventamm@mac.com>
10686
10687 * macterm.c (mac_get_emulated_btn)
10688 (mac_event_to_emacs_modifiers): Fix emulated mouse button
10689 support to correctly mask out modifiers.
10690
10691 2004-06-29 David Kastrup <dak@gnu.org>
10692
10693 * search.c (Fset_match_data): Allow buffer before end of list
10694 which can happen if set-match-data is using a pre-consed list.
10695
10696 2004-06-28 Steven Tamm <steventamm@mac.com>
10697
10698 * macterm.c (XTread_socket): Correctly set the frame position
10699 after the window is moved.
10700
10701 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10702
10703 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
10704 gpix and gmask just before return to avoid memory leak.
10705 (xg_get_image_for_pixmap): Add workaround for monochrome displays
10706 so insensitive and activated icons look ok.
10707
10708 2004-06-27 Jason Rumney <jasonr@gnu.org>
10709
10710 * w32fns.c (file_dialog_callback): Disable edit control if set
10711 to directories only on CDN_INITDONE message.
10712 (Fx_file_dialog): Default to directories only when prompt starts
10713 with "Dired".
10714
10715 2004-06-25 Kim F. Storm <storm@cua.dk>
10716
10717 * alloc.c (allocate_misc): Update total_free_markers.
10718 (free_misc): New function.
10719 (safe_alloca_unwind, free_marker): Use it.
10720
10721 * lisp.h (free_misc): Add prototype.
10722
10723 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
10724
10725 2004-06-24 Richard M. Stallman <rms@gnu.org>
10726
10727 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
10728 (syms_of_emacs): Lisp variables deleted.
10729
10730 2004-06-23 David Kastrup <dak@gnu.org>
10731
10732 * search.c (Freplace_match): Adjust the match-data more thoroughly
10733 when replacing strings in the buffer.
10734 (Fmatch_data): When INTEGERS is non-nil and the last match was in
10735 a buffer, add the buffer as last element to the match data.
10736 (Fset_match_data): If an additional element of the match-data is a
10737 buffer, restore it to last_thing_searched.
10738 (save_search_regs): Save last_thing_searched as part of the match data.
10739 (restore_match_data): Restore it again.
10740
10741 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
10742
10743 * keymap.c (Ftext_char_description): Doc fix.
10744 * doc.c (Fsnarf_documentation): Doc fix.
10745
10746 2004-06-22 Kim F. Storm <storm@cua.dk>
10747
10748 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
10749
10750 * lisp.h (struct Lisp_Save_Value): New member dogc.
10751 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
10752 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
10753 (SAFE_FREE_LISP): New macro.
10754
10755 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
10756 (make_save_value): Init new dogc member.
10757 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
10758
10759 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
10760 SAFE_FREE_LISP macros.
10761
10762 2004-06-22 Kim F. Storm <storm@cua.dk>
10763
10764 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
10765 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
10766 in that memory area are unknown to GC. Add comments.
10767
10768 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
10769
10770 2004-06-21 Kim F. Storm <storm@cua.dk>
10771
10772 * lisp.h (MAX_ALLOCA): Define here.
10773 (safe_alloca_unwind): Add prototype.
10774 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
10775
10776 * alloc.c (safe_alloca_unwind): New function.
10777
10778 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
10779
10780 * charset.c (Fstring): Use SAFE_ALLOCA.
10781
10782 * coding.c (MAX_ALLOCA): Remove define.
10783
10784 * data.c (MAX_ALLOCA): Remove define.
10785 (Faset): Use SAFE_ALLOCA.
10786
10787 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
10788
10789 * fns.c (string_make_multibyte, string_to_multibyte)
10790 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
10791 (MAX_ALLOCA): Remove define.
10792 (Fbase64_encode_region, Fbase64_encode_string)
10793 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
10794 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
10795 memory leak if encoding fails.
10796
10797 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
10798
10799 2004-06-21 Eli Zaretskii <eliz@gnu.org>
10800
10801 * print.c (Fwith_output_to_temp_buffer): Doc fix.
10802
10803 2004-06-20 Richard M. Stallman <rms@gnu.org>
10804
10805 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
10806
10807 * search.c (match_limit): Cleaner err msg when no match data available.
10808
10809 * window.c (syms_of_window): Doc fix.
10810
10811 * keyboard.c (command_loop_1): Handle values `only' and `identity'
10812 for Vtransient_mark_mode.
10813
10814 * buffer.c (syms_of_buffer): Doc fix.
10815
10816 2004-06-21 David Kastrup <dak@gnu.org>
10817
10818 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
10819 and unbinding of `case-fold-search' according to
10820 `completion-ignore-case' around calls of string-match and
10821 predicates, respectively. Should give satisfactory performance
10822 in all relevant cases.
10823
10824 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10825
10826 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
10827 clip_x/y_origin.
10828
10829 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
10830
10831 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
10832
10833 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
10834 on Mac OSX.
10835
10836 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
10837
10838 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
10839
10840 2004-06-16 Kim F. Storm <storm@cua.dk>
10841
10842 * dispextern.h (Vimage_types): Remove extern.
10843
10844 2004-06-16 Miles Bader <miles@gnu.org>
10845
10846 * image.c (lookup_image_type): Initialize image type if necessary.
10847
10848 2004-06-15 Kim F. Storm <storm@cua.dk>
10849
10850 * xdisp.c (try_cursor_movement): Exclude header line from scroll
10851 margin at top of window.
10852 (try_window_reusing_current_matrix): Calculate proper cursor position
10853 after scrolling up with non-zero scroll margin, as the old cursor
10854 position corresponds to value of PT before executing this command.
10855 (try_window_id): Consider scroll margin at bottom of window too;
10856 otherwise we fail to scroll when hl-line-mode is enabled.
10857
10858 * syntax.c (skip_chars): Only recognize [:class:] when it has the
10859 proper format and class is a lower-case word.
10860
10861 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10862
10863 * gtkutil.c (xg_get_image_for_pixmap): New function.
10864 (xg_get_gdk_pixmap_and_mask): Remove.
10865 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
10866 xg_get_gdk_pixmap_and_mask.
10867
10868 * xterm.h (struct x_display_info): Typo in comment fixed.
10869
10870 2004-06-14 Juanma Barranquero <lektu@terra.es>
10871
10872 * dispextern.h (Vimage_types): Make it conditional on
10873 HAVE_WINDOW_SYSTEM.
10874
10875 * image.c (Vimage_types): Move from xdisp.c.
10876 (Vimage_type_cache): New variable.
10877 (define_image_type): New argument indicating whether an image
10878 library was loaded; cache loaded status and return t on success,
10879 nil otherwise.
10880 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
10881 (w32_delayed_load): New function to load an image library from a
10882 list of possible filenames.
10883 (init_xpm_functions, init_png_functions, init_jpeg_functions)
10884 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
10885 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
10886 (Finit_image_library): New function, extracted from `init_image'.
10887 Try to initialize an image library on demand and cache whether we
10888 were successful or not.
10889 (syms_of_image): Initialize `Vimage_types' and
10890 `Vimage_type_cache'. Add recognized image types to Vimage_types.
10891 Export `init-image-library'.
10892 (init_image): Remove initialization of all image types, except xbm
10893 and pbm.
10894
10895 * xdisp.c (Vimage_types): Delete (moved to image.c).
10896
10897 2004-06-14 Andreas Schwab <schwab@suse.de>
10898
10899 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10900 Avoid calling specbind when completion-regexp-list is empty.
10901
10902 2004-06-13 Richard M. Stallman <rms@gnu.org>
10903
10904 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
10905 (re_wctype, re_iswctype, re_wctype_to_bit):
10906 Non-function definitions moved here from regex.c.
10907
10908 * regex.c (re_wctype, re_iswctype): Function defs longer static.
10909 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
10910 (re_wctype, re_iswctype, re_wctype_to_bit):
10911 Non-function definitions moved to regex.h.
10912
10913 * window.c (Fselect_window): Doc fix.
10914
10915 * syntax.c: Include regex.h.
10916 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
10917 If requested, make a list of classes, then check the scanned
10918 chars for membership in them.
10919 (in_classes): New function.
10920 Doc fix.
10921
10922 * keyboard.c (cmd_error): Don't call any_kboard_state
10923 if inside a recursive edit level.
10924
10925 2004-06-13 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
10926
10927 * keyboard.c (command_loop): Call any_kboard_state before
10928 command_loop_2 when at top level.
10929
10930 2004-06-13 Andreas Schwab <schwab@suse.de>
10931
10932 * print.c (print_object): Always use %ld for printing EMACS_INT.
10933
10934 * keyboard.c (cancel_hourglass_unwind): Return a value.
10935 (modify_event_symbol): Always use %ld for printing EMACS_INT.
10936 (Fexecute_extended_command): Likewise.
10937
10938 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
10939 avoid clashes.
10940 (SYNTAX): Likewise.
10941 (SYNTAX_WITH_FLAGS): Likewise.
10942 (SYNTAX_MATCH): Likewise.
10943
10944 * syntax.c (char_quoted): Avoid warning about undefined operation.
10945 (find_defun_start): Likewise.
10946 (scan_lists): Likewise.
10947 (INC_FROM): Likewise.
10948 (scan_sexps_forward): Likewise.
10949
10950 * image.c: Include <ctype.h>.
10951
10952 * xfaces.c (face_attr_equal_p): Declare parameters.
10953
10954 2004-06-13 Kenichi Handa <handa@m17n.org>
10955
10956 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
10957
10958 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
10959
10960 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
10961
10962 2004-06-12 Kenichi Handa <handa@m17n.org>
10963
10964 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
10965 ccl_prog_stack_struct and update it.
10966 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
10967 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
10968 ccl->eof_ic on EOF.
10969 (ccl_debug_hook): New function.
10970 (struct ccl_prog_stack): New member eof_ic.
10971 (ccl_driver): Handle EOF in subrountine call correctly.
10972
10973 2004-06-11 Kenichi Handa <handa@m17n.org>
10974
10975 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
10976
10977 2004-06-11 Kim F. Storm <storm@cua.dk>
10978
10979 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
10980
10981 2004-06-11 Juanma Barranquero <lektu@terra.es>
10982
10983 * keyboard.c (Fposn_at_point): Doc fix.
10984
10985 2004-06-11 David Kastrup <dak@gnu.org>
10986
10987 * search.c (match_limit): Don't flag an error if match-data
10988 exceeding the allocated search_regs.num_regs gets requested, just
10989 return Qnil.
10990
10991 2004-06-08 Miles Bader <miles@gnu.org>
10992
10993 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
10994
10995 2004-06-07 Juanma Barranquero <lektu@terra.es>
10996
10997 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
10998 (Fcurrent_time_string, Fcurrent_time_zone)
10999 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
11000
11001 2004-06-07 Miles Bader <miles@gnu.org>
11002
11003 * xfaces.c (struct named_merge_point): New type.
11004 (push_named_merge_point): New function.
11005 (merge_named_face): New function.
11006 (merge_face_ref, face_at_buffer_position, face_at_string_position):
11007 Use `merge_named_face'.
11008 (merge_face_inheritance): Function removed.
11009 (merge_face_ref): Rename from `merge_face_vector_with_property'.
11010 Add new `err_msgs' and `named_merge_points' args. Return error
11011 status. Only print error messages if ERR_MSGS is true. Don't try to
11012 do :inherit attribute validation.
11013 (merge_face_heights): Handle `unspecified' in both directions.
11014 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
11015 Call `merge_face_ref' instead of `merge_face_inheritance'.
11016 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
11017 (compute_char_face, face_at_buffer_position)
11018 (face_at_string_position): Call `merge_face_ref' instead of
11019 `merge_face_vector_with_property'.
11020
11021 2004-06-07 Kenichi Handa <handa@m17n.org>
11022
11023 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
11024 the necessary places.
11025
11026 2004-06-07 Kim F. Storm <storm@cua.dk>
11027
11028 * process.c (Fdelete_process): Undo 2004-05-28 change.
11029 Instead, call status_notify also for network process.
11030 (status_message): Use process instead of status as arg.
11031 Give messages "deleted" or "connection broken by remote peer" for
11032 an exited network process.
11033 (status_notify): Change call to status_message.
11034 (read_process_output): Increase readmax to 4096. Do not increase
11035 buffer size for datagram channels (default is now large enough).
11036
11037 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
11038
11039 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
11040 problem due to newly defined variable.
11041
11042 2004-06-06 Miles Bader <miles@gnu.org>
11043
11044 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
11045 immediately if non-interactive or not initialized.
11046
11047 2004-06-05 Richard M. Stallman <rms@gnu.org>
11048
11049 * minibuf.c (Fcompleting_read): Doc fix.
11050
11051 2004-06-05 Andreas Schwab <schwab@suse.de>
11052
11053 * macfns.c (x_create_tip_frame): Fix declaration after statement.
11054
11055 2004-06-05 Juanma Barranquero <lektu@terra.es>
11056
11057 * keymap.c (Fdescribe_vector): Fix docstring.
11058 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
11059
11060 2004-06-05 Miles Bader <miles@gnu.org>
11061
11062 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
11063 attributes have different values than the default face.
11064
11065 2004-06-04 Eli Zaretskii <eliz@gnu.org>
11066
11067 * xfaces.c (x_supports_face_attributes_p): Make this function
11068 conditional on HAVE_WINDOW_SYSTEM.
11069 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
11070 Don't call x_supports_face_attributes_p if it was not compiled in.
11071
11072 2004-06-04 Miles Bader <miles@gnu.org>
11073
11074 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
11075 from Ftty_supports_face_attributes_p.
11076 (x_supports_face_attributes_p): New function.
11077 (Ftty_supports_face_attributes_p): Function deleted.
11078 (Fdisplay_supports_face_attributes_p): New function.
11079 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
11080 (face_attr_equal_p): New function.
11081 (lface_equal_p): Use it.
11082
11083 2004-06-03 Juanma Barranquero <lektu@terra.es>
11084
11085 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
11086 (Vw32_color_map): Fix typo in docstring.
11087 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
11088 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
11089 Make argument names match their use in docstring.
11090
11091 2004-06-02 Juanma Barranquero <lektu@terra.es>
11092
11093 Work around bugs/problems with MinGW builds of graphics libraries
11094 called from MSVC builds of Emacs.
11095
11096 * image.c (lookup_image): Make pointer to img static.
11097 (png_read_from_memory): Disable "global" optimization.
11098
11099 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
11100
11101 * eval.c (Fcondition_case): Fix usage. Simplify.
11102
11103 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
11104
11105 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11106
11107 * macfns.c: Don't include ccl.h.
11108 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
11109 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
11110 TextUtils.h.
11111 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
11112 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
11113 display height/width.
11114 (compute_tip_xy, Vx_max_tooltip_size): Declare.
11115 (unwind_create_tip_frame, compute_tip_xy): New functions.
11116 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
11117 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
11118 and last_show_tip_args.
11119
11120 * macgui.h [!MAC_OSX]: Include Gestalt.h.
11121 (Cursor, No_Cursor): New defines.
11122 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
11123 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
11124
11125 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
11126
11127 * macterm.c: Don't include Gestalt.h.
11128 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
11129 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
11130 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
11131 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
11132 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
11133 (construct_mouse_click, XTmouse_position)
11134 (x_scroll_bar_report_motion, x_calc_absolute_position)
11135 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
11136 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
11137 (note_mouse_movement): Clear the mouse face and reset the pointer
11138 shape when the pointer goes outside the frame without grabbing.
11139 (mac_front_window): New function.
11140 (mac_window_to_frame): New macro.
11141 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
11142 (do_window_activate, do_window_deactivate, do_app_resume)
11143 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
11144 (do_zoom_window, mac_do_receive_drag, XTread_socket)
11145 (mac_check_for_quit_char): Use mac_front_window and/or
11146 mac_window_to_frame.
11147 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
11148 scroll-bar click event.
11149 (mac_define_frame_cursor): Change the pointer shape.
11150 (x_free_frame_resources): Reset tip_window to NULL when it is
11151 disposed of.
11152 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
11153 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
11154 (do_window_update): Don't do anything if the updated window is the
11155 tooltip window.
11156 (do_mouse_moved): Handle mouse movement events here (previously in
11157 XTread_socket). Clear the mouse face if
11158 dpyinfo->mouse_face_hidden is set.
11159 (do_os_event, do_events): Remove (now in XTread_socket).
11160 (XTread_socket): Immediately return if interrupt_input_blocked.
11161 Loop until all the events in the queue are processed.
11162 Rearrange codes for mouse grabbing. Add tooltip support. Include the
11163 contents of do_os_event and do_events. Remove mouse movement
11164 handling (now in do_mouse_moved). Add the case where
11165 Vmouse_highlight has an integer value.
11166 (NewMacWindow): Remove.
11167 (make_mac_frame): Do what NewMacWindow previously did. Don't do
11168 excess initializations.
11169 (make_mac_terminal_frame): Previous initializations in
11170 make_mac_frame are moved here.
11171 (mac_initialize_display_info):
11172 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
11173
11174 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
11175 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
11176
11177 2004-05-29 Richard M. Stallman <rms@gnu.org>
11178
11179 * lisp.h (truncate_undo_list): Update decl.
11180
11181 * alloc.c (undo_outer_limit): New variable.
11182 (syms_of_alloc): Defvar it.
11183 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
11184
11185 * undo.c (truncate_undo_list): New arg LIMITSIZE.
11186
11187 * alloc.c (lisp_align_malloc): Check for base == 0
11188 regardless of HAVE_POSIX_MEMALIGN.
11189 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
11190
11191 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11192
11193 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
11194 (marker_blocks_pending_free): Remove.
11195 (Fgarbage_collect): Sweep after cleaning up undo-lists.
11196 Mark the undo lists after claning them up.
11197 Don't free block in marker_blocks_pending_free.
11198 (mark_buffer): Don't mark undo_list.
11199 (gc_sweep): Sweep hash-tables and strings first.
11200 Do free marker blocks that are empty.
11201
11202 2004-05-28 Jim Blandy <jimb@redhat.com>
11203
11204 * regex.c (print_partial_compiled_pattern): Add missing 'break'
11205 after 'case wordend'. For symbeg and symend, print to stderr,
11206 like the other cases.
11207
11208 2004-05-28 Noah Friedman <friedman@splode.com>
11209
11210 * process.c (Fdelete_process): Do not call remove_process.
11211
11212 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11213
11214 * alloc.c (struct backtrace): Remove.
11215 (Fgarbage_collect): Use the new mark_backtrace.
11216
11217 * eval.c (mark_backtrace): New function.
11218
11219 * minibuf.c (run_exit_minibuf_hook): New function.
11220 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
11221 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
11222
11223 2004-05-27 Kim F. Storm <storm@cua.dk>
11224
11225 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
11226 over display properties, e.g. images, that replace buffer text.
11227
11228 2004-05-25 Kim F. Storm <storm@cua.dk>
11229
11230 * alloc.c (marker_blocks_pending_free): New var.
11231 (gc_sweep): Store free marker blocks on that list.
11232 (Fgarbage_collect): Free them after undo-list cleanup.
11233
11234 * process.c (wait_reading_process_input): Check connect_wait_mask
11235 before actually accepting connection in case it has already been
11236 accepted due to recursion.
11237
11238 2004-05-23 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
11239
11240 * coding.c (Fset_safe_terminal_coding_system_internal):
11241 Set suppress_error in safe_terminal_coding, not terminal_coding.
11242
11243 2004-05-22 Richard M. Stallman <rms@gnu.org>
11244
11245 * alloc.c (Fmake_string): Doc fix.
11246
11247 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
11248 and the alist pairs too.
11249
11250 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
11251
11252 * emacs.c (main): Update copyright year.
11253
11254 * fileio.c (Fread_file_name): Expand DIR if not absolute.
11255
11256 * insdel.c (del_range_2, replace_range): Don't write an anchor
11257 if the gap is empty.
11258
11259 * xdisp.c (try_scrolling): If scroll-up-aggressively or
11260 scroll-down-aggressively is small but positive, put point
11261 near the screen edge.
11262
11263 2004-05-22 Juanma Barranquero <lektu@terra.es>
11264
11265 * keymap.c (Fdefine_key): Doc fix.
11266
11267 2004-05-22 Kim F. Storm <storm@cua.dk>
11268
11269 * alloc.c (struct backtrace): Add debug_on_exit member.
11270 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
11271 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
11272 the removed cons cells.
11273 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
11274 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
11275 any cons cells pointing to unallocated stings.
11276 Do not lisp_free any marker blocks, as there may still be pointers
11277 to them from buffer undo lists at this stage of GC.
11278
11279 * keyboard.c (struct backtrace): Add debug_on_exit member.
11280 (Fcommand_execute): Clear it.
11281
11282 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
11283
11284 * intervals.c (lookup_char_property): Do not prematurely return nil.
11285
11286 2004-05-19 Jim Blandy <jimb@redhat.com>
11287
11288 Add support for new '\_<' and '\_>' regexp operators, matching the
11289 beginning and end of symbols.
11290
11291 * regex.c (enum syntaxcode): Add Ssymbol.
11292 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
11293 (re_opcode_t): New opcodes `symbeg' and `symend'.
11294 (print_partial_compiled_pattern): Print the new opcodes properly.
11295 (regex_compile): Parse the new operators.
11296 (analyse_first): Skip sym(beg|end) (they match only the empty string).
11297 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
11298 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
11299 (re_match_2_internal): Match symbeg and symend.
11300
11301 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
11302
11303 2004-05-19 Kim F. Storm <storm@cua.dk>
11304
11305 * .gdbinit (xsymbol): Fix last change.
11306
11307 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
11308
11309 * .gdbinit (xprintstr): New fun.
11310 (xstring, xprintsym): Use it.
11311
11312 * w32proc.c (create_child): Use INTMASK.
11313
11314 * alloc.c (Fgarbage_collect): Do all the marking before flushing
11315 unmarked elements of the undo list.
11316
11317 2004-05-18 David Ponce <david@dponce.com>
11318
11319 * print.c (print): Reset print_depth before to call print_object.
11320
11321 2004-05-18 Jason Rumney <jasonr@gnu.org>
11322
11323 * w32console.c: Prefix RIF functions with w32con_ to avoid
11324 namespace clash with functions in term.c and w32term.c.
11325
11326 * w32menu.c (add_menu_item, w32_menu_display_help)
11327 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
11328
11329 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
11330
11331 2004-05-18 Eli Zaretskii <eliz@gnu.org>
11332
11333 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
11334
11335 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
11336 with make_number.
11337 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
11338 with XINT.
11339
11340 2004-05-18 Kim F. Storm <storm@cua.dk>
11341
11342 * blockinput.h (INPUT_BLOCKED_P): New macros.
11343
11344 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
11345 (Ftop_level): Unblock input if blocked.
11346
11347 * buffer.h (GET_OVERLAYS_AT): New macro.
11348 * msdos.c (IT_note_mouse_highlight): Use it.
11349 * textprop.c (get_char_property_and_overlay): Use it.
11350 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
11351 * xfaces.c (face_at_buffer_position): Use it.
11352
11353 * print.c (print_object): Increase buf size.
11354
11355 2004-05-17 Jason Rumney <jasonr@gnu.org>
11356
11357 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
11358 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
11359 Lisp_Object using i member.
11360 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
11361 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
11362 consistently.
11363
11364 * w32proc.c (create_child): Use make_number instead of masking pid.
11365
11366 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
11367 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
11368 Use EQ to compare Lisp_Objects.
11369 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
11370
11371 * w32term.c (w32_num_mouse_buttons): Rename from
11372 Vw32_num_mouse_buttons and make it an int.
11373
11374 * w32.c (init_environment): Use it.
11375
11376 * w32fns.c (w32_wnd_proc): Likewise.
11377
11378 * w32proc.c (w32_pipe_read_delay): Rename from
11379 Vw32_pipe_read_delay and make it an int.
11380
11381 * w32.c (_sys_read_ahead): Use it.
11382
11383 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
11384
11385 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
11386
11387 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
11388 (key_event): Don't mix Lisp_Object and int.
11389
11390 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
11391
11392 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
11393 modifiers in language change event.
11394
11395 2004-05-17 Kim F. Storm <storm@cua.dk>
11396
11397 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
11398 Such objects may be freed markers which still exist on an undo list.
11399
11400 2004-05-16 Juanma Barranquero <lektu@terra.es>
11401
11402 * data.c (Fset_default): Make argument names match their use in
11403 docstring.
11404
11405 2004-05-15 Andreas Schwab <schwab@suse.de>
11406
11407 * emacs.c (gdb_array_mark_flag): Define.
11408 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
11409
11410 2004-05-15 Eli Zaretskii <eliz@gnu.org>
11411
11412 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
11413 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
11414 defined for the MS-DOS build.
11415
11416 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
11417
11418 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
11419
11420 2004-05-14 Kenichi Handa <handa@m17n.org>
11421
11422 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
11423
11424 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11425
11426 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
11427 section to frame.c section.
11428 (Fxw_display_color_p, Fx_file_dialog): Declare if
11429 HAVE_WINDOW_SYSTEM defined.
11430
11431 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
11432
11433 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
11434
11435 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
11436 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
11437 (XTread_socket): Fix int/Lisp_Object mixup.
11438 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
11439
11440 * macterm.h (struct frame, struct face, struct image)
11441 (display_x_get_resource, Fx_display_color_p)
11442 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
11443 Add prototypes.
11444
11445 2004-05-14 Kim F. Storm <storm@cua.dk>
11446
11447 * process.c (wait_reading_process_input): Make reentrant.
11448 Make Available and Connecting non-static. Save and restore value
11449 of waiting_for_user_input_p.
11450
11451 2004-05-13 Kim F. Storm <storm@cua.dk>
11452
11453 * keyboard.c (mark_kboards): Don't mark x and y members
11454 that are overloaded in selection request events.
11455
11456 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
11457
11458 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
11459
11460 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
11461
11462 * window.c (Fdisplay_buffer, Fsplit_window)
11463 (split-height-threshold): Doc fix.
11464
11465 2004-05-13 Juanma Barranquero <lektu@terra.es>
11466
11467 * xfaces.c (Ftty_supports_face_attributes_p)
11468 (Finternal_copy_lisp_face): Fix typo in docstring.
11469 (Finternal_get_lisp_face_attribute): Fix docstring.
11470
11471 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11472
11473 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
11474
11475 2004-05-11 Steven Tamm <steventamm@mac.com>
11476
11477 * macfns.c (Fx_create_frame): Default to using tool-bar by
11478 setting tool-bar-lines to 1 in default-frame-alist.
11479
11480 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11481
11482 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
11483 (xpm_get_color_table_v, xpm_make_color_table_h)
11484 (xpm_put_color_table_h, xpm_get_color_table_h)
11485 (xpm_str_to_color_key, xpm_load_image, xpm_load)
11486 (syms_of_image): Support XPM on Carbon Emacs. Does not
11487 depend on libXpm, but only supports XPM version 3 without extensions.
11488
11489 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11490
11491 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
11492 instead of FRAME_X_P
11493
11494 2004-05-11 Kim F. Storm <storm@cua.dk>
11495
11496 * process.c (read_process_output): Grow decoding_buf when needed;
11497 this could cause a crash in allocate_string and compact_small_strings.
11498
11499 2004-04-29 Jim Blandy <jimb@redhat.com>
11500
11501 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
11502 against proper opcode.
11503
11504 2004-05-10 Juanma Barranquero <lektu@terra.es>
11505
11506 * process.c (Fstart_process): Fix docstring.
11507
11508 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
11509 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
11510 (Fsplit_char, Fchar_charset): Make argument names match their use
11511 in docstring.
11512
11513 2004-05-10 Richard M. Stallman <rms@gnu.org>
11514
11515 * print.c (print_preprocess): Use being_printed, loop_count and
11516 halftail to detect overdeep nesting and cyclic cdr chains.
11517
11518 2004-05-10 Andreas Schwab <schwab@suse.de>
11519
11520 * lisp.h (Fmake_symbolic_link): Declare.
11521
11522 * fileio.c (Frename_file): Remove extra argument in call to
11523 Fmake_symbolic_link.
11524
11525 2004-05-10 Kim F. Storm <storm@cua.dk>
11526
11527 * xdisp.c (calc_line_height_property): Use string position when
11528 object is a string.
11529
11530 2004-05-10 Kenichi Handa <handa@m17n.org>
11531
11532 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
11533 inhibit-modification-hooks to t temporarily before calling
11534 Ferase_buffer.
11535
11536 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
11537 inhibit-modification-hooks to t temporarily before calling
11538 Ferase_buffer.
11539
11540 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
11541 inhibit-modification-hooks to t temporarily before calling
11542 Ferase_buffer.
11543
11544 * fns.c (count_combining): Delete it.
11545 (concat): Don't check combining bytes.
11546
11547 2004-05-09 Jason Rumney <jasonr@gnu.org>
11548
11549 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
11550 (globals_of_w32fns): Set it.
11551
11552 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
11553
11554 * data.c (Fquo): Simplify.
11555
11556 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
11557
11558 * data.c (Fquo): If any argument is float, do the computation in
11559 floating point.
11560
11561 2004-05-08 Juanma Barranquero <lektu@terra.es>
11562
11563 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
11564 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
11565 Fix spelling of Emacs on docstring.
11566 (Fset_process_coding_system, Fprocess_coding_system)
11567 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
11568 Make argument names match their use in docstring.
11569 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
11570 Fix docstring.
11571
11572 * editfns.c (Finsert_buffer_substring): Make argument names match their
11573 use in docstring.
11574
11575 * syntax.c (Fmodify_syntax_entry): Fix docstring.
11576
11577 2004-05-07 Steven Tamm <steventamm@mac.com>
11578
11579 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
11580 around call to ReceiveEvent to avoid certain crashes.
11581
11582 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11583
11584 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
11585 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
11586 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
11587 Save/restore the current graphics port and device handle when
11588 drawing into an offscreen graphics world.
11589
11590 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
11591 (gif_load): Likewise.
11592
11593 2004-05-07 Juanma Barranquero <lektu@terra.es>
11594
11595 * window.c (Fset_window_buffer): Fix docstring.
11596
11597 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
11598
11599 * emacs.c (main) [VMS]: Fix var ref.
11600
11601 2004-05-06 Romain Francoise <romain@orebokech.com>
11602
11603 * data.c (Fsetq_default): Fix docstring.
11604
11605 2004-05-06 Jason Rumney <jasonr@gnu.org>
11606
11607 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
11608 to avoid name clash.
11609
11610 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11611
11612 * fileio.c (barf_or_query_if_file_exists): Use lstat.
11613 (Frename_file): Handle renaming of symlinks across file systems.
11614 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
11615
11616 2004-05-04 Kim F. Storm <storm@cua.dk>
11617
11618 * xdisp.c (Qtotal): New var.
11619 (syms_of_xdisp): Intern and staticpro it.
11620 (calc_line_height_property): New arg total. Set it if
11621 line-spacing property has format (total . VALUE).
11622 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
11623 Handle total line-spacing property.
11624
11625 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11626
11627 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
11628 "under" scroll bar when size/position changes.
11629
11630 2004-05-03 Jason Rumney <jasonr@gnu.org>
11631
11632 * makefile.nt: Remove.
11633
11634 2004-05-02 Eli Zaretskii <eliz@gnu.org>
11635
11636 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
11637 Avoid compiler warnings.
11638
11639 * Makefile.in (region-cache.o): Depend on config.h.
11640
11641 2004-05-02 Romain Francoise <romain@orebokech.com>
11642
11643 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
11644 with continuation lines, too.
11645
11646 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
11647
11648 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
11649
11650 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
11651
11652 * xdisp.c (calc_line_height_property): YAILOM (yet another
11653 int/Lisp_Object mixup).
11654
11655 2004-05-01 Eli Zaretskii <eliz@gnu.org>
11656
11657 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
11658 undo bad effect of pack(4) in some versions of system headers.
11659
11660 2004-05-01 Jason Rumney <jasonr@gnu.org>
11661
11662 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
11663
11664 2004-04-30 Kim F. Storm <storm@cua.dk>
11665
11666 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
11667 (syms_of_buffer) <cursor-type>: Doc fix.
11668
11669 * dispextern.h (struct it): Remove member use_default_face.
11670 Add members override_ascent, override_descent, override_boff.
11671
11672 * xdisp.c (init_iterator): Handle line-spacing float value.
11673 Initialize override_ascent member.
11674 (append_space_for_newline): Reset override_ascent.
11675 Remove use_default_face.
11676 (calc_line_height_property): New function to calculate value of
11677 line-height and line-spacing properties. Look at overlays, too.
11678 Set override_ascent, override_descent, override_boff members when
11679 using another face than the current face. Float values are now
11680 relative to the frame default font, by default; accept a cons
11681 of ratio and face name to specify value relative to a specific face.
11682 (x_produce_glyphs): Use calc_line_height_property.
11683 Use override_ascent etc. when set to handle different face heights.
11684 A negative line-spacing property value is interpreted as a total
11685 line height, rather than inter-line spacing.
11686 (note_mouse_highlight): Allocate room for 40 overlays initially.
11687
11688 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
11689
11690 * data.c (Fsubr_name): New fun.
11691 (syms_of_data): Defsubr it.
11692
11693 2004-04-29 Kim F. Storm <storm@cua.dk>
11694
11695 * xdisp.c (null_glyph_slice): New var.
11696 (append_glyph, append_composite_glyph, append_stretch_glyph):
11697 Use it to initialize glyph slice.
11698
11699 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
11700
11701 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
11702 (on_hot_spot_p): Make sure we always return a value.
11703 (Flookup_image_map): Remove unused var ix and iy.
11704 (note_mode_line_or_margin_highlight): Remove unused var `image'.
11705
11706 2004-04-27 Eli Zaretskii <eliz@gnu.org>
11707
11708 * msdos.c (init_environment): If one of the TMP... environment
11709 variables is set to a drive letter without a trailing slash,
11710 append a slash.
11711
11712 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
11713
11714 * editfns.c (lisp_time_argument): Provide externally.
11715
11716 * fileio.c (Fset_file_times): New function.
11717 (syms_of_fileio): Intern and staticpro it.
11718
11719 2004-04-27 Kim F. Storm <storm@cua.dk>
11720
11721 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
11722 header line strings.
11723
11724 * dispextern.h (struct it): New member use_default_face.
11725
11726 * xdisp.c (Qline_height): New variable.
11727 (syms_of_xdisp): Intern and staticpro it.
11728 (append_space_for_newline): Partially undo 2004-04-25 change;
11729 add default_face_p arg, and restore callers.
11730 Clear it->use_default_face after use.
11731 (x_produce_glyphs): Set default font for ascii char if
11732 it->use_default_font is set. Change line-spacing property to set
11733 just extra line spacing. Handle new line-height property.
11734
11735 2004-04-26 Andreas Schwab <schwab@suse.de>
11736
11737 * print.c (print_object): Print non-ascii characters in bool
11738 vector representation as octal escapes.
11739
11740 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
11741 * print.c (print_object): Use it instead of BITS_PER_CHAR for
11742 bool vectors.
11743 * lread.c (read1): Likewise.
11744 * alloc.c (Fmake_bool_vector): Likewise.
11745 * data.c (Faref, Faset): Likewise.
11746 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
11747 (mapcar1): Likewise.
11748
11749 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
11750
11751 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
11752
11753 2004-04-26 Miles Bader <miles@gnu.org>
11754
11755 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
11756
11757 2004-04-26 Juanma Barranquero <lektu@terra.es>
11758
11759 * buffer.c (Fpop_to_buffer): Fix docstring.
11760
11761 2004-04-26 Steven Tamm <steventamm@mac.com>
11762
11763 * lread.c (init_lread): Don't display missing lisp directory
11764 warnings with Carbon Emacs because self-contained bundled Emacs
11765 may be built without correct installation path.
11766
11767 2004-04-25 Kim F. Storm <storm@cua.dk>
11768
11769 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
11770
11771 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
11772
11773 * xdisp.c (append_space_for_newline): Rename from append_space.
11774 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
11775 (x_produce_glyphs): Handle line-spacing property on newline char.
11776 If value is t, adjust ascent and descent to fit current row height.
11777 If value is an integer or float, set extra_line_spacing to integer
11778 value, or to float value x current line height.
11779
11780 2004-04-23 Kenichi Handa <handa@m17n.org>
11781
11782 * fontset.c (Finternal_char_font): If POSITION is nil, return
11783 font for displaying CH with the default face.
11784
11785 2004-04-23 Juanma Barranquero <lektu@terra.es>
11786
11787 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
11788
11789 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
11790
11791 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
11792 Don't make assumptions about the relative place of i and val.
11793 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
11794
11795 2004-04-21 Kim F. Storm <storm@cua.dk>
11796
11797 * dispextern.h (struct glyph_slice): New struct.
11798 (struct glyph): New member slice.
11799 (GLYPH_SLICE_EQUAL_P): New macro.
11800 (GLYPH_EQUAL_P): Use it.
11801 (struct glyph_string): New member slice.
11802 (struct it_slice): New struct.
11803 (struct it): New member slice, add member to stack too.
11804 New member constrain_row_ascent_descent_p.
11805 (image_ascent): Add prototype.
11806
11807 * dispnew.c (buffer_posn_from_coords): Return full image width
11808 and height even for image slices (posn is relative to full image).
11809 (marginal_area_string): Adjust x0,y0 for image slice.
11810
11811 * image.c (image_ascent): Add slice arg; calculate ascent for
11812 image slice (or full image).
11813
11814 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
11815 (syms_of_keyboard): Defsubr them.
11816
11817 * lisp.h (pos_visible_p): Fix prototype.
11818
11819 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
11820 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
11821 (x_draw_image_foreground, x_draw_image_relief)
11822 (x_draw_image_foreground_1, x_draw_image_glyph_string):
11823 Draw sliced images.
11824
11825 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
11826 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
11827 (x_draw_image_foreground, x_draw_image_relief)
11828 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
11829 Draw sliced images.
11830
11831 * w32term.h (image_ascent): Remove prototype.
11832
11833 * window.c (Fpos_visible_in_window_p): Return pixel position if
11834 PARTIALLY arg is non-nil. Simplify. Doc fix.
11835 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
11836 to return/set vscroll in pixels.
11837
11838 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
11839
11840 * xdisp.c (Qslice): New variable.
11841 (syms_of_xdisp): Intern and staticpro it.
11842 (pos_visible_p): Return pixel position in new x and y args.
11843 (init_iterator): Reset it->slice info.
11844 (handle_display_prop): Parse (slice ...) property.
11845 (push_it, pop_it): Save/restore slice info.
11846 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
11847 force repositioning of tall row if window is vscrolled, as that
11848 would reset vscroll.
11849 (append_space): Set it->constrain_row_ascent_descent_p to avoid
11850 increasing row height if row is non-empty.
11851 (fill_image_glyph_string): Copy slice info.
11852 (take_vertical_position_into_account): Simplify.
11853 (produce_image_glyph): Handle iterator slice info, setup glyph
11854 slice info. Do not force minimum line height.
11855 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
11856 do not increase height (ascent/descent) of non-empty row when
11857 adding normal character glyph; instead reduce glyph ascent/descent
11858 appropriately; if row is higher than current glyph, adjust glyph
11859 descent/ascent to reposition glyph within the existing row.
11860 Likewise, when char is newline, only set ascent/descent if row is
11861 currently empty.
11862 (note_mouse_highlight): Handle hotspots with sliced image.
11863
11864 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
11865 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
11866 (x_draw_image_foreground, x_draw_image_relief)
11867 (x_draw_image_foreground_1, x_draw_image_glyph_string):
11868 Draw sliced images.
11869
11870 * xterm.h (image_ascent): Remove prototype.
11871
11872 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
11873
11874 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
11875
11876 2004-04-20 John Paul Wallington <jpw@gnu.org>
11877
11878 * fns.c (Fassoc, Feql): Fix indentation.
11879
11880 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
11881
11882 2004-04-19 John Paul Wallington <jpw@gnu.org>
11883
11884 * fns.c (Feql): New function.
11885 (syms_of_fns): Defsubr it.
11886
11887 2004-04-18 Jason Rumney <jasonr@gnu.org>
11888
11889 * w32select.c (Fw32_set_clipboard_data): Get sequence number
11890 after closing the clipboard.
11891
11892 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
11893
11894 * buffer.c (Fbuffer_base_buffer): Doc fix.
11895
11896 2004-04-17 Kim F. Storm <storm@cua.dk>
11897
11898 * keymap.c (Fkey_description): Add optional PREFIX arg.
11899 Combine prefix with KEYS to make up the full key sequence to describe.
11900 Correlate meta_prefix_char and following (simple) key to describe
11901 as meta modifier. All callers changed.
11902 (describe_map): Rename arg `keys' to `prefix'. Remove local
11903 `elt_prefix' var. Use Fkey_description with prefix instead of
11904 elt_prefix combined with Fsingle_key_description.
11905 (describe_vector): Declare static. Replace arg `elt_prefix' with
11906 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
11907 if !KEYMAP_P. Use Fkey_description with prefix instead of
11908 Fsingle_key_description.
11909
11910 * keymap.h (Fkey_description): Fix prototype.
11911 (describe_vector): Remove prototype.
11912
11913 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
11914
11915 * image.c (PNG_BG_COLOR_SHIFT): Remove.
11916 (png_load): Fix calculation of transparent background color on X
11917 and W32 platforms.
11918
11919 2004-04-16 Juanma Barranquero <lektu@terra.es>
11920
11921 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
11922 not too large before computing how much to scroll.
11923
11924 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
11925
11926 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
11927
11928 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
11929
11930 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
11931 Add hyperlink to Elisp manual to the docstring.
11932
11933 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
11934
11935 * callint.c (fix_command): Use XDCR.
11936
11937 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
11938
11939 * window.c (Fget_lru_window): Doc fix.
11940
11941 2004-04-14 Kim F. Storm <storm@cua.dk>
11942
11943 * editfns.c (Fformat): Fix allocation size of precision array.
11944
11945 * dispnew.c (update_window): Only set changed_p if
11946 scrolling_window actually did scroll.
11947 (scrolling_window): Only return 1 if we actually did scroll.
11948
11949 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
11950 height to glyph height when cursor row is not fully visible.
11951 (make_cursor_line_fully_visible): Add FORCE_P arg to return
11952 failure in case row is higher than window. Callers changed.
11953 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
11954 Try to scroll partially visible, higher-than-window cursor row.
11955 (redisplay_window): Always try to scroll partially visible,
11956 higher-than-window cursor row - both initially and again with
11957 centering_position = 0.
11958 Clear desired matrix before retrying with centering_position = 0.
11959
11960 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
11961
11962 * syntax.c (scan_lists): Simplify backward string scan.
11963 Fix off-by-one boundary check for string and comment fences.
11964
11965 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
11966
11967 * sheap.c, unexcw.c: New files.
11968
11969 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
11970
11971 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
11972 base buffer has been killed. Correct the error message if the
11973 base buffer does not exist.
11974
11975 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
11976
11977 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
11978 Cygwin itself. Add support for Xaw3d scrollbars.
11979
11980 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
11981
11982 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
11983
11984 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
11985 before Cygwin unexec.
11986
11987 * Makefile.in: Link changes for Cygwin unexec() support.
11988
11989 2004-04-12 Andreas Schwab <schwab@suse.de>
11990
11991 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
11992
11993 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
11994
11995 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
11996 IGNORE argument equals NAME. Doc fix.
11997
11998 2004-04-11 Masatake YAMATO <jet@gyve.org>
11999
12000 * buffer.c (fix_start_end_in_overlays): Make overlays
12001 empty if they are backwards.
12002
12003 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
12004
12005 * xfaces.c (face_color_supported_p): Fix compilation without X11.
12006
12007 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
12008
12009 * doc.c (Fsnarf_documentation): Ignore new file name entries.
12010
12011 2004-04-06 Kim F. Storm <storm@cua.dk>
12012
12013 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
12014 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
12015
12016 * w32term.c (w32_read_socket): Set mouse_face_hidden after
12017 clearing highlight.
12018
12019 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
12020
12021 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
12022 clearing highlight.
12023
12024 * indent.c (vmotion): Do not reserve one column for continuation
12025 marks on window frames.
12026
12027 2004-04-04 Eli Zaretskii <eliz@gnu.org>
12028
12029 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
12030 from GCC.
12031
12032 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
12033
12034 * .gdbinit-union: Remove.
12035
12036 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
12037 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
12038 ($nonvalbits): Remove.
12039 ($valmask): Set it by calling xreload to avoid redundancy.
12040
12041 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
12042 (gdb_emacs_intbits): Remove.
12043
12044 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12045
12046 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
12047
12048 2004-03-30 Kenichi Handa <handa@m17n.org>
12049
12050 * editfns.c (Fformat): Fix initialization of the array info.
12051
12052 2004-03-30 Kim F. Storm <storm@cua.dk>
12053
12054 * xterm.c (x_mouse_click_focus_ignore_position): New var.
12055 (syms_of_xterm): DEFVAR_BOOL it.
12056 (ignore_next_mouse_click_timeout): New var.
12057 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
12058 Use it to filter mouse clicks following focus event.
12059
12060 2004-03-29 David Ponce <david@dponce.com>
12061
12062 * callint.c (Fcall_interactively): Fix last change.
12063
12064 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
12065
12066 * eval.c (Fcommandp): Simplify.
12067
12068 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
12069 Extend to handle all kinds of functions.
12070
12071 * lisp.h (Finteractive_form): Declare.
12072
12073 * callint.c (Fcall_interactively): Use it.
12074
12075 2004-03-26 Kim F. Storm <storm@cua.dk>
12076
12077 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
12078 to catch errors in calc_pixel_width_or_height during redisplay.
12079
12080 2004-03-26 Masatake YAMATO <jet@gyve.org>
12081
12082 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
12083
12084 * lisp.h (fix_start_end_in_overlays): Likewise.
12085
12086 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
12087
12088 * editfns.c (Ftranspose_regions): Likewise.
12089
12090 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12091
12092 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
12093
12094 2004-03-19 Richard M. Stallman <rms@gnu.org>
12095
12096 * s/sol2-6.h: Delete previous change.
12097
12098 2004-03-19 Kim F. Storm <storm@cua.dk>
12099
12100 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
12101 to_charpos corresponds to newline in right fringe. Use local
12102 BUFFER_POS_REACHED_P macro.
12103
12104 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12105
12106 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
12107 to compile on non-window system.
12108
12109 2004-03-19 Kim F. Storm <storm@cua.dk>
12110
12111 * dispextern.h (calc_pixel_width_or_height): Add prototype.
12112
12113 * image.c (Qcenter): Move to xdisp.c.
12114
12115 * xdisp.c (Qcenter): Declare here.
12116 (syms_of_xdisp): Intern and staticpro it.
12117 (handle_single_display_prop): Allow space display property on all
12118 platforms.
12119 (display_mode_line): Set mode_line_p before displaying line.
12120 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
12121 handling. Remove complex cases for fringes and scroll-bars.
12122 Add left, right, and center alignment positions. Add text (area)
12123 width/height. Return width or height for image specs.
12124 (produce_stretch_glyph): Improve handling of :align-to. Is now
12125 relative to left of text area by default, but other base offsets
12126 can be specified -- also for text lines.
12127
12128 * term.c (produce_glyphs): Handle IT_STRETCH.
12129 (produce_stretch_glyph): New function to handle space width and
12130 align-to display properties on non-window systems.
12131
12132 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
12133
12134 * fileio.c (Fread_file_name): Set completion-ignore-case for
12135 case-insensitive systems.
12136
12137 2004-03-14 Masatake YAMATO <jet@gyve.org>
12138
12139 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
12140 when keymap and cursor are setup.
12141
12142 2004-03-14 Steven Tamm <steventamm@mac.com>
12143
12144 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
12145
12146 2004-03-14 Kim F. Storm <storm@cua.dk>
12147
12148 * dispextern.h (x_find_image_file): Add prototype.
12149
12150 * image.c (x_find_image_file): Make extern.
12151
12152 * xfns.c (x_find_image_file): Remove prototype.
12153
12154 2004-03-13 Eli Zaretskii <eliz@gnu.org>
12155
12156 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
12157
12158 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
12159
12160 2004-03-12 Richard M. Stallman <rms@gnu.org>
12161
12162 * fns.c (internal_equal): New arg PROPS controls comparing
12163 text properties. All callers changed.
12164 (Fequal_including_properties): New function.
12165 (syms_of_fns): defsubr it.
12166
12167 2004-03-12 Kim F. Storm <storm@cua.dk>
12168
12169 Fix image support on MAC. From YAMAMOTO Mitsuharu.
12170
12171 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
12172 (image_background, image_background_transparent): Fix prototypes.
12173
12174 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
12175
12176 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
12177 (x_query_font, x_find_ccl_program, x_set_window_size)
12178 (x_make_frame_visible, mac_initialize, XCreatePixmap)
12179 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
12180 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
12181
12182 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
12183 (x_query_font, x_find_ccl_program, x_set_window_size)
12184 (x_make_frame_visible, mac_initialize, XCreatePixmap)
12185 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
12186 (mac_draw_line_to_pixmap): Add prototypes.
12187
12188 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12189
12190 * macterm.c (XTread_socket): Fix mouse click on tool bar.
12191
12192 2004-03-11 Kim F. Storm <storm@cua.dk>
12193
12194 * dispextern.h: Move image related prototypes from xfns.c section
12195 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
12196 HAVE_X_WINDOWS.
12197
12198 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
12199 Move gtkutil.o to new GTK_OBJ list.
12200 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
12201 (GTK_OBJ) [USE_GTK]: New declaration.
12202 (obj): Add $(GTK_OBJ) to list.
12203
12204 2004-03-11 Steven Tamm <steventamm@mac.com>
12205
12206 * image.c [MAC_OSX]: Include sys/stat.h.
12207
12208 * macfns.c (syms_of_macfns): Remove definitions of things now
12209 defined in image.c.
12210
12211 2004-03-11 Kim F. Storm <storm@cua.dk>
12212
12213 The following changes consolidates the identical/similar image
12214 support code previously found in xfns.c, w32fns.c, and macfns.c
12215 into a new file image.c.
12216
12217 * makefile.w32-in (OBJ1): Add image.o.
12218 ($(BLD)/image.$(O)): Add dependencies.
12219
12220 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
12221 (image.o): Add dependencies.
12222
12223 * image.c: New file with consolidated image support code.
12224 (COLOR_TABLE_SUPPORT): New define to control whether
12225 color table support is available (X only).
12226 (Bitmap_Record): Common name for x_bitmap_record,
12227 w32_bitmap_record, and mac_bitmap_record.
12228 (XImagePtr): Common name for pointer to XImage or equivalent.
12229 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
12230 to XImagePtr on X+MAC, and to HDC on W32.
12231 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
12232 (NO_PIXMAP): Common name for "None" or equivalent.
12233 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
12234 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
12235 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
12236 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
12237 Define with suitable equivalents on W32 and MAC for code sharing.
12238 (XDrawLine): Define on MAC for code sharing.
12239 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
12240 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
12241 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
12242 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12243 (x_reference_bitmap, x_create_bitmap_from_data)
12244 (x_create_bitmap_from_file, x_destroy_bitmap)
12245 (x_destroy_all_bitmaps, x_create_bitmap_mask)
12246 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12247 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
12248 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
12249 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
12250 (define_image_type, lookup_image_type, valid_image_p)
12251 (image_error, enum image_value_type, struct image_keyword)
12252 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
12253 (make_image, free_image, prepare_image_for_display, image_ascent)
12254 (four_corners_best, image_background, image_background_transparent)
12255 (x_clear_image_1, x_clear_image, x_alloc_image_color)
12256 (make_image_cache, free_image_cache, clear_image_cache)
12257 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
12258 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
12259 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
12260 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
12261 (init_image_func_pointer, image_load_quartz2d)
12262 (struct ct_color, init_color_table, free_color_table)
12263 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
12264 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
12265 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
12266 (x_disable_image, x_build_heuristic_mask)
12267 (XBM support, XPM support, PBM support, PNG support, JPEG support)
12268 (TIFF support, GIF support, Ghostscript support): Consolidate image
12269 code from xfns.c, w32fns.c, and macfns.c.
12270 (syms_of_image): Consolidate image related symbol setup here.
12271 (init_image): Consolidate image related initializations here.
12272
12273 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
12274 and init_image. Remove call to init_xfns.
12275
12276 * macterm.h (struct mac_bitmap_record): Add file member.
12277 Not currently used, but simplifies code sharing.
12278
12279 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
12280 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12281 (x_reference_bitmap, x_create_bitmap_from_data)
12282 (x_create_bitmap_from_file, x_destroy_bitmap)
12283 (x_destroy_all_bitmaps, x_create_bitmap_mask)
12284 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12285 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
12286 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
12287 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
12288 (define_image_type, lookup_image_type, valid_image_p)
12289 (image_error, enum image_value_type, struct image_keyword)
12290 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
12291 (make_image, free_image, prepare_image_for_display, image_ascent)
12292 (four_corners_best, image_background, image_background_transparent)
12293 (x_clear_image_1, x_clear_image, x_alloc_image_color)
12294 (make_image_cache, free_image_cache, clear_image_cache)
12295 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
12296 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
12297 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
12298 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
12299 (init_image_func_pointer, image_load_quartz2d)
12300 (struct ct_color, init_color_table, free_color_table)
12301 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
12302 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
12303 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
12304 (x_disable_image, x_build_heuristic_mask)
12305 (XBM support, XPM support, PBM support, PNG support, JPEG support)
12306 (TIFF support, GIF support, Ghostscript support): Merge with image
12307 code from xfns.c and macfns.c into image.c.
12308 (syms_of_xfns): Move image related symbols to image.c.
12309 (init_external_image_libraries, init_xfns): Remove; initialization
12310 moved to init_image in image.c.
12311
12312 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
12313 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12314 (x_reference_bitmap, x_create_bitmap_from_data)
12315 (x_create_bitmap_from_file, x_destroy_bitmap)
12316 (x_destroy_all_bitmaps, x_create_bitmap_mask)
12317 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
12318 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
12319 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
12320 (define_image_type, lookup_image_type, valid_image_p)
12321 (image_error, enum image_value_type, struct image_keyword)
12322 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
12323 (make_image, free_image, prepare_image_for_display, image_ascent)
12324 (four_corners_best, image_background, image_background_transparent)
12325 (x_clear_image_1, x_clear_image, x_alloc_image_color)
12326 (make_image_cache, free_image_cache, clear_image_cache)
12327 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
12328 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
12329 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
12330 (struct ct_color, init_color_table, free_color_table)
12331 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
12332 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
12333 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
12334 (x_disable_image, x_build_heuristic_mask)
12335 (XBM support, XPM support, PBM support, PNG support, JPEG support)
12336 (TIFF support, GIF support, Ghostscript support): Merge with image
12337 code from xfns.c and macfns.c into image.c.
12338 (syms_of_xfns): Move image related symbols to image.c.
12339 (init_external_image_libraries, init_xfns): Remove; initialization
12340 moved to init_image in image.c.
12341
12342 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
12343 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12344 (x_reference_bitmap, x_create_bitmap_from_data)
12345 (x_create_bitmap_from_file, x_destroy_bitmap)
12346 (x_destroy_all_bitmaps, x_create_bitmap_mask)
12347 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
12348 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
12349 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
12350 (define_image_type, lookup_image_type, valid_image_p)
12351 (image_error, enum image_value_type, struct image_keyword)
12352 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
12353 (make_image, free_image, prepare_image_for_display, image_ascent)
12354 (four_corners_best, image_background, image_background_transparent)
12355 (x_clear_image_1, x_clear_image, x_alloc_image_color)
12356 (make_image_cache, free_image_cache, clear_image_cache)
12357 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
12358 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
12359 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
12360 (struct ct_color, init_color_table, free_color_table)
12361 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
12362 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
12363 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
12364 (x_disable_image, x_build_heuristic_mask)
12365 (XBM support, XPM support, PBM support, PNG support, JPEG support)
12366 (TIFF support, GIF support, Ghostscript support): Merge with
12367 w32fns.c and macfns.c image code into image.c.
12368 (syms_of_xfns): Move image related symbols to image.c.
12369 (init_xfns): Remove; initialization moved to init_image in image.c.
12370
12371 * lisp.h (syms_of_image, init_image): Add protoypes.
12372 (init_xfns): Remove prototype.
12373
12374 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12375 (x_reference_bitmap, x_create_bitmap_from_data)
12376 (x_create_bitmap_from_file, x_destroy_bitmap)
12377 (x_create_bitmap_mask): Move prototypes from dispextern.h.
12378 (gamma_correct) [MAC_OS]: Add prototype.
12379
12380 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
12381 (x_reference_bitmap, x_create_bitmap_from_data)
12382 (x_create_bitmap_from_file, x_destroy_bitmap)
12383 (x_create_bitmap_mask): Move prototypes to dispextern.h.
12384
12385 2004-03-09 Kenichi Handa <handa@etlken2>
12386
12387 * coding.c (decode_coding_emacs_mule): Handle insufficent source
12388 correctly.
12389
12390 2004-03-04 Richard M. Stallman <rms@gnu.org>
12391
12392 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
12393
12394 * window.c (Fdisplay_buffer): Doc fix.
12395
12396 * buffer.c (Fpop_to_buffer): Doc fix.
12397
12398 2004-03-03 Kim F. Storm <storm@cua.dk>
12399
12400 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
12401
12402 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
12403
12404 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
12405
12406 2004-03-02 Richard M. Stallman <rms@gnu.org>
12407
12408 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
12409
12410 2004-03-02 Kenichi Handa <handa@m17n.org>
12411
12412 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
12413
12414 2004-03-02 Kim F. Storm <storm@cua.dk>
12415
12416 * window.h (struct window): New member overlay_arrow_bitmap.
12417
12418 * window.c (make_window): Initialize overlay_arrow_bitmap.
12419
12420 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
12421 implement and integrate multiple overlay arrows with redisplay.
12422 (syms_of_xdisp): DEFVAR_LISP and initialize it.
12423 (last_arrow_position, last_arrow_string): Replace by properties.
12424 (Qlast_arrow_position, Qlast_arrow_string)
12425 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
12426 (syms_of_xdisp): Intern and staticpro them.
12427 (overlay_arrow_string_or_property, update_overlay_arrows)
12428 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
12429 (overlay_arrow_at_row): New functions for multiple overlay arrows.
12430 (redisplay_internal): Use them instead of directly accessing
12431 Voverlay_arrow_position etc. for multiple overlay arrows.
12432 (mark_window_display_accurate): Use update_overlay_arrows.
12433 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
12434 (try_window_id): Use overlay_arrows_changed_p.
12435 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
12436 (display_line): Use overlay_arrow_at_row to check multiple
12437 overlay arrows, and get relevant overlay-arrow-string and
12438 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
12439 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
12440 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
12441
12442 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
12443 (update_window_fringes): Remove unused code.
12444
12445 2004-03-01 Jason Rumney <jasonr@gnu.org>
12446
12447 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
12448
12449 2004-03-01 Juanma Barranquero <lektu@terra.es>
12450
12451 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
12452
12453 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
12454
12455 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12456
12457 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
12458 how many colors can be displayed.
12459
12460 2004-03-01 Kenichi Handa <handa@m17n.org>
12461
12462 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
12463 correctly.
12464
12465 2004-02-28 Kim F. Storm <storm@cua.dk>
12466
12467 * dispnew.c (update_window): Update header line also if there are
12468 no other changes in window (move code after set_cursor label).
12469
12470 * lisp.h (mark_window_display_accurate): Remove prototype.
12471
12472 * window.c (window_loop, Fforce_window_update): Force mode line
12473 updates by setting prevent_redisplay_optimizations_p and
12474 update_mode_lines.
12475
12476 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12477
12478 * xfns.c (x_window): Fix indentation.
12479
12480 * xterm.c (x_calc_absolute_position): Call x_real_positions
12481 to get WM window sizes and use those to calculate position.
12482 (x_set_offset): Remove code commented out.
12483
12484 2004-02-28 Miles Bader <miles@gnu.org>
12485
12486 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
12487
12488 2004-02-28 Kim F. Storm <storm@cua.dk>
12489
12490 * keyboard.c (kbd_buffer_store_event_hold): New function to store
12491 an event into kbd fifo, but with special handling of quit event;
12492 a quit event is saved for later, and further events are discarded
12493 until the saved quit event has been processed.
12494 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
12495 (gen_help_event): Store help event in kbd fifo.
12496 (NREAD_INPUT_EVENTS): Remove.
12497 (read_avail_input): Adapt to new read_socket_hook interface.
12498 Remove allocation and initialization of local input_event buffer,
12499 as read_socket_hook stores events directly in fifo. Allocate and
12500 initialize local hold_quit event to handle postponed quit event
12501 (and store it if set by kbd_buffer_store_event_hold).
12502
12503 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
12504 (gen_help_event): Fix prototype.
12505
12506 * macterm.c (XTread_socket): Remove bufp_r and
12507 numcharsp args. Add hold_quit arg.
12508 Rework to use just one, local, inev input_event. Store inev
12509 directly in fifo using kbd_buffer_store_event_hold.
12510
12511 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
12512 (read_input_waiting): Adapt to new read_socket_hook interface.
12513 Remove allocation and initialization of local input_event buffer,
12514 as read_socket_hook stores events directly in fifo. Allocate and
12515 initialize local hold_quit event to handle postponed quit event
12516 (and store it if set by kbd_buffer_store_event_hold).
12517
12518 * term.c (read_socket_hook): Fix arg list.
12519
12520 * termhooks.h (read_socket_hook): Fix prototype.
12521
12522 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
12523 numcharsp args. Add hold_quit arg.
12524 Rework to use just one, local, inev input_event. Store inev
12525 directly in fifo using kbd_buffer_store_event_hold.
12526
12527 * w32inevt.h (w32_console_mouse_position): Fix prototype.
12528
12529 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
12530 Add hold_quit arg. Rework to use just one, local, inev
12531 input_event. Store inev directly in fifo using
12532 kbd_buffer_store_event_hold. Update count in one place.
12533 Postpone call to gen_help_event until inev is stored; use new
12534 local do_help for this.
12535 Remove local emacs_event in handing of ButtonPress event; just use
12536 inev instead (so no reason to copy it later).
12537
12538 * xsmfns.c (x_session_check_input): Remove numchars arg.
12539
12540 * xterm.c (x_focus_changed, x_detect_focus_change):
12541 Remove numchars arg. Always store event into bufp arg.
12542 Return nothing. Callers changed accordingly.
12543 (glyph_rect): Simplify.
12544 (STORE_KEYSYM_FOR_DEBUG): New macro.
12545 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
12546 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
12547 (current_hold_quit) [USE_GTK]: Add.
12548 (event_handler_gdk): Adapt to new handle_one_xevent.
12549 (handle_one_xevent): Remove bufp_r and numcharsp args.
12550 Add hold_quit arg. Rework to use just one, local, inev
12551 input_event. Store inev directly in fifo using
12552 kbd_buffer_store_event_hold. Update count in one place.
12553 Postpone call to gen_help_event until inev is stored; use new
12554 local do_help for this.
12555 Simplify handling of keysyms (consolidate common code). Fix bug
12556 where count was updated with nchars instead of nbytes.
12557 Remove local emacs_event in handing of ButtonPress event; just use
12558 inev instead (so no reason to copy it later).
12559 Remove `out' label. Rename label `ret' to `done'; add various
12560 `goto done' to clarify code flow in deeply nested blocks.
12561 (x_dispatch_event): Simplify as handle_one_xevent now calls
12562 kbd_buffer_store_event itself.
12563 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
12564 arg. Call handle_one_xevent with new arglist. Store event from
12565 x_session_check_input in fifo.
12566 [USE_GTK]: Setup current_hold_quit.
12567 Decrement handling_signal before unblocking input.
12568 (x_initialize) [USE_GTK]: Initialize current_count.
12569
12570 * xterm.h (x_session_check_input): Fix prototype.
12571
12572 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12573
12574 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
12575
12576 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
12577 macgui.h).
12578
12579 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
12580
12581 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
12582 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
12583 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
12584 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
12585 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
12586 (Bitmap): Remove typedef.
12587 (Pixmap): Change int to GWorldPtr.
12588
12589 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
12590
12591 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
12592 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
12593 New #define to extract 16-bit depth color components from unsigned
12594 long representation.
12595 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
12596 colors used for masks.
12597 (struct mac_display_info): Add color_p. Remove n_cbits.
12598
12599 * macfns.c: Include sys/types.h and sys/stat.h.
12600 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
12601 Include QuickTime/QuickTime.h.
12602 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12603 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
12604 functions defined in macterm.c.
12605 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
12606 (ZPixmap): New #define for compatibility with xfns.c.
12607 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12608 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
12609 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
12610 New functions.
12611 (four_corners_best, x_create_x_image_and_pixmap)
12612 (x_destroy_x_image, unwind_create_frame, x_disable_image)
12613 (x_edge_detection, init_color_table, colors_in_color_table)
12614 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
12615 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
12616 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
12617 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
12618 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
12619 long mixup.
12620 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
12621 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
12622 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
12623 (x_set_cursor_type, Fxw_color_values, valid_image_p)
12624 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
12625 (x_alloc_image_color, clear_image_cache, lookup_image)
12626 (x_find_image_file, xbm_read_bitmap_file_data)
12627 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
12628 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
12629 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
12630 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
12631 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
12632 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
12633 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
12634 #if 0.
12635 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
12636 #if 0. Free white_relief.gc and black_relief.gc.
12637 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
12638 New functions (from xfns.c).
12639 (Fx_create_frame): Record unwind_create_frame.
12640 (Fxw_display_color_p): Use dpyinfo->color_p.
12641 (Fx_display_grayscale_p, Fx_display_planes): Don't use
12642 dpyinfo->n_cbits.
12643 (Fx_display_color_cells): Use dpyinfo->n_planes;
12644 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
12645 (Qheuristic, cross_disabled_images, emboss_matrix)
12646 (laplace_matrix): New variables (from xfns.c).
12647 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
12648 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
12649 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
12650 (image_background_transparent): New function (from xfns.c).
12651 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
12652 (image_load_quicktime): Add declaration.
12653 [MAC_OSX] (image_load_quartz2d): Likewise.
12654 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
12655 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
12656 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
12657 (xbm_load_image_from_file, x_laplace_read_row)
12658 (x_laplace_write_row, pbm_read_file): Remove functions.
12659 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
12660 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
12661 (colors_in_color_table): Sync with xfns.c (although not used).
12662 (lookup_rgb_color): Don't lookup color table. Just do gamma
12663 correction.
12664 (COLOR_INTENSITY): New #define (from xfns.c).
12665 (x_disable_image): New function (from xfns.c).
12666 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
12667 (x_build_heuristic_mask): Sync with xfns.c.
12668 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
12669 (HAVE_PBM): Remove #ifdef.
12670 (pbm_load): Sync with xfns.c. Set img->width and img->height
12671 before IMAGE_BACKGROUND.
12672 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
12673 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
12674 Don't enclose with #if HAVE_PNG.
12675 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
12676 symbol _CGImageCreateWithPNGDataProvider is defined.
12677 Otherwise use image_load_quicktime.
12678 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
12679 [HAVE_PNG] (png_load): Sync with xfns.c.
12680 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
12681 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
12682 HAVE_JPEG.
12683 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
12684 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
12685 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
12686 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
12687 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
12688 (tiff_image_p, tiff_load): Don't enclose declarations with #if
12689 HAVE_TIFF.
12690 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
12691 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
12692 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
12693 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
12694 New functions (from xfns.c).
12695 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
12696 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
12697 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
12698 Don't enclose with #if HAVE_GIF.
12699 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
12700 animated gif. Otherwise use image_load_quicktime.
12701 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
12702 gif_DrawText to avoid conflict with QuickdrawText.h.
12703 [HAVE_GIF] (gif_load): Sync with xfns.c.
12704 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
12705 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
12706 Ghostscript is not supported yet).
12707 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
12708 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
12709 cross_disabled_images (from xfns.c). Remove #if 0 for supported
12710 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
12711 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
12712 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
12713 HAVE_PNG. Call EnterMovies to support animated gifs.
12714 Call init_image_func_pointer to bind a symbol
12715 _CGImageCreateWithPNGDataProvider if it is defined.
12716
12717 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
12718 (x_draw_bar_cursor): Sync declaration with xterm.c.
12719 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
12720 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
12721 graphics).
12722 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
12723 (mac_draw_line_to_pixmap, XCreatePixmap)
12724 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
12725 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
12726 New functions.
12727 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
12728 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
12729 Cast bits to char *.
12730 (reflect_byte): New function (from w32fns.c).
12731 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
12732 due to byte alignment.
12733 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
12734 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
12735 (XSetForeground): Remove static (now used in macfns.c).
12736 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
12737 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
12738 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
12739 (x_draw_glyph_string_box, x_draw_image_foreground)
12740 (x_draw_image_foreground_1, x_draw_image_glyph_string)
12741 (x_draw_stretch_glyph_string, x_draw_glyph_string)
12742 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
12743 Sync with xterm.c.
12744 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
12745 than the xterm.c version when a strictly horizontal or vertical
12746 line is drawn.
12747 (XTset_terminal_window): Add static.
12748 (x_make_frame_visible): Add UNBLOCK_INPUT.
12749 (x_free_frame_resources): New funcion (from xterm.c).
12750 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
12751 occurs in tool bar area.
12752 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
12753 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
12754 Initialize image cache.
12755 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
12756 Enclose unused functions with #if 0.
12757 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
12758 (decode_mac_font_name): New function to apply code conversions
12759 from a mac font name to an XLFD font name according to its script code.
12760 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
12761 font name to a mac font name according to REGISTRY and ENCODING fields.
12762 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
12763 whose name starts with `.'.
12764 (init_font_name_table): Use decode_mac_font_name. Add both
12765 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
12766 of a font is smJapanese.
12767 (mac_do_list_fonts): New function to list fonts that match a given
12768 pattern.
12769 (x_list_fonts, XLoadQueryFont): Use it.
12770 (XLoadQueryFont): Set rbearing field for each variable width
12771 character to avoid needless redraw.
12772 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
12773
12774 2004-02-26 Kim F. Storm <storm@cua.dk>
12775
12776 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
12777 as read_socket_hook handler on X aborts if buffer is too small
12778 and W32 handler doesn't always check buffer limit.
12779
12780 * xdisp.c (handle_single_display_prop): Handle left-fringe and
12781 right-fringe similar to a display margin image. Specifically,
12782 the characters having the fringe prop are no longer shown, and
12783 we use IT_IMAGE/next_element_from_image with image_id = -1 to
12784 do this. Set fringe bitmap face_id in it->face_id.
12785 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
12786 still realize it->face (i.e. the fringe bitmap face).
12787
12788 2004-02-25 Miles Bader <miles@gnu.org>
12789
12790 * xdisp.c (check_it): Check string/string_pos consistency.
12791 (init_iterator): Initialize string-related fields properly.
12792
12793 2004-02-11 Miles Bader <miles@gnu.org>
12794
12795 * xdisp.c (produce_image_glyph): Force negative descents to zero.
12796
12797 2004-02-10 Miles Bader <miles@gnu.org>
12798
12799 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
12800 BLOCK_INPUT can be nested, so it doesn't make much sense.
12801
12802 2004-02-24 Michael Mauger <mmaug@yahoo.com>
12803
12804 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
12805 (xbm_read_bitmap_data): Use unsigned char for image data.
12806
12807 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
12808
12809 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
12810
12811 2004-02-22 Jason Rumney <jasonr@gnu.org>
12812
12813 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
12814 correctly over other bitmaps.
12815
12816 2004-02-21 Eli Zaretskii <eliz@gnu.org>
12817
12818 * emacs.c (USAGE1): Split into two halves.
12819 (USAGE2): Second half of the old USAGE1.
12820 (USAGE3): Rename from USAGE2.
12821 (USAGE4): Rename from USAGE3.
12822
12823 2004-02-21 Juri Linkov <juri@jurta.org>
12824
12825 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
12826 Fix --multibyte. Move --help, --version to USAGE2. Add alias
12827 --file. Fix -f, -l. Sort options. Untabify.
12828 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
12829
12830 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
12831
12832 * category.c (Fdefine_category, Fcategory_docstring)
12833 (Fget_unused_category, Fset_category_table)
12834 (Fcategory_set_mnemonics): Doc fixes.
12835
12836 2004-02-20 Kim F. Storm <storm@cua.dk>
12837
12838 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
12839 The following changes are relative to the 2004-01-21 revision.
12840 (NREAD_INPUT_EVENTS): Define as max number of input events to read
12841 in one call to read_socket_hook. Value is 8.
12842 (read_avail_input): Separate and rework handling of read_socket_hook
12843 and non-read_socket_hook cases. Use smaller input_event buffer
12844 in read_socket_hook case, and repeat if full buffer is read.
12845 Use new local variable 'discard' to skip input after C-g.
12846 In non-read_socket_hook case, just use a single input_event, and
12847 call kbd_buffer_store_event on the fly for each character.
12848
12849 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
12850
12851 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
12852 Remove unused `gu' alternative.
12853
12854 2004-02-19 Andreas Schwab <schwab@suse.de>
12855
12856 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
12857 warning.
12858
12859 2004-02-18 Kim F. Storm <storm@cua.dk>
12860
12861 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
12862 Fix last change.
12863
12864 2004-02-17 Kim F. Storm <storm@cua.dk>
12865
12866 * xdisp.c (fast_find_position): Fix return value of new version;
12867 it was inverted compared to the 21.1 version.
12868 (get_window_cursor_type): Don't look at glyph if NULL.
12869 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
12870
12871 * keyboard.c: Rework previous change; it didn't consider that the
12872 buf array was allocated on the stack.
12873 (prev_read): Remove variable.
12874 (read_avail_input_buf): New static event buffer array.
12875 (in_read_avail_input): New static variable to handle re-entrancy.
12876 (read_avail_input): Change buf to pinter to read_avail_input_buf.
12877 Use in_read_avail_input to handle re-entrance; when re-entered,
12878 fully initialize and use tmp_buf array instead of read_avail_input_buf.
12879 Do not initialize read_avail_input_buf in full here; instead assume it
12880 is always cleared on entry. To ensure that, we clear (just) the
12881 entries that were used before we return.
12882 (init_keyboard): Initialize read_avail_input_buf here.
12883
12884 2004-02-16 Jesper Harder <harder@ifa.au.dk>
12885
12886 * cmds.c (Fend_of_line): Doc fix.
12887
12888 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
12889
12890 * keyboard.c (prev_read): New static variable.
12891 (read_avail_input): Use it to zero out only those slots in buf[]
12892 that were used last time we were called.
12893
12894 2004-02-16 Eli Zaretskii <eliz@gnu.org>
12895
12896 * Makefile.in (obj): Move fringe.o from here...
12897 (XOBJ, MAC_OBJ): ...to here.
12898
12899 2004-02-16 Stephen Eglen <stephen@gnu.org>
12900
12901 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
12902
12903 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
12904
12905 * data.c (Fbyteorder):
12906 * fringe.c (Fdefine_fringe_bitmap):
12907 * xdisp.c (handle_single_display_prop):
12908 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
12909
12910 2004-02-16 Jason Rumney <jasonr@gnu.org>
12911
12912 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
12913
12914 2004-02-15 Steven Tamm <steventamm@mac.com>
12915
12916 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
12917 controlling emulation of a three button mouse with option and
12918 command keys.
12919 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
12920 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
12921
12922 2004-02-15 Kim F. Storm <storm@cua.dk>
12923
12924 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
12925
12926 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
12927 Perform byte-swapping.
12928
12929 2004-02-14 Kim F. Storm <storm@cua.dk>
12930
12931 * dispextern.h (struct draw_fringe_bitmap_params): Change member
12932 bits from char to short to facilitate wider bitmaps.
12933 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
12934 member.
12935
12936 * fringe.c (struct fringe_bitmap): Change member bits from char to
12937 short to facilitate 16 bits wide bitmaps. Modify all standard
12938 bitmaps accordingly.
12939 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
12940 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
12941 (draw_fringe_bitmap): Ditto.
12942 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
12943 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
12944 handle up to 16 bits wide bitmaps.
12945 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
12946 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12947
12948 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
12949 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
12950 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
12951
12952 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
12953 so it is no longer necessary to expand them here.
12954
12955 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
12956
12957 2004-02-12 Kim F. Storm <storm@cua.dk>
12958
12959 * window.c (Fwindow_fringes): Doc fix.
12960
12961 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12962
12963 * xselect.c (x_get_foreign_selection): Add new optional parameter
12964 time_stamp.
12965 (Fx_get_selection_internal): Ditto, pass time_stamp to
12966 x_get_foreign_selection.
12967
12968 * data.c (Fbyteorder): New function.
12969
12970 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12971
12972 * atimer.c: Move include stdio.h to same place as in other files.
12973
12974 * region-cache.c: Ditto.
12975
12976 * sysdep.c: Ditto.
12977
12978 * xfaces.c: Ditto.
12979
12980 2004-02-09 Sam Steingold <sds@gnu.org>
12981
12982 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
12983
12984 2004-02-09 Kim F. Storm <storm@cua.dk>
12985
12986 * fringe.c: New file. Move original fringe related declarations
12987 and code from dispextern.h and xdisp.c here.
12988 Rework code to support user defined fringe bitmaps, redefining
12989 standard bitmaps, ability to overlay user defined bitmap with
12990 overlay arrow bitmap, and add faces to bitmaps.
12991 (Voverflow_newline_into_fringe): Declare here.
12992 (enum fringe_bitmap_align): New enum.
12993 (..._bits): All bitmaps are now defined without bitswapping; that
12994 is now done in init_fringe_once (if necessary).
12995 (standard_bitmaps): New array with specifications for the
12996 standard fringe bitmaps.
12997 (fringe_faces): New array.
12998 (valid_fringe_bitmap_id_p): New function.
12999 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
13000 (draw_fringe_bitmap): New function which draws fringe bitmap,
13001 possibly overlaying bitmap with cursor in right fringe or the
13002 overlay arrow in the left fringe.
13003 (update_window_fringes): Do not handle overlay arrow here.
13004 Compare and copy fringe bitmap faces.
13005 (init_fringe_bitmap): New function.
13006 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
13007 define and destroy user defined fringe bitmaps.
13008 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
13009 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
13010 (syms_of_fringe): New function. Defsubr new DEFUNs.
13011 DEFVAR_LISP Voverflow_newline_into_fringe.
13012 (init_fringe_once, init_fringe): New functions.
13013 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
13014
13015 * Makefile.in (obj): Add fringe.o.
13016 (fringe.o): New dependencies.
13017
13018 * dispextern.h (FRINGE_ID_BITS): New definition for number of
13019 bits allocated to hold a fringe number. Increase number of bits
13020 from 4 to 8 to allow user defined fringe bitmaps.
13021 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
13022 left_user_fringe_face_id, right_user_fringe_bitmap,
13023 right_user_fringe_face_id.
13024 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
13025 Move to new file fringe.c.
13026 (MAX_FRINGE_BITMAPS): Define here.
13027 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
13028 and overlay_p. Change member which to int.
13029 (struct redisplay_interface): New members define_fringe_bitmap
13030 and destroy_fringe_bitmap.
13031 (valid_fringe_bitmap_id_p): Add prototype.
13032 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
13033
13034 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
13035 arrows.
13036 (update_frame): Do flush_display if force_flush_display_p to
13037 ensure display (specifically fringes) are updated in a timely
13038 manner when resizing the frame by dragging the mouse.
13039 (update_window_line): Update row if overlay arrow changed.
13040 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
13041 or overlay arrow changed.
13042
13043 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
13044 syms_of_fringe, and init_fringe.
13045
13046 * frame.h (struct frame): New member force_flush_display_p.
13047
13048 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
13049 Add prototypes.
13050
13051 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
13052 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
13053 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
13054 Use cursor color for displaying cursor in fringe.
13055 (x_redisplay_interface): Add null handlers for
13056 define_fringe_bitmap and destroy_fringe_bitmap functions.
13057
13058 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
13059 xterm.c to handle overlayed fringe bitmaps and to use cursor color
13060 for displaying cursor in fringe.
13061 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
13062 specific functions to define and destroy fringe bitmaps in fringe_bmp.
13063 (w32_redisplay_interface): Add them to redisplay_interface.
13064 (w32_term_init): Call w32_init_fringe instead of explicitly
13065 defining fringe bitmaps in fringe_bmp array.
13066 (x_delete_display): Call w32_reset_fringes instead of explicitly
13067 destroying fringe bitmaps in fringe_bmp array.
13068
13069 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
13070 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
13071 (continued_bits, continuation_bits, ov_bits, first_line_bits)
13072 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
13073 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
13074 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
13075 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
13076 Move fringe handling vars and code to new file fringe.c.
13077 (handle_display_prop): Handle left-fringe and right-fringe
13078 display properties; store user fringe bitmaps in iterator.
13079 (move_it_in_display_line_to): Handle cursor in fringe at eob.
13080 (clear_garbaged_frames): Set force_flush_display_p if resized.
13081 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
13082 (display_line): Handle cursor in fringe at eob.
13083 (display_line): Set row user fringe bitmaps from iterator.
13084
13085 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
13086 Use cursor color for displaying cursor in fringe.
13087 (x_redisplay_interface): Add null handlers for
13088 define_fringe_bitmap and destroy_fringe_bitmap functions.
13089
13090 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13091
13092 * macfns.c (Fx_change_window_property): Make doc string and
13093 parameters same as for X version.
13094
13095 * w32fns.c (Fx_change_window_property): Ditto.
13096
13097 2004-02-07 Kim F. Storm <storm@cua.dk>
13098
13099 * xdisp.c (hscroll_window_tree): Position cursor near to right
13100 margin in hscrolled window when jumping to end of line (rather
13101 than centering cursor).
13102
13103 * process.c (wait_reading_process_input): Don't do adaptive read
13104 buffering if waiting for a specific process.
13105
13106 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
13107
13108 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
13109 (Fread_minibuffer, Feval_minibuffer)
13110 (Fread_string, Fread_no_blanks_input)
13111 (Fcompleting_read): Doc fixes.
13112 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
13113 completion-regexp-list. Define Qcase_fold_search and staticpro it.
13114 (read_minibuf): Fix initial comment.
13115 (Ftry_completion, Fall_completions, Ftest_completion): Bind
13116 case-fold-search to the value of completion-ignore-case when
13117 checking completion-regexp-list.
13118 (Fdisplay_completion_list): Make it handle arguments that are
13119 symbols. Doc fix.
13120
13121 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13122
13123 * xterm.h: Add declaration of free_frame_menubar.
13124
13125 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
13126 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
13127 (Fx_change_window_property): Add declaration of parameters type and
13128 format. Remove unused variable cons.
13129
13130 * xselect.c: Include stdio.h.
13131
13132 2004-02-05 Kenichi Handa <handa@m17n.org>
13133
13134 * fns.c (Fset_char_table_range): Fix previous change.
13135
13136 * buffer.c (Fset_buffer_multibyte): Fix docstring.
13137
13138 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
13139
13140 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
13141
13142 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
13143
13144 * keymap.c (Vmouse_events): Rename from Vmenu_events.
13145 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
13146
13147 2004-02-04 Kenichi Handa <handa@m17n.org>
13148
13149 * fns.c (Fset_char_table_range): Handle charsets ascii,
13150 eight-bit-control, and eight-bit-graphic correctly.
13151
13152 2004-02-03 Jason Rumney <jasonr@gnu.org>
13153
13154 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
13155
13156 * w32fns.c (x_to_w32_font): Likewise.
13157
13158 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13159
13160 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
13161 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
13162
13163 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
13164 ClientMessages.
13165
13166 * xselect.c: Include termhooks.h and X11/Xproto.h
13167 (x_check_property_data, x_fill_property_data)
13168 (x_property_data_to_lisp, mouse_position_for_drop)
13169 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
13170 (Fx_send_client_event): Move here from xfns.c.
13171 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
13172
13173 * xfns.c (x-send-client-message): Move to xselect.c
13174 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
13175 OUTER_P.
13176 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
13177 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
13178 if vector_ret_p is true.
13179 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
13180
13181 2004-02-02 Eli Zaretskii <eliz@gnu.org>
13182
13183 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
13184 basename of FILE relative to it, not FILE itself.
13185
13186 2004-02-02 Kenichi Handa <handa@m17n.org>
13187
13188 * coding.c (coding_restore_composition): Check invalid
13189 composition data more rigidly.
13190
13191 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
13192
13193 * fileio.c (Fread_file_name_internal): Correctly handle the case
13194 where insert-default-directory is nil.
13195 (Fread_file_name): Always return an empty string if the user exits
13196 with an empty minibuffer. Adapt the docstring accordingly.
13197 (syms_of_fileio): Adapt the docstring of insert-default-directory
13198 to the change in Fread_file_name.
13199
13200 2004-01-29 Eli Zaretskii <eliz@gnu.org>
13201
13202 * alloca.c [!alloca]: Fix the prototype for xfree.
13203
13204 2004-01-29 Kenichi Handa <handa@m17n.org>
13205
13206 * fns.c (string_char_to_byte): Optimize for ASCII only string.
13207 (string_byte_to_char): Likewise.
13208
13209 2004-01-28 Peter Runestig <peter@runestig.com>
13210
13211 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
13212
13213 2004-01-27 Steven Tamm <steventamm@mac.com>
13214
13215 * unexmacosx.c (unexec_copy): Do not copy more than was
13216 requested to prevent overwriting during unexec.
13217
13218 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13219
13220 * process.c (sigchld_handler): Add comment about not calling malloc.
13221
13222 * process.h: Add extern to synch_process_termsig.
13223
13224 2004-01-27 Steven Tamm <steventamm@mac.com>
13225
13226 * macterm.c (make_mac_frame, make_mac_terminal_frame):
13227 Move setting of scroll bars from make_mac_frame to
13228 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
13229
13230 2004-01-26 Richard M. Stallman <rms@gnu.org>
13231
13232 * search.c (Freplace_match): Handle nonexistent
13233 back-references properly.
13234
13235 2004-01-03 Richard M. Stallman <rms@gnu.org>
13236
13237 * window.c (decode_any_window): New function.
13238 (Fwindow_height, Fwindow_width, Fwindow_edges)
13239 (Fwindow_pixel_edges, Fwindow_inside_edges)
13240 (Fwindow_inside_pixel_edges): Use decode_any_window.
13241
13242 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13243
13244 * process.h: synch_process_termsig new variable.
13245
13246 * callproc.c: Define synch_process_termsig.
13247 (Fcall_process): Initiate synch_process_termsig to zero and
13248 check if non-zero and get signal name after subprocess has ended.
13249
13250 * process.c (sigchld_handler): Set synch_process_termsig
13251 if terminated by a signal. synch_process_death setting removed.
13252
13253 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
13254
13255 2004-01-26 Andreas Schwab <schwab@suse.de>
13256
13257 * print.c (print_preprocess): Declare size as EMACS_INT to not
13258 lose bits.
13259 (print_object): Likewise.
13260 * alloc.c (Fpurecopy): Likewise.
13261
13262 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
13263
13264 * window.c (Fwindow_minibuffer_p): Doc fix.
13265
13266 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
13267
13268 * editfns.c (Fformat): Make both passes accept the same set of flags.
13269
13270 2004-01-23 Kenichi Handa <handa@m17n.org>
13271
13272 * fns.c (Fmd5): If OBJECT is a buffer different from the current
13273 one, set buffer to OBJECT temporarily.
13274
13275 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
13276
13277 * keyboard.c (kbd_buffer_gcpro): Remove.
13278 (kbd_buffer_store_event, clear_event, Fdiscard_input)
13279 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
13280 Don't initialize and/or maintain the variable any more. It was made
13281 redundant by my commit of 2003-06-15.
13282
13283 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
13284
13285 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13286
13287 * lisp.h: Add undef DECL_ALIGN.
13288
13289 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
13290
13291 * process.c (wait_reading_process_input) [SYNC_INPUT]:
13292 Check interrupt_input_pending explicitly.
13293
13294 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
13295
13296 * keyboard.c (handle_async_input): New fun,
13297 extracted from input_available_signal.
13298 (input_available_signal, reinvoke_input_signal): Use it.
13299
13300 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
13301
13302 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
13303
13304 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
13305 manipulation macros for when tags are in the lower bits.
13306 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
13307 (DECL_ALIGN): New macro.
13308 (DEFUN): Use it.
13309
13310 * lisp.h [ENABLE_CHECKING]: Don't force union type.
13311
13312 * s/darwin.h (__attribute__): Remove outdated workaround.
13313
13314 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
13315
13316 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
13317 Don't check range of malloc address.
13318 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
13319
13320 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
13321
13322 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
13323
13324 2004-01-19 Kenichi Handa <handa@m17n.org>
13325
13326 * fontset.c (fontset_font_pattern): Fix previous change.
13327
13328 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
13329
13330 * xdisp.c (Voverflow_newline_into_fringe)
13331 (move_it_in_display_line_to, redisplay_internal)
13332 (update_window_fringes, redisplay_window, display_line, window):
13333 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
13334 that it compiles without a window-system.
13335 * dispnew.c (direct_output_for_insert, update_window): Likewise.
13336
13337 2004-01-16 Kim F. Storm <storm@cua.dk>
13338
13339 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
13340
13341 * buffer.c (init_buffer_once): Set buffer_defaults and
13342 buffer_local_flags for indicate_buffer_boundaries.
13343 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
13344 default- variable for it.
13345
13346 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
13347 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
13348 New members exact_window_width_line_p and cursor_in_fringe_p for
13349 overflowing newlines into right fringe.
13350 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
13351 and indicate_bottom_line_p for buffer boundaries and scrolling.
13352 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
13353 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
13354 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
13355 and HOLLOW_SQUARE_BITMAP.
13356 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
13357 Add prototypes.
13358
13359 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
13360 instead of related indicator fields.
13361 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
13362 (direct_output_for_insert): Handle exact width lines like
13363 contined lines. Call update_window_fringes.
13364 (update_window): Call update_window_fringes.
13365 (scrolling_window): Don't skip desired rows with changed bitmaps.
13366 Check if fringe bitmaps changes when assigning scrolled rows.
13367
13368 * xdisp.c (Voverflow_newline_into_fringe): New variable.
13369 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
13370 (move_it_in_display_line_to): Overflow newline into fringe for
13371 rows that are exactly as wide as the window.
13372 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
13373 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
13374 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
13375 (fringe_bitmaps): Add new bitmaps.
13376 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
13377 Select proper bitmap for cursor in fringe when appropriate.
13378 Handle alignment of bitmap to top or bottom of row.
13379 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
13380 done by update_window_fringes.
13381 (update_window_fringes, draw_window_fringes): New functions.
13382 (redisplay_internal): Call update_window_fringes in case only
13383 cursor row is updated.
13384 (redisplay_window): Call update_window_fringes.
13385 Explicitly call draw_window_fringes if redisplay was done using
13386 the current matrix or the overlay arrow is in the window.
13387 (try_window_reusing_current_matrix): Mark scrolled rows for
13388 fringe update (to update buffer-boundaries / scrolling icons).
13389 (find_last_unchanged_at_beg_row): Handle exact width lines line
13390 continued lines.
13391 (display_line): Overflow newline into fringe for rows that are
13392 exactly as wide as the window. Don't append space for newline
13393 in this case.
13394 (notice_overwritten_cursor): Explicitly clear cursor bitmap
13395 in fringe as if it had been overwritten.
13396 (erase_phys_cursor): Erase cursor bitmap in fringe.
13397 (syms_of_xdisp): Mark show-trailing-whitespace and
13398 void-text-area-pointer as user options.
13399 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
13400
13401 * xterm.c (x_update_window_end): Call draw_window_fringes.
13402 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
13403 in row instead of actually drawing fringe bitmaps.
13404 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
13405 (x_draw_window_cursor): Draw cursor in fringe.
13406
13407 * w32term.c (x_update_window_end): Call draw_window_fringes.
13408 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
13409 in row instead of actually drawing fringe bitmaps.
13410 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
13411 (w32_draw_window_cursor): Draw cursor in fringe.
13412
13413 * macterm.c (x_update_window_end): Call draw_window_fringes.
13414 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
13415 in row instead of actually drawing fringe bitmaps.
13416 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
13417 (mac_draw_window_cursor): Draw cursor in fringe.
13418
13419 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13420
13421 * xterm.c (handle_one_xevent): Don't handle characters that are part
13422 of an old style (XLookupString) compose sequence.
13423
13424 2004-01-15 Kenichi Handa <handa@m17n.org>
13425
13426 * search.c (Freplace_match): Use make_multibyte_string or
13427 make_unibyte_string according to the buffer multibyteness.
13428
13429 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
13430
13431 * alloc.c (struct interval_block, struct string_block)
13432 (struct symbol_block, struct marker_block, live_string_p)
13433 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
13434 Better preserve alignment for objects in blocks.
13435 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
13436
13437 * lread.c (defvar_per_buffer): Remove dead declaration.
13438
13439 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
13440 space size.
13441
13442 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13443
13444 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
13445 if a key press should pop down. Only pop down if a key is pressed
13446 outside the menu/dialog.
13447 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
13448 popup_get_selection.
13449 (create_and_show_dialog): Pass 1 for down_on_keypress to
13450 popup_get_selection.
13451
13452 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13453
13454 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
13455 BLOCK/UNBLOCK_INPUT.
13456
13457 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13458
13459 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
13460 specified.
13461
13462 2004-01-08 Kenichi Handa <handa@m17n.org>
13463
13464 * editfns.c (Fformat): Fix '&' to '&&'.
13465
13466 2004-01-08 Andreas Schwab <schwab@suse.de>
13467
13468 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
13469 size if PSEUDOVECTOR_FLAG is set.
13470
13471 2004-01-07 Kenichi Handa <handa@m17n.org>
13472
13473 * charset.c (Fdeclare_equiv_charset): Fix docstring.
13474
13475 * fontset.c (fontset_ref_via_base): Fix previous change.
13476
13477 2004-01-07 Kim F. Storm <storm@cua.dk>
13478
13479 * process.c (read_process_output): Only activate adaptive
13480 buffering if we read less than 256 bytes at a time.
13481
13482 2004-01-06 Kim F. Storm <storm@cua.dk>
13483
13484 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
13485 object and image object. Return glyph width and height.
13486 (mode_line_string, marginal_area_string): Ditto.
13487
13488 * dispextern.h (buffer_posn_from_coords, mode_line_string)
13489 (marginal_area_string): Fix prototypes.
13490
13491 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
13492 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
13493 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
13494
13495 * keyboard.c (make_lispy_position): Use modified mode_line_string,
13496 buffer_posn_from_coords, and marginal_area_string functions to
13497 include both string object and image object in the lispy position.
13498 Also add actual glyph width and height to position.
13499 (read_key_sequence): Use real buffer position from mouse
13500 event to find keymap property even when click is in marginal area.
13501
13502 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
13503 mode_line_string and marginal_area_string functions to handle
13504 both string object and image object properties.
13505
13506 2004-01-06 Andreas Schwab <schwab@suse.de>
13507
13508 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
13509 character.
13510
13511 2004-01-02 Andreas Schwab <schwab@suse.de>
13512
13513 * macterm.c (emacs_options, x_initialized, same_x_server):
13514 Remove unused (and duplicated) definitions.
13515
13516 2004-01-02 Kim F. Storm <storm@cua.dk>
13517
13518 * process.h (struct Lisp_Process): New members for adaptive read
13519 buffering: adaptive_read_buffering, read_output_delay, and
13520 read_output_skip.
13521
13522 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
13523 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
13524 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
13525 (process_output_delay_count, process_output_skip): New vars.
13526 (Vprocess_adaptive_read_buffering): New variable.
13527 (make_process): Initialize adaptive read buffering members.
13528 (Fstart_process): Set adaptive_read_buffering member.
13529 (deactivate_process): Cleanup adaptive read buffering.
13530 (wait_reading_process_input): Temporarily omit delayed
13531 subprocesses from the set of file descriptors to read from;
13532 adjust the select timeout if we skipped any subprocesses.
13533 (read_process_output): Increase adaptive read buffering delay if
13534 we read less than a full buffer; reduce delay when we read a
13535 full buffer.
13536 (send_process): Simplify using local Lisp_Process var.
13537 Reset adaptive read buffering delay after write.
13538 (init_process): Initialize process_output_delay_count and
13539 process_output_skip.
13540 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
13541
13542 2004-01-01 Jason Rumney <jasonr@gnu.org>
13543
13544 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
13545
13546 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
13547
13548 * print.c (Ferror_message_string): Add hyperlink in the docstring
13549 to the definition of `signal' in the Elisp manual.
13550 * eval.c (Fsignal): Ditto.
13551
13552 2003-12-29 James Clark <jjc@jclark.com>
13553
13554 * fns.c (internal_equal): Return t for two NaN arguments.
13555
13556 2003-12-29 Richard M. Stallman <rms@gnu.org>
13557
13558 * data.c (store_symval_forwarding): Handle setting
13559 default-fill-column, etc., by changing the value in
13560 buffers that use the default.
13561
13562 * minibuf.c (Fset_minibuffer_window): Doc fix.
13563
13564 * fileio.c (choose_write_coding_system): Ignore auto_saving
13565 if using the visited file for auto saves.
13566 (Fwrite_region): Don't update SAVE_MODIFF
13567 if auto-saving in visited file.
13568
13569 2003-12-29 Kenichi Handa <handa@m17n.org>
13570
13571 * dispextern.h (face_font_available_p): Extern it.
13572
13573 * fontset.c (Voverriding_fontspec_alist): New variable.
13574 (lookup_overriding_fontspec): New function.
13575 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
13576 (fontset_font_pattern): Likewise.
13577 (regulalize_fontname): New function.
13578 (Fset_fontset_font): Call regulalize_fontname.
13579 (Fset_overriding_fontspec_internal): New function.
13580 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
13581 Defsubr Sset_overriding_fontspec_internal.
13582
13583 * xfaces.c (face_font_available_p): New function.
13584
13585 2003-12-28 Richard M. Stallman <rms@gnu.org>
13586
13587 * buffer.c (Fother_buffer): Don't crash if BUF is nil
13588 or if its name is nil.
13589
13590 * buffer.c (Fkill_buffer): Don't delete auto-save file
13591 if it's the same as the visited file.
13592
13593 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
13594
13595 * coding.c (Fcheck_coding_system): Doc fix.
13596
13597 2003-12-28 Kim F. Storm <storm@cua.dk>
13598
13599 * Makefile.in (eval.o): Depend on dispextern.h.
13600
13601 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
13602 image glyph using image's ascent.
13603 (mode_line_string): Return image glyph as object clicked on.
13604 Adjust y0 for image glyph using image's ascent.
13605
13606 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
13607 (struct glyph): New members, ascent and descent. Used to save
13608 this glyph's ascent and descent, instead of having.
13609 (struct glyph): Declare member face_id using FACE_ID_BITS.
13610 (find_hot_spot): Add prototype.
13611
13612 * keyboard.c (Qimage): Remove extern (now in lisp.h).
13613 (QCmap): Declare extern.
13614 (make_lispy_position): When position is inside image hot-spot,
13615 use hot-spot element's id as posn element.
13616
13617 * lisp.h (IMAGEP): New macro to test for image object type.
13618 (Qimage): Declare extern.
13619
13620 * macfns.c (Qimage): Remove extern (now in lisp.h).
13621 (valid_image_p, parse_image_spec): Use IMAGEP macro.
13622
13623 * macterm.c (Qface, Qmouse_face): Remove unused externs.
13624
13625 * w32fns.c (Qimage): Remove extern (now in lisp.h).
13626 (valid_image_p, parse_image_spec): Use IMAGEP macro.
13627
13628 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
13629
13630 * w32term.c (Qface, Qmouse_face): Remove unused externs.
13631
13632 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
13633 pointer types.
13634 (Qrelative_width, Qalign_to): Remove unused variables.
13635 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
13636 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
13637 image maps.
13638 (x_y_to_hpos_vpos): Return glyph relative coordinates through
13639 new dx and dy args.
13640 Remove buffer_only_p arg (always 0). Simplify code accordingly.
13641 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
13642 than row's ascent and height, to get sensible height on tall rows.
13643 (build_desired_tool_bar_string): Remove Qimage extern.
13644 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
13645 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
13646 image glyph is alone on the last line.
13647 (append_glyph, append_composite_glyph, produce_image_glyph)
13648 (append_stretch_glyph): Set glyph's ascent and descent.
13649 (on_hot_spot_p): New function to check if position is inside an
13650 rectangular, circular, or polygon-shaped image hot-spot,
13651 (find_hot_spot): New function to search for image hot-spot.
13652 (Flookup_image_map): New defun to search for image hot-spot.
13653 (define_frame_cursor1): New aux function to determine frame pointer.
13654 (note_mode_line_or_margin_highlight, note_mouse_highlight):
13655 Handle `pointer' text property and :pointer image property to
13656 control frame pointer shape. Detect image hot-spots for pointer
13657 and help_echo properties. Use define_frame_cursor1.
13658 (note_mouse_highlight): Use Vvoid_text_area_pointer.
13659 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
13660 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
13661
13662 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
13663
13664 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
13665 (Qimage): Remove extern (now in lisp.h).
13666 (valid_image_p, parse_image_spec): Use IMAGEP macro.
13667
13668 * xmenu.c (show_help_event): Remove unused code.
13669
13670 * xterm.c (Qface, Qmouse_face): Remove unused externs.
13671 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
13672 row's ascent and descent, to get a sensible height on tall rows.
13673
13674 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
13675
13676 * minibuf.c (Fcompleting_read): Undo previous change.
13677
13678 2003-12-25 Lars Hansen <larsh@math.ku.dk>
13679
13680 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
13681 Arguments GCPRO'ed in call to file name handler.
13682
13683 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
13684
13685 * termcap.c (tgetst1): Scan for "%pN"; if all
13686 N are continuous in [1,9], remove all "%pN".
13687
13688 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13689
13690 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
13691
13692 * xfaces.c (lface_fully_specified_p): Take into account that
13693 MAC OS always have unspecified stipple.
13694
13695 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
13696
13697 * tparam.c (tparam1): Add handling for `%pN', which
13698 means use param N for the next substitution.
13699
13700 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
13701
13702 * xfaces.c (Fcolor_gray_p): Fix omission bug:
13703 In case `frame' is nil, consult the selected frame.
13704 (Fcolor_supported_p): Likewise.
13705
13706 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
13707
13708 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
13709 Doc fixes.
13710
13711 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
13712 and an integer. Adapt the introductory comment accordingly.
13713 (Fread_from_minibuffer): Delete code moved into read_minibuf.
13714 Doc fix.
13715 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
13716 read_minibuf.
13717 (Fcompleting_read): Delete code moved into read_minibuf.
13718 (Ftest_completion): Make it handle obarrays and hash tables correctly.
13719
13720 2003-12-03 Kenichi Handa <handa@m17n.org>
13721
13722 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
13723 encoding sequence.
13724
13725 2003-12-01 Kenichi Handa <handa@m17n.org>
13726
13727 * composite.c (syms_of_composite): Don't make the compostion hash
13728 table week.
13729
13730 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
13731
13732 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
13733 * textprop.c (Fget_char_property_and_overlay): New function.
13734 (syms_of_textprop): Defsubr it.
13735
13736 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13737
13738 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
13739 to compile on terminal configuration.
13740
13741 * fileio.c (Fread_file_name): Check use_file_dialog also before
13742 calling Fx_file_dialog.
13743
13744 * fns.c (use_file_dialog): New variable.
13745 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
13746
13747 2003-11-29 Kim F. Storm <storm@cua.dk>
13748
13749 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
13750 (syms_of_msdos): Don't intern and staticpro them.
13751
13752 2003-11-27 Kim F. Storm <storm@cua.dk>
13753
13754 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
13755 coordinates relative to glyph at posn. If glyph is an image,
13756 return that as object at posn. Callers changed.
13757 (mode_line_string, marginal_area_string): Calculate and return
13758 pixel coordinates relative to glyph. Callers changed.
13759
13760 * dispextern.h (buffer_posn_from_coords, mode_line_string)
13761 (marginal_area_string): Fix prototypes.
13762 (window_box_left_offset, window_box_right_offset): Add prototypes.
13763
13764 * frame.h (get_specified_cursor_type, get_window_cursor_type):
13765 Remove prototypes.
13766
13767 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
13768
13769 * keyboard.c (make_lispy_position): Add x and y coordinates
13770 relative to the current glyph as 7th element of position.
13771 If glyph is an image, return it in the object element.
13772 (read_key_sequence): Skip checks for keymap property in cases
13773 where POSN_STRING is not a string (e.g. an image).
13774
13775 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
13776 (Vshow_text_cursor_in_void): New variable.
13777 (glyph_to_pixel_coords): Don't use negative hpos.
13778 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
13779 (append_stretch_glyph): Change ascent arg to be actual value
13780 in pixels rather than ratio to height. Callers changed.
13781 (calc_pixel_width_or_height): New aux function, implementing
13782 pixel based artihmetic for glyph widths and heights.
13783 (produce_stretch_glyph): Use calc_pixel_width_or_height for
13784 :width, :height, :align-to, and :ascent, thus allowing these to
13785 be specified in pixels as well as multiples of characters.
13786 Don't produce stretch glyphs with zero width or height.
13787 (get_specified_cursor_type): Declare static.
13788 (get_window_cursor_type): Declare static. Add glyph arg to be
13789 able to know when cursor is on an image; always substitute
13790 hollow-box cursor for filled-box cursor on images, to avoid
13791 negative images and flicker when blinking the cursor.
13792 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
13793 (note_mode_line_or_margin_highlight): Use non-text cursor rather
13794 than vertical scroll-bar cursor in display margins.
13795 (note_mouse_highlight): Use non-text cursor rather than text
13796 cursor in fringes and over images in the text area.
13797 Use non-text cursor when mouse pointer is outside editable text,
13798 i.e. in the void after end-of-line or end-of-buffer; this was
13799 already done for W32, but is now standard for all systems --
13800 user can toggle show-text-cursor-in-void to get old behaviour.
13801 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
13802 Vdisplay_pixels_per_inch.
13803
13804 2003-11-25 Andreas Schwab <schwab@suse.de>
13805
13806 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
13807 EMACS_INT to not lose bits.
13808 (Ffillarray): Don't set bits beyond the size of a bool vector.
13809
13810 2003-11-25 Kim F. Storm <storm@cua.dk>
13811
13812 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
13813 define this defun on systems that cannot use stderr as lvalue.
13814
13815 2003-11-24 Gerd Moellmann <gerd@gnu.org>
13816
13817 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
13818 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
13819 ld's default is incompatible with unexec.
13820
13821 2003-11-23 Kim F. Storm <storm@cua.dk>
13822
13823 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
13824 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
13825 (Fforce_window_update): New defun.
13826 (syms_of_window): Defsubr it.
13827 (Fset_window_margins, Fset_window_fringes): Doc fix.
13828
13829 * print.c (Fredirect_debugging_output): New defun.
13830 (syms_of_print): Defsubr it.
13831
13832 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
13833
13834 * fns.c (Fset_char_table_parent): Doc fix.
13835
13836 2003-11-22 Kim F. Storm <storm@cua.dk>
13837
13838 * dispnew.c (buffer_posn_from_coords): Return actual row/column
13839 for glyph clicked on, rather than (unused) pixel positions.
13840 (mode_line_string, marginal_area_string): Change X and Y args to
13841 pointers for returning actual row/column for glyph clicked on.
13842 Simplify and optimize loops.
13843
13844 * dispextern.h (mode_line_string, marginal_area_string):
13845 Update prototypes.
13846
13847 * keyboard.c (make_lispy_position): New function for generating
13848 mouse click positions from frame and pixel coordinates.
13849 Enhanced to return buffer position and actual row/column for
13850 events outside the text area using updated mode_line_string and
13851 marginal_area_string functions.
13852 Return left-fringe and right-fringe clicks as such, rather than
13853 clicks in text area.
13854 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
13855 pixel_to_glyph_coords, as we never use the results.
13856 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
13857 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
13858 Eliminate unused code in WHEEL_EVENT handling.
13859 (make_lispy_movement): Use make_lispy_position.
13860
13861 * window.c (coordinates_in_window): Remove redundant tests.
13862 Fix returned X pixel value for left-margin.
13863
13864 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
13865 mode_line_string and marginal_area_string parameters.
13866
13867 2003-11-22 Lars Hansen <larsh@math.ku.dk>
13868
13869 * w32.c (struct the_group, getgrgid): Add.
13870 * mac.c (struct my_group, getgrgid): Add.
13871
13872 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
13873
13874 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
13875
13876 2003-11-21 Lars Hansen <larsh@math.ku.dk>
13877
13878 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
13879 include in call to file name handler. Optionally translate numeric
13880 UID and GID to strings. Update docstring.
13881 (directory_files_internal): Add parameter ID-FORMAT.
13882 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
13883 include in call to file name handler and call to
13884 directory_files_internal. Update Docstring.
13885 (Fdirectory_files): Add dummy parameter in call to
13886 directory_files_internal.
13887 * lisp.h (Qinteger): Add.
13888 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
13889 (Ffile_attributes): Add parameter.
13890 * data.c (Qinteger): Export.
13891
13892 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
13893
13894 * fns.c (Freverse, Fnreverse): Doc fixes.
13895
13896 2003-11-19 Kim F. Storm <storm@cua.dk>
13897
13898 * xdisp.c (init_iterator): Initialize it->start to position
13899 before reseating (in case start position is invisible).
13900 (init_to_row_start): Set it->start to row-start.
13901 (redisplay_window): Accept optional_new_start if start position
13902 is invisible (in which case IT_CHARPOS overshoots PT).
13903 (display_line): Setup row->start from it->start (rather than
13904 it->current which is wrong if first char on line is invisible).
13905 When done, reseat it->start to it->current (= start of next row).
13906 (expose_area): Fix exposure of text area when first char (e.g. TAB)
13907 is only partially visible.
13908
13909 * dispextern.h (struct it): New member start.
13910
13911 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
13912
13913 * alloc.c (make_float, Fcons): Clear the markbit at init time.
13914 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
13915 of block_index outside of the macro call.
13916 (Fgarbage_collect): Remove null code.
13917
13918 * m/amdx86-64.h: Don't redefine XPNTR.
13919
13920 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
13921 of VALMASK.
13922
13923 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
13924 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
13925 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
13926
13927 * lisp.h (VALMASK): Only define for non-union type.
13928 (MARKBIT): Remove.
13929 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
13930 (XTYPE): Define unconditionally.
13931 (XSETTYPE): Remove one more remnant.
13932 (EQ): Define differently for the union and non-union cases.
13933 (INTMASK): New bit mask.
13934 (struct Lisp_Marker): Move down to prepare for upcoming patch.
13935 (GC_EQ): Delegate to EQ.
13936
13937 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
13938
13939 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13940
13941 * xterm.c (x_window_to_scroll_bar): Move check of display to
13942 where window_id is compared.
13943
13944 2003-11-17 Kim F. Storm <storm@cua.dk>
13945
13946 * dispextern.h (struct it): New member first_vpos.
13947
13948 * xdisp.c (start_display): Set it->first_vpos.
13949 (try_window_id): Use first_vpos to start display in first _text_
13950 line if no reusable lines at start of window with header line.
13951
13952 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13953
13954 * w32fns.c (XPutPixel):
13955 * w32bdf.c (w32_init_bdf_font):
13956 * sunfns.c (sel_read):
13957 * process.c (Fmake_network_process):
13958 * frame.c (store_frame_param):
13959 * fontset.c (Fset_fontset_font):
13960 * emacs.c (shut_down_emacs):
13961 * ccl.c (ccl_driver): Remove period at end of error message.
13962
13963 * config.in: Regenerate.
13964
13965 * xfns.c (x_window_to_frame, x_any_window_to_frame)
13966 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
13967 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
13968 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
13969 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
13970
13971 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
13972
13973 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
13974 (XTmouse_position, handle_one_xevent): Pass Display* to
13975 x_window_to_scroll_bar.
13976 (x_window_to_scroll_bar): Take a Display* argument.
13977 Check that display for frame is equal to Display* argument.
13978 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
13979 x_display_info_for_display instead. Use Display in xev instead
13980 of GDK_DISPLAY.
13981 (x_dispatch_event): Call x_display_info_for_display.
13982 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
13983 (x_connection_closed): Call xg_display_close for GTK.
13984 (x_term_init): Call xg_display_open for additional displays.
13985 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
13986 for GTK.
13987
13988 * xmenu.c (single_menu_item, mouse_position_for_popup)
13989 (x_activate_menubar): Formatting adjustments.
13990
13991 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
13992 adjustments.
13993
13994 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
13995 (xg_display_close, xg_create_default_cursor)
13996 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
13997 handling.
13998 (xg_left_ptr_cursor): Remove.
13999 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
14000 cursor here.
14001 (xg_win_to_widget): Take Display* argument, call
14002 gdk_xid_table_lookup_for_display.
14003 (xg_create_frame_widgets, xg_get_file_name, create_menus)
14004 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
14005 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
14006 in FRAME_X_DISPLAY_INFO.
14007 (xg_get_scroll_id_for_window): Take Display* argument.
14008 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
14009 (xg_initialize): Remove xg_left_ptr_cursor.
14010
14011 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
14012 Display* argument.
14013 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
14014
14015 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14016
14017 * xterm.c (x_detect_focus_change): Do not change focus frame for
14018 Enter/LeaveNotify if the current focus frame has explicit focus.
14019
14020 2003-11-14 Kim F. Storm <storm@cua.dk>
14021
14022 * dispnew.c (update_text_area): Fix redisplay error when hscroll
14023 is active and first glyph is only partially visible.
14024
14025 2003-11-13 Kenichi Handa <handa@m17n.org>
14026
14027 * xdisp.c (select_frame_for_redisplay): New function.
14028 (redisplay_internal): Record also selected_frame for
14029 unwind_redisplay. Call select_frame_for_redisplay before
14030 redrawing each frame.
14031 (unwind_redisplay): Argument changed to a cons.
14032
14033 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
14034
14035 * fns.c (Fstring_to_multibyte): Doc fix.
14036
14037 2003-11-11 Kenichi Handa <handa@m17n.org>
14038
14039 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
14040
14041 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14042
14043 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
14044 program specified positions.
14045
14046 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14047
14048 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
14049
14050 2003-11-08 Kenichi Handa <handa@m17n.org>
14051
14052 * Makefile.in (lisp): Add kannada.el.
14053 (shortlisp): Likewise.
14054
14055 2003-11-07 Kenichi Handa <handa@m17n.org>
14056
14057 * coding.c (coding_allocate_composition_data):
14058 Reset coding->composing to COMPOSITION_NO.
14059 (coding_restore_composition): Detect invalid composition data.
14060 Give Fstring and Fvector a Lispy integer, not C int.
14061
14062 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
14063
14064 * floatfns.c (Flogb): Don't use VALMASK.
14065
14066 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
14067 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
14068
14069 * lisp.h (XINT): Move the cast to clarify what is going on.
14070 (GCTYPEMASK, XSETTYPE): Remove.
14071 (XGCTYPE): Make it an alias of XTYPE.
14072
14073 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14074
14075 * xterm.c (x_term_init): Fix formatting.
14076
14077 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14078
14079 * gtkutil.h (xg_have_tear_offs): Declare.
14080 (xg_keep_popup, xg_did_tearoff): Remove.
14081
14082 * gtkutil.c: Remove variable xg_did_tearoff.
14083 (xg_have_tear_offs): New function.
14084 (tearoff_remove): Just decrease xg_detached_menus.
14085 (tearoff_activate): Increase xg_detached_menus and call
14086 tearoff_remove when tearoff is removed.
14087 (xg_keep_popup): Remove function.
14088 (create_menus): Give add_tearoff_p as argument to recursive
14089 call to create_menus.
14090 (xg_create_widget): Use variables instead of multiple
14091 strcmp. Tell create_menus to create tear off only for
14092 menu bar menus.
14093 (xg_update_menubar): Change title for a detached menu also.
14094 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
14095 of deep_p.
14096 (xg_initialize): Initialize xg_detached_menus, remove
14097 initialization of xg_did_tearoff.
14098
14099 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
14100 xg_have_tear_offs returns non-zero.
14101 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
14102 call to xg_keep_popup.
14103
14104 2003-11-01 Andrew Choi <akochoi@shaw.ca>
14105
14106 * macterm.c (XTread_socket): Handle menubar selection and grow
14107 window only for mouseDown events.
14108
14109 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14110
14111 * xterm.c (x_term_init): For GTK part, increase x_initialized
14112 to check for more than one display. Use error instead of return 0.
14113
14114 2003-10-31 Andrew Choi <akochoi@shaw.ca>
14115
14116 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
14117 (copy_dysymtab): Call it.
14118
14119 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
14120
14121 * eval.c (Fdefvaralias): Doc fix.
14122
14123 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
14124
14125 * data.c (Fsetplist): Doc fix.
14126
14127 2003-10-14 Lute Kamstra <lute@gnu.org>
14128
14129 * window.c (Fset_window_fringes): Clarify docstring.
14130
14131 2003-10-14 Kim F. Storm <storm@cua.dk>
14132
14133 * window.c (Fset_window_margins): Simplify arg checking.
14134
14135 2003-10-13 Richard M. Stallman <rms@gnu.org>
14136
14137 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
14138 (print_partial_compiled_pattern): Replace assert with a printout.
14139 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
14140
14141 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
14142
14143 * window.c (Fset_window_margins): Allow only integers as args.
14144 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
14145 Doc fixes.
14146
14147 2003-10-13 Lute Kamstra <lute@gnu.org>
14148
14149 * window.c (Fset_window_fringes): Elaborate docstring.
14150
14151 2003-10-12 Andrew Choi <akochoi@shaw.ca>
14152
14153 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
14154
14155 * s/darwin.h (GC_MARK_STACK): Define.
14156
14157 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14158
14159 * window.c (shrink_windows): New function.
14160 (size_window): Call shrink_windows to calculate window sizes when
14161 shrinking frame with more than one window.
14162
14163 2003-10-12 Kim F. Storm <storm@cua.dk>
14164
14165 * xdisp.c (compute_fringe_widths): Doc fix.
14166
14167 2003-10-08 Kenichi Handa <handa@m17n.org>
14168
14169 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
14170
14171 2003-10-07 Kenichi Handa <handa@m17n.org>
14172
14173 * coding.c (Qcoding_system_define_form): New variable.
14174 (syms_of_coding): Intern and staticpro it.
14175 (Fcheck_coding_system): Try to autoload the definition of
14176 CODING-SYSTEM.
14177
14178 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
14179
14180 * fns.c (Frequire): Doc fix.
14181
14182 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14183
14184 * xfns.c (Fx_send_client_event): New function as a base for
14185 manipulating extended window manager hints.
14186 (Fx_send_client_event): Remove unused variable s.
14187
14188 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
14189 that function is removed.
14190
14191 * xterm.c (x_set_offset): Use move_offset_left/top instead of
14192 x/y_pixels_outer_diff.
14193 (x_check_expected_move): Calculate move_offset_left/top.
14194
14195 * xterm.h (struct x_output): New members: move_offset_top/left.
14196
14197 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
14198 call x_set_offset directly.
14199
14200 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
14201
14202 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
14203
14204 * xterm.c (x_delete_display): Free font names and font_encoder
14205 in dpyinfo->font_table.
14206
14207 * xfns.c (Fx_close_connection): Only call XFreeFont here.
14208 Move xfree of font names to x_delete_display.
14209
14210 * xterm.h (struct x_display_info): New member, wm_type.
14211 (struct x_output): New members, expected_top/left and
14212 check_expected_move.
14213
14214 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
14215 is received.
14216 (handle_one_xevent): Rename x_check_expected_move from
14217 x_check_fullscreen_move.
14218 (x_set_offset): Only add WM decoration sizes to modified_top/left
14219 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
14220 (x_check_expected_move): Rename from x_check_fullscreen_move.
14221 Removed fullscreen specific code. Use check_expected_move,
14222 expected_left/top instead. Also, set wm_type.
14223 (x_term_init): Initialize wm_type to unknown.
14224
14225 * frame.c (x_fullscreen_move): Remove addition of WM decoration
14226 sizes to move_x/y.
14227
14228 2003-10-03 Kenichi Handa <handa@m17n.org>
14229
14230 * macterm.c (x_load_font): Clear all members of FONTP before start
14231 filling them.
14232
14233 2003-10-02 Kenichi Handa <handa@m17n.org>
14234
14235 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
14236 before calling find_ccl_program_func. Call find_ccl_program_func
14237 only when fontp->font_encoder is not NULL.
14238
14239 * xterm.c (x_load_font): Clear all members of FONTP before start
14240 filling them.
14241
14242 2003-10-03 John Paul Wallington <jpw@gnu.org>
14243
14244 * keymap.c (map_keymap): Don't abort when binding is a vector.
14245
14246 2003-10-02 Jason Rumney <jasonr@gnu.org>
14247
14248 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
14249 Sync dependencies with Makefile.in.
14250 (alloca.o): Remove.
14251
14252 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
14253 filling them.
14254
14255 * w32bdf.c (w32_load_bdf_font): Likewise.
14256
14257 2003-09-30 Richard M. Stallman <rms@gnu.org>
14258
14259 * term.c (set_tty_color_mode): Calculate current_mode_spec
14260 regardless of value of VAL.
14261
14262 * intervals.c (graft_intervals_into_buffer):
14263 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
14264 Handle over_used when splitting UNDER.
14265
14266 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14267
14268 * regex.c (regex_compile): Free the stack when returning from function.
14269
14270 2003-09-28 Kenichi Handa <handa@m17n.org>
14271
14272 * fontset.c (Finternal_char_font): Change return value to
14273 cons (FONT-NAME . GLYPH-CODE).
14274
14275 2003-09-28 Eli Zaretskii <eliz@gnu.org>
14276
14277 * term.c (tty_setup_colors): Treat any negative argument as -1.
14278
14279 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
14280
14281 * process.c (send_process): Delete unused temp_buf.
14282
14283 2003-09-26 Dave Love <fx@gnu.org>
14284
14285 * xterm.c (x_bitmap_mask): Declare.
14286
14287 2003-09-25 Dave Love <fx@gnu.org>
14288
14289 * Makefile.in (fns.o): Depend on md5.h.
14290
14291 2003-09-25 Kim F. Storm <storm@cua.dk>
14292
14293 * window.c (set_window_buffer): Fix redisplay problems when
14294 switching between buffers with different display margin widths.
14295
14296 2003-09-23 Kim F. Storm <storm@cua.dk>
14297
14298 * process.c (set_socket_option): Fix :bindtodevice option.
14299 (Fset_network_process_option): Update process contact list when
14300 setting option succeeds.
14301 (Fmake_network_process): Doc fix.
14302
14303 2003-09-23 Dave Love <fx@gnu.org>
14304
14305 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
14306
14307 2003-09-22 Eli Zaretskii <eliz@gnu.org>
14308
14309 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
14310 color mode is an integer number (it could be -1).
14311
14312 2003-09-22 Richard M. Stallman <rms@gnu.org>
14313
14314 * intervals.c (graft_intervals_into_buffer): Correct the main loop
14315 in the case where OVER is longer than UNDER.
14316
14317 2003-09-22 Masatake YAMATO <jet@gyve.org>
14318
14319 * window.c (Fset_window_scroll_bars): Validate the value of
14320 `vertical_type'.
14321
14322 2003-09-21 Kim F. Storm <storm@cua.dk>
14323
14324 * frame.c (Vdefault_frame_scroll_bars): New variable.
14325 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
14326 (syms_of_frame): DEFVAR_LISP it, and initialize according to
14327 window-system default scroll bar position.
14328
14329 * window.c (Fwindow_scroll_bars): Doc fix.
14330
14331 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14332
14333 * xterm.c (x_set_offset): Take window manager decorations into account.
14334
14335 2003-09-19 Richard M. Stallman <rms@gnu.org>
14336
14337 * atimer.h: Don't include lisp.h.
14338 (P_): Define it here (as well as elsewhere).
14339
14340 * print.c (Fprin1_to_string): Move the PRINTPREPARE
14341 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
14342
14343 * data.c (Fvariable_binding_locus): New function.
14344 (syms_of_data): defsubr it.
14345 (Flocal_variable_p): Delete duplicate call to indirect_variable.
14346
14347 2003-09-18 Dave Love <fx@gnu.org>
14348
14349 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
14350
14351 * process.c (Fnetwork_interface_info): Fix type error.
14352 (Fnetwork_interface_list): Doc fix.
14353 (read_process_output, read_process_output): Delete unused var.
14354
14355 2003-09-17 Kim F. Storm <storm@cua.dk>
14356
14357 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
14358 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
14359 (Fnetwork_interface_info): Check that ifreq struct has required
14360 fields before accessing them; this requires that those fields are
14361 defined as macros, which may be too restrictive on some platforms,
14362 but it is better than failing on other platforms.
14363 (syms_of_process): Only defsubr above fns when included.
14364
14365 2003-09-17 Dave Love <fx@gnu.org>
14366
14367 * unexalpha.c: Don't include varargs.h.
14368
14369 2003-09-17 Kim F. Storm <storm@cua.dk>
14370
14371 * process.c (Fset_process_sentinel): Add sentinel to childp plist
14372 for network process.
14373 (socket_options): Add `:' prefix to option names. Add optbit field.
14374 (set_socket_option): Remove no_error arg and special handling of s < 0.
14375 Return 1<<optbit for known option, 0 for unknown.
14376 Do not interpret 0 as false for boolean option (only nil).
14377 Pass failed option and value to report_file_error.
14378 (Fset_network_process_options): Replace by Fset_network_process_option.
14379 (Fset_network_process_option): New function to set just one option.
14380 (Fmake_network_process): Allow :coding arg to be a cons.
14381 Allow :server arg to be an integer specifying backlog size.
14382 Remove :options arg, and allow options to be specified directly
14383 as :KEY, VALUE pairs. Parse these options before binding socket.
14384 As before, :reuseaddr t is default for a server process, but this
14385 can now be disabled by specifying :reuseaddr nil.
14386 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
14387 (init_process): Availability of network options is now checked with
14388 simpler syntax (featurep 'make-network-process :OPTION); use loop to
14389 setup features.
14390 (syms_of_process): Fix defsubr's for the replaced functions.
14391
14392 2003-09-16 Dave Love <fx@gnu.org>
14393
14394 * Makefile.in: Depend on coding.h.
14395
14396 2003-09-14 Kim F. Storm <storm@cua.dk>
14397
14398 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
14399 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
14400 (syms_of_process): Defsubr them.
14401
14402 * config.in: Regenerate.
14403
14404 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
14405
14406 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
14407 * m/news-r6.h (XUNMARK): Remove.
14408 * m/mips.h (XUNMARK): Remove.
14409 * m/mips-siemens.h (XUNMARK): Remove.
14410 * m/iris4d.h (XUNMARK): Remove.
14411 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
14412
14413 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
14414
14415 * lisp.h (VALBITS): Don't remove 1 for the markbit.
14416 (union Lisp_Object): Use unsigned int for types. Remove markbit.
14417 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
14418 (XTYPE): Use unsigned right-shift.
14419 (XMARKBIT, XMARK, XUNMARK): Remove.
14420
14421 * alloc.c (init_intervals, init_symbol, init_marker):
14422 Don't preallocate anything.
14423 (Fgarbage_collect, mark_object): Ignore the markbit.
14424
14425 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
14426
14427 2003-09-08 Lute Kamstra <lute@gnu.org>
14428
14429 * xdisp.c (pint2hrstr): New function.
14430 (decode_mode_spec): Add `%i' and `%I' specs.
14431 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
14432 for `mode-line-format'.
14433
14434 2003-09-07 Andreas Schwab <schwab@suse.de>
14435
14436 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
14437 avoid warning.
14438
14439 2003-09-07 Eli Zaretskii <eliz@gnu.org>
14440
14441 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
14442
14443 2003-09-03 Kim F. Storm <storm@cua.dk>
14444
14445 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
14446 change (superseded by 2002-08-30 change); the default blink-off
14447 cursor is now again "no cursor".
14448
14449 2003-09-01 Jason Rumney <jasonr@gnu.org>
14450
14451 * makefile.w32-in (alloca.o): Remove.
14452 (coding.o): Depend on intervals.h
14453 (emacs.o, bytecode.o): Depend on window.h
14454
14455 2003-09-01 Dave Love <fx@gnu.org>
14456
14457 * Makefile.in (alloca.o): Remove commands.
14458 (coding.o): Depend on intervals.h composite.h window.h.
14459 (emacs.o): Depend on window.h keyboard.h keymap.h.
14460 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
14461 (bytecode.o): Depend on window.h.
14462
14463 2003-08-31 Jason Rumney <jasonr@gnu.org>
14464
14465 * w32term.c (w32_per_char_metric): Allow cached metrics to be
14466 returned even when font_type is unknown.
14467
14468 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
14469
14470 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14471
14472 * xterm.c (x_term_init): Initialize new fields in x_display_info.
14473
14474 * xterm.h (struct x_display_info): Add red/green/blue_bits and
14475 *_offset.
14476
14477 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
14478 calculate pixel value.
14479
14480 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
14481
14482 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
14483 Don't tell redisplay display is accurate when it's actually been
14484 paused for pending input.
14485
14486 2003-08-29 Richard M. Stallman <rms@gnu.org>
14487
14488 * dispnew.c (adjust_glyph_matrix): Call window_box
14489 whenever W is nonzero.
14490
14491 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
14492 (Fkill_local_variable, Fmake_variable_frame_local)
14493 (Flocal_variable_p, Flocal_variable_if_set_p):
14494 Use indirect_variable to trace thru variable aliases.
14495
14496 * config.in: Updated.
14497
14498 * callint.c (Fcall_interactively): Save and restore
14499 Vthis_command, Vthis_original_command, real_this_command,
14500 and current_kboard->Vlast_command.
14501
14502 * abbrev.c (Fexpand_abbrev): Insert before deleting.
14503
14504 2003-08-29 Gerd Moellmann <gerd@gnu.org>
14505
14506 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
14507
14508 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
14509
14510 * coding.c (decode_coding_iso2022): Initialize local variable c2.
14511 (decode_coding_sjis_big5): Likewise.
14512
14513 2003-08-27 Jason Rumney <jasonr@gnu.org>
14514
14515 * w32.c (sys_pipe): Protect against file descriptor overflow.
14516
14517 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
14518
14519 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
14520
14521 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
14522
14523 * xfns.c (Vgtk_version_string): New variable.
14524 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
14525
14526 2003-08-24 Eli Zaretskii <eliz@gnu.org>
14527
14528 * term.c (term_init): Remove `const' from buffer_size's declaration.
14529
14530 * Makefile.in (msdos.o): Depend on intervals.h.
14531
14532 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
14533
14534 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14535
14536 * xterm.h (struct x_display_info): New fields: client_leader_window
14537 and Xatom_wm_client_leader.
14538
14539 * xterm.c (x_initialize): Move call to x_session_initialize to ...
14540 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
14541
14542 * xsmfns.c (create_client_leader_window): New function.
14543 (x_session_initialize): Call create_client_leader_window, take
14544 dpyinfo as argument.
14545
14546 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
14547
14548 * Makefile.in (xsmfns.o): Add more depenedencies.
14549
14550 2003-08-21 Dave Love <fx@gnu.org>
14551
14552 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
14553
14554 2003-08-21 Kenichi Handa <handa@m17n.org>
14555
14556 * term.c (term_init): Fix previous change; don't rely on the
14557 length of `buffer' if TERMINFO is defined.
14558
14559 2003-08-20 Dave Love <fx@gnu.org>
14560
14561 * atimer.h: Include lisp.h.
14562
14563 * lisp.h (EMACS_LISP_H): New.
14564 (popup_activated_flag): Don't declare.
14565
14566 * alloca.c: Some merging with gnulib. Change logic and doc
14567 concerning (x)malloc/(x)free -- no longer Emacs-specific.
14568 [DO_BLOCK_INPUT]: Don't include lisp.h.
14569 (xmalloc, xfree): Declare.
14570 (malloc): Don't declare.
14571
14572 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
14573 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
14574 atimer.h, blockinput.h.
14575
14576 * alloc.c (lisp_align_malloc): Change type of `aligned'.
14577
14578 * alloca.s: Remove.
14579
14580 2003-08-19 Gerd Moellmann <gerd@gnu.org>
14581
14582 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
14583 use -lncurses.
14584
14585 * term.c (term_init): Use a buffer of size 4096 for tgetent since
14586 FreeBSD returns something longer than 2044. Abort if the end of
14587 the buffer is overwritten.
14588
14589 2003-08-19 Miles Bader <miles@gnu.org>
14590
14591 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
14592
14593 2003-08-19 Gerd Moellmann <gerd@gnu.org>
14594
14595 * alloc.c (lisp_align_malloc): Check for memory full when
14596 allocating ablocks, which also avoids freeing a pointer into an
14597 ablocks structure.
14598
14599 * puresize.h (BASE_PURESIZE): Increase to 1100000.
14600
14601 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
14602
14603 2003-08-16 Richard M. Stallman <rms@gnu.org>
14604
14605 * editfns.c (Fencode_time): Doc fix.
14606
14607 2003-08-16 David Ponce <david@dponce.com>
14608
14609 * fileio.c (Fwrite_region): Fix conditional expression to issue
14610 the right message.
14611
14612 2003-08-16 Juri Linkov <juri@jurta.org>
14613
14614 * syntax.c (Fforward_word): Argument changed to optional.
14615 Set default value to 1.
14616
14617 2003-08-15 Kenichi Handa <handa@m17n.org>
14618
14619 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
14620 what autoscaled.
14621 (best_matching_font): Once we find a better scalable font, set
14622 non_scalable_has_exact_height_p to 1.
14623 (try_font_list): Call try_alternative_families to try any family
14624 with the given registry.
14625
14626 2003-08-09 Andreas Schwab <schwab@suse.de>
14627
14628 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
14629
14630 * print.c (print_string): Fix printing of multibyte string with
14631 nontrivial printcharfun.
14632
14633 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14634
14635 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
14636
14637 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
14638
14639 2003-07-31 Kenichi Handa <handa@m17n.org>
14640
14641 * process.c (read_process_output): Return the actually read bytes
14642 instead of the result of decoding.
14643
14644 2003-07-31 Kenichi Handa <handa@m17n.org>
14645
14646 * xterm.h (struct x_bitmap_record): New member have_mask.
14647
14648 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
14649 to 0.
14650 (x_create_bitmap_from_file): Likewise.
14651 (x_destroy_bitmap): Check have_mask member before freeing a mask.
14652 (x_destroy_all_bitmaps): Likewise.
14653 (x_create_bitmap_mask): Set have_mask member to 1.
14654
14655 2003-07-30 Richard M. Stallman <rms@gnu.org>
14656
14657 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
14658
14659 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14660
14661 * gtkutil.c (xg_mark_data): Update calls to mark_object.
14662
14663 2003-07-29 Richard M. Stallman <rms@gnu.org>
14664
14665 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
14666 Conditionalize XIM code on HAVE_XIM.
14667
14668 * fns.c (Fclear_string): New function.
14669 (syms_of_fns): defsubr it.
14670
14671 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14672
14673 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
14674
14675 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
14676
14677 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
14678
14679 * buffer.c (delete_all_overlays): New function.
14680 * buffer.h (delete_all_overlays): Declare.
14681 * coding.c (run_pre_post_conversion_on_str):
14682 * print.c (temp_output_buffer_setup):
14683 * fileio.c (Finsert_file_contents):
14684 * minibuf.c (get_minibuffer): Use it.
14685
14686 2003-07-22 Andrew Choi <akochoi@shaw.ca>
14687
14688 * unexmacosx.c (unexec_regions_sort_compare):
14689 (unexec_regions_merge): New functions. Sort and merge unexec
14690 regions before dumping them.
14691
14692 2003-07-22 Dave Love <fx@gnu.org>
14693
14694 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
14695
14696 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
14697
14698 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
14699 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
14700 MARKBIT as the gcmarkbit for strings.
14701
14702 2003-07-21 Richard M. Stallman <rms@gnu.org>
14703
14704 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
14705
14706 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
14707 (syms_of_fns): Corresponding change.
14708
14709 * alloc.c (syms_of_alloc): Doc fixes.
14710
14711 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
14712
14713 * s/netbsd.h: Use -Wl syntax.
14714
14715 2003-07-17 Richard M. Stallman <rms@gnu.org>
14716
14717 * xterm.c (xim_initialize): Redo 6/24 change.
14718
14719 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
14720
14721 * buffer.c (copy_overlays): Use EMACS_INT for positions.
14722 (Fswitch_to_buffer): Don't signal an error when switching to the same
14723 buffer in a dedicated window.
14724
14725 * alloc.c: Use bitmaps for cons, as was done for floats.
14726 (init_float, init_cons): Let the normal code allocate the first block.
14727 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
14728 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
14729 New macros.
14730 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
14731 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
14732 (live_cons_p): Check the pointer is not past the `conses' array.
14733 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
14734 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
14735 (survives_gc_p): Use CONS_MARKED_P and simplify.
14736 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
14737
14738 2003-07-13 Paul Eggert <eggert@twinsun.com>
14739
14740 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
14741 puts it into BSS instead, at least on Solaris 8 and 9.
14742 This is a valid optimization, and it may occur on other platforms,
14743 so Emacs should not assume that initializing a static variable to
14744 zero puts it into data.
14745 * alloc.c (pure, staticvec):
14746 Initialize these arrays to nonzero, so that they're not
14747 put into BSS by that optimization.
14748
14749 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
14750
14751 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
14752 (lisp_align_malloc): Use posix_memalign is available.
14753 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
14754 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
14755 for consistency. Update users.
14756
14757 2003-07-13 Richard M. Stallman <rms@gnu.org>
14758
14759 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
14760
14761 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
14762
14763 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
14764 and use the Gtk+ function gtk_window_icon_from_file if available.
14765
14766 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
14767 handle mask of bitmaps.
14768 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
14769 mask property.
14770 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
14771
14772 * xterm.h (xg_set_icon): New function.
14773
14774 2003-07-12 Paul Eggert <eggert@twinsun.com>
14775
14776 * unexelf.c (unexec): Consider a section to precede the .bss
14777 section if its addresses overlap that of .bss.
14778
14779 2003-07-12 Richard M. Stallman <rms@gnu.org>
14780
14781 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
14782
14783 * config.in (HAVE_CRTIN): Add #undef.
14784 (INLINE): Really inline only if OPTIMIZE is defined.
14785
14786 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
14787 END_FILES_1.
14788 (START_FILES_1, END_FILES_1): New macros (conditional).
14789 (LD_SWITCH_SYSTEM_TEMACS): Define.
14790
14791 * s/openbsd.h: Don't include bsd4-3.h.
14792 (TERMINFO): Define.
14793 (LIBS_TERMCAP): Define.
14794 (LD_SWITCH_SYSTEM): Define (two definitions).
14795
14796 * xfns.c: Include libpng/png.h instead of png.h.
14797
14798 2003-07-11 Andreas Schwab <schwab@suse.de>
14799
14800 * buffer.c (modify_overlay): Update prototype.
14801 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
14802 Likewise.
14803
14804 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
14805
14806 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
14807 (struct interval): Move to intervals.h.
14808 (struct Lisp_Marker): Use EMACS_INT for position info.
14809 (forward_point): Remove prototype of defunct function.
14810 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
14811 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
14812 (syms_of_textprop, set_text_properties): Remove prototypes that are
14813 already in intervals.h.
14814
14815 * intervals.h (struct interval): Move from lisp.h.
14816 Use EMACS_INT for position and size info.
14817
14818 * coding.c: Include intervals.h for Fset_text_properties.
14819
14820 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
14821 position and length information.
14822
14823 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
14824
14825 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
14826 position and length information.
14827
14828 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
14829
14830 Change overlays_after and overlays_before so the overlays themselves
14831 are linked into lists, rather than using cons cells. After all each
14832 Lisp_Misc already occupies 5 words, so we can add a `next' field to
14833 Lisp_Overlay for free and save up one cons cell per overlay (not
14834 to mention one indirection when traversing the list of overlay).
14835
14836 * lisp.h (struct Lisp_Overlay): New field `next'.
14837
14838 * buffer.h (struct buffer): Change overlays_before and overlays_after
14839 from Lisp lists of overlays to pointers to overlays.
14840
14841 * buffer.c (overlay_strings, recenter_overlay_lists):
14842 Fix typo in eassert in last commit.
14843 (unchain_overlay): New function.
14844 (add_overlay_mod_hooklist): Use AREF.
14845 (copy_overlays, reset_buffer, overlays_at, overlays_in)
14846 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
14847 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
14848 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
14849 (report_overlay_modification, evaporate_overlays, init_buffer_once):
14850 Adjust to new type of overlays_(before|after).
14851
14852 * alloc.c (mark_object): Mark the new `next' field of overlays.
14853 (mark_buffer): Manually mark the overlays_(after|before) fields.
14854
14855 * coding.c (run_pre_post_conversion_on_str):
14856 * editfns.c (overlays_around):
14857 * xdisp.c (load_overlay_strings):
14858 * fileio.c (Finsert_file_contents):
14859 * indent.c (current_column):
14860 * insdel.c (signal_before_change, signal_after_change):
14861 * intervals.c (set_point_both):
14862 * print.c (temp_output_buffer_setup): Use new type for
14863 overlays_(before|after).
14864
14865 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
14866
14867 * buffer.c (report_overlay_modification): Don't run hooks while
14868 traversing the list of overlays.
14869
14870 * buffer.h (struct buffer): Use an int for overlay_center.
14871 (overlays_at, evaporate_overlays, recenter_overlay_lists)
14872 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
14873
14874 * buffer.c (reset_buffer, recenter_overlay_lists)
14875 (adjust_overlays_for_insert, adjust_overlays_for_delete)
14876 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
14877 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
14878 (overlays_at, evaporate_overlays, recenter_overlay_lists)
14879 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
14880
14881 * xdisp.c (fast_find_position): Remove unused var.
14882
14883 * cmds.c (Qexpand_abbrev): New sym.
14884 (syms_of_cmds): Initialize it.
14885 (internal_self_insert): Use it to call expand-abbrev.
14886
14887 2003-07-09 Kim F. Storm <storm@cua.dk>
14888
14889 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
14890 was configured with --without-xim.
14891 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
14892
14893 2003-07-07 Richard M. Stallman <rms@gnu.org>
14894
14895 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
14896
14897 * alloc.c (Fgarbage_collect): Doc fix.
14898
14899 2003-07-07 Nozomu Ando <nand@mac.com>
14900
14901 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
14902
14903 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
14904
14905 * minibuf.c (read_minibuf): UNGCPRO before returning.
14906 (Ftry_completion, Fall_completions): Doc fix.
14907
14908 * alloc.c (live_float_p): Check that p is not past the `floats' array,
14909 now that `floats' is not the last element of the struct any more.
14910
14911 2003-07-06 Jason Rumney <jasonr@gnu.org>
14912
14913 * w32term.h (ClipboardSequence_Proc): New type.
14914
14915 * w32fns.c (clipboard_sequence_fn): New variable.
14916 (globals_of_w32fns): Initialize it.
14917
14918 * w32select.c (last_clipboard_sequence_number): New variable.
14919 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
14920 number if possible.
14921
14922 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
14923
14924 * m/amdx86-64.h (MARKBIT):
14925 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
14926 MARKBIT and ARRAY_MARK_FLAG any more.
14927
14928 * m/hp800.h (XSETMARKBIT):
14929 * m/sr2k.h (XSETMARKBIT):
14930 * lisp.h (XSETMARKBIT): Remove unused macro.
14931
14932 * lisp.h (mark_object): Change prototype.
14933
14934 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
14935 (last_marked): Change accordingly.
14936 (mark_interval, mark_maybe_object, mark_maybe_pointer)
14937 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
14938 (mark_buffer): Update calls to mark_object.
14939
14940 * bytecode.c (mark_byte_stack):
14941 * fns.c (sweep_weak_table):
14942 * keyboard.c (mark_kboards): Update calls to mark_object.
14943
14944 2003-07-06 Jason Rumney <jasonr@gnu.org>
14945
14946 * alloc.c (struct ablock): Only include padding when there is some.
14947
14948 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
14949
14950 * alloc.c (ALIGN): Add casts to simplify usage.
14951 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
14952 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
14953 (struct ablock, struct ablocks): New types.
14954 (free_ablock): New global var.
14955 (lisp_align_malloc, lisp_align_free): New functions.
14956 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
14957 (struct float_block): Reorder and add gcmarkbits.
14958 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
14959 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
14960 (init_float, make_float): Use lisp_align_malloc.
14961 (free_float, live_float_p): Don't use `type' any more.
14962 (make_float): Use FLOAT_UNMARK to access to mark bit.
14963 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
14964 Use FLOAT_MARKED_P to access the mark bit.
14965 (pure_alloc): Simplify use of ALIGN.
14966 (mark_object): Use FLOAT_MARK to access the mark bit.
14967 (gc_sweep): Use new macros to access the float's mark bit.
14968 (init_alloc_once): Init free_ablock.
14969
14970 * lisp.h (struct Lisp_Float): Remove unused field `type'.
14971
14972 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
14973
14974 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
14975 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
14976 (allocate_buffer): Move.
14977 (string_bytes): Don't mask markbit of `size_byte'.
14978 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
14979 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
14980 Use the `size' field of buffers (rather than the `name' field) for
14981 the mark bit, as is done for all other vectorlike objects.
14982 Use the new macros to access the mark bit of vectorlike objects.
14983
14984 2003-06-26 Richard M. Stallman <rms@gnu.org>
14985
14986 * puresize.h (BASE_PURESIZE): Increment base size.
14987
14988 * xdisp.c (fast_find_position): Enable Gerd's new definition.
14989
14990 * xterm.c (xim_initialize): Undo previous change.
14991
14992 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
14993
14994 * alloc.c (survives_gc_p): Simplify.
14995
14996 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
14997
14998 * window.c (Fset_window_dedicated_p): Simplify.
14999 (display_buffer_1): Don't raise the win from which minibuf was entered.
15000 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
15001 (Fminibuffer_selected_window): Simplify.
15002
15003 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
15004
15005 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
15006 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
15007
15008 * insdel.c (check_markers, adjust_markers_for_delete)
15009 (adjust_markers_for_insert, adjust_markers_for_replace)
15010 (prepare_to_modify_buffer, RESTORE_VALUE):
15011 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
15012 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
15013 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
15014 * alloc.c (Fmake_marker, free_marker, gc_sweep):
15015 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
15016 * editfns.c (save_excursion_restore, transpose_markers):
15017 * window.c (delete_window):
15018 * xdisp.c (message_dolog): Update for new types.
15019
15020 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15021
15022 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
15023 (realize_default_face): Use default_face_done_p for the force_p
15024 argument to set_lface_from_font_name. Set default_face_done_p to one.
15025
15026 * frame.c (make_frame): Initialize default_face_done_p.
15027
15028 * frame.h (struct frame): Add default_face_done_p.
15029
15030 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
15031 will be defined.
15032
15033 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
15034
15035 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
15036 Initialize the new field `gcmarkbit'.
15037 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
15038 (mark_interval_tree): Don't mark the tree separately from the nodes.
15039 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
15040 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
15041 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
15042
15043 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
15044 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
15045 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
15046 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
15047 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
15048
15049 2003-06-24 Dave Love <fx@gnu.org>
15050
15051 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
15052
15053 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
15054 from gnulib.
15055
15056 2003-06-21 Richard M. Stallman <rms@gnu.org>
15057
15058 * fileio.c (Fwrite_region): Alternate messages
15059 for append and partial write.
15060
15061 * keyboard.c (read_key_sequence): When converting upcase fn key to
15062 downcase, update fkey and keytran so `backspace' gets translated.
15063
15064 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
15065
15066 * process.c (wait_reading_process_input): Don't signal SIGIO
15067 in batch mode.
15068
15069 2003-06-17 Kenichi Handa <handa@m17n.org>
15070
15071 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
15072 composite.h.
15073
15074 * xselect.c: Don't include charset.h, coding.h, composite.h.
15075 (Qforeign_selection): New variable.
15076 (syms_of_xselect): Intern and static it.
15077 (selection_data_to_lisp_data): Return a unibyte string made from
15078 data with `foreign-selection' text property.
15079
15080 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
15081
15082 * termhooks.h (EVENT_INIT): New macro.
15083
15084 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
15085
15086 * alloc.c (mark_kboards): Move to keyboard.c.
15087
15088 * keyboard.c (record_asynch_buffer_change, read_avail_input):
15089 * xterm.c (x_dispatch_event):
15090 * xmenu.c (find_and_call_menu_selection):
15091 * xdisp.c (handle_tool_bar_click):
15092 * w32menu.c (menubar_selection_callback):
15093 * sysdep.c (kbd_input_ast, read_input_waiting):
15094 * msdos.c (dos_rawgetc):
15095 * macterm.c (mac_check_for_quit_char):
15096 * macmenu.c (menubar_selection_callback):
15097 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
15098 data to kbd_buffer_store_event.
15099
15100 2003-06-15 Kim F. Storm <storm@cua.dk>
15101
15102 * xdisp.c (x_fix_overlapping_area): Always use area relative X
15103 to fix redisplay problem with tall characters (such as \e,AC\e(B).
15104
15105 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
15106
15107 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
15108
15109 2003-06-12 Kenichi Handa <handa@m17n.org>
15110
15111 * fileio.c (Fwrite_region): Save and restore restriction.
15112
15113 2003-06-12 Dave Love <fx@gnu.org>
15114
15115 * alloca.c (alloca): Declare arg as size_t.
15116
15117 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
15118 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
15119
15120 2003-06-11 Dave Love <fx@gnu.org>
15121
15122 * search.c (shrink_regexp_cache): Use xrealloc.
15123 (syms_of_search): Use xmalloc.
15124
15125 2003-06-10 Kim F. Storm <storm@cua.dk>
15126
15127 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
15128 Adjust phys_cursor.x to be relative to window box, rather than
15129 text area before checking -- to ensure cursor is redrawn when
15130 exposing window.
15131 Note: This also fixes a similar (older) bug if display margins
15132 are present.
15133
15134 2003-06-06 Kenichi Handa <handa@m17n.org>
15135
15136 * coding.c (encoding_buffer_size): If coding->type is
15137 coding_type_ccl, double magnification on CRLF encoding.
15138
15139 2003-06-06 Jason Rumney <jasonr@gnu.org>
15140
15141 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
15142 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
15143
15144 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
15145 Mac too.
15146
15147 2003-06-05 Dave Love <fx@gnu.org>
15148
15149 * strftime.c: Merge changes from gnulib.
15150
15151 * mktime.c (__mktime_internal): Merge changes from gnulib
15152 involving year 69 and dst2.
15153
15154 Changes to merge with gnulib version and be consistent with the
15155 autoconf test:
15156
15157 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
15158 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
15159 [HAVE_LOCALE_H]: Include locale.h.
15160 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
15161
15162 2003-06-05 Kim F. Storm <storm@cua.dk>
15163
15164 * window.c (coordinates_in_window): Convert X and Y to window
15165 relative coordinates inside mode-line and header-line parts.
15166 Convert X and Y to margin area relative coordinates inside left
15167 and right display margin parts.
15168
15169 2003-06-05 Jason Rumney <jasonr@gnu.org>
15170
15171 * w32fns.c (add_system_logical_colors_to_map): New function.
15172 (Fx_open_connection): Use it.
15173
15174 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
15175
15176 * process.c (allocate_pty): Revert part of the previous patch.
15177 (Faccept_process_output): Simplify.
15178
15179 2003-06-04 Jason Rumney <jasonr@gnu.org>
15180
15181 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
15182
15183 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
15184 (lispy_mouse_wheel_names): Remove.
15185 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
15186 Always define drag_and_drop_syms.
15187
15188 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
15189 WHEEL_EVENT events.
15190
15191 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
15192
15193 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
15194
15195 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
15196
15197 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15198
15199 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
15200 menu item label.
15201
15202 2003-06-03 Richard M. Stallman <rms@gnu.org>
15203
15204 * window.c (Fwindow_edges): Doc fix.
15205 (Fwindow_pixel_edges, Fwindow_inside_edges)
15206 (Fwindow_inside_pixel_edges): New functions.
15207 (syms_of_window): defsubr them.
15208
15209 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
15210 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
15211
15212 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
15213
15214 * dispnew.c (Fsit_for): Don't lie about the number of args.
15215
15216 2003-06-02 Dave Love <fx@gnu.org>
15217
15218 * callproc.c: Use HAVE_FCNTL_H, not USG5.
15219 (syms_of_callproc) <process-environment>: Doc fix.
15220
15221 * doc.c: Use HAVE_FCNTL_H, not USG5.
15222
15223 * xfaces.c (font_rescale_ratio): Fix for K&R.
15224
15225 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
15226
15227 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
15228
15229 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
15230
15231 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
15232 (xg_create_frame_widgets): Use ENCODE_UTF_8.
15233
15234 * xterm.c (Qutf_8): Move to coding.c
15235
15236 * xmenu.c (ENCODE_MENU_STRING): New.
15237 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
15238 Use it.
15239
15240 * coding.h (ENCODE_UTF_8): New.
15241 (Qutf_8): Declare.
15242
15243 * coding.c (Qutf_8): New.
15244 (syms_of_coding): Intern it.
15245
15246 * fns.c: Doc fixes.
15247
15248 2003-06-02 Kenichi Handa <handa@m17n.org>
15249
15250 * buffer.c (Fset_buffer_multibyte): Fix previous change.
15251
15252 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
15253
15254 * lread.c (openp): Make sure STR is a string.
15255
15256 2003-06-01 David Ponce <david@dponce.com>
15257
15258 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
15259 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
15260
15261 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
15262 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
15263 (discard_mouse_events): Discard WHEEL_EVENT events too.
15264 (lispy_wheel_names, wheel_syms): New.
15265 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
15266 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
15267 (make_lispy_event): Add WHEEL_EVENT handler.
15268
15269 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
15270 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
15271 WHEEL_EVENT events.
15272
15273 2003-05-31 John Paul Wallington <jpw@gnu.org>
15274
15275 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
15276 timer are in lisp/emacs-lisp.
15277
15278 2003-05-31 Kenichi Handa <handa@m17n.org>
15279
15280 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
15281 region when a buffer is changed to unibyte.
15282
15283 * charset.h (VALID_LEADING_CODE_P): New macro.
15284 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
15285
15286 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
15287 is nonzero, accept multibyte form of eight-bit-control chars.
15288 (decode_composition_emacs_mule): Likewise.
15289 (decode_coding_emacs_mule): Likewise.
15290 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
15291 multibyte form of eight-bit-control chars.
15292
15293 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
15294 (Finsert_file_contents): If coding-system-for-read is bound to
15295 Qauto_save_coding, use the coding system emacs-mule with special
15296 setting for recovering a file.
15297 (choose_write_coding_system): On auto saving, use the coding
15298 system emacs-mule with special setting for auto saving.
15299 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
15300
15301 2003-05-30 Kenichi Handa <handa@m17n.org>
15302
15303 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
15304 properly before calling ccl_driver.
15305
15306 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
15307
15308 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
15309 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
15310 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
15311
15312 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
15313
15314 * xfaces.c (realize_default_face): Do not abort if lface is
15315 non-existent - reverts change from 2003-05-19.
15316
15317 2003-05-29 Kenichi Handa <handa@m17n.org>
15318
15319 * coding.c (decode_coding_iso2022): Pay attention to the byte
15320 sequence of CTEXT extended segment, and retain those bytes as is.
15321
15322 2003-05-28 Kenichi Handa <handa@m17n.org>
15323
15324 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
15325 of CODING_REPLACEMENT_CHARACTER.
15326 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
15327 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
15328 check this flag on encoding.
15329 (encode_coding_sjis_big5):
15330 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
15331 (Fset_terminal_coding_system_internal):
15332 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
15333 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
15334
15335 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
15336 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15337 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
15338
15339 2003-05-28 Richard M. Stallman <rms@gnu.org>
15340
15341 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
15342
15343 * eval.c (unbind_to): Move init of this_binding to separate statement.
15344
15345 2003-05-28 Kim F. Storm <storm@cua.dk>
15346
15347 * xdisp.c (expose_window): Fix error in calculation of
15348 window relative coordinates of area to redisplay.
15349
15350 2003-05-27 Jason Rumney <jasonr@gnu.org>
15351
15352 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
15353
15354 2003-05-27 David Ponce <david@dponce.com>
15355
15356 Handle W32 mouse wheel events as mouse click events, like in X.
15357
15358 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
15359 MOUSE_WHEEL_EVENT anymore.
15360
15361 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
15362 Scrolling down/up the mouse wheel is respectively mapped to mouse
15363 button 4 and 5.
15364 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
15365 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
15366 WM_MOUSEWHEEL events.
15367
15368 2003-05-27 Andreas Schwab <schwab@suse.de>
15369
15370 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
15371
15372 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
15373 partially visible line.
15374
15375 * alloc.c (Fgarbage_collect): Fix last change.
15376
15377 2003-05-26 John Paul Wallington <jpw@gnu.org>
15378
15379 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
15380
15381 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
15382
15383 * window.c (Fset_window_buffer): Add type of `keep_margins'.
15384 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
15385
15386 * window.h (window_box_text_cols): Declare.
15387
15388 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
15389 (x_draw_vertical_border): Remove unused var `f'.
15390
15391 * xfaces.c (build_scalable_font_name): Remove `unused var
15392 pixel_size' warning.
15393
15394 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
15395
15396 * unexelf.c (unexec): Remove `unused var n' warning.
15397
15398 * strftime.c (my_strftime_localtime_r): Remove `defined but
15399 unused' warning.
15400
15401 * process.c (allocate_pty): Remove `unused var stb' and
15402 `cp might be used uninitialized' warnings.
15403
15404 * dispnew.c (mode_line_string): Remove unused var `f'.
15405
15406 * coding.c (find_safe_codings): Remove unused var `i'.
15407
15408 * bytecode.c (Fbyte_code): Remove `unused val' warning.
15409
15410 * buffer.c (Fkill_buffer): Remove unused var `list'.
15411
15412 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
15413
15414 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15415
15416 * frame.c (make_frame): Condition want_fullscreen with
15417 HAVE_WINDOW_SYSTEM.
15418
15419 2003-05-25 Juanma Barranquero <lektu@terra.es>
15420
15421 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
15422 (Fwindow_scroll_bars): Fix typo in docstring.
15423
15424 2003-05-24 Kim F. Storm <storm@cua.dk>
15425
15426 The following changes serve several purposes:
15427
15428 1) Swap the position of fringes and display margins in windows, i.e.
15429 the fringes are now displayed between the margins and the text area
15430 (by default).
15431
15432 2) Allow fringe and scroll bar parameters to be set per-buffer and
15433 per-window (like display margins). Such settings are now stored
15434 in window configurations, preserved when frames are resized, and
15435 copied when windows are split vertically or horizontally.
15436 Several bugs related to display margins have been fixed.
15437
15438 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
15439
15440 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
15441 rather than FRAME_WIDTH (FRAME_FONT (f)).
15442
15443 5) Introduce a consistent naming of variables, members and macros
15444 depending on whether their value is measured in pixels or in
15445 canonical columns/lines. Pixel dimensions are named *_width and
15446 *_height, while canonical columns/lines are named *_cols and
15447 *_lines. Pixel positions are named *_x and *_y, while column/line
15448 positions are named *_col and *_line.
15449
15450 6) Consolidate more of the X, W32, and MAC gui code by moving
15451 common data into struct frame, and generalize it for the non-gui
15452 case by using suitable defaults.
15453
15454 7) Cleanup and consolidate the macros controlling frame and window
15455 layout into frame.h and window.h, and generalize the use of the
15456 various window_box_* functions (enhanced to handle the new fringe
15457 position and the per-window fringe and scroll bar settings).
15458
15459 * frame.h (struct frame): Rename members height to text_lines,
15460 width to text_cols, window_height to total_lines, window_width to
15461 total_cols, new_height to new_text_lines, new_width to
15462 new_text_cols. All uses changed.
15463 (struct frame): New members which consolidate common members of
15464 x_output, w32_output, and mac_output structures: left_pos,
15465 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
15466 win_gravity, size_hint_flags, border_width, internal_border_width,
15467 line_height, fringe_cols, left_fringe_width, right_fringe_width,
15468 want_fullscreen. All uses changed.
15469 (struct frame): New member column_width contaning the canonical
15470 column width, analogue to line_height. All uses changed.
15471 (struct frame): Rename members scroll_bar_pixel_width to
15472 config_scroll_bar_width, and scroll_bar_cols to
15473 config_scroll_bar_cols. All uses changed.
15474 (struct frame): New member scroll_bar_actual_width which
15475 consolidates and renames the vertical_scroll_bar_extra member of
15476 x_output, w32_output, and mac_output structures. All uses changed.
15477 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
15478 from x/w32/macterm.h files. All uses changed. Also change code
15479 which referred to f->output_data...->pixel_height.
15480 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
15481 from x/w32/macterm.h files. All uses changed. Also change code
15482 which referred to f->output_data...->pixel_width.
15483 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
15484 Also change code which referred to f->height.
15485 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
15486 Also change code which referred to f->width.
15487 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
15488 to update new_text_lines and new_text_cols members directly.
15489 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
15490 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
15491 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
15492 FRAME_SCROLL_BAR_COLS. All uses changed.
15493 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
15494 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
15495 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
15496 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
15497 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
15498 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
15499 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
15500 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
15501 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
15502 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
15503 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
15504 Unconditionally return line_height member (it now has proper value
15505 also for non-window frames).
15506 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
15507 return new column_width member (rather than the default font width).
15508 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
15509 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
15510 from x/w32/macterm.h files. Unconditionally return corresponding
15511 member of frame structure (they now have proper values also for
15512 non-window frames).
15513 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
15514 Calculate return value from left and right widths.
15515 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
15516 internal_border_width member (has proper value for non-window frame).
15517 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
15518 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
15519 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
15520 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
15521 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
15522 consolidated from xterm.h, macterm.h, and w32term.h.
15523 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
15524 consolidated from xterm.h, macterm.h, and w32term.h.
15525 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
15526 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
15527 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
15528 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
15529 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
15530 consolidated from x/mac/w32term.h.
15531 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
15532 consolidated from x/mac/w32term.h.
15533 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
15534 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
15535 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
15536 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
15537
15538 * window.h (struct window): Rename members left to left_col,
15539 top to top_line, height to total_lines, width to total_cols,
15540 left_margin_width to left_margin_cols, right_margin_width to
15541 right_margin_cols, orig_height to orig_total_lines, orig_top to
15542 orig_top_line. All uses changed.
15543 (struct window): New members left_fringe_width, right_fringe_width,
15544 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
15545 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
15546 New macros primarily used to simplify other macros.
15547 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
15548 referred to XINT (w->width).
15549 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
15550 referred to XINT (w->height).
15551 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
15552 referred to XINT (w->width) * canon_x_unit.
15553 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
15554 referred to XINT (w->height) * canon_y_unit.
15555 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
15556 referred to XINT (w->left).
15557 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
15558 all uses and code that referred to XINT (w->left) + XINT (w->width).
15559 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
15560 referred to XINT (w->top).
15561 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
15562 referred to XINT (w->top) + XINT (w->height).
15563 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
15564 referred to XINT (w->left) * canon_x_unit.
15565 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
15566 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
15567 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
15568 referred to XINT (w->top) * canon_y_unit.
15569 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
15570 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
15571 (WINDOW_LEFTMOST_P): New macro.
15572 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
15573 All uses changed.
15574 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
15575 All uses changed.
15576 (WINDOW_BOX_LEFT_EDGE_X): Rename from
15577 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
15578 Do not exclude left fringe width.
15579 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
15580 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
15581 Do not exclude fringe widths.
15582 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
15583 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
15584 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
15585 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
15586 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
15587 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
15588 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
15589 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
15590 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
15591 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
15592 New macros. Change code which referenced corresponding
15593 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
15594 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
15595 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
15596 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
15597 allow per-window scroll-bar settings.
15598 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
15599 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
15600 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
15601 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
15602 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
15603 FRAME_SCROLL_BAR_WIDTH.
15604 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
15605 (WINDOW_SCROLL_BAR_AREA_X): New macros.
15606 (WINDOW_HEADER_LINE_HEIGHT): Rename from
15607 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
15608 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
15609 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
15610 (WINDOW_BOX_TEXT_HEIGHT): Rename from
15611 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
15612 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
15613 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
15614 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
15615 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
15616 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
15617 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
15618 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
15619 (window_from_coordinates): Update prototype.
15620 (Fset_window_buffer): Update EXFUN.
15621 (set_window_buffer): Update prototype.
15622
15623 * dispextern.h (struct glyph_matrix): Rename members window_left_x
15624 to window_left_col, window_top_y to window_top_line. All uses
15625 changed.
15626 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
15627 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
15628 internal_border_width is now set to 0 for non-window frames.
15629 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
15630 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
15631 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
15632 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
15633 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
15634 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
15635 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
15636 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
15637 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
15638 Move to window.h and renamed [see window.h changes].
15639 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
15640 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
15641 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
15642 Use WINDOW_TOTAL_LINES.
15643 (frame_update_line_height): Remove prototype.
15644
15645 * buffer.h (struct buffer): Rename members measured in columns:
15646 left_margin_width to left_margin_cols, right_margin_width to
15647 right_margin_cols. All uses changed.
15648 New members left_fringe_width, right_fringe_width,
15649 fringes_outside_margins for per-buffer fringe settings.
15650 New members scroll_bar_width and vertical_scroll_bar_type for
15651 per-buffer scroll bar settings.
15652
15653 * buffer.c (init_buffer_once): Set buffer_defaults and
15654 buffer_local_flags for new buffer-local variables
15655 left_fringe_width, right_fringe_width, fringes_outside_margins,
15656 scroll_bar_width, and vertical_scroll_bar_type.
15657 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
15658 default-* variables for them.
15659
15660 * dispnew.c: Make (many) trivial substitutions for renamed and
15661 new macros in dispextern.h, frame.h and window.h.
15662 (mode_line_string): No need to adjust width for mode lines, as it
15663 is already adjusted by the caller.
15664 (marginal_area_string): Handle fringes inside/outside margins.
15665
15666 * frame.c: Make (many) trivial substitutions for renamed and
15667 new macros in dispextern.h, frame.h and window.h.
15668 (make_frame): Initialize left_fringe_width, right_fringe_width,
15669 fringe_cols, scroll_bar_actual_width, border_width,
15670 internal_border_width, column_width, line_height, x_pixels_diff,
15671 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
15672 members with values suitable for a non-window frames.
15673
15674 * gtkutil.c: Make (many) trivial substitutions for renamed and
15675 new macros in dispextern.h, frame.h and window.h.
15676
15677 * indent.c: Make (few) trivial substitutions for renamed and
15678 new macros in dispextern.h, frame.h and window.h.
15679
15680 * keyboard.c: Make (many) trivial substitutions for renamed and
15681 new macros in dispextern.h, frame.h and window.h.
15682 (make_lispy_event): Use window positions returned from
15683 window_from_coordinates when constructing the lisp event for
15684 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
15685 (incorrect) values locally.
15686 (make_lispy_movement): Use window positions returned from
15687 window_from_coordinates when constructing the lisp event, rather
15688 than calculating (incorrect) values locally.
15689
15690 * scroll.c: Make (some) trivial substitutions for renamed and
15691 new macros in dispextern.h, frame.h and window.h.
15692
15693 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
15694 scroll-bars.
15695
15696 * sysdep.c: Make (few) trivial substitutions for renamed and
15697 new macros in dispextern.h, frame.h and window.h.
15698
15699 * term.c: Make (some) trivial substitutions for renamed and
15700 new macros in dispextern.h, frame.h and window.h.
15701
15702 * widget.c: Make (few) trivial substitutions for renamed and
15703 new macros in dispextern.h, frame.h and window.h.
15704
15705 * window.c: Make (many) trivial substitutions for renamed and
15706 new macros in dispextern.h, frame.h and window.h.
15707 (make_window): Initialize new members
15708 left_margin_cols, right_margin_cols, left_fringe_width,
15709 right_fringe_width, fringes_outside_margins, scroll_bar_width,
15710 and vertical_scroll_bar_type.
15711 (coordinates_in_window): Adapt to new fringe/margin positions
15712 and per-window fringes and scroll-bars.
15713 Fix bug related to incorrectly adjusting coordinates by
15714 frame's internal_border_width (the effect normally negible since
15715 the internal_border_width is typically 0 or 1 pixel, but very
15716 noticeable for an internal_border_width of e.g. 25 pixels).
15717 Upon successful return (other than ON_NOTHING), the coordinates
15718 are now always properly converted to window relative for the
15719 given display element.
15720 (window_from_coordinates): Add new parameters wx and wy to
15721 return the window relative x and y position in the returned
15722 window and part. A null arg means, don't return the position.
15723 All callers changed.
15724 (adjust_window_margins): New function which may reduce the width
15725 of the display margins if a window's text area is too small after
15726 resizing or splitting windows.
15727 (size_window): Fix bug that did not account for display margin
15728 widths when checking the minimum width of a window; use
15729 adjust_window_margins.
15730 (set_window_buffer): Call Fset_window_fringes and
15731 Fset_window_scroll_bars to setup per-window elements.
15732 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
15733 existing display margin, fringe widths, and scroll bar settings
15734 (e.g. after splitting a window or resizing the frame).
15735 All callers changed.
15736 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
15737 (Fsplit_window): Duplicate original window's display margin,
15738 fringe, and scroll-bar settings; then call Fset_window_buffer with
15739 KEEP_MARGINS non-nil. This fixes a bug which caused a split
15740 window to only preserve the display margins in one of the windows.
15741 When splitting horizontally, call adjust_window_margins on both
15742 windows to ensure that the text area of the new windows is non too
15743 narrow. This fixes a bug which could cause Emacs to trap if the
15744 width of the split window was less than the width of the display
15745 margins.
15746 (window_box_text_cols): Rename from window_internal_width.
15747 All uses changed. Adapt to per-window fringes and scroll bars.
15748 Fix bug that caused vertical separator to be subtracted also on
15749 window frames. Fix another bug that did not reduce the returned
15750 value by the columns used for display margins.
15751 (window_scroll_line_based): Fix bug related to scrolling too much
15752 when display margins are present (implicitly fixed by the fix to
15753 window_box_text_cols).
15754 (scroll_left, scroll_right): Fix bug related to scrolling too far
15755 by default when display margins are present (implicitly fixed by
15756 the fix to window_box_text_cols).
15757 (struct saved_window): Rename members left to left_col, top to
15758 top_line, width to total_cols, height to total_lines, orig_top to
15759 orig_top_line, orig_height to orig_total_lines. All uses changed.
15760 New members left_margin_cols, right_margin_cols,
15761 left_fringe_width, right_fringe_width, fringes_outside_margins,
15762 scroll_bar_width, and vertical_scroll_bar_type for saving
15763 per-window display elements.
15764 (Fset_window_configuration): Restore display margins, fringes,
15765 and scroll bar settings. This fixes a bug which caused display
15766 margins to be discarded when saving and restoring a window
15767 configuration.
15768 (save_window_save): Save display margins, fringes, and scroll bar
15769 settings. This fixes a bug which caused display margins to be
15770 discarded when saving and restoring a window configuration.
15771 (Fset_window_margins): Do nothing if display margins are not
15772 really changed. Otherwise, call adjust_window_margins to ensure
15773 the text area doesn't get too narrow. This fixes a bug which
15774 could cause Emacs to trap if setting display margins wider than
15775 the width of the window.
15776 (Fset_window_fringes): New defun to allow user to specifically set
15777 this window's fringe widths and position vs. display margins.
15778 (Fwindow_fringes): New defun to return window's actual fringe settings.
15779 (Fset_window_scroll_bars): New defun to allow user to specifically
15780 set this window's scroll bar width and position.
15781 (Fwindow_scroll_bars): New defun to return window's actual scroll
15782 bar settings.
15783 (compare_window_configurations): Also compare display margins,
15784 fringes, and scroll bar settings.
15785 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
15786
15787 * xdisp.c: Make (many) trivial substitutions for renamed and
15788 new macros in dispextern.h, frame.h and window.h.
15789 (window_box_width): Adapt to per-window fringes and scroll bars,
15790 and new fringe vs. display margin position. Note that returned
15791 value is no longer guaranteed to be a whole multiple of the frame
15792 column width, since per-window fringes may now be any width.
15793 (window_box_left_offset): New function like window_box_left, but
15794 value is relative to left border of window (rather than frame).
15795 (window_box_right_offset): New function like window_box_right,
15796 but value is relative to left border of window.
15797 (window_box_left): Adapt to per-window fringes and scroll bars,
15798 and new fringe vs. display margin position. Simplify by using
15799 WINDOW_LEFT_EDGE_X and window_box_left_offset.
15800 (window_box): Allow null args for unnecessary return values;
15801 change/simplify relevant callers.
15802 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
15803 and new fringe vs. display margin position.
15804 Use window_box_left_offset and window_box_right_offset
15805 (get_glyph_string_clip_rect): Adapt to per-window fringes and
15806 scroll bars, and new fringe vs. display margin position.
15807 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
15808 (draw_fringe_bitmap): Rework to handle per-window fringes and new
15809 fringe vs. display margin position.
15810 (hscroll_window_tree): Use window_box_width instead of window_box.
15811 (redisplay_window): Adapt to per-window scroll bars.
15812 (draw_glyphs): Rework to handle per-window fringes and scroll
15813 bars, and new fringe vs. display margin position.
15814 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
15815 (x_clear_end_of_line): Adapt to per-window fringes and scroll
15816 bars, and new fringe vs. display margin position. Fix bug which
15817 increased total width of full_width rows by width of scroll bars
15818 although window's total width already includes that.
15819 (x_fix_overlapping_area): Simplify using window_box_left_offset.
15820 (expose_area): Simplify using window_box_left_offset.
15821 (x_draw_vertical_border): Handle per-window scroll bar settings,
15822 mixing windows with left, right and no scroll bars.
15823
15824 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
15825 where it's used in x_list_fonts (for clarity).
15826 (frame_update_line_height): Remove unused function; functionality
15827 is now done directly when setting the default font in x_set_font.
15828
15829 * xfns.c: Make (many) trivial substitutions for renamed and
15830 new macros in dispextern.h, frame.h and window.h.
15831
15832 * xmenu.c: Make (some) trivial substitutions for renamed and
15833 new macros in dispextern.h, frame.h and window.h.
15834
15835 * xterm.h (struct x_output): Move members left_pos, top_pos,
15836 border_width, pixel_height, pixel_width, line_height,
15837 internal_border_width, vertical_scroll_bar_extra,
15838 left_fringe_width, right_fringe_width, fringe_cols,
15839 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
15840 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
15841 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
15842 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
15843 (PIXEL_WIDTH, PIXEL_HEIGHT)
15844 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
15845 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
15846 frame.h and renamed [see frame.h changes].
15847 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
15848 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
15849 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
15850 and renamed [see frame.h changes].
15851
15852 * xterm.c: Make (several) trivial substitutions for renamed and
15853 new macros in dispextern.h, frame.h and window.h.
15854 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
15855 (scroll_run): Adapt to new fringe position.
15856 (glyph_rect): Use window coordinates returned from
15857 window_from_coordinates rather than frame_to_window_pixel_xy.
15858 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
15859 scroll-bars.
15860 (handle_one_xevent): Simplify a USE_GTK conditional.
15861 (x_clip_to_row): Remove superfluous whole_line_p arg and code
15862 (fringes are now inside margins, i.e. always in the clipping area).
15863 All callers changed.
15864 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
15865 directly, then call compute_fringe_widths. Don't call
15866 frame_update_line_height.
15867
15868 * w32term.h (struct w32_output): Move members left_pos, top_pos,
15869 border_width, pixel_height, pixel_width, line_height,
15870 internal_border_width, vertical_scroll_bar_extra,
15871 left_fringe_width, right_fringe_width, fringe_cols,
15872 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
15873 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
15874 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
15875 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
15876 (PIXEL_WIDTH, PIXEL_HEIGHT)
15877 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
15878 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
15879 frame.h and renamed [see frame.h changes].
15880 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
15881 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
15882 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
15883 and renamed [see frame.h changes].
15884
15885 * w32term.c: Make (several) trivial substitutions for renamed and
15886 new macros in dispextern.h, frame.h and window.h.
15887 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
15888 (glyph_rect): Use window coordinates returned from
15889 window_from_coordinates rather than frame_to_window_pixel_xy.
15890 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
15891 scroll-bars.
15892 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
15893 (fringes are now inside margins, i.e. always in the clipping area).
15894 All callers changed.
15895 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
15896 directly, then call compute_fringe_widths. Don't call
15897 frame_update_line_height.
15898
15899 * w32console.c: Make (few) trivial substitutions for renamed and
15900 new macros in dispextern.h, frame.h and window.h.
15901
15902 * w32fns.c: Make (many) trivial substitutions for renamed and
15903 new macros in dispextern.h, frame.h and window.h.
15904
15905 * w32menu.c: Make (few) trivial substitutions for renamed and
15906 new macros in dispextern.h, frame.h and window.h.
15907
15908 * macterm.h (struct mac_output): Move members left_pos, top_pos,
15909 border_width, pixel_height, pixel_width, line_height,
15910 internal_border_width, vertical_scroll_bar_extra,
15911 left_fringe_width, right_fringe_width, fringe_cols,
15912 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
15913 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
15914 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
15915 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
15916 (PIXEL_WIDTH, PIXEL_HEIGHT)
15917 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
15918 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
15919 frame.h and renamed [see frame.h changes].
15920 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
15921 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
15922 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
15923 and renamed [see frame.h changes].
15924
15925 * macterm.c: Make (several) trivial substitutions for renamed and
15926 new macros in dispextern.h, frame.h and window.h.
15927 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
15928 (glyph_rect): Use window coordinates returned from
15929 window_from_coordinates rather than frame_to_window_pixel_xy.
15930 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
15931 scroll-bars.
15932 (x_clip_to_row): Remove superfluous whole_line_p arg and code
15933 (fringes are now inside margins, i.e. always in the clipping area).
15934 All callers changed.
15935 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
15936 directly, then call compute_fringe_widths. Don't call
15937 frame_update_line_height.
15938
15939 * macfns.c: Make (several) trivial substitutions for renamed and
15940 new macros in dispextern.h, frame.h and window.h.
15941 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
15942
15943 * macmenu.c: Make (few) trivial substitutions for renamed and
15944 new macros in dispextern.h, frame.h and window.h.
15945
15946 * msdos.h (struct x_output): Remove members left_pos, top_pos,
15947 and line_height, and use corresponding new members in struct
15948 frame. All uses changed.
15949 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
15950 superseeded by corresponding macros in frame.h.
15951
15952 * msdos.c: Make (several) trivial substitutions for renamed and
15953 new macros in dispextern.h, frame.h and window.h.
15954 (IT_note_mouse_highlight): Use updated window coordinates returned
15955 by window_from_coordinates, rather than adjusting them locally.
15956 (internal_terminal_init): No need to initialize line_height here;
15957 it now defaults to 1.
15958
15959 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
15960
15961 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
15962 dropping `down' events.
15963
15964 2003-05-24 Andreas Schwab <schwab@suse.de>
15965
15966 * coding.c (find_safe_codings): Fix last change.
15967
15968 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
15969
15970 * xfns.c (x_window): Fix typo from 2003-05-21 change.
15971
15972 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
15973
15974 * xdisp.c (display_mode_element): Increase max depth.
15975 Simplify the error handling code. Use a different error string
15976 for the case where we hit the depth limit.
15977
15978 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
15979
15980 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
15981
15982 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
15983
15984 * intervals.c (get_local_map): Don't get char-property of previous
15985 point any more: get_pos_property already does it and better.
15986
15987 2003-05-21 Dave Love <fx@gnu.org>
15988
15989 [Merged from unicode branch.]
15990
15991 * xfns.c (x_window, x_window): Use use_xim.
15992
15993 * xterm.c (use_xim): Initialize.
15994 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
15995 (x_term_init): Maybe set use_xim.
15996
15997 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
15998
15999 2003-05-21 Jason Rumney <jasonr@gnu.org>
16000
16001 * unexw32.c (_start): Remove _fmode initialization.
16002
16003 * emacs.c (main) [WINDOWSNT]: Move it here.
16004
16005 2003-05-20 Dave Love <fx@gnu.org>
16006
16007 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
16008
16009 2003-05-19 Richard M. Stallman <rms@gnu.org>
16010
16011 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
16012 as value for QCfont attribute.
16013 (realize_default_face): lface should already exist; crash if not.
16014 Specify 0 for FORCE_P when calling set_lface_from_font_name.
16015
16016 * frame.c (Fignore_event): Doc fix.
16017
16018 2003-05-19 Kenichi Handa <handa@m17n.org>
16019
16020 * coding.c (decode_coding_string): Handle post-read-conversion
16021 even if the coding doesn't require decoding.
16022
16023 2003-05-18 Richard M. Stallman <rms@gnu.org>
16024
16025 * callproc.c (Fcall_process_region): Doc fix.
16026
16027 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
16028
16029 * lread.c (Fload): Print a message if package is obsolete.
16030
16031 * window.c (Fselect_window): Add optional `norecord' arg.
16032 (select_window_1): Fold into Fselect_window.
16033 (select_window_norecord): New function.
16034 (temp_output_buffer_show): Use it. Preserve current buffer.
16035
16036 * window.h (Fselect_window): Update declaration.
16037
16038 * window.c (delete_window, Fother_window, Fset_window_configuration):
16039 * minibuf.c (read_minibuf):
16040 * macterm.c (x_new_focus_frame):
16041 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
16042 * callint.c (Fcall_interactively):
16043 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
16044
16045 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
16046
16047 2003-05-17 David Kastrup <dak@gnu.org>
16048
16049 * process.c (read_process_output): Back out change from 2003-03-09.
16050
16051 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
16052
16053 * editfns.c (get_pos_property): Don't assume that `object' = nil.
16054
16055 * textprop.c (text_property_stickiness): New arg `buffer'.
16056
16057 * intervals.h (text_property_stickiness): New arg `buffer'.
16058 (get_pos_property): Declare.
16059
16060 * intervals.c (get_local_map): Use get_pos_property, to obey
16061 stickiness and empty overlays.
16062 (create_root_interval, graft_intervals_into_buffer): Use BEG.
16063 (merge_properties, intervals_equal, merge_properties_sticky):
16064 Use XCAR, XCDR.
16065 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
16066
16067 2003-05-17 Richard M. Stallman <rms@gnu.org>
16068
16069 * minibuf.c (read_minibuf): If buffer is empty, record the default
16070 in the history.
16071 (Fminibuffer_complete_word): When deleting the overlap, take account
16072 of its real position.
16073
16074 * fns.c (map_char_table): Fix previous change.
16075
16076 * syntax.c (find_defun_start):
16077 When open_paren_in_column_0_is_defun_start,
16078 return beginning of buffer.
16079
16080 * lisp.h (map_char_table): Declare added arg.
16081
16082 * fns.c (map_char_table): New arg TABLE gets the master table.
16083 All calls changed.
16084 Process default and inheritance, resorting to Faref if necessary.
16085
16086 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
16087 (Faccessible_keymaps): Pass new arg to map_char_table.
16088
16089 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
16090
16091 * casetab.c (set_case_table): Pass new arg to map_char_table.
16092
16093 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
16094
16095 * lisp.h (specbinding_func): New typedef.
16096 (struct specbinding): Use specbinding_func, to put the `volatile'
16097 in the right place.
16098
16099 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
16100 to avoid GCC warning.
16101
16102 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
16103
16104 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
16105
16106 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
16107
16108 * keyboard.c (apply_modifiers): Don't fill the other cache.
16109
16110 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
16111
16112 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
16113
16114 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
16115 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
16116 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
16117 (Fset_window_configuration, Fcurrent_window_configuration)
16118 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
16119 (Fpos_visible_in_window_p, mark_window_cursors_off)
16120 (window_internal_height, window_internal_width, Frecenter)
16121 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
16122 (replace_buffer_in_all_windows, init_window_once, init_window)
16123 (syms_of_window, keys_of_window): Move from lisp.h.
16124 * lisp.h: Move window.c declarations to window.h.
16125
16126 * bytecode.c: Include window.h.
16127 * emacs.c: Include window.h.
16128
16129 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
16130 (keyremap): Add `parent' field.
16131 (keyremap_step): Use it. Remove `parent' argument.
16132 (read_key_sequence): Setup and use the new `parent' field.
16133
16134 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
16135
16136 * keyboard.c (adjust_point_for_property): Ensure termination.
16137
16138 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
16139
16140 * keyboard.c (follow_key): Remove dead variable `did_meta'.
16141 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
16142 duplicated handling of function-key-map and key-translation-map
16143 in read_key_sequence.
16144 (read_key_sequence): Use them.
16145
16146 * keyboard.c (adjust_point_for_property): Try harder to move point
16147 to the non-sticky end of an invisible property.
16148
16149 * xdisp.c (single_display_prop_intangible_p): Make `space' display
16150 property intangible as well.
16151
16152 2003-05-10 Andreas Schwab <schwab@suse.de>
16153
16154 * xmenu.c (single_menu_item): Change last parameter to void* to
16155 avoid warning.
16156
16157 2003-05-09 Richard M. Stallman <rms@gnu.org>
16158
16159 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
16160 Bind Qinhibit_modification_hooks to t so there will be no GC.
16161 Rename local `tem' to `save_deactivate_mark'.
16162
16163 * eval.c (specpdl_ptr): Declare volatile.
16164 (unbind_to): Copy the whole binding and decrement specpdl_ptr
16165 before doing the work of unbinding it.
16166
16167 * lisp.h (struct specbinding): Declare elements volatile.
16168 (specpdl_ptr): Declare volatile.
16169
16170 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
16171
16172 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
16173 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
16174
16175 2003-05-08 Dave Love <fx@gnu.org>
16176
16177 * coding.c (Vlast_coding_system_used): Doc fix.
16178
16179 2003-05-07 Jason Rumney <jasonr@gnu.org>
16180
16181 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
16182 when system does not support them.
16183
16184 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
16185
16186 * fileio.c (Qwrite_region_annotate_functions): New var.
16187 (build_annotations): Use it to process the global part of the hook.
16188 (syms_of_fileio): Init and staticpro it.
16189
16190 * keyboard.c (safe_run_hooks_error): Display a message instead of
16191 silently ignoring the error.
16192
16193 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
16194
16195 * keyboard.c (input_available_signal): Mark static.
16196 (menu_bar_items): Use map_keymap.
16197 (menu_bar_one_keymap): Remove.
16198 (menu_bar_item): Adjust arglist (for use in map_keymap).
16199 Properly hide a second binding when not both are keymaps.
16200
16201 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
16202 (single_keymap_panes): Use it and map_keymap.
16203 (single_menu_item): Use skp as well.
16204
16205 * keymap.h (map_keymap_function_t): New type.
16206 (map_keymap): Declare.
16207
16208 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
16209 (map_keymap_call, Fmap_keymap): New functions.
16210 (syms_of_keymap): Defsubr map-keymap.
16211
16212 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16213
16214 * gtkutil.c (create_dialog, make_widget_for_menu_item)
16215 (make_menu_item, create_menus, xg_update_menu_item): Don't call
16216 ..._with_mnemonic functions for menu items.
16217
16218 2003-05-01 Kenichi Handa <handa@m17n.org>
16219
16220 * coding.c (coding_system_accept_latin_extra_p): Delete this
16221 function.
16222 (find_safe_codings): Pay attention to
16223 the property tranlsation-table-for-encode of each codings.
16224 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
16225
16226 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
16227
16228 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
16229
16230 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
16231
16232 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
16233
16234 * lisp.h (CHECK): Wrap args in parenthesis.
16235 (specbind): Fix doc: symbol = Qnil is not supported any more.
16236
16237 * bytecode.c (Fbyte_code) <unwind-protect>:
16238 Use Fprogn rather than 0 and Qnil.
16239
16240 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
16241 `double', and `triple' modifiers as well.
16242
16243 2003-04-30 Richard M. Stallman <rms@gnu.org>
16244
16245 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
16246
16247 * alloc.c (abort_on_gc): New variable.
16248 (Fgarbage_collect): Abort if abort_on_gc is set.
16249
16250 * lisp.h (abort_on_gc): Add decl.
16251
16252 * eval.c (Fsignal): Clear abort_on_gc.
16253
16254 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
16255 Reinit FORMAT_START and END before second scan.
16256
16257 * xdisp.c (move_it_vertically_backward): Do the final big else
16258 even if nlines is 0.
16259
16260 * xdisp.c (redisplay_internal): Finish the per-frame loop
16261 even if redisplay is suspended by input.
16262
16263 2003-04-24 Andrew Choi <akochoi@shaw.ca>
16264
16265 * macterm.c (x_list_fonts): Return all fonts that match if
16266 maxnames = -1.
16267
16268 2003-04-25 Kenichi Handa <handa@m17n.org>
16269
16270 * syntax.c (skip_chars): Fix previous change.
16271
16272 2003-04-24 Kenichi Handa <handa@m17n.org>
16273
16274 * syntax.c (skip_chars): Make the code faster by using the common
16275 technique of *p, *stop, and *endp.
16276
16277 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16278
16279 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
16280 tool_bar_items so GTK tool bar expose callback does not access items
16281 being updated.
16282
16283 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
16284
16285 * eval.c (Fapply): Undo last change and add a comment about why.
16286
16287 2003-04-18 Miles Bader <miles@gnu.org>
16288
16289 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
16290 pickier PARSE_MULTIBYTE_SEQ.
16291
16292 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
16293
16294 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
16295 Use XCDR, XCAR, CONSP.
16296 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
16297 (Fapply): Remove unnecessary GCPRO.
16298
16299 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
16300
16301 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
16302
16303 * buffer.h: Don't hardcode BEG==1.
16304
16305 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
16306
16307 2003-04-16 Richard M. Stallman <rms@gnu.org>
16308
16309 * xdisp.c (try_window, try_window_reusing_current_matrix):
16310 When at end of window, set window_end_pos to Z-ZV.
16311
16312 * buffer.c (Foverlay_recenter): Doc fix.
16313
16314 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
16315
16316 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
16317
16318 2003-04-14 Andrew Choi <akochoi@shaw.ca>
16319
16320 * macterm.c (mac_check_for_quit_char): Don't check more often than
16321 once a second.
16322
16323 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
16324
16325 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
16326 specially, so that they can't hide an implicit switch-frame event.
16327 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
16328 (head_table): Use switch-frame as event_kind for select-window.
16329 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
16330
16331 * editfns.c (Fformat): Lisp_Object/int mixup.
16332 (format2): Remove unused var numargs.
16333
16334 2003-04-11 Kenichi Handa <handa@m17n.org>
16335
16336 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
16337 (Qafter_insert_file_set_coding): New variable.
16338 (syms_of_fileio): Initialize and staticpro it. Delete declaration
16339 for after-insert-file-adjust-coding-function.
16340 (Finsert_file_contents): Call Qafter_insert_file_set_coding
16341 instead of Vafter_insert_file_adjust_coding_function.
16342
16343 2003-04-11 Kenichi Handa <handa@m17n.org>
16344
16345 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
16346
16347 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
16348 string. Callers changed.
16349
16350 2003-04-10 Kenichi Handa <handa@m17n.org>
16351
16352 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
16353 (syms_of_fileio): Declare it as a lisp variable.
16354 (Finsert_file_contents):
16355 Call Vafter_insert_file_adjust_coding_function before calling
16356 decode-format.
16357
16358 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16359
16360 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
16361 get GtkAdjustment as widget now is a GtkRange.
16362
16363 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
16364 GtkRange to avoid memory leak.
16365
16366 2003-04-09 Kenichi Handa <handa@m17n.org>
16367
16368 * xfaces.c (Vface_font_rescale_alist): New variable.
16369 (struct font_name): New member rescale_ratio.
16370 (font_rescale_ratio): New function.
16371 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
16372 (better_font_p): On comparing point sized, pay attention to
16373 recale_ratio member of fonts.
16374 (build_scalable_font_name): Reflect font->rescale_ratio in the
16375 font name.
16376 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
16377
16378 * lread.c (read1): Before calling index, check if the 2nd
16379 arguemnt is in ASCII range.
16380
16381 2003-04-08 Richard M. Stallman <rms@gnu.org>
16382
16383 * fileio.c (Ffile_symlink_p): Doc fix.
16384
16385 * editfns.c (Fformat): Translate positions of text properties
16386 in the format string to apply them to the result.
16387
16388 * fileio.c (Finsert_file_contents): Doc fix.
16389 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
16390
16391 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
16392
16393 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
16394
16395 2003-04-08 Steven Tamm <steventamm@mac.com>
16396
16397 * mac.c (init_mac_osx_environment): Switch libexec and bin so
16398 that self-contained application finds libexec files.
16399
16400 2003-04-08 Kenichi Handa <handa@m17n.org>
16401
16402 * coding.c (code_convert_region_unwind):
16403 Set Vlast_coding_system_used to the argument.
16404 (code_convert_region): If post-read-conversion function changed
16405 the value of last-coding-sytem, keep the new value in
16406 coding->symbol so that it won't be overridden.
16407 (run_pre_post_conversion_on_str): Likewise.
16408 (coding_system_accept_latin_extra_p): New function.
16409 (find_safe_codings): Pay attention to characters registered in
16410 latin-extra-code-table.
16411
16412 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
16413
16414 * Makefile.in (md5.o): Add missing dependency info.
16415
16416 2003-04-06 Richard M. Stallman <rms@gnu.org>
16417
16418 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
16419
16420 * marker.c (verify_bytepos): New function.
16421
16422 * intervals.c (set_intervals_multibyte_1): When becoming
16423 multibyte, adjust right and left child sizes to a whole set of
16424 characters. If an interval gets zero total-length, delete it.
16425 If an interval consists of just its children, delete one of them.
16426
16427 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
16428 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
16429
16430 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
16431 All calls deleted.
16432 (lisp_malloc): Do the work here directly.
16433
16434 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
16435
16436 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
16437 char tables.
16438
16439 2003-04-04 Kenichi Handa <handa@m17n.org>
16440
16441 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
16442 destructively change "%S" to "%s".
16443
16444 2003-04-03 Miles Bader <miles@gnu.org>
16445
16446 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
16447 always set.
16448
16449 2003-04-01 Dave Love <fx@gnu.org>
16450
16451 * xfns.c (xpm_lookup_color): Grok "opaque".
16452
16453 2003-03-31 Andrew Choi <akochoi@shaw.ca>
16454
16455 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
16456 parent window ID.
16457
16458 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
16459
16460 * macterm.h (struct mac_output): Define x_pixels_diff and
16461 y_pixels_diff.
16462
16463 2003-03-31 Juanma Barranquero <lektu@terra.es>
16464
16465 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
16466 blockinput.h and files included from it.
16467
16468 2003-03-31 Kim F. Storm <storm@cua.dk>
16469
16470 The following changes consolidates the common code related to
16471 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
16472 files into frame.c.
16473
16474 * frame.c: Include blockinput.h.
16475 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
16476 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
16477 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
16478 related vars here.
16479 (struct frame_parm_table, frame_parms): New table for describing
16480 frame parameters and their associated Q-variable.
16481 The order of the parameters corresponds to the sequence of the
16482 frame_parm_handlers table in redisplay_interface.
16483 (x_fullscreen_move, x_set_frame_parameters)
16484 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
16485 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
16486 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
16487 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
16488 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
16489 Generic functions for processing of frame parameters.
16490 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
16491 (display_x_get_resource, x_get_resource_string): Functions for
16492 generic access to X resources.
16493 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
16494 (x_default_parameter, Fx_parse_geometry): Functions for generic
16495 access to frame parameters.
16496 (x_figure_window_size): Generic calculation of frame size.
16497 Fixed to add space needed for tool bar. Also setup size_hint_flags.
16498 (syms_of_frame): Intern and staticpro frame parameter variables.
16499 Defvar_lisp Vx_resource_class and Vx_resource_name here.
16500 Defsubr Sx_get_resource and Sx_parse_geometry.
16501
16502 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
16503 parameter related vars defined in frame.c.
16504 (EMACS_CLASS): Define here.
16505 (enum FULLSCREEN_*): Define here.
16506 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
16507 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
16508 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
16509 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
16510 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
16511 (x_set_visibility, x_set_autoraise, x_set_autolower)
16512 (x_set_unsplittable, x_set_vertical_scroll_bars)
16513 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
16514 (x_figure_window_size): Add prototypes.
16515
16516 * dispextern.h (frame_parm_handler): New typedef.
16517 (struct redisplay_interface): New member frame_parm_handlers.
16518 (enum resource_types): Move declaration here.
16519 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
16520 (x_default_parameter): Add prototypes.
16521
16522 * window.c: Remove extern decl for frame parameter vars.
16523 (change_window_heights): New generic function;
16524 replaces x_change_window_heights. All users changed.
16525
16526 * window.h (change_window_heights): Add prototype.
16527
16528 * xfaces.c: Remove extern decl for frame parameter vars.
16529
16530 * xterm.h (EMACS_CLASS): Remove. Use generic define.
16531 (struct w32_display_info): Fix type of xrdb member.
16532 (enum FULLSCREEN_*): Remove.
16533 Remove prototypes for generic functions (in frame.h).
16534
16535 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
16536 parameters now defined in frame.h and frame.c.
16537 (Vx_resource_name): Remove. Use generic var.
16538 (enum x_frame_parms): Remove (bogus, unused enum).
16539 (check_x_display_info): Make non-static (for frame.c).
16540 (struct x_frame_parm_table, x_frame_parms): Remove.
16541 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
16542 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
16543 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
16544 (x_change_window_heights, x_set_autoraise, x_set_autolower)
16545 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
16546 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
16547 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
16548 Remove. Use generic functions instead.
16549 (enum resource_types): Remove.
16550 (x_set_scroll_bar_default_width): New global function (for frame.c).
16551 (Fx_create_frame): Depend on x_figure_window_size to add space for
16552 toolbar and setup size_hint_flags.
16553 (x_frame_parm_handlers): New table for redisplay_interface.
16554 (syms_of_xfns): Don't intern/staticpro removed vars.
16555
16556 * xterm.c: Remove unnecessary extern declarations.
16557 (x_fullscreen_adjust): Remove. Use generic instead.
16558 (x_redisplay_interface): Add x_frame_parm_handlers member.
16559
16560 * w32gui.h (XrmDatabase): New (dummy) typedef.
16561
16562 * w32term.h (EMACS_CLASS): Remove. Use generic define.
16563 (struct w32_display_info): Fix type of xrdb member.
16564 (enum FULLSCREEN_*): Remove.
16565 (x_fullscreen_adjust): Remove prototype.
16566
16567 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
16568 parameters now defined in frame.h and frame.c.
16569 (Vx_resource_name): Remove. Use generic var.
16570 (enum x_frame_parms): Remove (bogus, unused enum).
16571 (check_x_display_info): Make non-static (for frame.c).
16572 (struct x_frame_parm_table, x_frame_parms): Remove.
16573 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
16574 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
16575 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
16576 (x_change_window_heights, x_set_autoraise, x_set_autolower)
16577 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
16578 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
16579 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
16580 Remove. Use generic functions instead.
16581 (enum resource_types): Remove.
16582 (x_set_scroll_bar_default_width): New global function (for frame.c).
16583 (Fx_create_frame): Depend on x_figure_window_size to add space for
16584 toolbar and setup size_hint_flags.
16585 (w32_frame_parm_handlers): New table for redisplay_interface.
16586 (syms_of_w32fns): Don't intern/staticpro removed vars.
16587
16588 * w32term.c: Remove unnecessary extern declarations.
16589 (x_fullscreen_adjust): Remove. Use generic instead.
16590 (x_redisplay_interface): Add w32_frame_parm_handlers member.
16591
16592 * w32reg.c (x_get_string_resource): Use XrmDatabase.
16593
16594 * macgui.h (XrmDatabase): New (dummy) typedef.
16595
16596 * macterm.h (EMACS_CLASS): Remove.
16597 (struct mac_display_info): Add xrdb member.
16598 (struct mac_output): Add want_fullscreen member.
16599
16600 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
16601 parameters now defined in frame.h and frame.c.
16602 (Vx_resource_name): Remove. Use generic var.
16603 (check_x_display_info): Make non-static (for frame.c).
16604 (struct x_frame_parm_table, x_frame_parms): Remove.
16605 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
16606 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
16607 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
16608 (x_change_window_heights, x_set_autoraise, x_set_autolower)
16609 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
16610 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
16611 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
16612 Remove. Use generic functions instead.
16613 (enum resource_types): Remove.
16614 (x_set_scroll_bar_default_width): New global function (for frame.c).
16615 (mac_frame_parm_handlers): New table for redisplay_interface.
16616 (syms_of_macfns): Don't intern/staticpro removed vars.
16617
16618 * macterm.c: Remove unnecessary extern declarations.
16619 (x_redisplay_interface): Add mac_frame_parm_handlers member.
16620
16621 * Makefile.in (frame.o): Add dependency on blockinput.h and files
16622 included from it (atimer.h and systime.h).
16623
16624 2003-03-30 Andreas Schwab <schwab@suse.de>
16625
16626 * xdisp.c (x_insert_glyphs): Fix swapped width and height
16627 parameters for shift_glyphs_for_insert.
16628
16629 * macterm.c (x_redisplay_interface): Add missing entry for
16630 draw_vertical_window_border.
16631
16632 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
16633
16634 * fileio.c (Fexpand_file_name): In the no-handler case, after
16635 expanding, look again for a handler and invoke it. This is needed
16636 for filenames like "/foo/../user@host:/bar/../baz" -- the first
16637 expansion produces "/user@host:/bar/../baz" which needs to be
16638 expanded again for the finame result "/user@host:/baz".
16639
16640 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16641
16642 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
16643 of area to be redrawn for better performance.
16644
16645 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
16646
16647 * xterm.c (take_vertical_position_into_account): Remove.
16648 (xt_action_hook): Call set_vertical_scroll_bar if needed.
16649 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
16650 (xm_scroll_callback, x_create_toolkit_scroll_bar)
16651 (x_set_toolkit_scroll_bar_thumb): Simplify.
16652 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
16653 (XTread_socket): Remove unused var.
16654 (x_make_frame_invisible): Replace goto with else.
16655
16656 * xdisp.c (set_vertical_scroll_bar): New fun.
16657 (redisplay_window): Use it.
16658
16659 2003-03-26 Richard M. Stallman <rms@gnu.org>
16660
16661 * xdisp.c (update_tool_bar): Recompute tool bar if
16662 update_mode_lines is set. Set w->update_mode_line
16663 only if the tool bar contents actually change.
16664 (update_menu_bar): Undo previous change.
16665
16666 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16667
16668 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
16669 (xg_frame_set_char_size): Calculate scroll bar width before frame
16670 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
16671 (xg_separator_p): Check for all documented separator types.
16672 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
16673 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
16674
16675 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
16676 so tool bar gets updated.
16677
16678 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
16679
16680 * data.c (store_symval_forwarding): Re-instate part of the code
16681 that was deleted with too much enthusiasm.
16682
16683 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
16684
16685 * data.c (store_symval_forwarding): Delete special read-only
16686 hack for type == -1, since we now use ->constant instead.
16687 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
16688
16689 * buffer.c (overlays_in): Declare static.
16690 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
16691 `constant' field rather than the variable's `type' field.
16692
16693 2003-03-24 Andrew Choi <akochoi@shaw.ca>
16694
16695 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
16696
16697 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
16698
16699 * fns.c [MAC_OSX]: Do not redefine vector.
16700
16701 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
16702
16703 * macgui.h: Remove definition of No_Cursor.
16704
16705 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
16706
16707 * xdisp.c: Define No_Cursor.
16708 (x_write_glyphs, notice_overwritten_cursor)
16709 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
16710 (note_mouse_highlight): Remove Mac-specific code.
16711 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
16712
16713 2003-03-24 John Paul Wallington <jpw@gnu.org>
16714
16715 * xdisp.c (redisplay_window): If mini window's buffer is not
16716 empty, then redisplay it like other windows.
16717
16718 2003-03-23 Kim F. Storm <storm@cua.dk>
16719
16720 * w32term.c (w32_draw_window_cursor): Fix last change.
16721
16722 2003-03-23 Kenichi Handa <handa@m17n.org>
16723
16724 * alloc.c (make_string_from_bytes, make_specified_string):
16725 Add `const' for the arg CONTENTS.
16726
16727 * lisp.h (make_string_from_bytes, make_specified_string):
16728 Prototypes adjusted.
16729
16730 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16731
16732 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
16733
16734 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
16735 (XG_SB_RANGE): New define.
16736
16737 * gtkutil.c (xg_fixed_handle_expose): New function.
16738 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
16739 expose events.
16740 (xg_update_scrollbar_pos): Take two more arguments, left and width
16741 of scroll bar including borders.
16742 Clear left and right part outside scroll bar separately as some
16743 themes have bars that are not an even number of pixels.
16744 Don't set reallocate_redraws, don't call
16745 gdk_window_process_all_updates.
16746 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
16747 so no need to change it. Calculate size and value with XG_SB_RANGE.
16748
16749 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
16750 Pass left and width of scroll bar including borders to
16751 xg_update_scrollbar_pos.
16752
16753 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
16754
16755 * Makefile.in: Make sure space precedes end-of-line backslashes.
16756
16757 2003-03-22 Kim F. Storm <storm@cua.dk>
16758
16759 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
16760 Add generic versions here. Remove system specific versions
16761 defined elsewhere.
16762
16763 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
16764 Add prototypes.
16765
16766 * xterm.h (STORE_NATIVE_RECT): New macro.
16767
16768 2003-03-21 Kim F. Storm <storm@cua.dk>
16769
16770 * xdisp.c (get_glyph_string_clip_rect):
16771 Use FRAME_INTERNAL_BORDER_WIDTH.
16772
16773 * dispextern.h (struct redisplay_interface): Add active_p
16774 argument to draw_window_cursor member. All uses changed.
16775
16776 2003-03-21 Kim F. Storm <storm@cua.dk>
16777
16778 The following changes consolidate code related to writing and
16779 inserting glyphs, exposing frame, the tool bar, the mouse face,
16780 the output cursor, and help echo from xterm.c, w32term.c and
16781 macterm.c into xdisp.c. It also generalizes the use of the
16782 window_part enum instead of using numeric values throughout.
16783
16784 * xdisp.c: Consolidate gui-independent code here.
16785 Include keymap.h.
16786 (Qhelp_echo): Import.
16787 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
16788 (help_echo_string, help_echo_window, help_echo_object)
16789 (previous_help_echo_string, help_echo_pos): Declare here.
16790 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
16791 (estimate_mode_line_height): Define here. Handle windowing
16792 systems directly (without using estimate_mode_line_height_hook).
16793 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
16794 (update_window_cursor, update_cursor_in_window_tree)
16795 (fast_find_position, fast_find_string_pos)
16796 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
16797 (expose_area, expose_line, expose_overlaps, expose_window)
16798 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
16799 declared static as they are only used locally in xdisp.c.
16800 (draw_glyphs): Rename from x_draw_glyphs and make static.
16801 (tool_bar_item_info, notice_overwritten_cursor): Make static.
16802 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
16803 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
16804 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
16805 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
16806 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
16807 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
16808 (note_mouse_highlight, x_clear_window_mouse_face)
16809 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
16810 (x_intersect_rectangles): New generic functions for use by xdisp.c
16811 and GUI front-ends.
16812 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
16813 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
16814
16815 * dispextern.h (Display_Info): Generic typedef for *_display_info.
16816 (NativeRectangle): Generic typedef for rectangle type.
16817 (enum window_part): Move here from window.c.
16818 (struct redisplay_interface): New members flush_display_optional,
16819 define_frame_cursor, clear_frame_area, draw_window_cursor,
16820 draw_vertical_window_border, shift_glyphs_for_insert.
16821 Rename member clear_mouse_face to clear_window_mouse_face.
16822 (estimate_mode_line_height_hook): Remove hook.
16823 (auto_raise_tool_bar_buttons_p): Don't declare extern.
16824 (tool_bar_item_info): Remove prototype.
16825 (help_echo_string, help_echo_window, help_echo_object)
16826 (previous_help_echo_string, help_echo_pos)
16827 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
16828 (x_stretch_cursor_p, output_cursor): Declare extern.
16829 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
16830 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
16831 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
16832 (display_and_set_cursor, set_output_cursor, x_cursor_to)
16833 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
16834 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
16835 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
16836 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
16837 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
16838 Add prototypes.
16839 (mode_line_string, marginal_area_string): Fix prototypes.
16840
16841 * window.c (enum window_part): Move to dispextern.h.
16842 (coordinates_in_window): Use enum window_part member names
16843 instead of numbers to describe return value.
16844 (struct check_window_data): Change part member to window_part.
16845 (check_window_containing): Return window_part unaltered.
16846 (window_from_coordinates): Change part arg from int to enum
16847 window_part. Allow part arg to be null. All users changed.
16848
16849 * window.h (window_from_coordinates): Fix prototype.
16850
16851 * term.c (estimate_mode_line_height): Move to xdisp.c.
16852
16853 * keyboard.c (make_lispy_event): Use enum window_part.
16854
16855 * dispnew.c (mode_line_string, marginal_area_string): Use enum
16856 window_part instead of int in arg list. Users changed.
16857
16858 * xterm.h (No_Cursor): Declare as None for X.
16859 (struct mac_output): Replace member cross_cursor by hand_cursor.
16860
16861 * xterm.c: Remove consolidated defines and code.
16862 (BETWEEN): Remove unused macro.
16863 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
16864 (x_define_frame_cursor, x_clear_frame_area)
16865 (x_draw_window_cursor): New X-specific functions for RIF.
16866 (x_redisplay_interface): Add new members.
16867
16868 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
16869
16870 * w32term.h (struct w32_output): Remove cross_cursor member.
16871
16872 * w32term.c: Remove consolidated defines and code.
16873 (BETWEEN): Remove unused macro.
16874 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
16875 (w32_define_frame_cursor, w32_clear_frame_area)
16876 (w32_draw_window_cursor): New W32-specific functions for RIF.
16877 (w32_redisplay_interface): Add new members.
16878
16879 * w32gui.h (No_Cursor): Define as 0 for W32.
16880 (XRectangle): Add X compatible rectangle type.
16881 (NativeRectangle): Declare as RECT for W32.
16882 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
16883
16884 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
16885
16886 * w32console.c: Remove consolidated defines and code.
16887
16888 * msdos.h (Display_Info): Add generic typedef.
16889
16890 * msdos.c: Remove consolidated defines and code.
16891 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
16892
16893 * macterm.h (struct mac_output): Replace member cross_cursor by
16894 hand_cursor.
16895 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
16896
16897 * macterm.c: Remove consolidated defines and code.
16898 (BETWEEN): Remove unused macro.
16899 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
16900 (mac_define_frame_cursor, mac_clear_frame_area)
16901 (mac_draw_window_cursor): New Mac-specific functions for RIF.
16902 (x_redisplay_interface): Add new members.
16903
16904 * macgui.h (No_Cursor): Define as 0 for Mac.
16905 (XRectangle): Add X compatible rectangle type.
16906 (NativeRectangle): Declare as Rect for Mac.
16907 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
16908
16909 * macfns.c (x_set_mouse_color): Setup hand_cursor.
16910 (x_set_cursor_color): Use x_display_and_set_cursor.
16911
16912 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
16913 included from it. Add dependency on keymap.h.
16914
16915 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
16916
16917 2003-03-21 Kenichi Handa <handa@m17n.org>
16918
16919 * fileio.c (Fexpand_file_name): Fix previous change.
16920
16921 2003-03-19 Kenichi Handa <handa@m17n.org>
16922
16923 * fileio.c (Ffile_name_directory): Reconstruct file name by
16924 make_specified_string.
16925 (Ffile_name_nondirectory, Ffile_name_as_directory)
16926 (Fdirectory_file_name, Fexpand_file_name)
16927 (Fsubstitute_in_file_name): Likewise.
16928 (Fread_file_name): Compare decoded homedir with DIR and
16929 DEFAULT_FILENAME.
16930
16931 * alloc.c (make_specified_string): If NCHARS is negative, count
16932 the number of characters.
16933
16934 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16935
16936 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
16937 all widgets.
16938
16939 * gtkutil.h: Removed xg_ignore_next_thumb.
16940
16941 2003-03-18 Kenichi Handa <handa@m17n.org>
16942
16943 * coding.c (Vchar_coding_system_table): Remove this variable.
16944 (Vcoding_system_safe_chars): New variable.
16945 (intersection): Remove this function.
16946 (find_safe_codings): Don't use Vchar_coding_system_table, but try
16947 all codings in SAFE_CODINGS.
16948 (Ffind_coding_systems_region_internal): Adjust for the change of
16949 find_safe_codings. Get generic coding systems from
16950 Vcoding_system_safe_chars.
16951 (Fdefine_coding_system_internal): New function.
16952 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
16953 Initialize and staticpro Vcoding_system_safe_chars.
16954
16955 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16956
16957 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
16958 equal old values before updating.
16959
16960 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
16961
16962 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
16963
16964 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16965
16966 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
16967 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
16968 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
16969 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
16970 (xg_create_scroll_bar): Pass bar to button event callback.
16971 (xg_find_top_left_in_fixed): New function.
16972 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
16973 whole scroll bar area. Get old position with
16974 xg_find_top_left_in_fixed, calculate and only clear needed areas.
16975 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
16976 dragging is in progress. Calculate whole as for Motif.
16977 Remove code that saved last values. Call gtk_range functions to
16978 set scroll bar sizes.
16979
16980 * gtkutil.h: Removed xg_ignore_next_thumb.
16981
16982 2003-03-17 Juanma Barranquero <lektu@terra.es>
16983
16984 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
16985 and files included from it.
16986
16987 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
16988
16989 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
16990 multiple occurrences of the same keymap under different prefixes.
16991 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
16992
16993 2003-03-16 Jason Rumney <jasonr@gnu.org>
16994
16995 * w32gui.h: Use HDC for Display.
16996
16997 * w32term.c (w32_encode_char): Prevent double-byte chars from
16998 crashing Emacs.
16999
17000 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
17001 as binary.
17002
17003 2003-03-16 Juanma Barranquero <lektu@terra.es>
17004
17005 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
17006
17007 2003-03-16 Kim F. Storm <storm@cua.dk>
17008
17009 The following changes consolidate some of the gui-independent
17010 parts of the processing and drawing of "glyph strings" from
17011 xterm.c, w32term.c, and macterm.c into xdisp.c.
17012
17013 * dispextern.h (struct glyph): Reduce face_id member from 22 to
17014 21 bits (this reduces number of faces from 4M to 2M).
17015 Replace W32 specific w32_font_type member (2 bits) by generic
17016 font_type member (3 bits) for portability.
17017 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
17018 (enum draw_glyphs_face): Define here.
17019 (struct glyph_string): Define here. Merge W32 and X versions.
17020 (struct redisplay_interface): New members per_char_metric,
17021 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
17022 (VCENTER_BASELINE_OFFSET): Define here.
17023 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
17024 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
17025
17026 * xdisp.c: Consolidate gui-independent "glyph string" code here.
17027 (dump_glyph_string): Moved here.
17028 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
17029 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
17030 (fill_composite_glyph_string, fill_glyph_string)
17031 (fill_image_glyph_string, fill_stretch_glyph_string)
17032 (left_overwritten, left_overwriting, right_overwritten)
17033 (right_overwriting, get_char_face_and_encoding)
17034 (set_glyph_string_background_width, compute_overhangs_and_x)
17035 (append_glyph, append_composite_glyph, produce_image_glyph)
17036 (take_vertical_position_into_account, append_stretch_glyph)
17037 (produce_stretch_glyph): New generic functions (based on X version).
17038 Call platform specific functions through rif.
17039 (INIT_GLYPH_STRING): New macro, hides W32 details.
17040 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
17041 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
17042 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
17043 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
17044 (notice_overwritten_cursor):
17045 Generic functions exported to platform modules. Users changed.
17046
17047 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
17048 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
17049 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
17050 New macros for consolidated code.
17051
17052 * xterm.c: Remove consolidated defines and code.
17053 (x_per_char_metric, x_encode_char)
17054 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
17055 (x_redisplay_interface): Add new members.
17056
17057 * w32gui.h (Display): Add dummy typedef for consolidation.
17058 (XChar2b): Define alias for wchar_t for consolidation.
17059 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
17060
17061 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
17062 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
17063 New macros for consolidation.
17064
17065 * w32term.c: Remove consolidated defines and code.
17066 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
17067 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
17068 (w32_per_char_metric): Change font_type arg to int for RIF.
17069 (w32_encode_char): Return int according to RIF requirements.
17070 (w32_compute_glyph_string_overhangs): Adapt to RIF.
17071 (w32_get_glyph_overhangs): New function for RIF. Uses generic
17072 x_get_glyph_overhangs.
17073 (w32_redisplay_interface): Add new members.
17074
17075 * macgui.h (XChar2b): Move typedef here for consolidation.
17076 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
17077
17078 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
17079 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
17080 consolidation.
17081
17082 * macterm.c: Remove consolidated defines and code.
17083 (mac_per_char_metric): New function for RIF.
17084 (mac_encode_char): Adapt to new RIF requirements.
17085 (mac_compute_glyph_string_overhangs): Adapt for RIF.
17086 (x_redisplay_interface): Add new members.
17087
17088 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
17089
17090 * keymap.c (Vmenu_events): New var.
17091 (syms_of_keymap): Initialize it.
17092 (where_is_internal): Check more carefully what is a menu event.
17093
17094 2003-03-14 Richard M. Stallman <rms@gnu.org>
17095
17096 * lread.c (read1): After #!, exit loop on eof.
17097
17098 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17099
17100 * gtkutil.h: Add declaration for xg_frame_cleared.
17101
17102 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
17103
17104 * gtkutil.c (struct xg_last_sb_pos): New structure.
17105 (handle_fixed_child): New function.
17106 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
17107 and force a redraw on them.
17108 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
17109 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
17110 so we can avoid unneeded redraws.
17111 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
17112 and force a redraw on the scroll bar.
17113 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
17114 if xg_last_sb_pos shows the positions are up to date.
17115 (xg_frame_cleared): New function.
17116
17117 2003-03-13 Kenichi Handa <handa@m17n.org>
17118
17119 * coding.c (Fdetect_coding_region): Fix docstring.
17120 (Fdetect_coding_string): Fix docstring.
17121
17122 2003-03-13 Andreas Schwab <schwab@suse.de>
17123
17124 * gtkutil.c: Add prototype for create_menus.
17125
17126 * data.c (long_to_cons): Fix type of top.
17127
17128 * xselect.c (selection_data_to_lisp_data): Use int instead of
17129 long for an integer of size 4.
17130
17131 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
17132 (xg_tool_bar_help_callback): Likewise.
17133
17134 2003-03-12 Andreas Schwab <schwab@suse.de>
17135
17136 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
17137
17138 2003-03-12 Kim F. Storm <storm@cua.dk>
17139
17140 The following changes consolidate the fringe handling from
17141 xterm.c, w32term.c, and macterm.c into xdisp.c.
17142
17143 * xdisp.c: Consolidate fringe handling code here.
17144 (left_bits, right_bits, continued_bits, continuation_bits)
17145 (ov_bits, zv_bits): Define fringe bitmaps.
17146 (fringe_bitmaps): New array holding fringe bitmaps.
17147 (draw_fringe_bitmap): Draw a specific bitmap; call display
17148 specific drawing routine via rif->draw_fringe_bitmap.
17149 (draw_row_fringe_bitmaps): Generic replacement for
17150 x_draw_row_fringe_bitmaps; all callers changed.
17151 (compute_fringe_widths): Generic replacement for
17152 x_compute_fringe_widths; all callers changed.
17153
17154 * dispextern.h (enum fringe_bitmap_type): Define here.
17155 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
17156 (fringe_bitmaps): Declare extern.
17157 (struct redisplay_interface): New member draw_fringe_bitmap.
17158 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
17159
17160 * xterm.c: Remove generic fringe code.
17161 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
17162 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
17163
17164 * w32term.c: Remove generic fringe code.
17165 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
17166 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
17167
17168 * macterm.c: Remove generic fringe code.
17169 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
17170 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
17171
17172 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
17173
17174 * print.c (Fprin1_to_string): Return unibyte string if possible.
17175
17176 2003-03-09 David Kastrup <dak@gnu.org>
17177
17178 * process.c (read_process_output): We have allocated enough space
17179 for readmax and carryover, so actually use the alloted space.
17180
17181 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17182
17183 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
17184 toolkit scrollbar click.
17185
17186 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
17187 for USE_GTK.
17188 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
17189 also.
17190 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
17191 scrollbar and control is pressed, call x_scroll_bar_handle_click.
17192
17193 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
17194
17195 * gtkutil.c (xg_get_scroll_id_for_window): New function.
17196 (xg_tool_bar_item_expose_callback): New function.
17197 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
17198 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
17199 on the tool bar widget.
17200 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
17201 to expose on the tool bar item widgets.
17202
17203 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17204
17205 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
17206 struct image* when deciding to update (struct image* may have been
17207 deleted from the image cache).
17208
17209 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
17210 the event isn't for a frame (i.e. for dialogs).
17211
17212 2003-03-07 Kenichi Handa <handa@m17n.org>
17213
17214 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
17215 composition components reaches the limit, terminate composing.
17216 (COMPOSITION_OK): New macro.
17217 (detect_coding_iso2022): Use it if an escape sequence for
17218 composition is found.
17219 (coding_restore_composition): Adjust the number of composition
17220 components if it is not sane.
17221
17222 2003-03-06 Juanma Barranquero <lektu@terra.es>
17223
17224 * w32term.h (struct w32_display_info): Add xrdb member to support
17225 passing resources via -xrm on Windows.
17226
17227 * w32term.c (w32_make_rdb): New function.
17228 (w32_term_init): Use it to initialize xrdb member of w32_display_info
17229 struct. Delete leftover code.
17230
17231 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
17232 for resources passed on the command line.
17233
17234 * w32reg.c (w32_get_rdb_resource): New function.
17235 (x_get_string_resource): Use it, so resources passed with -xrm
17236 supercede the ones in the registry.
17237
17238 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17239
17240 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
17241 instead of x_top_window_to_frame.
17242
17243 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17244
17245 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
17246 when restarting Emacs.
17247
17248 2003-03-03 Richard M. Stallman <rms@gnu.org>
17249
17250 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
17251 to run kill-buffer-query-functions.
17252 (Qkill_buffer_query_functions): New var.
17253 (syms_of_buffer): Init and staticpro it.
17254
17255 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17256
17257 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
17258
17259 2003-02-25 Kim F. Storm <storm@cua.dk>
17260
17261 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
17262 If centering point failed to make whole line visible and vscroll
17263 is non-zero, disable vscroll and try centering point again.
17264
17265 * lread.c (read1): Accept `single space' syntax like (? x).
17266
17267 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17268
17269 * keyboard.c (cancel_hourglass_unwind): Surround with
17270 #ifdef HAVE_X_WINDOWS
17271
17272 2003-02-25 Kenichi Handa <handa@m17n.org>
17273
17274 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
17275 process only when "subprocesses" is defined.
17276
17277 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
17278
17279 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
17280
17281 2003-02-24 Juanma Barranquero <lektu@terra.es>
17282
17283 * callint.c (fix_command): Declare as static void and move before
17284 Fcall_interactively.
17285
17286 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
17287 (syms_of_xdisp): Don't initialize Qwhen.
17288
17289 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17290
17291 * keyboard.c (cancel_hourglass_unwind): New function.
17292 (command_loop_1): Cancel hourglass with unwind-protect.
17293
17294 2003-02-23 Richard M. Stallman <rms@gnu.org>
17295
17296 * callint.c (fix_command): New subroutine, from Fcall_interactively.
17297 Detect (when ... (region-beginning)) etc.
17298 (Fcall_interactively): Call fix_command.
17299 (Qif, Qwhen): New variables.
17300 (syms_of_callint): Init and staticpro them.
17301
17302 * regex.c (print_partial_compiled_pattern): Output to stderr.
17303
17304 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
17305
17306 * dired.c (directory_files_internal): Don't expand directory.
17307 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
17308 instead. From Lars Hansen <larsh@math.ku.dk>.
17309
17310 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
17311
17312 * fns.c (string_to_multibyte): Remove unused var i.
17313 (Flanginfo): Fix int/Lisp_Object mixup.
17314 (void_call2): New fun.
17315 (Fmap_char_table): Use it in place of call2.
17316
17317 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
17318
17319 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
17320
17321 * keymap.c (copy_keymap_1): Make it static.
17322
17323 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
17324
17325 2003-02-22 David Ponce <david@dponce.com>
17326
17327 * lread.c (Fload): Don't check STRING_MULTIBYTE.
17328
17329 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17330
17331 * process.h: Removed subtty field from struct Lisp_Process.
17332
17333 * process.c (create_process): Remove setting of subtty.
17334 (emacs_get_tty_pgrp): New function.
17335 (Fprocess_running_child_p, process_send_signal):
17336 Call emacs_get_tty_pgrp instead of ioctl.
17337 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
17338
17339 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
17340
17341 * keymap.c (Fdefine_key): Doc fix.
17342
17343 2003-02-21 Juanma Barranquero <lektu@terra.es>
17344
17345 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
17346
17347 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
17348 POLLING_PROBLEM_IN_SELECT.
17349
17350 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
17351 Delete #undef of POLLING_PROBLEM_IN_SELECT.
17352
17353 * s/hpux10-20.h: New file.
17354
17355 * process.c (wait_reading_process_input):
17356 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
17357
17358 2003-02-20 Kenichi Handa <handa@m17n.org>
17359
17360 * fontset.c (check_fontset_name): If NAME is nil, return the
17361 default fontset.
17362 (override_font_info): New function.
17363 (Fset_fontset_font): Document that NAME nil means the default fontset.
17364 (Ffontset_info): If FONTSET is not the default fontset, merge
17365 FONTSET onto the copy of the default fontset, and work on that
17366 copy. Document that NAME nil means the default fontset.
17367 (Ffontset_font): Document that NAME nil means the default fontset.
17368
17369 * process.c (setup_process_coding_systems): If the process's
17370 in/out descriptor is -1, do nothing.
17371
17372 2003-02-19 Andreas Schwab <schwab@suse.de>
17373
17374 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
17375 Add prototypes.
17376
17377 2003-02-19 Kenichi Handa <handa@m17n.org>
17378
17379 * xfaces.c (try_alternative_families): Try all scalable fonts if
17380 Vscalable_fonts_allowed is not Qt.
17381
17382 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17383
17384 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
17385
17386 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17387
17388 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
17389 names.
17390
17391 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
17392 (sorted_font_list): Move allocation of struct font_name to
17393 x_face_list_fonts.
17394 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
17395 (Fx_list_fonts): Set maxnames to -1 to get all font names.
17396
17397 2003-02-18 Kim F. Storm <storm@cua.dk>
17398
17399 * lread.c (read1): Fix last change.
17400 "`" is not always special. Allow "?" after a character constant.
17401
17402 2003-02-18 Andrew Choi <akochoi@shaw.ca>
17403
17404 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
17405
17406 2003-02-18 Andreas Schwab <schwab@suse.de>
17407
17408 * window.c (window_scroll_pixel_based): Move outside a
17409 multi-glyph character before setting new window start.
17410
17411 * xdisp.c (in_display_vector_p): New function.
17412 * dispextern.h (in_display_vector_p): Declare.
17413
17414 2003-02-18 Kim F. Storm <storm@cua.dk>
17415
17416 * lread.c (read1): Fix and relax read syntax.
17417 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
17418 Only recognize "," after dotted-pair dot if inside backquote.
17419 Never include "`" or "," (inside backquote) in a symbol.
17420 Allow dotted-pair dot after a character constant.
17421 Allow "`" and "," (inside backquote) after a character constant.
17422
17423 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17424
17425 * gtkutil.c (xg_tool_bar_expose_callback): New function.
17426 (xg_create_tool_bar): Force style of tool bar to be horizontal with
17427 icons. Set name of tool bar to emacs-toolbar.
17428 (update_frame_tool_bar): Connect expose event to
17429 xg_tool_bar_expose_callback.
17430
17431 2003-02-17 Richard M. Stallman <rms@gnu.org>
17432
17433 * keyboard.c (this_command_key_count_reset): New variable.
17434 Initiatize to 0 where this_command_key_count is set.
17435 (read_char): Save and restore this_command_key_count_reset
17436 around input method code.
17437 (read_char): If this_command_key_count_reset, echo reread commands.
17438 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
17439
17440 2003-02-17 Kenichi Handa <handa@m17n.org>
17441
17442 * fns.c (string_to_multibyte): Always return a multibyte string.
17443
17444 2003-02-16 Jason Rumney <jasonr@gnu.org>
17445
17446 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
17447 Negative max_fonts parameter means list all.
17448
17449 2003-02-14 Dave Love <fx@gnu.org>
17450
17451 * fns.c (Flanginfo): Doc fix.
17452
17453 2003-02-13 Kim F. Storm <storm@cua.dk>
17454
17455 * lread.c (read_escape): Interpret \s as a SPACE character, except
17456 for \s-X in a character constant which still is the super modifier.
17457 (read1): Signal an `invalid read syntax' error if a character
17458 constant is immediately followed by a digit or symbol character.
17459
17460 * search.c (Fmatch_data): Doc fix. Explicitly state that
17461 match-data is undefined if last search failed.
17462
17463 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
17464 All uses changed.
17465
17466 2003-02-12 Juanma Barranquero <lektu@terra.es>
17467
17468 * eval.c (Fdefmacro): Fix typo.
17469
17470 2003-02-12 Kim F. Storm <storm@cua.dk>
17471
17472 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
17473 macro is a string, convert meta modifiers in string when copying
17474 the string into a vector.
17475
17476 2003-02-11 Kim F. Storm <storm@cua.dk>
17477
17478 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
17479
17480 2003-02-11 Kenichi Handa <handa@m17n.org>
17481
17482 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
17483
17484 2003-02-10 Kim F. Storm <storm@cua.dk>
17485
17486 * process.c: Doc fixes.
17487 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
17488
17489 2003-02-10 Kenichi Handa <handa@m17n.org>
17490
17491 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
17492
17493 * process.c (QCfilter_multibyte): New variable.
17494 (setup_process_coding_systems): New function.
17495 (Fset_process_buffer, Fset_process_filter):
17496 Call setup_process_coding_systems.
17497 (Fstart_process): Initialize the member `filter_multibyte' of
17498 struct Lisp_Process.
17499 (create_process): Call setup_process_coding_systems.
17500 (Fmake_network_process): New keyward `:filter-multibyte'.
17501 Initialize the member `filter_multibyte' of struct Lisp_Process.
17502 Call setup_process_coding_systems.
17503 (server_accept_connection): Call setup_process_coding_systems.
17504 (read_process_output): If the process has a filter, decide the
17505 multibyteness of a string to given to the filter by
17506 `filter_multibyte' member of the process. If the process doesn't
17507 have a filter and the result of conversion is unibyte, use
17508 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
17509 multibyte form.
17510 (Fset_process_coding_system): Call setup_process_coding_systems.
17511 (Fset_process_filter_multibyte): New function.
17512 (Fprocess_filter_multibyte_p): New function.
17513 (syms_of_process): Intern and staticpro QCfilter_multibyte.
17514 Defsubr Sset_process_filter_multibyte and
17515 Sprocess_filter_multibyte_p.
17516
17517 * process.h (struct Lisp_Process): New member filter_multibyte.
17518
17519 * lisp.h (setup_process_coding_systems): Add prototype.
17520
17521 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
17522 process, update coding systems for the process.
17523
17524 2003-02-09 Kenichi Handa <handa@m17n.org>
17525
17526 * fns.c (string_to_multibyte): New function.
17527 (Fstring_to_multibyte): New function.
17528 (syms_of_fns): Defsubr it.
17529
17530 2003-02-08 Andreas Schwab <schwab@suse.de>
17531
17532 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
17533 instead of the substitution.
17534
17535 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17536
17537 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
17538
17539 * xmenu.c (menu_position_func): Adjust menu popup position so that
17540 the menu is fully visible.
17541
17542 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17543
17544 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
17545 (x_make_frame_invisible, x_wm_set_icon_position):
17546 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
17547
17548 * xfns.c (x_set_name, x_set_title): Ditto.
17549
17550 2003-02-04 Richard M. Stallman <rms@gnu.org>
17551
17552 * keyboard.c (echo_now): Update before_command_echo_length.
17553 (Freset_this_command_lengths): Reset this_command_key_count etc.
17554 immediately rather than arranging to do it later.
17555 (before_command_key_count_1, before_command_echo_length_1)
17556 (before_command_restore_flag): Vars deleted.
17557 (add_command_key): Don't handle before_command_restore_flag.
17558 (read_char, record_menu_key): Don't update before_command_key_count or
17559 before_command_echo_length.
17560 (read_char): Don't handle before_command_restore_flag.
17561
17562 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
17563 in direct-output clauses if it wouldn't be called in the ordinary case.
17564
17565 2003-02-04 Kim F. Storm <storm@cua.dk>
17566
17567 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
17568
17569 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17570
17571 * gtkutil.c (remove_from_container): Copying list is not needed.
17572 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
17573 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
17574 on list returned from gtk_container_get_children to avoid memory leak.
17575
17576 2003-02-01 Jason Rumney <jasonr@gnu.org>
17577
17578 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
17579 local malloc.
17580 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
17581 definitions in xpm.h.
17582 (init_xpm_functions): New function.
17583 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
17584 (init_external_image_libraries): Try to load libXpm.dll.
17585
17586 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
17587 timestamp.
17588
17589 2003-01-31 Dave Love <fx@gnu.org>
17590
17591 * syntax.c (Fskip_chars_forward)
17592 (open-paren-in-column-0-is-defun-start): Doc fix.
17593
17594 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
17595
17596 * fileio.c: Support // at start of name for Cygwin (just added proper
17597 preprocessor tests).
17598
17599 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
17600
17601 * Makefile.in: Use @EXEEXT@ for Cygwin.
17602
17603 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
17604
17605 * s/cygwin.h: Added for Cygwin port.
17606
17607 2003-01-31 Juanma Barranquero <lektu@terra.es>
17608
17609 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
17610 when including gif_lib.h.
17611 (init_gif_functions, init_tiff_functions): New functions.
17612 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
17613 Windows. Disable color table lookups. Call library functions
17614 through pointers determined at runtime.
17615 (init_external_image_libraries): Try to load libungif.dll and
17616 libtiff.dll.
17617
17618 2003-01-31 Kenichi Handa <handa@m17n.org>
17619
17620 * xdisp.c (SKIP_GLYPHS): New macro.
17621 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
17622
17623 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17624
17625 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
17626
17627 2003-01-30 Dave Love <fx@gnu.org>
17628
17629 * alloc.c (Vgc_elapsed, gcs_done): New variables.
17630 (Fgarbage_collect): Use them.
17631 (init_alloc, syms_of_alloc): Set them up.
17632
17633 2003-01-30 Juanma Barranquero <lektu@terra.es>
17634
17635 * w32fns.c (init_external_image_libraries): Add missing operator.
17636
17637 2003-01-29 Jason Rumney <jasonr@gnu.org>
17638
17639 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
17640 an alternative name for jpeg.dll.
17641
17642 2003-01-29 Kenichi Handa <handa@m17n.org>
17643
17644 * xdisp.c (set_cursor_from_row): Pay attention to string display
17645 properties.
17646
17647 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
17648
17649 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
17650 <escape>.
17651 (keycode_to_xkeysym_table): Reformat and add more comments.
17652 (XTread_socket): Drop special case for backspace.
17653
17654 2003-01-28 Andrew Choi <akochoi@shaw.ca>
17655
17656 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
17657 values in old-style RGB specs.
17658
17659 2003-01-27 Juanma Barranquero <lektu@terra.es>
17660
17661 * w32fns.c (init_external_image_libraries): Try alternate names for the
17662 jpeg dll.
17663
17664 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17665
17666 * gtkutil.c (create_dialog, xg_separator_p)
17667 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
17668 before calling strcmp or strlen.
17669
17670 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17671
17672 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
17673 and handle image load failure.
17674
17675 2003-01-26 Jason Rumney <jasonr@gnu.org>
17676
17677 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
17678 New functions.
17679 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
17680 Disable color table lookups. Call jpeg library functions
17681 through pointers determined at runtime.
17682 (init_external_image_libraries): Try to load jpeg.dll.
17683
17684 2003-01-25 Richard M. Stallman <rms@gnu.org>
17685
17686 * lisp.h: Declare format2 instead of format1.
17687
17688 * fileio.c (barf_or_query_if_file_exists):
17689 Call format2 instead of format1.
17690
17691 * editfns.c (format2): New function, replaces format1
17692 but takes exactly two Lisp Objects as format args.
17693
17694 * buffer.c (Fkill_buffer): Call format2 instead of format1.
17695
17696 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17697
17698 * xterm.h: Change to return value of x_dispatch_event to int.
17699
17700 * xterm.c (x_filter_event): New function.
17701 (event_handler_gdk, XTread_socket): Call x_filter_event.
17702 (x_dispatch_event): Change to return value of finish.
17703 (event_handler_gdk): Use return value from x_dispatch_event.
17704
17705 * xfns.c (x_window): Call create_frame_xic for GTK version to
17706 initialize input methods.
17707
17708 * gtkutil.h: Add (void) prototypes.
17709
17710 * gtkutil.c (create_menus): Remove code that puts the help menu to
17711 the right.
17712
17713 2003-01-25 Jason Rumney <jasonr@gnu.org>
17714
17715 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
17716 [HAVE_PNG]: Sync with xfns.c version.
17717 (png_load): Adjust colors for Windows. Use Windows
17718 bitmaps. Disable color table lookups.
17719 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
17720 (init_png_functions): New function.
17721 (png_read_from_memory, png_load): Call png library functions
17722 through pointers determined at runtime.
17723 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
17724 (init_external_image_libraries): New function.
17725 (init_xfns): Call it.
17726
17727 2003-01-24 Andreas Schwab <schwab@suse.de>
17728
17729 * minibuf.c (Fminibuffer_message): Verify type of parameter.
17730
17731 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17732
17733 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
17734 of static initializer.
17735
17736 2003-01-24 Dave Love <fx@gnu.org>
17737
17738 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
17739 architectures.
17740
17741 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
17742 Use __alignof__.
17743
17744 2003-01-24 Kenichi Handa <handa@m17n.org>
17745
17746 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
17747 It it is nonzero, don't pretend that an invisible area doesn't exist.
17748 (command_loop_1): Call adjust_point_for_property with proper
17749 second arg.
17750
17751 2003-01-22 Jason Rumney <jasonr@gnu.org>
17752
17753 Sync changes with xterm.c and xfns.c.
17754
17755 * w32term.c (x_draw_glyph_string_foreground)
17756 (x_draw_composite_glyph_string_foreground): Implement overstriking.
17757
17758 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
17759 phys_cursor's hpos is overwritten. This is still not completely
17760 correct, as it doesn't really make sense to use hpos at all to
17761 get the cursor glyph (as that is relative to the width of the
17762 characters on the line, which may have changed during the update).
17763
17764 * w32term.c (notice_overwritten_cursor): Handle the special case
17765 of the cursor being in the first blank non-text line at the
17766 end of a window.
17767
17768 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
17769 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
17770 Compute from the x position returned by x_draw_glyphs.
17771
17772 (x_display_and_set_cursor): Don't set phys_cursor_width here,
17773 except for NO_CURSOR and system caret, to make phys_cursor_width
17774 contain what its name suggests.
17775 (notice_overwritten_cursor): Consider the cursor image erased if
17776 the output area intersects the cursor image in y-direction.
17777
17778 * w32term.c (note_mode_line_or_margin_highlight): Rename from
17779 note_mode_line_highlight and extend.
17780
17781 * w32term.c (last_window): New variable.
17782 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
17783 (note_mouse_movement): Remove reimplemented code in #if 0.
17784
17785 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
17786 not update_mode_lines, and always set it to 1.
17787
17788 2003-01-21 Jason Rumney <jasonr@gnu.org>
17789
17790 * w32fns.c (IDC_HAND): Define it if system headers don't.
17791
17792 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17793
17794 * w32term.h (struct w32_output): New member hand_cursor.
17795 (WM_EMACS_SETCURSOR): New message definition.
17796
17797 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
17798 function w32_define_cursor.
17799 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
17800 position, change member name output_data.x to output_data.w32 and
17801 add function w32_define_cursor.
17802 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
17803 and change member name output_data.x to output_data.w32.
17804 (w32_initialize_display_info):
17805 Setup dpyinfo->vertical_scroll_bar_cursor.
17806
17807 * w32fns.c (Vx_hand_shape): New variable.
17808 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
17809 WM_EMACS_SETCURSOR.
17810 (x-create-frame): Setup Cursor types.
17811
17812 2003-01-21 David Ponce <david@dponce.com>
17813
17814 * w32term.c (w32_encode_char): For DIM=1 charset, set
17815 ccl->reg[2] to -1 before calling ccl_driver.
17816 (Sync. with xterm.c x_encode_char change by Kenichi Handa
17817 <handa@m17n.org> on 2002-09-30.)
17818 (w32_draw_relief_rect): Declare all args.
17819 (w32_define_cursor): New.
17820
17821 * w32fns.c (w32_load_cursor): New function.
17822 (w32_init_class): Use it.
17823 (x_put_x_image): Declare all args.
17824
17825 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
17826
17827 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
17828
17829 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17830
17831 * gtkutil.c: Must include stdio.h before termhooks.h
17832
17833 2003-01-21 Dave Love <fx@gnu.org>
17834
17835 * alloc.c (Fgc_status): Print zombie list.
17836 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
17837 Fix assignment of zombies.
17838 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
17839 Don't take car of non-cons.
17840
17841 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17842
17843 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17844
17845 2003-01-20 David Ponce <david@dponce.com>
17846
17847 * w32menu.c (digest_single_submenu): Declare all args.
17848
17849 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
17850 changes in xmenu.c:
17851
17852 (parse_single_submenu): Use individual keymap's prompt
17853 string as pane name, if there is one.
17854 (set_frame_menubar): Save menu_items_n_panes from each call to
17855 parse_single_submenu and use it when calling digest_single_submenu.
17856
17857 2003-01-20 Steven Tamm <steventamm@mac.com>
17858
17859 * macterm.c (XTread_socket): Check for valid, visible window
17860 before sending a scroll-wheel event.
17861
17862 2003-01-20 Richard M. Stallman <rms@gnu.org>
17863
17864 * xdisp.c (redisplay_window): If mini window's buffer is not
17865 a minibuffer, then redisplay it like other windows.
17866
17867 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17868
17869 * gtkutil.c (xg_create_frame_widgets): Check if there is an
17870 external tool bar before setting tool bar height.
17871
17872 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17873
17874 * xterm.c (handle_one_xevent): Surround popup_activated
17875 with #ifdef:s for non-toolkit version.
17876
17877 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
17878 (gtkutil.o): New file.
17879 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
17880 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
17881
17882 * gtkutil.c: New file for GTK version.
17883
17884 * gtkutil.h: New file for GTK version.
17885
17886 * xterm.h: Add xt_or_gtk_widget.
17887 Include gtk files for USE_GTK.
17888 (struct x_output): Add toolbar_height.
17889 (struct x_output): Add GTK widgets and Gdk size_hints.
17890 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
17891 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
17892 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
17893
17894 * xterm.c: Include gtkutil.h for USE_GTK.
17895 (free_frame_menubar): Declare extern void for USE_GTK.
17896 (note_mouse_highlight): Check popup_activated for USE_GTK.
17897 (xt_action_hook): Don't compile if USE_GTK.
17898 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
17899 (xg_scroll_callback): New function.
17900 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
17901 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
17902 for USE_GTK.
17903 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
17904 xg_show_scroll_bar for USE_GTK.
17905 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
17906 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
17907 (event_handler_gdk): New function for USE_GTK.
17908 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
17909 (handle_one_xevent): Make sure widget is mapped before
17910 calling x_real_positions for USE_GTK.
17911 (XTread_socket): Add GTK event loop for USE_GTK.
17912 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
17913 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
17914 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
17915 (x_iconify_frame): Add code for USE_GTK.
17916 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
17917 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
17918 is in gtkutil.c.
17919 (x_term_init): Add initialization for GTK.
17920 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
17921
17922 * xmenu.c: Include gtkutil.h for USE_GTK.
17923 (Fx_popup_menu): Use current position if x and y is NIL.
17924 (single_menu_item, single_menu_item, Fx_popup_dialog):
17925 Check for USE_GTK.
17926 (popup_widget_loop): New function for USE_GTK.
17927 (x_activate_menubar): Add code for USE_GTK.
17928 (popup_activate_callback, popup_deactivate_callback)
17929 (menu_highlight_callback, menubar_selection_callback):
17930 Add USE_GTK versions.
17931 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
17932 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
17933 (free_frame_menubar): Only compile if not USE_GTK. GTK version
17934 is in gtkutil.c.
17935 (popup_selection_callback): New version for USE_GTK.
17936 (create_and_show_popup_menu): New fuction, one USE_GTK version and
17937 one USE_X_TOOLKIT version.
17938 (xmenu_show): Call create_and_show_popup_menu.
17939 (dialog_selection_callback): New version for USE_GTK.
17940 (create_and_show_dialog): New fuction, one USE_GTK version and
17941 one USE_X_TOOLKIT version.
17942 (xdialog_show): Call create_and_show_dialog.
17943
17944 * xfns.c: Include gtkutil for USE_GTK.
17945 (x_window_to_frame, x_any_window_to_frame)
17946 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
17947 (x_top_window_to_frame): Add code for USE_GTK.
17948 (x_set_background_color): Call xg_set_background_color for GTK.
17949 (x_set_menu_bar_lines): Check for USE_GTK.
17950 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
17951 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
17952 (x_window): Call xg_create_frame_widgets for USE_GTK.
17953 (Fx_create_frame): Check for USE_GTK
17954 (Fx_file_dialog): New implementation for USE_GTK.
17955
17956 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
17957 (update_menu_bar): Add check for USE_GTK.
17958 (update_tool_bar): Add check for USE_GTK and external tool bar.
17959 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
17960 (redisplay_internal): Add check for USE_GTK and popup_activated.
17961 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
17962 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
17963 (display_menu_bar): Add check for USE_GTK
17964
17965 * lisp.h (Vx_resource_name): Declare extern.
17966
17967 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
17968 for USE_GTK.
17969 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
17970
17971 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
17972 (FRAME_EXTERNAL_TOOL_BAR): New macro.
17973 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
17974
17975 * fileio.c (Fread_file_name): Add check for USE_GTK.
17976
17977 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
17978 Add check for USE_GTK.
17979
17980 * config.in: Added HAVE_GTK
17981
17982 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
17983
17984 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
17985
17986 * charset.h (Funibyte_char_to_multibyte): Export.
17987
17988 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17989
17990 * xmenu.c (mouse_position_for_popup): New function.
17991 (Fx_popup_menu): Call mouse_position_for_popup for X and
17992 mouse_position_hook for others.
17993
17994 2003-01-17 Kim F. Storm <storm@cua.dk>
17995
17996 * editfns.c (Finsert): Mention `string-make-multibyte' and
17997 `string-as-multibyte' in doc string.
17998
17999 2003-01-17 Kenichi Handa <handa@m17n.org>
18000
18001 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
18002
18003 * editfns.c (Fformat): Convert an unibyte char argument that is
18004 formatted by "%c" to multibyte if the total result must be a
18005 multibyte string.
18006
18007 2003-01-16 Kim F. Storm <storm@cua.dk>
18008
18009 * process.c (set-process-filter): Document unibyte/multibyte-ness
18010 of string argument.
18011
18012 2003-01-16 Kenichi Handa <handa@m17n.org>
18013
18014 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
18015
18016 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
18017 (re_search_2): Likewise.
18018
18019 2003-01-15 Kenichi Handa <handa@m17n.org>
18020
18021 * xdisp.c (message_dolog): Fix bug of the case that *Message*
18022 buffer is unibyte.
18023
18024 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
18025
18026 * fns.c (Fsubstring): Clarify doc string.
18027
18028 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
18029 (Fprevious_char_property_change)
18030 (Fnext_single_char_property_change)
18031 (Fprevious_single_char_property_change, Fnext_property_change)
18032 (Fnext_single_property_change, Fprevious_property_change)
18033 (Fprevious_single_property_change, Fadd_text_properties)
18034 (Fput_text_property, Fset_text_properties)
18035 (Fremove_text_properties, Fremove_list_of_text_properties)
18036 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
18037
18038 2003-01-14 Kim F. Storm <storm@cua.dk>
18039
18040 * process.h (struct Lisp_Process): New member plist replaces old
18041 member private_vars. All uses changed.
18042
18043 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
18044 (QCplist): Rename from QCvars. Change all uses.
18045 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
18046 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
18047 (syms_of_process): Intern, staticpro, defsubr these.
18048 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
18049
18050 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
18051
18052 * m/delta.h: Remove (obsolete).
18053
18054 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
18055
18056 * fileio.c (Fdelete_directory, Fdelete_file): Document the
18057 behaviour in front of symlinks.
18058 (Fdelete_file): Raise an error on directories.
18059
18060 2003-01-13 Dave Love <fx@gnu.org>
18061
18062 * fns.c (Freverse): Use QUIT.
18063
18064 2003-01-13 Richard M. Stallman <rms@gnu.org>
18065
18066 * minibuf.c (minibuffer_completion_contents):
18067 Error if point is inside prompt.
18068
18069 * keyboard.c (command_loop_1): Don't redisplay directly
18070 if there's a post-command-hook.
18071
18072 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
18073 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
18074
18075 2003-01-12 Kim F. Storm <storm@cua.dk>
18076
18077 * process.h (struct Lisp_Process): New member private_vars.
18078
18079 * process.c (QCvars): New variable.
18080 (syms_of_process): Intern and staticpro it.
18081 (Fset_process_contact): Removed function.
18082 (Fprocess_variable, Fset_process_variable): New functions.
18083 (syms_of_process): Defsubr them.
18084 (Fstart_process): Initialize private_vars plist to nil.
18085 (Fmake_network_process): New arg :vars to setup the private
18086 variables for new network process.
18087 (server_accept_connection): Copy server's private variables to
18088 client process.
18089
18090 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
18091 crashes). Code rewritten and simplified. Now directly aligns the
18092 pointer and recalculates pure_bytes_used, rather than aligning the
18093 size and adjusting the pointer.
18094
18095 2003-01-11 Kim F. Storm <storm@cua.dk>
18096
18097 * process.c (Fset_process_contact): New function.
18098 (syms_of_process): defsubr it.
18099 (make-network-process): Update doc.
18100
18101 2003-01-10 Andreas Schwab <schwab@suse.de>
18102
18103 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
18104 Reported by Berthold Gunreben <b.gunreben@web.de>.
18105
18106 2003-01-10 Dave Love <fx@gnu.org>
18107
18108 * composite.c (syms_of_composite): Make composition_hash_table weak.
18109
18110 2003-01-09 Kim F. Storm <storm@cua.dk>
18111
18112 * process.c (Fmake_network_process): Convert new port number
18113 to host byte order for `:service t' case. From Mario Lang.
18114
18115 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18116
18117 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
18118 instead of XtAppProcessEvent.
18119
18120 * xterm.c (handle_one_xevent): New function.
18121 (x_dispatch_event): New function.
18122 (XTread_socket): Call handle_one_xevent.
18123
18124 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
18125
18126 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
18127 call XQueryPointer to get coordinates.
18128 (popup_get_selection): Do not set popup_activated_flag to zero,
18129 let popup_deactivate_callback do that. Needed for Motif.
18130 Call x_dispatch_event instead of XtDispatchEvent.
18131 (xmenu_show): Calculate root coordinate from frame top/left position.
18132
18133 2003-01-08 Kim F. Storm <storm@cua.dk>
18134
18135 * process.c (server_accept_connection): Fix recording of new
18136 connection's local address in :local property of contact info.
18137 (Fmake_network_process): Record local network address for new
18138 client processes in :local property of contact info.
18139 (format-network-address): Add arg OMIT-PORT. Change callers.
18140
18141 2003-01-07 Dave Love <fx@gnu.org>
18142
18143 * Makefile.in (fns.o): Depend on coding.h.
18144
18145 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
18146
18147 * minibuf.c (Fread_variable): Doc fix.
18148
18149 * eval.c (Fuser_variable_p): Doc change. For custom variables,
18150 use the same test as for custom-variable-p.
18151
18152 2003-01-05 Richard M. Stallman <rms@gnu.org>
18153
18154 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
18155 Count LAST_LINE_MISFIT in scroll margin for end of window.
18156 Move label too_near_end before setting SCROLL_MARGIN_POS.
18157 Set LAST_LINE_MISFIT before jumping there.
18158
18159 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
18160 scroll_conservatively case. If scrolling that much doesn't change
18161 STARTP, move it down one line.
18162
18163 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
18164 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
18165
18166 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
18167 selected frame.
18168
18169 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
18170 (syms_of_keymap): Staticpro them.
18171 (Fapropos_internal): Initialize them and clear them out.
18172 Don't GCPRO them.
18173
18174 * buffer.c (syms_of_buffer) <scroll-up|down-aggressively>: Doc fixes.
18175
18176 * lisp.h: New misc type Lisp_Save_Value.
18177 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
18178 (XSAVE_VALUE): New macro.
18179 (struct Lisp_Save_Value): New data type.
18180 (union Lisp_Misc): Add u_save_value alternative.
18181 (make_save_value): Declare.
18182
18183 * alloc.c (make_save_value): New function.
18184
18185 * xterm.c (x_catch_errors): Save dpy using make_save_value.
18186 (x_catch_errors_unwind): Call XSync.
18187
18188 2003-01-01 Richard M. Stallman <rms@gnu.org>
18189
18190 * window.c (window_scroll_pixel_based): Partially undo last change.
18191
18192 * keyboard.c (command_loop_1): Call adjust_point_for_property
18193 in direct action cases for Qforward_char and Qbackward_char.
18194 Set already_adjusted so it won't be done twice.
18195
18196 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
18197
18198 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
18199 type definition of size_t.
18200
18201 2003-01-02 Steven Tamm <steventamm@mac.com>
18202
18203 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
18204 distinguish Carbon GUI builds from X11 builds on darwin.
18205
18206 2002-12-30 Steven Tamm <steventamm@mac.com>
18207
18208 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
18209 to default to t.
18210
18211 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
18212
18213 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
18214
18215 2002-12-28 Steven Tamm <steventamm@mac.com>
18216
18217 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
18218 allow building in a different directory than source. Uses some
18219 GNU Make extensions, but there is no other make on Mac OS X.
18220
18221 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
18222
18223 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
18224 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
18225 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
18226 (Fstring_to_number): Mention the returned value in the doc strings.
18227
18228 2002-12-23 Richard M. Stallman <rms@gnu.org>
18229
18230 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
18231 <scroll-down-aggressively>: Doc fix.
18232
18233 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
18234 string as pane name, if there is one.
18235 (set_frame_menubar): Save menu_items_n_panes from each call to
18236 parse_single_submenu and use it when calling digest_single_submenu.
18237
18238 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
18239 Don't try to make last line fully visible if it is past end of window.
18240
18241 2002-12-22 Steven Tamm <steventamm@mac.com>
18242
18243 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
18244 (mac_menu_show): Add support for hierarchical popup menus.
18245 (add_menu_item): Remove indentation support.
18246 (fill_submenu, fill_menu): Create hierarchical menus
18247 instead of using indentation.
18248
18249 2002-12-22 Richard M. Stallman <rms@gnu.org>
18250
18251 * xdisp.c (try_cursor_movement): Don't call try_window here.
18252 (redisplay_window): Never redisplay minibuffer when inactive.
18253
18254 * window.c (select_window_1): Undo 9/21 change.
18255
18256 2002-12-22 Steven Tamm <steventamm@mac.com>
18257
18258 * macterm.c (XTread_socket): Call KeyTranslate for control and
18259 meta to deal correctly shifted non-alpha characters, like C-S-5
18260 being treated like C-%. Do not look for shift key to deal
18261 with masking off control-key with mac-reverse-ctrl-meta.
18262
18263 2002-12-21 Richard M. Stallman <rms@gnu.org>
18264
18265 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
18266 If it is non-nil, run timers. Use an unwind-protect to requeue
18267 the events that were read ahead.
18268 (popup_get_selection_unwind): New subroutine.
18269 (popup_get_selection_queue): File-scope variable now holds that queue.
18270 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
18271 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
18272 Use an unwind-protect to pop down the dialog box.
18273 (xdialog_show_unwind): New subroutine implements that.
18274
18275 * xdisp.c (row_containing_pos): Change exit test using last_y.
18276 (try_window_id): Abort if row_containing_pos returns null.
18277
18278 * lread.c (load_error_handler): New function.
18279 (Fload): Handle errors in Fsubstitute_in_file_name.
18280 Don't expect Fsignal to return.
18281
18282 * eval.c: Errors and throws work right with interrupt blocking.
18283 (struct catchtag): New elt interrupt_input_blocked.
18284 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
18285 (internal_catch, Fcondition_case, internal_condition_case)
18286 (internal_condition_case_1, internal_condition_case_2): Save it.
18287 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
18288
18289 * editfns.c (Fformat): Add parens.
18290
18291 * dired.c (file_name_completion): Fix that change.
18292 Delete special quit-handling code; just use QUIT.
18293
18294 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
18295
18296 * dired.c (file_name_completion): Close directory on error
18297 just as in directory_files_internal.
18298
18299 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
18300
18301 * window.c (Fset_window_configuration): Set old_point to correct
18302 value when new_current_buffer == current_buffer.
18303
18304 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
18305
18306 Revisited my earlier fix for the following entry in etc/PROBLEMS:
18307 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
18308 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
18309
18310 These changes were in part based upon suggestions made by Peter
18311 'Luna' Runestig [peter@runestig.com].
18312
18313 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
18314 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
18315 (g_b_init_get_sid_identifier_authority ): Add several static
18316 global variables.
18317
18318 * w32.c (globals_of_w32): New function. Used to initialize those
18319 global variables that must always be initialized on startup even
18320 when the global variable initialized is non zero. Its primary
18321 purpose at this time is to set the global variables
18322 g_b_init_is_windows_9x, g_b_init_open_process_token,
18323 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
18324 g_b_init_get_sid_identifier_authority to 0 on startup.
18325 Called from main.
18326
18327 * w32.c (is_windows_9x): Perform initialization only if
18328 g_b_init_is_windows_9x is equal to 0. On initialization set
18329 g_b_init_is_windows_9x equal to 1.
18330
18331 * w32.c (open_process_token): Perform initialization only if
18332 g_b_init_open_process_token is equal to 0. On initialization set
18333 g_b_init_open_process_token equal to 1.
18334
18335 * w32.c (get_token_information): Perform initialization only if
18336 g_b_init_get_token_information is equal to 0. On initialization
18337 set g_b_init_get_token_information equal to 1.
18338
18339 * w32.c (lookup_account_sid): Perform initialization only if
18340 g_b_init_lookup_account_sid is equal to 0. On initialization
18341 set g_b_init_lookup_account_sid equal to 1.
18342
18343 * w32.c (get_sid_identifier_authority): Perform initialization
18344 only if g_b_init_get_sid_identifier_authority is equal to 0.
18345 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
18346
18347 * w32fns.c (globals_of_w32fns): New function. Used to initialize
18348 those global variables that must always be initialized on startup
18349 even when the global variable initialized is non zero.
18350 Its primary purpose at this time is to initialize the global variable
18351 track_mouse_event_fn.
18352
18353 * w32fns.c (w32_wnd_proc): Remove initialization of
18354 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
18355
18356 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
18357
18358 * w32menu.c (globals_of_w32menu): New function. Used to
18359 initialize those global variables that must always be initialized
18360 on startup even when the global variable initialized is non zero.
18361 Its primary purpose at this time is to initialize the global
18362 variables get_menu_item_info and set_menu_item_info.
18363
18364 * w32menu.c (initialize_frame_menubar): Remove initialization of
18365 get_menu_item_info and set_menu_item_info.
18366
18367 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
18368
18369 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
18370 Declare them.
18371
18372 * emacs.c (main): Call globals_of_w32 prior to calling
18373 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
18374 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
18375 is defined.
18376
18377 * w32term.c (x_update_window_begin): Fix Windows API error
18378 detected by BoundsChecker. Test to determine if
18379 w32_system_caret_hwnd is NULL prior to attempting to use
18380 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
18381
18382 * w32term.c (x_update_window_end): Fix Windows API error
18383 detected by BoundsChecker. Test to determine if
18384 w32_system_caret_hwnd is NULL prior to attempting to use
18385 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
18386
18387 2002-12-17 Kenichi Handa <handa@m17n.org>
18388
18389 * coding.c (coding_system_require_warning): New variable.
18390 (syms_of_coding): DEFVAR it.
18391
18392 * coding.h (coding_system_require_warning): Extern it.
18393
18394 * fileio.c (choose_write_coding_system): Even if
18395 Vcoding_system_for_write is non-nil, if
18396 coding_system_require_warning is nonzero, call
18397 Vselect_safe_coding_system_function.
18398
18399 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
18400
18401 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
18402 (lisp): Add font-core.
18403
18404 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
18405
18406 * textprop.c (text_read_only): New arg `propval'.
18407 (get_char_property_and_overlay): Remove unused var `next_overlay'.
18408 (verify_interval_modification): Use text_read_only's new arg.
18409
18410 2002-12-13 Kenichi Handa <handa@m17n.org>
18411
18412 * coding.c (Funencodable_char_position): Set pend correctly.
18413
18414 2002-12-12 Jason Rumney <jasonr@gnu.org>
18415
18416 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
18417 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
18418 Be more careful about when help_events are generated.
18419
18420 2002-12-12 Steven Tamm <steventamm@mac.com>
18421
18422 * macterm.c (mac_check_for_quit_char): Correctly set the
18423 modifiers of the event to 0.
18424 * mac.c (sys_select): Duplicate rfds before calling select to
18425 ensure that rfds survive the while loop.
18426
18427 2002-12-11 Kim F. Storm <storm@cua.dk>
18428
18429 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
18430 row_containing_pos returned NULL.
18431
18432 2002-12-10 Steven Tamm <steventamm@mac.com>
18433
18434 * mac.c (sys_read): Fix sys_read to not call select if IO is
18435 non-blocking.
18436 (sys_select): Fix sys_select to not use a timeout larger than
18437 the one given.
18438
18439 2002-12-10 Juanma Barranquero <lektu@terra.es>
18440
18441 * editfns.c (Fformat): Use alloca, not _alloca.
18442
18443 2002-12-09 Richard M. Stallman <rms@gnu.org>
18444
18445 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
18446 as the last thing.
18447
18448 2002-12-09 Dave Love <fx@gnu.org>
18449
18450 * s/sol2-8.h: Removed. (Not necessary.)
18451
18452 2002-12-09 Matthew Swift <swift@alum.mit.edu>
18453
18454 * editfns.c (Fformat): Handle precision in string conversion
18455 specifiers like libc functions do (ie, print at most that many
18456 characters).
18457
18458 2002-12-08 Richard M. Stallman <rms@gnu.org>
18459
18460 * xdisp.c (row_containing_pos): Check more carefully
18461 whether charpos is really in the row before returning it.
18462
18463 2002-12-07 Steven Tamm <steventamm@mac.com>
18464
18465 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
18466
18467 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
18468 each stack frame. This may change as it could be time consuming.
18469
18470 * macterm.c (mac_check_for_quit_char, quit_char_comp)
18471 (init_quit_char_handler, mac_determine_quit_char_modifiers)
18472 (mac_initialize): Add code to check for pressing of quit_char
18473 in the OS event queue.
18474
18475 * mac.c (sys_select): Call mac_check_for_quit_char every second
18476 while blocking on select.
18477
18478 * mac.c (sys_read): Use sys_select to test for input first
18479 before calling read, to allow C-g to break.
18480
18481 2002-12-07 Richard M. Stallman <rms@gnu.org>
18482
18483 * minibuf.c (Fcompleting_read): Doc fix.
18484
18485 * lread.c (syms_of_lread) <load-history>: Doc fix.
18486
18487 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
18488
18489 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
18490 autoload.
18491
18492 * data.c (Fdefalias): Record in load-history redefining an autoload.
18493
18494 * alloca.c: Undo ifdef change accidentally made on 12-04.
18495
18496 2002-12-06 Francesco Potorti` <pot@gnu.org>
18497
18498 * xfns.c (png_load): Avoid double gamma correction for PNG images.
18499
18500 2002-12-04 Richard M. Stallman <rms@gnu.org>
18501
18502 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
18503
18504 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
18505
18506 * alloca.c: Don't use #error.
18507
18508 2002-12-03 Dave Love <fx@gnu.org>
18509
18510 * buffer.c (Qucs_set_table_for_input): New.
18511 (Fget_buffer_create): Use it.
18512 (Qset_buffer_major_mode_hook): Deleted.
18513 (Fset_buffer_major_mode): Revert previous change.
18514 (init_buffer_once): Intern ucs-set-table-for-input.
18515 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
18516 Add &Qucs_set_table_for_input.
18517
18518 2002-12-03 Andreas Schwab <schwab@suse.de>
18519
18520 * callint.c (Fcall_interactively): Use next_event only if less
18521 than key_count.
18522
18523 2002-12-02 Andrew Choi <akochoi@shaw.ca>
18524
18525 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
18526 names to 255 characters.
18527
18528 * macterm.c (XTread_socket): If all frames have been collapsed,
18529 expand the first one before handling drag-and-drop events.
18530
18531 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
18532 which is detected by autoconf.
18533
18534 2002-12-01 Steven Tamm <steventamm@mac.com>
18535
18536 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
18537 offset in two hints table to allow prebinding to be redone and
18538 allow the executable to be stripped.
18539
18540 2002-11-29 Dave Love <fx@gnu.org>
18541
18542 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
18543 already provided.
18544
18545 2002-11-29 Richard M. Stallman <rms@gnu.org>
18546
18547 * xdisp.c (start_display): Check more intelligently for
18548 whether the line is continued.
18549 (move_it_vertically_backward): Clear it->continuation_lines_width.
18550
18551 2002-11-28 Dave Love <fx@gnu.org>
18552
18553 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
18554 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
18555
18556 2002-11-27 Steven Tamm <steventamm@mac.com>
18557
18558 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
18559 more descriptive error output from lread.c:Fload upon most require
18560 cycles during boostrapping.
18561
18562 2002-11-27 Jason Rumney <jasonr@gnu.org>
18563
18564 * fileio.c (Finsert_file_contents): Give a more appropriate error
18565 for files bigger than 2Gb when off_t is 32 bit.
18566
18567 * dired.c (Ffile_attributes): Don't return negative file sizes for
18568 files bigger than 2Gb when off_t is 32 bit.
18569
18570 2002-11-27 Dave Love <fx@gnu.org>
18571
18572 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
18573
18574 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
18575 Test GETPGRP_VOID instead.
18576 [BSD_TERMIOS]: Remove definitions (never used).
18577
18578 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
18579 Don't define.
18580 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
18581
18582 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
18583
18584 2002-11-25 Jason Rumney <jasonr@gnu.org>
18585
18586 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
18587 supported.
18588
18589 2002-11-25 Dave Love <fx@gnu.org>
18590
18591 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
18592
18593 * Makefile.in (TEMACS_LDFLAGS): Update last change.
18594
18595 2002-11-25 Andreas Schwab <schwab@suse.de>
18596
18597 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
18598
18599 2002-11-24 Steven Tamm <steventamm@mac.com>
18600
18601 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
18602 determine the size of pointers alloced in unexed space instead
18603 of using possibly invalid emacs_zone pointers. This fixes the
18604 binary incompatibility problems caused by updates to libSystem.B.
18605
18606 2002-11-24 Richard M. Stallman <rms@gnu.org>
18607
18608 * search.c (Fstring_match): Doc fix.
18609
18610 * callint.c (Fcall_interactively): If a command fails because
18611 `*' detects a read-only buffer, but RECORD_FLAG is set,
18612 record it anyway if the args don't actually do tty input.
18613
18614 2002-11-22 Dave Love <fx@gnu.org>
18615
18616 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
18617
18618 * keyboard.c (interrupt_signal): Provide forward declaration.
18619 (kbd_buffer_store_event): Don't declare interrupt_signal.
18620
18621 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
18622
18623 2002-11-21 Richard M. Stallman <rms@gnu.org>
18624
18625 * eval.c (interactive_p): Skip any number of bytecode
18626 and special form frames, in any order.
18627
18628 2002-11-20 Jason Rumney <jasonr@gnu.org>
18629
18630 * w32fns.c (convert_mono_to_color_image): New function.
18631 (xbm_load, xbm_load_image): Use it when foreground or background
18632 is explicitly set.
18633
18634 2002-11-19 Dave Love <fx@gnu.org>
18635
18636 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
18637
18638 2002-11-18 Jason Rumney <jasonr@gnu.org>
18639
18640 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
18641 (XPutPixel): Swap blue and red.
18642 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
18643 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
18644 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
18645 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
18646
18647 2002-11-18 Dave Love <fx@gnu.org>
18648
18649 * m/orion105.h (HAVE_ALLOCA): Don't define.
18650
18651 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
18652
18653 * m/intel386.h: Don't include alloca.h or define alloca.
18654
18655 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
18656 malloc, realloc, calloc.
18657
18658 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
18659 (bcmp): Don't define.
18660
18661 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
18662
18663 * m/amdahl.h: Don't define LIB_STANDARD.
18664
18665 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
18666
18667 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
18668
18669 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
18670 Don't include alloca.h.
18671
18672 * s/aix3-2.h (HAVE_FSYNC): Don't define.
18673
18674 * regex.c (_GNU_SOURCE): Don't define.
18675
18676 * process.c (_GNU_SOURCE): Don't define.
18677
18678 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
18679
18680 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
18681
18682 * s/sol2-8.h: Include sol2-6.h.
18683
18684 2002-11-18 Miles Bader <miles@gnu.org>
18685
18686 * dispextern.h (struct face): Add `overstrike' field.
18687 * xterm.c (x_draw_glyph_string_foreground)
18688 (x_draw_composite_glyph_string_foreground): Implement overstriking.
18689 * xfaces.c (load_face_font): Set `face->overstrike' based on
18690 result from choose_face_font.
18691 (best_matching_font, choose_face_font): Add `needs_overstrike'
18692 argument, and use it to return whether overstriking is desirable
18693 for this face/font combo.
18694 (set_font_frame_param: Pass new argument to choose_face_font.
18695
18696 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
18697
18698 This change is my fix for the following entry in etc/PROBLEMS:
18699 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
18700 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
18701
18702 * w32.c: Added wrapper functions around the win32 API functions
18703 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
18704 GetSidIdentifierAuthority. These wrapper functions serve two
18705 purposes:
18706 1. They ensure that the wrapped function can never be called
18707 when Emacs is running on an operating system on which they are
18708 not supported (Microsoft Windows 95 / 98 / ME).
18709 2. They call the wrapped functions via function pointers rather
18710 than calling them directly. This avoids taking advantage of the
18711 undocumented fact that although these functions are not supported
18712 in the 9x branch of Microsoft Windows, the functions do exist in
18713 the version of advapi32.dll that is found in the 9x branch of
18714 Microsoft Windows.
18715
18716 * w32.c (init_user_info): Replace the calls to the win32 API
18717 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
18718 and GetSidIdentifierAuthority with calls to the newly added
18719 wrapper functions.
18720
18721 * w32.h: Added extern declarations for the following functions:
18722 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
18723 syms_of_w32menu, and void syms_of_fontset.
18724
18725 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
18726 function pointer track_mouse_event_fn in the handler for the
18727 WM_SETFOCUS message.
18728
18729 * w32menu.c (initialize_frame_menubar): Add code to
18730 reinitialize the function pointers set_menu_item_info and
18731 get_menu_item_info.
18732
18733 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
18734
18735 * sound.c: Added a partial implementation of play-sound-internal
18736 for Microsoft Windows. Added various #ifdef / #else / #endif
18737 code blocks to separate the code that will compile under
18738 Microsoft Windows from the code that is specific to GNU/Linux.
18739 Moved several blocks of code around to make this separation of code
18740 into Windows compatible and GNU/Linux compatible code blocks easier.
18741
18742 * makefile.w32-in: Include sound.c and link with WinMM.lib.
18743
18744 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
18745 added support for play-sound-internal under Windows would be
18746 included in the build of Emacs.
18747
18748 2002-11-16 Jason Rumney <jasonr@gnu.org>
18749
18750 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
18751
18752 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
18753
18754 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
18755
18756 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
18757 (adjust_point_for_property): Move out of display and invisible even if
18758 we were already inside before (in case a property was added while
18759 we weren't looking). Be more careful when handling invisible props.
18760 Skip invisible text as if it really wasn't there at all.
18761
18762 2002-11-15 Jason Rumney <jasonr@gnu.org>
18763
18764 * w32term.c (x_draw_image_foreground)
18765 (w32_draw_image_foreground_1): Use standard copy and invert
18766 operations to draw images.
18767
18768 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
18769 depth of 1.
18770 (xbm_read_bitmap_data): Invert bits as xbm is read in.
18771 (XPutPixel): Don't invert bits here.
18772
18773 2002-11-15 Jason Rumney <jasonr@gnu.org>
18774
18775 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
18776 (w32_draw_image_foreground_1): Handle image masks.
18777 (x_draw_image_glyph_string): Don't BitBlt transparently.
18778
18779 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
18780 (x_from_xcolors): Adjust RGB values for W32.
18781 (image_background, image_background_transparent)
18782 (postprocess_image, x_to_xcolors, x_disable_image)
18783 (x_build_heuristic_mask): Adapt for W32 and enable.
18784 (x_create_x_image_and_pixmap): Mark images with palettes as such.
18785 (xbm_load): Remove unused variable.
18786
18787 2002-11-14 Richard M. Stallman <rms@gnu.org>
18788
18789 * buffer.c (syms_of_buffer): Doc fix.
18790
18791 2002-11-14 Dave Love <fx@gnu.org>
18792
18793 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
18794
18795 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
18796 * xmenu.c (unuse_menu_items, digest_single_submenu):
18797 * xfns.c (x_put_x_image):
18798 * xdisp.c (message2_nolog, set_message):
18799 * undo.c (record_point):
18800 * terminfo.c (tparam):
18801 * syntax.c (scan_sexps_forward):
18802 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18803 * composite.c (update_compositions):
18804 * cm.c (calccost, cmgoto):
18805 * charset.c (c_string_width): Declare all args (per C99).
18806
18807 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
18808
18809 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
18810 Don't declare.
18811
18812 * emacs.c (main) [!VMS]: Avoid third arg.
18813
18814 * fns.c (Fcopy_sequence): Doc fix.
18815 (Fmap_char_table): Cast `call2'.
18816
18817 2002-11-14 Francesco Potorti` <pot@gnu.org>
18818
18819 * s/sol2-8.h: New file.
18820
18821 2002-11-14 Kim F. Storm <storm@cua.dk>
18822
18823 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
18824 dependency on `risky-local-variable' and the :propertize form.
18825
18826 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
18827
18828 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
18829
18830 * syntax.c (scan_sexps_forward): Undo last patch.
18831 Use a more obvious fix: check eob before updating the syntax table.
18832
18833 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
18834
18835 * syntax.c (scan_sexps_forward): Update syntax table before reading
18836 a char rather than after so we don't update the table past eob.
18837
18838 2002-11-09 Dave Love <fx@gnu.org>
18839
18840 * buffer.c (Fset_buffer_major_mode): Fix last change.
18841
18842 * regex.c (regexec): Fix pmatch declaration.
18843
18844 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
18845
18846 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
18847 to self-inserting characters.
18848 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
18849
18850 * coding.c (Vtranslation_table_for_input): New.
18851 (syms_of_coding): DEFVAR it.
18852
18853 2002-11-08 Juanma Barranquero <lektu@terra.es>
18854
18855 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
18856 window.
18857
18858 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18859
18860 * process.c (Fformat_network_address): Remove unused locals p,
18861 cp, and i.
18862
18863 2002-11-06 Dave Love <fx@gnu.org>
18864
18865 * buffer.c (Qset_buffer_major_mode_hook): New.
18866 (Fset_buffer_major_mode): Use it.
18867
18868 2002-11-06 Richard M. Stallman <rms@gnu.org>
18869
18870 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
18871 and stop_polling.
18872
18873 * process.c (wait_reading_process_input):
18874 Test POLLING_PROBLEM_IN_SELECT, not hpux.
18875 Avoid initialization for auto Lisp_Object var.
18876
18877 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
18878
18879 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
18880
18881 2002-11-05 Richard M. Stallman <rms@gnu.org>
18882
18883 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
18884
18885 * callint.c (Fcall_interactively): New local filter_specs.
18886 (Fcall_interactively): Check for progn as well as let.
18887 Add a gcpro.
18888 (Qprogn): New variable.
18889 (syms_of_callint): Staticpro and init Qprogn.
18890
18891 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
18892
18893 * lread.c (Feval_buffer): Doc fix.
18894
18895 2002-11-04 Dave Love <fx@gnu.org>
18896
18897 * keyboard.c (read_char): Always translate iff
18898 Vkeyboard_translate_table is a char table and c is valid.
18899
18900 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18901 and fix C types.
18902
18903 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
18904
18905 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
18906
18907 * editfns.c (get_pos_property): Don't hardcode Qfield.
18908
18909 * keyboard.c (adjust_point_for_property): Handle `display' prop on
18910 overlays. Also handle `invisible' prop.
18911
18912 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
18913
18914 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
18915 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
18916
18917 2002-11-01 Andreas Schwab <schwab@suse.de>
18918
18919 * editfns.c (Fmessage): Revert last change to properly handle %%.
18920
18921 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
18922
18923 * xmenu.c (unuse_menu_items): New fun.
18924 (menu_items_inuse): New var.
18925 (syms_of_xmenu): Initialize it.
18926 (init_menu_items): Use it to detect re-entrance.
18927 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
18928 (Fx_popup_menu): Remove spurious XSETFRAME.
18929
18930 * editfns.c (find_field): Make an exception for nil fields.
18931
18932 2002-11-01 Dave Love <fx@gnu.org>
18933
18934 * m/gec63.h: Deleted.
18935
18936 2002-10-31 Dave Love <fx@gnu.org>
18937
18938 * xterm.c (XTread_socket): Fix last change.
18939 (xaw_scroll_callback): Cast call_data to long to avoid warning.
18940
18941 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
18942
18943 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
18944
18945 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
18946
18947 * editfns.c (overlays_around, get_pos_property): New funs.
18948 (find_field): Use them.
18949 Also be careful not to modify POS before its last use.
18950 (Fmessage): Don't Fformat if there's nothing to format.
18951
18952 2002-10-30 Dave Love <fx@gnu.org>
18953
18954 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
18955 [HAVE_PTY_H]; Include pty.h.
18956
18957 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
18958
18959 * xterm.c (Qeql): Declare.
18960 (Vx_keysym_table): New.
18961 (syms_of_xterm): Initialize it.
18962 (XTread_socket): Use it. Deal with ASCII keysyms.
18963 (XSetIMValues) [HAVE_X11R6]: Prototype.
18964
18965 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
18966 (lispy_kana_keys): Comment out.
18967 (make_lispy_event) [XK_kana_A]: Comment out.
18968 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
18969 Fix sprintf call.
18970
18971 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
18972 regexp.h change).
18973 (TERMINFO, LIBS_TERMCAP): Define.
18974
18975 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
18976 (bcmp): Define conditional on HAVE_BCMP.
18977 (NO_SIOCTL_H): Don't define.
18978 (TIOCSIGSEND): Don't make conditional on IRIX6.
18979
18980 * s/sol2-5.h: Don't include strings.h.
18981 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
18982
18983 * s/irix6-0.h (IRIX6): Don't define.
18984 (bcopy, bcmp, bzero): Don't undef.
18985
18986 * s/irix6-5.h: Don't include strings.h.
18987 (IRIX6): Don't define.
18988 (bcopy, bcmp, bzero): Don't undef.
18989
18990 * syntax.c (Fforward_comment): Doc fix.
18991
18992 2002-10-29 Kim F. Storm <storm@cua.dk>
18993
18994 * process.c (Fsignal_process): Allow PROCESS to be specified by
18995 name in addition to pid (as integer or string).
18996
18997 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
18998
18999 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
19000 environments.
19001
19002 2002-10-27 Kim F. Storm <storm@cua.dk>
19003
19004 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
19005
19006 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
19007
19008 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
19009
19010 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
19011
19012 2002-10-26 Richard M. Stallman <rms@gnu.org>
19013
19014 * editfns.c (Fformat): Detect invalid format letters for floats.
19015
19016 2002-10-25 Kenichi Handa <handa@m17n.org>
19017
19018 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
19019 (x_set_title): Likewise.
19020
19021 2002-10-25 Juanma Barranquero <lektu@terra.es>
19022
19023 * macgui.h:
19024 * w32gui.h: Remove definition of XColor.
19025
19026 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
19027
19028 2002-10-24 Kim F. Storm <storm@cua.dk>
19029
19030 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
19031 Callers changed (supply dummy arg).
19032
19033 * lisp.h (get_window_cursor_type): Update prototype.
19034
19035 * w32term.c (x_display_and_set_cursor): Get active_cursor from
19036 get_window_cursor_type to track system caret.
19037
19038 2002-10-24 Kim F. Storm <storm@cua.dk>
19039
19040 * process.c (Fformat_network_address): New function.
19041 (syms_of_process): Defsubr it.
19042 (list_processes_1): Use it to format :local/:remote address if
19043 service/host is not set; before Emacs would crash in that case.
19044 (Fmake_network_process): Don't use Ffind_operation_coding_system
19045 to setup coding system if host or service is not set.
19046
19047 2002-10-23 Juanma Barranquero <lektu@terra.es>
19048
19049 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
19050
19051 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
19052 COLORREF.
19053
19054 * macgui.h:
19055 * w32gui.h: Add definition of XColor.
19056
19057 * macfns.c:
19058 * w32fns.c:
19059 * xfaces.c: Remove definition of XColor.
19060
19061 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
19062
19063 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
19064
19065 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
19066 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
19067 window if it is dedicated.
19068 (Fshrink_window): Add preserve_before as was done for enlarge_window.
19069 (Vspecial_display_function): Update docstring.
19070
19071 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
19072 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
19073 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
19074
19075 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
19076
19077 * casefiddle.c (casify_region): Don't treat a prefix char as part
19078 of a word when at the beginning.
19079
19080 2002-10-17 Juanma Barranquero <lektu@terra.es>
19081
19082 * lread.c (syms_of_lread): Fix typos.
19083
19084 2002-10-17 Dave Love <fx@gnu.org>
19085
19086 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
19087
19088 2002-10-16 Richard M. Stallman <rms@gnu.org>
19089
19090 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
19091
19092 2002-10-14 Juanma Barranquero <lektu@terra.es>
19093
19094 * w16select.c (syms_of_win16select): Fix docstring for
19095 `selection-coding-system'.
19096
19097 * w32select.c (syms_of_w32select): Likewise.
19098
19099 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
19100
19101 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
19102 a backslash-quoted char.
19103 (scan_lists, scan_sexps_forward): Pacify the compiler.
19104
19105 2002-10-13 Richard M. Stallman <rms@gnu.org>
19106
19107 * window.c (window_scroll): Set immediate_quit.
19108
19109 * print.c (print): When backquote form is the car of a list,
19110 output in old style. Use old_backquote_output to output all
19111 comma forms inside it in old style too.
19112
19113 * buffer.h (struct buffer): Move `undo_list' down below `name'.
19114
19115 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
19116
19117 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
19118 batch mode).
19119
19120 * lread.c (Fload): Doc fix (load-suffixes).
19121
19122 2002-10-10 Steven Tamm <steventamm@mac.com>
19123
19124 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
19125 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
19126 Also switch the default to Qnil from Qt.
19127
19128 2002-10-08 Kenichi Handa <handa@m17n.org>
19129
19130 * coding.c (code_convert_region): When we need more GAP for
19131 conversion, pay attention to the case that coding->produced is not
19132 greater than coding->consumed.
19133
19134 2002-10-07 Richard M. Stallman <rms@gnu.org>
19135
19136 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
19137
19138 2002-10-06 Andrew Choi <akochoi@shaw.ca>
19139
19140 * macmenu.c (mac_menu_show): Add j to count menu items; match
19141 menu_item_selection to it to find selected item.
19142
19143 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19144
19145 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
19146 cases. The correct fix is to pass ReparentNotify to Xt.
19147 The shell widget interprets ConfigureNotify differently depending
19148 on if it has been reparented or not.
19149
19150 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
19151
19152 * editfns.c (Fformat_time_string): Doc fix.
19153
19154 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
19155
19156 * fns.c (Flength): Doc fix.
19157
19158 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
19159
19160 * keyboard.c (keyremap): New struct.
19161 (read_key_sequence): Use it: globally replace keytran_foo with
19162 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
19163 keytran_next and fkey_next to just `next'.
19164
19165 2002-10-04 Steven Tamm <steventamm@mac.com>
19166
19167 * macterm.c (keycode_to_xkeysym_table): Change return to be
19168 treated like an X keysym.
19169
19170 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19171
19172 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
19173 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
19174 This is to also handle x/y changes that occur because of a resize.
19175
19176 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
19177
19178 * frame.c (Vdelete_frame_functions): New variable.
19179 (syms_of_frame): Initialize and defvar it.
19180 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
19181 it when frame's `tooltip' parameter is non-nil.
19182
19183 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
19184
19185 * w32fns.c (x_create_tip_frame): Likewise.
19186
19187 * macfns.c (x_create_tip_frame): Likewise.
19188
19189 2002-09-30 Kenichi Handa <handa@m17n.org>
19190
19191 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
19192 -1 before calling ccl_driver.
19193
19194 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
19195 Only when it is non-nil, handle composition sequence.
19196 (setup_coding_system) <0>: Don't force composition handling.
19197
19198 * Makefile.in (lisp, shortlisp): Add utf-16.elc
19199
19200 2002-09-29 Richard M. Stallman <rms@gnu.org>
19201
19202 * search.c (Freplace_match): Adjust match data for the substitution
19203 just made in the buffer.
19204
19205 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
19206 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
19207
19208 2002-09-27 Richard M. Stallman <rms@gnu.org>
19209
19210 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
19211 (read_char): Use them. Do all exits thru the end of the function.
19212
19213 2002-09-27 Kenichi Handa <handa@etl.go.jp>
19214
19215 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
19216 is nil.
19217
19218 2002-09-26 Richard M. Stallman <rms@gnu.org>
19219
19220 * regex.h (__restrict_arr): Don't define if already defined.
19221
19222 * coding.c (run_pre_post_conversion_on_str):
19223 Save and restore Vdeactivate_mark.
19224
19225 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
19226
19227 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
19228
19229 2002-09-26 Kenichi Handa <handa@etl.go.jp>
19230
19231 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
19232 nonzero, try face's family at first. Otherwise try FAMILY at first.
19233 (choose_face_font): If C is a single byte char or latin-1, call
19234 try_font_list with PREFER_FACE_FAMILY 1.
19235
19236 2002-09-21 Richard M. Stallman <rms@gnu.org>
19237
19238 * window.c (select_window_1): Don't select frame.
19239 Set frame's selected window only when frame itself is selected.
19240 (Fselect_window): Doc fix.
19241
19242 2002-09-18 Kim F. Storm <storm@cua.dk>
19243
19244 * process.c (make-network-process): Doc fix (there is no
19245 network-server-log-function hook).
19246
19247 2002-09-18 Richard M. Stallman <rms@gnu.org>
19248
19249 * print.c (print): Clear out the unused parts of Vprint_number_table.
19250 (syms_of_print): Doc fix for `print-number-table'.
19251
19252 * unexelf.c (unexec): Undo previous change.
19253
19254 2002-09-17 Andreas Schwab <schwab@suse.de>
19255
19256 * m/alpha.h [LINUX]: Don't define DATA_START.
19257
19258 2002-09-16 Dave Love <fx@gnu.org>
19259
19260 * unexelf.c (unexec): Deal with .got, reinstating change from
19261 25-08-1999.
19262
19263 2002-09-13 Richard M. Stallman <rms@gnu.org>
19264
19265 * s/sol2-6.h (UNEXEC): Comment out definition.
19266
19267 * unexsol.c (unexec): Don't downcase first letter of error msg.
19268
19269 * xfaces.c (Fcolor_supported_p): Just one arg is required.
19270
19271 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
19272
19273 * unexsol.c: Include buffer.h, charset.h, coding.h.
19274
19275 2002-09-11 Richard M. Stallman <rms@gnu.org>
19276
19277 * unexsol.c: Don't use report_file_error; do it by hand
19278 using dlerror.
19279
19280 * process.c (wait_reading_process_input, both versions):
19281 Before calling turn_on_atimers, call stop_polling.
19282
19283 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
19284
19285 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
19286 we go to too_near_end, call clear_glyph_matrix.
19287 (redisplay_window): After make_cursor_line_fully_visible,
19288 call clear_glyph_matrix and bypass `goto done'.
19289
19290 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
19291 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
19292
19293 2002-09-10 Richard M. Stallman <rms@gnu.org>
19294
19295 * fileio.c (Fdo_auto_save): Catch error making directory.
19296 Only call push_message if we need to.
19297 At the same time, make an unwind-protect to pop it.
19298 Rename local message_p to old_message_p.
19299 (do_auto_save_make_dir, do_auto_save_eh): New functions.
19300 (do_auto_save_unwind): Don't call pop_message.
19301
19302 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
19303
19304 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
19305
19306 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
19307
19308 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
19309
19310 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
19311
19312 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
19313 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
19314 (re_match_2_internal): Be more careful with infinite loops.
19315
19316 2002-09-10 Kim F. Storm <storm@cua.dk>
19317
19318 * macros.c (end_kbd_macro): New function.
19319 (Fend_kbd_macro): Use it.
19320
19321 * macros.h (end_kbd_macro): Declare extern.
19322
19323 * keyboard.c (Fdiscard_input): If defining keyboard macro,
19324 end and save it instead of discarding it.
19325
19326 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
19327
19328 * s/sol2-6.h: Fix typo. Add comment.
19329
19330 2002-09-09 Richard M. Stallman <rms@gnu.org>
19331
19332 * regex.c (regnum_t): Use signed int, not unsigned int.
19333
19334 * s/sol2-6.h: New file.
19335
19336 * s/sol2-5.h (UNEXEC): Definition deleted.
19337
19338 2002-09-08 Kim F. Storm <storm@cua.dk>
19339
19340 * macros.c (executing_macro_index): Change type to EMACS_INT.
19341 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
19342
19343 * macros.h (executing_macro_index): Change type to EMACS_INT.
19344
19345 2002-09-06 Richard M. Stallman <rms@gnu.org>
19346
19347 * casetab.c (set_case_table): Make canon table point to eqv table.
19348
19349 2002-09-06 Juanma Barranquero <lektu@terra.es>
19350
19351 * coding.c (syms_of_coding): Fix spacing.
19352
19353 * composite.c (Fcompose_region_internal)
19354 (Fcompose_string_internal): Likewise.
19355
19356 * data.c (Flsh): Likewise.
19357
19358 * fontset.c (Fset_fontset_font): Likewise.
19359
19360 * macfns.c (Fx_server_max_request_size): Likewise.
19361
19362 * w16select.c (syms_of_win16select): Likewise.
19363
19364 * w32select.c (syms_of_w32select): Likewise.
19365
19366 * xselect.c (syms_of_xselect): Likewise.
19367
19368 2002-09-05 Richard M. Stallman <rms@gnu.org>
19369
19370 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
19371 call EXTEND_RANGE_TABLE and return a proper value.
19372 (set_image_of_range): Don't call set_image_of_range_1
19373 if no TRANSLATE or if range includes all of Latin-1.
19374 Only call it for the Latin-1 part of the range.
19375 For other cases, make two separate ranges,
19376 one for the original specified characters and one for
19377 their case-conversions.
19378
19379 2002-09-04 Richard M. Stallman <rms@gnu.org>
19380
19381 * s/sol2-5.h (UNEXEC): Use unexsol.o.
19382
19383 * window.c (displayed_window_lines): Correct for one-off bug
19384 in HEIGHT on non-window displays.
19385
19386 * regex.c (set_image_of_range_1): New function.
19387 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
19388 Return a value to indicate running out of memory.
19389 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
19390 (extend_range_table_work_area): New subroutine.
19391 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
19392 Different calling conventions, and used from set_image_of_range{,_1}.
19393 (IMMEDIATE_QUIT_CHECK): Definitions moved.
19394
19395 2002-09-04 Juanma Barranquero <lektu@terra.es>
19396
19397 * makefile.w32-in: All dependencies updated.
19398
19399 2002-09-01 Richard M. Stallman <rms@gnu.org>
19400
19401 * unexsol.c: New file.
19402
19403 * xfns.c (Qbox): Declare external, don't define.
19404
19405 * xdisp.c (redisplay_window) <force-start case>:
19406 If point is on semi-visible last line, reposition
19407 it at previous line.
19408
19409 * alloc.c (display_malloc_warning): Use display-warning.
19410 (malloc_warning_1): Function deleted.
19411
19412 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
19413
19414 * lread.c (read1): Handle #! by skipping the line.
19415
19416 2002-08-31 Richard M. Stallman <rms@gnu.org>
19417
19418 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
19419 Don't include LDFLAGS.
19420 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
19421
19422 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
19423
19424 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
19425 member of x_display_info unless we compile for some window system.
19426
19427 2002-08-31 Kim F. Storm <storm@cua.dk>
19428
19429 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
19430 (get_window_cursor_type): Don't use them.
19431 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
19432
19433 2002-08-30 Kenichi Handa <handa@etl.go.jp>
19434
19435 * xdisp.c (get_next_display_element): Fix previous change.
19436
19437 2002-08-30 Andrew Choi <akochoi@shaw.ca>
19438
19439 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
19440 (expose_window): Use it to fix the display of overlapping
19441 rows (merge code from xterm.c).
19442
19443 * macfns.c (Qbox): Add extern declaration.
19444
19445 2002-08-30 Juanma Barranquero <lektu@terra.es>
19446
19447 * w32fns.c (Qbox): Make extern.
19448 (syms_of_w32fns): Remove initialization of Qbox.
19449
19450 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
19451
19452 * xfns.c (Fx_open_connection): Fix error message.
19453
19454 2002-08-30 Kim F. Storm <storm@cua.dk>
19455
19456 The following changes consolidates the handling of the cursor
19457 type in xdisp.c, moving duplicate code and functionality from
19458 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
19459
19460 * frame.h (enum text_cursor_kinds): Consolidated here.
19461 Added DEFAULT_CURSOR value.
19462 (struct frame) <desired_cursor, cursor_width>
19463 <blink_off_cursor, blink_off_cursor_width>: New fields.
19464 Consolidated from output_x, output_w32 and output_mac structs.
19465 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
19466 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
19467
19468 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
19469 Variables consolidated here.
19470 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
19471 (Vcursor_in_non_selected_windows): Renamed from
19472 cursor_in_non_selected_windows and changed to Lisp_Object.
19473 (syms_of_xdisp): Define and staticpro new and moved variables.
19474 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
19475 consolidated here. Recognize Qhollow setting.
19476 (set_frame_cursor_types): New function to set frame cursor types
19477 based on the frame parameters.
19478 (get_window_cursor_type): New function to calculate new cursor
19479 type and width for the specified window. Based on duplicated
19480 code consolidated here.
19481 Enhancements: cursor-in-non-selected-windows may be a cursor type,
19482 check buffer-local alternate-cursor-type and blink-cursor-alist
19483 before using built-in blink off methods.
19484
19485 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
19486
19487 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
19488 (get_specified_cursor_type, get_window_cursor_type)
19489 (set_frame_cursor_types): Added prototypes.
19490
19491 * macfns.c (x_specified_cursor_type): Removed.
19492 (x_set_cursor_type): Use set_frame_cursor_types.
19493 (Qbar, Qbox): Removed.
19494 (syms_of_macfns): Don't intern or staticpro them.
19495
19496 * macterm.c (x_specified_cursor_type): Remove prototype.
19497 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
19498 (x_display_and_set_cursor): Use get_window_cursor_type.
19499 Remove unused local variables cursor_non_selected, active_cursor.
19500 Redraw cursor if hbar cursor width changes.
19501 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
19502
19503 * macterm.h (enum text_cursor_kinds): Removed.
19504 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
19505 <blink_off_cursor, blink_off_cursor_width>: Members removed.
19506 (FRAME_DESIRED_CURSOR): Macro removed.
19507
19508 * w32fns.c (Vblink_cursor_alist): Removed.
19509 (Qbar, Qhbar, Qbox, Qhollow): Removed.
19510 (syms_of_w32fns): Don't intern, staticpro, or define them.
19511 (x_specified_cursor_type): Removed.
19512 (x_set_cursor_type): Use set_frame_cursor_types.
19513
19514 * w32term.c (x_specified_cursor_type): Remove prototype.
19515 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
19516 (x_display_and_set_cursor): Use get_window_cursor_type.
19517 Remove unused local variables cursor_off_state.
19518 Redraw cursor if hbar cursor width changes.
19519 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
19520
19521 * w32term.h (enum text_cursor_kinds): Removed.
19522 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
19523 <blink_off_cursor, blink_off_cursor_width>: Members removed.
19524 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
19525 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
19526 (struct w32_display_info) <x_highlight_frame>: Renamed member from
19527 w32_highlight_frame.
19528
19529 * xfns.c (Vblink_cursor_alist): Removed.
19530 (Qbar, Qhbar, Qbox, Qhollow): Removed.
19531 (syms_of_xfns): Don't intern, staticpro, or define them.
19532 (x_specified_cursor_type): Removed.
19533 (x_set_cursor_type): Use set_frame_cursor_types.
19534
19535 * xterm.c (x_specified_cursor_type): Remove prototype.
19536 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
19537 (x_display_and_set_cursor): Use get_window_cursor_type.
19538 Remove unused local variables cursor_off_state.
19539 Redraw cursor if hbar cursor width changes.
19540
19541 * xterm.h (enum text_cursor_kinds): Removed.
19542 (struct output_x) <current_cursor, desired_cursor, cursor_width>
19543 <blink_off_cursor, blink_off_cursor_width>: Members removed.
19544 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
19545 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
19546 (x_specified_cursor_type): Remove prototype.
19547
19548 2002-08-28 Richard M. Stallman <rms@gnu.org>
19549
19550 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
19551 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
19552 (Vblink_cursor_alist): New variable.
19553 (syms_of_w32fns): Initialize and defvar it.
19554 (x_specified_cursor_type): Recognize Qbox for filled box.
19555 Exceptions are hollow boxes.
19556 (Qbox, Qhollow): New variables.
19557 (syms_of_w32fns): Initialize and staticpro them.
19558
19559 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
19560 New macros.
19561 (struct w32_output): New fields blink_off_cursor,
19562 blink_off_cursor_width.
19563 (FRAME_CURSOR_WIDTH): New macro.
19564
19565 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
19566 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
19567
19568 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
19569 for bar cursor.
19570
19571 * w32term.c (expose_overlaps): New function.
19572 (expose_window): Use it to fix the display of overlapping rows.
19573
19574 2002-08-28 Simon Josefsson <jas@extundo.com>
19575
19576 * xfns.c (Fx_open_connection): Improve help when X connection
19577 fails, xhost is insecure and xauth is better.
19578
19579 2002-08-28 Juanma Barranquero <lektu@terra.es>
19580
19581 * makefile.w32-in: Add missing dependencies on w32term.h and
19582 composite.h.
19583
19584 * emacs.c (USAGE1): Add missing newline.
19585
19586 2002-08-27 Andrew Choi <akochoi@shaw.ca>
19587
19588 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
19589
19590 2002-08-27 Richard M. Stallman <rms@gnu.org>
19591
19592 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
19593 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
19594 (Vblink_cursor_alist): New variable.
19595 (syms_of_xfns): Initialize and defvar it.
19596 (x_specified_cursor_type): Recognize Qbox for filled box.
19597 Exceptions are hollow boxes.
19598 (Qbox, Qhollow): New variables.
19599 (syms_of_xfns): Initialize and staticpro them.
19600
19601 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
19602 New macros.
19603 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
19604
19605 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
19606 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
19607
19608 * emacs.c (main): Handle --script.
19609 (USAGE1): Mention --script.
19610 (standard_args): Define sort order for --script.
19611
19612 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
19613
19614 * xdisp.c (redisplay_updating_p): Variable removed.
19615 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
19616 New variables.
19617 (init_iterator): Don't free realized faces if
19618 inhibit_free_realized_faces is set.
19619 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
19620 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
19621 initialize Qinhibit_free_realized_faces.
19622
19623 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
19624 when iterator is adding glyphs to a glyph matrix.
19625
19626 2002-08-27 Kenichi Handa <handa@etl.go.jp>
19627
19628 * xdisp.c (get_next_display_element): In unibyte case, don't use
19629 octal form for such eight-bit characters that can be converted to
19630 multibyte char.
19631
19632 2002-08-26 Kim F. Storm <storm@cua.dk>
19633
19634 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
19635 foreground and background colors. From Joe Buehler.
19636
19637 2002-08-26 Miles Bader <miles@gnu.org>
19638
19639 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
19640
19641 2002-08-25 Andrew Choi <akochoi@shaw.ca>
19642
19643 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
19644 defined instead of MAC_OSX.
19645
19646 * s/darwin.h (select): Define select to sys_select only if
19647 HAVE_CARBON is defined.
19648 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
19649 (DONT_REOPEN_PTY): #def it.
19650
19651 * macterm.c (XTread_socket): Remove code to call
19652 SendEventToEventTarget for keys with command modifiers when
19653 mac_command_key_is_meta is nil.
19654
19655 2002-08-24 Andreas Schwab <schwab@suse.de>
19656
19657 * eval.c (Fdefvar): Fix last change.
19658
19659 2002-08-23 Richard M. Stallman <rms@gnu.org>
19660
19661 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
19662 Record variables in load history as (defvar . VAR).
19663 (Fdefvar): Don't record in load history if no initial value.
19664 (Qdefvar): New variable.
19665 (syms_of_eval): Init and staticpro it.
19666
19667 * lread.c (syms_of_lread): Doc fix.
19668 (build_load_history): Use Fmember to see if a definition
19669 is already in the Vload_history element.
19670
19671 * process.c (Fstart_process): Remove /: from program name.
19672
19673 * emacs.c (decode_env_path): Don't add /: if file name handler
19674 has a `safe-magic' property.
19675
19676 * callproc.c (Fcall_process): Remove /: from program name.
19677
19678 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
19679
19680 * regex.c (PATFETCH): Remove the translating fetch.
19681 (PATFETCH_RAW): Rename to PATFETCH.
19682 (set_image_of_range): New fun.
19683 (SET_RANGE_TABLE_WORK_AREA): Use it.
19684 (regex_compile): Don't translate the pattern chars so eagerly.
19685 Only do it when inserting an `exactn' bytecode or when handling
19686 a char-range.
19687 (mutually_exclusive_p): Avoid empty statement.
19688
19689 2002-08-22 Kim F. Storm <storm@cua.dk>
19690
19691 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
19692 end up on a partially visible line; this reverts a specific part
19693 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
19694 display error which has been reported several times now.
19695 However it introduces the problem that changes was supposed to fix.
19696 See my comments in the source if you want to debug this further.
19697
19698 2002-08-20 Kenichi Handa <handa@etl.go.jp>
19699
19700 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
19701
19702 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
19703
19704 * msdos.c (croak): Add `void' to definition.
19705
19706 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
19707 Don't define them, they are defined in msdos.c.
19708
19709 * mem-limits.h [MSDOS]: Declare etext.
19710
19711 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
19712 `const' since CORRECT_DIR_SEPS modifies its target.
19713
19714 2002-08-19 Kim F. Storm <storm@cua.dk>
19715
19716 * keyboard.c (Fclear_this_command_keys): Add optional arg
19717 KEEP-RECORD to avoid clearing lossage when we just want to clear
19718 the current key sequence (kmacro needs this).
19719
19720 2002-08-19 Kenichi Handa <handa@localhost>
19721
19722 * composite.c (run_composition_function): Call FUNC if it is fboundp.
19723
19724 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
19725 cons, return Qnil.
19726
19727 2002-08-17 Richard M. Stallman <rms@gnu.org>
19728
19729 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
19730
19731 * sysdep.c [!VMS]: Include sys/files.h.
19732
19733 * editfns.c (save_restriction_restore): Defend from unchained marker.
19734
19735 * buffer.c (overlays_at): Handle extending vec uniformly.
19736 (overlays_in): Handle extending vec from length 0 as in overlays_at.
19737
19738 2002-08-15 Andrew Choi <akochoi@shaw.ca>
19739
19740 * mac.c (init_mac_osx_environment): New function.
19741
19742 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
19743
19744 2002-08-14 Kim F. Storm <storm@cua.dk>
19745
19746 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
19747 executing macro before appending to it (when used from Lisp).
19748 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
19749 which is called prior to each iteration of macro (for kmacro.el).
19750 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
19751
19752 * lisp.h (Fexecute_kbd_macro): Update prototype.
19753
19754 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
19755
19756 2002-08-14 Kenichi Handa <handa@etl.go.jp>
19757
19758 * xselect.c (QUTF8_STRING): New variable.
19759 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
19760 (x_atom_to_symbol): Likewise.
19761 (x_get_local_selection): New argument local_request. If it is
19762 nonzero, call handler_fn with the second arg nil.
19763 (x_handle_selection_request): Call x_get_local_selection with
19764 local_request 0.
19765 (lisp_data_to_selection_data): Don't encode the string here.
19766 (Fx_get_selection_internal): Call x_get_local_selection with
19767 local_request 1.
19768 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
19769
19770 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
19771
19772 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
19773
19774 2002-08-13 Richard M. Stallman <rms@gnu.org>
19775
19776 * minibuf.c (Fminibufferp): New function.
19777 (syms_of_minibuf): Defsubr it.
19778 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
19779
19780 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
19781
19782 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
19783
19784 2002-08-12 Richard M. Stallman <rms@gnu.org>
19785
19786 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
19787 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
19788 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
19789 already.
19790
19791 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
19792
19793 2002-08-11 Andrew Choi <akochoi@shaw.ca>
19794
19795 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
19796 (Vmac_pass_command_to_system): New variable.
19797 (Vmac_pass_control_to_system): New variable.
19798 (do_mouse_moved): Check wp with is_emacs_window.
19799 (XTread_socket): Check window_ptr with is_emacs_window.
19800 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
19801 events back to Mac Toolbox for processing, depending on values of
19802 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
19803 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
19804 Vmac_pass_control_to_system.
19805
19806 2002-08-10 Kenichi Handa <handa@etl.go.jp>
19807
19808 * coding.c (unencodable_char_position): New function.
19809 (Funencodable_char_position): New function.
19810 (syms_of_coding): Defsubr Funencodable_char_position.
19811
19812 2002-08-10 Andrew Choi <akochoi@shaw.ca>
19813
19814 * mac.c (sys_select) [MAC_OSX]: New function.
19815
19816 * macterm.c (MakeMeTheFrontProcess): New function.
19817 (mac_initialize): Call MakeMeTheFrontProcess.
19818
19819 * s/darwin.h: Define select to sys_select.
19820
19821 2002-08-09 Richard M. Stallman <rms@gnu.org>
19822
19823 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
19824
19825 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
19826
19827 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
19828 end of the buffer.
19829
19830 2002-08-08 Ken Raeburn <raeburn@gnu.org>
19831
19832 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
19833
19834 * puresize.h (BASE_PURESIZE): Increase to 910000.
19835
19836 2002-08-08 Kenichi Handa <handa@etl.go.jp>
19837
19838 * coding.c (Ffind_operation_coding_system): For write-region, if
19839 VISIT is a filename, make it the target.
19840
19841 2002-08-07 Richard M. Stallman <rms@gnu.org>
19842
19843 * alloc.c (mark_object): Detect long lists for debugging.
19844 (mark_object_loop_halt): New variable.
19845
19846 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
19847
19848 * data.c (Fmake_variable_frame_local): Doc fix.
19849
19850 2002-08-01 David Ponce <david@dponce.com>
19851
19852 * w32menu.c (local_heap, local_alloc, local_free): New macros.
19853 (malloc_widget_value, free_widget_value)
19854 (w32_free_submenu_strings): Use them.
19855
19856 (push_submenu_start, push_submenu_end, push_left_right_boundary)
19857 (push_menu_pane, push_menu_item, single_keymap_panes)
19858 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
19859 (single_submenu, set_frame_menubar)
19860 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
19861
19862 (Fx_popup_menu): Don't show pop up menu until preceding one is
19863 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
19864
19865 * w32menu.c: Changes adapted from xmenu.c
19866 (set_frame_menubar): First parse all submenus,
19867 then make widget_value trees from them.
19868 Don't allocate any widget_value objects
19869 until we are done with the parsing.
19870 (parse_single_submenu): New function.
19871 (digest_single_submenu): New function.
19872 (single_submenu): Function deleted, replaced by those two.
19873
19874 2002-08-04 Andrew Choi <akochoi@shaw.ca>
19875
19876 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
19877 returns a valid window pointer before proceeding for keyDown and
19878 autoKey events.
19879
19880 2002-08-03 Andrew Choi <akochoi@shaw.ca>
19881
19882 * macterm.c (USE_CARBON_EVENTS): New macro.
19883 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
19884 (x_iconify_frame): Call CollapseWindow.
19885 (Vmac_reverse_ctrl_meta): New variable.
19886 (Vmac_wheel_button_is_mouse_2): New variable.
19887 (init_mac_drag_n_drop): New function.
19888 (mac_do_receive_drag): New function.
19889 (mac_handle_service_event): New function.
19890 (init_service_handler): New function.
19891 (mac_to_emacs_modifiers): New function.
19892 (mac_event_to_emacs_modifiers): New function.
19893 (mac_get_mouse_btn): New function.
19894 (mac_convert_event_ref): New function.
19895 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
19896 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
19897 mac_get_mouse_btn.
19898 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
19899
19900 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
19901 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
19902 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
19903 TOOL_BAR_EVENT for MAC_OS as well.
19904 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
19905 as for WINDOWS_NT.
19906 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
19907
19908 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
19909
19910 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
19911
19912 * xdisp.c (forward_to_next_line_start): Fix a condition that
19913 lead to a newline being skipped.
19914
19915 2002-08-02 Andrew Choi <akochoi@shaw.ca>
19916
19917 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
19918
19919 2002-08-01 Richard M. Stallman <rms@gnu.org>
19920
19921 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
19922
19923 2002-07-31 Andrew Choi <akochoi@shaw.ca>
19924
19925 * macfns.c: #undef init_process before #define-ing it.
19926
19927 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
19928 HAVE_CARBON is defined.
19929
19930 2002-07-31 Richard M. Stallman <rms@gnu.org>
19931
19932 * xmenu.c (set_frame_menubar): First parse all submenus,
19933 then make widget_value trees from them.
19934 Don't allocate any widget_value objects
19935 until we are done with the parsing.
19936 (parse_single_submenu): New function.
19937 (digest_single_submenu): New function.
19938 (single_submenu): Function deleted, replaced by those two.
19939
19940 2002-07-30 Juanma Barranquero <lektu@terra.es>
19941
19942 * w32proc.c (syms_of_ntproc): Fix docstring of
19943 `w32-get-true-file-attributes'.
19944
19945 2002-07-28 Richard M. Stallman <rms@gnu.org>
19946
19947 * s/hpux8.h (HPUX8): Define this before including hpux.h.
19948 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
19949
19950 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
19951
19952 * keyboard.c (make_lispy_event):
19953 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
19954 Explicitly clear up_modifier in event->modifiers.
19955
19956 2002-07-27 Richard M. Stallman <rms@gnu.org>
19957
19958 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
19959
19960 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
19961 for bar cursor.
19962
19963 2002-07-26 Kenichi Handa <handa@etl.go.jp>
19964
19965 * coding.c (detect_coding_iso2022): While checking a byte sequence
19966 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
19967 it in the normal loop.
19968
19969 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
19970
19971 * xterm.c (expose_overlaps): New function.
19972 (expose_window): Use it to fix the display of overlapping rows.
19973
19974 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
19975
19976 2002-07-23 Ken Raeburn <raeburn@gnu.org>
19977
19978 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
19979 since it only depends on XUINT.
19980
19981 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
19982 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
19983 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
19984 Macros deleted.
19985
19986 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
19987 its value over other approaches.
19988 * sysdep.c (start_of_data): Don't define the function if a macro
19989 form has been defined.
19990
19991 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
19992
19993 * xdisp.c (redisplay_updating_p): New variable.
19994 (init_iterator): Don't free realized faces when
19995 redisplay_updating_p is set.
19996 (redisplay_internal): Set redisplay_updating_p while updating
19997 the display.
19998
19999 2002-07-23 Richard M. Stallman <rms@gnu.org>
20000
20001 * editfns.c (Fmessage): Treat "" like nil.
20002
20003 2002-07-23 Kenichi Handa <handa@etl.go.jp>
20004
20005 * xdisp.c (face_before_or_after_it_pos):
20006 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
20007
20008 2002-07-22 Juanma Barranquero <lektu@terra.es>
20009
20010 * callproc.c (init_callproc) [DOS_NT]:
20011 Initialize Vshared_game_score_directory to nil.
20012 (syms_of_callproc) [DOS_NT]: Likewise.
20013
20014 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
20015
20016 * xdisp.c (display_line): Replace an abort with xassert.
20017
20018 2002-07-21 Richard M. Stallman <rms@gnu.org>
20019
20020 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
20021 and END_UNCHANGED when setting buffer_unchanged_p.
20022 Use current_matrix_up_to_date_p to decide whether to use
20023 try_cursor_movement.
20024
20025 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
20026
20027 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
20028
20029 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
20030 Set to nil if dir does not exist.
20031 (syms_of_callproc): Init unconditionally and simply.
20032
20033 * buffer.c (Fbuffer_list): Doc fix.
20034
20035 2002-07-21 Ken Raeburn <raeburn@gnu.org>
20036
20037 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
20038
20039 * buffer.c (mmap_realloc): When shrinking, make sure number of
20040 pages to unmap is rounded towards zero.
20041
20042 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
20043 (XSETINT): Deleted.
20044
20045 * m/att3b.h (XINT): Don't define.
20046 (VALBITS, VALMASK, XTYPE): Deleted.
20047 (DATA_SEG_BITS): Define.
20048 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
20049 ARRAY_MARK_FLAG): Deleted.
20050 (DATA_SEG_BITS): Define.
20051 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
20052 (DATA_SEG_BITS): Define.
20053
20054 2002-07-20 Richard M. Stallman <rms@gnu.org>
20055
20056 * print.c (print_error_message): New args CONTEXT and CALLER.
20057 Calls changed.
20058
20059 * lisp.h (print_error_message): Declare new args.
20060
20061 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
20062 and CONTEXT to print_error_message, don't print them here.
20063 For a Quit, don't use Vsignaling_function.
20064 Call message_log_maybe_newline.
20065
20066 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
20067
20068 2002-07-20 Kim F. Storm <storm@cua.dk>
20069
20070 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
20071
20072 2002-07-19 Ken Raeburn <raeburn@gnu.org>
20073
20074 * bytecode.c (struct byte_stack): Pointers into byte string now
20075 point to const.
20076 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
20077 const.
20078 * charset.h (BCOPY_SHORT): Source pointer now points to const.
20079 * coding.c (encode_eol, detect_coding, detect_eol):
20080 (decode_coding, encode_coding, detect_coding_system):
20081 Source strings now treated as const.
20082 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
20083 modify Lisp string contents.
20084 * coding.h (decode_coding, encode_coding, detect_coding,
20085 detect_eol): Declarations updated.
20086 * composite.c (compose_chars_in_text): Treat Lisp string contents
20087 as const.
20088 * dispnew.c (safe_bcopy): Source pointer now points to const.
20089 * lisp.h (STRING_COPYIN): New macro.
20090 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
20091 (internal_with_output_to_temp_buffer): Declarations updated.
20092 * print.c (temp_output_buffer_setup):
20093 (internal_with_output_to_temp_buffer): Buffer name argument is now
20094 pointer to const.
20095 * sound.c (struct sound_device): Function pointer field "write"
20096 buffer argument now points to const.
20097 (vox_write): Buffer argument points to const.
20098 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
20099 contents as const.
20100 * sysdep.c (emacs_write): Buffer pointer now const.
20101 * term.c (encode_terminal_code): Buffer pointer now const.
20102 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
20103 (x_face_list_fonts, x_update_menu_appearance):
20104 (hash_string_case_insensitive): Treat Lisp string contents as const.
20105
20106 2002-07-19 Juanma Barranquero <lektu@terra.es>
20107
20108 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
20109
20110 * fileio.c (syms_of_fileio): Likewise.
20111 (Ffile_name_as_directory): Fix argument name in docstring.
20112 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
20113
20114 2002-07-18 Richard M. Stallman <rms@gnu.org>
20115
20116 * data.c (Fdefalias): Doc fix.
20117
20118 2002-07-17 Dave Love <fx@gnu.org>
20119
20120 * intervals.h (text_property_stickiness): Use P_.
20121
20122 * ccl.c: Remove `emacs' conditionals.
20123 (ccl_backtrace_table): Fix size spec.
20124 (ccl_driver): Fix type errors.
20125
20126 2002-07-16 Ken Raeburn <raeburn@gnu.org>
20127
20128 * alloc.c (xstrdup, make_string, make_unibyte_string)
20129 (make_multibyte_string, build_string): String pointer args now
20130 point to const.
20131 * charset.c (find_charset_in_text, c_string_width):
20132 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
20133 * fileio.c (report_file_error):
20134 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
20135 (count_combining_before, count_combining_after, insert_1_both):
20136 (insert, insert_and_inherit, insert_string):
20137 (insert_before_markers, insert_before_markers_and_inherit):
20138 * lread.c (intern, oblookup, hash_string):
20139 * minibuf.c (temp_echo_area_glyphs):
20140 * search.c (fast_c_string_match_ignore_case):
20141 * sysdep.c (emacs_open, set_file_times):
20142 * xfaces.c (xstricmp):
20143 * xdisp.c (store_frame_title, string_char_and_length):
20144 (message_dolog, message2, message2_nolog, set_message): Likewise.
20145 (set_message_1): Cast message string argument to const pointer.
20146 * editfns.c (general_insert_function): Insertion function now
20147 takes pointer to const for input data.
20148 * charset.h (find_charset_in_text, c_string_width):
20149 (parse_str_as_multibyte): Declarations updated.
20150 * dispextern.h (xstricmp): Declaration updated.
20151 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
20152 (count_size_as_multibyte, count_combining_before):
20153 (count_combining_after, insert_1, insert_1_both, message_dolog):
20154 (insert, insert_and_inherit, insert_before_markers)
20155 (insert_before_markers_and_inherit, set_message, message2):
20156 (message2_dolog, build_string, make_string, make_unibyte_string):
20157 (make_multibyte_string, intern, oblookup, report_file_error):
20158 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
20159 (emacs_open, xstrdup): Declarations updated.
20160 * systime.h (set_file_times): Declaration updated.
20161
20162 * charset.c (find_charset_in_text, lisp_string_width): Use const
20163 for pointer to lisp string data.
20164 * charset.h (FETCH_STRING_CHAR_ADVANCE):
20165 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
20166 * coding.c (Ffind_coding_systems_region_interval):
20167 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
20168 (Fmake_directory_internal, Fdelete_directory):
20169 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
20170 * fontset.c (font_family_registry, fs_query_fontset):
20171 (list_fontsets):
20172 * frame.c (Fframe_parameter):
20173 * keyboard.c (cmd_error_internal):
20174 * keymap.c (Fdescribe_buffer_bindings):
20175 * lread.c (complete_filename_p, openp):
20176 * minibuf.c (Fminibuffer_complete_word):
20177 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
20178 (face_before_or_after_it_pos, next_element_from_string):
20179 (get_overlay_arrow_glyph_row, display_mode_element):
20180 (decode_mode_spec_coding):
20181 * xterm.c (same_x_server): Likewise.
20182
20183 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
20184 settings of non-existent fields.
20185
20186 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
20187 copy a lisp value.
20188
20189 * lread.c (Fintern_soft): Use string macros instead of
20190 Lisp_String fields.
20191 * keyboard.c (echo_char, parse_modifiers_uncached):
20192 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
20193 * textprop.c (validate_interval_range, interval_of): Likewise.
20194
20195 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
20196
20197 * charset.h (FETCH_STRING_CHAR_ADVANCE)
20198 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
20199 XSTRING()->size_byte.
20200
20201 * lisp.h (SDATA, SREF): Produce rvalue.
20202 (SSET): New macro.
20203 * alloc.c (make_event_array): Use SSET for storing into a string.
20204 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
20205 a string.
20206 * casefiddle.c (casify_object): Use SSET.
20207 * charset.h (FETCH_STRING_CHAR_ADVANCE)
20208 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
20209 address of string contents.
20210 * data.c (Faref): Use SDATA.
20211 (Faset): Use SDATA, SSET.
20212 * dired.c (directory_files_internal): Use SSET.
20213 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
20214 (Fread_file_name): Use SREF, SSET.
20215 * fns.c (concat): Use SSET.
20216 (concat, Fdelete): Use SDATA.
20217 * insdel.c (insert_from_string_1): Use SDATA.
20218 * keyboard.c (Fevent_convert_list): Use SREF.
20219 * lread.c (Fload): Use SDATA, SSET.
20220 * macfns.c (validate_x_resource_name): Use SSET.
20221 * process.c (status_message): Use SSET.
20222 * search.c (wordify): Use SDATA.
20223 (Freplace_match): Use SREF.
20224 * w32fns.c (validate_x_resource_name): Use SSET.
20225 * xfns.c (validate_x_resource_name): Use SSET.
20226 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
20227
20228 2002-07-16 Richard M. Stallman <rms@gnu.org>
20229
20230 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
20231
20232 * xdisp.c (reconsider_clip_changes):
20233 Don't test prevent_redisplay_optimizations_p.
20234 (redisplay_internal): Test prevent_redisplay_optimizations_p
20235 along with clip_changed in some cases.
20236 (try_window_id): Likewise.
20237 (redisplay_window): New local var buffer_unchanged_p.
20238
20239 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
20240
20241 * process.c (create_process): Test USG_SUBTTY_WORKS.
20242 (process_send_signal): Clean up handling of GID.
20243 Detect errors in ioctls meant to set GID.
20244
20245 * window.c (temp_output_buffer_show):
20246 Don't set prevent_redisplay_optimizations_p.
20247
20248 2002-07-15 Juanma Barranquero <lektu@terra.es>
20249
20250 * eval.c (Fdefvaralias): Add docstring argument.
20251
20252 2002-07-15 Ken Raeburn <raeburn@gnu.org>
20253
20254 * lisp.h (STRING_INTERVALS): Produce rvalue.
20255 (STRING_SET_INTERVALS): New macro.
20256 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
20257 * fns.c (Fstring_as_multibyte): Likewise.
20258 * intervals.c (balance_possible_root_interval, delete_interval)
20259 (create_root_interval, copy_intervals_to_string): Likewise.
20260 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
20261 instead of 0.
20262
20263 2002-07-14 Ken Raeburn <raeburn@gnu.org>
20264
20265 * lisp.h (STRING_SET_CHARS): New macro.
20266 (SCHARS, SBYTES): Produce rvalues.
20267 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
20268 * fns.c (concat): Likewise.
20269 * lread.c (read_vector): Likewise.
20270
20271 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
20272 (STRING_SET_UNIBYTE): New macro.
20273 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
20274 length of -1) changed to use STRING_SET_UNIBYTE.
20275 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
20276 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
20277 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
20278 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
20279 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
20280 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
20281 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
20282 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
20283 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
20284 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
20285 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
20286 STRING_BYTES or indirection changed to SCHARS, SBYTES,
20287 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
20288 unchanged for now.
20289
20290 2002-07-13 Kim F. Storm <storm@cua.dk>
20291
20292 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
20293
20294 2002-07-12 Richard M. Stallman <rms@gnu.org>
20295
20296 * fileio.c (Fwrite_region): Doc fix.
20297
20298 * print.c (print_error_message): Don't handle Vsignaling_function here.
20299
20300 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
20301 (command_loop_1): Avoid certain actions after memory-full error.
20302
20303 * eval.c (Fsignal): Don't call cancel_hourglass.
20304 For a memory-full error, don't call Vsignal_hook_function
20305 and don't set Vsignaling_function.
20306
20307 * process.c (process_send_signal): Add abort call.
20308
20309 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
20310
20311 * keymap.c (Fkey_binding): Fix typo.
20312
20313 2002-07-11 Richard M. Stallman <rms@gnu.org>
20314
20315 * alloc.c (Vmemory_full): New variable.
20316 (Vmemory_signal_data): Rename from memory_signal_data.
20317 Uses changed.
20318 (syms_of_alloc): Defvar them.
20319 (memory_full, buffer_memory_full): Set Vmemory_full.
20320
20321 * lisp.h (Vmemory_full): Add declaration.
20322 (current_column, indented_beyond_p): Change declaration.
20323
20324 * indent.c (last_known_column): Declare as double, not float.
20325 (current_column, current_column_1, string_display_width)
20326 (position_indentation): Return `double'.
20327 (indented_beyond_p): Arg `column' is `double'. Callers changed.
20328
20329 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
20330 (back_to_previous_visible_line_start)
20331 (reseat_at_next_visible_line_start, next_element_from_buffer):
20332 Use `double', not `float', when calling indented_beyond_p.
20333
20334 * s/hpux11.h (BROKEN_SA_RESTART): Define.
20335
20336 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
20337
20338 2002-07-11 Juanma Barranquero <lektu@terra.es>
20339
20340 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
20341 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
20342 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
20343 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
20344 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
20345 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
20346
20347 2002-07-10 Juanma Barranquero <lektu@terra.es>
20348
20349 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
20350 All callers changed.
20351
20352 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
20353
20354 * data.c (Fdefalias): Add an optional `docstring' argument.
20355 (set_internal, Fsetq_default): Use XCAR/XCDR.
20356
20357 * composite.c (HASH_VALUE, HASH_KEY):
20358 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
20359
20360 2002-07-09 Kenichi Handa <handa@etl.go.jp>
20361
20362 * callproc.c (Fcall_process): Fix previous change.
20363
20364 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
20365
20366 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
20367 Add support for hash-tables.
20368 (Ftry_completion): Return t even if the string appears multiple times.
20369
20370 * fns.c (Fnconc): Use XCDR.
20371 (Fprovide): Use CONSP and XCDR.
20372 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
20373 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
20374 (Fmake_hash_table): Accept `:size nil'.
20375 (Fmakehash): Delete: moved to subr.el.
20376 (syms_of_fns): Don't defsubr makehash.
20377
20378 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
20379 (HASH_TABLE_SIZE): Move from fns.c.
20380
20381 2002-07-07 Richard M. Stallman <rms@gnu.org>
20382
20383 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
20384 Instead just return 0 when there is something to be done.
20385 (try_scrolling): If make_cursor_line_fully_visible returns 0,
20386 retry scrolling as if cursor were off the bottom.
20387 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
20388 return CURSOR_MOVEMENT_MUST_SCROLL.
20389 (redisplay_window): If make_cursor_line_fully_visible returns 0,
20390 go to try_to_scroll.
20391
20392 * buffer.c (Fbuffer_local_value): Store current value into its binding
20393 so we get the up-to-date value for the binding that is loaded.
20394
20395 * eval.c (Fdefmacro): Doc fix.
20396
20397 2002-07-05 Dave Love <fx@gnu.org>
20398
20399 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
20400 correctly.
20401
20402 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
20403 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
20404 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
20405 CCL_LookupCharConstTbl.
20406 (syms_of_ccl): Defvar translation-hash-table-vector.
20407
20408 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20409
20410 * xdisp.c: Remove unused variable `face'.
20411
20412 2002-07-04 Juanma Barranquero <lektu@terra.es>
20413
20414 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
20415 obsolescence information.
20416
20417 2002-07-03 Andrew Choi <akochoi@shaw.ca>
20418
20419 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
20420 pattern. Search cache first.
20421 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
20422 for Japanese font.
20423 (XLoadQueryFont): Use it.
20424
20425 2002-07-02 Richard M. Stallman <rms@gnu.org>
20426
20427 * keymap.c (Fdefine_key): Doc fix.
20428
20429 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
20430
20431 2002-07-02 Juanma Barranquero <lektu@terra.es>
20432
20433 * keymap.c (syms_of_keymap): Fix typo.
20434
20435 2002-07-01 Andrew Choi <akochoi@shaw.ca>
20436
20437 * s/darwin.h: Define POSIX_SIGNALS.
20438
20439 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
20440 and FSRefMakePath to convert FSSpec returned with Apple Event to
20441 Posix pathname.
20442 (mac_initialize) [TARGET_API_MAC_CARBON]:
20443 Call init_required_apple_events and disable the `Quit' menu item
20444 provided automatically by the Carbon Toolbox.
20445
20446 2002-07-01 Dave Love <fx@gnu.org>
20447
20448 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
20449 for K&R.
20450
20451 * xterm.c: Fix prototype for K&R.
20452
20453 * term.c (costs_set): Declare static, non-initialized for pcc.
20454
20455 2002-07-01 Richard M. Stallman <rms@gnu.org>
20456
20457 * keyboard.c (timer_last_idleness_start_time): New variable.
20458 (timer_start_idle): Set that.
20459 (read_key_sequence): Use that to reset timer_idleness_start_time
20460 to previous value.
20461
20462 * window.c (Frecenter): With arg, set optional_new_start.
20463
20464 * xdisp.c (redisplay_internal): Make optional_new_start really work.
20465
20466 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
20467 buffer for completion.
20468
20469 2002-06-29 Ken Raeburn <raeburn@gnu.org>
20470
20471 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
20472
20473 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20474
20475 * keyboard.c (readable_filtered_events): New function that filters
20476 FOCUS_IN_EVENT depending on parameter.
20477 (readable_events): Calls readable_filtered_events, not filtering
20478 FOCUS_IN_EVENT.
20479 (get_filtered_input_pending): New function, filtering parameter passed
20480 to readable_filtered_events.
20481 (get_input_pending): Calls get_filtered_input_pending, not filtering
20482 FOCUS_IN_EVENT.
20483 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
20484 FOCUS_IN_EVENT.
20485
20486 * xterm.h (struct x_output): Add focus_state.
20487
20488 * xterm.c (x_focus_changed): New function.
20489 (x_detect_focus_change): New function.
20490 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
20491 EnterNotify and LeaveNotify to track X focus changes.
20492
20493 2002-06-28 Andreas Schwab <schwab@suse.de>
20494
20495 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
20496
20497 2002-06-27 Kim F. Storm <storm@cua.dk>
20498
20499 * xdisp.c (mode_line_string_list, mode_line_string_face)
20500 (mode_line_string_face_prop): New variables.
20501 (store_mode_line_string): New function.
20502 (display_mode_element): Use store_mode_line_string to
20503 add mode-line string elements to mode_line_string_list
20504 when mode_line_string_list is non-nil.
20505 (Fformat_mode_line): Now returns propertized string by
20506 default. New arg NO-PROPS to ignore properties.
20507 (decode_mode_spec): Only add two dashes for %- in propertized
20508 mode-line string.
20509 (syms_of_xdisp): Init and staticpro mode_line_string_list.
20510
20511 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
20512
20513 * minibuf.c (minibuffer_completion_contents): Add return type.
20514
20515 2002-06-27 Juanma Barranquero <lektu@terra.es>
20516
20517 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
20518
20519 2002-06-26 Juanma Barranquero <lektu@terra.es>
20520
20521 * fileio.c (read_file_name_cleanup): Add missing return.
20522
20523 2002-06-26 Richard M. Stallman <rms@gnu.org>
20524
20525 * window.c (Frecenter): Don't set force_start flag.
20526
20527 * minibuf.c (do_completion, Fminibuffer_complete_word)
20528 (Fminibuffer_completion_help): Complete just the text before point.
20529 (minibuffer_completion_contents): New function.
20530
20531 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
20532
20533 * frame.c (frames_bury_buffer): Function deleted.
20534
20535 2002-06-25 Miles Bader <miles@gnu.org>
20536
20537 * callint.c (Fcall_interactively): When checking to see if doprnt hit
20538 the end of callint_message, allow for a terminating '\0'.
20539
20540 2002-06-24 Juanma Barranquero <lektu@terra.es>
20541
20542 * w32select.c: Include composite.h.
20543
20544 * w16select.c: Likewise.
20545
20546 2002-06-24 Kenichi Handa <handa@etl.go.jp>
20547
20548 * callproc.c (Fcall_process): If code detection is necessary,
20549 call detect_coding directly here.
20550
20551 * coding.c (detect_eol): Preserve coding->cmp_data.
20552
20553 * w16select.c (Fw16_get_clipboard_data):
20554 * w32fns.c (w32_to_x_font):
20555 * w32select.c (Fw32_get_clipboard_data):
20556 * xselect.c (selection_data_to_lisp_data):
20557 * xterm.c (XTread_socket): Disable composition handling.
20558
20559 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
20560
20561 * print.c (temp_output_buffer_setup): Kill all local variables.
20562
20563 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
20564
20565 * lread.c (Fread): Remove redundant and imprecise declaration.
20566
20567 * xfns.c (check_x_display_info): Use check_x_frame.
20568
20569 * .gdbinit (xprintsym): Use the new `xname' field.
20570 (xsymbol): Use it.
20571
20572 2002-06-22 Jason Rumney <jasonr@gnu.org>
20573
20574 * w32fns.c (file_dialog_callback): New function.
20575 (Fx_file_dialog): Allow selecting directories as well as files.
20576
20577 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20578
20579 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
20580 OpenBSD. Add support for mipseb-*-netbsd* machines.
20581
20582 2002-06-17 Andrew Choi <akochoi@shaw.ca>
20583
20584 * macterm.c (mac_scroll_area): Set foreground and backcolor to
20585 black and white before scrolling. Restore frame background and
20586 foreground color after scrolling.
20587 (do_window_update): Call XClearWindow before calling expose_frame.
20588 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
20589 FRAME_FOREGROUND_PIXEL of frame.
20590
20591 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
20592 test Mac command key as <ALT> key.
20593
20594 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
20595
20596 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
20597
20598 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
20599 Lookup keys in function-key-map immediately so that key-translation-map
20600 can be applied earlier.
20601 Remove function_key_possible and key_translation_possible, replaced
20602 by checking `keytran_start < t'.
20603
20604 * .gdbinit (xsymbol): Use the new `xname' field.
20605
20606 2002-06-17 Andrew Choi <akochoi@shaw.ca>
20607
20608 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
20609 test Mac command key as <ALT> key.
20610
20611 * mac.c (do_applescript): Call initialize_applescript if necessary
20612 when first called. Dispose of result_desc only when there is no error.
20613 (Fdo_applescript): Use %d format specifier instead of %ld.
20614
20615 2002-06-16 Andrew Choi <akochoi@shaw.ca>
20616
20617 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
20618 of FrontWindow for cases keyDown and autoKey.
20619
20620 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
20621 Vdefault_fontset to Monaco with mac-roman coding.
20622
20623 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
20624 init_process before and after inclusion of Carbon/Carbon.h, resp.
20625
20626 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
20627 cursor_gc.
20628 (add_font_name_table_entry): New function.
20629 (init_font_name_table): Use add_font_name_table_entry; add italic,
20630 bold, and bold-italic entries for truetype fonts.
20631
20632 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
20633 for Mac too.
20634 (try_font_list) [MAC_OS]: If no font matches given registry, try
20635 fonts with any registry matching face_family.
20636 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
20637
20638 * s/darwin.h: If autoconf detects the Ncurses library, define
20639 LIBS_TERMCAP to -lncurses to use it.
20640
20641 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
20642
20643 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
20644
20645 2002-06-15 Richard M. Stallman <rms@gnu.org>
20646
20647 * window.c (Fset_window_configuration): Explicitly preserve
20648 the point value that new_current_buffer had at the start.
20649
20650 2002-06-14 Juanma Barranquero <lektu@terra.es>
20651
20652 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
20653 Fix typos.
20654
20655 2002-06-14 Kim F. Storm <storm@cua.dk>
20656
20657 * insdel.c (insert_1_both, insert_from_string_1)
20658 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
20659 insert happened in the end_unchanged region. Otherwise, the
20660 redisplay may be confused and duplicate the last line in the
20661 buffer [seen after save-buffer when require-final-newline==t].
20662
20663 2002-06-13 Jason Rumney <jasonr@gnu.org>
20664
20665 * w32.c (init_environment): Remove EMACSLOCKDIR.
20666 (stat): Swap _S_IFDIR and _S_IFREG.
20667
20668 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20669
20670 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
20671 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
20672 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
20673 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
20674 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
20675 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
20676 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
20677 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
20678 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
20679 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
20680 SELECTION_REQUEST_EVENT, selection_clear_event to
20681 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
20682 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
20683 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
20684 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
20685 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
20686 no_event to NO_EVENT.
20687
20688 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20689
20690 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
20691
20692 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
20693
20694 * intervals.c (textget): Don't forget to `return'.
20695 (lookup_char_property): Use XCAR/XCDR.
20696
20697 2002-06-12 Juanma Barranquero <lektu@terra.es>
20698
20699 * xdisp.c (Fformat_mode_line): Fix typo.
20700
20701 2002-06-12 Kim F. Storm <storm@cua.dk>
20702
20703 * xdisp.c (Fformat_mode_line): New function.
20704 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
20705 (store_frame_title_char, store_frame_title): Use unconditionally.
20706 (init_xdisp): Defsubr Fformat_mode_line.
20707 Initialize frame_title_buf etc. unconditionally.
20708
20709 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
20710
20711 * keyboard.c (read_key_sequence):
20712 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
20713 things through those maps after downcasing events.
20714 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
20715 applies after function-key-map.
20716 Make sure that keytran can be done in the middle in the sequence.
20717 Be careful not to throw away events past the one we downcase.
20718
20719 * lread.c (read_integer): Remove unused var `tem'.
20720 (read1): Fix int/Lisp_Object mixup.
20721
20722 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
20723
20724 2002-06-11 Richard M. Stallman <rms@gnu.org>
20725
20726 * keyboard.c (readable_events): Ignore any number of
20727 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
20728
20729 2002-06-09 Miles Bader <miles@gnu.org>
20730
20731 * xfaces.c (Ftty_supports_face_attributes_p): New function.
20732 (parse_rgb_list, tty_lookup_color): New functions.
20733 (tty_defined_color): Use `tty_lookup_color' to do all the work.
20734 (color_distance, Fcolor_distance): New functions.
20735 (TTY_SAME_COLOR_THRESHOLD): New macro.
20736 (Qtty_color_standard_values): New variable.
20737 (syms_of_xfaces): Initialize new vars & functions.
20738
20739 2002-06-08 Colin Walters <walters@verbum.org>
20740
20741 * textprop.c (Vchar_property_alias_alist): New variable.
20742 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
20743
20744 * intervals.c (lookup_char_property): New function for looking up
20745 overlay and text properties, created from textget.
20746 (textget): Use it.
20747
20748 * intervals.h (lookup_char_property): Declare.
20749 (Vchar_property_alias_alist): Declare.
20750
20751 * buffer.c (Foverlay_get): Use lookup_char_property.
20752
20753 2002-06-07 Sam Steingold <sds@gnu.org>
20754
20755 * xselect.c (lisp_data_to_selection_data): Fix last change:
20756 *data_ret is not a Lisp string, while unibyte_string is.
20757
20758 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
20759
20760 * xselect.c (lisp_data_to_selection_data): Fix last change:
20761 set size_ret.
20762
20763 2002-06-07 Andreas Schwab <schwab@suse.de>
20764
20765 * m/amdx86-64.h: New file.
20766
20767 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
20768
20769 * fns.c (Fstring_make_unibyte): Doc fix.
20770
20771 * xselect.c (lisp_data_to_selection_data): If the requested type
20772 is STRING, call string_make_unibyte to encode the selected text
20773 as a string.
20774
20775 * window.c (Fset_window_hscroll): Doc fix.
20776
20777 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20778
20779 * fileio.c (choose_write_coding_system):
20780 Call select-safe-coding-system properly.
20781
20782 2002-06-03 Richard M. Stallman <rms@gnu.org>
20783
20784 * xdisp.c (message_with_string): Error if STRING is not a string.
20785
20786 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
20787
20788 * fileio.c (choose_write_coding_system): Pass FILE arg to
20789 Vselect_safe_coding_system_function.
20790
20791 2002-06-03 Ken Raeburn <raeburn@gnu.org>
20792
20793 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
20794
20795 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
20796
20797 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
20798 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
20799 * keymap.c (describe_command): Likewise.
20800 * minibuf.c (read_minibuf): Likewise.
20801
20802 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
20803 Cast `current_column' return value to int.
20804 (back_to_previous_visible_line_start)
20805 (reseat_at_next_visible_line_start, next_element_from_buffer):
20806 Cast `indented_beyond_p' 3rd arg to float.
20807
20808 * indent.c (last_known_column): Now a float.
20809 (current_column_1, position_indentation, current_column)
20810 (string_display_width): Return float.
20811 (Fcurrent_column): Cast `current_column' return value to int.
20812 (Fcurrent_indentation): Cast `position_indentation' retval to int.
20813 (indented_beyond_p): Third arg now a float.
20814 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
20815
20816 * lisp.h (current_column): Now returns float.
20817 (indented_beyond_p): 3rd arg now a float.
20818
20819 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
20820
20821 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
20822 is Qcompound_text_with_extensions.
20823
20824 * xselect.c (lisp_data_to_selection_data): Always set selection
20825 type as string if x_encode_text returns streingp non-NULL.
20826
20827 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
20828
20829 2002-05-30 Richard M. Stallman <rms@gnu.org>
20830
20831 * window.c (Fset_window_configuration): Correct the handling
20832 of point in current buffer, to work with multiple windows.
20833
20834 2002-05-29 Colin Walters <walters@verbum.org>
20835
20836 * lread.c (Fread_from_string): Don't depend on order of evaluation
20837 for C function parameters.
20838
20839 2002-05-28 Richard M. Stallman <rms@gnu.org>
20840
20841 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
20842 way for blinked-off state and for a nonselected window.
20843
20844 * window.c (window_scroll_pixel_based): Don't call Fbolp;
20845 instead, see if the new start pos is at beginning of line.
20846
20847 * fileio.c (Fwrite_region): If START is a string, don't
20848 make any annotations.
20849
20850 * eval.c (syms_of_eval): Doc fix.
20851
20852 2002-05-28 Colin Walters <walters@debian.org>
20853
20854 * emacs.c (USAGE1): Add --no-splash.
20855 (standard_args): Ditto.
20856
20857 2002-05-28 Colin Walters <walters@gnu.org>
20858
20859 * lread.c (readchar_count): New variable.
20860 (readchar): Increment it.
20861 (unreadchar): Decrement it.
20862 (read_multibyte): Decrement it.
20863 (Vread_with_symbol_positions): New variable.
20864 (Vread_symbol_positions_list): New variable.
20865 (read_internal_start): New function, created from Fread and
20866 Fread_from_string. Handle Vread_symbol_positions_list and
20867 Vread_with_symbol_positions.
20868 (readevalloop, Fread, Fread_from_string): Use it.
20869 (read1): Use readchar_count to add symbol positions to
20870 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
20871 (syms_of_lread): DEFVAR_LISP and initialize them.
20872
20873 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
20874 (substitute_object_recurse, substitute_object_in_subtree)
20875 (substitute_in_interval): Prototype.
20876 (read_multibyte): Return c if it's less than zero.
20877
20878 2002-05-28 Kim F. Storm <storm@cua.dk>
20879
20880 * fileio.c (Fread_file_name_internal): Added brute-force
20881 speed up for using predicate file-directory-p.
20882
20883 2002-05-28 Kim F. Storm <storm@cua.dk>
20884
20885 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
20886 New variables.
20887 (syms_of_fileio): DEFVAR_LISP them.
20888 (read_file_name_cleanup): New unwind function.
20889 (Fread_file_name_internal): Only return completions satifying
20890 Vread_file_name_predicate. Temporarily unwind protect and rebind
20891 default-directory while checking completions against the predicate.
20892 (Fread_file_name): Added PREDICATE argument. Specbind it to
20893 Vread_file_name_predicate during completion.
20894 Call Vread_file_name_function to read the file name if non-nil.
20895
20896 * lisp.h (Fread_file_name): Now has 6 args.
20897
20898 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
20899 predicate for Fread_file_name when reading directory name.
20900 Supply Qnil for predicate in other calls to Fread_file_name.
20901
20902 2002-05-26 Miles Bader <miles@gnu.org>
20903
20904 * term.c (tty_capable_p): New function.
20905 * dispextern.h (tty_capable_p): New function declaration.
20906 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
20907 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
20908
20909 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
20910
20911 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
20912 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
20913 (Vwrite_region_annotate_functions): Docstring fix.
20914
20915 2002-05-23 Kim F. Storm <storm@cua.dk>
20916
20917 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
20918 phys_cursor's hpos is overwritten. This is still not completely
20919 correct, as it doesn't really make sense to use hpos at all to
20920 get the cursor glyph (as that is relative to the width of the
20921 characters on the line, which may have changed during the update).
20922
20923 2002-05-22 Jason Rumney <jasonr@gnu.org>
20924
20925 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
20926 Lisp_Object.
20927 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
20928 Use modified enumfont_t struct.
20929
20930 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
20931
20932 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
20933 Handle the `hbar' cursor type.
20934 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
20935
20936 * w32fns.c (Qhbar): New variable.
20937 (x_specified_cursor_type): Use it.
20938
20939 2002-05-21 Ken Raeburn <raeburn@gnu.org>
20940
20941 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
20942 now, when the address is needed.
20943
20944 2002-05-21 Colin Walters <walters@gnu.org>
20945
20946 * Makefile.in (shortlisp): Add font-core.el.
20947
20948 2002-05-20 Richard M. Stallman <rms@gnu.org>
20949
20950 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
20951
20952 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
20953 equivalent key bindings here.
20954
20955 2002-05-20 Ken Raeburn <raeburn@gnu.org>
20956
20957 Change symbol structure to contain a lisp object for the symbol
20958 name:
20959 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
20960 object field named "xname".
20961 (SYMBOL_NAME): New macro.
20962 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
20963 name field.
20964 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
20965 (mark_object, gc_sweep): Use symbol xname field and XSTRING
20966 instead of name field.
20967 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
20968 SYMBOL_NAME instead of XSYMBOL and name field.
20969 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
20970 instead of XSYMBOL and name field.
20971 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
20972 and SYMBOL_NAME instead of XSYMBOL and name field.
20973 * coding.c (Fread_coding_system, code_convert_region1)
20974 (code_convert_string1, code_convert_string_norecord)
20975 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
20976 XSYMBOL and name field.
20977 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
20978 (Fmake_variable_buffer_local, Fmake_local_variable)
20979 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
20980 of XSYMBOL and name field.
20981 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
20982 XSYMBOL and name field.
20983 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
20984 instead of XSYMBOL and name field.
20985 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
20986 XSYMBOL and name field.
20987 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
20988 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
20989 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
20990 instead of XSYMBOL and name field.
20991 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
20992 (parse_modifiers, apply_modifiers, Fevent_convert_list)
20993 (parse_solitary_modifier, Fexecute_extended_command):
20994 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
20995 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
20996 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
20997 of XSYMBOL and name field.
20998 (describe_command, describe_translation): Use SYMBOL_NAME and
20999 assignment instead of XSYMBOL and name field and XSETSTRING.
21000 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
21001 instead of XSYMBOL and name field.
21002 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
21003 name field and XSETSTRING.
21004 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
21005 of XSYMBOL and name field.
21006 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
21007 assignment instead of XSYMBOL and name field and XSETSTRING.
21008 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
21009 XSTRING instead of XSYMBOL and name field.
21010 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
21011 and XSTRING instead of XSYMBOL and name field.
21012 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
21013 and XSTRING instead of XSYMBOL and name field.
21014 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
21015 XSTRING instead of XSYMBOL and name field.
21016 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
21017 of XSYMBOL and name field.
21018 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
21019 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
21020
21021 2002-05-19 Ken Raeburn <raeburn@gnu.org>
21022
21023 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
21024 and XCDR real rvalues in most configurations.
21025
21026 * buffer.c (fix_overlays_in_range, fix_overlays_before):
21027 Don't take the address of the cdr part of a cons cell; instead, track
21028 the parent cell and call XSETCDR, or set the variable for the head
21029 of the list if we haven't started down the list yet.
21030
21031 2002-05-19 Richard M. Stallman <rms@gnu.org>
21032
21033 * doc.c (reread_doc_file): Don't ask for confirmation.
21034
21035 2002-05-18 Jason Rumney <jasonr@gnu.org>
21036
21037 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
21038 (xbm_load_image): Use it.
21039 (xbm_load): Ditto.
21040 (xbm_read_bitmap_data): Reverted to xfns.c version.
21041 From David Ponce <david@dponce.com>.
21042
21043 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
21044
21045 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
21046 2.02 and later.
21047
21048 2002-05-16 Juanma Barranquero <lektu@terra.es>
21049
21050 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
21051
21052 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
21053
21054 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
21055 meaningful test.
21056 (read_char_minibuf_menu_prompt): Fix typo.
21057
21058 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
21059
21060 * eval.c (Fcommandp): Doc fix.
21061
21062 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
21063
21064 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
21065 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
21066 (Fset_keymap_parent): Gcpro a bit more.
21067 (access_keymap): Gcpro around meta_map call and around the main loop.
21068 (get_keyelt): Gcpro when following indirect references.
21069 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
21070 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
21071 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
21072 Remove useless ad-hoc remap code.
21073
21074 2002-05-13 Richard M. Stallman <rms@gnu.org>
21075
21076 * search.c (search_buffer): Give up boyer moore search if inverse
21077 translation change charset_base.
21078
21079 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
21080
21081 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
21082 characters is carried over from the previous block of text, adjust
21083 coding->produced to account for the extra character.
21084
21085 2002-05-11 Andreas Schwab <schwab@suse.de>
21086
21087 * coding.c (intersection): Keep the elements of the returned list
21088 in the same order as in the first list.
21089
21090 2002-05-11 Kim F. Storm <storm@cua.dk>
21091
21092 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
21093 only update cmm_size if realloc actually succeeds.
21094 Testing with initial size of 2 elements revealed that using
21095 realloc on GNU/Linux would cause a random trap in xmalloc
21096 later on, so I rewrote the code to use malloc/bcopy/free instead
21097 of realloc.
21098
21099 2002-05-10 Jason Rumney <jasonr@gnu.org>
21100
21101 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
21102
21103 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
21104
21105 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
21106 parens, to ensure correct evaluation order.
21107
21108 2002-05-10 Kim F. Storm <storm@cua.dk>
21109
21110 * keymap.c (Vemulation_mode_map_alists): New variable.
21111 (syms_of_keymap): DEFVAR_LISP it.
21112 (current_minor_maps): Process keymap alists in that list before
21113 minor-mode-overriding-map-alist and minor-mode-map-alist.
21114
21115 2002-05-09 Richard M. Stallman <rms@gnu.org>
21116
21117 * search.c (Freplace_match): Doc fix.
21118
21119 2002-05-09 Kim F. Storm <storm@cua.dk>
21120
21121 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
21122 Enlarge cursor rectangle drawn around image with non-zero relief.
21123
21124 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
21125 Enlarge cursor rectangle drawn around image with non-zero relief.
21126
21127 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
21128 Enlarge cursor rectangle drawn around image with non-zero relief.
21129
21130 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
21131
21132 * xselect.c (lisp_data_to_selection_data): Don't set selection
21133 type if comes from the Lisp object's car. If the selection
21134 contains a pure ASCII text, always return QSTRING as its type.
21135
21136 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21137
21138 * mac.c (mac-cut-function): Doc fix.
21139
21140 2002-05-05 Richard M. Stallman <rms@gnu.org>
21141
21142 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
21143
21144 2002-05-04 Jason Rumney <jasonr@gnu.org>
21145
21146 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
21147 for event-click-count.
21148
21149 * process.c (init_process): Only add server subfeature if we can
21150 use non-blocking I/O.
21151
21152 2002-05-04 Andrew Choi <akochoi@shaw.ca>
21153
21154 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
21155 repeatedly.
21156
21157 2002-05-03 Jason Rumney <jasonr@gnu.org>
21158
21159 * process.c (Fmake_network_process): Only support server sockets
21160 when we can make them non-blocking.
21161
21162 * s/ms-w32.h (HAVE_SELECT): Define.
21163
21164 * w32.h (FILE_NDELAY): New flag.
21165
21166 * w32.c (sys_getpeername, fcntl): New functions.
21167 (_sys_read_ahead): Temporarily block on non-blocking sockets.
21168
21169 * w32proc.c: Include sys/file.h.
21170
21171 2002-05-03 Colin Walters <walters@verbum.org>
21172
21173 * callproc.c (Vgame_score_directory): Renamed to
21174 Vshared_game_score_directory.
21175
21176 2002-04-30 Richard M. Stallman <rms@gnu.org>
21177
21178 * s/gnu.h [emacs]: Include stdio.h.
21179 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
21180
21181 * eval.c (do_autoload): Error if called while preparing to dump.
21182
21183 * fns.c (Frequire): Error if need to load while preparing to dump.
21184
21185 2002-04-28 Colin Walters <walters@verbum.org>
21186
21187 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
21188 Default to "~/.emacs.d/games".
21189
21190 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
21191
21192 * lread.c (openp): Change arg exec_only to predicate.
21193 (build_load_history): Use XCAR/XCDR.
21194 (Flocate_file_internal): New fun.
21195 (syms_of_lread): Defsubr it.
21196 (Fload): Update call to openp.
21197
21198 * lisp.h (openp): Update prototype.
21199
21200 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
21201 * w32proc.c (sys_spawnve):
21202 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
21203 * w32.c (check_windows_init_file):
21204 * sound.c (Fplay_sound_internal):
21205 * process.c (Fstart_process):
21206 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
21207 * mac.c (run_mac_command):
21208 * emacs.c (init_cmdargs):
21209 * callproc.c (Fcall_process): Update call to openp.
21210
21211 * textprop.c (remove_properties): Don't use XCAR without CONSP.
21212
21213 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
21214
21215 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21216
21217 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
21218 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
21219
21220 2002-04-28 Richard M. Stallman <rms@gnu.org>
21221
21222 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
21223
21224 * eval.c (Fcommandp): New arg for_call_interactively.
21225 * lisp.h (Fcommandp): Declare new arg.
21226
21227 2002-04-28 Jason Rumney <jasonr@gnu.org>
21228
21229 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
21230
21231 * w32.c (stat, fstat): Use file index information to generate
21232 inodes for directories where available.
21233
21234 2002-04-26 Andrew Choi <akochoi@shaw.ca>
21235
21236 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
21237 [HAVE_CARBON]: Include Mac object files.
21238
21239 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
21240 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
21241 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
21242 MAC_OSX, and MAC_OS instead of macintosh.
21243
21244 * editfns.c [MAC_OS8]: Include stdio.h.
21245
21246 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
21247
21248 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
21249 Apple Monaco.
21250
21251 * process.c (QCfamily, QCfilte): Declare extern.
21252 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
21253 calling select.
21254
21255 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
21256
21257 * tparam.c [MAC_OSX]: Don't define BC and UP.
21258
21259 * config.in [HAVE_CARBON]: Add.
21260
21261 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
21262 Move here from mac/src and mac/inc.
21263
21264 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
21265
21266 2002-04-26 Gerd Moellmann <gerd@gnu.org>
21267
21268 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
21269 Compute phys_cursor_width from the x position returned
21270 by x_draw_glyhs, which is cheaper.
21271 (x_display_and_set_cursor): Compute the buffer-local value
21272 of `cursor-in-non-selected-windows' only when needed.
21273
21274 2002-04-25 Gerd Moellmann <gerd@gnu.org>
21275
21276 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
21277 cursor on a stretch glyph has a width that depends on
21278 x_stretch_cursor_p.
21279
21280 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21281
21282 * abbrev.c (abbrev-start-location): Doc fix.
21283
21284 * indent.c (Fvertical_motion): Fix last change.
21285
21286 2002-04-25 Gerd Moellmann <gerd@gnu.org>
21287
21288 * indent.c (Fvertical_motion): Move to the start of the line
21289 containing PT before moving up or down.
21290
21291 2002-04-24 Gerd Moellmann <gerd@gnu.org>
21292
21293 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
21294 case of writing a whole row, more or less analogous to the case of
21295 writing only parts of a row.
21296
21297 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
21298 0 for NO_CURSOR.
21299
21300 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
21301
21302 2002-04-23 Colin Walters <walters@verbum.org>
21303
21304 * buffer.c (syms_of_buffer): Doc fix.
21305
21306 2002-04-23 Gerd Moellmann <gerd@gnu.org>
21307
21308 * xterm.c (notice_overwritten_cursor): Handle the special case
21309 of the cursor being in the first blank non-text line at the
21310 end of a window.
21311
21312 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
21313 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
21314 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
21315 bar cursors only, to make phys_cursor_width contain what its name
21316 suggests.
21317 (notice_overwritten_cursor): Consider the cursor image erased if
21318 the output area intersects the cursor image in y-direction.
21319
21320 2002-04-23 Simon Marshall <simon@gnu.org>
21321
21322 * xfns.c (x_set_mouse_color): Change default for cross_cursor
21323 to XC_hand2.
21324
21325 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21326
21327 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
21328
21329 2002-04-22 Kim F. Storm <storm@cua.dk>
21330
21331 * textprop.c (remove_properties): Fixed trap for malformed plist.
21332
21333 2002-04-22 Richard M. Stallman <rms@gnu.org>
21334
21335 * cmds.c (Fend_of_line): Handle intangible text in mid line.
21336
21337 * window.c (make_window): Initialize height_fixed_p,
21338 last_cursor_off_p, and p->cursor_off_p slots.
21339
21340 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21341
21342 * fns.c (use-dialog-box): Doc fix.
21343
21344 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21345
21346 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
21347 variables `row', `i' and `area'.
21348 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
21349 toolkit library.
21350
21351 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
21352
21353 * xfaces.c (clear_font_table): Don't free the default font of
21354 a frame even if it's on another display.
21355 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
21356 that could be Qt.
21357
21358 2002-04-19 Juanma Barranquero <lektu@terra.es>
21359
21360 * indent.c (Fmove_to_column): Remove unused local variable
21361 `next_boundary_byte'.
21362 (current_column_1): Likewise.
21363
21364 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
21365
21366 * msdos.c (Qhbar): New variable.
21367 (syms_of_msdos): Intern and staticpro it.
21368 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
21369 cursor type.
21370
21371 2002-04-19 Dave Lambert <dlambert@acm.org>
21372
21373 Theses change implement an underscore-like (`hbar') cursor.
21374
21375 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
21376
21377 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
21378 Handle the `hbar' cursor type.
21379 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
21380
21381 * xfns.c (Qhbar): New variable.
21382 (syms_of_xfns): Intern and staticpro it.
21383 (x_specified_cursor_type): Handle `hbar' cursor.
21384
21385 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
21386 not defined.
21387
21388 2002-04-18 Richard M. Stallman <rms@gnu.org>
21389
21390 * textprop.c (remove_properties): New arg LIST allows scanning
21391 either a list or a plist.
21392 (interval_has_some_properties_list): New function, like
21393 interval_has_some_properties using list instead of plist.
21394 All callers changed.
21395 (Fremove_list_of_text_properties): New function.
21396 (syms_of_textprop): Defsubr it.
21397
21398 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
21399
21400 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
21401
21402 2002-04-17 Juanma Barranquero <lektu@terra.es>
21403
21404 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
21405
21406 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
21407
21408 * window.c (coordinates_in_window): Don't report on margin area
21409 if its width is zero.
21410
21411 2002-04-16 Jason Rumney <jasonr@gnu.org>
21412
21413 * w32fns.c (Fx_file_dialog): Decode file name before using.
21414
21415 * w32term.c (construct_drag_n_drop): Likewise.
21416
21417 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
21418
21419 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
21420 store load-history in pure space.
21421
21422 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
21423
21424 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
21425
21426 * xterm.c (Qlatin_1, Qutf_8): New vars.
21427 (syms_of_xterm): Initialize them.
21428 (XTread_socket): Eliminate incorrect optimization that tried to avoid
21429 decoding the output of X*LookupString.
21430 Always use latin-1 to decode the output of XLookupString.
21431 Try Xutf8LookupString if XmbLookupString failed.
21432
21433 * region-cache.c (new_region_cache): Use BEG.
21434
21435 2002-04-16 Gerd Moellmann <gerd@gnu.org>
21436
21437 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
21438 configuration files.
21439 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
21440 returns 0.
21441
21442 2002-04-15 Andreas Schwab <schwab@suse.de>
21443
21444 * config.in: Regenerated using autoheader.
21445
21446 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
21447 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
21448 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
21449 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
21450 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
21451 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
21452 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
21453 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
21454 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
21455 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
21456 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
21457 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
21458 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
21459 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
21460 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
21461 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
21462 STACK_DIRECTION, now set by autoconf.
21463
21464 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21465
21466 * dispnew.c (marginal_area_string): Sort arguments.
21467
21468 * dispextern.h (marginal_area_string): Add prototype.
21469
21470 2002-04-13 Richard M. Stallman <rms@gnu.org>
21471
21472 * fileio.c (Finsert_file_contents):
21473 Don't call temp_output_buffer_setup--do just part, by hand.
21474
21475 * coding.c (run_pre_post_conversion_on_str):
21476 Don't call temp_output_buffer_setup--do just part, by hand.
21477
21478 * keyboard.c (command_loop_1): Don't call start_hourglass
21479 or cancel_hourglass when executing a macro.
21480
21481 * marker.c (count_markers): New function.
21482
21483 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
21484 grow without limit. Move recently used elements to the front.
21485
21486 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
21487
21488 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
21489
21490 2002-04-12 Gerd Moellmann <gerd@gnu.org>
21491
21492 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
21493 rows marginal areas.
21494 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
21495 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
21496
21497 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
21498
21499 2002-04-12 Dave Love <fx@gnu.org>
21500
21501 * dispnew.c (marginal_area_string): New.
21502
21503 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
21504 (Qleft_margin, Qright_margin): Declare.
21505 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
21506
21507 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
21508 note_mode_line_highlight and extended.
21509
21510 * keyboard.c (Qleft_margin, Qright_margin): Declare.
21511 (make_lispy_event): Deal with mouse events in margins.
21512
21513 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
21514
21515 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
21516
21517 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
21518 than deactivating the mark if tmm is set to `lambda'.
21519 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
21520 Use a single event for HELP_EVENT.
21521 (Fexecute_extended_command): Save last_point_position.
21522
21523 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21524
21525 * lisp.h (Fpropertize): Add prototype.
21526
21527 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
21528
21529 2002-04-10 Colin Walters <walters@verbum.org>
21530
21531 * config.in: Add HAVE_SHARED_GAME_DIR.
21532
21533 * callproc.c (Vgame_score_directory): New variable.
21534 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
21535
21536 2002-04-10 Richard M. Stallman <rms@gnu.org>
21537
21538 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
21539
21540 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
21541
21542 * minibuf.c (read_minibuf): Use empty_string.
21543 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
21544 Short-circuit the search as soon as it "failed".
21545 (Fall_completions): Allow lambda forms and lists of strings for alist.
21546 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
21547 when require_match is nil.
21548 (Ftest_completion): Rename from `test_completion' and export to elisp.
21549 Call the predicate also when alist is a list.
21550 Obey Vcompletion_regexp_list.
21551 (do_completion, Fminibuffer_complete_and_exit): Use it.
21552 (Fassoc_string): Rename from `assoc_for_completion'.
21553 Allow list of strings as well and export to elisp.
21554
21555 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
21556
21557 * puresize.h (BASE_PURESIZE): Increase to 900KB.
21558
21559 2002-04-08 Juanma Barranquero <lektu@terra.es>
21560
21561 * w32.c (sys_accept): Don't hide variable `s'.
21562
21563 2002-04-05 Gerd Moellmann <gerd@gnu.org>
21564
21565 * callint.c (Fcall_interactively): Use INTEGERP instead of
21566 NUMBERP for checking Vhistory_length.
21567
21568 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21569
21570 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
21571 Doc fix to reflect it.
21572
21573 2002-04-04 Richard M. Stallman <rms@gnu.org>
21574
21575 * xdisp.c (display_mode_element): New arg RISKY.
21576 Disregard text props found or specified within a variable
21577 that isn't marked risky-local-variable.
21578 (Qrisky_local_variable): New variable.
21579 (syms_of_xdisp): Init and staticpro it.
21580
21581 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
21582
21583 * undo.c (record_point): New fun.
21584 (record_delete, record_insert): Use it.
21585
21586 2002-04-03 Juanma Barranquero <lektu@terra.es>
21587
21588 * doc.c (Fdocumentation): Add missing parentheses.
21589 (Fdocumentation_property): Likewise.
21590
21591 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
21592
21593 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
21594 data is 0, just return nil.
21595
21596 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
21597
21598 * msdos.c (syms_of_msdos): Fix last change with
21599 mouse_autoselect_window.
21600
21601 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21602
21603 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
21604 mouse_autoselect_window.
21605
21606 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
21607
21608 * keyboard.c (make_lispy_event): Handle unknown keysyms together
21609 with system-specific keysyms. Use it also for unknown function keys.
21610
21611 * doc.c (reread_doc_file): Return whether reload was attempted.
21612 (Fdocumentation, Fdocumentation_property): Don't try to reload
21613 if the doc is 0 and only ask once.
21614
21615 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
21616
21617 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
21618
21619 * keyboard.c (read_char): If the event was Qselect_window,
21620 restore timer_idleness_start_time to its previous value.
21621
21622 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
21623
21624 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
21625
21626 * region-cache.c (new_region_cache): Use BEG.
21627
21628 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
21629 Use BEG and BEG_BYTE.
21630
21631 * doc.c (get_doc_string): Return nil if the location is wrong.
21632 (reread_doc_file): New fun.
21633 (Fdocumentation, Fdocumentation_property):
21634 Call it if get_doc_string fails.
21635 (Fsnarf_documentation): Make it work for a dumped Emacs.
21636
21637 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
21638 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
21639
21640 * charset.c (Fstring): Allow 0 arguments.
21641
21642 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
21643
21644 * process.c (DATAGRAM_CONN_P, list_processes_1)
21645 (Fprocess_datagram_address, Fset_process_datagram_address)
21646 (Fset_network_process_options, server_accept_connection):
21647 Fix some int/Lisp_Object confusions (thank you union types).
21648
21649 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21650
21651 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
21652
21653 * w32term.c: Likewise.
21654 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
21655
21656 * keyboard.c (Qselect_window): New symbol.
21657 (head_table): Use it.
21658 (keys_of_keyboard): Bound select-window event to handle-select-window.
21659 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
21660
21661 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
21662 (last_window): New variable.
21663 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
21664 (note_mouse_movement): Remove reimplemented code in #if 0.
21665 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
21666 Emacs windows.
21667
21668 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
21669
21670 2002-03-31 Gerd Moellmann <gerd@gnu.org>
21671
21672 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
21673 Callers changed.
21674
21675 2002-03-30 Richard M. Stallman <rms@gnu.org>
21676
21677 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
21678 loop whenever it stops making progress.
21679
21680 * widget.c (set_frame_size): Don't call change_frame_size.
21681
21682 2002-03-30 Gerd Moellmann <gerd@gnu.org>
21683
21684 * dispnew.c (direct_output_for_insert):
21685 Call mark_window_display_accurate.
21686
21687 2002-03-29 Jason Rumney <jasonr@gnu.org>
21688
21689 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
21690
21691 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
21692
21693 * Makefile.in (lread.o): Depend on coding.h.
21694
21695 * lread.c (openp, Fload): Encode the file name before passing it
21696 to `stat', `access', and `emacs_open'.
21697 (openp): GCPRO the encoded file name. Don't recompute Lisp
21698 strings unnecessarily.
21699
21700 2002-03-29 Kim F. Storm <storm@cua.dk>
21701
21702 * fns.c (Flax_plist_put): Doc fix.
21703
21704 2002-03-28 Miles Bader <miles@gnu.org>
21705
21706 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
21707
21708 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21709
21710 * process.c (set-network-process-options): Add usage.
21711 (make-network-process): Doc fix.
21712
21713 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
21714
21715 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
21716
21717 2002-03-26 Richard M. Stallman <rms@gnu.org>
21718
21719 * fns.c (Fsubstring_no_properties): New function.
21720 (Flax_plist_get, Flax_plist_put): New functions.
21721 (syms_of_fns): defsubr them.
21722
21723 * xdisp.c (update_menu_bar): Test only update_mode_lines;
21724 don't test or alter w->update_mode_line.
21725
21726 * window.c (Fdisplay_buffer): Doc fix.
21727
21728 2002-03-24 Richard M. Stallman <rms@gnu.org>
21729
21730 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
21731
21732 2002-03-24 Gerd Moellmann <gerd@gnu.org>
21733
21734 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
21735 (Fdefmacro): Handle `(declare ...)'.
21736 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
21737 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
21738
21739 2002-03-24 Jason Rumney <jasonr@gnu.org>
21740
21741 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
21742 (xbm_file_p): Add prototypes.
21743 (xbm_format, xbm_image_p): Sync with xfns.c.
21744 (reflect_byte): New function.
21745 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
21746 (xbm_load_image): Create bitmaps with a depth of 1.
21747 (init_xfns): Enable XBM images.
21748
21749 2002-03-23 Jason Rumney <jasonr@gnu.org>
21750
21751 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
21752 correctly. Do not pass up_modifier to keyboard buffer.
21753
21754 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
21755
21756 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
21757
21758 * Makefile.in (bootstrapclean): New target.
21759 (bootstrap-temacs, bootstrap-doc): Remove.
21760 (bootstrap-emacs): Use a bog-standard `temacs'.
21761 Don't bother to build a DOC file.
21762
21763 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
21764
21765 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
21766 in temacs even if !CANNOT_DUMP.
21767 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
21768
21769 * alloc.c (check_pure_size): Only output a warning.
21770
21771 2002-03-22 Jason Rumney <jasonr@gnu.org>
21772
21773 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
21774 supported.
21775
21776 * w32term.c (zv_bits): Declare as short, for word alignment.
21777 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
21778 (syms_of_w32term): Define x-use-underline-position-properties.
21779
21780 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
21781 (clear_image_cache): Block input, fix logic, clear matrices in
21782 all frames that share this cache.
21783
21784 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
21785
21786 * emacs.c (main): Update the Copyright year in the blurb printed
21787 by "emacs --version".
21788
21789 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
21790
21791 * xterm.c (XTread_socket): If XK_ISO_Lock and
21792 XK_ISO_Last_Group_Lock are defined, handle keysyms between
21793 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
21794
21795 2002-03-21 Kim F. Storm <storm@cua.dk>
21796
21797 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
21798 menu-bar bindings in keymap and local-map properties _are_ used.
21799 But try keymap property first in accordance with 2002-01-03 patch.
21800 Added comment describing why this is not always reliable.
21801 (tool_bar_items): Ditto for tool-bar.
21802
21803 2002-03-21 Jason Rumney <jasonr@gnu.org>
21804
21805 * w32fns.c (x_clear_image_1): Disable color table code.
21806
21807 2002-03-21 Kim F. Storm <storm@cua.dk>
21808
21809 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
21810 removed the wrong version of the DEFUN macro; fixed it.
21811
21812 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
21813 Fmember rather than Fmemq).
21814 (Fprovide): Check that subfeatures is a list.
21815
21816 * process.c (QCfeature, QCdatagram): Removed variables.
21817 (QCtype, Qdatagram): New variables.
21818 (network_process_featurep): Removed function.
21819 (Fmake_network_process): Removed :feature check.
21820 Use :type 'datagram instead of :datagram t to create a datagram
21821 socket. This allows us to add other connection types (e.g. raw
21822 sockets) later in a consistent manner.
21823 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
21824 supported subfeatures for feature make-network-process.
21825 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
21826 Intern and staticpro QCtype and Qdatagram.
21827 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
21828
21829 * xfns.c (QCtype): Remove duplicate declaration and
21830 initialization (is now declared in process.c).
21831
21832 * w32fns.c (QCtype): Remove duplicate declaration and
21833 initialization (is now declared in process.c).
21834
21835 2002-03-21 Richard M. Stallman <rms@gnu.org>
21836
21837 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
21838 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
21839 when jumping to `fail' to avoid undoing reg changes in the
21840 last iteration of the loop.
21841 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
21842
21843 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
21844 Depend on process.h.
21845
21846 2002-03-20 Jason Rumney <jasonr@gnu.org>
21847
21848 Most of the following changes are still conditional on HAVE_IMAGES
21849 which is not set by default on Windows.
21850
21851 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
21852
21853 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
21854 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
21855 (four_corners_best, x_clear_image_1, x_clear_image)
21856 (x_alloc_image_color, postprocess_image)
21857 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
21858 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
21859 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
21860
21861 * w32gui.h (struct XImage): Define.
21862
21863 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
21864 extract mouse co-ordinates.
21865
21866 2002-03-20 Jason Rumney <jasonr@gnu.org>
21867
21868 * w32.c (init_winsock): Dynamically load new server and UDP
21869 socket functions.
21870 (socket_to_fd): New function.
21871 (sys_socket): Use it.
21872 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
21873 (sys_recvfrom, sys_sendto): New wrapper functions.
21874
21875 * process.c (QCfamily, QCfilter): Remove duplicate declaration
21876 and initialization.
21877
21878 * makefile.w32-in (LIBS): Remove $(WSOCK32).
21879
21880 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
21881
21882 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
21883 Don't use "sun" as a variable, it's a predefined constant on Sun
21884 machines.
21885
21886 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21887
21888 * bytecode.c (Fbyte_code): Revert last change.
21889
21890 2002-03-19 Kim F. Storm <storm@cua.dk>
21891
21892 * makefile.w32-in (LIBS): Add $(WSOCK32).
21893 From David Ponce <dponce@voila.fr>.
21894
21895 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21896
21897 * process.c (wait_reading_process_input): Move variables `pname'
21898 and `pnamelen' down where they are used.
21899
21900 * bytecode.c (Fbyte_code): Discard unused computed value to
21901 prevent gcc warning.
21902
21903 * lisp.h (Fplist_member): Add prototype.
21904
21905 2002-03-18 Kim F. Storm <storm@cua.dk>
21906
21907 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
21908 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
21909
21910 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
21911 Remove explicit GNU_LINUX settings for datagram support.
21912
21913 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21914
21915 * process.c (Fmake_network_process): Remove unused variable `sa'.
21916 Doc fix. Add usage:.
21917 (set_socket_options): Remove unused variables `optnum' and `opttype'.
21918
21919 2002-03-17 Richard M. Stallman <rms@gnu.org>
21920
21921 * xdisp.c (cursor_type_changed): New variable.
21922 (redisplay_internal): Redisplay all windows if cursor_type_changed.
21923 Clear it when clearing windows_or_buffers_changed.
21924 (try_cursor_movement, redisplay_window, try_window_id)
21925 (try_window_reusing_current_matrix): Test cursor_type_changed
21926 along with windows_or_buffers_changed.
21927
21928 * window.h (cursor_type_changed): New variable.
21929
21930 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
21931 not update_mode_lines, and always set it to 1.
21932
21933 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
21934 if no frames needed redrawing.
21935
21936 2002-03-17 Kim F. Storm <storm@cua.dk>
21937
21938 The following changes add support for network server processes,
21939 datagram connections, and local (unix) sockets.
21940
21941 * process.h (struct Lisp_Process): New member log.
21942 Doc fix: Member command used to indicate stopped network process.
21943 Doc fix: Member childp contains plist for network process.
21944 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
21945
21946 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
21947 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
21948 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
21949 New variables.
21950 (NETCONN1_P): New macro.
21951 (DATAGRAM_SOCKETS): New conditional symbol.
21952 (datagram_address): New array.
21953 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
21954 (status_message): Use concat3.
21955 (Fprocess_status): Add `listen' status to doc string. Return `stop'
21956 for a stopped network process.
21957 (Fset_process_buffer): Update contact plist for network process.
21958 (Fset_process_filter): Ditto. Don't enable input for stopped
21959 network processes. Server must listen, even if filter is t.
21960 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
21961 New functions.
21962 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
21963 (Fprocess_contact): Added KEY argument. Handle datagrams.
21964 (list_processes_1): Optionally show only processes with the query
21965 on exit flag set. Dynamically adjust column widths. Omit tty
21966 column if not needed. Report stopped network processes.
21967 Identify server and datagram network processes.
21968 (Flist_processes): New optional arg `query-only'.
21969 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
21970 (conv_lisp_to_sockaddr, set_socket_options)
21971 (network_process_featurep, unwind_request_sigio): New helper functions.
21972 (Fprocess_datagram_address, Fset_process_datagram_address):
21973 (Fset_network_process_options): New lisp functions.
21974 (Fopen_network_stream): Removed. Now defined in simple.el.
21975 (Fmake_network_process): New lisp function. Code is based on previous
21976 Fopen_network_stream, but heavily reworked with new property list based
21977 argument list, support for datagrams, server processes, and local
21978 sockets in addition to old client-only functionality.
21979 (server_accept_connection): New function.
21980 (wait_reading_process_input): Use it to handle incoming connects.
21981 Do not enable input on a new connection if process is stopped.
21982 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
21983 (send_process): Handle datagram sockets.
21984 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
21985 network process is indicated by setting command field to t .
21986 (Fprocess_send_eof): No-op if datagram connection.
21987 (Fstatus_notify): Don't read input for a stream server socket or a
21988 stopped network process.
21989 (init_process): Initialize datagram_address array.
21990 (syms_of_process): Intern and staticpro new variables, defsubr new
21991 functions.
21992
21993 2002-03-16 Jason Rumney <jasonr@gnu.org>
21994
21995 * w32fns.c (w32_to_all_x_charsets): Return correct type in
21996 startup case.
21997
21998 2002-03-16 Richard M. Stallman <rms@gnu.org>
21999
22000 * xdisp.c (redisplay_internal, redisplay_windows):
22001 Use list_of_error to call internal_condition_case_1.
22002 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
22003 so as to catch all errors with no possibility of debugger redisplay.
22004 (list_of_error): New variable.
22005 (syms_of_xdisp): Init and staticpro it.
22006
22007 * print.c (print_object): Delete `\ ' from printed rep of frame.
22008
22009 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
22010
22011 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
22012 until its implementation is fixed.
22013
22014 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22015
22016 * xfns.c (png_load): Remove unused variable `gamma_str'.
22017
22018 2002-03-14 Richard M. Stallman <rms@gnu.org>
22019
22020 * xfns.c (x_real_positions): Handle failure in XQueryTree.
22021
22022 2002-03-14 Miles Bader <miles@gnu.org>
22023
22024 * intervals.c (adjust_for_invis_intang): New function.
22025 (set_point_both): Use `adjust_for_invis_intang' to do most of the
22026 work for dealing with invisible+intangible regions. Do so before
22027 and after both forward and backward movements, to handle both
22028 front-sticky and rear-sticky cases.
22029 * textprop.c (text_property_stickiness): Function moved here from
22030 `editfns.c'.
22031 * intervals.h (text_property_stickiness): New declaration.
22032 * editfns.c (char_property_eq): Function removed.
22033 (text_property_stickiness): Function moved to `textprop.c'.
22034
22035 2002-03-13 Jason Rumney <jasonr@gnu.org>
22036
22037 * config.in: Add STRFTIME_NO_POSIX2.
22038
22039 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
22040 and %OX when underlying strftime does not.
22041
22042 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
22043
22044 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
22045 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
22046 line) to avoid annoying flicker.
22047 (xm_scroll_callback): Get rid of the now unnecessary kludge.
22048 (XTread_socket): Mark it static.
22049
22050 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
22051
22052 2002-03-13 Kim F. Storm <storm@cua.dk>
22053
22054 * puresize.h (BASE_PURESIZE): Increase to 775000.
22055
22056 2002-03-12 Juanma Barranquero <lektu@terra.es>
22057
22058 * editfns.c (syms_of_editfns): Fix typo.
22059
22060 2002-03-12 Gerd Moellmann <gerd@gnu.org>
22061
22062 * xsmfns.c: Include stdio.h because termhooks.h needs it.
22063 Include termopt.h for interrupt_input.
22064
22065 2002-03-11 Andreas Schwab <schwab@suse.de>
22066
22067 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
22068
22069 2002-03-11 Gerd Moellmann <gerd@gnu.org>
22070
22071 * xterm.c (note_mouse_movement): Put code for
22072 x_autoselect_window_p in #if 0.
22073
22074 * lread.c (Fload): Don't assume that message_with_string uses the
22075 string it is given like a C string.
22076
22077 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22078
22079 * xterm.h (x_session_check_input, x_session_initialize): Declare.
22080
22081 * xterm.c (XTread_socket): Add call to x_session_check_input and
22082 x_session_have_connection.
22083 (x_initialize): Add call to x_session_initialize.
22084
22085 * termhooks.h (enum event_kind): Add save_session_event.
22086
22087 * keyboard.c: Add Emacs event save_session_event.
22088
22089 * emacs.c (main): Add call to syms_of_xsmfns.
22090
22091 * lisp.h (syms_of_xsmfns): Declare extern.
22092
22093 * config.in: Add HAVE_X_SM.
22094
22095 * Makefile.in (LIBXT): Add -lSM -lICE
22096 if HAVE_X_SM and not USE_X_TOOLKIT.
22097 (XOBJ): New file xsmfns.c added.
22098
22099 * xsmfns.c: New file for X session management.
22100
22101 2002-03-09 Jason Rumney <jasonr@gnu.org>
22102
22103 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
22104 read-only when setting modified time.
22105
22106 2002-03-08 Gerd Moellmann <gerd@gnu.org>
22107
22108 * xdisp.c (move_it_vertically_backward): At the end of the function,
22109 when moving forward by lines, treat terminal frames specially.
22110
22111 * keyboard.c (echo_char): Make sure to add a separator between
22112 keys even if echo_dash hasn't been called.
22113
22114 * xdisp.c: Use new string macros.
22115 (update_echo_area): Pass number of bytes to message3 instead of
22116 number of chars.
22117 (set_message_1): Don't access a string's size_byte directly.
22118 (decode_mode_spec_coding): Use number of bytes of eoltype string
22119 instead number of chars.
22120
22121 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
22122
22123 2002-03-08 Juanma Barranquero <lektu@terra.es>
22124
22125 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
22126 24-bit.
22127
22128 2002-03-06 Jason Rumney <jasonr@gnu.org>
22129
22130 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
22131
22132 2002-03-06 Gerd Moellmann <gerd@gnu.org>
22133
22134 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
22135 (cancel_echoing, echo_length, echo_truncate): Changed to
22136 work with new kboard definition.
22137 (echo_now): Use message3_nolog instead of message2_nolog.
22138
22139 * alloc.c (mark_kboards): Mark echo_string.
22140
22141 * keyboard.h (ECHOBUFSIZE): Removed.
22142 (struct kboard): Member echoptr removed, member echobuf renamed
22143 to echo_string.
22144
22145 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
22146 message3 instead of message2 to display the message using STRING's
22147 text properties.
22148
22149 2002-03-05 Andreas Schwab <schwab@suse.de>
22150
22151 * xdisp.c (hscroll_margin): Change to EMACS_INT.
22152
22153 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
22154
22155 * frame.c (default-frame-alist): Explain that setting it doesn't
22156 affect existing frames.
22157
22158 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
22159
22160 * indent.c (skip_invisible): Fix my brain fart.
22161
22162 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
22163
22164 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
22165
22166 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
22167 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
22168 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
22169 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
22170 and variables to use EMACS_INT instead of just int.
22171
22172 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
22173
22174 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
22175
22176 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
22177 environment, pass it down with corrected value.
22178
22179 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22180
22181 * lread.c (read_filtered_event): Do not call start_hourglass
22182 before returning.
22183
22184 2002-03-04 Juanma Barranquero <lektu@terra.es>
22185
22186 * w32term.c (x_display_and_set_cursor): Fix typo.
22187
22188 2002-03-03 Richard M. Stallman <rms@gnu.org>
22189
22190 * fileio.c (Fmake_temp_name): Doc fix.
22191
22192 2002-03-03 Gary Wong <gtw@gnu.org>
22193
22194 * termcap.c [!emacs]: Replace ospeed for building standalone
22195 libtermcap, for binary compatibility.
22196
22197 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
22198
22199 2002-03-03 Richard M. Stallman <rms@gnu.org>
22200
22201 * xrdb.c (file_p): Rename arg `path' to `filename'.
22202
22203 * abbrev.c (Fexpand_abbrev): Increment plist as use count
22204 only if it is an integer.
22205
22206 * xfns.c (png_load): Set screen_gamma based on f->gamma.
22207 If png_get_sRGB gives an answer, call png_set_gamma
22208 using the default image gamma value.
22209
22210 * lread.c (read1): When reading from a file, default string to
22211 multibyte only if it has some multibyte characters.
22212
22213 * print.c (print_object): Output multibyte chars 128...255
22214 using \x even if ! print_escape_multibyte.
22215
22216 * xdisp.c (display_mode_element): Move the places where
22217 bytepos, charpos, this, and lisp_string are set.
22218 Use lisp_string to set bytepos.
22219
22220 * xdisp.c (redisplay_internal):
22221 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
22222
22223 * xdisp.c (display_mode_element): Merge properties specified with
22224 :propertize onto those that come with the string.
22225
22226 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
22227
22228 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
22229 automatic-hscrolling. Users changed.
22230 <hscroll-margin>: Renamed from automatic-hscroll-margin.
22231 Users changed.
22232 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
22233
22234 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
22235
22236 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
22237
22238 2002-03-02 Kim F. Storm <storm@cua.dk>
22239
22240 * window.c (Fminibuffer_selected_window): New function.
22241 (syms_of_window): Defsubr it.
22242
22243 2002-03-01 Kim F. Storm <storm@cua.dk>
22244
22245 * window.h (struct window): New member phys_cursor_width.
22246
22247 * window.c (make_window, replace_window): Init phys_cursor_width.
22248
22249 * xterm.c (x_display_and_set_cursor): Blink box cursor using
22250 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
22251
22252 * w32term.c (x_display_and_set_cursor): Blink box cursor using
22253 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
22254
22255 * lisp.h (GCPRO6): New macro.
22256
22257 * process.c (Fopen_network_stream): Use GCPRO6.
22258
22259 2002-03-01 Kim F. Storm <storm@cua.dk>
22260
22261 * process.c (Qconnect, Qfailed): New variables.
22262 (syms_of_process): Intern and staticpro them.
22263 (Fprocess_status): Document connect and failed return values.
22264 [NON_BLOCKING_CONNECT]: New conditional.
22265 (connect_wait_mask, num_pending_connects): New variables.
22266 (status_message): Convert Qfailed status.
22267 (Fopen_network_stream): Added support for non-blocking connect.
22268 New optional args: filter, sentinel, non_blocking. Doc updated.
22269 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
22270 (deactivate_process): Handle pending non-blocking connect.
22271 (wait_reading_process_input): Poll for status of non-blocking
22272 connects. Exec sentinel directly when connect succeeds.
22273 (status_notify): Don't read process output if not yet connected.
22274
22275 2002-02-28 Kim F. Storm <storm@cua.dk>
22276
22277 * window.c (minibuf_selected_window): Renamed from
22278 Vminibuf_selected_window. Users changed.
22279 (syms_of_window): Staticpro it.
22280
22281 2002-02-26 Kim F. Storm <storm@cua.dk>
22282
22283 The following changes add a new Vminibuf_selected_window variable
22284 which is similar to Vminibuf_scroll_window, but which is only set
22285 on entry to the minibuffer (from a non-minibuffer window):
22286
22287 * window.c (Vminibuf_selected_window): New variable.
22288 (struct save_window_data): New member minibuf_selected_window.
22289 (Fset_window_configuration): Restore Vminibuf_selected_window.
22290 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
22291 Set minibuf_scroll_window member to nil if minibuf_level is 0.
22292 (compare_window_configurations): Compare minibuf_selected_window.
22293
22294 * window.h (Vminibuf_selected_window): Declare extern.
22295
22296 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
22297 entry to minibuffer or on entry from a non-minibuffer window.
22298
22299 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
22300 Vminibuf_selected_window instead of Vminibuf_scroll_window.
22301
22302 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
22303 instead of Vminibuf_scroll_window when deciding in which window
22304 the region should be highlighted. Consequently, the region remains
22305 highlighteded even when a completion buffer is also displayed.
22306
22307 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
22308
22309 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
22310
22311 * xselect.c (Qcompound_text_with_extensions): Renamed from
22312 Qcompound_text_no_extensions.
22313 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
22314
22315 2002-02-26 Juanma Barranquero <lektu@terra.es>
22316
22317 * w32proc.c (syms_of_ntproc): Doc fix.
22318
22319 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22320
22321 * intervals.h: Include "dispextern.h" unconditionally.
22322
22323 2002-02-24 Jason Rumney <jasonr@gnu.org>
22324
22325 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
22326 and disp-table.elc.
22327 (lisp): Add emacs-lisp/backquote.elc.
22328
22329 2002-02-24 Kim F. Storm <storm@cua.dk>
22330
22331 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
22332 The validation of the event type was too strict as it didn't
22333 allow string events; buffer names are used in bindings for
22334 menu-bar-select-buffer (see `menu-bar-update-buffers').
22335
22336 2002-02-23 Kim F. Storm <storm@cua.dk>
22337
22338 The following changes rework my patch of 2002-02-06 which
22339 added command remapping by entering the commands directly into
22340 the keymaps. Now, command remapping uses an explicit `remap'
22341 prefix in the keymaps, i.e. [remap COMMAND].
22342
22343 * keymap.c (Qremap, remap_command_vector): New variables.
22344 (is_command_symbol): Remove function.
22345 (Fdefine_key): No longer accept a symbol for KEY.
22346 Added validation of [remap COMMAND] argument for KEY.
22347 The DEF is no longer required to be a symbol when remapping a command.
22348 (Fremap_command): New function to remap command through keymaps.
22349 (Flookup_key): Perform command remapping initiated by
22350 Fremap_command directly for speed.
22351 (Fkey_binding): Use Fremap_command for command remapping.
22352 (where_is_internal): Handle new command remapping representation.
22353 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
22354 staticpro them. Defsubr Fremap_command.
22355
22356 * keymap.h (Fremap_command): Declare extern.
22357 (is_command_symbol): Remove extern.
22358
22359 * keyboard.c (command_loop_1): Use Fremap_command for command
22360 remapping; now try command remapping for all symbols.
22361
22362 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
22363
22364 * coding.h (run_pre_post_conversion_on_str): Add prototype.
22365
22366 2002-02-23 Jason Rumney <jasonr@gnu.org>
22367
22368 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
22369 on the string before encoding it.
22370 (Fw32_get_clipboard_data): Run post-read-conversion on the string
22371 after decoding it.
22372
22373 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
22374
22375 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22376
22377 * w32term.c (enter_timestamp): Remove unused static variable to
22378 prevent warning.
22379
22380 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
22381
22382 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
22383
22384 * w16select.c (Fw16_get_clipboard_data): Fix last change.
22385
22386 * xselect.c (selection_data_to_lisp_data): Fix last change.
22387
22388 2002-02-22 Jason Rumney <jasonr@gnu.org>
22389
22390 * w32term.h (struct w32_output): New member menu_command_in_progress.
22391
22392 * w32menu.c (menubar_selection_callback): Free the menu and
22393 clear the menu_command_in_progress flag.
22394
22395 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
22396 (menu_free_timer): New variable.
22397 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
22398 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
22399 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
22400 menu command is in progress.
22401 <WM_COMMAND>: Set the menu_command_in_progress flag.
22402 Kill any menu_free_timer that is running.
22403
22404 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
22405 Call ExtTextOutA rather than ExtTextOut.
22406
22407 2002-02-22 Eli Zaretskii <eliz@gnu.org>
22408
22409 * puresize.h (BASE_PURESIZE): Increase to 755000.
22410
22411 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
22412
22413 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
22414 on the string before encoding it.
22415 (Fw16_get_clipboard_data): Run post-read-conversion on the string
22416 after decoding it.
22417
22418 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
22419
22420 Support for ICCCM Extended Segments in X selections:
22421
22422 * xselect.c <Qcompound_text_no_extensions>: New variable.
22423 (syms_of_xselect): Intern and staticpro it.
22424 (selection_data_to_lisp_data): Run post-read-conversion on decoded
22425 selection text.
22426 (lisp_data_to_selection_data): If next-selection-coding-system is
22427 compound-text-no-extensions, set the type of selection to be
22428 compound-text.
22429
22430 * xterm.h (x_encode_text): Update prototype.
22431
22432 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
22433 callers changed. If SELECTIONP is non-zero, run the
22434 pre-write-conversion function before encoding the selection text.
22435
22436 2002-02-21 Kim F. Storm <storm@cua.dk>
22437
22438 * frame.c (syms_of_frame): Change mouse-highlight default to t.
22439
22440 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
22441 Correct composing of language-change event.
22442
22443 2002-02-20 Kim F. Storm <storm@cua.dk>
22444
22445 * keyboard.c (menu_bar_items): Don't include keymap or local-map
22446 bindings at PT when building menu (the menu is not updated often
22447 enough for this to work reliable).
22448 (tool_bar_items): Likewise.
22449 (current_active_maps): Removed unused (and buggy) function.
22450
22451 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22452
22453 * xfns.c (gif_load): Use correct width and height for GIF images.
22454
22455 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
22456
22457 * floatfns.c (Fatan): Accept an optional second arg and call
22458 atan2 if passed 2 args.
22459
22460 2002-02-18 Jason Rumney <jasonr@gnu.org>
22461
22462 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
22463
22464 2002-02-17 Jason Rumney <jasonr@gnu.org>
22465
22466 * w32term.c (x_autoselect_window_p): New variable.
22467 (syms_of_w32term): DEFVAR_BOOL and initialize it.
22468 (note_mouse_movement): Use it.
22469
22470 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
22471
22472 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
22473
22474 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
22475 New variables.
22476 (syms_of_w32fns): Intern and staticpro them.
22477 (x_frame_parms) <"fullscreen">: New parameter.
22478 (x_fullscreen_move, x_set_fullscreen): New functions.
22479 (x_set_frame_parameters): Support Qfullscreen.
22480 (x_real_positions): Save x/y_pixels_diff frame params.
22481 (x_figure_window_size): Support full-screen frames.
22482 (Fx_create_frame): Default the fullscreen parameter.
22483
22484 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
22485 (x_fullscreen_adjust): New functions.
22486 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
22487 fullscreen. Call x_check_fullscreen_move, and set the
22488 want_fullscreen member of output_data.w32
22489 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
22490
22491 * w32term.h: New enum for FULLSCREEN_* constants.
22492 (struct w32_output): New members want_fullscreen, x_pixels_diff,
22493 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
22494 (x-fullscreen-adjust): New prototype.
22495
22496 2002-02-17 Kim F. Storm <storm@cua.dk>
22497
22498 * frame.c (Vmouse_highlight): New variable.
22499 (syms_of_frame): DEFVAR_LISP it.
22500
22501 * frame.h (Vmouse_highlight): Declare extern.
22502
22503 * xterm.h (struct x_display_info): Add mouse_face_hidden.
22504
22505 * xterm.c (disable_mouse_highlight): Removed variable.
22506 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
22507 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
22508 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
22509 and on after keyboard input.
22510 (x_term_init): Initialize mouse_face_hidden.
22511
22512 * msdos.h (struct display_info): Add mouse_face_hidden.
22513
22514 * msdos.c (disable_mouse_highlight): Removed variable.
22515 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
22516 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
22517 (internal_terminal_init): Initialize mouse_face_hidden.
22518 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
22519 and on after keyboard input.
22520
22521 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
22522
22523 * w32term.c (disable_mouse_highlight): Removed variable.
22524 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
22525 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
22526 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
22527 and on after keyboard input.
22528 (w32_initialize_display_info): Initialize mouse_face_hidden.
22529
22530 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
22531
22532 * msdos.c (last_mouse_window): New variable.
22533 (dos_rawgetc): Fix last change--if the mouse is in the same window
22534 as recorded in last_mouse_window, don't select this window.
22535
22536 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
22537
22538 * msdos.c (x_autoselect_window_p): New variable.
22539 (syms_of_msdos): Defvar it.
22540 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
22541 which the last mouse movement occured, unless it is already selected.
22542
22543 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
22544 New variables.
22545 (syms_of_xdisp): DEVFAR them.
22546 (hscroll_window_tree): Use automatic_hscroll_margin and
22547 Vautomatic_hscroll_step to compute the amount of window scrolling.
22548
22549 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22550
22551 * xterm.c (x-autoselect-window): New variable.
22552 (note_mouse_movement): Use it.
22553
22554 * keyboard.c: Do not include "systime.h" twice.
22555
22556 2002-02-15 Andreas Schwab <schwab@suse.de>
22557
22558 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
22559
22560 * alloc.c (NSTATICS): Increase to 1280.
22561
22562 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
22563
22564 * alloc.c (NSTATICS): Bump to 1026.
22565
22566 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
22567 (Vx_super_keysym): New variables.
22568 (syms_of_xterm): DEFVAR_LISP them.
22569 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
22570 variables to determine which keys to use for the various modifiers.
22571
22572 2002-02-13 Kim F. Storm <storm@cua.dk>
22573
22574 * window.c (Vmode_line_in_non_selected_windows): Removed.
22575 (mode_line_in_non_selected_windows): New variable.
22576 (syms_of_window): DEFVAR_BOOL it.
22577
22578 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
22579 Use mode_line_in_non_selected_windows.
22580 (mode_line_in_non_selected_windows): Declare extern.
22581 (Vmode_line_in_non_selected_windows): Removed extern.
22582
22583 2002-02-13 Richard M. Stallman <rms@gnu.org>
22584
22585 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
22586 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
22587 (Fclear_this_command_keys): Doc fixes.
22588
22589 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
22590 (update_face_from_frame_parameter): Increment face_change_count
22591 and windows_or_buffers_changed to force redisplay using changed faces.
22592
22593 * xdisp.c (QCpropertize): New variable.
22594 (mode_line_proptrans_alist): New variable.
22595 (display_mode_element): New arg PROPS; all calls changed.
22596 Implement this, for strings.
22597 Handle literal output of strings by sharing the
22598 main-line code for strings, using local var `literal'.
22599 Handle :propertize feature.
22600 (syms_of_xdisp): Initialze and staticpro QCpropertize and
22601 mode_line_proptrans_alist.
22602
22603 2002-02-11 Kim F. Storm <storm@cua.dk>
22604
22605 * window.c (Vmode_line_in_non_selected_windows): New variable.
22606 (syms_of_window): DEFVAR_LISP it.
22607
22608 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
22609 (CURRENT_MODE_LINE_FACE_ID): Use it.
22610 (Vmode_line_in_non_selected_windows): Declare extern.
22611
22612 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
22613 to get mode line face.
22614
22615 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
22616
22617 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
22618 variables; cus-start.el doesn't need them anymore.
22619
22620 2002-02-09 Kim F. Storm <storm@cua.dk>
22621
22622 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
22623 reduction. This fixes a display problem where stray newlines were
22624 inserted in the window (corrected by C-l). Clarified code (IMHO).
22625
22626 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
22627
22628 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
22629
22630 * xdisp.c (display_mode_lines): Fix last change.
22631
22632 2002-02-09 Jason Rumney <jasonr@gnu.org>
22633
22634 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
22635 match each other.
22636 (w32_load_system_font): Prevent Cleartype fonts from loading.
22637 (Fx_show_tip): Ensure tip frames are above other topmost windows.
22638
22639 2002-02-09 Kim F. Storm <storm@cua.dk>
22640
22641 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
22642 (CURRENT_MODE_LINE_HEIGHT): Use it.
22643 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
22644
22645 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
22646 (pos_visible_p, handle_face_prop): Likewise.
22647 (display_mode_lines): Likewise, but for the real selected window.
22648 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
22649
22650 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
22651 in non-selected windows.
22652 (realize_basic_faces): Realize it.
22653 (syms_of_term): Intern and staticpro it.
22654
22655 2002-02-08 Kim F. Storm <storm@cua.dk>
22656
22657 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
22658 Changed mail addresses to emacs-devel@gnu.org.
22659
22660 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
22661
22662 * fileio.c (Fsubstitute_in_file_name): If the file name includes
22663 ~user, and there's no such user, don't discard everything before ~user.
22664
22665 * floatfns.c (Fround): Doc fix.
22666
22667 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22668
22669 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
22670
22671 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
22672
22673 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
22674
22675 2002-02-07 Kim F. Storm <storm@cua.dk>
22676
22677 * keymap.c (where_is_internal): Only check whether definition is
22678 remapped if it fulfills is_command_symbol.
22679
22680 2002-02-07 Andreas Schwab <schwab@suse.de>
22681
22682 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
22683
22684 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
22685
22686 2002-02-06 Kim F. Storm <storm@cua.dk>
22687
22688 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
22689 defining command remapping. Doc updated.
22690 (Flookup_key): Remap command through keymap if KEY is a symbol.
22691 (is_command_symbol): New function.
22692 (Fkey_binding): Use it. New optional argument NO-REMAP.
22693 Doc updated. Callers changed. Perform command remapping via
22694 recursive call unless that arg is non-nil.
22695 (where_is_internal): New argument no_remap. Callers changed.
22696 Call recursively to find original key bindings for a remapped
22697 comand unless that arg is non-nil.
22698 (Fwhere_is_internal): New optional argument NO-REMAP.
22699 Doc updated. Callers changed. Pass arg to where_is_internal.
22700
22701 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
22702 (is_command_symbol): Add prototype.
22703
22704 * keyboard.c (Vthis_original_command): New variable.
22705 (syms_of_keyboard): DEFVAR_LISP it.
22706 (command_loop_1): Set it, and perform command remapping.
22707
22708 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22709
22710 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
22711
22712 2002-02-06 Jason Rumney <jasonr@gnu.org>
22713
22714 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
22715
22716 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
22717
22718 * charset.c (get_charset_id): Use if-else instead of ?:.
22719
22720 2002-02-06 Richard M. Stallman <rms@gnu.org>
22721
22722 * filelock.c (S_ISLNK): Define if not defined.
22723
22724 2002-02-03 Richard M. Stallman <rms@gnu.org>
22725
22726 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
22727
22728 * lread.c (read1): Redesign strategy for force_multibyte and
22729 force_singlebyte. Now is_multibyte records whether read_buffer
22730 is multibyte. Encountering any multibyte character makes it so.
22731
22732 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
22733
22734 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
22735 with the same sequence, map that sequence to f10 rather than f0.
22736
22737 2002-02-03 Andreas Schwab <schwab@suse.de>
22738
22739 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
22740 latter never being defined on GNU/Linux.
22741
22742 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
22743
22744 * xfaces.c (realize_default_face): Don't set the weight and slant of
22745 the default face to Qnormal, unless these attributes are unspecified.
22746
22747 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22748
22749 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
22750 Call cancel_hourglass unconditionally.
22751
22752 * eval.c (Fsignal): Remove duplicated declaration of
22753 the variable `display_hourglass_p'.
22754
22755 2002-01-31 Richard M. Stallman <rms@gnu.org>
22756
22757 * editfns.c (region_limit): Nicer error message.
22758
22759 * coding.c (decode_composition_emacs_mule):
22760 Give up if NCOMPONENT gets too large to index `component'.
22761
22762 * callint.c (check_mark): New arg to specify clearer error message.
22763 Callers changed.
22764
22765 2002-01-27 Richard M. Stallman <rms@gnu.org>
22766
22767 * minibuf.c (Fcompleting_read): Doc fix.
22768
22769 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22770
22771 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
22772 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
22773 Fix doc-strings.
22774
22775 2002-01-26 Richard M. Stallman <rms@gnu.org>
22776
22777 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
22778
22779 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
22780 and scroll_up_aggressively.
22781
22782 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22783
22784 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
22785
22786 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
22787
22788 * textprop.c (Fnext_property_change, Fnext_single_property_change)
22789 (Fprevious_property_change, Fprevious_single_property_change):
22790 Stay within the narrowed-buffer boundaries.
22791
22792 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
22793
22794 * term.c (Ftty_display_color_cells): New function.
22795 (syms_of_term): Defsubr it.
22796 (Ftty_display_color_cells, Ftty_display_color_p): Change the
22797 argument name to DISPLAY. Doc fix.
22798
22799 * dispextern.h: Add prototype for set_tty_color_mode and
22800 tty_setup_colors.
22801
22802 2002-01-24 Jason Rumney <jasonr@gnu.org>
22803
22804 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
22805 If region left to draw is not what was expected, mark the frame as
22806 garbaged.
22807
22808 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
22809 Combine the regions returned by BeginPaint and GetUpdateRect.
22810
22811 2002-01-23 Jason Rumney <jasonr@gnu.org>
22812
22813 * w32term.c (x_update_window_begin): Only hide caret if
22814 w32_use_visible_system_caret is set.
22815 (x_update_window_end): Only show caret if
22816 w32_use_visible_system_caret is set.
22817 (syms_of_w32term): Handle SystemParametersInfo call failing.
22818
22819 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
22820
22821 2002-01-22 Richard M. Stallman <rms@gnu.org>
22822
22823 * unexelf.c (unexec): Define n so as to cause compilation error
22824 for the code where people have often written n instead of nn.
22825
22826 * .gdbinit (hookpost-run): Defined.
22827
22828 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22829
22830 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
22831
22832 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22833
22834 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
22835 if fullscreen is being set.
22836
22837 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22838
22839 * minibuf.c (Fminibuffer_contents)
22840 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
22841 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
22842
22843 2002-01-21 Richard M. Stallman <rms@gnu.org>
22844
22845 * window.c (check_frame_size): Fix minimum height calculation.
22846
22847 2002-01-20 Ken Raeburn <raeburn@gnu.org>
22848
22849 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
22850 height before comparison.
22851 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
22852
22853 2002-01-20 Jason Rumney <jasonr@gnu.org>
22854
22855 * w32term.c (w32_system_caret_width): Remove.
22856 (w32_use_visible_system_caret): New user flag.
22857 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
22858 Windows reports a screen reader running.
22859 (x_update_window_begin): Hide the system caret.
22860 (x_update_window_end): Show the system caret.
22861 (x_display_and_set_cursor): Don't draw a cursor when
22862 w32_use_visible_system_caret is set. Do not adjust width.
22863
22864 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
22865 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
22866 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
22867 the user requests it. Use system default width when creating.
22868 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
22869
22870 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
22871 New window messages.
22872
22873 2002-01-20 Richard M. Stallman <rms@gnu.org>
22874
22875 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
22876
22877 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22878
22879 * doprnt.c (doprnt1): Fix typos in error call.
22880
22881 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
22882
22883 * unexelf.c (unexec) [__sgi]: Support the .got sections.
22884
22885 2002-01-20 Jason Rumney <jasonr@gnu.org>
22886
22887 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
22888 that Windows returns. If a double check fails, try to guess how
22889 ExtTextOut is going to act.
22890
22891 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
22892 in place of stricmp.
22893 (w32_list_synthesized_fonts): Removed.
22894 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
22895 (struct enumfont_t): New element; list.
22896 (enum_font_cb2): List all style and charset variations of a font.
22897 (Fw32_select_font): New optional argument; include_proportional.
22898 Exclude vertical fonts. Exclude proportional fonts unless
22899 include_proportional is non-nil.
22900 (w32_enable_synthesized_fonts): Change to a boolean.
22901 (Fw32_send_sys_command): Doc fix.
22902
22903 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22904
22905 * dispnew.c (update_frame): Move the variable `tem' to the block
22906 where it is used.
22907
22908 2002-01-19 Jason Rumney <jasonr@gnu.org>
22909
22910 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
22911 call to face-set-after-frame-default.
22912
22913 2002-01-18 Richard M. Stallman <rms@gnu.org>
22914
22915 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
22916 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
22917
22918 2002-01-17 Richard M. Stallman <rms@gnu.org>
22919
22920 * window.c (enlarge_window): When exceeding size of parent,
22921 directly delete all the siblings instead of trying to resize it.
22922
22923 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22924
22925 * term.c (set_tty_color_mode): Remove unused variable `tem'.
22926
22927 2002-01-16 Henrik Enberg <henrik@enberg.org>
22928
22929 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
22930
22931 2002-01-16 Kim F. Storm <storm@cua.dk>
22932
22933 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
22934 is invisible. This can happen if cursor is on top line of a
22935 window, and we switch to a buffer with a header line.
22936
22937 * w32term.c (x_erase_phys_cursor): Ditto.
22938
22939 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22940
22941 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
22942 `dont_resize' only when used.
22943
22944 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
22945
22946 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
22947
22948 * xdisp.c (display_mode_element): When computing charpos, depend
22949 on multibyteness of elt, not the text in field.
22950
22951 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22952
22953 * buffer.c (Fkill_all_local_variables):
22954 Increment `update_mode_lines' only once.
22955
22956 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22957
22958 * lisp.h (adjust_after_replace_noundo)
22959 (Fupdate_coding_systems_internal): Add prototypes.
22960
22961 * sound.c (Fplay_sound): Initialize header_size also for :data case.
22962
22963 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
22964
22965 Support for the --color command-line argument and tty-color-mode
22966 frame parameter:
22967
22968 * term.c (tty_default_color_capabilities, tty_setup_colors)
22969 (set_tty_color_mode): New functions.
22970 (term_init): Call tty_default_color_capabilities.
22971 (Qtty_color_mode_alist): New variable.
22972 (syms_of_term): Intern and staticpro it.
22973
22974 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
22975 frames.
22976 (do_switch_frame): For termcap frames, switch the tty
22977 color mode as specified by the frame's parameters.
22978 (Qtty_color_mode): New variable.
22979 (syms_of_frame): Intern and staticpro it.
22980
22981 * emacs.c (USAGE2): Add the --color option.
22982 (standard_args): Ditto.
22983
22984 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22985
22986 * xterm.h (struct x_output): New members want_fullscreen,
22987 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
22988 y_pixels_outer_diff.
22989 New enum for FULLSCREEN_* constants.
22990 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
22991 is NULL.
22992 (x_fullscreen_adjust): Add prototype.
22993
22994 * emacs.c (USAGE2): Add the new full-screen arguments.
22995 (standard_args): Ditto.
22996
22997 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
22998 New variables.
22999 (syms_of_xfns): Intern and staticpro them.
23000 (x_frame_parms) <"fullscreen">: New parameter.
23001 (x_fullscreen_move, x_set_fullscreen): New functions.
23002 (x_set_frame_parameters): Support for Qfullscreen.
23003 (x_real_positions): More accurate computation of the frame position.
23004 (x_figure_window_size): Support full-screen frames.
23005 (Fx_create_frame): Default the fullscreen parameter.
23006
23007 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
23008 (XTread_socket) <Expose>: Call x_check_fullscreen.
23009 <ConfigureNotify>: Don't resize to fullscreen.
23010 Call x_check_fullscreen_move, and set the want_fullscreen member of
23011 output_data.x.
23012
23013 2002-01-13 Jason Rumney <jasonr@gnu.org>
23014
23015 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
23016 for mice with more than 3 buttons.
23017
23018 * w32term.c (parse_button): New parameter xbutton. Callers changed.
23019 (w32_read_socket): Handle new "XBUTTON" messages.
23020
23021 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
23022 (syms_of_w32fns): DEFVAR_BOOL it.
23023 (w32_wnd_proc): Handle new "XBUTTON" messages.
23024
23025 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23026
23027 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
23028
23029 2002-01-13 Andreas Schwab <schwab@suse.de>
23030
23031 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
23032
23033 2002-01-12 Andreas Schwab <schwab@suse.de>
23034
23035 * .gdbinit (xbuffer): Remove address operator since data is now a
23036 pointer.
23037
23038 2002-01-11 Richard M. Stallman <rms@gnu.org>
23039
23040 * insdel.c (adjust_after_replace_noundo): New function.
23041
23042 * coding.c (code_convert_region): Don't copy old text if undo disabled.
23043
23044 2002-01-09 Jason Rumney <jasonr@gnu.org>
23045
23046 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
23047 when checking for multiple frames.
23048
23049 2002-01-08 Richard M. Stallman <rms@gnu.org>
23050
23051 * window.c (delete_window): Rewrite the code for changing the
23052 selected window to handle the case where WINDOW is not a leaf.
23053
23054 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
23055
23056 * process.c (send_process): Set src_multibyte to 1 after the call
23057 top setup_coding_system, not before the call.
23058
23059 2002-01-07 Jason Rumney <jasonr@gnu.org>
23060
23061 * xmenu.c (set_frame_menubar, xmenu_show):
23062 (xdialog_show): Initialize wv->help to Qnil.
23063
23064 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
23065 (w32_dialog_show): Initialize wv->help to Qnil.
23066
23067 2002-01-06 Jason Rumney <jasonr@gnu.org>
23068
23069 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
23070
23071 * w32menu.c (w32_menu_display_help): Revert last change.
23072
23073 * xmenu.c (menu_highlight_callback): Revert last change.
23074
23075 2002-01-06 Andreas Schwab <schwab@suse.de>
23076
23077 * insdel.c (make_gap_larger): Make sure buffer size does not
23078 overflow range of int.
23079
23080 2002-01-05 Jason Rumney <jasonr@gnu.org>
23081
23082 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
23083 OVERLAPS_P.
23084
23085 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
23086
23087 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
23088 to the left or to the right of the pointer, put it against
23089 the left screen edge.
23090 (x_frame_parms): Add missing braces around initializer.
23091
23092 * w32term.c (x_setup_relief_colors): Don't compute an image's
23093 background color if it doesn't have a Pixmap.
23094 (notice_overwritten_cursor): Don't depend on
23095 output_cursor and updated_area. Compare pixel coordinates with
23096 window's cursor pixel coordinates.
23097 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
23098 Call notice_overwritten_cursor with new arg list.
23099 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
23100 unconditionally.
23101 (x_draw_image_relief): Use predefined macro instead of
23102 constant when the value of `tool_bar_button_relief' is negative.
23103
23104 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
23105
23106 2002-01-04 Richard M. Stallman <rms@gnu.org>
23107
23108 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
23109
23110 2002-01-03 Richard M. Stallman <rms@gnu.org>
23111
23112 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
23113 (Fkey_binding): Try the `keymap' property map first.
23114 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
23115 minor mode bindings.
23116
23117 2002-01-03 Kim F. Storm <storm@cua.dk>
23118
23119 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
23120
23121 2002-01-02 Richard M. Stallman <rms@gnu.org>
23122
23123 * keyboard.c (read_key_sequence): Handle the keymap property
23124 before minor mode maps.
23125
23126 * editfns.c (Fformat): Update thissize from field_width
23127 based on the actual width, in the string case.
23128
23129 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23130
23131 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
23132 when used as truth value to prevent gcc warnings.
23133
23134 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
23135 * w32proc.c: Include <config.h>.
23136
23137 2002-01-01 Andreas Schwab <schwab@suse.de>
23138
23139 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
23140 not EMACS_INT, to make them compatible with DEFVAR_INT.
23141 * lisp.h (max_specpdl_size): Adjust declaration.
23142
23143 2002-01-01 Richard M. Stallman <rms@gnu.org>
23144
23145 * print.c (print_object): Test print_escape_nonascii only for
23146 unibyte strings.
23147 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
23148 when outputting to a multibyte buffer.
23149
23150 2001-12-29 Richard M. Stallman <rms@gnu.org>
23151
23152 * print.c (print_object): In multibyte string, use hex escapes.
23153 Use octal only for unibyte strings.
23154 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
23155
23156 * lread.c (read_escape): New arg BYTEREP for reporting whether
23157 escape forces unibyte or multibyte.
23158 (read1): When reading a string, take note of that info.
23159
23160 2001-12-29 Ken Raeburn <raeburn@gnu.org>
23161
23162 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
23163 comparison to test lisp value returned by Fget.
23164
23165 2001-12-29 Richard M. Stallman <rms@gnu.org>
23166
23167 * lisp.h (max_specpdl_size): Add declaration.
23168
23169 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
23170
23171 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
23172 Handle modifier bits. Correct typo in error message.
23173
23174 2001-12-28 Richard M. Stallman <rms@gnu.org>
23175
23176 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
23177 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
23178 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
23179 Update calls to Fdefine_abbrev.
23180 (write_abbrev): Update for changed data format.
23181 Don't list "system" abbrevs.
23182 (Fexpand_abbrev): Update use count with new data format.
23183 (describe_abbrev): Update for changed data format.
23184 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
23185
23186 * config.in (HAVE_MBSINIT): Add #undef.
23187
23188 * strftime.c (mbsinit): Define as no-op if not available.
23189
23190 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
23191 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
23192
23193 * keymap.c (Flookup_key): Error message if key has wrong data type.
23194 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
23195 (exclude_key): New variable.
23196
23197 2001-12-28 Gerd Moellmann <gerd@gnu.org>
23198
23199 * xterm.c (x_setup_relief_colors): Don't compute an image's
23200 background color if it doesn't have a Pixmap.
23201
23202 * xterm.c (notice_overwritten_cursor): Don't depend on
23203 output_cursor and updated_area. Compare pixel coordinates with
23204 window's cursor pixel coordinates.
23205 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
23206 Call notice_overwritten_cursor with new arg list.
23207 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
23208 unconditionally.
23209
23210 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
23211 height of the cursor line to the amount to scroll.
23212
23213 2001-12-27 Richard M. Stallman <rms@gnu.org>
23214
23215 * intervals.c (set_point_both): The position after an invisible,
23216 intangible character is not an acceptable stopping point.
23217
23218 2001-12-27 Ken Raeburn <raeburn@gnu.org>
23219
23220 * window.c (enlarge_window): In new preserve_before code, convert
23221 CURBEG from lisp object to integer before doing arithmetic.
23222
23223 2001-12-27 Richard M. Stallman <rms@gnu.org>
23224
23225 * bytecode.c (Fbyte_code): Undo previous change.
23226
23227 2001-12-26 Kim F. Storm <storm@cua.dk>
23228
23229 * keyboard.c (record_char): Ignore duplicate help-echo events only
23230 separated by mouse-movement. When tracking mouse, only record
23231 first and last mouse-movement event in same window.
23232 Don't record mouse-movement events in keyboard macros.
23233
23234 2001-12-25 Richard M. Stallman <rms@gnu.org>
23235
23236 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
23237 (Fenlarge_window): New arg PRESERVE_BEFORE.
23238
23239 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
23240 instead of Fstring_as_unibyte.
23241
23242 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23243
23244 The following changes remove mocklisp support:
23245
23246 * mocklisp.h, mocklisp.c: Files removed.
23247
23248 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
23249 `Qmocklisp' and `Qmocklisp_arguments'.
23250 Remove prototype of syms_of_mocklisp.
23251
23252 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
23253
23254 * callint.c: Do not include mocklisp.h.
23255 (Fcall_interactively): Do not test for mocklisp case.
23256
23257 * eval.c: Remove variables `Qmocklisp_arguments',
23258 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
23259 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
23260 Do not test for mocklisp case.
23261 (Fwhile): Remove unused variable `tem'.
23262 (syms_of_eval): Remove variable `moclisp-arguments'.
23263
23264 * data.c (wrong_type_argument): Remove mocklisp case.
23265
23266 * doc.c (Fdocumentation): Remove mocklisp case.
23267
23268 * emacs.c (main): Do not call syms_of_mocklisp.
23269
23270 2001-12-21 Richard M. Stallman <rms@gnu.org>
23271
23272 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
23273 to the left or to the right of the pointer, put it against
23274 the left screen edge.
23275
23276 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
23277
23278 * Makefile.in (distclean): Remove .gdbinit if we are building
23279 outside the source tree.
23280
23281 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
23282
23283 * w32.c (emacs_root_dir): New function.
23284
23285 * msdos.c (emacs_root_dir): New function.
23286
23287 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
23288 of the current drive as the fallback for default_directory.
23289
23290 * dired.c (file_name_completion): Run the elements of
23291 completion-ignored-extensions through ENCODE_FILE.
23292
23293 * lisp.h (scmp): Remove prototype, since it's now a static
23294 function private to dired.c.
23295
23296 2001-12-18 Richard M. Stallman <rms@gnu.org>
23297
23298 * dired.c (scmp): Function moved from minibuf.c.
23299 Delete multibyte handling--used only on encoded strings.
23300
23301 * minibuf.c (scmp): Function moved to dired.c.
23302
23303 * fns.c (merge): Add QUIT call.
23304
23305 2001-12-18 Dave Love <fx@gnu.org>
23306
23307 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
23308 language/georgian.el.
23309
23310 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
23311
23312 * Makefile.in (lisp, shortlisp): Synchronize with changes to
23313 lisp/Makefile.in:DONTCOMPILE.
23314
23315 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23316
23317 * xdisp.c (window_box_height): Do not return negative values.
23318 From Gerd Moellmann <gerd@gnu.org>.
23319
23320 * keyboard.c (head_table): Add missing braces around initializer.
23321
23322 * term.c (keys): Likewise.
23323
23324 * xfns.c (x_frame_parms, visual_classes): Likewise.
23325
23326 2001-12-17 Sam Steingold <sds@gnu.org>
23327
23328 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
23329 patch (COMPOSING_P, not COMPOSING).
23330
23331 2001-12-17 Richard M. Stallman <rms@gnu.org>
23332
23333 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
23334
23335 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
23336 before calling decode_coding.
23337
23338 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
23339
23340 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
23341 instead of only for COMPOSITION_DISABLED.
23342
23343 2001-12-16 Richard M. Stallman <rms@gnu.org>
23344
23345 * alloc.c (pure_alloc): After overflow, allocate just a small block.
23346
23347 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
23348
23349 * buffer.h (struct buffer): New field `display_error_modiff'.
23350 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
23351
23352 * window.c (Frecenter): Clear display_error_modiff field.
23353
23354 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
23355 Call redisplay_window, but not if display_error_modiff field says no.
23356 (redisplay_window_error): New function.
23357 (displayed_buffer): New variable.
23358 (redisplay_internal, redisplay_windows): Call the new functions
23359 instead of redisplay_window directly.
23360
23361 2001-12-15 Richard M. Stallman <rms@gnu.org>
23362
23363 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
23364
23365 2001-12-14 Andrew Innes <andrewi@gnu.org>
23366
23367 * makefile.w32-in (EMACSLOADPATH): Define.
23368 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
23369 (bootstrap-temacs): Remove dependency on bootstrap-clean.
23370
23371 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
23372
23373 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
23374 parameter have a numeric value all the time.
23375
23376 * w32fns.c (x_report_frame_params): Likewise.
23377
23378 2001-12-12 Richard M. Stallman <rms@gnu.org>
23379
23380 * fileio.c (Fwrite_region): Doc fix.
23381
23382 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
23383 (redisplay_internal): Call clear_image_cache only for window terminals.
23384
23385 2001-12-12 Gerd Moellmann <gerd@gnu.org>
23386
23387 * xdisp.c (move_it_vertically_backward): Change heuristic
23388 for the case that we didn't move far enough initially.
23389
23390 * window.c (Frecenter): Simplify computation in the case of window
23391 system frames and ARG < 0; use window_box_height.
23392
23393 2001-12-11 Richard M. Stallman <rms@gnu.org>
23394
23395 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
23396 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
23397
23398 2001-12-11 Andrew Innes <andrewi@gnu.org>
23399
23400 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
23401 arg is negative.
23402
23403 2001-12-11 Richard M. Stallman <rms@gnu.org>
23404
23405 * m/hp800.h: Split the __hpux conditional into the parts
23406 that are right for GNU/Linux too and the parts that are not.
23407 Use the former if GNU_LINUX.
23408 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
23409
23410 * s/gnu-linux.h (GNU_LINUX): Defined.
23411
23412 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23413
23414 * macros.c, msdos.c, w16select.c: Change doc-string comments to
23415 `new style' [w/`doc:' keyword].
23416
23417 2001-12-10 Jason Rumney <jasonr@gnu.org>
23418
23419 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
23420 before using.
23421
23422 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23423
23424 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
23425 keyword].
23426
23427 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
23428
23429 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
23430
23431 * s/hpux10.h (srand48): Don't undefine.
23432
23433 2001-12-09 Jason Rumney <jasonr@gnu.org>
23434
23435 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
23436 Add comment to explain where the struct came from.
23437 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
23438 (add_menu_item): Process pop-up menus first to avoid memory leak.
23439 (add_menu_item, w32_menu_display_help): Use `help' field as
23440 Lisp_Object.
23441 (w32_free_submenu_strings): Only free owner-drawn strings.
23442
23443 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23444
23445 * COPYING: Moved back.
23446
23447 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
23448 Add parentheses around && within ||.
23449
23450 * indent.c (compute_motion): Likewise.
23451
23452 * intervals.c (merge_properties_sticky): Likewise.
23453
23454 * coding.c (setup_coding_system, shrink_encoding_region)
23455 (Fdecode_sjis_char): Likewise.
23456
23457 2001-12-07 Andreas Schwab <schwab@suse.de>
23458
23459 * xdisp.c (display_mode_element): Don't read past end of string if
23460 it ends with '%'.
23461
23462 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
23463 can hold.
23464
23465 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
23466 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
23467 type changed to Lisp_Object.
23468 (syms_of_data): DEFVAR_LISP them.
23469
23470 2001-12-07 Richard M. Stallman <rms@gnu.org>
23471
23472 * callproc.c (init_callproc): Set Vdata_directory based on the source
23473 location whenever Emacs was run uninstalled.
23474
23475 2001-12-06 Paul Eggert <eggert@twinsun.com>
23476
23477 * config.in (HAVE_WORKING_VFORK): New #undefs.
23478 * process.c (create_process):
23479 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
23480 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
23481 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
23482 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
23483 * m/intel386.h (HAVE_VFORK): Likewise.
23484 * m/mips-siemens.h (HAVE_VFORK): Likewise.
23485 * m/mips.h (HAVE_VFORK): Likewise.
23486 * s/freebsd.h (vfork): Remove #define.
23487 * s/lynxos.h (HAVE_VFORK): Remove #undef.
23488 * s/usg5-4-2.h: Fix comment about vfork.
23489
23490 2001-12-06 Richard M. Stallman <rms@gnu.org>
23491
23492 * s/hpux10.h (random): Add undef.
23493 (HAVE_RANDOM): Define it just once.
23494
23495 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
23496
23497 * eval.c: Undo last change: the standard syntax is not wanted.
23498
23499 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
23500
23501 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
23502 scroll bars of the frame before deleting the frame itself. If the
23503 frame has a widget, delete the frame with XtDestroyWidget, and do
23504 not call XDestroyWindow before that.
23505
23506 2001-12-06 Kim F. Storm <storm@cua.dk>
23507
23508 * xfns.c (x_report_frame_params): Return actual fringe widths.
23509
23510 * w32fns.c (x_report_frame_params): Return actual fringe widths.
23511
23512 2001-12-05 Andrew Innes <andrewi@gnu.org>
23513
23514 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
23515 excessively large.
23516
23517 * insdel.c (make_gap_larger): New function.
23518 (make_gap_smaller): New function.
23519 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
23520 Call make_gap_smaller if arg is negative.
23521
23522 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
23523
23524 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
23525 Pass a dummy argument when calling interrupt_signal.
23526 (parse_menu_item): Mark disabled items before checking for empty def.
23527 (read_char_minibuf_menu_prompt): Make safety more visible.
23528 (read_key_sequence): Add a `first_unbound' variable.
23529 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
23530 unbound prefix as soon as we can detect it.
23531
23532 * doc.c (Fsnarf_documentation): Add prototype.
23533 (get_doc_string): Handle negative arguments.
23534 (Fdocumentation): Use AREF and ASIZE.
23535 Move the calls to get_doc_string to a single place.
23536 Don't confuse an interactive-spec for a docstring reference.
23537 (Fdocumentation_property): Take advantage of the fact that
23538 get_doc_string now ignores the sign of the docstring position.
23539
23540 * eval.c: Use standard syntax for usage in docstrings.
23541
23542 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23543
23544 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
23545
23546 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23547
23548 * xterm.c (x_draw_image_relief): Use predefined macro instead of
23549 constant when the value of `tool_bar_button_relief' is negative.
23550
23551 2001-12-02 Richard M. Stallman <rms@gnu.org>
23552
23553 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
23554 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
23555
23556 * fileio.c (read_non_regular): Delete Fsignal call.
23557
23558 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
23559
23560 * lisp.h (run_hook_list_with_args): Undo last change.
23561
23562 2001-12-01 Gerd Moellmann <gerd@gnu.org>
23563
23564 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
23565
23566 2001-12-01 Jason Rumney <jasonr@gnu.org>
23567
23568 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
23569
23570 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
23571 [!WM_MOUSELEAVE]: Define.
23572
23573 * w32menu.c (current_popup_menu, get_menu_item_info):
23574 (set_menu_item_info): New vars.
23575 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
23576 (w32_menu_show): Set current_popup_menu.
23577 (add_menu_item): Allocate new strings for owner-drawn menu items
23578 and help strings.
23579 Use owner-draw for disabled menu items again.
23580 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
23581 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
23582
23583 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
23584 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
23585 <WM_EXITMENULOOP>: Free menu strings.
23586 <WM_MOUSELEAVE>: Stop tracking mouse.
23587 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
23588
23589 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
23590 and mouse face.
23591
23592 2001-12-01 Kim F. Storm <storm@cua.dk>
23593
23594 The following changes add left-fringe and right-fringe
23595 frame parameters to adjust fringe widths, or remove one or
23596 both fringes.
23597
23598 * frame.h (struct frame): Remove trunc_area_pixel_width and
23599 trunc_area_cols fields.
23600 (Qleft_fringe, Qright_fringe): Declare.
23601 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
23602
23603 * frame.c (Qleft_fringe, Qright_fringe): New vars.
23604 (syms_of_frame): Initialize them.
23605
23606 * window.c (coordinates_in_window): Handle separate left and right
23607 fringe widths.
23608
23609 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
23610 and fringe_cols fields.
23611 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
23612 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
23613 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
23614 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
23615 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
23616 (x_compute_fringe_widths): Add prototype.
23617
23618 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
23619 fill fringe evenly with small dashes.
23620 (x_draw_fringe_bitmap): Clear background if necessary. Align and
23621 clip the new ZV bitmap to avoid jitter between rows.
23622 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
23623 background. Don't draw fringe bitmaps if fringe width is zero.
23624 (x_compute_fringe_widths): New function.
23625 (x_new_font, x_set_window_size_1): Use it.
23626
23627 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
23628 (x_set_frame_parameters): Process `font' parameter before other
23629 parameters as fringe widths depend on it.
23630 (x_set_fringe_width): New function.
23631 (x_figure_window_size): Use x_compute_fringe_widths.
23632 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
23633 parameters.
23634
23635 * widget.c (set_frame_size): Use x_compute_fringe_widths.
23636 (EmacsFrameSetCharSize): Ditto.
23637
23638 * w32term.h: Merged changes from xterm.h.
23639 * w32term.c: Merged changes from xterm.c.
23640 * w32fns.c: Merged changes from xfns.c.
23641
23642 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23643
23644 * COPYING: Removed.
23645
23646 2001-11-29 Dave Love <fx@gnu.org>
23647
23648 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
23649 extra extra slot.
23650 (detect_coding_mask): Fix call of detect_coding_iso2022.
23651
23652 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23653
23654 * fileio.c (file-name-coding-system)
23655 (default-file-name-coding-system): Doc fix (links to referenced
23656 variables added).
23657
23658 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
23659
23660 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
23661 Add dummy uses of gcproN variables.
23662
23663 * category.c (describe_category, describe_category_1)
23664 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
23665 (syms_of_category): Don't defsubr Sdescribe_categories.
23666
23667 2001-11-28 Richard M. Stallman <rms@gnu.org>
23668
23669 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
23670
23671 * Makefile.in (lispdir): New variable, referring to build dir.
23672 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
23673
23674 2001-11-28 Andrew Innes <andrewi@gnu.org>
23675
23676 * w32menu.c (w32_menu_display_help): Actually add the new argument
23677 OWNER.
23678
23679 2001-11-28 Jason Rumney <jasonr@gnu.org>
23680
23681 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
23682 menu items. From David Ponce <dponce@wanadoo.fr>.
23683 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
23684 conditionally.
23685 (w32_menu_display_help): New argument OWNER. Rewritten to store a
23686 help event in the owner frame's keyboard buffer.
23687
23688 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
23689 (Fx_show_tip): Don't subtract last width from row width.
23690
23691 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
23692 (w32_read_socket): Use EQ to compare frames.
23693
23694 2001-11-28 Gerd Moellmann <gerd@gnu.org>
23695
23696 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
23697 OVERLAPS_P.
23698
23699 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23700
23701 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
23702 `gcpro3' and `gcpro4'.
23703
23704 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
23705
23706 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
23707
23708 * ccl.c: Use AREF and ASIZE.
23709
23710 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
23711
23712 * lisp.h (run_hook_list_with_args): Remove.
23713 (LIST_END_P): Fix call to wrong_type_argument.
23714 (make_fixnum_or_float): Use EMACS_INT rather than int.
23715
23716 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
23717
23718 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
23719 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
23720
23721 * eval.c: Use AREF and ASIZE.
23722 (Ffetch_bytecode): Add the file name to the error message.
23723
23724 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
23725 which match the end of the file-name.
23726 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
23727 is not a valid env var, but leave it as is instead.
23728
23729 * keymap.c (access_keymap): Handle t bindings like nil bindings.
23730 Make nil bindings in char-tables transparent.
23731 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
23732
23733 2001-11-26 Richard M. Stallman <rms@gnu.org>
23734
23735 * textprop.c (set_text_properties_1): Allow START, END in either order.
23736 Do nothing if range is empty.
23737
23738 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
23739
23740 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
23741 (clean): Not here.
23742
23743 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
23744
23745 * textprop.c (set_text_properties_1): Clearly mark that the
23746 interval should not be empty.
23747
23748 * intervals.c (graft_intervals_into_buffer):
23749 Don't call set_text_properties_1 on an empty interval.
23750
23751 2001-11-25 Richard M. Stallman <rms@gnu.org>
23752
23753 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
23754
23755 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
23756 don't lose the data in it.
23757
23758 2001-11-25 Juanma Barranquero <lektu@terra.es>
23759
23760 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
23761
23762 * buffer.c (Fkill_buffer): Likewise.
23763
23764 * print.c (temp_output_buffer_setup): Likewise.
23765
23766 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
23767
23768 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
23769
23770 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
23771
23772 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
23773 Niemitalo <kon@iki.fi>.
23774
23775 2001-11-25 Jason Rumney <jasonr@gnu.org>
23776
23777 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
23778
23779 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
23780 (Fx_show_tip): Block input during frame creation.
23781 (Fx_show_tip, Fx_hide_tip): Enable.
23782
23783 2001-11-24 Richard M. Stallman <rms@gnu.org>
23784
23785 * lread.c (Fload): Detect recursive load error for more than 3
23786 nestings of the same file.
23787 (Vrecursive_load_depth_limit): Variable deleted.
23788 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
23789
23790 2001-11-24 Jason Rumney <jasonr@gnu.org>
23791
23792 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
23793 mouse position if either left or top is not specified.
23794
23795 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
23796 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
23797 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
23798 (my_create_tip_window): Assign tip_window.
23799 (x_create_tip_frame): Use same defaults as X.
23800 (compute_tip_xy): Remove unused variable. Use full screen width.
23801 (Fx_show_tip): Do not double height. Call ShowWindow directly.
23802
23803 * w32term.c (x_after_update_window_line): Doc fix.
23804 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
23805 frames.
23806 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
23807
23808 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
23809 for all Windowed systems.
23810
23811 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
23812
23813 * msdos.c (IT_clear_screen): If the frame's faces are not yet
23814 realized, use the initial screen colors to clear the screen.
23815
23816 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23817
23818 * textprop.c (Fset_text_properties): Remove unused variables
23819 `unchanged', `prev_changed', `s' and `len'.
23820
23821 * search.c (Freplace_match): Remove unused variable `inslen'.
23822
23823 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
23824
23825 2001-11-22 Jason Rumney <jasonr@gnu.org>
23826
23827 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
23828 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
23829 (my_create_tip_window): New function.
23830 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
23831 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
23832
23833 2001-11-20 Jason Rumney <jasonr@gnu.org>
23834
23835 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
23836 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
23837
23838 * w32fns.c (Vw32_system_coding_system): Remove.
23839 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
23840
23841 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
23842
23843 * fileio.c (Fwrite_region): Move choose_write_coding_system to
23844 after build_annotations.
23845
23846 * syntax.c (describe_syntax): Add dummy arg.
23847 (describe_syntax_1): Update call to describe_vector.
23848
23849 * category.c (describe_category): Add dummy arg.
23850 (describe_category_1): Update call to describe_vector.
23851
23852 * keymap.c (Fdescribe_vector): Add `describer' parameter.
23853 (describe_command, describe_translation): Add dummy second param.
23854 (describe_map): Call elt_describer with two arguments.
23855 (describe_vector_princ): Add `fun' parameter.
23856 Call it instead of the hardcoded `princ'.
23857 (describe_vector): Add arg `args'.
23858 Pass it as a new second argument to elt_describer.
23859
23860 * keymap.h (describe_vector): Update prototype.
23861
23862 * frame.c: Don't include keymap.h any more.
23863 (keys_of_frame): Remove.
23864
23865 * lisp.h (keys_of_frame): Remove declaration.
23866
23867 * emacs.c (main): Don't call `keys_of_frame' any more.
23868
23869 2001-11-14 Andreas Schwab <schwab@suse.de>
23870
23871 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
23872 if defined, 0 otherwise.
23873 (MAP_FAILED): Define if not defined and use it to test mmap failure.
23874 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
23875
23876 2001-11-19 Richard M. Stallman <rms@gnu.org>
23877
23878 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
23879
23880 2001-11-18 Jason Rumney <jasonr@gnu.org>
23881
23882 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
23883 (x_draw_bar_cursor): If the background color of the glyph under
23884 the cursor equals the frame's cursor color, use the glyph's
23885 foreground color for drawing the bar cursor.
23886 (x_after_update_window_line): Clear internal border in different
23887 circumstances.
23888 (w32_set_vertical_scroll_bar): Check for width and height > 0.
23889 (w32_draw_relief_rect): Correct relief by 1 pixel.
23890 (x_set_glyph_string_background_width):
23891 Set extends_to_end_of_line_p if the row's fill_line_p is set and
23892 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
23893 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
23894 if cursor_in_non_selected_windows is false.
23895 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
23896 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
23897 Notice if cursor gets overwritten.
23898 (notice_overwritten_cursor): Renamed from
23899 note_overwritten_text_cursor. Rewritten to take glyph widths
23900 into account, and to take X positions as parameters.
23901 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
23902 around call to x_draw_glyphs.
23903 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
23904 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
23905 color to use for image glyph reliefs.
23906 (x_draw_image_relief): Accept zero tool_bar_button_relief.
23907 (glyph_rect): Remove unused variable `area'.
23908
23909 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
23910 some items.
23911 (x_set_internal_border_width): Set frame garbaged when window
23912 doesn't exist yet.
23913 (Fx_create_frame): Accept zero tool_bar_button_relief.
23914 (x_clear_image_1, four_corners_best, image_background)
23915 (image_background_transparent): New functions.
23916 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
23917 (gs_format): Add `:background' entry.
23918 (lookup_image): Set IMG's background color if specified.
23919 (pbm_load, xbm_load_image, png_load): Set IMG's background field
23920 when appropriate.
23921 (x_clear_image_1): Reset `background_valid' and
23922 `background_transparent_valid' fields.
23923 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
23924 calculating it here. Set IMG's background_transparent field.
23925 (enum xpm_keyword_index): Add XPM_BACKGROUND.
23926 (enum png_keyword_index): Add PNG_BACKGROUND.
23927 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
23928 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
23929 (enum gif_keyword_index): Add GIF_BACKGROUND.
23930 (enum gs_keyword_index): Add GS_BACKGROUND.
23931 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
23932 Pre-calculate image background color where necessary.
23933 (x_create_x_image_and_pixmap, xbm_load, gs_load):
23934 Use display info's n_cbits entry for screen depth.
23935 (Fx_show_tip): Remove unused variables `buffer', `top',
23936 `left', `max_width' and `max_height'.
23937
23938 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
23939
23940 2001-11-18 Gerd Moellmann <gerd@gnu.org>
23941
23942 * puresize.h (BASE_PURESIZE): Increase to 750000.
23943
23944 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23945
23946 * frame.c (Fframe_live_p): Doc fix.
23947
23948 2001-11-18 Richard M. Stallman <rms@gnu.org>
23949
23950 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
23951 (message_dolog_marker3): New static variables hold three markers.
23952 (syms_of_xdisp): Initialize and staticpro them.
23953 (message_dolog): Use message_dolog_marker1..3 instead of
23954 allocating markers each time. Unchain them when done.
23955
23956 2001-11-17 Richard M. Stallman <rms@gnu.org>
23957
23958 * doc.c (Fsnarf_documentation): Doc fix.
23959
23960 2001-11-17 Andreas Schwab <schwab@suse.de>
23961
23962 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
23963
23964 2001-11-17 Richard M. Stallman <rms@gnu.org>
23965
23966 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
23967
23968 2001-11-17 Jason Rumney <jasonr@gnu.org>
23969
23970 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
23971
23972 2001-11-17 Gerd Moellmann <gerd@gnu.org>
23973
23974 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
23975 with invalid position.
23976
23977 2001-11-16 Richard M. Stallman <rms@gnu.org>
23978
23979 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
23980
23981 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
23982 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
23983 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
23984
23985 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
23986
23987 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
23988
23989 * fileio.c (build_annotations): Split off the tail.
23990 (build_annotations_2): New fun. Extracted from build_annotations.
23991 (Fwrite_region): Split the call to build_annotations into two
23992 calls to build_annotations and build_annotations_2.
23993
23994 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23995
23996 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
23997 clear_waiting_for_input with argument.
23998
23999 * xterm.h (x_update_cursor): Remove duplicated prototype.
24000
24001 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
24002
24003 * xterm.c (waiting_for_input): Remove unnecessary declaration.
24004
24005 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
24006
24007 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
24008
24009 * fileio.c (choose_write_coding_system): New fun, extracted
24010 from Fwrite_region.
24011 (Fwrite_region): Use it.
24012
24013 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
24014 (funcall_lambda, run_hook_with_args): Make static and add prototype.
24015 (ml_apply, find_handler_clause): Add prototype.
24016
24017 2001-11-16 Eli Zaretskii <eliz@gnu.org>
24018
24019 * config.in: Add #undef HAVE_COFF_H.
24020
24021 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
24022 Required for ISC 4.1.
24023
24024 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
24025
24026 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
24027 Andrew Wiseman <a.wiseman@btclick.com>.
24028
24029 2001-11-16 Kim F. Storm <storm@cua.dk>
24030
24031 The following changes are made to clean up the various internal
24032 references to the fringes to actually use the term `fringe' for
24033 them. Previously, they were called `flags areas', `bitmap areas',
24034 `left/right side of windows', or implicitly as `flags' or
24035 `bitmaps':
24036
24037 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
24038 Comments fixed. Use renamed symbols.
24039
24040 * dispnew.c: Comment fix. Use renamed symbols.
24041
24042 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
24043 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
24044 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
24045
24046 * msdos.c: Comment fix.
24047
24048 * w32fns.c: Use renamed symbols.
24049
24050 * w32term.c: Comment fixes. Use renamed symbols.
24051 (fringe_bitmap_type): Renamed from bitmap_type.
24052 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
24053 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
24054 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
24055
24056 * w32term.h: Comment fixes. Use renamed symbols.
24057 (fringes_extra): Renamed from flags_areas_extra.
24058 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
24059 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
24060 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
24061 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
24062 (FRAME_X_LEFT_FRINGE_WIDTH):
24063 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
24064 (FRAME_X_RIGHT_FRINGE_WIDTH):
24065 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
24066
24067 * widget.c: Use renamed symbols.
24068
24069 * window.c: Comment fixes. Use renamed symbols.
24070 (coordinates-in-window-p): Doc fix.
24071
24072 * xdisp.c: Comment fixes. Use renamed symbols.
24073
24074 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
24075
24076 * xfns.c: Use renamed symbols.
24077
24078 * xterm.c: Comment fixes. Use renamed symbols.
24079 (fringe_bitmap_type): Renamed from bitmap_type.
24080 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
24081 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
24082 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
24083
24084 * xterm.h: Comment fixes. Use renamed symbols.
24085 (fringes_extra): Renamed from flags_areas_extra.
24086 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
24087 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
24088 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
24089 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
24090 (FRAME_X_LEFT_FRINGE_WIDTH):
24091 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
24092 (FRAME_X_RIGHT_FRINGE_WIDTH):
24093 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
24094
24095 2001-11-15 Jason Rumney <jasonr@gnu.org>
24096
24097 * w32menu.c (add-menu-item): Make help_echo and radio buttons
24098 work for most menu items. From David Ponce
24099 <david.ponce@wanadoo.fr>.
24100
24101 2001-11-15 Gerd Moellmann <gerd@gnu.org>
24102
24103 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
24104 Some x_set_* function expect to be called even if old and new
24105 value are equal.
24106
24107 * xdisp.c (build_desired_tool_bar_string): Accept zero
24108 tool_bar_button_relief.
24109
24110 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
24111
24112 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
24113
24114 * xterm.c (x_draw_bar_cursor): If the background color of the
24115 glyph under the cursor equals the frame's cursor color, use
24116 the glyph's foreground color for drawing the bar cursor.
24117
24118 * dispnew.c (direct_output_forward_char): Fix character/byte
24119 position comparison.
24120
24121 2001-11-15 Miles Bader <miles@gnu.org>
24122
24123 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
24124 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
24125 Update arguments to find_field.
24126 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
24127 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
24128 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
24129 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
24130
24131 2001-11-14 Richard M. Stallman <rms@gnu.org>
24132
24133 * editfns.c (Fpropertize): Allow call with 1 arg.
24134
24135 * dispextern.h (image_background, image_background_transparent):
24136 Conditionalize on HAVE_X_WINDOWS.
24137
24138 2001-11-13 Richard M. Stallman <rms@gnu.org>
24139
24140 * print.c (Fprin1_to_string): Doc fix.
24141
24142 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
24143
24144 * floatfns.c (Fceiling, Ffloor): Doc fixes.
24145
24146 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
24147
24148 * fileio.c (Ffile_accessible_directory_p): Doc fix.
24149
24150 * eval.c (syms_of_eval): Doc fix.
24151
24152 * coding.c (syms_of_coding): Doc fix.
24153
24154 * doc.c (Fsnarf_documentation): Doc fix.
24155
24156 * dispnew.c (syms_of_display): Doc fix.
24157
24158 * category.c (Fget_unused_category): Doc fix.
24159
24160 * buffer.c (syms_of_buffer): Doc fixes.
24161
24162 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
24163
24164 * print.c (prin1, print): Doc fix.
24165
24166 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24167
24168 * fontset.h: Remove declarations of variables
24169 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
24170
24171 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
24172 `Vclip_large_size_font'.
24173
24174 2001-11-13 Jason Rumney <jasonr@gnu.org>
24175
24176 * w32fns.c: Doc fix.
24177
24178 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24179
24180 * xfaces.c (Fface_attributes_as_vector): Doc fix.
24181
24182 * fns.c: Doc fix.
24183
24184 * emacs.c: Doc fix.
24185
24186 * coding.c: Doc fix.
24187
24188 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
24189 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
24190 `new style' [w/`doc:' keyword].
24191
24192 2001-11-12 Richard M. Stallman <rms@gnu.org>
24193
24194 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
24195 LeaveNotify events. Only FocusIn and FocusOut do that now.
24196 (x_display_and_set_cursor): Do display hollow cursors in active
24197 minibuffer windows when they are not selected.
24198
24199 2001-11-12 Jason Rumney <jasonr@gnu.org>
24200
24201 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
24202 * w32term.c: Change doc-string comments to `new style'
24203 [w/`doc:' keyword]. Doc fixes.
24204
24205 * w32fns.c: Don't define max.
24206 (Fx_open_connection): Only execute once.
24207
24208 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24209
24210 * ccl.c: Change macros to use do-while block instead of if-else.
24211 Use braces to follow GNU Coding Standards.
24212
24213 2001-11-11 Richard M. Stallman <rms@gnu.org>
24214
24215 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
24216
24217 * lread.c (read_escape): Use end_of_file_error for reporting eof.
24218
24219 * insdel.c (replace_range): Use adjust_markers_for_replace
24220 instead of adjust_markers_for_delete and adjust_markers_for_insert.
24221
24222 * intervals.h (set_text_properties, set_text_properties_1): Declare.
24223
24224 * textprop.c (set_text_properties_1): New subroutine
24225 broken out of set_text_properties.
24226 (set_text_properties): Use set_text_properties_1.
24227
24228 * intervals.c (graft_intervals_into_buffer):
24229 Use set_text_properties_1 to clear out properties.
24230
24231 * search.c (Freplace_match): Use replace_range to insert
24232 and delete. Don't request property inheritance from
24233 surrounding text.
24234
24235 2001-11-10 Jason Rumney <jasonr@gnu.org>
24236
24237 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
24238 vertical fonts. Allow them if face name is explicitly specified.
24239 Do not give up if we find a font that cannot be converted to an xlfd.
24240
24241 2001-11-10 Gerd Moellmann <gerd@gnu.org>
24242
24243 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
24244 instead of malloc/free.
24245
24246 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24247
24248 * xfaces.c (merge_face_vectors): Use braces to follow GNU
24249 Coding Standards.
24250 (Finternal_set_lisp_face_attribute): Likewise.
24251
24252 * buffer.c (Fbury_buffer): Likewise.
24253
24254 * indent.c (current_column_1): Remove unused variable `prev_col'.
24255
24256 * coding.c (encode_coding): Use precomputed value of `src'.
24257 (encode_coding): Remove unused variable `src_end'.
24258 (code_convert_region): Remove unused variables `count'.
24259
24260 2001-11-07 Jason Rumney <jasonr@gnu.org>
24261
24262 * w32term.c (x_display_and_set_cursor): Do not move system caret
24263 if cursor_glyph is NULL.
24264
24265 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24266
24267 * keymap.c (access_keymap): Fix compilation error.
24268
24269 2001-11-07 Miles Bader <miles@gnu.org>
24270
24271 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
24272
24273 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24274
24275 * intervals.c (graft_intervals_into_buffer):
24276 Remove #ifdef'd-out code.
24277 (graft_intervals_into_buffer): Remove unused variable `middle'.
24278
24279 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
24280 code (eval-current-buffer).
24281 Change doc-string comments to `new style' [w/`doc:' keyword].
24282
24283 2001-11-06 Richard M. Stallman <rms@gnu.org>
24284
24285 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
24286
24287 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
24288
24289 * lread.c (read1): Fix behavior with nested backquoting.
24290
24291 * keyboard.c (make_lispy_event): Check integerness and fix
24292 Lisp_Object/int mixup.
24293
24294 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24295
24296 * fns.c (copy_hash_table): Remove unused variable `v'.
24297
24298 * fontset.c (fontset_font_pattern): Remove unused variable
24299 `family_registry'.
24300
24301 * indent.c (current_column_1): Remove unused variable `prev_col'.
24302
24303 2001-11-05 Richard M. Stallman <rms@gnu.org>
24304
24305 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
24306
24307 * buffer.c (Fkill_buffer): Don't delete auto save file
24308 if buffer is modified.
24309
24310 2001-11-05 Andrew Innes <andrewi@gnu.org>
24311
24312 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
24313 CHECK_NUMBER_CDR.
24314
24315 2001-11-05 Richard M. Stallman <rms@gnu.org>
24316
24317 * unexelf.c (unexec): Minor changes; clean up comments.
24318
24319 2001-11-05 Sam Steingold <sds@gnu.org>
24320
24321 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
24322
24323 2001-11-05 Andreas Schwab <schwab@suse.de>
24324
24325 * sound.c (sound_perror): Save errno from being clobbered.
24326
24327 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
24328
24329 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
24330 the program image directly.
24331
24332 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24333
24334 * buffer.h (Fbuffer_local_value): Add prototype.
24335
24336 2001-11-04 Richard M. Stallman <rms@gnu.org>
24337
24338 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
24339 and CHECK_BUFFER.
24340
24341 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
24342 (record_char): Likewise.
24343
24344 * keyboard.c (make_lispy_event): Don't insist a drag event must
24345 move to a different buffer position. Instead, check for moving at
24346 least double_click_fuzz.
24347
24348 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
24349
24350 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
24351
24352 * indent.c (current_column_1, Fmove_to_column): Separate the code
24353 for display-table glyphs from the code for buffer text, to fix
24354 bugs in the former.
24355
24356 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
24357
24358 * buffer.c (Fbuffer_local_value): New function.
24359 (syms_of_buffer): Defsubr it.
24360
24361 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
24362 value of `cursor-in-non-selected-windows'.
24363
24364 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
24365 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
24366 (syms_of_xdisp): Initialize it.
24367
24368 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24369
24370 * xfns.c (Fx_create_frame): Doc fix.
24371
24372 * coding.c: Change doc-string comments to `new style' [w/`doc:'
24373 keyword].
24374
24375 * eval.c (top_level_value, top_level_set): Remove commented and
24376 #ifdef'd-out code.
24377 (Fdefvar): Fix usage in doc-string.
24378
24379 2001-11-03 Richard M. Stallman <rms@gnu.org>
24380
24381 * xfns.c: Include unistd.h, if it exists.
24382
24383 * editfns.c: Move the include of ctype.h after unistd.h.
24384
24385 * gmalloc.c: Test BROKEN_PROTOTYPES.
24386
24387 2001-11-03 Ken Raeburn <raeburn@gnu.org>
24388
24389 * lisp.h (CHECK_STRING_CAR): New macro.
24390 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
24391 treating XCAR and XCDR as lvalues.
24392 (openp): Use CHECK_STRING_CAR.
24393 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
24394
24395 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
24396
24397 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
24398 (SIGMASKTYPE): Define.
24399
24400 * syssignal.h (sigunblock): Don't define if already defined.
24401
24402 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24403
24404 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
24405 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
24406 Fix typos in comments.
24407
24408 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
24409 and #ifdef'd-out code.
24410 Fix and reindent comments.
24411
24412 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
24413
24414 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
24415 argument `i' in macros.
24416
24417 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
24418 `i' in macros.
24419
24420 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
24421 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
24422 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
24423 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
24424 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
24425 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
24426 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
24427 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
24428 in macros.
24429
24430 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
24431 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
24432 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
24433 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
24434 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
24435 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
24436 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
24437 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
24438 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
24439 (remove unused second argument).
24440
24441 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
24442
24443 * syntax.c (describe_syntax): New wrapper.
24444 (Finternal_describe_syntax_value): Rename from describe_syntax.
24445 Don't insert space at front and \n at the end.
24446 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
24447
24448 * regex.c (re_wctype): Try to fix some warnings.
24449 (regcomp, regexec): Don't forget the __restrict.
24450
24451 2001-11-02 Richard M. Stallman <rms@gnu.org>
24452
24453 * textprop.c (Fget_char_property): Doc fix.
24454
24455 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24456
24457 * process.c (Fstart_process): Add usage to doc-string.
24458
24459 * data.c (Fsetq_default): Ditto.
24460
24461 * callint.c (Finteractive): Ditto.
24462
24463 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
24464
24465 * macros.c: Don't include keymap.h any more.
24466
24467 2001-11-01 Richard M. Stallman <rms@gnu.org>
24468
24469 * data.c (Fmake_local_variable): Doc fix.
24470
24471 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
24472 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
24473
24474 * keymap.c (Fdescribe_buffer_bindings): Print character property
24475 bindings along with or instead of the buffer local map.
24476 Make the overriding maps override what they should.
24477
24478 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24479
24480 * window.c (grow_mini_window): Fix typo in comment.
24481
24482 2001-11-01 Gerd Moellmann <gerd@gnu.org>
24483
24484 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
24485 (XTset_vertical_scroll_bar): Likewise.
24486
24487 * xfns.c (x_build_heuristic_mask): Use four_corners_best
24488 instead of IMAGE_BACKGROUND.
24489
24490 * xfns.c (four_corners_best): Reindent.
24491
24492 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
24493 Handle :box so that it is possible to specify sexprs.
24494
24495 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
24496
24497 * s/hpux11.h: New file.
24498
24499 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24500
24501 * emacs.c (USAGE1): Show command line option --no-window-system
24502 instead of --no-windows in usage.
24503 (standard_args): Rename --no-windows to --no-window-system.
24504 (bug_reporting_address): Follow Emacs coding conventions.
24505
24506 * eval.c (Fcommandp): Doc fix.
24507 Change doc-string comments to `new style' [w/`doc:' keyword].
24508
24509 * frame.c (Fframe_live_p): Doc fix.
24510
24511 * buffer.c (selective-display-ellipses): Doc fix.
24512
24513 2001-10-31 Gerd Moellmann <gerd@gnu.org>
24514
24515 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
24516
24517 * xfaces.c (realize_x_face): If C is not a single-byte character,
24518 set the face's colors_copied_bitwise_p instead of the defaulted_p
24519 members which have a different meaning.
24520 (free_face_colors): Do nothing for a face whose colors have been
24521 copied bitwise.
24522
24523 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
24524
24525 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24526
24527 * marker.c, mocklisp.c: Change doc-string comments to `new style'
24528 [w/`doc:' keyword].
24529
24530 2001-10-31 Gerd Moellmann <gerd@gnu.org>
24531
24532 * fns.c (require_unwind): Return Lisp_Object.
24533
24534 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24535
24536 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
24537 (last-input-char): Revert doc-string to be the same as the
24538 doc-string of `last-input-event'.
24539
24540 * xdisp.c: Fix typos in comments.
24541
24542 2001-10-31 Gerd Moellmann <gerd@gnu.org>
24543
24544 * window.c (grow_mini_window): Handle case that the root
24545 window is already smaller than the nominal mininum height.
24546
24547 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
24548
24549 * emacs.c (main): Don't call keys_of_macros any more.
24550
24551 * lisp.h (keys_of_macros): Remove.
24552
24553 * macros.c (keys_of_macros): Remove.
24554
24555 * xfaces.c (Fface_attribute_relative_p): Declare args.
24556
24557 2001-10-30 Jason Rumney <jasonr@gnu.org>
24558
24559 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
24560 (enum_font_cb2): Ignore fonts with vertical orientation.
24561
24562 2001-10-30 Richard M. Stallman <rms@gnu.org>
24563
24564 * keyboard.c (Finput_pending_p): Doc fix.
24565
24566 2001-10-30 Gerd Moellmann <gerd@gnu.org>
24567
24568 * xterm.c (x_after_update_window_line): Don't run the code
24569 clearing in borders for rows whose visible height is 0.
24570
24571 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
24572 resized_p flag is set. If not set, use the much less flickering
24573 method previously used.
24574
24575 * dispnew.c (change_frame_size_1): Set frame's resized_p.
24576
24577 * frame.h (struct frame) <resized_p>: New member.
24578
24579 * lread.c (to_multibyte): Ensure read_buffer is at least twice
24580 as large as the number of bytes to convert.
24581
24582 * lread.c (to_multibyte): New function.
24583 (read1): Use it.
24584
24585 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
24586
24587 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
24588
24589 2001-10-30 Gerd Moellmann <gerd@gnu.org>
24590
24591 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
24592 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
24593 if the row's fill_line_p is set and drawing the last glyph with
24594 DRAW_IMAGE_{RAISED,SUNKEN}.
24595
24596 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
24597
24598 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
24599
24600 * xmenu.c: Include coding.h and charset.h.
24601 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
24602 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
24603 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
24604 Explicitly set wv->help. Use `TRUE' rather than `True'.
24605 (menu_help_callback): Use empty_string.
24606
24607 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
24608 (Fx_popup_dialog): Explicitly init f.
24609 (w32_menu_display_help): Use empty_string.
24610
24611 2001-10-29 Richard M. Stallman <rms@gnu.org>
24612
24613 * fns.c (Frequire): Detect recursive try to require the same
24614 feature 3 or more levels deep, and get error.
24615 (require_unwind): New subroutine.
24616 (require_nesting_list): New variable.
24617 (syms_of_fns): Init and staticpro it.
24618
24619 * print.c (print_object): Clarify indication of insertion type.
24620
24621 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
24622
24623 * coding.c (syms_of_coding): Document that locale-coding-system is
24624 used for decoding input on X.
24625
24626 * window.c (Fscroll_left, Fscroll_right): Doc fix.
24627
24628 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24629
24630 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
24631 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
24632
24633 2001-10-29 Gerd Moellmann <gerd@gnu.org>
24634
24635 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
24636 use NO_CURSOR if cursor_in_non_selected_windows is false.
24637
24638 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
24639 the slant attribute if FRAME is t.
24640
24641 * xfns.c (x_set_internal_border_width): Set frame garbaged
24642 when X window doesn't exist yet.
24643
24644 * xterm.c (x_after_update_window_line): Clear internal border
24645 in different circumstances.
24646
24647 * xterm.c (XTread_socket) <KeyPress>: Don't use
24648 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
24649 <handa@etl.go.jp>.
24650
24651 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
24652
24653 * m/ibms390.h: New file. From Adam Thornton
24654 <athornton@sinenomine.net>.
24655
24656 2001-10-28 Gerd Moellmann <gerd@gnu.org>
24657
24658 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
24659
24660 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
24661 a loop counter.
24662
24663 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24664
24665 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
24666
24667 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
24668 keyword].
24669 Fix typos in comments.
24670
24671 * emacs.c (bug_reporting_address): New function.
24672 Use it when displaying usage message.
24673
24674 * minibuf.c (read_minibuf): Remove unused external declaration of
24675 variable `Qread_only'.
24676
24677 * keymap.c (access_keymap): Remove unused variable `charset'.
24678
24679 2001-10-28 Miles Bader <miles@gnu.org>
24680
24681 * xfaces.c (merge_face_heights): Handle TO being relative as well.
24682 Remove #ifdef'd-out code.
24683 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
24684 (syms_of_xfaces): Initialize them.
24685
24686 2001-10-27 Jason Rumney <jasonr@gnu.org>
24687
24688 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
24689 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
24690 position using the system caret.
24691
24692 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
24693 (w32_system_caret_height, w32_system_caret_x)
24694 (w32_system_caret_y): New variables for tracking system caret.
24695 (w32_initialize): Initialize them.
24696 (x_display_and_set_cursor): Make system caret follow the active cursor.
24697
24698 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
24699 New messages types.
24700
24701 * w32term.c (note_mouse_highlight): Clear old help_echo.
24702
24703 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24704
24705 * xterm.c: Fix typo in a comment.
24706
24707 * emacs.c: Fix typos in comments.
24708 Remove unnecessary spaces.
24709 Change doc-string comments to `new style' [w/`doc:' keyword].
24710 (USAGE2): Fix typos in usage string.
24711
24712 * xterm.c: Fix typo in a comment.
24713
24714 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
24715 emacs.c.
24716
24717 2001-10-27 Gerd Moellmann <gerd@gnu.org>
24718
24719 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
24720 instead of 1/2 line_height in the heuristic for skipping
24721 farther backward when target_y was not reached.
24722
24723 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
24724 Display errno only if non-zero.
24725 (sound_warning): New function.
24726 (vox_configure): Don't treat failing to set sample rate as error.
24727 (various places): Improve error messages.
24728
24729 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
24730
24731 * fileio.c (Faccess_file): Run the argument filename through
24732 Fexpand_file_name, before using it.
24733
24734 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
24735 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
24736
24737 2001-10-26 Gerd Moellmann <gerd@gnu.org>
24738
24739 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
24740
24741 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
24742 Fix clearing in the case of scroll bars on the right.
24743
24744 2001-10-26 Juanma Barranquero <lektu@terra.es>
24745
24746 * w32gui.h (XImage): Add a dummy typedef.
24747
24748 2001-10-26 Gerd Moellmann <gerd@gnu.org>
24749
24750 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
24751
24752 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
24753
24754 * frame.c (Fframe_parameter): Fix last change.
24755
24756 * fileio.c: Revert last change (which removed old commented-out
24757 version of expand-file-name). Add a comment that explains why
24758 this old version should not be removed.
24759
24760 2001-10-25 Gerd Moellmann <gerd@gnu.org>
24761
24762 * frame.c (Fframe_parameter): Fix a bug whereby some
24763 ``artificial'' frame parameters, like `minibuffer' were not
24764 obtained by calling Fframe_parameters.
24765
24766 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
24767 cursor differently.
24768
24769 * xdisp.c (move_it_vertically_backward): Compute line height
24770 differently. Add heuristic to try to be more compatible to 20.x.
24771
24772 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
24773
24774 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
24775
24776 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
24777 boolean.
24778
24779 2001-10-25 Miles Bader <miles@gnu.org>
24780
24781 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
24782 BG is a pointer to a structure, not a structure.
24783 (gif_format, png_format): Add missing commas.
24784
24785 2001-10-24 Richard M. Stallman <rms@gnu.org>
24786
24787 * xfaces.c (Fface_attributes_as_vector): New function.
24788 (syms_of_xfaces): Defsubr it.
24789
24790 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24791
24792 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
24793 variable `area'.
24794
24795 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24796
24797 * search.c (scan_newline): Remove unused variable `selective_display'.
24798
24799 2001-10-25 Miles Bader <miles@gnu.org>
24800
24801 * dispextern.h (struct image): Add `background',
24802 `background_valid', and `background_transparent' fields.
24803 (image_background, image_background_transparent): New declarations.
24804 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
24805 * xfns.c (image_background, image_background_transparent)
24806 (four_corners_best): New functions.
24807 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
24808 (gs_format): Add `:background' entry.
24809 (lookup_image): Set IMG's background color if specified.
24810 (pbm_load, xbm_load_image, png_load): Set IMG's background field
24811 when appropriate.
24812 (x_clear_image_1): Reset `background_valid' and
24813 `background_transparent_valid' fields.
24814 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
24815 calculating it here. Set IMG's background_transparent field.
24816 (enum xpm_keyword_index): Add XPM_BACKGROUND.
24817 (enum png_keyword_index): Add PNG_BACKGROUND.
24818 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
24819 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
24820 (enum gif_keyword_index): Add GIF_BACKGROUND.
24821 (enum gs_keyword_index): Add GS_BACKGROUND.
24822 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
24823 Pre-calculate image background color where necessary.
24824 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
24825 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
24826 color to use for image glyph reliefs.
24827
24828 2001-10-24 Gerd Moellmann <gerd@gnu.org>
24829
24830 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
24831 in full-width rows.
24832
24833 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
24834 Fix clearing of area not covered by scroll bar.
24835
24836 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24837
24838 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
24839 and `real_start'.
24840 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
24841 (glyph_rect): Remove unused variable `area'.
24842
24843 2001-10-24 Gerd Moellmann <gerd@gnu.org>
24844
24845 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
24846
24847 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
24848 (row_containing_pos): Take additional argument DY.
24849 Treat rows ending in middle of char differently.
24850 (display_line): Handle tabs on window systems differently.
24851
24852 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
24853 with additional argument.
24854
24855 * dispextern.h (row_containing_pos): Adjust prototype.
24856
24857 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
24858 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
24859 (try_window_id, try_window_reusing_current_matrix)
24860 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
24861 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
24862
24863 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24864
24865 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
24866 gnuemacs).
24867 (HAVE_BOXES): Fix typo in comment.
24868 (push_menu_pane): Fix typo in comment.
24869
24870 * xdisp.c (display_prop_string_p): Remove unused local declaration
24871 of `Qwhen'.
24872 (single_display_prop_string_p): Remove unused local declarations
24873 of `Qwhen' and `Qmargin'.
24874 (string_buffer_position): Remove unused variable `around'.
24875 (store_frame_title): Remove unused variable `width'.
24876
24877 * window.c: Don't define max.
24878 (coordinates_in_window): Remove unused variable `uy'.
24879
24880 * widget.c: Don't define max.
24881
24882 * process.c: Don't define max.
24883 (create_process): Remove unused variable `buffer'.
24884
24885 2001-10-23 Gerd Moellmann <gerd@gnu.org>
24886
24887 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
24888
24889 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
24890
24891 * xfaces.c (Finternal_set_lisp_face_attribute)
24892 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
24893 frame is on a windowed display.
24894
24895 2001-10-23 Gerd Moellmann <gerd@gnu.org>
24896
24897 * dispnew.c (sync_window_with_frame_matrix_rows):
24898 Fix handling of windows which aren't full-width, fix handling
24899 of marginal areas.
24900
24901 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24902
24903 2001-10-23 Andreas Schwab <schwab@suse.de>
24904
24905 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
24906 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
24907
24908 2001-10-23 Gerd Moellmann <gerd@gnu.org>
24909
24910 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
24911 REAL_END. Notice if cursor gets overwritten.
24912 (notice_overwritten_cursor): Take X positions as parameters.
24913 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
24914 around call to x_draw_glyphs.
24915
24916 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24917
24918 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
24919 instead of C) and usage.
24920
24921 * editfns.c (char-to-string): Fix argument names (use CHAR instead
24922 of C) and usage.
24923
24924 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
24925 `left', `max_width' and `max_height'.
24926
24927 2001-10-23 Gerd Moellmann <gerd@gnu.org>
24928
24929 * xdisp.c (display_line): For a tab continued to the next line,
24930 set row's ends_in_middle_of_char_p.
24931
24932 2001-10-22 Gerd Moellmann <gerd@gnu.org>
24933
24934 * xdisp.c (display_line): Fix computation of continuation lines
24935 width for TABs.
24936
24937 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24938
24939 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
24940 `Qlaplace'.
24941
24942 * fileio.c: Remove unused code.
24943
24944 2001-10-22 Miles Bader <miles@gnu.org>
24945
24946 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
24947 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
24948 Remove `DOC_STRINGS_IN_COMMENTS' cases.
24949
24950 2001-10-21 Jason Rumney <jasonr@gnu.org>
24951
24952 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
24953
24954 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
24955
24956 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
24957 (Finsert_string): Avoid the multi-line string literals warning.
24958
24959 2001-10-22 Miles Bader <miles@gnu.org>
24960
24961 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
24962 (Fdocumentation): Don't use it.
24963 (syms_of_doc): Don't initialize it.
24964
24965 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
24966 * print.c (Fwith_output_to_temp_buffer): Likewise.
24967 * window.c (Fsave_window_excursion): Likewise.
24968 * editfns.c (Fsave_excursion, Fsave_current_buffer)
24969 (Fsave_restriction): Likewise.
24970 * eval.c (Frun_hooks, Frun_hook_with_args)
24971 (Frun_hook_with_args_until_failure)
24972 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
24973 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
24974 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
24975 (Funwind_protect, Fcondition_case): Likewise.
24976 * coding.c (Ffind_operation_coding_system): Likewise.
24977 * keyboard.c (Ftrack_mouse): Likewise.
24978
24979 2001-10-21 Miles Bader <miles@gnu.org>
24980
24981 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
24982 (Fmake_hash_table): Add usage: string to doc string.
24983 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
24984 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
24985 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
24986 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
24987 (Fml_prefix_argument_loop): Likewise.
24988
24989 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24990
24991 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
24992
24993 * sysdep.c (init_sys_modes): Change doc-string comments to `new
24994 style' [w/`doc:' keyword].
24995
24996 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
24997 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
24998 comments to `new style' [w/`doc:' keyword].
24999
25000 2001-10-21 Jason Rumney <jasonr@gnu.org>
25001
25002 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
25003
25004 * w32term.c (remember_mouse_glyph): New function.
25005 (w32_mouse_position): Use it.
25006 (note_mouse_movement): If the mouse moved off the glyph, remember
25007 its new position.
25008
25009 * w32term.h (struct w32_output): Correct spelling of x_compatible.
25010 (w32_display_info): Add mouse_face_overlay.
25011
25012 * w32term.c (notice_overwritten_cursor): Renamed from
25013 note_overwritten_text_cursor. Rewritten to take glyph widths into
25014 account.
25015 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
25016 (fast_find_string_pos): New function.
25017 (fast_find_position): Return the correct vpos. Add parameter
25018 STOP. In the final row, stop before glyphs having STOP as object.
25019 Don't consider glyphs that are not from a buffer.
25020 (fast_find_position) [0]: Add a presumably more correct version
25021 for after 21.1.
25022 (expose_window_tree, expose_frame): Don't compute intersections here.
25023 (expose_window): Do it here instead.
25024 (expose_window_tree, expose_window, expose_line): Return 1 when
25025 overwriting mouse-face.
25026 (expose_window): If W is the window currently being updated, mark
25027 the frame garbaged.
25028 (expose_frame): If mouse-face was overwritten, redo it.
25029 (x_use_underline_position_properties): New variable.
25030 (syms_of_xterm): DEFVAR_BOOL it.
25031 (x_draw_glyph_string): Add comment to use it in future.
25032 (x_draw_glyph_string): Restore clipping after drawing box.
25033 Fix a computation of the underline position.
25034 (w32_get_glyph_string_clip_rect): Minor cleanup.
25035 (x_fill_stretch_glyph_string): Remove an assertion.
25036 (x_produce_glyphs): Don't convert multibyte characters
25037 to unibyte characters in unibyte buffers.
25038 (cursor_in_mouse_face_p): New function.
25039 (x_draw_stretch_glyph_string): Use it to choose a different GC
25040 when drawing a cursor within highlighted text. Don't draw
25041 background again if it has already been drawn.
25042 (x_draw_glyph_string_box): Don't draw a full-width
25043 box just because the glyph row's full_width_p flag is set.
25044 (x_draw_glyphs): Fix computation of rightmost x for
25045 full-width rows.
25046 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
25047 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
25048 change bottom shadow accordingly. Some cleanup.
25049 (x_update_window_end): Handle overwritten mouse face
25050 also for tool bar windows.
25051 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
25052 DRAW is DRAW_IMAGE_RAISED.
25053 (clear_mouse_face): Return 1 if text with mouse face was
25054 actually redrawn. Make the function static.
25055 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
25056 optimize away highlighting if we pass over that same overlay again.
25057 (note_mouse_highlight): Call mouse_face_overlay_overlaps
25058 to detect a case where we have to highlight a different region
25059 despite not having left the currently highlighted region.
25060 Set mouse_face_overlay in the x_display_info. Avoid changing the
25061 mouse pointer shape when show_mouse_face has already done it, or
25062 there is no need. Handle mouse-face and help-echo in strings.
25063 (glyph_rect): New function.
25064 (w32_mouse_position): Use it to raise the threshold for mouse
25065 movement event generation.
25066 (w32_initialize_display_info): Initialize the x_display_info's
25067 mouse_face_overlay.
25068 (w32_set_vertical_scroll_bar): Don't clear a zero height
25069 or width area.
25070 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
25071 a widget to zero height.
25072
25073 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
25074 Protect unibyte strings created by replacing their multibyte
25075 equivalents in menu_items.
25076 (w32_menu_show): Don't overwrite an item's name with its key
25077 description in case the description is a multibyte string.
25078 (single_submenu): Some cleanup.
25079
25080 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
25081 (postprocess_image): New function.
25082 (lookup_image): Call it for all image types except PostScript.
25083 (x_kill_gs_process): Call postprocess_image.
25084 (tiff_error_handler, tiff_warning_handler): New functions.
25085 (tiff_load): Install them as handlers.
25086 (x_kill_gs_process): Recognize if someone has cleared the image
25087 cache under us.
25088 (valid_image_p): Protect better against invalid image
25089 specifications. Previous code could signal an error.
25090 (Fx_hide_tip, Fshow_tip): Doc fix.
25091 (Fv_max_tooltip_size): New variable.
25092 (syns_of_xfns): DEFVAR_LISP it.
25093 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
25094 window buffer to *tip* right after creating the frame. Set frame's
25095 window_width. Use a maximum tooltip size specified by
25096 Vx_max_tooltip_size, if that has valid contents.
25097 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
25098 Make sure the tooltip is completely visible.
25099 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
25100 (Fx_create_frame): Adjust the frame's height for presence
25101 of the tool bar before calling x_figure_window_size.
25102 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
25103 when the window gets smaller.
25104 (x_set_foreground_color): Set frame's cursor_pixel.
25105 (x_set_foreground_color, x_set_background_color): Cleaned up.
25106 (x_set_font): Handle case of x_new_fontset returning the same name
25107 as before, although there was a change in fontsets.
25108
25109 2001-10-21 Miles Bader <miles@gnu.org>
25110
25111 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
25112 (Flogxor): Add usage: string to doc string.
25113 * charset.c (Fstring): Likewise.
25114 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
25115 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
25116
25117 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
25118
25119 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
25120
25121 * alloc.c: Reindent DEFUNs with doc: keywords.
25122
25123 * abbrev.c (Finsert_abbrev_table_description): Reindent.
25124
25125 * frame.c: Change doc-string comments to `new style' [w/`doc:'
25126 keyword].
25127
25128 See ChangeLog.9 for earlier changes.
25129
25130 ;; Local Variables:
25131 ;; coding: iso-2022-7bit
25132 ;; End:
25133
25134 Copyright (C) 2001, 2002, 2003, 2004, 2005,
25135 2006 Free Software Foundation, Inc.
25136 Copying and distribution of this file, with or without modification,
25137 are permitted provided the copyright notice and this notice are preserved.
25138
25139 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4