(note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
3c1b433a
SM
12005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * fileio.c (Finsert_file_contents):
4 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
5
13cc7d61
KS
62005-05-31 Kim F. Storm <storm@cua.dk>
7
8 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
9 (mode_line_noprop_ptr): Rename from frame_title_*.
10 (store_mode_line_noprop_char): Rename from store_frame_title_char.
11 (store_mode_line_noprop): Rename from store_frame_title.
3c1b433a 12 (mode_line_target): New enum to specify current output target
13cc7d61
KS
13 for mode line formatting.
14 (display_mode_element): Test it rather than frame_title_ptr and
15 mode_line_string_list to determine where output should go.
16 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
17 (Vmode_line_unwind_vector): New variable.
3c1b433a
SM
18 (format_mode_line_unwind_data, unwind_format_mode_line):
19 New functions for unwind protection in mode line formatting.
13cc7d61
KS
20 (x_consider_frame_title): Use them and new local var 'title_start'
21 to support nested calls to format-mode-line. Set mode_line_target
22 to MODE_LINE_TITLE.
23 (Fformat_mode_line): Use them and new local var 'string_start' to
24 support nested calls to format-mode-line. Set mode_line_target to
25 MODE_LINE_NOPROP or MODE_LINE_STRING. Don't trim trailing dashes.
26 (decode_mode_spec): Don't make infinite number of trailing dashes
27 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
28 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
29 mode_line_string_face_prop, and Vmode_line_unwind_vector.
30 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
31 Initialize mode_line_target to MODE_LINE_DISPLAY.
32
c16b1394
RS
332005-05-29 Richard M. Stallman <rms@gnu.org>
34
35 * buffer.c (Fbuffer_local_value): Call indirect_variable.
36
edfaeb4e
MY
372005-05-28 Masatake YAMATO <jet@gyve.org>
38
39 * xdisp.c (note_mode_line_or_margin_highlight): Change the
40 pointer to a hand cursor when hoovering over a mouse-face.
41
7cf49add
KH
422005-05-27 Kenichi Handa <handa@m17n.org>
43
44 * xterm.c (x_encode_char): Call check_ccl_update in advance.
45
46 * ccl.c: Now an element of Vccl_program_table is a vector of
47 length 4, not 3.
3c1b433a
SM
48 (ccl_get_compiled_code): New arg idx. Caller changed.
49 Adjust for the change of Vccl_program_table.
50 (setup_ccl_program): Adjust for the change of Vccl_program_table.
7cf49add
KH
51 (check_ccl_update): New function.
52 (Fregister_ccl_program): Use ASET to set an element of a vector.
53 Adjusted for the change of Vccl_program_table.
54
55 * ccl.h (struct ccl_program): New member idx.
56 (check_ccl_update): Extern it.
57
5e2ad10b
JB
582005-05-27 Juanma Barranquero <lekktu@gmail.com>
59
3c1b433a 60 * image.c (Vimage_library_alist): Move from image.el.
d5e1a786
JB
61 (syms_of_image): Defvar it.
62 (lookup_image_type): Use it.
63
5e2ad10b
JB
64 * buffer.c (Fbuffer_local_value): Make argument name match its use
65 in docstring.
66
6e604a9b
JB
672005-05-26 Juanma Barranquero <lekktu@gmail.com>
68
69 * keyboard.c (Frecursive_edit): Fix typo in docstring.
70 (Fposn_at_x_y): Make argument name match its use in docstring.
71
59244a3f
LK
722005-05-26 Lute Kamstra <lute@gnu.org>
73
74 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
75
55ce5058
MY
762005-05-24 Masatake YAMATO <jet@gyve.org>
77
78 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
79 as loop sentinels.
80
cb5db137
NR
812005-05-24 Nick Roberts <nickrob@snap.net.nz>
82
83 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
84 select frame title ("Question"/"Information").
85 (xdialog_show): Use it.
86
13dcfc35
NR
87 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
88
89 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
90
d3393daa
NR
91 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
92 a third argument (Qnil).
93
94 * lisp.h: x-popup-dialog can have three arguments.
cb5db137
NR
95
96 * editfns.c (Fmessage_box): Use "Information" for frame title.
97
71d4fba1
TTN
982005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
99
100 * termcap.c [VMS]: Include <starlet.h>.
101
359e4563
MY
1022005-05-23 Masatake YAMATO <jet@gyve.org>
103
6e604a9b
JB
104 * xdisp.c (note_mode_line_or_margin_highlight): Add code
105 for mouse-face. Change the type of the first argument from `window'
106 to `Lisp_Object'.
359e4563
MY
107 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
108 window instead of w.
109
edceb51c
AS
1102005-05-22 Andreas Schwab <schwab@suse.de>
111
41c4895c 112 * process.c (send_process): Move misplaced volatile.
edceb51c 113
5c213fcc
RS
1142005-05-21 Richard M. Stallman <rms@gnu.org>
115
116 * xdisp.c (display_mode_element): If we're processing a list and
117 padding is specified, put it after the last element.
118
aa4060b9
EZ
1192005-05-21 Eli Zaretskii <eliz@gnu.org>
120
121 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
122 "superroot" on DOS_NT systems.
123
a2c9aee6
EZ
1242005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
125
126 * process.c (send_process): Restore the SIGPIPE handler if we
127 catch a SIGPIPE.
128
09e8eb5b
JB
1292005-05-20 Juanma Barranquero <lekktu@gmail.com>
130
131 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
132 misleading comments).
133 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
134
f3fbdb1f
LK
1352005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
136
137 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
138 Correct the right value.
139
639ec765
NR
1402005-05-19 Nick Roberts <nickrob@snap.net.nz>
141
240d926e 142 * keyboard.c (syms_of_keyboard): Remove Lisp variables
639ec765
NR
143 post-command-idle-hook and post-command-idle-delay.
144 (command_loop_1): Don't try to execute post-command-idle-hook.
145
03d42907
KS
1462005-05-16 Kim F. Storm <storm@cua.dk>
147
1cb83e13
KS
148 * xdisp.c (handle_display_prop): Handle empty replacement.
149 (handle_single_display_spec): Return -1 for empty replacement.
150
151 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
152
03d42907
KS
153 * .gdbinit (pitx): Print more info about iterator.
154
0da46b6e
AS
1552005-05-16 Andreas Schwab <schwab@suse.de>
156
3c1b433a 157 * unexmacosx.c (unexec_realloc): Move declarations before statements.
0da46b6e 158
d06ba294
RS
1592005-05-14 Richard M. Stallman <rms@gnu.org>
160
161 * xdisp.c (message3): Call cancel_echoing.
162
163 * alloc.c (Fmemory_full_p): New function.
164 (syms_of_alloc): defsubr it.
165
166 * process.c (send_process_trap): Unblock SIGPIPE.
167 (send_process): Reset SIGPIPE handler before reporting error.
168
90713743
NR
1692005-05-14 Nick Roberts <nickrob@snap.net.nz>
170
171 * emacs.c (syms_of_emacs): Fix doc string for system-type.
172
68780e2a
RS
1732005-05-13 Richard M. Stallman <rms@gnu.org>
174
175 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
176 (Finsert_file_contents): If we read 0 bytes from a special file,
177 unlock the visited file if we locked it.
178 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
03d42907 179 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
68780e2a 180
5063dbbf
YM
1812005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
182
183 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
184
3c1b433a
SM
185 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
186 Regard toolkit scroll bar thumb drag events as squeezable and prevent
5063dbbf
YM
187 redisplay from being paused by them.
188
189 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
190 [!MAC_OSX] (target_ticks): Remove variable.
191 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
192 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
193 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
3c1b433a 194 event occurs before timeout, behave as if the function were interrupted.
5063dbbf
YM
195 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
196 handling using Time Manager routines.
3c1b433a
SM
197 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
198 New variables.
5063dbbf
YM
199 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
200 (setitimer): New functions.
201
202 * macfns.c, macmenu.c: Don't include signal.h.
203
204 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
205 Rename from get_control_part_bound. All callers changed.
206 (x_scroll_bar_clear): New function.
207 (x_clear_frame): Use it.
208 (XTset_vertical_scroll_bar): Don't call Draw1Control.
209 (x_scroll_bar_handle_click): Change type of second argument from
210 int to ControlPartCode.
211 (check_alarm): Remove declaration.
212 (XTread_Socket) [!TARGET_API_MAC_CARBON]: Don't call it.
213 (XTread_Socket): Use ControlPartCode instead of SInt16.
214
2152005-05-13 Nozomu Ando <nand@mac.com>
216
217 * unexmacosx.c: Include assert.h.
218 (MACOSX_MALLOC_MULT16): New define.
219 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
220 ptr is in unexec regions by checking it is multiple of 16.
221 (unexec_malloc_header_t): New typedef.
222 (unexec_malloc, unexec_realloc, unexec_free): Store and use
223 allocated size information in unexec_malloc_header.
224
d101bf56
RS
2252005-05-10 Richard M. Stallman <rms@gnu.org>
226
227 * xterm.c (noinclude): Add #undef.
228
229 * image.c, xfns.c, xmenu.c: Don't include signal.h.
230
2f60660a
JB
2312005-05-09 Juanma Barranquero <lekktu@gmail.com>
232
f1701e65
JB
233 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
234 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
235 Doc fixes.
236
2f60660a
JB
237 * dired.c (Ffile_name_completion): Make argument name
238 match its use in docstring.
239
9f29e806
LT
2402005-05-08 Luc Teirlinck <teirllm@auburn.edu>
241
242 * eval.c (Fdefvaralias): Remove any pre-existing
243 variable-documentation property of the alias.
244
a790bcd4
TTN
2452005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
246
247 * xfns.c (start_hourglass): Do nothing when running on a tty.
248
d5fb8dab
JB
2492005-05-07 Juanma Barranquero <lekktu@gmail.com>
250
251 * fns.c (Fchar_table_range): Fix typos in docstring.
252
7ec64183
SM
2532005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
254
255 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
256
6ff95f1d
EZ
2572005-05-06 Eli Zaretskii <eliz@gnu.org>
258
2c6b25c7
EZ
259 * lread.c (Flocate_file_internal): Doc fix.
260
6ff95f1d
EZ
261 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
262
17d28d26
YM
2632005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
264
265 * macselect.c (x_own_selection): Accept Lisp string as result of
266 selection converter function.
267 (x_clear_frame_selections): Don't call x-lost-selection-functions
268 if Emacs is not owner of the selection.
269 (Vmac_services_selection): Put variable and initialization in
270 #ifdef MAC_OSX.
271 (syms_of_macselect) [MAC_OSX]: Set default value of
272 Vmac_services_selection to PRIMARY.
273
7ec64183
SM
274 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
275 (mac_handle_tool_bar_click): Remove unused function and declaration.
17d28d26
YM
276 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
277 (install_scroll_bar_timer, set_scroll_bar_timer)
278 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
279 (get_control_part_bound, x_scroll_bar_handle_press)
280 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
281 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
282 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
283 (scroll_bar_timer_event_posted_p): New variables.
284 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
285 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
286 (x_scroll_bar_create): Set control reference with NewControl.
7ec64183
SM
287 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
288 Initialize track_top and track_height to nil.
289 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
290 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
17d28d26
YM
291 (XTset_vertical_scroll_bar): Don't make space between scroll bar
292 and associated window.
293 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
294 from window config.
7ec64183
SM
295 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
296 Set track_top and track_height to nil when scroll bar size is changed.
17d28d26
YM
297 Recalculate them if they are nil.
298 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
299 clicked control is a scroll bar.
300 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
301 event handler functions. Don't add modifiers to scroll bar click
7ec64183 302 events. Call scroll bar release handler when window is deactivated.
17d28d26 303 (mac_initialize): Remove unused code for X toolkit.
7ec64183
SM
304 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
305 Initialize Vx_toolkit_scroll_bars to nil.
17d28d26 306
7ec64183
SM
307 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
308 New members track_top and track_height.
17d28d26
YM
309
310 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
311 init_process when including sys/select.h.
312
643b4cf5
LT
3132005-05-05 Luc Teirlinck <teirllm@auburn.edu>
314
315 * eval.c (Fdefvaralias): Doc fix.
316
317 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
318
99bda128
KS
3192005-05-05 Kim F. Storm <storm@cua.dk>
320
321 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
322 default value.
323 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
324 Fix type of cursor-in-non-selected-windows.
325
3a3563e9
JD
3262005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
327
328 * mac.c: #undef init_process so not to conflict with system headers.
329
0124c5bd
RS
3302005-05-02 Richard M. Stallman <rms@gnu.org>
331
332 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
333
334 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
335
336 * xdisp.c (Vcursor_in_non_selected_windows)
337 (Qcursor_in_non_selected_windows): Vars deleted.
338 (syms_of_xdisp): Don't initialize them.
339 (get_window_cursor_type): Use cursor_in_non_selected_windows
340 buffer slot.
341
4b3f161f
KS
3422005-05-02 Kim F. Storm <storm@cua.dk>
343
e40527dc
KS
344 * macros.c (executing_kbd_macro_index): Rename from
345 executing_macro_index. All uses changed.
346 (executing_kbd_macro_iterations): Rename from
347 executing_macro_iterations. All uses changed.
348 (executing_kbd_macro): Rename from executing_macro.
349 All uses changed.
350 (syms_of_macros): Rename Lisp var executing-macro-index to
351 executing-kbd-macro-index.
352
4b3f161f
KS
353 * xdisp.c (move_it_in_display_line_to): Fix last change.
354
4d49edf6
LT
3552005-05-01 Luc Teirlinck <teirllm@auburn.edu>
356
f6b1b15a
LT
357 * xmenu.c (Fx_popup_menu): Doc fix.
358
4d49edf6
LT
359 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
360
4a766fe6
JR
3612005-05-02 Jason Rumney <jasonr@gnu.org>
362
363 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
364
c924d3ff
TTN
3652005-05-02 Nozomu Ando <nand@mac.com>
366
367 * sysselect.h: Fix typo.
368
b161ea4e 3692005-05-02 Nick Roberts <nickrob@snap.net.nz>
5c2e5a5e 370
b161ea4e
NR
371 * charset.c (Fchars_in_region): Remove as obsolete.
372
d37e919d 3732005-05-01 Kim F. Storm <storm@cua.dk>
b161ea4e
NR
374
375 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
7ec64183 376 TO_CHARPOS. This may happen if last glyphs was an image or stretch
b161ea4e 377 glyph.
5c2e5a5e 378
bec0b768
LT
3792005-05-01 Luc Teirlinck <teirllm@auburn.edu>
380
381 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
382
ebbfa918
RS
3832005-05-01 Richard M. Stallman <rms@gnu.org>
384
385 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
386 If user cancels the menu, quit unless FOR_CLICK.
387
7ec64183 388 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
ebbfa918
RS
389 All uses changed.
390 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
391 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
392 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
393 * commands.h (Vexecuting_kbd_macro): Likewise.
394
a72c2d97
TTN
3952005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
396
397 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
398
7e995a23
RS
3992005-04-30 Richard M. Stallman <rms@gnu.org>
400
401 * fileio.c (Ffind_file_name_handler): Handle the `operations'
402 property of the file name handler.
403 (Qoperations): New variable.
404 (syms_of_fileio): Initialize and staticpro it.
405
406 * xdisp.c (set_message_1): Delete xassert.
407
7a92caf8
YM
4082005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
409
7ec64183 410 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
7a92caf8
YM
411
412 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
413
414 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
415 before/after including Carbon.h if there is a working mktime.
416
5ae91803
KS
4172005-04-28 Kim F. Storm <storm@cua.dk>
418
419 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
420 Fix cyclic alias check. If alias loop is detected, signal
421 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
422
d79b6c21
LK
4232005-04-28 Lute Kamstra <lute@gnu.org>
424
425 * eval.c (do_autoload): Record only autoloads in the autoload
426 property of symbols.
427
8c75afbf
NR
4282005-04-28 Nick Roberts <nickrob@snap.net.nz>
429
430 * emacs.c (USAGE1): Add --basic-display and --quick options.
431
832e294f
KS
4322005-04-27 Kim F. Storm <storm@cua.dk>
433
434 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
435
f03f317a
RS
4362005-04-26 Richard M. Stallman <rms@gnu.org>
437
c019856e
RS
438 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
439 (syms_of_window): Doc fixes.
440
f03f317a
RS
441 * indent.c (Fvertical_motion): Undo previous change.
442
38f60cd9
KH
4432005-04-26 Kenichi Handa <handa@m17n.org>
444
445 * fns.c (char_table_range): New function.
446 (Fchar_table_range): Signal an error if characters in the range
447 have inconsistent values. Don't check the parent.
448
87ede5a1
KH
4492005-04-25 Kenichi Handa <handa@m17n.org>
450
451 * fontset.c (fontset_set): Fix previous change.
452
a6390474
RS
4532005-04-24 Richard M. Stallman <rms@gnu.org>
454
455 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
456
7fce7dfe
EZ
4572005-04-24 Eli Zaretskii <eliz@gnu.org>
458
cf1982d9
EZ
459 * regex.c (re_search_2, re_match_2_internal): Convert second arg
460 of RE_TRANSLATE to int, to shut up GCC warnings.
461
7fce7dfe
EZ
462 * fileio.c (Fcopy_file): Doc fix.
463 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
464 not needed.
465
49ed33c7
YM
4662005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
467
468 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
469 (SOME_MACHINE_OBJECTS): Likewise.
470 (mac.o): Depend on ccl.h.
471 (macselect.o): New target.
472
7ec64183
SM
473 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
474 Call syms_of_macselect.
49ed33c7
YM
475
476 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
477
7ec64183 478 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
49ed33c7
YM
479 (QCLIPBOARD): Remove variable.
480 (syms_of_mac): Don't initialize it.
481 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
482 Remove functions.
483 (syms_of_mac): Don't defsubr them.
484 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
485 (QHFS_plus_D, QHFS_plus_C): New variables.
486 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
487 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
488 (cfstring_create_normalized): New functions.
489 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
490 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
491
7ec64183
SM
492 * macterm.c (handling_window_update, terminate_flag):
493 Remove variables.
494 (do_window_update, do_ae_quit_application, XTread_socket):
495 Don't use them.
49ed33c7
YM
496 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
497 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
498 (init_service_handler): Move to macselect.c. Remove declarations.
499 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
500 (Qapplication, Qabout): New variables.
501 (syms_of_mac): Initialize them.
502 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
503 (Qperform): New variables.
504 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
7a92caf8 505 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
49ed33c7
YM
506 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
507 (mac_store_application_menu_event, init_menu_bar): New functions.
508 [USE_CARBON_EVENTS] (mac_handle_command_event)
509 (init_command_handler): New functions.
510 (mac_handle_window_event): Return noErr on window update event.
511 (do_ae_quit_application): Call mac_store_application_menu_event.
512 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
513 and init_menu_bar.
514
515 * macterm.h (x_clear_frame_selections): Add extern.
516
517 * macselect.c: New file for selection processing on Mac OS.
518
469bc679
RS
5192005-04-23 Richard M. Stallman <rms@gnu.org>
520
521 * fileio.c (Fcopy_file): New arg MUSTBENEW.
522 (Frename_file): Pass new arg to Fcopy_file.
523
524 * window.c (window_size_fixed): Variable deleted.
525 (syms_of_window): Initialize window-size-fixed to nil.
526 But don't DEFVAR window_size_fixed.
527
d379c558
AS
5282005-04-23 Andreas Schwab <schwab@suse.de>
529
530 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
531 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
532 use lib64 instead of lib.
533 (_LP64) [_ARCH_PPC64]: Define if not defined.
534
007d105b
TTN
5352005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
536
537 * s/ms-w32.h (HAVE_PWD_H): Define.
538
b9c15916
KH
5392005-04-22 Kenichi Handa <handa@m17n.org>
540
541 * fns.c (copy_sub_char_table): Explicitly copy the default value
542 of the sub-chartable.
543
544 * fontset.c (fontset_set): When a sub-chartable is created,
545 explicitly sets the defalt value.
546
1ba52906
KS
5472005-04-22 Kim F. Storm <storm@cua.dk>
548
549 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
550 (Fsafe_plist_get): Rename to Fplist_get.
551 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
552 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
553
554 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
555
556 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
557 (note_mode_line_or_margin_highlight, note_mouse_highlight):
558 Use Fplist_get instead of Fsafe_plist_get.
559
560 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
561
e235145c
MB
5622005-04-21 Miles Bader <miles@gnu.org>
563
564 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
565
766c5349
TTN
5662005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
567
c164a7e6
TTN
568 * sysdep.c: Remove reference to defunct vms-pwd.h.
569 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
570 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
571
766c5349
TTN
572 * config.in: Regenerate.
573
2b048bf5
KH
5742005-04-20 Kenichi Handa <handa@m17n.org>
575
576 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
577 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
578 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
579
580 * alloc.c (make_sub_char_table): Argument changed to initial
581 value of the slots.
582
583 * data.c (Faref): Handle special slots used as default values of
584 ascii, eight-bit-control, eight-bit-control. Don't ignore a
585 default value set for a group of characters.
586 (Faset): Signal an error if IDXVAL is not a valid character code.
587 Make a sub-chartable with correct initial value.
588
589 * fns.c (Fset_char_table_range): Don't set slots used as default
7ec64183
SM
590 values for ascii, eight-bit-control, eight-bit-graphic.
591 Don't call Faref with charset-id.
2b048bf5
KH
592 (Fset_char_table_default): Document how to treat normal character
593 argument. Handle special slots used as default values of ascii,
594 eight-bit-control, eight-bit-control. Make a sub chartable if
595 necessary.
596
b0a35939
KH
5972005-04-20 Kenichi Handa <handa@m17n.org>
598
599 * search.c (boyer_moore): Fix previous change.
600
98dde726
KS
6012005-04-19 Kim F. Storm <storm@cua.dk>
602
603 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
604 face unless last visible char and first invisible char have the
605 same face. Also use default face if saved_face_id is undefined.
606
327a3376
YM
6072005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
608
609 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
610 `full_name'.
611 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
612 mac_scriptcode member.
613
614 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
615 (syms_of_mac): Don't initialize them.
616 (Vmac_charset_info_alist): New variable.
617 (syms_of_mac): Defvar it.
618 (create_text_encoding_info_alist): New function.
619 (decode_mac_font_name, mac_to_x_fontname)
620 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
621 code the correspondence among XLFD charsets, Mac script codes, and
622 Emacs coding systems. Use Vmac_charset_info_alist and result of
623 create_text_encoding_info_alist instead.
624 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
625 routines also on Mac OS Classic.
7ec64183
SM
626 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
627 Use add_font_name_table_entry.
327a3376
YM
628 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
629 specified. Derive unspecified scalable fields from specified one.
630 (x_list_fonts): Consider Valternate_fontname_alist.
631 (kDefaultFontSize): Change value from 9 to 12.
632 (XLoadQueryFont): Get decoded font family, font face, and charset
633 from x_font_name_to_mac_font_name. Set full name of loaded font.
634 (mac_unload_font): Free `full_name' member.
635 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
636 NULL. Copy full_name member of struct MacFontStruct to that of
637 struct font_info.
638
d0636839
KS
6392005-04-19 Kim F. Storm <storm@cua.dk>
640
5827e9d4
KS
641 * xdisp.c (handle_stop): Set saved_face_id to current face if
642 selective_display_ellipsis_p so ellipsis will be shown in same
643 face as preceding text.
644 (setup_for_ellipsis): Don't set saved_face_id here.
645 (next_element_from_display_vector): Default to saved_face_id.
646
d0636839
KS
647 * fns.c (Fsafe_get): New function.
648 (syms_of_fns): Defsubr it.
649
650 * lisp.h (Fsafe_get): EXFUN it.
651
652 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
653 loops in case of bad face property lists. Limit number of face
654 alias lookups to 10 (in case of face alias loops).
655
e5c78c9d
KS
6562005-04-18 Kim F. Storm <storm@cua.dk>
657
658 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
659 It replaces the corresponding member from struct window, as a
660 window may now show multiple overlay arrows.
661 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
662
663 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
664 Compare overlay_arrow_bitmap than overlay_arrow_p members.
665
666 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
667 rather than from window.
668 (update_window_fringes): Compare overlay_arrow_bitmap rather than
669 overlay_arrow_p members.
670 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
671 if not default.
672
673 * window.h (struct window): Remove member overlay_arrow_bitmap.
674
675 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
676
677 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
678 Calls changed. Don't check for overlay-arrow-bitmap property here.
679 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
680 fringe is present, return Lisp integer for bitmap (or -1 for default).
681 Fix value of overlay-arrow-bitmap property to be a symbol, use
682 lookup_fringe_bitmap to parse it.
683 (display_line): Change call to overlay_arrow_at_row. Store integer
684 return value as overlay bitmap in row rather than window.
685 Only show overlay arrow if row displays text, or if no other overlay
686 arrow is seen in window (if overlay marker is at point-max).
687
7d603e3f
TTN
6882005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
689
690 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
691
9942fa0c
LK
6922005-04-18 Lute Kamstra <lute@gnu.org>
693
694 * lread.c (Vloads_in_progress): Static.
695 * fns.c (Vloads_in_progress): Remove extern.
696 (load_in_progress): Add extern.
697 (Frequire): Use load_in_progress instead of Vloads_in_progress.
698
999cdb8f
TTN
6992005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
700
701 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
702
3f4413f8
YM
7032005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
704
705 * macterm.c (XTread_socket): Don't beep on keyboard input even if
706 no frame is visible.
707
60ec7b7e
DN
7082005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
709
710 * term.c (struct keys): Add support for shifted keys.
711
a8a1c0ee
RS
7122005-04-16 Richard M. Stallman <rms@gnu.org>
713
714 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
715 (set_message): Call with_echo_area_buffer with WHICH = 0.
716 (set_message_1): Erase the echo area buffer first thing.
717 (echo_area_display): Don't clear echo_message_buffer.
718
f3cf04d3
YM
7192005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
720
721 * Makefile.in (mac.o): Depend on charset.h and coding.h.
722
723 * mac.c: Include charset.h and coding.h.
724 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
7ec64183 725 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
f3cf04d3
YM
726 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
727
728 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
729
730 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
731
732 * macterm.c (x_autoselect_window_p): Remove variable.
733 (last_window): New variable.
7ec64183
SM
734 (XTreassert_line_highlight, x_change_line_highlight):
735 Remove declarations.
f3cf04d3
YM
736 (mac_focus_changed, x_detect_focus_change): New functions and
737 declarations.
738 (XTextExtents16, front_emacs_window): Remove function.
739 (mac_focus_frame): New function.
740 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
741 (mac_check_for_quit_char): Use it instead of front_emacs_window.
742 (x_scroll_bar_report_motion): Obtain window from control owner.
743 (x_make_frame_invisible): Set window manager size hint.
744 (do_mouse_moved): Remove function.
745 (XTread_socket): Move its contents here. Generate select-window
746 event on mouse movement if needed. Use x_detect_focus_change on
747 activate/deactivate events. Don't deiconify frame or invalidate
7ec64183
SM
748 window rectangle when dnd items are dropped.
749 Don't activate/deactivate root control.
f3cf04d3
YM
750 (frame_highlight, frame_unhighlight): Activate/deactivate root
751 control here.
752 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
753
754 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
755 New extern.
756
9e5b2858
LT
7572005-04-15 Luc Teirlinck <teirllm@auburn.edu>
758
759 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
760 (lisp): Use it.
761 (SOME_MACHINE_LISP): Add tooltip.
762
42c6741e
YM
7632005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
764
7ec64183
SM
765 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
766 Don't include TextEncodingConverter.h.
42c6741e
YM
767 (mac_system_script_code, Vmac_system_locale): New variables.
768 (syms_of_mac): Defvar them.
769 (mac_get_system_locale): New function.
770
7ec64183
SM
771 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
772 Use ENCODE_SYSTEM to encode title bar string.
42c6741e 773 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
7ec64183
SM
774 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
775 Use CFStringGetSystemEncoding to get system default string encoding.
42c6741e
YM
776
777 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
778 TextEncodingConverter.h.
779
0614c575
ST
7802005-04-13 Steven Tamm <steventamm@mac.com>
781
7e26f91b
KS
782 * macterm.c (syms_of_macterm): Remove redundant definition of
783 mac-pass-control-to-system.
0614c575 784
203eb0aa
SM
7852005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
786
787 * window.c (Fset_window_configuration): Be careful when you choose
788 among several possible points for the new_current_buffer.
789
a56e6111
YM
7902005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
791
792 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
793 poll_for_input_1. Set interrupt_input_pending to 1 instead.
b7461be9
YM
794 (Qlanguage_change) [MAC_OS]: New variable.
795 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
203eb0aa 796 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
b7461be9
YM
797
798 * macterm.c (mac_keyboard_text_encoding)
799 (current_mac_keyboard_text_encoding): Remove variables.
7e26f91b
KS
800 (XTread_socket): Store language-change event if keyboard script change
801 is detected. Don't convert input to `mac_keyboard_text_encoding'.
203eb0aa 802 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
b7461be9 803
7e26f91b 804 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
a56e6111 805
6695c528
RS
8062005-04-10 Richard M. Stallman <rms@gnu.org>
807
808 * emacs.c (standard_args): Rename --bare-bones to --quick.
809 Add -D aka --basic-display.
810
811 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
812
18e2d91f
RS
8132005-04-09 Richard M. Stallman <rms@gnu.org>
814
815 * keymap.c (where_is_internal): Convert a string used as event type
816 into "(any string)".
817
818 * lread.c (Vloads_in_progress): Not static.
18e2d91f
RS
819 * fns.c (Vloads_in_progress): Add extern.
820 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
821
8222005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
823
824 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
825
1cf21850
LK
8262005-04-09 Lute Kamstra <lute@gnu.org>
827
828 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
829 within the accessible part of the buffer.
830
bfd93240
KS
8312005-04-09 Kim F. Storm <storm@cua.dk>
832
833 * lread.c (readevalloop): Add args START and END as region in
834 current buffer to read. Callers changed.
835 When specified, narrow to this region only when reading,
836 not during eval. Track next point to read from during eval.
837 Also restore point to "real" buffer position before eval.
838 (Feval_region): Don't save excursion and restriction here, and
839 don't narrow to region. Just pass region to readevalloop.
840 Note: Point is now preserved even when PRINTFLAG is nil.
841
9ba27690
KS
8422005-04-08 Kim F. Storm <storm@cua.dk>
843
844 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
845
73f0d996
KS
8462005-04-06 Kim F. Storm <storm@cua.dk>
847
848 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
849
369f76bb
YM
8502005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
851
852 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
853 (Fmac_get_preference): Doc fix.
854
203eb0aa
SM
855 * macfns.c (Fx_create_frame, x_create_tip_frame):
856 Add "fontset-mac" to fallback font/fontsets.
369f76bb 857
2ba613a6
KS
8582005-04-04 Kim F. Storm <storm@cua.dk>
859
4d5ddddc
KS
860 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
861
2ba613a6
KS
862 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
863 Call it again after autoload.
864
1673df2e
JD
8652005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
866
867 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
868 mallopt.
869
870 * ralloc.c (r_alloc_init): Ditto.
871
41639988
KH
8722005-04-01 Kenichi Handa <handa@m17n.org>
873
1cf21850
LK
874 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
875 (Vascii_eqv_table): Extern them.
41639988
KH
876
877 * casetab.c (set_case_table): If standard is nonzero, setup
878 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
879
880 * search.c (looking_at_1): Use current_buffer->case_canon_table,
881 not DOWNCASE_TABLE.
882 (string_match_1): Likewise.
883 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
884 Vascii_downcase_table.
885 (fast_string_match_ignore_case): Likewise.
886 (search_buffer): Fix checking of boyer-moore usability.
203eb0aa
SM
887 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
888 No need of tranlating characters in PAT. Fix calculation of
41639988
KH
889 simple_translate.
890
6ca53601
SM
8912005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
892
893 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
894 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
895 Use XtNtopShadowPixel and XtNbottomShadowPixel.
896 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
897 really work and that breaks with some versions of Xaw3d.
898
fafbb99d 8992005-03-31 Kenichi Handa <handa@m17n.org>
bf762c98
KH
900
901 * coding.c (syms_of_coding): Fix previous change.
902
6ca53601
SM
9032005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
904
905 * fileio.c (search_embedded_absfilename): Fix last change.
906
bf762c98
KH
9072005-03-25 Kenichi Handa <handa@m17n.org>
908
909 * coding.c (syms_of_coding): Suggest to use set-coding-category in
910 the docstring of coding-category-list.
911
f793f885
KS
9122005-03-31 Kim F. Storm <storm@cua.dk>
913
914 * keyboard.c (Qmouse_fixup_help_message): New var.
915 (syms_of_keyboard): Intern and staticpro it.
916 (show_help_echo): Apply mouse-fixup-help-message to help string.
917
c364fe19
KS
9182005-03-30 Kim F. Storm <storm@cua.dk>
919
920 * xdisp.c (display_line): Allow multiple overlay arrows in window.
921
c70a4df6
SM
9222005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
923
924 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
925 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
926 (Ffile_name_absolute_p): Use it.
927 (search_embedded_absfilename): New fun, extracted from
928 Fsubstitute_in_file_name. Use file_name_absolute_p.
929 Free the pw data after use.
930 (Fsubstitute_in_file_name): Use it.
931 After cutting a prefix, re-check file-name-handler.
932
6e7d0438
JR
9332005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
934
6ca53601 935 * w32term.h (x_output): Add focus_state.
6e7d0438
JR
936
937 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
938 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
939
65671706
SM
9402005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
941
942 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
943 Use Fexit_minibuffer.
944 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
945
0de4dad4
SM
9462005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
947
781da985
SM
948 * dired.c (Ffile_attributes): Add a missing gcpro.
949
0de4dad4
SM
950 * alloc.c (make_number): The arg can be bigger than `int'.
951 * lisp.h (make_number): Make prototype more precise.
952
953 * process.c, dired.c (Vfile_name_coding_system)
954 (Vdefault_file_name_coding_system):
955 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
956 (Vdefault_file_name_coding_system): Remove unused declarations.
957
ff18668f
JD
9582005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
959
960 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
961 if it failed to pop up (Gnome "show pointer on ctrl" option makes
962 menus fail to pop up).
963
0de4dad4 9642005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
66347da7
SM
965
966 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
0de4dad4 967 Just prepend a backslash without replacing the NBSP by an SPC.
66347da7 968
8df0ffbe
KS
9692005-03-22 Kim F. Storm <storm@cua.dk>
970
971 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
972 * dispextern.h (lookup_derived_face): Fix prototype.
973 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
974
975 * xdisp.c (handle_single_display_spec): Derive left-fringe and
976 right-fringe face from fringe face.
977
978 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
979 Derive face from fringe face.
980
6ca30ba4
JD
9812005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
982
983 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
984
d615870a
DK
9852005-03-22 David Kastrup <dak@gnu.org>
986
987 * textprop.c (Fnext_char_property_change)
66347da7 988 (Fprevious_char_property_change): Allow marker as limit.
d615870a
DK
989 (Fnext_single_char_property_change)
990 (Fprevious_single_char_property_change): Check that limit is a
991 number in strings.
992 (Fnext_single_char_property_change): Coerce position to integer.
993 (Fprevious_single_char_property_change): Same here.
994
32b939ea
TTN
9952005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
996
997 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
998
6027e473
SM
9992005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
1000
1001 * frame.c (Fignore_event): Remove.
1002 (syms_of_frame): Don't defsubr it.
1003
1004 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
1005 redundant `ignore-event'.
1006
730f4d72
EZ
10072005-03-19 Eli Zaretskii <eliz@gnu.org>
1008
1009 * unexec.c (write_segment, unexec): Move these functions to avoid
1010 forward references (which cause errors with "gcc -gcoff").
1011
c7f6afd5
JD
10122005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1013
6027e473 1014 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
9188be47 1015 that it doesn't become "tooltip". The specbind is enough.
8d5980cf 1016
c7f6afd5
JD
1017 * xrdb.c (x_load_resources): Use different char *helv when I18N
1018 is present.
1019
db328182
KH
10202005-03-17 Kenichi Handa <handa@m17n.org>
1021
66347da7 1022 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
db328182 1023
211f2210
SM
10242005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1025
1026 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
1027 Use xic_create_fontsetname even for non-Motif menus.
1028 Don't forget to free the fontsetname.
1029
1030 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
1031
c7bd5d57
RS
10322005-03-17 Richard M. Stallman <rms@gnu.org>
1033
1034 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
1035
1036 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
1037 (Fmake_symbolic_link): Use G to read the new file name.
1038
1039 * callint.c (Finteractive): Document G option.
1040 (Fcall_interactively): Implement G option.
1041
1042 * buffer.c (buffer_lisp_local_variables): New function,
1043 broken out from Fbuffer_local_variables.
1044 (clone_per_buffer_values): Use buffer_lisp_local_variables.
1045
888953f1
SM
10462005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1047
3c916d65
SM
1048 * xfns.c (xic_create_fontsetname): Add `motif' argument.
1049 Always return a freshly allocated string.
1050 (xic_create_xfontset): Adjust call.
1051
1052 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
1053 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
1054 (dump_realized_face): Fix warning.
1055
9f9e5275
SM
1056 * emacs.c (Fkill_emacs): YAILOM.
1057
888953f1
SM
1058 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
1059
48502d68
YM
10602005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1061
1062 * mac.c (HASHKEY_TERMINAL): Remove.
1063 (HASHKEY_MAX_NID): New macro.
1064 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
1065 argument.
888953f1 1066 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
48502d68
YM
1067 (xrm_create_database, xrm_q_put_resource)
1068 (xrm_merge_string_database, xrm_q_get_resource_1)
1069 (xrm_q_get_resource): Change resource database representation so
1070 that it may not use multiple hash tables for a single database.
1071 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
1072
d5161e8c
SM
10732005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
1074
11a646cd
SM
1075 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
1076
1077 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
1078 locale-coding-system, as was already done for WINDOWSNT.
1079
d5161e8c
SM
1080 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
1081 translation for chars in the 0-255 range.
1082
568b6e41
LK
10832005-03-16 Lute Kamstra <lute@gnu.org>
1084
1085 * floatfns.c (Ffloor): Doc fix.
1086
469fb3cf
YM
10872005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1088
1089 * mac.c: Include macterm.h instead of directly including Carbon.h.
1090 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
1091 (Qarray, Qdictionary): New variables.
1092 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
1093 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
1094 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
1095 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
1096 in callback for CFDictionaryApplyFunction.
1097 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
1098 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
1099 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
1100 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
1101 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
1102 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
1103 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3d454340 1104 (skip_white_space, parse_comment, parse_include_file)
469fb3cf
YM
1105 (parse_binding, parse_component, parse_resource_name, parse_value)
1106 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
1107 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
d5161e8c
SM
1108 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
1109 New functions.
469fb3cf
YM
1110
1111 * macfns.c (mac_get_rdb_resource): Remove function.
1112 (x_get_string_resource): Use xrm_get_resource.
1113
1114 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
1115
1116 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
1117 name_list_element.
1118 (mac_make_rdb): Create resource database from preferences and
1119 argument string.
1120 (mac_term_init): Save resource database to cddr part of
1121 name_list_element.
1122
1123 * macterm.h (xrm_merge_string_database, xrm_get_resource)
1124 (xrm_get_preference_database): Add externs.
1125 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
1126 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
1127 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
1128
1129 * process.c (init_process): Change `#ifdef DARWIN' to `#if
1130 defined (DARWIN) || defined (MAC_OSX)'
1131
1132 * s/darwin.h (DARWIN): Don't define.
1133
6a3fac90
YM
11342005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1135
1136 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
1137 Remove unused variables.
1138 (syms_of_macfns): Don't initialize them. Likewise for
1139 Qface_set_after_frame_default. Defvar and initialize
1140 Vx_window_horizontal_drag_shape.
1141 (x_set_mouse_color): Change mouse pointer shape.
1142 (mac_window) [!MAC_OSX]: Create root control.
469fb3cf 1143 (Fx_create_frame): Remove initializations of mouse pointer shapes.
6a3fac90
YM
1144 (hourglass_started): New function (from xfns.c).
1145 (start_hourglass, cancel_hourglass): Put function body in #ifdef
1146 MAC_OSX.
1147 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
1148 indicator for each non-tooltip frame if needed, and show it.
d5161e8c 1149 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
6a3fac90
YM
1150
1151 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
1152 Controls.h. Use ThemeCursor instead of CursHandle.
1153
d5161e8c
SM
1154 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
1155 Remove functions and declarations.
1156 (mac_set_colors): Take argument for saving background color.
1157 All callers changed.
6a3fac90
YM
1158 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
1159 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
1160 background color.
1161 (x_update_end, mac_do_track_drag): Don't reset background color.
d5161e8c
SM
1162 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
1163 Use SetThemeCursor.
6a3fac90
YM
1164 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
1165 indicator control to the upper-right corner of the window.
1166 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
1167 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
1168 (do_window_update): Update controls after updating content area.
1169 (mac_handle_window_event): Remove unused extern.
1170 (XTread_socket): Check both control handle and control part code
1171 to determine whether a scroll bar is clicked. Activate/deactivate
1172 root control instead of contained scroll bar controls.
1173 (make_mac_terminal_frame): Use ThemeCursor constants.
1174
d5161e8c
SM
1175 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
1176 New member hourglass_control.
6a3fac90 1177 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
d5161e8c 1178 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
6a3fac90 1179
a7321976
YM
11802005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1181
1182 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
6a3fac90 1183 coincides with that in Apple X11 except `clear', `enter' on
a7321976
YM
1184 laptops, and fn + `enter' on laptops.
1185
f7b758bd
SM
11862005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
1187
1188 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
1189 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
1190 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
1191
1192 * xfns.c (xic_defaut_fontset): New constant.
1193 (xic_create_fontsetname): New function.
1194 Extracted from create_frame_xic. Try to generate a slightly
1195 better fontset.
1196 (xic_create_xfontset): Use it.
1197 (create_frame_xic): Simplify.
1198
dac24db4
SM
11992005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
1200
1201 * fileio.c (Fmake_symbolic_link): Fix last change.
1202
e0402468
RS
12032005-03-11 Richard M. Stallman <rms@gnu.org>
1204
1205 * fileio.c (Frename_file, Fadd_name_to_file)
1206 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
1207 expand the basename of FILE relative to it.
1208
fa815b14
KH
12092005-03-11 Kenichi Handa <handa@m17n.org>
1210
1211 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
1212 before calling setup_coding_system so that autoloading of a coding
1213 system work.
1214
817d354b
JD
12152005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1216
68a505ef
JD
1217 * xfns.c (hourglass_started): New function.
1218
1219 * dispextern.h: Declare hourglass_started.
1220
1221 * keyboard.c (Fexecute_extended_command): Restart hourglass
1222 after call to Fcompleting_read if already started.
1223
817d354b
JD
1224 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
1225 GTK main loop is entered in xterm.c, thus doing the redraw.
1226
b0a6f45c
KS
12272005-03-10 Kim F. Storm <storm@cua.dk>
1228
1229 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
1230
ee5d57b0
KH
12312005-03-08 Kenichi Handa <handa@m17n.org>
1232
1233 * frame.c (x_set_font): Call set_default_ascii_font if an
1234 available font is found.
1235
1236 * fontset.c (set_default_ascii_font): New function.
dac24db4 1237 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
ee5d57b0
KH
1238
1239 * fontset.h (set_default_ascii_font): Extern it.
1240
f30c4a5c
KS
12412005-03-07 Kim F. Storm <storm@cua.dk>
1242
3fb26a86
KS
1243 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
1244 (clear_image_cache_count): New var.
1245 (redisplay_internal): Don't clear face and image caches in the
1246 middle of redisplay; do it afterwards.
1247
a54595d4
KS
1248 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
1249
f30c4a5c
KS
1250 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
1251 is valid. If not, clear phys_cursor_on_p and return.
1252
3d182f9d
AS
12532005-03-07 Andreas Schwab <schwab@suse.de>
1254
1255 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
1256
85d964de
RS
12572005-03-06 Richard M. Stallman <rms@gnu.org>
1258
1259 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
1260
1261 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
1262 (Feval, Ffuncall): Use CHECK_CONS_LIST.
1263
1264 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
1265
1266 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
1267 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
1268
3ff96c81
JL
12692005-03-05 Juri Linkov <juri@jurta.org>
1270
1271 * emacs.c (USAGE1): Replace Info node name "command arguments"
1272 with "emacs invocation".
1273 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
1274 allow arguments `--color' and `MODE' to be separated by space.
1275 Add --no-blinking-cursor, -nbc.
1276 (standard_args): Add -nbc, --no-blinking-cursor.
1277
64eb0083
TTN
12782005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
1279
1280 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
1281 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
1282 * fileio.c (Fexpand_file_name) [VMS]:
1283 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
1284 * doc.c (munge_doc_file_name) [VMS]: Likewise.
1285 (Fsnarf_documentation): Call munge_doc_file_name.
1286
ad708ae5
TTN
12872005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
1288
1289 * s/vms.h (FILE_SYSTEM_CASE): New macro.
1290 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
1291 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
1292
ba025f6d
YM
12932005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1294
1295 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
1296 defined (MAC_OSX) && defined (HAVE_CARBON)'.
ad708ae5 1297
dac24db4 1298 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
ba025f6d
YM
1299
1300 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
1301 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
dac24db4 1302 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
ba025f6d
YM
1303 (mac_clear_font_name_table): Move extern to macterm.h.
1304
1305 * macfns.c (install_window_handler): Move extern to macterm.h.
1306 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
1307 valid. Don't check !NILP (dir) because it is already checked with
1308 CHECK_STRING.
1309 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
dac24db4 1310 specifying the default location and obtaining the selected filename.
ba025f6d
YM
1311
1312 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
1313
2313f861 1314 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
ba025f6d
YM
1315 are included via Carbon.h.
1316
dac24db4
SM
1317 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
1318 Define USE_CARBON_EVENTS to 1.
2313f861 1319 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
ba025f6d
YM
1320 (x_free_frame_resources): Call remove_window_handler for
1321 non-tooltip windows.
1322 [TARGET_API_MAC_CARBON]: Don't include headers that are included
1323 via Carbon.h.
1324 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
1325 (mac_do_receive_dragUPP): New variables.
1326 (mac_handle_service_event, init_service_handler): Put declarations
1327 and definitions in #ifdef MAC_OSX.
1328 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
1329 drag-and-drop handler functions and register them.
1330 (remove_window_handler): New function.
dac24db4
SM
1331 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
1332 Use fsspec_to_posix_pathname.
ba025f6d
YM
1333 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
1334 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
dac24db4
SM
1335 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
1336 Set default cursors.
ba025f6d
YM
1337 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
1338 init_service_handler or init_quit_char_handler.
1339 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
1340
1341 * macterm.h (install_window_handler, remove_window_handler)
1342 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
1343 (mac_clear_font_name_table): New externs.
ad708ae5 1344
c1558952
TTN
13452005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
1346
1347 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
1348 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
1349 (Fexpand_file_name): Likewise.
1350
fa439170
TTN
13512005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
1352
1353 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
1354 no longer special-case VMS. Add bogus return value.
1355
db2dacf6
KS
13562005-03-02 Kim F. Storm <storm@cua.dk>
1357
1358 * dispextern.h (XASSERTS): Define to 0 if not already defined.
1359 (xassert) [!XASSERTS]: Define dummy version.
1360
0870514c
KS
13612005-03-02 Kim F. Storm <storm@cua.dk>
1362
1363 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
1364 Reported by David Kastrup.
1365
6b640092
KS
13662005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
1367
1368 * xdisp.c (get_next_display_element): Fix control and escape
1369 glyph from display vector.
1370
f4a5a485
SM
13712005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
1372
1373 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
1374
85d964de
RS
13752005-02-27 Richard M. Stallman <rms@gnu.org>
1376
1377 * xdisp.c (fast_find_position): Rename END to BEG.
1378 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
1379
6e8db3ea
JD
13802005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1381
f4a5a485 1382 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
6e8db3ea
JD
1383 gtk_window_resize and x_wm_set_size_hint.
1384
0f465b55
KS
13852005-02-25 Kim F. Storm <storm@cua.dk>
1386
1387 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
1388
1389 * xdisp.c (init_from_display_pos): Don't read past end of
1390 it->overlay_strings array.
1391
d5fb8dab 13922005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
845a78b4
LK
1393
1394 * buffer.c (syms_of_buffer): Fix typo.
1395
b02c3eed
LK
13962005-02-23 Lute Kamstra <lute@gnu.org>
1397
1398 * buffer.c (Foverlay_buffer): Doc fix.
1399
c8500765
KS
14002005-02-22 Kim F. Storm <storm@cua.dk>
1401
b686dd59
KS
1402 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
1403 and symbol keys in alists and hash tables.
1404
c8500765
KS
1405 * xdisp.c (fast_find_position): Fix search for start of overlay.
1406
81c85b53
KS
14072005-02-21 Kim F. Storm <storm@cua.dk>
1408
1409 * window.c (window_scroll_pixel_based): When scrolling backwards,
1410 handle partial visible line at end of window even when we hit PT.
1411
f4a5a485 14122005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
9df747e1
SM
1413
1414 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
1415
0dd5a842
KS
14162005-02-21 Kim F. Storm <storm@cua.dk>
1417
1418 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
1419 I think those asserts are bogus if buffer contains invisible text
1420 or images.
1421
d5fb8dab 14222005-02-21 David Kastrup <dak@gnu.org>
19e05d1f
KS
1423
1424 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
1425
0fba9f25
KS
14262005-02-20 Kim F. Storm <storm@cua.dk>
1427
1428 * xdisp.c (pos_visible_p): Be sure to move to the specified
1429 position. Always get the full ascent / descent of the
1430 corresponding row, to return reliable rtop and rbot values.
1431 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
1432 Must look one character back, as back_to_previous_line_start
1433 returns position after the newline.
1434 (move_it_vertically_backward): Fix heuristic for when to move further
1435 back in case line_height * 2/3 is larger than window height.
1436 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
1437 as it does not do anything anymore. Add arg current_matrix_p to
1438 use current matrix rather than desired matrix when set.
1439 (try_cursor_movement): Don't scroll to make cursor row fully
1440 visible if cursor didn't move. This avoids unexpected recentering
1441 in case of blinking cursor or accepting process output.
1442 Use current matrix to check cursor row visibility.
1443 (redisplay_window): Fix whether to recenter or move to top in case
1444 cursor line is taller than window height.
1445 (find_first_unchanged_at_end_row): Stop search if we reach a row
1446 which not enabled (instead of abort).
1447
b1c2adc3
KS
14482005-02-18 Kim F. Storm <storm@cua.dk>
1449
c2ee48fb
KS
1450 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
1451 to be nil in a :box attribute value list; customize prints that
1452 as lisp value when no box color is specified.
1453
b1c2adc3
KS
1454 * .gdbinit (pitx, pit): Pretty print display iterator.
1455 (prowx, prow): Pretty print glyph row.
1456 (pcursorx, pcursor): Pretty print a window cursor.
1457 (pwinx, pwin): Pretty print struct window.
1458
f102186f
SM
14592005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1460
1461 * alloc.c (BLOCK_BYTES): Harmless typo.
1462
9b516537
AS
14632005-02-17 Andreas Schwab <schwab@suse.de>
1464
1465 * xfns.c (hack_wm_protocols): Use correct type for last parameter
1466 of XGetWindowProperty to avoid aliasing issues.
1467 (Fx_window_property): Likewise.
1468
1469 * xselect.c (Fx_disown_selection_internal): Use union of struct
f4a5a485 1470 input_event and struct selection_input_event to avoid aliasing issues.
9b516537
AS
1471
1472 * xterm.c (handle_one_xevent): Use union of struct input_event and
1473 struct selection_input_event to avoid aliasing issues.
1474 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
1475
886b1418
KS
14762005-02-17 Kim F. Storm <storm@cua.dk>
1477
1478 * dispextern.h (enum it_method): New enum.
1479 (GET_FROM_*): Its members.
1480 (struct it): Change member method from function pointer to enum.
1481
1482 * xdisp.c (check_it, init_from_display_pos, handle_stop)
1483 (setup_for_ellipsis, handle_single_display_spec)
1484 (handle_composition_prop, next_overlay_string)
1485 (get_overlay_strings, reseat_1, reseat_to_string)
1486 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
1487 (in_display_vector_p, display_line, get_next_display_element):
1488 Change it->method from function pointer to enum.
1489 (get_next_element): New array to map it->method to function.
1490 (get_next_display_element): Use it.
1491 (set_iterator_to_next): Use switch instead of if/else chain.
1492
99ee2c6a 14932005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
52c7f9ee
JR
1494
1495 * w32select.c: Summary: Thorough rework to implement Unicode
1496 clipboard operations and delayed rendering.
1497
1498 Drop last_clipboard_text and related code, keep track of
f4a5a485 1499 ownership via clipboard_owner instead. Drop old #if0 sections.
52c7f9ee
JR
1500
1501 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
1502 (clipboard_owner, modifying_clipboard, cfg_coding_system)
1503 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
1504 (current_coding_system, current_requires_encoding)
f4a5a485
SM
1505 (current_num_nls, current_clipboard_type, current_lcid):
1506 New static variables.
52c7f9ee
JR
1507
1508 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
1509 (render, render_all, run_protected, lisp_error_handler)
1510 (owner_callback, create_owner, setup_config)
f4a5a485
SM
1511 (enum_locale_callback, cp_from_locale, coding_from_cp):
1512 New local functions.
52c7f9ee
JR
1513
1514 (term_w32select, globals_of_w32select): New global functions.
1515
1516 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
1517 clipboard_owner instead. Use delayed rendering and provide
1518 all text formats. Provide CF_LOCALE if necessary.
1519
1520 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
1521 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
1522 available. Force DOS line-ends for decoding.
1523
1524 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
1525
1526 (syms_of_w32select): Init and register new variables.
1527
1528 * w32.h: Add prototypes for globals_of_w32select and
1529 term_w32select. Make the neighboring K&R declarations into
1530 prototypes, too.
1531
1532 * emacs.c: Include w32.h to get function prototypes.
1533 (main): Call globals_of_w32select.
1534
886b1418 1535 * w32.c (term_ntproc): Call term_w32select.
52c7f9ee
JR
1536
1537 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
1538
86e61586
KS
15392005-02-16 Kim F. Storm <storm@cua.dk>
1540
1541 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
1542 at end of display vector.
1543
6407f07b
RS
15442005-02-15 Richard M. Stallman <rms@gnu.org>
1545
1546 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
1547 for mode and header lines.
1548
1549 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
1550
1551 * keymap.h (describe_map_tree): Change decl.
1552
1553 * keyboard.c (command_loop_1): Always use safe_run_hooks
1554 to run Qdeferred_action_function.
1555
1556 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
1557 (describe_map, describe_vector): Likewise. When it's 1,
1558 don't omit shadowed bindings, instead mark them as shadowed.
1559
1560 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
1561 for describe_map_tree. Pass 1 for MENTION_SHADOW.
1562
1563 * data.c (Fsetq_default): Allow no arg case.
1564
3bb917bf
KH
15652005-02-14 Kenichi Handa <handa@m17n.org>
1566
1567 * coding.c (encode_coding_string): Always return a unibyte string.
1568 If NOCOPY is nonzero and there's no need of encoding, make STR
1569 unibyte directly.
1570
1571 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
1572 multibyte string, signal an error instead of aborting.
1573
e31d908f
DN
15742005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
1575
1576 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
1577
48e029b6
KS
15782005-02-12 Kim F. Storm <storm@cua.dk>
1579
1580 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
1581
c10bb00a
KS
15822005-02-10 Kim F. Storm <storm@cua.dk>
1583
1584 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
1585 if it moves outside window or it doesn't display text.
1586
9ca0f64a
KS
15872005-02-09 Kim F. Storm <storm@cua.dk>
1588
1589 * undo.c (Fprimitive_undo): Check that undo function does not
1590 switch buffer.
1591
b8d6f4af
JD
15922005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1593
1594 * xselect.c (selection_data_to_lisp_data): For the special case
1595 type == XA_ATOM, data contains array of int, not array of Atom.
d5161e8c
SM
1596 (x_property_data_to_lisp, selection_data_to_lisp_data):
1597 Comment update: data must be array of int for format == 32.
b8d6f4af 1598
3419757d
SM
15992005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
1600
1601 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
1602
3a441526
JD
16032005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1604
fc34503b
JD
1605 * xfns.c (Fx_change_window_property): Use long array when format is 32.
1606 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
1607 convert long array returned from XGetWindowProperty to an int array.
bae45dc3
JD
1608 (x_set_tool_bar_lines): Check that width and height is greater than
1609 zero before clearing area.
fc34503b
JD
1610
1611 * xselect.c (x_reply_selection_request): Pass long array to
1612 XChangeProperty so that 64 bit longs are handeled correctly.
1613 (x_get_window_property): If format is 32 and long is bigger than 32
1614 bits convert data from XGetWindowProperty from long array to int array.
1615 (lisp_data_to_selection_data): When the input is a vector and the
1616 format is 32, allocate a long array even if long is bigger than 32 bits.
1617 (x_fill_property_data): Use char, short and long as the man page
1618 for XChangeProperty specifies. This way the data returned is OK for
1619 both 32 and 64 bit machines.
1620 (x_handle_dnd_message): Calculate size correctly even for 64 bit
1621 machines.
1622 (Fx_send_client_event): Undo change from 2005-02-05,
1623 x_fill_property_data now handles that case.
1624
3419757d 1625 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
3a441526
JD
1626 reason for the approach in the code.
1627
82ec225b
KS
16282005-02-07 Kim F. Storm <storm@cua.dk>
1629
1630 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
1631
ba2c991c
RS
16322005-02-06 Richard M. Stallman <rms@gnu.org>
1633
1634 * eval.c (Frun_hook_with_args)
1635 (Frun_hook_with_args_until_success)
1636 (Frun_hook_with_args_until_failure): Doc fixes.
1637
e120ea40
AS
16382005-02-05 Andreas Schwab <schwab@suse.de>
1639
3419757d 1640 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
e120ea40 1641
31f16913
JD
16422005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1643
1644 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
1645 the longs in a XClientMessageEvent correctly when long is 64 bits.
1646
6082a820
EZ
16472005-02-05 Eli Zaretskii <eliz@gnu.org>
1648
1649 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
1650 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
1651
0e95095b
JD
16522005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1653
1654 * xmenu.c (menubar_selection_callback): Force out GTK buffered
1655 events so the menu event comes after them. This is to prevent sit-for
1656 from exiting on buffered events directly after a menu selection,
1657 lisp code for Help => About Emacs uses sit-for.
1658
1659 * gtkutil.c (create_menus): Connect selection-done event instead of
1660 the deactivate event to deactivate_cb. This will make the last
1661 leave event come before the call to deactivate_cb, so the leave
1662 event does not make sit-for exit after a menu selection.
1663
5bb6a3c1
KS
16642005-02-03 Kim F. Storm <storm@cua.dk>
1665
1666 * dispnew.c (build_frame_matrix_from_leaf_window)
1667 [!GLYPH_DEBUG]: Fix xassert.
1668
1669 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
1670
1671 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1672
e9859e26
YM
16732005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1674
1675 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
1676 the compiling OS version.
1677
1678 * macfns.c (x_create_tip_frame): Likewise.
1679
3419757d 1680 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
e9859e26 1681
4e07258f
RS
16822005-02-03 Richard M. Stallman <rms@gnu.org>
1683
1684 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
1685
1686 * xdisp.c (echo_area_display): Clear echo_message_buffer.
1687
1688 * buffer.c (Fbury_buffer): Doc fix.
1689
4a34b529
ST
16902005-02-02 Steven Tamm <steventamm@mac.com>
1691
7e26f91b 1692 * macfns.c (unwind_create_frame): Fix compile error due to
f6c62d96 1693 xassert being uncondition, but predicate is.
7e26f91b 1694 * dispnew.c (update_window): Fix compile error due to
f6c62d96 1695 xassert being uncondition, but predicate is.
4a34b529 1696
d78f30b8
MB
16972005-02-02 Miles Bader <miles@gnu.org>
1698
1699 * dispextern.h (xassert): Enable unconditionally.
1700
b044278d
KS
17012005-02-02 Kim F. Storm <storm@cua.dk>
1702
1703 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
1704
56072160
KH
17052005-02-02 Kenichi Handa <handa@m17n.org>
1706
1707 * casefiddle.c (casify_object): Enable changing characters of
1708 different byte length.
1709 (casify_region): Fix loop condition, args to replace_range_2, and
1710 update opoint_byte.
1711
f4a5a485 1712 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
56072160 1713
5e1674c5
KS
17142005-02-01 Kim F. Storm <storm@cua.dk>
1715
1716 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
1717 stack before calling handle_display_prop.
1718
fb89c330
KS
17192005-01-31 Kim F. Storm <storm@cua.dk>
1720
1721 * undo.c (Qapply): New lisp var.
1722 (syms_of_undo): Intern and staticpro it.
1723 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
1724 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
1725
1726 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1727
7bf72fa6
JH
17282005-01-30 Jesper Harder <harder@phys.au.dk>
1729
a050b1a9
KS
1730 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
1731 <mac-emulate-three-button-mouse>: Fix docstring indentation.
7bf72fa6 1732
03c64f2e
LT
17332005-01-29 Luc Teirlinck <teirllm@auburn.edu>
1734
1735 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6de38aa3 1736 Increase value to 3 Meg.
03c64f2e 1737
49b8b5dc
JD
17382005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1739
1740 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
1741 button events are not received otherwise.
1742
5a92a9eb
RS
17432005-01-29 Richard M. Stallman <rms@gnu.org>
1744
1745 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
1746
1747 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
1748
5c243ee4
SM
17492005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
1750
1751 * keymap.c (access_keymap): YAILOM.
1752
caf533af
KS
17532005-01-27 Kim F. Storm <storm@cua.dk>
1754
1755 * xdisp.c (get_phys_cursor_geometry): New function to calculate
1756 phys cursor position and size for hollow cursor. Position is
1757 aligned with get_glyph_string_clip_rect and ensures that a hollow
1758 cursor is shown, even when the actual glyph is not visible.
1759
1760 * dispextern.h (get_phys_cursor_geometry): Add prototype.
1761
1762 * xterm.c (x_clip_to_row): Ensure y >= 0.
1763 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1764
1765 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1766
1767 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
1768
043f7f73
SM
17692005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
1770
1771 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
1772
889f3641
KS
17732005-01-27 Kim F. Storm <storm@cua.dk>
1774
1775 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
1776 glyph, even when row is only partially visible and actual cursor
1777 position is not visible.
1778
29099c2f
RS
17792005-01-24 Richard M. Stallman <rms@gnu.org>
1780
1781 * xterm.c (x_error_quitter): No longer static, and moved after
1782 x_error_handler.
1783
6adb6f01
KS
17842005-01-24 Kim F. Storm <storm@cua.dk>
1785
1786 * xdisp.c (move_it_by_lines): If we move forward after going too
1787 far back, cancel move if end position is same as start position.
1788
4d904fa0
ST
17892005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1790
1791 * dispextern.h (struct glyph_string): New members clip_head and
1792 clip_tail.
6adb6f01 1793
4d904fa0
ST
1794 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
1795 region to the area between clip_head and clip_tail.
1796 (draw_glyphs): Record the area that need to be actually redrawn to
1797 the new variables clip_head and clip_tail when there are
1798 overhangs. Set values of these variables to the corresponding
1799 members in struct glyph_string. Refine x coordinates for
1800 notice_overwritten_cursor using clip_head and clip_tail.
6adb6f01 1801
4d904fa0
ST
1802 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
1803
1804 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
1805 QDTextBounds.
1806 (x_draw_glyph_string): Don't fill the background of the successor
6adb6f01 1807 of a glyph with a right overhang if the successor will draw a cursor.
4d904fa0 1808 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6adb6f01 1809 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4d904fa0 1810
f2417699
KS
18112005-01-24 Kim F. Storm <storm@cua.dk>
1812
6f67f013
KS
1813 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
1814 direction if window height was smaller than next-screen-context-lines.
1815 Now always scroll at least one line in the requested direction.
1816 Ensure that we actually do scroll backwards when requested to do so.
1817
f2417699
KS
1818 * xdisp.c (redisplay_window): Only try to make cursor line fully
1819 visible once (to avoid redisplay loop).
1820
a354b72c
KS
18212005-01-23 Kim F. Storm <storm@cua.dk>
1822
6b3d88f7 1823 * window.c (Fpos_visible_in_window_p): Simplify return value for
8f958b40 1824 partially visible rows.
6b3d88f7
KS
1825 (window_scroll_pixel_based): Adapt to that change.
1826
5c20cae2
KS
1827 * window.c (window_scroll_pixel_based): Force moving to next line
1828 if scrolling doesn't move start point, e.g. if looking at tall image.
1829
a354b72c 1830 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5c20cae2
KS
1831 Clear last_height before calling line_bottom_y to get real height.
1832 Fix calculation of y.
a354b72c 1833
d9e7c622
ST
18342005-01-22 Steven Tamm <steventamm@mac.com>
1835
1836 * s/darwin.h: Removed PTY_ITERATION from here.
043f7f73 1837 (DARWIN): Define.
7e26f91b 1838
d9e7c622
ST
1839 * process.c (init_process): Default process-connection-type to
1840 nil on darwin 6 or less, t if it is 7 or higher. This way the
1841 broken pty behavior is still allowed on darwin 6 for interactive
1842 processes for people that know what they are doing.
1843
d00e399a
KS
18442005-01-22 Kim F. Storm <storm@cua.dk>
1845
1846 * window.c (auto_window_vscroll_p): New boolean.
1847 (syms_of_window): DEFVAR_BOOL it.
1848 (Fpos_visible_in_window_p): Extend return value to include RTOP
1849 and RBOT values if FULLY is nil.
1850 (window_scroll_pixel_based): Adjust vscroll for partially visible
1851 rows if auto_window_vscroll_p is set.
1852 (Fset_window_vscroll): Do nothing if vscroll is not modified.
1853
1854 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
1855 to return number of partially invisible pixels at top and bottom
1856 of the dislay row at POS.
1857
1858 * lisp.h (pos_visible_p): Fix prototype.
1859
f95a20e7
RS
18602005-01-21 Richard M. Stallman <rms@gnu.org>
1861
1862 * fileio.c (Fcopy_file): Doc fix.
1863
eee141ce
JD
18642005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1865
1866 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
1867 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
1868 start of function for older compilers.
1869
6f771c32
RS
18702005-01-20 Richard M. Stallman <rms@gnu.org>
1871
1872 * editfns.c (Fmessage): If arg is "", return "" (as before).
1873
1874 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
1875
1876 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
1877 variable.
1878
a15252fd
ST
18792005-01-20 Steven Tamm <steventamm@mac.com>
1880
043f7f73 1881 * editfns.c (Voperating_system_release): Add.
a15252fd
ST
1882 (init_editfns): Assign new variable operating-system-release
1883 based on call to uname if available.
043f7f73 1884 (get_operating_system_release): Add function to
d00e399a 1885 allow c-level access to operating system release.
a15252fd
ST
1886
1887 * config.h: Regenerated.
1888
043f7f73
SM
1889 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
1890 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
a15252fd
ST
1891 using ptys as '7'.
1892
3d6a4b2d
KS
18932005-01-20 Kim F. Storm <storm@cua.dk>
1894
62fc9b0f
KS
1895 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
1896
c310aca4
KS
1897 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
1898 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
1899
1900 * macterm.c (x_draw_glyph_string_box): Likewise.
1901
1902 * w32term.c (x_draw_glyph_string_box): Likewise.
1903
3d6a4b2d
KS
1904 * indent.c (Fvertical_motion): Temporarily disable selective display.
1905
27c8be45
KS
19062005-01-19 Kim F. Storm <storm@cua.dk>
1907
77db5cf3
KS
1908 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
1909 image property.
1910
27c8be45
KS
1911 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
1912
81f498dc
KS
19132005-01-18 Kim F. Storm <storm@cua.dk>
1914
1915 * xdisp.c (fast_find_position): Backtrack to find first row if
1916 charpos is inside a display overlay that spans multiple lines.
1917
1cdb0707
KH
19182005-01-18 Kenichi Handa <handa@m17n.org>
1919
1920 * coding.c (decode_coding_iso2022): Translate invalid codes if
1921 translation-table is specified.
1922
677159ce
KS
19232005-01-18 Kim F. Storm <storm@cua.dk>
1924
1925 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
1926 change. If handle_display_prop indicates newline is replaced by
1927 image or text, move back to start of relevant overlay or interval
1928 and continue scan from there. Simplify.
1929
977284cc
KS
19302005-01-17 Kim F. Storm <storm@cua.dk>
1931
043f7f73
SM
1932 * dispnew.c (mode_line_string, marginal_area_string):
1933 Fix off-by-one error in search for glyph.
977284cc 1934
e24531b7
KS
19352005-01-16 Kim F. Storm <storm@cua.dk>
1936
1937 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
1938
5ddd7664
ST
19392005-01-16 Steven Tamm <steventamm@mac.com>
1940
043f7f73 1941 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5ddd7664 1942
fc2ff44b
AS
19432005-01-16 Andreas Schwab <schwab@suse.de>
1944
1945 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
1946
50af5100
JD
19472005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1948
1949 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
1950 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
1951
a2d5fca0
JD
19522005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1953
1954 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
e24531b7
KS
1955 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
1956 New flags for readable_events.
043f7f73 1957 (get_filtered_input_pending, readable_filtered_events): Remove.
a2d5fca0
JD
1958 (tracking_off): Call readable_events and get_input_pending with
1959 flag READABLE_EVENTS_DO_TIMERS_NOW.
1960 (readable_events): Move code from old readable_filtered_events here,
1961 but check new READABLE_EVENTS_* in argument flags instead of previous
1962 two boolean arguments do_timers_now and filter_events.
1963 If we are doing mouse tracking and the mouse moved, return only if
1964 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
1965 (swallow_events): Call get_input_pending with flag
1966 READABLE_EVENTS_DO_TIMERS_NOW.
e24531b7 1967 (get_input_pending): Move code from old get_filtered_input_pending
a2d5fca0
JD
1968 here. Replace boolean arguments do_timers_now, filter_events with
1969 flags, and pass flags to readable_events. Document new
1970 READABLE_EVENTS_* flags.
1971 (detect_input_pending_ignore_squeezables): New function.
1972 (detect_input_pending_run_timers): Call get_input_pending with flag
1973 READABLE_EVENTS_DO_TIMERS_NOW.
1974 (Finput_pending_p): Call get_input_pending with flags
1975 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
1976
1977 * dispnew.c (update_window, update_frame_1): Replace calls to
1978 detect_input_pending with detect_input_pending_ignore_squeezables
e24531b7 1979 so that redisplay is not paused if the event queue contains only
a2d5fca0
JD
1980 mouse movements.
1981
1982 * lisp.h: Declare detect_input_pending_ignore_squeezables.
1983
42afbcda
ST
19842005-01-15 Steven Tamm <steventamm@mac.com>
1985
e24531b7
KS
1986 * macterm.c (Vmac_use_core_graphics): Declare variable for
1987 mac-allow-anti-aliasing.
1988 (syms_of_macterm): DEFVAR_LISP and initialize it.
743d0696 1989 (mac_draw_string_common): Use core graphics text rendering if
0530c679 1990 mac-allow-anti-aliasing is enabled.
743d0696 1991
42afbcda
ST
1992 * macfns.c (Fx_file_dialog): Save As dialog includes only the
1993 file name in the text box.
1994
9cdd4884
ST
19952005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1996
043f7f73
SM
1997 * macfns.c (x_set_foreground_color, x_set_background_color):
1998 Sync with xfns.c.
9cdd4884
ST
1999 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
2000 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
2001 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
2002
88948d55
KS
20032005-01-14 Kim F. Storm <storm@cua.dk>
2004
2005 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
2006
20d6de82
RS
20072005-01-13 Richard M. Stallman <rms@gnu.org>
2008
2009 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
2010 if Voverriding_terminal_local_map is non-nil.
2011
2012 * keyboard.c (syms_of_keyboard): Doc fix.
2013
f75a592e
KS
20142005-01-13 Kim F. Storm <storm@cua.dk>
2015
2016 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
2017 (specify 0 for FACE instead). Reorder arg list. Doc fix.
2018
28f94a34
RS
20192005-01-12 Richard M. Stallman <rms@gnu.org>
2020
2021 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
2022 face property for characters that don't specify one.
2023
2024 * fns.c (Frequire): Record in load-history unconditionally.
2025
57a230b1
KS
20262005-01-10 Kim F. Storm <storm@cua.dk>
2027
2028 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
2029
2030 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
2031 Callers changed.
2032 Add support to merge with lisp face id too (if face_name is t).
2033
2034 * xdisp.c (get_next_display_element, next_element_from_display_vector):
2035 Don't lookup lface_id from display table glyphs here; instead use
2036 merge_faces to merge the lisp face id into current face.
2037
8ab2c119
KS
20382005-01-09 Kim F. Storm <storm@cua.dk>
2039
2040 * dispextern.h (struct it): New member dpvec_face_id.
2041 (merge_into_realized_face): Add prototype.
2042
2043 * xfaces.c (merge_into_realized_face): New function. Used to
2044 merge escape-glyph face or face from display table into current face.
2045
2046 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
2047 (syms_of_xdisp): DEFVAR_LISP it.
2048 (escape_glyph_face): Remove var.
2049 (redisplay_window): Don't initialize it.
2050 (setup_for_ellipsis, get_next_display_element):
2051 Set it->dpvec_face_id to -1.
2052 (get_next_display_element): Test Vshow_nonbreak_escape.
2053 Do not setup escape_glyph_face.
2054 Properly merge escape-glyph face or face from display table with
043f7f73
SM
2055 current face for escape and control characters.
2056 Set it->dpvec_face_id to relevant face id instead of adding it to each
8ab2c119
KS
2057 element of display vector.
2058 (next_element_from_display_vector): If it->dpvec_face_id is set,
2059 use that instead of lface_id from glyph itself.
2060
e0910857
JD
20612005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2062
2063 * xterm.h (struct x_output): New member, toolbar_detached.
2064
2065 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
2066 38.
2067 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
2068 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
2069 (xg_create_tool_bar): Initialize toolbar_detached.
2070 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
2071 toolbar_detached is zero.
2072
ff59904a
JD
20732005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2074
9b85e63d
JD
2075 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
2076 gtk_menu_popup if not for_click, so callbacks for the menu are called.
2077
ff59904a
JD
2078 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
2079 (xg_tool_bar_callback, xg_tool_bar_help_callback)
043f7f73 2080 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
ff59904a
JD
2081
2082 * xselect.c (x_get_foreign_selection, x_fill_property_data)
8ab2c119 2083 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
ff59904a
JD
2084 XFLOAT_DATA to get extract number from Lisp object.
2085
f9a23a6f
KS
20862005-01-07 Kim F. Storm <storm@cua.dk>
2087
2088 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
2089 Set stop_charpos to current charpos instead of 0.
2090
28f94a34
RS
20912005-01-06 Nick Roberts <nickrob@snap.net.nz>
2092
2093 * xdisp.c (Fformat_mode_line): First arg now required.
2094
a6fffcdc
ST
20952005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2096
2097 * macterm.c (XLoadQueryFont): Correctly handle 0 size
2098 font widths that are returned from some Japanese fonts.
2099
c35b0c6b
KS
21002005-01-06 Kim F. Storm <storm@cua.dk>
2101
2102 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
2103 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
2104 (destroy_fringe_bitmap): Set fringe_faces element to nil.
2105 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
2106 fringe_faces array and init elements to nil.
2107 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
2108 non-persistent face id.
2109 (mark_fringe_data): New function for GC.
2110
2111 * alloc.c (mark_fringe_data): Declare extern.
2112 (Fgarbage_collect): Call mark_fringe_data.
2113
2114 * alloc.c (overrun_check_free): Invalidate freed memory if
2115 XMALLOC_CLEAR_FREE_MEMORY is defined.
2116
e0e76ab9
ST
21172005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2118
2119 * macfns.c: Include sys/param.h.
2120 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
2121 and function.
2122 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
2123 of filename string. Set event callback function when creating
2124 dialog boxes. Add code conversions for filenames. Don't dispose
2125 apple event descriptor record if failed to create it.
2126
2127 * macterm.c: Include sys/param.h.
2128 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
2129 kEventWindowUpdate.
2130 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
2131 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
2132 of FSSpec from apple event descriptor record.
2133 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
2134 size of filename string.
2135 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
2136 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
2137 file dialog is in action.
043f7f73
SM
2138 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
2139 Reject only when there are no filename items. Set background color
e0e76ab9 2140 before (un)highlighting the window below the dragged items.
2313f861 2141 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
e0e76ab9 2142
043bc640
KH
21432005-01-05 Romain Francoise <romain@orebokech.com>
2144
2145 * term.c (encode_terminal_code): Fix buffer size computation.
2146
dd496df6
RS
21472005-01-04 Richard M. Stallman <rms@gnu.org>
2148
2149 * xdisp.c (Fformat_mode_line): Doc fix.
2150
026cdede
SM
21512005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2152
2153 * alloc.c (refill_memory_reserve): Move.
2154 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
2155 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
2156
d57c7572
RS
21572005-01-03 Richard M. Stallman <rms@gnu.org>
2158
2159 * window.c (window_scroll_pixel_based): Don't correct preserve_y
2160 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
2161
b14f868c
JR
21622005-01-03 Jason Rumney <jasonr@gnu.org>
2163
2164 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
2165 fontp->space_width to FONT_WIDTH so they are valid.
2166
2167 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
2168 average width. Set fontp->average_width and fontp->space_width to
2169 their appropriate values.
2170
2171 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
2172 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
2173 fontp->space_width.
2174
e169f939
ST
21752005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2176
2177 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
2178 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
2179 metrics for max and min bounds.
2180 (x_load_font): Correctly calculate average font width metrics.
2181
19996af4
RS
21822005-01-02 Richard M. Stallman <rms@gnu.org>
2183
2184 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
2185
42d02da0
JD
21862004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2187
2188 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
2189
1db7dd46
RS
21902004-12-31 Richard M. Stallman <rms@gnu.org>
2191
b437860a
RS
2192 * xdisp.c (setup_for_ellipsis, get_next_display_element):
2193 Set it->ellipsis_p to 1 or 0.
2194 (display_line): Record whether row ends in mid-ellipsis.
2195 (set_cursor_from_row): If ends in ellipsis. find start of it.
2196 (cursor_row_p): If PT's at the end of the ellipsis the row
2197 ends within, don't display cursor on this row.
2198
2199 * dispextern.h (struct it): New element ellipsis_p.
2200 (struct glyph_row): New element ends_in_ellipsis_p.
2201
2202 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
2203 position if we're reading from something other than the buffer.
2204
1db7dd46
RS
2205 * window.c (window_scroll_pixel_based): Only look at
2206 Vscroll_preserve_screen_position if the old PT can't be kept.
2207 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
2208
1225f637
KS
22092004-12-30 Kim F. Storm <storm@cua.dk>
2210
2211 * xdisp.c (get_line_height_property): New function extracted from
2212 original calc_line_height_property.
2213 (calc_line_height_property): Rework. Handle t and (nil . ratio).
2214 (x_produce_glyphs): Use them to handle line-height and
2215 line-spacing according to new height spec.
2216 (Qtotal): Remove.
33b2f4ea 2217 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
1225f637 2218
c243063e
KH
22192004-12-30 Kenichi Handa <handa@m17n.org>
2220
2221 * fileio.c (Finsert_file_contents): Don't use
2222 current_buffer->buffer_file_coding_system even if REPLACE is
043f7f73 2223 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
c243063e
KH
2224
2225 * fontset.h (struct font_info): New members space_width and
2226 average_width.
2227
2228 * frame.h (struct frame): New member space_width.
2229 (FRAME_SPACE_WIDTH): New macro.
2230
2231 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
2232
2233 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
2234 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
b14f868c 2235 fontp->space_width.
043f7f73 2236 (x_load_font): Calculate fontp->space_width and fontp->average_width.
c243063e
KH
2237 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
2238
2239 * xdisp.c (x_produce_glyphs): Calculate tab width by
2240 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
2241
456e761b
ST
22422004-12-29 Sanghyuk Suh <han9kin@mac.com>
2243
2244 * macterm.c (SelectionRange): Add Xcode position apple event struct.
043f7f73 2245 (do_ae_open_documents): Handle Xcode-style file position open events.
456e761b 2246
188577ce
LT
22472004-12-29 Luc Teirlinck <teirllm@auburn.edu>
2248
2249 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
2250
99ec74b9
RS
22512004-12-29 Richard M. Stallman <rms@gnu.org>
2252
2253 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
2254
30c92fab
ST
22552004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2256
2257 * macfns.c (install_window_handler): Modify extern to return OSErr
2258 value.
2259 (mac_window): Handle return value of install_window_handler.
2260
2261 * macterm.c (reflect_byte): Remove function.
2262 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
2263 Lookup table instead.
2264 (mac_do_font_lists): Simplify calculation of the longest
2265 nonspecial string.
2266 (init_mac_drag_n_drop): Remove function and declaration.
2267 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
2268 init_mac_drag_n_drop.
2269 (mac_do_track_drag): New function and declaration.
2270 (install_window_handler): Return OSErr value.
043f7f73
SM
2271 (install_window_handler) [TARGET_API_MAC_CARBON]:
2272 Register handlers for tracking/receiving drag-and-drop items.
30c92fab 2273 (do_ae_open_documents): Generate unibyte strings for filenames.
043f7f73
SM
2274 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
2275 Reject only non-filename items. Set event modifiers, and return value.
30c92fab 2276
4b982924
DN
22772004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
2278
2279 * coding.c (decode_coding): Fix previous change.
2280
93fdf45f
RS
22812004-12-28 Richard M. Stallman <rms@gnu.org>
2282
2283 * xdisp.c (back_to_previous_visible_line_start):
2284 Don't call handle_display_prop.
2285
5bdca8af
DN
22862004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
2287
2288 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
2289 (decode_coding_emacs_mule, encode_coding_emacs_mule)
2290 (decode_coding_iso2022, encode_designation_at_bol)
2291 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
2292 (decode_coding): Constify arguments and local vars.
2293
33385c6f
JD
22942004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2295
2296 * xmenu.c (popup_get_selection): Only pop down dialogs
2297 on C-g and Escape.
95bdef2e 2298 (popup_get_selection): Remove parameter down_on_keypress.
043f7f73
SM
2299 (create_and_show_popup_menu, create_and_show_dialog):
2300 Remove parameter down_on_keypress to popup_get_selection.
33385c6f 2301
b15325b2
ST
23022004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2303
2304 * dispextern.h: Change HAVE_CARBON to MAC_OS.
2305 (struct glyph_string): Likewise.
a2c7e69a 2306
b15325b2
ST
2307 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
2308 mac_initialize.
a2c7e69a 2309
b15325b2
ST
2310 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
2311 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
a2c7e69a 2312
b15325b2 2313 * fns.c (vector): Change MAC_OSX to MAC_OS.
a2c7e69a 2314
b15325b2
ST
2315 * frame.c (x_set_frame_parameters, x_report_frame_params)
2316 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
043f7f73
SM
2317 (x_set_border_width, Vdefault_frame_scroll_bars):
2318 Change HAVE_CARBON to MAC_OS.
a2c7e69a 2319
b15325b2
ST
2320 * image.c [MAC_OS]: Include sys/stat.h.
2321 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
2322 QuickTimeComponents.h.
a2c7e69a 2323
b15325b2
ST
2324 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
2325 [!MAC_OSX] (select): Use mac_wait_next_event.
043f7f73 2326 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
b15325b2
ST
2327 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
2328 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
2329 (mac_clear_font_name_table): Add extern.
2330 (Fmac_clear_font_name_table): New defun.
2331 (syms_of_mac): Defsubr it.
2332 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
2333 [MAC_OSX] (select_and_poll_event): New function.
2334 [MAC_OSX] (sys_select): Use it.
2335 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
2336 [MAC_OSX && SELECT_USE_CFSOCKET]
2337 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
2338 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
2339 RunLoop for simultaneously monitoring two kinds of inputs, window
2340 events and process outputs, without periodically polling.
a2c7e69a 2341
b15325b2
ST
2342 * macfns.c (mac_initialized): Remove extern.
2343 (stricmp): Put in #if 0. All callers changed to use xstricmp in
2344 xfaces.c.
043f7f73
SM
2345 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
2346 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
b15325b2
ST
2347 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
2348 (mac_get_rdb_resource): New function (from w32reg.c).
2349 (x_get_string_resource): Use it.
2350 (install_window_handler): Add extern.
2351 (mac_window): New function.
043f7f73
SM
2352 (Fx_create_frame): Use it instead of make_mac_frame.
2353 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
b15325b2
ST
2354 (Fx_open_connection, Fx_close_connection): New defuns.
2355 (syms_of_macfns): Defsubr them.
043f7f73
SM
2356 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
2357 Add kWindowNoUpdatesAttribute to the window attribute.
b15325b2
ST
2358 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
2359 (x_create_tip_frame): Don't call ShowWindow.
2360 (Fx_show_tip): Call ShowWindow.
2361 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
2362 TARGET_API_MAC_CARBON'.
2363 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
2364 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
a2c7e69a 2365
043f7f73 2366 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
b15325b2
ST
2367 (Window): Typedef to WindowPtr and move outside `#if
2368 TARGET_API_MAC_CARBON'.
2369 (XSizeHints): New struct.
a2c7e69a 2370
b15325b2
ST
2371 * macterm.c (x_update_begin, x_update_end)
2372 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
2373 frame.
2374 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2375 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
2376 (construct_mouse_click): Put in #if 0.
2377 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
2378 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
2379 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
2380 (activate_scroll_bars, deactivate_scroll_bars)
2381 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
2382 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
2383 if the position is neither user-specified nor program-specified.
2384 (x_free_frame_resources): Free size_hints.
043f7f73 2385 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
b15325b2
ST
2386 (mac_clear_font_name_table): New function.
2387 (mac_do_list_fonts): Initialize font_name_table if needed.
2388 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
2389 around mac_do_list_fonts.
2390 (mac_unload_font): New function.
2391 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
2392 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
2393 and definitions with #if TARGET_API_MAC_CARBON.
2394 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
2395 (install_window_handler): Add decl.
2396 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
2397 window. Use UpdateControls. Get the rectangle that should be
2398 updated and restrict the target of expose_frame to it.
043f7f73 2399 (do_grow_window): Set minimum height/width according to size_hints.
b15325b2
ST
2400 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
2401 (do_zoom_window): Don't use x_set_window_size.
2402 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
2403 (install_window_handler): New function.
2404 [!USE_CARBON_EVENTS] (mouse_region): New variable.
2405 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
2406 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
2407 GetEventDispatcherTarget inside BLOCK_INPUT.
2408 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
2409 Update mouse_region when mouse is moved.
2410 (make_mac_frame): Remove.
043f7f73
SM
2411 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
2412 Initialize mouse pointer shapes. Change values of f->left_pos and
2413 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
2414 Don't call ShowWindow.
b15325b2
ST
2415 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
2416 Vinvocation_name and Vsystem_name.
2417 (mac_make_rdb): New function (from w32term.c).
2418 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
2419 already been opened. Don't pass argument to
2420 mac_initialize_display_info. Don't set dpyinfo->height/width.
2421 Add entries to x_display_list and x_display_name_list.
2422 (x_delete_display): New function.
2423 (mac_initialize): Don't call mac_initialize_display_info.
a2c7e69a
KS
2424 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
2425
b15325b2
ST
2426 * macterm.h (check_mac): Add extern.
2427 (struct mac_output): New member size_hints.
2428 (FRAME_SIZE_HINTS): New macro.
2429 (mac_unload_font): Add extern.
a2c7e69a 2430
b15325b2 2431 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
a2c7e69a 2432
b15325b2
ST
2433 * xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.
2434
92d2947b
RS
24352004-12-27 Richard M. Stallman <rms@gnu.org>
2436
043f7f73 2437 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
ebbd14f1
RS
2438 (syms_of_buffer): Don't defsubr it.
2439
2440 * process.c (list_processes_1): Set undo_list instead
2441 of calling Fbuffer_disable_undo.
2442
043f7f73 2443 * xdisp.c (single_display_spec_string_p): Rename from
92d2947b 2444 single_display_prop_string_p.
043f7f73 2445 (single_display_spec_intangible_p): Rename from
92d2947b 2446 single_display_prop_intangible_p.
043f7f73 2447 (handle_single_display_spec): Rename from handle_single_display_prop.
92d2947b
RS
2448 Rewritten to be easier to understand.
2449
a2c7e69a 2450 Change in load-history format. Functions now get (defun . NAME),
92d2947b
RS
2451 and variables get just NAME.
2452
2453 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
2454
2455 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
2456 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
2457 (Qdefvar): Var deleted.
2458 (syms_of_eval): Don't initialze it.
2459
2460 * lread.c (syms_of_lread) <load-history>: Doc fix.
2461
9f6fcdc5
JD
24622004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2463
2464 * xmenu.c (popup_get_selection): Pop down on C-g.
2465 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
2466 pops down menu on C-g.
2467 (xdialog_show): If dialog popped down and no button in the dialog was
2468 pushed, call Fsignal to quit.
2469 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
2470 Fsignal to quit.
2471
2472 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
2473
2474 * gtkutil.c (xg_initialize): Install bindings for C-g so that
2475 dialogs and menus pop down.
2476
d8ca23a0
KH
24772004-12-27 Kenichi Handa <handa@m17n.org>
2478
2479 * coding.c (code_convert_region): Fix calculation of `ratio'.
2480
857ae68b
JD
24812004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2482
133c0116
JD
2483 * gtkutil.c (update_frame_tool_bar): Make the value of
2484 tool-bar-button-margin control margins of images in tool bar.
2485
857ae68b
JD
2486 * alloc.c (check_depth): New variable.
2487 (overrun_check_malloc, overrun_check_realloc): Only add
2488 overhead and write check pattern if check_depth is 1 (to handle
2489 recursive calls). Increase/decrease check_depth in entry/exit.
2490 (overrun_check_free): Only check for overhead if check_depth is 1.
2491 Increase/decrease check_depth in entry/exit.
2492
bd55c35c
JD
24932004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2494
2495 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
2496 before touching input_available_clear_time, to avoid accessing it
2497 from multiple threads.
2498
66354420
JR
24992004-12-23 Jason Rumney <jasonr@gnu.org>
2500
2501 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
2502 of JPEG library.
2503
55f4edbc
RS
25042004-12-22 Richard M. Stallman <rms@gnu.org>
2505
2506 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
2507
2508 * lisp.h (Vundo_outer_limit): Fix decl.
2509
2510 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
2511 Uses changed.
2512 (syms_of_undo): Initialize appropriately.
2513 (truncate_undo_list): If it's nil, there's no limit.
2514
7a0ea9e3
KH
25152004-12-22 Kenichi Handa <handa@m17n.org>
2516
2517 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
2518
fda2922a
RS
25192004-12-21 Richard M. Stallman <rms@gnu.org>
2520
2521 * eval.c (unwind_to_catch): Clear immediate_quit.
2522
2523 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
2524 specially as `\ ' and `\-'.
2525
2526 * keyboard.c (kbd_buffer_store_event_hold):
2527 In the code for while-no-input, handle immediate_quit.
2528
2529 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
2530 Call that at the very start.
043f7f73 2531 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
fda2922a
RS
2532 (syms_of_alloc): Don't define undo-limit,
2533 undo-strong-limit and undo-outer-limit here.
2534
2535 * undo.c (truncate_undo_list): Return void.
2536 Take just one argument, the buffer.
2537 Make it current, and inhibit recursive GC.
2538 Access and update the undo list directly; return void.
2539 Refer to the undo...limit variables directly.
2540 Test undo_outer_limit only after counting the whole current command.
2541 When it's exceeded, call the function in undo-outer-limit-function.
2542 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
2543 (Vundo_outer_limit_function): New variable.
2544 (syms_of_undo): Define undo-limit, undo-strong-limit
2545 and undo-outer-limit here, and undo-outer-limit-function.
2546 Doc fixes.
2547
2548 * lisp.h (truncate_undo_list): Update decl.
2549
25502004-12-21 Piet van Oostrum <piet@cs.uu.nl>
2551
2552 * fileio.c (Fread_file_name): Delete duplicates in
2553 file-name-history when history_delete_duplicates is true.
2554
68c69027
ST
25552004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2556
2557 * macterm.c (mac_do_list_fonts): Fix memory leak
2558
134579f2
RS
25592004-12-20 Richard M. Stallman <rms@gnu.org>
2560
2561 * regex.c (re_match_2_internal) <symend, wordend>:
2562 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
2563
fbe6152f
ST
25642004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2565
043f7f73
SM
2566 * macterm.c (endif, x_font_name_to_mac_font_name):
2567 Use maccentraleurroman instead of maccentraleuropean
fbe6152f
ST
2568 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
2569 quickly finding a specific font without needing regexps.
2570
fecad3f6
JD
25712004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2572
333f1b6f
JD
2573 * syssignal.h: Declare main_thread.
2574 (SIGNAL_THREAD_CHECK): New macro.
2575
2576 * keyboard.c (input_available_signal): Move thread checking code
2577 to macro SIGNAL_THREAD_CHECK and call that macro.
2578 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
2579
2580 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
2581
2582 * emacs.c: Define main_thread.
2583 (main): Initialize main_thread.
2584 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
2585 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
2586
2587 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
2588
2589 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
2590
2591 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
2592
043f7f73
SM
2593 * process.c (send_process_trap, sigchld_handler):
2594 Call SIGNAL_THREAD_CHECK.
333f1b6f
JD
2595
2596 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
2597
2598 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
2599
fecad3f6
JD
2600 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
2601 returning when xg_ignore_gtk_scrollbar is true.
2602
2a84c6da
KS
26032004-12-14 Kim F. Storm <storm@cua.dk>
2604
2605 * keyboard.c (read_char): Save and restore echo_string when
2606 handling input method.
2607
d9c1ce9d
RS
26082004-12-13 Richard M. Stallman <rms@gnu.org>
2609
2610 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
2611
2612 * keyboard.c (Vthrow_on_input): New variable.
2613 (syms_of_keyboard): Defvar and initialize it.
2614 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
2615
2616 * lisp.h (QUIT): Check for Vthrow_on_input.
2617 (Vthrow_on_input): Declare it.
2618
a6495ed5
KS
26192004-12-13 Kim F. Storm <storm@cua.dk>
2620
2621 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
2622 vector.
2623
24a0e22f
RS
26242004-12-12 Richard M. Stallman <rms@gnu.org>
2625
2626 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
2627
2628 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
2629 (Ftry_completion): Really use outer `zero'; eliminate inner one.
2630
d6d31e57
KH
26312004-12-12 Kenichi Handa <handa@m17n.org>
2632
2633 * term.c (encode_terminal_code): Fix previous change.
2634
6f8ffb88
SM
26352004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
2636
fb6f5cbf
SM
2637 * keyboard.c (handle_async_input): Remove pthread mutex handling.
2638 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
2639
6f8ffb88
SM
2640 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
2641 in macro arguments.
2642
2643 * minibuf.c (Ftry_completion, Fall_completions): Don't use
2644 XFASTINT blindly.
2645
2646 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
2647
c83c9f9d
JD
26482004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2649
2f25767f
JD
2650 * w32term.c (x_calc_absolute_position): Remove calculation of
2651 difference between inner and outer window. Don't subtract difference
2652 for left and top calculations.
2653
c83c9f9d
JD
2654 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
2655 for left and top calculations. Remove call to x_real_positions.
24a0e22f 2656 [Bug report by Drew Adams in November]
c83c9f9d
JD
2657 (x_check_expected_move): Do not set change_gravity to 1 when calling
2658 x_set_offset.
2659
cc1caa4e
RS
26602004-12-08 Richard M. Stallman <rms@gnu.org>
2661
2662 * xdisp.c (get_next_display_element): Use `escape-glyph' for
2663 control chars and escaped octal codes.
2664 (Qescape_glyph): New variable.
2665 (syms_of_xdisp): Initialize it.
2666 (escape_glyph_face): New variable.
2667 (redisplay_window): Initialize it.
2668
e0e30823
RS
26692004-12-07 Paul Eggert <eggert@cs.ucla.edu>
2670
2671 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
2672 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
2673
f415cacd
JD
26742004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2675
cf435f39
JD
2676 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
2677 reset_malloc_hooks.
2678
6f8ffb88
SM
2679 * keyboard.c (handle_async_input, input_available_signal):
2680 Add ! defined (SYSTEM_MALLOC) around thread code.
cf435f39 2681
f415cacd
JD
2682 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
2683
043f7f73 26842004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
19b1f29a
SM
2685
2686 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
2687
2688 * config.in: Regenerate.
2689
ded997c1
JD
26902004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2691
453a4f1b
JD
2692 * xmenu.c (Fx_popup_menu): Correct documentation about position.
2693 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
2694 if not given by a mouse click to correspond with x-popup-menu
2695 documentation.
2696
9a38524c
JD
2697 * config.in: Regenerate.
2698
aa477689
JD
2699 * gtkutil.c: Include signal.h and syssignal.h.
2700 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
2701
2702 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
2703 new variables main_thread and alloc_mutex,
2704 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
2705 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
2706 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
2707 (UN)BLOCK_INPUT.
2708 (emacs_blocked_free, emacs_blocked_malloc)
2709 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
2710 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
2711 (reset_malloc_hooks): New function.
2712
2713 * lisp.h: Declare reset_malloc_hooks.
2714
2715 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
2716
2717 * keyboard.c: Conditionally include pthread.h
6f8ffb88 2718 (handle_async_input, input_available_signalt): If not in the main
aa477689
JD
2719 thread, block signal, send signal to main thread and return.
2720
ded997c1 2721 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6f8ffb88 2722 Set current folder in file chooser if default_filename is a directory.
ded997c1 2723
c72b0edd
SM
27242004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
2725
2726 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
2727 Remove redundant correctness checks.
2728 (regex_compile): Fix up error codes for \{..\} expressions.
2729
c721eee5
RS
27302004-12-05 Richard M. Stallman <rms@gnu.org>
2731
2732 * regex.c (regex_compile): Fix end-of-pattern case for space.
2733
d8f96db8
ST
27342004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2735
6108209e
KS
2736 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
2737 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
d8f96db8 2738 crashes with invalid characters.
6108209e
KS
2739 * macmenu.c (add_menu_item): Use it.
2740 * image.c (image_load_quartz2d): Likewise.
2741 * macfns.c (x_set_name, x_set_title): Likewise.
2742 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
2743 creating them each time for labels.
d8f96db8 2744
ab67e8b6
RS
27452004-12-02 Richard M. Stallman <rms@gnu.org>
2746
2747 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
2748 don't use it here.
2749
2750 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
2751 (interactive_p): Skip Scalled_interactively_p frames
2752 like Sinteractive_p frames.
b8217ea6 2753 (unwind_to_catch): Clear handling_signal.
ab67e8b6
RS
2754
2755 * data.c (Fmake_variable_buffer_local): Doc fix.
2756 (Fmake_local_variable): Doc fix.
2757
2758 * insdel.c (insert_from_string_before_markers)
2759 (insert_from_string): Don't modify buffer on empty insertion.
2760
2761 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
2762
f86bdc80
ST
27632004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2764
2765 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
2766 menu text as UTF8 fails.
2767
1cae6d39
KS
27682004-12-01 Kim F. Storm <storm@cua.dk>
2769
2770 * alloc.c: Add commentary for last change.
2771 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
2772 sizeof(size_t) != 4.
2773 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
2774 Use them. Also clear header and trailer of freed memory.
2775 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
2776 (string_overrun_cookie): Rename from string_overrun_pattern.
2777 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
2778
77ea0764
AS
27792004-12-01 Andreas Schwab <schwab@suse.de>
2780
2781 * lisp.h: Declare string_to_multibyte.
2782
2d5cd4e6
KH
27832004-12-01 Kenichi Handa <handa@m17n.org>
2784
2785 * w32console.c (w32con_write_glyphs): Decide coding here.
2786 Adjusted for the change of encode_terminal_code.
2787
2788 * term.c (encode_terminal_code): Don't make it "static".
2789
25a0994a
KH
27902004-11-30 Kenichi Handa <handa@m17n.org>
2791
19b1f29a 2792 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
25a0994a 2793 (encode_terminal_code): Argument changed. Encode all
19b1f29a
SM
2794 characters at once, and return a pointer to the result of encoding.
2795 (write_glyphs): Decide coding here. Adjusted for the above change.
25a0994a
KH
2796 (insert_glyphs): Likewise.
2797 (term_init): Initialize encode_terminal_bufsize to 0.
2798
2799 * coding.c (Vcode_conversion_workbuf_name): New variable.
2800 (syms_of_coding): Initialize and staticpro it.
2801 (set_conversion_work_buffer): New function.
2802 (run_pre_post_conversion_on_str): Use it.
2803 (run_pre_write_conversin_on_c_str): New function.
2804
2805 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
2806
fc7a70cc
ST
28072004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2808
2809 * keyboard.c: Don't undef SIGIO
2810 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
2811 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
2812 (macfns.o): Don't depend on ccl.h.
2813 * macfns.c (mac_frame_parm_handlers): Set handlers for
2814 Qleft_fringe and Qright_fringe.
2815 * macterm.c (mac_fill_rectangle_to_pixmap)
2816 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
2817 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
2818 Put in #if 0.
2819 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
2820 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
2821 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
2822 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
2823 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
2824 XDrawImageString. Always draw background and foreground separately.
2825 (x_draw_image_foreground): Use clipping instead of computing the
2826 intersection rectangle.
2827 (x_draw_image_glyph_string): Don't draw an image with mask to a
2828 pixmap.
2829 (x_redisplay_interface): Set flush_display_optional member to 0.
2830 (XTread_socket): Correctly reset the TEConverter
2831 object.
2832
fc368889
KS
28332004-11-30 Kim F. Storm <storm@cua.dk>
2834
2835 * lisp.h: New defines to enable buffer overrun checking.
2836 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
2837 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
2838
2839 * alloc.c: Add more checks for buffer overruns.
2840 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
2841 xmalloc_overrun_check_trailer, overrun_check_malloc)
2842 overrun_check_realloc, overrun_check_free): Add.
2843 (GC_STRING_EXTRA, string_overrun_pattern): Add.
2844 (check_sblock, allocate_string_data, compact_small_strings):
2845 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
2846 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
2847 (check_string_free_list): Add.
2848 (allocate_string, sweep_strings): Call check_string_free_list.
2849
2850 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
2851 XMALLOC_OVERRUN_CHECK to avoid crash during load.
2852
0af8cfe1
KS
28532004-11-29 Kim F. Storm <storm@cua.dk>
2854
2855 * fns.c (concat): Use SAFE_ALLOCA.
2856
77220eeb
SM
28572004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
2858
2859 * sysdep.c (emacs_write): Don't use QUIT.
2860
a778cf63
KH
28612004-11-29 Kenichi Handa <handa@m17n.org>
2862
2863 * buffer.c (init_buffer): Set current_buffer->directory to a
2864 multibyte string made by string_to_multibyte.
2865
77220eeb 2866 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
a778cf63 2867
e3177e43
AS
28682004-11-27 Andreas Schwab <schwab@suse.de>
2869
2870 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
2871
2872 * s/gnu-linux.h: Enable no-op gcpros on ia64.
2873 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
2874
77220eeb
SM
2875 * filelock.c (lock_file_1): Call get_boot_time early.
2876 Increase buffer size.
e3177e43 2877
ca5e6fef
EZ
28782004-11-27 Eli Zaretskii <eliz@gnu.org>
2879
2880 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
2881 is not defined.
2882
e2811828
KS
28832004-11-27 Kim F. Storm <storm@cua.dk>
2884
2885 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
2886 marker out of doc string.
2887
7a262394
SM
28882004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
2889
2890 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
2891 which was not mentioned in the log.
2892
f33cc5a9
KS
28932004-11-26 Kim F. Storm <storm@cua.dk>
2894
048bb03f
KS
2895 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
2896 angle bitmaps at top/bottom line.
2897
f33cc5a9
KS
2898 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
2899 set it when it->method is set to next_element_from_display_vector.
2900 (setup_for_ellipsis): Add LEN argument. Callers changed.
2901 Set it->saved_face_id.
2902 (get_next_display_element): Use loop instead of recursion.
2903 Set it->saved_face_id. Combine duplicate code for ctr chars.
2904 (next_element_from_display_vector): Do not set it->saved_face_id.
2905 (next_element_from_ellipsis): Use setup_for_ellipsis.
2906
670e8906
EZ
29072004-11-26 Eli Zaretskii <eliz@gnu.org>
2908
2909 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
2910 prevent compiler warnings.
2911
275464e7
SM
29122004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
2913
1bf0e604
SM
2914 * keyboard.c (command_loop_1): Print a message describing the key
2915 the user just pressed when this key has no binding.
2916
275464e7
SM
2917 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
2918 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
2919
2920 * lread.c (readchar): Check QUIT when `getc' is interrupted.
2921
261b01c6
RS
29222004-11-24 Richard M. Stallman <rms@gnu.org>
2923
2924 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
2925
2926 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
2927
a5bd504e
KS
29282004-11-24 Kim F. Storm <storm@cua.dk>
2929
2930 * xdisp.c (move_it_in_display_line_to, display_line):
2931 Restore saved_face_id also when truncate-lines or hscrolled.
2932
255e4140
JD
29332004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2934
2935 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
2936 x-use-old-gtk-file-dialog.
2937
2938 * xfns.c: Define x_use_old_gtk_file_dialog.
2939 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
2940 outside ifdef USE_GTK.
2941
cab27d04
SM
29422004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
2943
2944 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
2945 Don't use XFASTINT blindly.
2946
2947 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
2948
2949 * indent.c (skip_invisible): Avoid non-idempotent side-effects
2950 in macro arguments.
2951
2952 * keymap.c (Flookup_key): Check INTEGERP before XINT.
2953
2954 * lread.c (oblookup): Don't use XFASTINT blindly.
2955
2956 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
2957 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
2958
11e0be49
KS
29592004-11-23 Kim F. Storm <storm@cua.dk>
2960
4d721114
KS
2961 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
2962 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
2963
11e0be49
KS
2964 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
2965 signal_p is zero and face name is unknown.
2966 (Fx_list_fonts): Don't signal error in lookup_named_face.
2967 (Fface_font): Signal error in lookup_named_face.
2968 (ascii_face_of_lisp_face): Likewise.
2969
2970 * dispextern.h (lookup_named_face): Fix prototype.
2971
2972 * xdisp.c (handle_single_display_prop): Don't signal error in
2973 lookup_named_face for unknown fringe face name.
2974 (highlight_trailing_whitespace): Don't signal error in
2975 lookup_named_face if trailing-whitespace face unknown.
2976 (calc_line_height_property): Don't signal error in
2977 lookup_named_face if specified face name is unknown.
2978
2979 * fringe.c (update_window_fringes): Show top row indicator if
2980 window has header-line. Don't show arrow at bob and eob
2981 if the boundary indicators are not used.
2982 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
2983
2984 * window.c (set_window_buffer): Clear display_error_modiff.
2985
0960a582
KS
29862004-11-22 Kim F. Storm <storm@cua.dk>
2987
2988 * fringe.c (update_window_fringes): Provide sensible fall-back
2989 value for non-nil indicate-buffer-boundaries setting.
2990
b0e9bb28
MR
29912004-11-22 Markus Rost <rost@ias.edu>
2992
2993 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
2994
d0bce91e
SM
29952004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
2996
2997 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
2998
e1814672
KS
29992004-11-21 Kim F. Storm <storm@cua.dk>
3000
b7fd3518
KS
3001 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
3002
3003 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
3004 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3005
3006 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
3007 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3008
3009 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
3010 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
3011
d0bce91e
SM
3012 * xdisp.c (move_it_in_display_line_to, display_line):
3013 Restore saved_face_id if overflow-newline-into-fringe is enabled and
3014 line is continued before or in middle of element from display vector.
f01d4d05 3015
f1a61389
KS
3016 * indent.c (Fvertical_motion): Fix last change. Use another
3017 method to detect if iterator moved too far ahead after reseat.
3018
e1814672
KS
3019 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
3020 expand matrix width for overflow in zero-width area.
3021 (append_glyph, append_composite_glyph, produce_image_glyph)
3022 (append_stretch_glyph): Use it to avoid loop in redisplay.
3023 (note_mode_line_or_margin_highlight): Don't let help-echo from
3024 string override help-echo from image map.
3025
2dafe1c9
LT
30262004-11-20 Luc Teirlinck <teirllm@auburn.edu>
3027
d0bce91e 3028 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
2dafe1c9
LT
3029 * callint.c (Fcall_interactively): Ditto.
3030
fd6866c8 30312004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
9961365e
RS
3032
3033 * minibuf.c (Fminibuffer_complete_and_exit):
3034 Fixup the case of the completed value, for case-indep completion.
3035
dedbac89
RS
30362004-11-20 Richard M. Stallman <rms@gnu.org>
3037
fd6866c8
RS
3038 * lisp.h (Fread_from_minibuffer): Add arg in decl.
3039
9d00469f 3040 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
ce8dd7ca 3041 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
9d00469f 3042
dedbac89 3043 * search.c (Vsearch_spaces_regexp):
d0bce91e 3044 Rename from Vsearch_whitespace_regexp. All uses changed.
dedbac89 3045
2f672bb5
TTN
30462004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
3047
3048 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
3049
f31a9a68
RS
30502004-11-19 Richard M. Stallman <rms@gnu.org>
3051
3052 * search.c (Vsearch_whitespace_regexp): New variable.
3053 (syms_of_search): Defvar it.
3054 (compile_pattern_1): Call re_set_whitespace_regexp with it.
3055 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
3056 is non-nil.
6de891db
RS
3057 (struct regexp_cache): New element whitespace_regexp.
3058 (syms_of_search): Initialize whitespace_regexp elements.
3059 (compile_pattern): Compare whitespace_regexp elements.
3060 (compile_pattern_1): Set whitespace_regexp elements.
f31a9a68
RS
3061
3062 * regex.c (regex_compile): Substitute whitespace_regexp
3063 for spaces, if it is nonzero.
3064 (whitespace_regexp): New variable.
3065 (re_set_whitespace_regexp): New function.
3066
cbc34cb3
KS
30672004-11-19 Kim F. Storm <storm@cua.dk>
3068
3069 * indent.c (Fvertical_motion): Fix last change.
3070
b54a7539
KS
30712004-11-18 Kim F. Storm <storm@cua.dk>
3072
3073 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
3074 Instead, move back again if reseating moves too far ahead.
3075
30762004-11-17 Luc Teirlinck <teirllm@auburn.edu>
802c6e56
LT
3077
3078 * xdisp.c (message3): Call clear_message.
3079
5ff504fe
KS
30802004-11-17 Kim F. Storm <storm@cua.dk>
3081
3082 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
3083
5ae53dcf
JD
30842004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3085
d0bce91e 3086 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
724cde0d 3087
6abf3a27 3088 * xmenu.c (x_menu_in_use): Remove.
5ae53dcf
JD
3089 (x_menu_set_in_use): Also set popup_activated_flag.
3090
5ff504fe 3091 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5ae53dcf
JD
3092 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
3093
6abf3a27 3094 * xterm.h: (x_menu_in_use): Remove.
5ae53dcf 3095
ee31cd78
RS
30962004-11-16 Richard M. Stallman <rms@gnu.org>
3097
6abf3a27
SM
3098 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
3099 Use map-keymap-internal to implement that.
ee31cd78
RS
3100
3101 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
3102
6abf3a27
SM
31032004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
3104
3105 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
3106 a window before using XWINDOW.
3107
3108 * window.c (make_window, Fselect_window, make_dummy_parent)
3109 (save_window_save):
3110 * frame.c (make_frame):
3111 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
3112
3113 * lisp.h (NILP): Use EQ rather than XFASTINT.
3114
b4d61105
KS
31152004-11-16 Kim F. Storm <storm@cua.dk>
3116
6abf3a27 3117 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
dda01a4c 3118
b4d61105
KS
3119 * indent.c (Fvertical_motion): Fix last change. Only reseat when
3120 moving backwards.
3121
31222004-11-16 Luc Teirlinck <teirllm@auburn.edu>
ce2bbf6a
LT
3123
3124 * dispextern.h: Extern reseat_at_previous_visible_line_start.
3125
ab5b02b0
KH
31262004-11-16 Kenichi Handa <handa@m17n.org>
3127
3128 * xdisp.c (display_mode_element): Fix previous change (calculate
3129 end position of substring to display correctly).
3130
c482cf97
KS
31312004-11-16 Kim F. Storm <storm@cua.dk>
3132
3133 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
3134 Reported by Andrew M. Scott.
3135
9f89426b
KS
31362004-11-15 Kim F. Storm <storm@cua.dk>
3137
3138 * fns.c (Fsafe_plist_get): New defun.
3139 (syms_of_fns): Defsubr it.
3140
3141 * lisp.h (Fsafe_plist_get): Add EXFUN.
3142
3143 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
3144 Use Fsafe_plist_get.
3145 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3146 Fix image map element parsing. Use Fsafe_plist_get.
3147
27418463
RS
31482004-11-15 Richard M. Stallman <rms@gnu.org>
3149
3150 * xdisp.c (get_next_display_element): Fix previous change.
3151
a130b901
JD
31522004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3153
ef614e04
JD
3154 * window.c (shrink_windows): Handle special case of one window left
3155 when trying to shrink the final reminder. Grow windows if
3156 total_removed is less than total_shrink.
3157
a130b901
JD
3158 * xmenu.c (pop_down_menu): Remove global variable current_menu,
3159 extract pointer from arg with XSAVE_VALUE.
46303896
KS
3160 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
3161 Construct arg to record_unwind_protect with make_save_value.
a130b901 3162
d9a03ad2
RS
31632004-11-13 Richard M. Stallman <rms@gnu.org>
3164
3165 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
3166 (get_next_display_element): Fix previous change to apply only to \n.
3167
3168 * indent.c (Fvertical_motion): Scan to PT from start of line to
3169 make iterator consistent.
3170
3171 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
3172
b3935289
JD
31732004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3174
3175 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
3176
3177 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
3178 Record unwind with clean_up_file_dialog.
3179
78819ebb
KS
3180 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
3181 Declare.
b3935289
JD
3182
3183 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
3184
af89e871
JD
31852004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3186
457a8155 3187 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6abf3a27 3188 (xg_file_sel_destroy): Remove.
46303896
KS
3189 (xg_file_response_cb, pop_down_file_dialog)
3190 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
457a8155 3191 New functions.
6abf3a27
SM
3192 (xg_get_file_with_chooser, xg_get_file_with_selection):
3193 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
457a8155
JD
3194 Move common code to xg_get_file_name. Return widget created.
3195 (xg_get_file_name): Set name, transient for, modal and destroy
3196 with parent here. Connect response signal to xg_file_response_cb,
3197 connect delete-event to gtk_true. Record pop_down_file_dialog
3198 for unwind. Do event loop and call x_menu_wait_for_event in loop.
3199 (xg_create_widget): Make dialogs modal.
3200
af89e871
JD
3201 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
3202 Lisp_Object.
3203 (popup_get_selection): Move unwind protect ...
3204 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
3205 Move destroy of widget to pop_down_menu.
3206 (popup_widget_loop): Move unwind protect ...
3207 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
3208 Move destroy of widget to pop_down_menu.
3209 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6abf3a27 3210 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
af89e871
JD
3211 x_mouse_leave and grabbed = 0 to pop_down_menu.
3212
5596fbf1
KS
32132004-11-13 Kim F. Storm <storm@cua.dk>
3214
3215 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
3216 (syms_of_xdisp): DEFVAR_BOOL it.
3217 (make_cursor_line_fully_visible, try_cursor_movement)
3218 (try_window_id): Use it.
3219
b9de078a
KS
32202004-11-12 Kim F. Storm <storm@cua.dk>
3221
381f7091
KS
3222 * dispextern.h (struct glyph_row): New member extra_line_spacing.
3223 (struct it): New member max_extra_line_spacing.
3224 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
3225 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
3226 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
3227 part of last line is only extra line spacing (so the text on the
3228 line is fully visible). Use helper macros.
3229 Add W arg (to use them). All callers changed.
3230 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
3231 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
3232
6abf3a27
SM
3233 * window.c (window_scroll_pixel_based, Frecenter):
3234 Use move_it_vertically_backward directly.
381f7091
KS
3235 (Frecenter): Fix calculation of new start pos for negative arg.
3236 Before, the new start pos was sometimes chosen too far back, so
3237 the last line became only partially visible, and thus would be
3238 either only semi-visible or automatically scrolled to the middle
3239 of the window by redisplay.
3240
3241 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
3242 (move_it_vertically_backward): Don't recure to move further back.
3243 (move_it_vertically): Remove superfluous condition.
3244 (move_it_by_lines): Clear last_height when moved 0 lines.
6abf3a27 3245 (resize_mini_window): Use it.max_extra_line_spacing.
381f7091
KS
3246 (display_tool_bar_line): Clear row->extra_line_spacing.
3247 (try_scrolling): Use move_it_vertically_backward directly.
3248 (redisplay_window): Likewise.
3249 (compute_line_metrics): Set row->extra_line_spacing.
3250 (display_line, display_string): Likewise.
3251 (x_produce_glyphs): Update it->max_extra_line_spacing.
3252
b9de078a
KS
3253 * xmenu.c (pop_down_menu): Return nil.
3254
c3438661
JD
32552004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3256
3257 * xmenu.c (x_menu_wait_for_event): New function.
3258 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
3259 to handle timers.
df00f436
JD
3260 (popup_widget_loop): Add argument do_timers.
3261 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
3262 do_timers to popup_widget_loop.
c3438661
JD
3263 (xmenu_show): Call XMenuActivateSetWaitFunction so that
3264 x_menu_wait_for_event is called by XMenuActivate.
b9de078a 3265 (create_and_show_popup_menu): Pass 1 for do_timers to
df00f436 3266 popup_get_selection.
f1d1cd24
JD
3267 (pop_down_menu): New function.
3268 (popup_get_selection, popup_widget_loop): Unwind protect to
3269 pop_down_menu.
3270 (popup_widget_loop): Add argument widget.
3271 (create_and_show_popup_menu, create_and_show_dialog): Pass new
3272 argument widget to popup_widget_loop.
c3438661 3273
32e2fb04
SM
32742004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3275
3276 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
3277
0faf6806
KS
32782004-11-09 Kim F. Storm <storm@cua.dk>
3279
3280 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
3281 Fix various comments referring to XEvents instead of input events.
3282 (x_queue_event): Fix format strings.
3283 (x_stop_queuing_selection_requests): Likewise.
3284
3285 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
3286 (pint2hrstr): Add extra braces to silence compiler.
3287
3288 * print.c (print_object): Fix format string.
3289
3290 * lread.c (read1): Fix next_char matching.
3291
3292 * lisp.h (Fdelete): Add EXFUN.
3293 (replace_range_2): Add prototype.
3294
3295 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
3296
3297 * intervals.h (NULL_INTERVAL_P): Add separate version when
3298 ENABLE_CHECKING is not defined to silence compiler.
3299 (compare_string_intervals): Add prototype.
3300
3301 * fringe.c (destroy_fringe_bitmap): Fix return type.
3302 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
3303
3304 * emacs.c (Fdump_emacs): Fix format string.
3305
3306 * doc.c: Include <ctype.h>.
3307 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
3308
3309 * data.c (store_symval_forwarding): Remove unused variables.
3310
3311 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
3312
16bf4e32
JD
33132004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3314
3315 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
3316 to ${OLDXMENU}.
3317
cdb805a9
KS
33182004-11-09 Kim F. Storm <storm@cua.dk>
3319
3320 * process.c (Fmake_network_process): Remove kludge for interrupted
3321 connects on BSD. If connect is interrupted, just close socket and
3322 start over rather than sleeping and retry with same socket.
3323
d87a9ab8 33242004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
0faf6806 3325
a8b16c80
JD
3326 * .cvsignore: Add buildobj.lst.
3327
d87a9ab8
JD
3328 * doc.c: New variable Vbuild_files.
3329 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
e7427ac1 3330 file names from buildobj.lst. Only attach docstrings from files
d87a9ab8
JD
3331 that are in Vbuild_files.
3332 (syms_of_doc): Defvar Vbuild_files.
3333
3334 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
3335 and w32*.o.
3336 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6abf3a27 3337 (mostlyclean): Rm buildobj.lst
d87a9ab8
JD
3338
3339 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
3340 is linked.
3341
b6709e77
KS
33422004-11-09 Kim F. Storm <storm@cua.dk>
3343
3344 * fringe.c (update_window_fringes): Update fringe bitmaps if
3345 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
3346 also update previous row to get rid of misc. artifacts.
3347
bae9677d
KS
33482004-11-08 Kim F. Storm <storm@cua.dk>
3349
3350 * xdisp.c (fast_find_position): Fix start pos if header line present.
b7127aa8 3351 (note_mouse_highlight): Clear mouse face if we move out of text area.
bae9677d 3352
3f8ea68c
EZ
33532004-11-08 Eli Zaretskii <eliz@gnu.org>
3354
3355 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
3356 Don't include <sys/time.h> explicitly.
3357 Include <stdio.h> unconditionally, not just on MacOS.
3358
a653f812
KH
33592004-11-08 Kenichi Handa <handa@m17n.org>
3360
3361 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
3362 don't pay attention to '\' before '*'.
3363 (fontset_pattern_regexp): Change the meaning of the second arg.
3364 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
3365 (check_fontset_name): Try NAME as literal at first, and if it
3366 failes, try NAME as pattern.
3367
c37caf9d
JD
33682004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3369
3370 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
3371
b72915a7
AS
33722004-11-07 Andreas Schwab <schwab@suse.de>
3373
78819ebb
KS
3374 * lisp.h (Fmsdos_downcase_filename): Declare.
3375 * dired.c (Fmsdos_downcase_filename): Don't declare here.
b72915a7
AS
3376 * fileio.c: Likewise.
3377
238a44a8
JD
33782004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3379
3380 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
3381 comparisons with integers instead of Lisp_Object address.
3382 (Fmsdos_set_keyboard): Declare argument allkeys.
3383
3384 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
3385
78819ebb 3386 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
238a44a8
JD
3387 int/Lisp_Object mixup.
3388
3389 * fileio.c: Ditto.
3390
31141c13
ST
33912004-11-06 Steven Tamm <steventamm@mac.com>
3392
3393 * editfns.c: Need to include sys/time.h before resource.h on darwin.
3394
f28c1bd9
RS
33952004-11-06 Richard M. Stallman <rms@gnu.org>
3396
3397 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
3398
3399 * xfaces.c (merge_named_face): GCPRO the face_name in the
3400 named_merge_point struct that we make.
3401 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
3402
3403 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
3404 before deciding whether to inactivate mark.
3405
59dede22
EZ
34062004-11-06 Lars Brinkhoff <lars@nocrew.org>
3407
3408 * config.in: Regenerate (add HAVE_GETRUSAGE).
6159c232
EZ
3409 * editfns.c (Fget_internal_run_time): New function.
3410 (syms_of_data): Defsubr it.
3411 * fns.c (sxhash): As far as possible, merge calculation of
3412 hash code for symbols and strings.
59dede22 3413
27540e81
EZ
34142004-11-06 Eli Zaretskii <eliz@gnu.org>
3415
3416 * frame.c (syms_of_frame): Fix the example in the doc string.
3417
df470e3b
JD
34182004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3419
3420 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
3421
3422 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
3423 (create_and_show_dialog): Revert change from 2004-10-31.
bae9677d 3424
4cc8522c
LT
34252004-11-05 Luc Teirlinck <teirllm@auburn.edu>
3426
3427 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
3428
d4a42098
KS
34292004-11-05 Kim F. Storm <storm@cua.dk>
3430
a8490886
KS
3431 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
3432
d4a42098
KS
3433 * fileio.c (Ffile_modes): Doc fix.
3434 (auto_save_1): Check for Ffile_modes nil value.
3435
36a2b04c
KS
34362004-11-05 Kim F. Storm <storm@cua.dk>
3437
3438 * xselect.c (struct selection_event_queue, selection_queue)
3439 (x_queue_selection_requests, x_queue_event)
3440 (x_start_queuing_selection_requests)
3441 (x_stop_queuing_selection_requests): Add new queue for selection
3442 input events to replace previous XEvent queue in xterm.c.
3443 (queue_selection_requests_unwind): Adapt to new queue.
32e2fb04
SM
3444 (x_reply_selection_request): Adapt to new queue.
3445 Unexpect wait_object in case of x errors (memory leak).
36a2b04c
KS
3446 (x_handle_selection_request, x_handle_selection_clear): Make static.
3447 (x_handle_selection_event): New function. May queue selection events.
3448 (wait_for_property_change_unwind): Use save_value instead of cons.
3449 Clear property_change_reply_object.
3450 (wait_for_property_change): Abort if already waiting.
3451 Use save_value instead of cons for unwind data.
3452 (x_handle_property_notify): Skip events already arrived, but don't
3453 free them, as "arrived" field is checked by wait_for_property_change,
3454 and it will be freed by unwind or explicit unexpect_property_change.
3455 (x_get_foreign_selection): Add to new queue.
3456 (receive_incremental_selection): Don't unexpect wait_object when done
3457 as it has already been freed by previous wait_for_property_change.
3458
3459 * xterm.h (x_start_queuing_selection_requests)
3460 (x_stop_queuing_selection_requests, x_handle_selection_request)
3461 (x_handle_selection_clear): Remove prototypes.
3462 (x_handle_selection_event): Add prototype.
3463
3464 * xterm.c (handle_one_xevent): Don't queue X selection events
3465 here, it may be too late if we start queuing after we have already
3466 stored some selection events into the kbd buffer.
3467 (struct selection_event_queue, queue, x_queue_selection_requests)
3468 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
3469 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
3470 (x_catch_errors_unwind): Block input around final XSync.
3471
3472 * keyboard.h (kbd_buffer_unget_event): Add prototype.
3473
3474 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
3475 (kbd_buffer_unget_event): New function.
3476 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
3477 and use x_handle_selection_event.
3478 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
3479
9c3ad9e1
JD
34802004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3481
3482 * xselect.c (TRACE3): New debug macro.
3483 (x_reply_selection_request): Use it.
3484 (receive_incremental_selection): In call to TRACE0, the name of
3485 a symbol is in xname.
3486
a33b89de
KS
34872004-11-05 Kim F. Storm <storm@cua.dk>
3488
3489 * fontset.c (fontset_pattern_regexp): Use unsigned char.
3490
a872928c
JD
34912004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3492
88208bb8
JD
3493 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
3494
78819ebb 3495 * gtkutil.h (use_old_gtk_file_dialog): Declare.
0a4f23f3
JD
3496
3497 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
32e2fb04 3498 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
0a4f23f3
JD
3499 * xfns.c (syms_of_xfns): ... to here.
3500
a872928c
JD
3501 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
3502 it doesn't start with /.
3503
b912921c
KH
35042004-11-04 Kenichi Handa <handa@m17n.org>
3505
3506 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
3507 treat it as a literal character.
3508
c524d9a6
KS
35092004-11-03 Kim F. Storm <storm@cua.dk>
3510
3511 * .gdbinit (ppt): New function.
3512
8cfd0f36
JD
35132004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3514
a11e1dce
JD
3515 * xterm.c (x_window_to_scroll_bar): Only call
3516 xg_get_scroll_id_for_window if toolkit scroll bars are used.
3517
8cfd0f36
JD
3518 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
3519 of save.
3520
a93563fd
AS
35212004-11-02 Andreas Schwab <schwab@suse.de>
3522
3523 * window.c (Fscroll_right): Fix last change.
3524
2b2d59d8
KS
35252004-11-02 Kim F. Storm <storm@cua.dk>
3526
3527 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
3528
35292004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3530
3531 * callproc.c (Fcall_process): Block input around vfork.
3532
ca28104d
KS
35332004-11-02 Kim F. Storm <storm@cua.dk>
3534
3535 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
3536 (syms_of_eval): Defsubr it.
3537
29bb7127
RS
35382004-11-02 Richard M. Stallman <rms@gnu.org>
3539
3540 * insdel.c (replace_range_2): New function.
3541
3542 * casefiddle.c (casify_region): Handle changes in byte-length
3543 using replace_range_2.
3544
3545 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
3546
b6189c3b 3547 * xdisp.c (back_to_previous_visible_line_start):
29bb7127
RS
3548 Subtract 1 from pos when checking previous newline for invisibility.
3549
3550 * window.c (window_scroll_pixel_based): Update preserve_y
3551 for header line if any.
3552 (Fscroll_left, Fscroll_right): Don't call interactive_p;
3553 use a new second argument instead.
3554
3555 * eval.c (Fcall_interactive_p): New function.
3556 (interactive_p): Don't test INTERACTIVE here.
3557 (Finteractive_p): Doc fix.
3558
3559 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
3560
b6189c3b 35612004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
a3fe4aaf
JR
3562
3563 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
b6189c3b 3564 comparing font names.
a3fe4aaf 3565
2a00cdb4
JD
35662004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3567
f9d64bb3
JD
3568 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
3569 Fx_file_dialog if only directories should be read.
3570
3571 * lisp.h: Fx_file_dialog takes 5 parameters.
3572
32e2fb04
SM
3573 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
3574 Add parameter only_dir_p.
f9d64bb3
JD
3575 In Motif version, don't put DEFAULT_FILENAME in filter part of the
3576 dialog, just text field part. Do not add DEFAULT_FILENAME
3577 to list of files if it isn't there.
3578 In GTK version, pass only_dir_p parameter to xg_get_file_name.
3579
32e2fb04
SM
3580 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
3581 Check only_dir_p instead of comparing prompt to "Dired". When using
f9d64bb3
JD
3582 a save dialog, add option kNavDontConfirmReplacement, change title
3583 to "Enter name", change text for save button to "Ok".
3584
32e2fb04
SM
3585 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
3586 Check only_dir_p instead of comparing prompt to "Dired".
f9d64bb3
JD
3587
3588 * gtkutil.c (xg_get_file_with_chooser)
3589 (xg_get_file_with_selection): New functions, only defined ifdef
3590 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
3591 respectively.
3592 (xg_get_file_name): Add parameter only_dir_p.
3593 Call xg_get_file_with_chooser or xg_get_file_with_selection
3594 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
3595 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
3596
3597 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
3598
2a00cdb4
JD
3599 * config.in: Rebuild (added HAVE_GTK_FILE_*).
3600
f6749d5d
KS
36012004-11-01 Kim F. Storm <storm@cua.dk>
3602
32e2fb04
SM
3603 * process.c (connect_wait_mask, num_pending_connects):
3604 Only declare and use them if NON_BLOCKING_CONNECT is defined.
bad49fc7 3605 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
f6749d5d
KS
3606 (IF_NON_BLOCKING_CONNECT): New helper macro.
3607 (wait_reading_process_output): Only declare and use local vars
3608 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
f6749d5d 3609
1a99fe1a
JR
36102004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
3611
3612 * w32term.c (x_scroll_run): Delete region objects after use.
3613
fcdb28b4
JD
36142004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3615
495ef86b
JD
3616 * xmenu.c: Add prototypes for forward function declarations.
3617 (popup_get_selection): Remove parameter do_timers, remove call to
3618 timer_check.
32e2fb04
SM
3619 (create_and_show_popup_menu, create_and_show_dialog):
3620 Remove parameter do_timers from call to popup_get_selection.
495ef86b 3621
12e6566a
JD
3622 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
3623 tool_bar_items and assign the result to f->tool_bar_items if
3624 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
3625 tool_bar_items to assignment of result.
3626
fcdb28b4
JD
3627 * atimer.c (alarm_signal_handler): Do not call set_alarm if
3628 pending_atmers is non-zero.
3629
1a1a0c4c
KS
36302004-10-31 Kim F. Storm <storm@cua.dk>
3631
3632 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
3633
a36f1680
JW
36342004-10-28 Will <will@glozer.net>
3635
3636 * macterm.c: allow user to assign key modifiers to the Mac Option
3637 key via a 'mac-option-modifier' variable.
3638
32e2fb04 36392004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
2d586478
SM
3640
3641 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
3642 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
3643 (x_handle_selection_request, x_handle_selection_clear)
3644 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
3645
4f71c13f
RS
36462004-10-28 Richard M. Stallman <rms@gnu.org>
3647
3648 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3649
3650 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
3651
068f3848
SM
36522004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
3653
3654 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
3655 comment-starter over a 1-char one.
3656
4660a9e3
RS
36572004-10-27 Richard M. Stallman <rms@gnu.org>
3658
3659 * xdisp.c (get_next_display_element): In mode lines,
3660 treat newline and tab like other control characters.
3661
3662 * editfns.c (Fmessage): Doc fix.
3663
3664 * indent.c (vmotion): When moving up, check the newline before.
3665 Make prevline an int, not a Lisp_Object.
3666
233f3db6
KS
36672004-10-27 Kim F. Storm <storm@cua.dk>
3668
3669 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
3670 Only allocate info and discarded tables once.
3671
3672 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
3673 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
3674 (SAFE_FREE): Test it to determine if we need to unwind to free.
3675 Remove size arg. All users changed.
3676 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
3677
1442465d
JD
36782004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3679
3680 * gtkutil.c: Put empty line between comment and function body.
068f3848
SM
3681 (xg_destroy_widgets): Rename from remove_from_container.
3682 Just destroy all widgets in list. Argument wcont removed.
1442465d
JD
3683 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
3684 instead of remove_from_container.
3685 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
3686 (free_frame_tool_bar): Add comment.
3687
3688 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
3689 is not NULL before strcmp.
3690
c8636435
KS
36912004-10-26 Kim F. Storm <storm@cua.dk>
3692
3693 * callint.c (Fcall_interactively): Add 'U' code to get the
3694 up-event discarded by a previous 'k' or 'K' argument.
3695
5629f29b
DK
36962004-10-26 David Kastrup <dak@gnu.org>
3697
3698 * buffer.c (syms_of_buffer): Fix a few typos.
3699
4f2f546e
JD
37002004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3701
3702 * xsmfns.c: Put empty line between comment and function body.
3703 Use two spaces before comment end.
3704
fc1062f5
KH
37052004-10-25 Kenichi Handa <handa@m17n.org>
3706
3707 * fontset.c (fontset_pattern_regexp): Optimize for the case that
3708 PATTERN is full XLFD.
3709
be13f5e5
KH
37102004-10-24 Kenichi Handa <handa@m17n.org>
3711
3712 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
3713
3714 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
3715 (regex_compile): Return REG_ERANGEX if appropriate.
3716
d0ee2ed3
KH
37172004-10-22 Kenichi Handa <handa@m17n.org>
3718
3719 * editfns.c (Ftranslate_region_internal): New function.
3720 (syms_of_editfns): Defsubr it.
3721
63ea8ea5
JD
37222004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3723
3724 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
3725
9ba27690 37262004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
c27ed90a 3727
068f3848
SM
3728 * xterm.h (x_output): New member `xic_base_fontname'.
3729 (FRAME_XIC_BASE_FONTNAME): New macro.
3730 (xic_free_xfontset): Declare.
c27ed90a 3731
068f3848
SM
3732 * xfns.c (xic_create_xfontset): Share fontsets between frames
3733 based on base_fontname.
3734 (xic_free_xfontset): New function.
3735 (free_frame_xic): Use it.
3736 (xic_set_xfontset): Ditto.
c27ed90a 3737
068f3848 3738 * xterm.c (xim_destroy_callback): Ditto.
c27ed90a
JD
3739
3740
59508699
JR
37412004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
3742
3743 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
3744
dede2792
JD
37452004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3746
3aca2078
JD
3747 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
3748 XSync.
3749
dede2792
JD
3750 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
3751 New variables and constant.
3752 (main): Calculate heap_bss_diff. If we are dumping and the
3753 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
3754 and exec ourself again.
3755 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
3756 print a warning.
3757
3758 * lastfile.c: Make my_endbss and my_endbss_static available on all
3759 platforms.
3760
3761 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
3762 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
3763
1dc5ba01
LT
37642004-10-19 Luc Teirlinck <teirllm@auburn.edu>
3765
3766 * data.c (Flocal_variable_if_set_p): Doc fix.
3767
950090be
JR
37682004-10-19 Jason Rumney <jasonr@gnu.org>
3769
3770 * w32.c (init_environment): Set emacs_dir correctly when running
3771 emacs from the build directory.
3772
8550b998
RS
37732004-10-19 Richard M. Stallman <rms@gnu.org>
3774
3775 * editfns.c (Fdelete_and_extract_region):
3776 If region is empty, return null string.
3777
08dedea6
JD
37782004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3779
1dc5ba01 3780 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
08dedea6 3781 and canon_width.
068f3848 3782 (xg_frame_cleared): Remove.
08dedea6 3783
068f3848
SM
3784 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
3785 (xg_find_top_left_in_fixed): Remove.
08dedea6
JD
3786 (xg_create_scroll_bar): Put an event box widget between
3787 the scroll bar widget and the edit widget.
3788 (xg_show_scroll_bar): Show the parent widget (the event box).
3789 (xg_remove_scroll_bar): Destroy parent (the event box) also.
3790 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
3791 Move the parent (the event box) widget inside the fixed widget.
3792 Move window clear to xterm.c.
3793
068f3848 3794 * gtkutil.h (xg_frame_cleared): Remove.
1dc5ba01 3795
08dedea6 3796 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
068f3848
SM
3797 (x_scroll_bar_create, XTset_vertical_scroll_bar):
3798 Remove arguments left and width to xg_update_scrollbar_pos.
08dedea6
JD
3799 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
3800
8550b998 38012004-10-19 Kenichi Handa <handa@m17n.org>
e3e55463
KS
3802
3803 * xdisp.c (display_mode_element): Fix display of wide chars.
e3e55463 3804
84338890
JD
38052004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3806
3807 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
3808 gdk_window_clear and move gdk_window_process_all_updates after
3809 clear so events are sent to the X server in correct order.
3810
6e1b0d8c
KH
38112004-10-18 Kenichi Handa <handa@m17n.org>
3812
3813 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
3814 comparing font names.
8550b998 3815 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6e1b0d8c
KH
3816 (list_fontsets): Likewise.
3817
3818 * search.c (fast_string_match_ignore_case): New function.
3819
3820 * lisp.h (fast_string_match_ignore_case): Extern it.
3821
345e75a8
KS
38222004-10-17 Kim F. Storm <storm@cua.dk>
3823
3824 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
3825 than bitmap if there is not left fringe.
3826 (get_overlay_arrow_glyph_row): Also used on windows system.
3827 (display_line): Display overlay string if no left fringe.
3828
be13cbb7
JR
38292004-10-16 Jason Rumney <jasonr@gnu.org>
3830
3831 * w32fns.c (w32_font_match): Encode font name being matched.
3832
c2e2ede7
RS
38332004-10-16 Richard M. Stallman <rms@gnu.org>
3834
3835 * window.c (Fspecial_display_p): Doc fix.
3836
043f7f73 38372004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
3584d95d
SM
3838
3839 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
3840 Don't ignore menus, because where-is-internal already does it for us.
3841
699a0392
KS
38422004-10-15 Kim F. Storm <storm@cua.dk>
3843
b3c7a89b
KS
3844 * xdisp.c (redisplay_window): Only update fringes and vertical
3845 border on window frames.
699a0392 3846
4e382b0f
AS
38472004-10-14 Andreas Schwab <schwab@suse.de>
3848
3849 * m/ia64.h (DATA_SEG_BITS): Don't define.
3850
329a7be2
KS
38512004-10-14 Kim F. Storm <storm@cua.dk>
3852
3853 * xterm.h: Include Xutil.h after keysym.h to work around bug
dbb37962 3854 in some X versions.
329a7be2 3855
982241b1
SM
38562004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3857
3858 * fns.c (map_char_table): Add missing gcpros.
3859
9238467d
SM
38602004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
3861
3862 * keymap.c (get_keymap): An autoload form is not a keymap.
3863
3864 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
3865
4440e3ca
KS
38662004-10-13 Kim F. Storm <storm@cua.dk>
3867
7cfdabde
KS
3868 * callproc.c (Fcall_process): Simplify handling of display arg.
3869 Resume `display_on_the_fly' once a coding system is determined.
3870
4440e3ca
KS
3871 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
3872
1c8dec6a
KS
38732004-10-12 Kim F. Storm <storm@cua.dk>
3874
3875 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
3876 caller, such as call-process, is not going to poll for input.
3877 (calc_line_height_property): Handle case where it->object is nil.
3878
3879 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
3880
170b174c
KH
38812004-10-12 Kenichi Handa <handa@m17n.org>
3882
9238467d
SM
3883 * xdisp.c (get_next_display_element):
3884 If unibyte_display_via_language_environment is zero, display 8-bit
170b174c
KH
3885 chars in octal in unibyte buffer.
3886
b583964c
KS
38872004-10-12 Kim F. Storm <storm@cua.dk>
3888
3889 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
3890 are no ordinary bindings.
3891
29fabd8c
JD
38922004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3893
9238467d 3894 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
29fabd8c 3895
c3f4c690
ST
38962004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3897
9238467d
SM
3898 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
3899 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
c3f4c690 3900 (make_mac_frame): Add BLOCK_INPUT around the making of a
9238467d
SM
3901 terminal frame.
3902 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
3903 * macgui.h (mktime): Use emacs_mktime.
c3f4c690
ST
3904 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
3905 Make a cancel file-open dialog be like C-g.
9238467d
SM
3906 * mac.c (mktime): Use emacs_mktime.
3907 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
3908 (Fmac_paste_function): Add better error handling for carbon cut/paste.
c3f4c690 3909
9688f9eb
KS
39102004-10-10 Kim F. Storm <storm@cua.dk>
3911
3912 * keyboard.c (timer_resume_idle): New function to resume idle
3913 timer without resetting timers on the idle list.
3914 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
3915 (timer_start_idle, timer_stop_idle): Declare static.
3916 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
3917
3918 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
3919
f7f3a65f
ST
39202004-10-08 Steven Tamm <steventamm@mac.com>
3921
9238467d 3922 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
f7f3a65f 3923 * macterm.c (mac_check_for_quit_char): Remove warning for using
9238467d 3924 NULL where 0 should be used.
f7f3a65f
ST
3925 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
3926 objc/malloc.h
9238467d 3927 * mac.c: Include time.h for Tiger compatibility.
f7f3a65f 3928
3c7d999a
KS
39292004-10-07 Kim F. Storm <storm@cua.dk>
3930
3931 * xdisp.c (redisplay_window): Fix flicker on vertical line between
3932 windows. Update vertical line after drawing window fringes, but
3933 only if actually drawing any bitmaps--or there is no fringe.
3934
3935 * xterm.c (x_update_window_end): Likewise.
3936 * macterm.c (x_update_window_end): Likewise.
3937 * w32term.c (x_update_window_end): Likewise.
3938
3939 * fringe.c (draw_window_fringes): Return value now indicates if
3940 any fringe bitmaps were redrawn (or there are no fringes).
3941
3942 * dispextern.h (draw_window_fringes): Update prototype.
3943
bf06c82f
ST
39442004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3945
3946 * macfns.c (mac_get_window_bounds): Add extern.
3947 (x_real_positions): Use mac_get_window_bounds.
3948
3949 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
3950 xmenu.c (YAILOM).
3c7d999a 3951
bf06c82f
ST
3952 * macterm.c [!MAC_OSX]: Include Windows.h.
3953 (front_emacs_window): Rename from mac_front_window. All uses
3954 changed. Return the frontmost non-tooltip emacs window.
3955 (mac_get_window_bounds): New function.
3956 (x_calc_absolute_position): Use the difference of width and height
3957 between the inner and outer window.
3958 (x_set_offset): Specify window position by the coordinae of the
3959 outer window. Adjust the position if the title bar is completely
3960 outside the screen.
3961 (app_is_suspended, app_sleep_time): Remove unused variables.
3962 (do_app_resume, do_app_suspend): Remove their contents because
3963 window-activate/deactivate events will do the job.
3964 (do_zoom_window): Remove unused variables. Make compliant to the
3965 standard way of zooming. Set f->left_pos and f->top_pos.
3966 (XTread_socket): Don't use argument `expected'. Don't use
3967 FrontWindow to determine the clicked window. Exclude unprocessed
3968 mouseUp cases in the early stage. Add parentheses to fix operator
3969 precedence.
3970 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
3971
4cbbf6b7 39722004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
d8b43276
JD
3973
3974 * config.in: Regenerate.
3975
3976 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
3977 HAVE_EXECSHIELD.
3978
b90ee8b5
JD
39792004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3980
3981 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
3982 a row if Alt or Meta has been found for that row. Also stop scanning
3983 for Keysyms for that row.
3984
904db1a2
KS
39852004-10-04 Kim F. Storm <storm@cua.dk>
3986
0207b8ad
KS
3987 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
3988 to list. Include overlay arrow bitmap in return value.
3989
25f7220c
KS
3990 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
3991 bars with fractional column width. If scroll bar separates two
3992 windows, move it towards the window it belongs to. Only update
3993 the padding area below the scroll bar widget when necessary,
3994 i.e. when scroll bar widget is created, moved, or resized.
3995
562020fe
KS
3996 * xdisp.c (define_frame_cursor1): Do not change frame cursor
3997 while tracking/dragging mouse.
3998 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
3999
37e34af7
KS
4000 * window.c (coordinates_in_window): Relax check for cursor
4001 on vertial border between mode lines.
4002 (Fset_window_fringes): Do not allow negative widths.
4003 (Fset_window_scroll_bars): Likewise.
4004
904db1a2
KS
4005 * .gdbinit (pp): Shorthand for p ARG + pr.
4006 (ff): New command: flush frame updates (X only).
4007
38fe4f64
MA
40082004-10-03 Michael Albinus <michael.albinus@gmx.de>
4009
4010 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
4011
9de36315
KH
40122004-09-30 Kenichi Handa <handa@m17n.org>
4013
07c381ad 4014 * process.c (send_process): Free composition data.
9de36315 4015
07c381ad 4016 * fileio.c (Finsert_file_contents): Free composition data.
9de36315
KH
4017
4018 * coding.c (code_convert_region): Don't skip ASCIIs if there are
07c381ad
KH
4019 compositions to encode.
4020 (encode_coding_string): Likewise. Free composition data.
4021
d5fb8dab 40222004-09-30 Florian Weimer <fw@deneb.enyo.de>
07c381ad
KH
4023
4024 * coding.c (code_convert_region): Free composition data.
9de36315 4025
f2a54fbc
KS
40262004-09-29 Kim F. Storm <storm@cua.dk>
4027
dc5d6435
KS
4028 * fringe.c: Remove limit on number of bitmaps.
4029 (fringe_bitmaps, fringe_faces): Change to pointers.
4030 (max_fringe_bitmaps): New var.
4031 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
4032 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
4033
4034 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
4035 (struct glyph_row): Reorder fringe_bitmap related fields.
4036 (struct it): Likewise.
4037
4038 * w32term.c (fringe_bmp): Change to pointer.
4039 (max_fringe_bmp): New var.
4040 (w32_define_fringe_bitmap): Expand fringe_bmp.
4041 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
4042 (w32_destroy_fringe_bitmap): Likewise.
4043
40442004-09-29 Kim F. Storm <storm@cua.dk>
4045
4046 * fringe.c: Simplify last change.
f2a54fbc
KS
4047 (lookup_fringe_bitmap): New function.
4048 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
4049 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
4050 Keep standard bitmaps in Vfringe_bitmaps.
4051 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
4052 (Fset_fringe_bitmap_face): Likewise.
4053
4054 * dispextern.h (lookup_fringe_bitmap): Add prototype.
4055 (valid_fringe_bitmap_p): Remove prototype.
4056
4057 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
4058
841a8bca
KS
40592004-09-29 Kim F. Storm <storm@cua.dk>
4060
1f2da365
KS
4061 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
4062 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
4063
841a8bca
KS
4064 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
4065
4066 * fringe.c (Vfringe_bitmaps): New variable.
4067 (syms_of_fringe): DEFVAR_LISP it.
4068 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
4069 Change arg to Lisp_Object and fail if not an integer.
4070 (get_fringe_bitmap_name, resolve_fringe_bitmap)
4071 (destroy_fringe_bitmap): New functions.
9238467d
SM
4072 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
4073 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
841a8bca
KS
4074 clear its fringe property.
4075 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
4076 Fdestroy_fringe_bitmap.
4077 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
4078 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
4079 and set fringe property. Signal error if no free slots.
4080 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
4081 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
4082
4083 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
4084 symbols with a fringe property.
4085
4d965590
KS
40862004-09-27 Kim F. Storm <storm@cua.dk>
4087
4088 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
4089 Doc fix. Format may now be a symbol or alist, not a cons.
4090
4091 * fringe.c (update_window_fringes): Handle new formats of
4092 indicate-buffer-boundaries (symbol or alist). No longer
4093 allow a simple cons.
4094 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
4095
e888c2b3
JD
40962004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4097
9238467d 4098 * config.in: Rebuild.
e888c2b3 4099
83f1cb94
JD
41002004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4101
4102 * config.in: Rebuild.
4103
dd3b1d60 4104 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
83f1cb94 4105
2c51754c
SM
41062004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
4107
4108 * xterm.c (x_term_init): Work around a bug in some X servers.
4109
3df5f8aa
RS
41102004-09-18 Richard M. Stallman <rms@gnu.org>
4111
557ca2c1
RS
4112 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
4113
3df5f8aa
RS
4114 * xdisp.c (try_window_reusing_current_matrix):
4115 Handle the case where we reach the old displayed text,
4116 out of sync with the old line boundary.
4117
9238467d 41182004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
4b70e2c9
SM
4119
4120 * fileio.c (Finsert_file_contents): Fix case of replacement in a
4121 narrowed buffer.
4122
bfa02563
KS
41232004-09-14 Kim F. Storm <storm@cua.dk>
4124
a25fe164
KS
4125 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
4126
bfa02563
KS
4127 * xfaces.c (Qface_no_inherit): New var.
4128 (syms_of_xfaces): Intern and staticpro it.
4129 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
4130 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
4131 Don't increment face_change_count when face has non-nil
4132 face-no-inherit property.
4133
126f9c02
SM
41342004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
4135
892a8eb5
SM
4136 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
4137 (Fbyte_code): Remove dead code after `wrong_type_argument'.
4138
126f9c02 4139 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
9238467d 4140 before doing the mark_stack_check_gcpros since they're not on the stack.
126f9c02 4141
c0ad3b38
KS
41422004-09-12 Kim F. Storm <storm@cua.dk>
4143
4144 * editfns.c (Fformat): Handle format strings with multiple text
4145 properties. Reverse text property list from the format string,
4146 so the positions are in increasing order.
4147
844fc085
JD
41482004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4149
4150 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
4151 x_uncatch_errors so that possible protocol errors are delivered.
4152
b106731c
EZ
41532004-09-10 Eli Zaretskii <eliz@gnu.org>
4154
21065c92
EZ
4155 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
4156 blockinput.h.
4157 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
4158 charset.h, and coding.h
9238467d 4159 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
21065c92
EZ
4160 (term.o): Depend on window.h and keymap.h.
4161 (abbrev.o): Depend on syntax.h.
4162 (callint.o): Depend on keymap.h.
4163 (casefiddle.o): Depend on charset.h and keymap.h.
4164 (category.o): Depend on keymap.h.
4165 (coding.o): Depend on dispextern.h.
4166 (cmds.o): Depend on keyboard.h and keymap.h.
4167 (dispnew.o): Depend on indent.h and intervals.h.
4168 (doc.o): Depend on keymap.h.
4169 (editfns.o): Depend on frame.h.
4170 (emacs.o): Depend on dispextern.h.
4171 (fileio.o): Don't depend on ccl.h.
4172 (filelock.o): Depend on charset.h and coding.h.
4173 (frame.o): Depend on w32term.h and macterm.h.
4174 (insdel.o): Depend on region-cache.h.
4175 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
4176 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
4177 (search.o): Depend on $(INTERVALS_SRC).
4178 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
4179 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
4180 xterm.h, w32term.h, and macterm.h.
4181 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
4182 w32term.h, and macterm.h.
4183 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
4184 region-cache.h, xterm.h, w32term.h, and macterm.h.
4185 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
4186 (data.o): Depend on frame.h.
4187 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
4188 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
4189 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
4190 (intervals.o): Depend on keymap.h.
4191
9238467d
SM
4192 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
4193 Add debugging print-out to termscript.
b106731c 4194
64b7122d
RS
41952004-09-09 Richard M. Stallman <rms@gnu.org>
4196
4197 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
4198
5670531e
RS
41992004-09-08 Richard M. Stallman <rms@gnu.org>
4200
6cb4a892
RS
4201 * window.c (Fset_window_buffer): Doc fix.
4202
5670531e
RS
4203 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
4204
7e388eb7
JL
42052004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
4206
4207 * minibuf.c (history_delete_duplicates): New variable.
4208 (read_minibuf): Use it.
4209 (syms_of_minibuf): Create the corresponding lisp variable.
4210
370e3587
KS
42112004-09-08 Kim F. Storm <storm@cua.dk>
4212
4213 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
4214 overlay just before point.
4215
f844ba4e
LT
42162004-09-07 Luc Teirlinck <teirllm@auburn.edu>
4217
4218 * buffer.h (struct buffer): Add auto_save_file_format field.
9238467d
SM
4219 * buffer.c (reset_buffer, init_buffer_once):
4220 Handle auto_save_file_format field.
f844ba4e
LT
4221 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
4222 `buffer-auto-save-file-format'.
f844ba4e
LT
4223 * fileio.c: Delete declaration for removed Vauto_save_file_format.
4224 (build_annotations): Adapt to replacement of
4225 `auto-save-file-format' with the new buffer-local variable
4226 `buffer-auto-save-file-format'.
4227 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
4228
f0f90717
JR
42292004-09-07 Jason Rumney <jasonr@gnu.org>
4230
4231 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
4232
9238467d
SM
4233 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
4234 Handle Unicode menu titles.
f0f90717 4235
4e14f66c
KS
42362004-09-07 Kim F. Storm <storm@cua.dk>
4237
4238 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
4239 property from text property or overlay strings at point.
4240
9238467d 42412004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1806714a
SM
4242
4243 * xmenu.c (update_submenu_strings): YAILOM.
4244 (set_frame_menubar): Make sure last_i is initialized.
4245
1f06d367
JR
42462004-09-03 Jason Rumney <jasonr@gnu.org>
4247
1806714a 4248 * w32menu.c (_widget_value): Add lname and lkey.
1f06d367
JR
4249 (digest_single_submenu): Set lname and lkey in widget_value
4250 instead of name and key.
4251 (update_submenu_strings): New function.
4252 (set_frame_menubar): Remove call to inhibit_garbage_collection,
4253 call update_submenu_strings.
4254
4255 * w32menu.c (globals_of_w32menu): Check for Unicode API.
4256 (digest_single_submenu, w32_menu_show): Encode menu strings as
4257 UTF-8 if Unicode API is available.
4258 (utf8to16): New function.
4259 (add_menu_item): Use it when calling Unicode API.
1806714a 4260
46540080
KS
42612004-09-03 Kim F. Storm <storm@cua.dk>
4262
4263 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
4264 in overlay or text-property strings; set cursor on corresponding
4265 glyph rather than at end of the string.
4266
9277ba61 42672004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
46540080 4268
9277ba61 4269 * macfns.c (x_real_positions): Save the current window port and
1806714a
SM
4270 set a new one before obtaining the global coordinate.
4271 Use FRAME_MAC_WINDOW.
4272 (x_set_name, x_set_title): Encode title to UTF8.
4273 Use SetWindowTitleWithCFString.
9277ba61
ST
4274 (Fx_server_version): Get correct OS version.
4275
1806714a
SM
4276 * macmenu.c (add_menu_item): Remove unused variable `i'.
4277 Don't let separator items destroy refence constants of other menu items.
9277ba61
ST
4278
4279 * macterm.c (x_update_end): Move SetPortWindowPort to inside
4280 BLOCK_INPUT.
4281 (x_set_offset): Use FRAME_MAC_WINDOW.
4282
4283 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
4284 nontext_cursor if it is on a scroll bar.
4285
4286 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
4287 Carbon support.
1806714a
SM
4288 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
4289 Use LIBS_CARBON.
9277ba61 4290
b10daec7
JD
42912004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4292
4293 * xfns.c (x_set_name_internal): New function. Check if we shall call
4294 xfree before ENCODE_UTF_8.
4295 (x_set_name, x_set_title): Call x_set_name_internal.
4296
f7e22385
JR
42972004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
4298
4299 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
4300 reload it.
4301
2bf436c3
JD
43022004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4303
1806714a 4304 * macmenu.c (_widget_value): Add lname and lkey.
16ceacc2
JD
4305 (single_submenu): Set lname and lkey in widget_value
4306 instead of name and key.
4307 (update_submenu_strings): New function.
4308 (set_frame_menubar): Remove call to inhibit_garbage_collection,
4309 call update_submenu_strings.
4310
2bf436c3
JD
4311 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
4312 instead of name and key.
4313 (update_submenu_strings): New function.
4314 (set_frame_menubar): Remove call to inhibit_garbage_collection,
ec867797 4315 call update_submenu_strings.
2bf436c3
JD
4316
4317 * gtkutil.h (_widget_value): Added lname and lkey.
4318
11715f92
ST
43192004-08-30 Steven Tamm <steventamm@mac.com>
4320
4321 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
4322 by using different names for inner loop variables.
4323
5500be54
JD
43242004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4325
059cd329
JD
4326 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
4327 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
4328
5500be54
JD
4329 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
4330 tool bar items is 0.
4331
383418e5
ST
43322004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4333
4334 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
4335 strings in menu items.
4336 (single_submenu): Use ENCODE_MENU_STRING
4337 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
4338 button release isn't passed to event loop
4339 (add_menu_item): Use SetMenuItemWithCFString
4340
6eb3ee72
ST
43412004-08-26 Steven Tamm <steventamm@mac.com>
4342
4343 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7e26f91b
KS
4344 tool-bar/menu click.
4345 * macfns.c (Fx_file_dialog): Implement using NavServices.
6eb3ee72 4346
10b43ac3
JD
43472004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4348
2728b5d0
JD
4349 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
4350
10b43ac3
JD
4351 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4352 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4353 (x_top_window_to_frame): Return 0 if wdesc is None.
4354
2ee3b79e
RS
43552004-08-22 Richard M. Stallman <rms@gnu.org>
4356
4357 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
4358 HAVE_TERMIOS]: If there's no char for this signal, drop through
4359 and use system calls.
4360
4361 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
4362
9a1ba2ea
KS
43632004-08-20 Kim F. Storm <storm@cua.dk>
4364
4365 * process.c (wait_reading_process_output): Rename from
4366 wait_reading_process_input. All uses changed.
4367 (wait_reading_process_output_1): Rename from
4368 wait_reading_process_input_1. All uses changed.
4369
4370 * dispnew.c (Fsleep_for): Remove obsolete code.
4371
295f3b30
KH
43722004-08-20 Kenichi Handa <handa@m17n.org>
4373
4374 * syntax.c (skip_chars): Fix for unibyte case.
4375
27615979
SM
43762004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4377
4378 * syntax.c (char_quoted): Mixup byte/char pos.
4379 (back_comment): Fixup globals in all cases.
4380
00267f94
JD
43812004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4382
4383 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
4384 passing it to gtk_window_set_title.
4385
2439909e
KS
43862004-08-19 Kim F. Storm <storm@cua.dk>
4387
6ba0f14c
KS
4388 * process.c (wait_reading_process_input): Clean up.
4389 Add wait_for_cell, wait_proc, and just_wait_proc args
4390 to avoid overloading `read_kbd' and `do_display' args.
4391 Change read_kbd arg to int. All callers changed.
4392
2439909e
KS
4393 * process.c (process_send_signal): Use CDISABLE.
4394
4395 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
4396
101c421e
KS
43972004-08-18 Kim F. Storm <storm@cua.dk>
4398
4399 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
4400 forward to wait_reading_process_input via DO_DISPLAY arg.
4401 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
4402 object, only process output from that process; also inhibit
4403 running timers if DO_DISPLAY==-2.
4404
c438dc33
KS
44052004-08-17 Kim F. Storm <storm@cua.dk>
4406
4407 * process.c (process_send_signal): Fix last change--use
4408 _POSIX_VDISABLE instead of CVDISABLE when available.
4409
8afc13c6
RS
44102004-08-16 Richard M. Stallman <rms@gnu.org>
4411
4412 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
4413 Set VQUIT and VINTR chars to the standard ones if they are unset.
4414 [AIX]: Don't do that here. And don't force VINTR to standard
4415 when SIGNALS_VIA_CHARACTERS.
4416
c438dc33 4417 * process.c (process_send_signal)
8afc13c6
RS
4418 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
4419 Do nothing if the character is CVDISABLE.
4420
4421 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
4422
c438dc33 4423 * intervals.c (move_if_not_intangible):
8afc13c6
RS
4424 Force POSITION to be between BEGV and ZV.
4425
6dad1714
JPW
44262004-08-14 John Paul Wallington <jpw@gnu.org>
4427
4428 * buffer.c (Frestore_buffer_modified_p): Doc fix.
4429
4430 * fileio.c (Fread_file_name): Doc fix.
4431
4432 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
4433
2bd77330
LT
44342004-08-09 Luc Teirlinck <teirllm@auburn.edu>
4435
4436 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
4437
c90e7e43
LT
44382004-08-08 Luc Teirlinck <teirllm@auburn.edu>
4439
4440 * keyboard.c: Declare Qdisabled_command_function instead of
8392e138 4441 Qdisabled_command_hook.
c90e7e43 4442 (Fcommand_execute): Use Qdisabled_command_function instead of
8392e138 4443 Qdisabled_command_hook.
c90e7e43
LT
4444 (syms_of_keyboard): Ditto.
4445
81909a1a
LT
44462004-08-07 Luc Teirlinck <teirllm@auburn.edu>
4447
4448 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
4449 (syms_of_keymap) <key-translation-map>: Doc fixes.
4450
0cedd530
SM
44512004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
4452
1725a7c9
SM
4453 * window.c (window_list_1): YAILOM.
4454
0cedd530
SM
4455 * fileio.c (make_temp_name): Handle multibyte prefixes.
4456
2515a131
LT
44572004-08-06 Luc Teirlinck <teirllm@auburn.edu>
4458
4459 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
4460 Doc fix.
4461
c8b20fb7
KH
44622004-08-03 Kenichi Handa <handa@m17n.org>
4463
4464 * coding.c (decode_coding_string): Adjust coding->consumed, and
4465 etc. with shrinked_bytes.
4466
fb8b092b
KS
44672004-08-03 Kim F. Storm <storm@cua.dk>
4468
4469 * indent.c (compute_motion): Fix check for full width window
4470 in non-window case. Do not count left truncation glyph on
4471 window systems.
4472
df133612
LT
44732004-08-02 Luc Teirlinck <teirllm@auburn.edu>
4474
4475 * data.c (Finteractive_form): Doc fix.
4476
0f7a93c1
KS
44772004-08-02 Kim F. Storm <storm@cua.dk>
4478
4479 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
4480 properly accounting for continuation glyph on non-window systems.
4481 (Fcompute_motion): Use actual window width if WIDTH is nil, and
4482 actual window width/height if TOPOS is nil, properly accounting for
4483 continuation glyphs on non-window systems, and optional header lines.
4484 (vmotion): Let compute_motion calculate actual window width.
4485
4486 * window.c (window_scroll_line_based): Let compute_motion
4487 calculate actual window width.
4488
f491e1ed
KS
44892004-08-02 Kim F. Storm <storm@cua.dk>
4490
4491 * process.c (read_process_output): Use whole read buffer.
4492 Don't trigger adaptive read buffering on errors.
4493
83f64226
LT
44942004-07-31 Luc Teirlinck <teirllm@auburn.edu>
4495
4496 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
4497
4498 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
4499
4500 * callint.c (Fcall_interactively): Doc fix.
4501
8afc13c6
RS
45022004-07-30 Richard M. Stallman <rms@gnu.org>
4503
4504 * abbrev.c (Fexpand_abbrev): Undo previous change.
4505
7c111482
KS
45062004-07-30 Kim F. Storm <storm@cua.dk>
4507
4508 * editfns.c (Fformat): Allocate extra (dummy) element in info.
4509
ee945d08
LT
45102004-07-28 Luc Teirlinck <teirllm@auburn.edu>
4511
4512 * eval.c (Fdefvar, Fdefconst): Doc fixes.
4513
3f911c94
KS
45142004-07-27 Kim F. Storm <storm@cua.dk>
4515
4516 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
4517 we have ensured that the glyph fits on the current line (or returned
4518 MOVE_LINE_CONTINUED otherwise).
4519
f29ff8c7
KS
45202004-07-26 Kim F. Storm <storm@cua.dk>
4521
4522 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
4523 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
4524 if target position is at end of display line but char is not a newline.
4525
81159bb9
RS
45262004-07-25 Richard M. Stallman <rms@gnu.org>
4527
ab431b61
RS
4528 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
4529 instead of ON_VERTICAL_BORDER, when on scroll bar.
4530 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
4531
4532 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
4533
f29ff8c7 4534 * window.c (Fcoordinates_in_window_p):
81159bb9
RS
4535 Take account of FRAME_INTERNAL_BORDER_WIDTH.
4536
4537 * alloc.c (check_cons_list): New function (contents commented out).
4538
fc820cc5
LT
45392004-07-24 Luc Teirlinck <teirllm@auburn.edu>
4540
4541 * xfaces.c (Fcolor_supported_p): Doc fix.
4542
4543 * frame.c (Fselect_frame, Fset_frame_selected_window)
4544 (Fframe_visible_p, Fraise_frame): Doc fixes.
4545
289978b5
LT
45462004-07-24 Richard M. Stallman <rms@gnu.org>
4547
78819ebb 4548 * keyboard.h (not_single_kboard_state): Declare.
7630911d
RS
4549
4550 * fileio.c (Fwrite_region): Doc fix.
4551
4552 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
4553
4554 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
4555 only when a real abbrev is present.
4556
289978b5
LT
4557 * xfns.c (x_icon_verify): New function.
4558 (Fx_create_frame): Use it.
4559
d5fb8dab 45602004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
63cc10ae
KS
4561
4562 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
4563
36f826d4
KS
45642004-07-21 Kim F. Storm <storm@cua.dk>
4565
4566 * window.h (struct glyph_matrix): New members nrows_scale_factor
4567 and ncols_scale_factor.
4568
4569 * window.c (make_window): Initialize nrows_scale_factor and
4570 ncols_scale_factor members.
4571
4572 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
4573 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
4574 (required_matrix_height): Apply nrows_scale_factor.
4575 (required_matrix_width): Apply ncols_scale_factor.
4576
4577 * xdisp.c (display_line): Increment nrows_scale_factor and set
4578 fonts_changed_p if past last allocated row.
4579 (append_glyph, append_composite_glyph, produce_image_glyph)
4580 (append_stretch_glyph): Increment ncols_scale_factor and set
4581 fonts_changed_p if current area is full.
4582
5fc1c546
JD
45832004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4584
4585 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
4586
cb7516e5
LT
45872004-07-19 Luc Teirlinck <teirllm@auburn.edu>
4588
4589 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
4590 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
4591 (Fset_window_start, Fscroll_up, Fscroll_down)
4592 (Fother_window_for_scrolling, Fscroll_other_window)
4593 (Fsave_window_excursion, Fset_window_vscroll)
4594 (syms_of_window) <window-size-fixed>: Doc fixes.
4595
b6189c3b 45962004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
dda741ec
JR
4597
4598 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
4599 ENCODE_SYSTEM for filenames.
4600
bfcf6608
ST
46012004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4602
4603 * mac.c (sys_select): Block input around call to
4604 ReceiveNextEvent to prevent breakage. Correctly handle
4605 blocking on event queue only by calling ReceiveNextEvent
4606 instead of select (since GUI events aren't on an fd).
4607 (sys_read): Remove function
4608 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
4609
e082ac9d
ST
46102004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4611
4612 * mac.c (sys_select): Redo sys_select to use alarm-based
cb7516e5 4613 polling instead of 1 sec timeouts (like solaris).
e082ac9d 4614
cb7516e5 4615 * macterm.c (x_make_frame_visible): Comment in polling on
e082ac9d
ST
4616 frame creation.
4617
4618 * keyboard.c: Undef SIGIO on Carbon
4619
4620 * atimer.c (alarm_signal_handler): Call alarm handlers after
4621 scheduling.
4622
4623 * eval.c (Feval): Remove quit_char test
4624
4625 * process.c (wait_reading_process_input): Remove clearing
4626 stdin for select call on process input.
4627
4b9da0fb
LT
46282004-07-18 Luc Teirlinck <teirllm@auburn.edu>
4629
1204e81c
LT
4630 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
4631 capitalization error in docstring.
4b9da0fb 4632
26503ad2
JB
46332004-07-17 Juanma Barranquero <lektu@terra.es>
4634
4635 * keyboard.c (not_single_kboard_state): Do nothing unless
4636 MULTI_KBOARD is defined.
4637
3751eb00
RS
46382004-07-17 Richard M. Stallman <rms@gnu.org>
4639
4640 * window.c (coordinates_in_window): Inside the window but outside
4641 its box to the L or R, return ON_VERTICAL_BORDER.
4642 (window_list_1): Rotate the list to start with WINDOW.
4643
4644 * print.c (print_preprocess): Test for print_depth at limit
4645 before entering in being_printed.
4646
4647 * keyboard.c (not_single_kboard_state): New function.
4648 (stuff_buffered_input): Now no-op only if no SIGTSTP.
4649
4650 * frame.c (Fdelete_frame): If we're in single_bboard_state on
4651 this kboard, and we delete its last frame, go to any_kboard_state.
4652
4653 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
4654
b6189c3b 46552004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
62eb6ca9
JR
4656
4657 * w32fns.c (Fx_file_dialog): Encode strings in system coding
4658 system before passing them to OS functions for display.
4659
0f6af254
DK
46602004-07-15 David Kastrup <dak@gnu.org>
4661
f9253326
KS
4662 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
4663 Apparently fixes an abort condition.
0f6af254 4664
386c8f42
LT
46652004-07-14 Luc Teirlinck <teirllm@auburn.edu>
4666
4667 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
4668 instead of a cons.
4669
366511da
MB
46702004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
4671
4672 * keyboard.c (echo_dash): Do nothing if there already is a dash
4673 at the end of the echo string.
4674
f85409d3
KS
46752004-07-12 Kim F. Storm <storm@cua.dk>
4676
4677 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
4678 if GC_MARK_STACK.
4679
0ba2e87b
LT
46802004-07-10 Luc Teirlinck <teirllm@auburn.edu>
4681
da38045d
LT
4682 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
4683
0ba2e87b
LT
4684 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
4685 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
4686 (Freplace_buffer_in_windows, Fset_window_buffer)
4687 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
4688 (syms_of_window): Expand docstring of `display-buffer-function'.
4689
5668fbb8
LT
46902004-07-09 Luc Teirlinck <teirllm@auburn.edu>
4691
4692 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
4693 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
4694 that time values of the type (HIGH . LOW) are considered obsolete.
4695
a085bf9d
LT
46962004-07-06 Luc Teirlinck <teirllm@auburn.edu>
4697
669de2fb
LT
4698 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
4699 docstring.
4700
bac66325 4701 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
a085bf9d 4702
8e975df9
JPW
47032004-07-06 John Paul Wallington <jpw@gnu.org>
4704
4705 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
4706
fa164e6a
JPW
4707 * fns.c (Fclear_string): Signal an error if STRING is not a string.
4708
2bac9bb1
JD
47092004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4710
4711 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
4712 instead of CGMainDisplayID (only in OSX 10.2 and later).
4713
316ef0dc
JPW
47142004-07-04 John Paul Wallington <jpw@gnu.org>
4715
4716 * fileio.c (read_file_name_completion_ignore_case): New variable.
4717 (syms_of_fileio): Declare and initialise it.
4718 (Fread_file_name): Bind `completion-ignore-case' to respect it.
4719
2a1a35c6
EZ
47202004-07-03 Eli Zaretskii <eliz@gnu.org>
4721
4722 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
4723 for event.x and event.y.
4724
33a72331
KH
47252004-07-01 Kenichi Handa <handa@m17n.org>
4726
4727 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
4728 after getting a new string by pre-write-conversion.
4729
9238467d 47302004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
07a6ab76
SM
4731
4732 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
4733 (x_calc_absolute_position): Remove unused var `child'.
4734
4735 * xfaces.c (x_supports_face_attributes_p)
4736 (Fdisplay_supports_face_attributes_p): YAILOM.
4737 (tty_supports_face_attributes_p): Remove unused var `i'.
4738
4739 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
4740 back_unibyte_ok.
4741
4742 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
4743
4744 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
4745
4746 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
4747
f96ec754
AS
47482004-06-30 Andreas Schwab <schwab@suse.de>
4749
4750 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
4751 (Finit_image_library): Pass LIBRARIES through to
4752 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
4753 (lookup_image_type): Pass Qnil as second argument to
4754 Finit_image_library.
4755
78819ebb 4756 * lisp.h (Finit_image_library): Declare.
f96ec754 4757
59feca74 47582004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c8d09ad8 4759
31983645
AS
4760 * macterm.c (do_window_activate, do_window_deactivate): Remove.
4761 (XTread_socket): Send mouse button events to the toolbox
4762 dispatcher even when the mouse is grabbed. Don't process window
4763 activate events for non-Emacs windows. Replace function calls to
4764 do_window_activate and do_window_deactivate with their contents.
4765 Reset mouse grabbing status when a window is deactivated.
59feca74 4766
c61278bb
ST
47672004-06-29 Steven Tamm <steventamm@mac.com>
4768
4769 * macterm.c (mac_get_emulated_btn)
4770 (mac_event_to_emacs_modifiers): Fix emulated mouse button
4771 support to correctly mask out modifiers.
4772
c3762cbd
DK
47732004-06-29 David Kastrup <dak@gnu.org>
4774
4775 * search.c (Fset_match_data): Allow buffer before end of list
4776 which can happen if set-match-data is using a pre-consed list.
4777
c61278bb 47782004-06-28 Steven Tamm <steventamm@mac.com>
e439b925
ST
4779
4780 * macterm.c (XTread_socket): Correctly set the frame position
4781 after the window is moved.
4782
74cdfe05
JD
47832004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4784
4785 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
4786 gpix and gmask just before return to avoid memory leak.
03ecb80f
JD
4787 (xg_get_image_for_pixmap): Add workaround for monochrome displays
4788 so insensitive and activated icons look ok.
74cdfe05 4789
ef544dc8
JR
47902004-06-27 Jason Rumney <jasonr@gnu.org>
4791
4792 * w32fns.c (file_dialog_callback): Disable edit control if set
4793 to directories only on CDN_INITDONE message.
4794 (Fx_file_dialog): Default to directories only when prompt starts
4795 with "Dired".
4796
7b7990cc
KS
47972004-06-25 Kim F. Storm <storm@cua.dk>
4798
4799 * alloc.c (allocate_misc): Update total_free_markers.
4800 (free_misc): New function.
4801 (safe_alloca_unwind, free_marker): Use it.
4802
4803 * lisp.h (free_misc): Add prototype.
4804
4805 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
4806
d8c379f8
RS
48072004-06-24 Richard M. Stallman <rms@gnu.org>
4808
4809 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
4810 (syms_of_emacs): Lisp variables deleted.
4811
559cdd07
DK
48122004-06-23 David Kastrup <dak@gnu.org>
4813
94939b84
DK
4814 * search.c (Freplace_match): Adjust the match-data more thoroughly
4815 when replacing strings in the buffer.
4816 (Fmatch_data): When INTEGERS is non-nil and the last match was in
4817 a buffer, add the buffer as last element to the match data.
4818 (Fset_match_data): If an additional element of the match-data is a
4819 buffer, restore it to last_thing_searched.
c8d09ad8 4820 (save_search_regs): Save last_thing_searched as part of the match data.
559cdd07
DK
4821 (restore_match_data): Restore it again.
4822
dce417e7
LT
48232004-06-23 Luc Teirlinck <teirllm@auburn.edu>
4824
4825 * keymap.c (Ftext_char_description): Doc fix.
4826 * doc.c (Fsnarf_documentation): Doc fix.
4827
ef54b2d0
KS
48282004-06-22 Kim F. Storm <storm@cua.dk>
4829
b5bc4d05
KS
4830 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
4831
ef54b2d0
KS
4832 * lisp.h (struct Lisp_Save_Value): New member dogc.
4833 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
4834 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
4835 (SAFE_FREE_LISP): New macro.
4836
4837 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
4838 (make_save_value): Init new dogc member.
4839 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
4840
4841 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
4842 SAFE_FREE_LISP macros.
4843
3d33d993
KS
48442004-06-22 Kim F. Storm <storm@cua.dk>
4845
4846 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
4847 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
4848 in that memory area are unknown to GC. Add comments.
4849
4850 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
4851
5c917f98
KS
48522004-06-21 Kim F. Storm <storm@cua.dk>
4853
4854 * lisp.h (MAX_ALLOCA): Define here.
4855 (safe_alloca_unwind): Add prototype.
4856 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
4857
4858 * alloc.c (safe_alloca_unwind): New function.
4859
4860 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
4861
4862 * charset.c (Fstring): Use SAFE_ALLOCA.
4863
4864 * coding.c (MAX_ALLOCA): Remove define.
4865
4866 * data.c (MAX_ALLOCA): Remove define.
4867 (Faset): Use SAFE_ALLOCA.
4868
4869 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
4870
4871 * fns.c (string_make_multibyte, string_to_multibyte)
4872 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
4873 (MAX_ALLOCA): Remove define.
4874 (Fbase64_encode_region, Fbase64_encode_string)
4875 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
4876 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
4877 memory leak if encoding fails.
4878
4879 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
4880
9a09408e
EZ
48812004-06-21 Eli Zaretskii <eliz@gnu.org>
4882
4883 * print.c (Fwith_output_to_temp_buffer): Doc fix.
4884
376de739
RS
48852004-06-20 Richard M. Stallman <rms@gnu.org>
4886
4887 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
4888
4889 * search.c (match_limit): Cleaner err msg when no match data available.
4890
4891 * window.c (syms_of_window): Doc fix.
4892
4893 * keyboard.c (command_loop_1): Handle values `only' and `identity'
4894 for Vtransient_mark_mode.
4895
4896 * buffer.c (syms_of_buffer): Doc fix.
4897
acd81db9
DK
48982004-06-21 David Kastrup <dak@gnu.org>
4899
4900 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
4901 and unbinding of `case-fold-search' according to
4902 `completion-ignore-case' around calls of string-match and
4903 predicates, respectively. Should give satisfactory performance
4904 in all relevant cases.
4905
f303762d
JD
49062004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4907
95911c74
JD
4908 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
4909 clip_x/y_origin.
4910
a6cb6b78
JD
4911 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
4912
f303762d
JD
4913 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
4914
4915 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
4916 on Mac OSX.
4917
bbdb2684
LT
49182004-06-16 Luc Teirlinck <teirllm@auburn.edu>
4919
4920 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
4921
5ea48b1c
KS
49222004-06-16 Kim F. Storm <storm@cua.dk>
4923
4924 * dispextern.h (Vimage_types): Remove extern.
4925
803aac3e
MB
49262004-06-16 Miles Bader <miles@gnu.org>
4927
4928 * image.c (lookup_image_type): Initialize image type if necessary.
4929
cdc97764
KS
49302004-06-15 Kim F. Storm <storm@cua.dk>
4931
c4a5739c
KS
4932 * xdisp.c (try_cursor_movement): Exclude header line from scroll
4933 margin at top of window.
4934 (try_window_reusing_current_matrix): Calculate proper cursor position
4935 after scrolling up with non-zero scroll margin, as the old cursor
4936 position corresponds to value of PT before executing this command.
4937 (try_window_id): Consider scroll margin at bottom of window too;
4938 otherwise we fail to scroll when hl-line-mode is enabled.
4939
cdc97764
KS
4940 * syntax.c (skip_chars): Only recognize [:class:] when it has the
4941 proper format and class is a lower-case word.
4942
5b166323
JD
49432004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4944
4945 * gtkutil.c (xg_get_image_for_pixmap): New function.
c8d09ad8 4946 (xg_get_gdk_pixmap_and_mask): Remove.
5b166323
JD
4947 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
4948 xg_get_gdk_pixmap_and_mask.
cdc97764 4949
5b166323
JD
4950 * xterm.h (struct x_display_info): Typo in comment fixed.
4951
1ebd4f78
JB
49522004-06-14 Juanma Barranquero <lektu@terra.es>
4953
4954 * dispextern.h (Vimage_types): Make it conditional on
4955 HAVE_WINDOW_SYSTEM.
4956
4957 * image.c (Vimage_types): Move from xdisp.c.
4958 (Vimage_type_cache): New variable.
4959 (define_image_type): New argument indicating whether an image
4960 library was loaded; cache loaded status and return t on success,
4961 nil otherwise.
4962 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
4963 (w32_delayed_load): New function to load an image library from a
4964 list of possible filenames.
4965 (init_xpm_functions, init_png_functions, init_jpeg_functions)
4966 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
c8d09ad8 4967 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1ebd4f78
JB
4968 (Finit_image_library): New function, extracted from `init_image'.
4969 Try to initialize an image library on demand and cache whether we
4970 were successful or not.
4971 (syms_of_image): Initialize `Vimage_types' and
4972 `Vimage_type_cache'. Add recognized image types to Vimage_types.
4973 Export `init-image-library'.
4974 (init_image): Remove initialization of all image types, except xbm
4975 and pbm.
4976
4977 * xdisp.c (Vimage_types): Delete (moved to image.c).
4978
904ee128
AS
49792004-06-14 Andreas Schwab <schwab@suse.de>
4980
4981 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
4982 Avoid calling specbind when completion-regexp-list is empty.
4983
092de21d
RS
49842004-06-13 Richard M. Stallman <rms@gnu.org>
4985
4986 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4987 (re_wctype, re_iswctype, re_wctype_to_bit):
4988 Non-function definitions moved here from regex.c.
1ebd4f78 4989
092de21d
RS
4990 * regex.c (re_wctype, re_iswctype): Function defs longer static.
4991 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
4992 (re_wctype, re_iswctype, re_wctype_to_bit):
4993 Non-function definitions moved to regex.h.
4994
4995 * window.c (Fselect_window): Doc fix.
4996
4997 * syntax.c: Include regex.h.
4998 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
4999 If requested, make a list of classes, then check the scanned
5000 chars for membership in them.
5001 (in_classes): New function.
5002 Doc fix.
5003
5004 * keyboard.c (cmd_error): Don't call any_kboard_state
5005 if inside a recursive edit level.
5006
9ba27690 50072004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
092de21d
RS
5008
5009 * keyboard.c (command_loop): Call any_kboard_state before
5010 command_loop_2 when at top level.
5011
3ebc0939
AS
50122004-06-13 Andreas Schwab <schwab@suse.de>
5013
cea5d0d4
AS
5014 * print.c (print_object): Always use %ld for printing EMACS_INT.
5015
5016 * keyboard.c (cancel_hourglass_unwind): Return a value.
5017 (modify_event_symbol): Always use %ld for printing EMACS_INT.
5018 (Fexecute_extended_command): Likewise.
5019
5020 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
5021 avoid clashes.
5022 (SYNTAX): Likewise.
5023 (SYNTAX_WITH_FLAGS): Likewise.
5024 (SYNTAX_MATCH): Likewise.
5025
5026 * syntax.c (char_quoted): Avoid warning about undefined operation.
5027 (find_defun_start): Likewise.
5028 (scan_lists): Likewise.
5029 (INC_FROM): Likewise.
5030 (scan_sexps_forward): Likewise.
5031
be8c4ce4
AS
5032 * image.c: Include <ctype.h>.
5033
3ebc0939
AS
5034 * xfaces.c (face_attr_equal_p): Declare parameters.
5035
6fb41b5b
KH
50362004-06-13 Kenichi Handa <handa@m17n.org>
5037
5038 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
5039
fc3095ce
EZ
50402004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
5041
5042 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
5043
66189a40
KH
50442004-06-12 Kenichi Handa <handa@m17n.org>
5045
5046 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
5047 ccl_prog_stack_struct and update it.
5048 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
5049 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
5050 ccl->eof_ic on EOF.
5051 (ccl_debug_hook): New function.
5052 (struct ccl_prog_stack): New member eof_ic.
5053 (ccl_driver): Handle EOF in subrountine call correctly.
5054
50552004-06-11 Kenichi Handa <handa@m17n.org>
5056
5057 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
5058
1da71023
KS
50592004-06-11 Kim F. Storm <storm@cua.dk>
5060
5061 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
5062
e9efcef4
JB
50632004-06-11 Juanma Barranquero <lektu@terra.es>
5064
5065 * keyboard.c (Fposn_at_point): Doc fix.
5066
9b9ceb61
DK
50672004-06-11 David Kastrup <dak@gnu.org>
5068
5069 * search.c (match_limit): Don't flag an error if match-data
5070 exceeding the allocated search_regs.num_regs gets requested, just
5071 return Qnil.
5072
6e87ac8f
MB
50732004-06-08 Miles Bader <miles@gnu.org>
5074
5075 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
5076
0b0dea7b
JB
50772004-06-07 Juanma Barranquero <lektu@terra.es>
5078
5079 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
5080 (Fcurrent_time_string, Fcurrent_time_zone)
5081 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
5082
a0a23346
MB
50832004-06-07 Miles Bader <miles@gnu.org>
5084
08384afd 5085 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
5086 (push_named_merge_point): New function.
5087 (merge_named_face): New function.
5088 (merge_face_ref, face_at_buffer_position, face_at_string_position):
5089 Use `merge_named_face'.
5090 (merge_face_inheritance): Function removed.
c8d09ad8 5091 (merge_face_ref): Rename from `merge_face_vector_with_property'.
a0a23346
MB
5092 Add new `err_msgs' and `named_merge_points' args. Return error
5093 status. Only print error messages if ERR_MSGS is true. Don't try to
5094 do :inherit attribute validation.
5095 (merge_face_heights): Handle `unspecified' in both directions.
5096 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
5097 Call `merge_face_ref' instead of `merge_face_inheritance'.
5098 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
5099 (compute_char_face, face_at_buffer_position)
5100 (face_at_string_position): Call `merge_face_ref' instead of
5101 `merge_face_vector_with_property'.
5102
12d5b185
KH
51032004-06-07 Kenichi Handa <handa@m17n.org>
5104
5105 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
5106 the necessary places.
5107
2e2d7ee6
KS
51082004-06-07 Kim F. Storm <storm@cua.dk>
5109
5110 * process.c (Fdelete_process): Undo 2004-05-28 change.
5111 Instead, call status_notify also for network process.
5112 (status_message): Use process instead of status as arg.
5113 Give messages "deleted" or "connection broken by remote peer" for
5114 an exited network process.
5115 (status_notify): Change call to status_message.
5116 (read_process_output): Increase readmax to 4096. Do not increase
5117 buffer size for datagram channels (default is now large enough).
5118
fcf0d299
ST
51192004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
5120
5121 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
5122 problem due to newly defined variable.
5123
0722292b
MB
51242004-06-06 Miles Bader <miles@gnu.org>
5125
5126 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
5127 immediately if non-interactive or not initialized.
5128
ddfb8369
RS
51292004-06-05 Richard M. Stallman <rms@gnu.org>
5130
5131 * minibuf.c (Fcompleting_read): Doc fix.
5132
57015754
AS
51332004-06-05 Andreas Schwab <schwab@suse.de>
5134
5135 * macfns.c (x_create_tip_frame): Fix declaration after statement.
5136
23715ea6
JB
51372004-06-05 Juanma Barranquero <lektu@terra.es>
5138
5139 * keymap.c (Fdescribe_vector): Fix docstring.
5140 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
5141
8e330b22
MB
51422004-06-05 Miles Bader <miles@gnu.org>
5143
5144 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
5145 attributes have different values than the default face.
5146
9742a3a6
EZ
51472004-06-04 Eli Zaretskii <eliz@gnu.org>
5148
5149 * xfaces.c (x_supports_face_attributes_p): Make this function
5150 conditional on HAVE_WINDOW_SYSTEM.
c8d09ad8
SM
5151 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
5152 Don't call x_supports_face_attributes_p if it was not compiled in.
9742a3a6 5153
9717e36c
MB
51542004-06-04 Miles Bader <miles@gnu.org>
5155
5156 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
5157 from Ftty_supports_face_attributes_p.
5158 (x_supports_face_attributes_p): New function.
5159 (Ftty_supports_face_attributes_p): Function deleted.
5160 (Fdisplay_supports_face_attributes_p): New function.
5161 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 5162 (face_attr_equal_p): New function.
9717e36c
MB
5163 (lface_equal_p): Use it.
5164
52deb19f
JB
51652004-06-03 Juanma Barranquero <lektu@terra.es>
5166
5167 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
5168 (Vw32_color_map): Fix typo in docstring.
5169 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
5170 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
5171 Make argument names match their use in docstring.
5172
86d373e6
JB
51732004-06-02 Juanma Barranquero <lektu@terra.es>
5174
5175 Work around bugs/problems with MinGW builds of graphics libraries
5176 called from MSVC builds of Emacs.
5177
5178 * image.c (lookup_image): Make pointer to img static.
5179 (png_read_from_memory): Disable "global" optimization.
5180
2fb0ce67
SM
51812004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
5182
c8d09ad8
SM
5183 * eval.c (Fcondition_case): Fix usage. Simplify.
5184
2fb0ce67
SM
5185 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
5186
50bf7673
ST
51872004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5188
5189 * macfns.c: Don't include ccl.h.
5190 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
5191 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
5192 TextUtils.h.
c8d09ad8 5193 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
50bf7673
ST
5194 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
5195 display height/width.
5196 (compute_tip_xy, Vx_max_tooltip_size): Declare.
5197 (unwind_create_tip_frame, compute_tip_xy): New functions.
5198 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
5199 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
5200 and last_show_tip_args.
2fb0ce67 5201
50bf7673
ST
5202 * macgui.h [!MAC_OSX]: Include Gestalt.h.
5203 (Cursor, No_Cursor): New defines.
c8d09ad8 5204 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
50bf7673
ST
5205 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
5206
5207 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
5208
5209 * macterm.c: Don't include Gestalt.h.
5210 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
5211 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
5212 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
5213 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
5214 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
5215 (construct_mouse_click, XTmouse_position)
5216 (x_scroll_bar_report_motion, x_calc_absolute_position)
5217 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
5218 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
5219 (note_mouse_movement): Clear the mouse face and reset the pointer
5220 shape when the pointer goes outside the frame without grabbing.
5221 (mac_front_window): New function.
5222 (mac_window_to_frame): New macro.
5223 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
5224 (do_window_activate, do_window_deactivate, do_app_resume)
5225 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
5226 (do_zoom_window, mac_do_receive_drag, XTread_socket)
5227 (mac_check_for_quit_char): Use mac_front_window and/or
5228 mac_window_to_frame.
5229 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
5230 scroll-bar click event.
5231 (mac_define_frame_cursor): Change the pointer shape.
c8d09ad8 5232 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
50bf7673 5233 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
c8d09ad8 5234 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
50bf7673
ST
5235 (do_window_update): Don't do anything if the updated window is the
5236 tooltip window.
5237 (do_mouse_moved): Handle mouse movement events here (previously in
5238 XTread_socket). Clear the mouse face if
5239 dpyinfo->mouse_face_hidden is set.
5240 (do_os_event, do_events): Remove (now in XTread_socket).
5241 (XTread_socket): Immediately return if interrupt_input_blocked.
c8d09ad8
SM
5242 Loop until all the events in the queue are processed.
5243 Rearrange codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
5244 contents of do_os_event and do_events. Remove mouse movement
5245 handling (now in do_mouse_moved). Add the case where
5246 Vmouse_highlight has an integer value.
5247 (NewMacWindow): Remove.
5248 (make_mac_frame): Do what NewMacWindow previously did. Don't do
5249 excess initializations.
5250 (make_mac_terminal_frame): Previous initializations in
5251 make_mac_frame are moved here.
c8d09ad8
SM
5252 (mac_initialize_display_info):
5253 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
5254
5255 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
5256 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
5257
08fd1251
RS
52582004-05-29 Richard M. Stallman <rms@gnu.org>
5259
5260 * lisp.h (truncate_undo_list): Update decl.
5261
5262 * alloc.c (undo_outer_limit): New variable.
5263 (syms_of_alloc): Defvar it.
5264 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
5265
5266 * undo.c (truncate_undo_list): New arg LIMITSIZE.
5267
5268 * alloc.c (lisp_align_malloc): Check for base == 0
5269 regardless of HAVE_POSIX_MEMALIGN.
5270 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
5271
227ef0ff
SM
52722004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5273
5274 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
5275 (marker_blocks_pending_free): Remove.
5276 (Fgarbage_collect): Sweep after cleaning up undo-lists.
5277 Mark the undo lists after claning them up.
5278 Don't free block in marker_blocks_pending_free.
5279 (mark_buffer): Don't mark undo_list.
5280 (gc_sweep): Sweep hash-tables and strings first.
5281 Do free marker blocks that are empty.
5282
034a6113
SM
52832004-05-28 Jim Blandy <jimb@redhat.com>
5284
5285 * regex.c (print_partial_compiled_pattern): Add missing 'break'
5286 after 'case wordend'. For symbeg and symend, print to stderr,
5287 like the other cases.
5288
33594a8d
NF
52892004-05-28 Noah Friedman <friedman@splode.com>
5290
5291 * process.c (Fdelete_process): Do not call remove_process.
5292
ce50a847
SM
52932004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5294
5295 * alloc.c (struct backtrace): Remove.
5296 (Fgarbage_collect): Use the new mark_backtrace.
5297
5298 * eval.c (mark_backtrace): New function.
5299
5300 * minibuf.c (run_exit_minibuf_hook): New function.
5301 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
5302 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
5303
1e8dae36
KS
53042004-05-27 Kim F. Storm <storm@cua.dk>
5305
5306 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
5307 over display properties, e.g. images, that replace buffer text.
5308
846faa3b
KS
53092004-05-25 Kim F. Storm <storm@cua.dk>
5310
5311 * alloc.c (marker_blocks_pending_free): New var.
5312 (gc_sweep): Store free marker blocks on that list.
5313 (Fgarbage_collect): Free them after undo-list cleanup.
5314
5315 * process.c (wait_reading_process_input): Check connect_wait_mask
5316 before actually accepting connection in case it has already been
5317 accepted due to recursion.
5318
b6189c3b 53192004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6239a668 5320
ce50a847
SM
5321 * coding.c (Fset_safe_terminal_coding_system_internal):
5322 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 5323
71d5a208
RS
53242004-05-22 Richard M. Stallman <rms@gnu.org>
5325
5326 * alloc.c (Fmake_string): Doc fix.
5327
5328 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
5329 and the alist pairs too.
5330
5331 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
5332
5333 * emacs.c (main): Update copyright year.
5334
5335 * fileio.c (Fread_file_name): Expand DIR if not absolute.
5336
5337 * insdel.c (del_range_2, replace_range): Don't write an anchor
5338 if the gap is empty.
5339
5340 * xdisp.c (try_scrolling): If scroll-up-aggressively or
5341 scroll-down-aggressively is small but positive, put point
5342 near the screen edge.
5343
f63fd14e
JB
53442004-05-22 Juanma Barranquero <lektu@terra.es>
5345
5346 * keymap.c (Fdefine_key): Doc fix.
5347
4d12067c
KS
53482004-05-22 Kim F. Storm <storm@cua.dk>
5349
5350 * alloc.c (struct backtrace): Add debug_on_exit member.
5351 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
5352 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
5353 the removed cons cells.
5354 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
5355 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
5356 any cons cells pointing to unallocated stings.
5357 Do not lisp_free any marker blocks, as there may still be pointers
5358 to them from buffer undo lists at this stage of GC.
5359
5360 * keyboard.c (struct backtrace): Add debug_on_exit member.
5361 (Fcommand_execute): Clear it.
5362
931285e2
LT
53632004-05-20 Luc Teirlinck <teirllm@auburn.edu>
5364
5365 * intervals.c (lookup_char_property): Do not prematurely return nil.
5366
669fa600
SM
53672004-05-19 Jim Blandy <jimb@redhat.com>
5368
5369 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 5370 beginning and end of symbols.
4d12067c 5371
669fa600
SM
5372 * regex.c (enum syntaxcode): Add Ssymbol.
5373 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
5374 (re_opcode_t): New opcodes `symbeg' and `symend'.
5375 (print_partial_compiled_pattern): Print the new opcodes properly.
5376 (regex_compile): Parse the new operators.
ce50a847 5377 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
5378 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
5379 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
5380 (re_match_2_internal): Match symbeg and symend.
5381
5382 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
5383
0d8c2e5c
KS
53842004-05-19 Kim F. Storm <storm@cua.dk>
5385
5386 * .gdbinit (xsymbol): Fix last change.
5387
669fa600
SM
53882004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
5389
5390 * .gdbinit (xprintstr): New fun.
5391 (xstring, xprintsym): Use it.
5392
5393 * w32proc.c (create_child): Use INTMASK.
5394
5395 * alloc.c (Fgarbage_collect): Do all the marking before flushing
5396 unmarked elements of the undo list.
5397
9a6a4c40
DP
53982004-05-18 David Ponce <david@dponce.com>
5399
5400 * print.c (print): Reset print_depth before to call print_object.
5401
f3c4ec74
JR
54022004-05-18 Jason Rumney <jasonr@gnu.org>
5403
5404 * w32console.c: Prefix RIF functions with w32con_ to avoid
5405 namespace clash with functions in term.c and w32term.c.
5406
5407 * w32menu.c (add_menu_item, w32_menu_display_help)
5408 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
5409
0d8c2e5c 5410 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 5411
6be49c3a
EZ
54122004-05-18 Eli Zaretskii <eliz@gnu.org>
5413
4d0b9a0a
EZ
5414 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
5415
6be49c3a
EZ
5416 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
5417 with make_number.
5418 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
5419 with XINT.
5420
0bc90bba
KS
54212004-05-18 Kim F. Storm <storm@cua.dk>
5422
89d19988
KS
5423 * blockinput.h (INPUT_BLOCKED_P): New macros.
5424
5425 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
5426 (Ftop_level): Unblock input if blocked.
5427
0bc90bba
KS
5428 * buffer.h (GET_OVERLAYS_AT): New macro.
5429 * msdos.c (IT_note_mouse_highlight): Use it.
5430 * textprop.c (get_char_property_and_overlay): Use it.
5431 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
5432 * xfaces.c (face_at_buffer_position): Use it.
5433
5434 * print.c (print_object): Increase buf size.
5435
653bd0f6
JR
54362004-05-17 Jason Rumney <jasonr@gnu.org>
5437
5438 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
5439 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
5440 Lisp_Object using i member.
5441 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
5442 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
5443 consistently.
5444
5445 * w32proc.c (create_child): Use make_number instead of masking pid.
5446
5447 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
5448 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
5449 Use EQ to compare Lisp_Objects.
5450 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
5451
5452 * w32term.c (w32_num_mouse_buttons): Rename from
5453 Vw32_num_mouse_buttons and make it an int.
5454
5455 * w32.c (init_environment): Use it.
5456
5457 * w32fns.c (w32_wnd_proc): Likewise.
5458
5459 * w32proc.c (w32_pipe_read_delay): Rename from
5460 Vw32_pipe_read_delay and make it an int.
5461
5462 * w32.c (_sys_read_ahead): Use it.
5463
5464 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
5465
5466 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
5467
5468 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
5469 (key_event): Don't mix Lisp_Object and int.
5470
5471 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
5472
5473 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
5474 modifiers in language change event.
5475
54b53ba7
KS
54762004-05-17 Kim F. Storm <storm@cua.dk>
5477
5478 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
5479 Such objects may be freed markers which still exist on an undo list.
5480
6e86a75d
JB
54812004-05-16 Juanma Barranquero <lektu@terra.es>
5482
5483 * data.c (Fset_default): Make argument names match their use in
5484 docstring.
5485
fc80da24
AS
54862004-05-15 Andreas Schwab <schwab@suse.de>
5487
5488 * emacs.c (gdb_array_mark_flag): Define.
5489 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
5490
c1380aa6
EZ
54912004-05-15 Eli Zaretskii <eliz@gnu.org>
5492
5493 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
5494 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
5495 defined for the MS-DOS build.
5496
89458937
SM
54972004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
5498
5499 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
5500
08020f9a
KH
55012004-05-14 Kenichi Handa <handa@m17n.org>
5502
5503 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
5504
a433994a
ST
55052004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5506
5507 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
5508 section to frame.c section.
5509 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 5510 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 5511
a433994a 5512 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 5513
a433994a 5514 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 5515
a433994a
ST
5516 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
5517 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
5518 (XTread_socket): Fix int/Lisp_Object mixup.
5519 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 5520
a433994a
ST
5521 * macterm.h (struct frame, struct face, struct image)
5522 (display_x_get_resource, Fx_display_color_p)
89458937
SM
5523 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
5524 Add prototypes.
a433994a 5525
b51a51b9
KS
55262004-05-14 Kim F. Storm <storm@cua.dk>
5527
5528 * process.c (wait_reading_process_input): Make reentrant.
5529 Make Available and Connecting non-static. Save and restore value
5530 of waiting_for_user_input_p.
5531
2bde1dd8
KS
55322004-05-13 Kim F. Storm <storm@cua.dk>
5533
5534 * keyboard.c (mark_kboards): Don't mark x and y members
5535 that are overloaded in selection request events.
5536
a267ab4d
SM
55372004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
5538
5539 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
5540
eb15ce9e
GM
55412004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
5542
5543 * window.c (Fdisplay_buffer, Fsplit_window)
5544 (split-height-threshold): Doc fix.
5545
7fc92635
JB
55462004-05-13 Juanma Barranquero <lektu@terra.es>
5547
5548 * xfaces.c (Ftty_supports_face_attributes_p)
5549 (Finternal_copy_lisp_face): Fix typo in docstring.
5550 (Finternal_get_lisp_face_attribute): Fix docstring.
5551
1ec2a572
JD
55522004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5553
5554 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
5555
ae9292e0
ST
55562004-05-11 Steven Tamm <steventamm@mac.com>
5557
5558 * macfns.c (Fx_create_frame): Default to using tool-bar by
5559 setting tool-bar-lines to 1 in default-frame-alist.
5560
55612004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
5562
5563 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
5564 (xpm_get_color_table_v, xpm_make_color_table_h)
5565 (xpm_put_color_table_h, xpm_get_color_table_h)
5566 (xpm_str_to_color_key, xpm_load_image, xpm_load)
5567 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 5568 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 5569
fe97e8df
ST
55702004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5571
a267ab4d 5572 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
5573 instead of FRAME_X_P
5574
b47e779e
KS
55752004-05-11 Kim F. Storm <storm@cua.dk>
5576
5577 * process.c (read_process_output): Grow decoding_buf when needed;
5578 this could cause a crash in allocate_string and compact_small_strings.
5579
cdc9b845
EZ
55802004-04-29 Jim Blandy <jimb@redhat.com>
5581
5582 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
5583 against proper opcode.
5584
aa7094ba
JB
55852004-05-10 Juanma Barranquero <lektu@terra.es>
5586
5587 * process.c (Fstart_process): Fix docstring.
5588
5589 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
5590 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
5591 (Fsplit_char, Fchar_charset): Make argument names match their use
5592 in docstring.
5593
e109331a
RS
55942004-05-10 Richard M. Stallman <rms@gnu.org>
5595
5596 * print.c (print_preprocess): Use being_printed, loop_count and
5597 halftail to detect overdeep nesting and cyclic cdr chains.
5598
9a28b921
AS
55992004-05-10 Andreas Schwab <schwab@suse.de>
5600
78819ebb 5601 * lisp.h (Fmake_symbolic_link): Declare.
9a28b921
AS
5602
5603 * fileio.c (Frename_file): Remove extra argument in call to
5604 Fmake_symbolic_link.
5605
e2c02c1a
KS
56062004-05-10 Kim F. Storm <storm@cua.dk>
5607
5608 * xdisp.c (calc_line_height_property): Use string position when
5609 object is a string.
5610
cfe9d13e
KH
56112004-05-10 Kenichi Handa <handa@m17n.org>
5612
a57e8159
KH
5613 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
5614 inhibit-modification-hooks to t temporarily before calling
5615 Ferase_buffer.
5616
5617 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
5618 inhibit-modification-hooks to t temporarily before calling
5619 Ferase_buffer.
5620
5621 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
5622 inhibit-modification-hooks to t temporarily before calling
5623 Ferase_buffer.
5624
cfe9d13e
KH
5625 * fns.c (count_combining): Delete it.
5626 (concat): Don't check combining bytes.
5627
ceb96489
JR
56282004-05-09 Jason Rumney <jasonr@gnu.org>
5629
5630 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
5631 (globals_of_w32fns): Set it.
5632
b6189c3b 56332004-05-09 Piet van Oostrum <piet@cs.uu.nl>
b1c661c7
JB
5634
5635 * data.c (Fquo): Simplify.
5636
28712a21
JB
56372004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
5638
5639 * data.c (Fquo): If any argument is float, do the computation in
5640 floating point.
5641
0f0af7a8
JB
56422004-05-08 Juanma Barranquero <lektu@terra.es>
5643
88214ef6
JB
5644 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
5645 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
5646 Fix spelling of Emacs on docstring.
5647 (Fset_process_coding_system, Fprocess_coding_system)
5648 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
5649 Make argument names match their use in docstring.
5650 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
5651 Fix docstring.
5652
0f0af7a8
JB
5653 * editfns.c (Finsert_buffer_substring): Make argument names match their
5654 use in docstring.
5655
5656 * syntax.c (Fmodify_syntax_entry): Fix docstring.
5657
2a316a84
ST
56582004-05-07 Steven Tamm <steventamm@mac.com>
5659
5660 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
5661 around call to ReceiveEvent to avoid certain crashes.
5662
56632004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 5664
2a316a84
ST
5665 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
5666 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
5667 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
5668 Save/restore the current graphics port and device handle when
5669 drawing into an offscreen graphics world.
5670
5671 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
5672 (gif_load): Likewise.
5673
ab80314b
JB
56742004-05-07 Juanma Barranquero <lektu@terra.es>
5675
5676 * window.c (Fset_window_buffer): Fix docstring.
5677
70646bb5
TTN
56782004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
5679
5680 * emacs.c (main) [VMS]: Fix var ref.
5681
b6189c3b 56822004-05-06 Romain Francoise <romain@orebokech.com>
b03a4fdd
JB
5683
5684 * data.c (Fsetq_default): Fix docstring.
5685
279d3293
JR
56862004-05-06 Jason Rumney <jasonr@gnu.org>
5687
5688 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
5689 to avoid name clash.
5690
f72b5416
JD
56912004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5692
5693 * fileio.c (barf_or_query_if_file_exists): Use lstat.
5694 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 5695 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 5696
6ab66799
KS
56972004-05-04 Kim F. Storm <storm@cua.dk>
5698
5699 * xdisp.c (Qtotal): New var.
5700 (syms_of_xdisp): Intern and staticpro it.
5701 (calc_line_height_property): New arg total. Set it if
5702 line-spacing property has format (total . VALUE).
5703 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
5704 Handle total line-spacing property.
5705
ab2d724b
JD
57062004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5707
5708 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
5709 "under" scroll bar when size/position changes.
5710
238add5e
JR
57112004-05-03 Jason Rumney <jasonr@gnu.org>
5712
5713 * makefile.nt: Remove.
5714
1644f4e4
EZ
57152004-05-02 Eli Zaretskii <eliz@gnu.org>
5716
a267ab4d
SM
5717 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
5718 Avoid compiler warnings.
05fdbeb8 5719
1644f4e4
EZ
5720 * Makefile.in (region-cache.o): Depend on config.h.
5721
b6189c3b 57222004-05-02 Romain Francoise <romain@orebokech.com>
6cbc951e
SM
5723
5724 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
5725 with continuation lines, too.
5726
2b98b088
TTN
57272004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
5728
5729 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
5730
d9bf7950
SM
57312004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
5732
5733 * xdisp.c (calc_line_height_property): YAILOM (yet another
5734 int/Lisp_Object mixup).
5735
affa509c
EZ
57362004-05-01 Eli Zaretskii <eliz@gnu.org>
5737
5738 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
5739 undo bad effect of pack(4) in some versions of system headers.
5740
07c07cfe
JR
57412004-05-01 Jason Rumney <jasonr@gnu.org>
5742
5743 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
5744
e71caa4e
KS
57452004-04-30 Kim F. Storm <storm@cua.dk>
5746
5747 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 5748 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
5749
5750 * dispextern.h (struct it): Remove member use_default_face.
5751 Add members override_ascent, override_descent, override_boff.
5752
5753 * xdisp.c (init_iterator): Handle line-spacing float value.
5754 Initialize override_ascent member.
5755 (append_space_for_newline): Reset override_ascent.
5756 Remove use_default_face.
5757 (calc_line_height_property): New function to calculate value of
5758 line-height and line-spacing properties. Look at overlays, too.
5759 Set override_ascent, override_descent, override_boff members when
5760 using another face than the current face. Float values are now
5761 relative to the frame default font, by default; accept a cons
5762 of ratio and face name to specify value relative to a specific face.
5763 (x_produce_glyphs): Use calc_line_height_property.
5764 Use override_ascent etc. when set to handle different face heights.
5765 A negative line-spacing property value is interpreted as a total
5766 line height, rather than inter-line spacing.
5767 (note_mouse_highlight): Allocate room for 40 overlays initially.
5768
0fddae66
SM
57692004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
5770
5771 * data.c (Fsubr_name): New fun.
5772 (syms_of_data): Defsubr it.
5773
712d23dc
KS
57742004-04-29 Kim F. Storm <storm@cua.dk>
5775
5776 * xdisp.c (null_glyph_slice): New var.
5777 (append_glyph, append_composite_glyph, append_stretch_glyph):
5778 Use it to initialize glyph slice.
5779
033ad8c6
SM
57802004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
5781
5782 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
5783 (on_hot_spot_p): Make sure we always return a value.
5784 (Flookup_image_map): Remove unused var ix and iy.
5785 (note_mode_line_or_margin_highlight): Remove unused var `image'.
5786
93397360
EZ
57872004-04-27 Eli Zaretskii <eliz@gnu.org>
5788
5789 * msdos.c (init_environment): If one of the TMP... environment
5790 variables is set to a drive letter without a trailing slash,
5791 append a slash.
5792
0c54865e
EZ
57932004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
5794
5795 * editfns.c (lisp_time_argument): Provide externally.
5796
5797 * fileio.c (Fset_file_times): New function.
5798 (syms_of_fileio): Intern and staticpro it.
5799
d3b111bd
KS
58002004-04-27 Kim F. Storm <storm@cua.dk>
5801
07dc1231
KS
5802 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
5803 header line strings.
5804
360fe9d2
KS
5805 * dispextern.h (struct it): New member use_default_face.
5806
d3b111bd
KS
5807 * xdisp.c (Qline_height): New variable.
5808 (syms_of_xdisp): Intern and staticpro it.
5809 (append_space_for_newline): Partially undo 2004-04-25 change;
5810 add default_face_p arg, and restore callers.
5811 Clear it->use_default_face after use.
5812 (x_produce_glyphs): Set default font for ascii char if
5813 it->use_default_font is set. Change line-spacing property to set
5814 just extra line spacing. Handle new line-height property.
5815
0448588b
AS
58162004-04-26 Andreas Schwab <schwab@suse.de>
5817
5818 * print.c (print_object): Print non-ascii characters in bool
5819 vector representation as octal escapes.
5820
5821 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
5822 * print.c (print_object): Use it instead of BITS_PER_CHAR for
5823 bool vectors.
5824 * lread.c (read1): Likewise.
5825 * alloc.c (Fmake_bool_vector): Likewise.
5826 * data.c (Faref, Faset): Likewise.
5827 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
5828 (mapcar1): Likewise.
d3b111bd 5829
536d6baa
ST
58302004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
5831
7e26f91b 5832 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
536d6baa 5833
ae11577a
MB
58342004-04-26 Miles Bader <miles@gnu.org>
5835
5836 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
5837
e198ba87
JB
58382004-04-26 Juanma Barranquero <lektu@terra.es>
5839
5840 * buffer.c (Fpop_to_buffer): Fix docstring.
5841
f3d5f92d 58422004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 5843
f3d5f92d
ST
5844 * lread.c (init_lread): Don't display missing lisp directory
5845 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 5846 may be built without correct installation path.
f3d5f92d 5847
03e35edc
KS
58482004-04-25 Kim F. Storm <storm@cua.dk>
5849
9ff3aa31
KS
5850 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5851
5852 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
5853
03e35edc
KS
5854 * xdisp.c (append_space_for_newline): Rename from append_space.
5855 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
5856 (x_produce_glyphs): Handle line-spacing property on newline char.
5857 If value is t, adjust ascent and descent to fit current row height.
5858 If value is an integer or float, set extra_line_spacing to integer
5859 value, or to float value x current line height.
5860
f24814e0
KH
58612004-04-23 Kenichi Handa <handa@m17n.org>
5862
5863 * fontset.c (Finternal_char_font): If POSITION is nil, return
5864 font for displaying CH with the default face.
5865
d814862a
JB
58662004-04-23 Juanma Barranquero <lektu@terra.es>
5867
5868 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
5869
063a45c5
SM
58702004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
5871
5872 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
5873 Don't make assumptions about the relative place of i and val.
5874 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
5875
ae7ab2d3
KS
58762004-04-21 Kim F. Storm <storm@cua.dk>
5877
5878 * dispextern.h (struct glyph_slice): New struct.
5879 (struct glyph): New member slice.
5880 (GLYPH_SLICE_EQUAL_P): New macro.
5881 (GLYPH_EQUAL_P): Use it.
5882 (struct glyph_string): New member slice.
5883 (struct it_slice): New struct.
5884 (struct it): New member slice, add member to stack too.
5885 New member constrain_row_ascent_descent_p.
5886 (image_ascent): Add prototype.
5887
5888 * dispnew.c (buffer_posn_from_coords): Return full image width
5889 and height even for image slices (posn is relative to full image).
5890 (marginal_area_string): Adjust x0,y0 for image slice.
5891
5892 * image.c (image_ascent): Add slice arg; calculate ascent for
5893 image slice (or full image).
5894
5895 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
5896 (syms_of_keyboard): Defsubr them.
5897
5898 * lisp.h (pos_visible_p): Fix prototype.
5899
c62aec78 5900 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
5901 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5902 (x_draw_image_foreground, x_draw_image_relief)
5903 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5904 Draw sliced images.
5905
5906 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
5907 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5908 (x_draw_image_foreground, x_draw_image_relief)
5909 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
5910 Draw sliced images.
5911
5912 * w32term.h (image_ascent): Remove prototype.
5913
5914 * window.c (Fpos_visible_in_window_p): Return pixel position if
5915 PARTIALLY arg is non-nil. Simplify. Doc fix.
5916 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
5917 to return/set vscroll in pixels.
5918
5919 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
5920
5921 * xdisp.c (Qslice): New variable.
5922 (syms_of_xdisp): Intern and staticpro it.
5923 (pos_visible_p): Return pixel position in new x and y args.
5924 (init_iterator): Reset it->slice info.
5925 (handle_display_prop): Parse (slice ...) property.
5926 (push_it, pop_it): Save/restore slice info.
5927 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
5928 force repositioning of tall row if window is vscrolled, as that
5929 would reset vscroll.
5930 (append_space): Set it->constrain_row_ascent_descent_p to avoid
5931 increasing row height if row is non-empty.
5932 (fill_image_glyph_string): Copy slice info.
5933 (take_vertical_position_into_account): Simplify.
5934 (produce_image_glyph): Handle iterator slice info, setup glyph
5935 slice info. Do not force minimum line height.
5936 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
5937 do not increase height (ascent/descent) of non-empty row when
5938 adding normal character glyph; instead reduce glyph ascent/descent
5939 appropriately; if row is higher than current glyph, adjust glyph
5940 descent/ascent to reposition glyph within the existing row.
5941 Likewise, when char is newline, only set ascent/descent if row is
5942 currently empty.
5943 (note_mouse_highlight): Handle hotspots with sliced image.
5944
5945 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
5946 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
5947 (x_draw_image_foreground, x_draw_image_relief)
5948 (x_draw_image_foreground_1, x_draw_image_glyph_string):
5949 Draw sliced images.
5950
5951 * xterm.h (image_ascent): Remove prototype.
5952
d58f8753
SM
59532004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
5954
5955 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
5956
4ce2719d
JPW
59572004-04-20 John Paul Wallington <jpw@gnu.org>
5958
5959 * fns.c (Fassoc, Feql): Fix indentation.
5960
d58f8753 5961 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 5962
95f8c3b9
JPW
59632004-04-19 John Paul Wallington <jpw@gnu.org>
5964
5965 * fns.c (Feql): New function.
d58f8753 5966 (syms_of_fns): Defsubr it.
95f8c3b9 5967
b7e85537
JR
59682004-04-18 Jason Rumney <jasonr@gnu.org>
5969
5970 * w32select.c (Fw32_set_clipboard_data): Get sequence number
5971 after closing the clipboard.
5972
5a72efd4
LT
59732004-04-16 Luc Teirlinck <teirllm@auburn.edu>
5974
5975 * buffer.c (Fbuffer_base_buffer): Doc fix.
5976
20dc8583
KS
59772004-04-17 Kim F. Storm <storm@cua.dk>
5978
60962ec4
KS
5979 * keymap.c (Fkey_description): Add optional PREFIX arg.
5980 Combine prefix with KEYS to make up the full key sequence to describe.
5981 Correlate meta_prefix_char and following (simple) key to describe
5982 as meta modifier. All callers changed.
5983 (describe_map): Rename arg `keys' to `prefix'. Remove local
5984 `elt_prefix' var. Use Fkey_description with prefix instead of
5985 elt_prefix combined with Fsingle_key_description.
5986 (describe_vector): Declare static. Replace arg `elt_prefix' with
5987 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
5988 if !KEYMAP_P. Use Fkey_description with prefix instead of
5989 Fsingle_key_description.
5990
5991 * keymap.h (Fkey_description): Fix prototype.
5992 (describe_vector): Remove prototype.
5993
409368b9
KS
5994 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
5995
20dc8583
KS
5996 * image.c (PNG_BG_COLOR_SHIFT): Remove.
5997 (png_load): Fix calculation of transparent background color on X
5998 and W32 platforms.
5999
75c5501b
JB
60002004-04-16 Juanma Barranquero <lektu@terra.es>
6001
6002 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
6003 not too large before computing how much to scroll.
6004
da879ae8
SM
60052004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
6006
6007 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
6008
d01ca4a8
LT
60092004-04-14 Luc Teirlinck <teirllm@auburn.edu>
6010
6011 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
6012 Add hyperlink to Elisp manual to the docstring.
6013
572943b3
SM
60142004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
6015
6016 * callint.c (fix_command): Use XDCR.
6017
5e30a0fb
NR
60182004-04-14 Nick Roberts <nick@nick.uklinux.net>
6019
6020 * window.c (Fget_lru_window): Doc fix.
6021
a27ddfaf
KS
60222004-04-14 Kim F. Storm <storm@cua.dk>
6023
6024 * editfns.c (Fformat): Fix allocation size of precision array.
6025
6026 * dispnew.c (update_window): Only set changed_p if
6027 scrolling_window actually did scroll.
6028 (scrolling_window): Only return 1 if we actually did scroll.
6029
6030 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
6031 height to glyph height when cursor row is not fully visible.
6032 (make_cursor_line_fully_visible): Add FORCE_P arg to return
6033 failure in case row is higher than window. Callers changed.
6034 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
6035 Try to scroll partially visible, higher-than-window cursor row.
6036 (redisplay_window): Always try to scroll partially visible,
6037 higher-than-window cursor row - both initially and again with
6038 centering_position = 0.
6039 Clear desired matrix before retrying with centering_position = 0.
6040
da879ae8
SM
60412004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
6042
6043 * syntax.c (scan_lists): Simplify backward string scan.
6044 Fix off-by-one boundary check for string and comment fences.
6045
5fc16e8e
SM
60462004-04-13 Joe Buehler <jbuehler@hekimian.com>
6047
6048 * sheap.c, unexcw.c: New files.
6049
c9aac8e6
LT
60502004-04-12 Luc Teirlinck <teirllm@auburn.edu>
6051
6052 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
6053 base buffer has been killed. Correct the error message if the
6054 base buffer does not exist.
6055
1e88a355
SM
60562004-04-12 Joe Buehler <jbuehler@hekimian.com>
6057
6058 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
6059 Cygwin itself. Add support for Xaw3d scrollbars.
6060
6061 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
6062
6063 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
6064
6065 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
6066 before Cygwin unexec.
6067
6068 * Makefile.in: Link changes for Cygwin unexec() support.
6069
8dbff9a0
AS
60702004-04-12 Andreas Schwab <schwab@suse.de>
6071
6072 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
6073
54dffe35
LT
60742004-04-11 Luc Teirlinck <teirllm@auburn.edu>
6075
6076 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
6077 IGNORE argument equals NAME. Doc fix.
6078
99a72bdf
MY
60792004-04-11 Masatake YAMATO <jet@gyve.org>
6080
1e88a355 6081 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
6082 empty if they are backwards.
6083
40899d7b
SM
60842004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6085
6086 * xfaces.c (face_color_supported_p): Fix compilation without X11.
6087
f8f853de
SM
60882004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
6089
6090 * doc.c (Fsnarf_documentation): Ignore new file name entries.
6091
c953fe1b
KS
60922004-04-06 Kim F. Storm <storm@cua.dk>
6093
661e85c1
KS
6094 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
6095 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
6096
6097 * w32term.c (w32_read_socket): Set mouse_face_hidden after
6098 clearing highlight.
6099
6100 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
6101
6102 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
6103 clearing highlight.
6104
c953fe1b
KS
6105 * indent.c (vmotion): Do not reserve one column for continuation
6106 marks on window frames.
6107
c1994268
EZ
61082004-04-04 Eli Zaretskii <eliz@gnu.org>
6109
6110 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
6111 from GCC.
6112
9f691b0d
SM
61132004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
6114
6115 * .gdbinit-union: Remove.
6116
6117 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
6118 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
6119 ($nonvalbits): Remove.
6120 ($valmask): Set it by calling xreload to avoid redundancy.
6121
6122 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
6123 (gdb_emacs_intbits): Remove.
6124
7a8560d7
JD
61252004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6126
9f691b0d 6127 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 6128
3c8111fc
KH
61292004-03-30 Kenichi Handa <handa@m17n.org>
6130
6131 * editfns.c (Fformat): Fix initialization of the array info.
6132
48a0bce4
KS
61332004-03-30 Kim F. Storm <storm@cua.dk>
6134
6135 * xterm.c (x_mouse_click_focus_ignore_position): New var.
6136 (syms_of_xterm): DEFVAR_BOOL it.
6137 (ignore_next_mouse_click_timeout): New var.
6138 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
6139 Use it to filter mouse clicks following focus event.
6140
1cd0066c
KS
61412004-03-29 David Ponce <david@dponce.com>
6142
6143 * callint.c (Fcall_interactively): Fix last change.
6144
adb3b353
SM
61452004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
6146
6147 * eval.c (Fcommandp): Simplify.
6148
6149 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
6150 Extend to handle all kinds of functions.
6151
6152 * lisp.h (Finteractive_form): Declare.
6153
6154 * callint.c (Fcall_interactively): Use it.
6155
6fc4c9c9
KS
61562004-03-26 Kim F. Storm <storm@cua.dk>
6157
6158 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
6159 to catch errors in calc_pixel_width_or_height during redisplay.
6160
abdb9b83
MY
61612004-03-26 Masatake YAMATO <jet@gyve.org>
6162
b17856dd 6163 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 6164
b17856dd 6165 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 6166
b17856dd 6167 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 6168
b17856dd 6169 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 6170
e8a84b6c
JD
61712004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6172
b17856dd 6173 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 6174
36a3fd05
RS
61752004-03-19 Richard M. Stallman <rms@gnu.org>
6176
6177 * s/sol2-6.h: Delete previous change.
6178
ab24c127
KS
61792004-03-19 Kim F. Storm <storm@cua.dk>
6180
6181 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
6182 to_charpos corresponds to newline in right fringe. Use local
6183 BUFFER_POS_REACHED_P macro.
6184
992126de
JD
61852004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6186
6187 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
6188 to compile on non-window system.
6189
45dbfc84
KS
61902004-03-19 Kim F. Storm <storm@cua.dk>
6191
6192 * dispextern.h (calc_pixel_width_or_height): Add prototype.
6193
6194 * image.c (Qcenter): Move to xdisp.c.
6195
6196 * xdisp.c (Qcenter): Declare here.
adb3b353 6197 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
6198 (handle_single_display_prop): Allow space display property on all
6199 platforms.
6200 (display_mode_line): Set mode_line_p before displaying line.
6201 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
6202 handling. Remove complex cases for fringes and scroll-bars.
6203 Add left, right, and center alignment positions. Add text (area)
6204 width/height. Return width or height for image specs.
6205 (produce_stretch_glyph): Improve handling of :align-to. Is now
6206 relative to left of text area by default, but other base offsets
6207 can be specified -- also for text lines.
6208
6209 * term.c (produce_glyphs): Handle IT_STRETCH.
6210 (produce_stretch_glyph): New function to handle space width and
6211 align-to display properties on non-window systems.
6212
37264101
SM
62132004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
6214
6215 * fileio.c (Fread_file_name): Set completion-ignore-case for
6216 case-insensitive systems.
6217
73bc43da
MY
62182004-03-14 Masatake YAMATO <jet@gyve.org>
6219
6220 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
6221 when keymap and cursor are setup.
6222
d5fb8dab 62232004-03-14 Steven Tamm <steventamm@mac.com>
9062aa89 6224
b17856dd 6225 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 6226
e4b1b5ab
KS
62272004-03-14 Kim F. Storm <storm@cua.dk>
6228
6229 * dispextern.h (x_find_image_file): Add prototype.
6230
6231 * image.c (x_find_image_file): Make extern.
6232
6233 * xfns.c (x_find_image_file): Remove prototype.
6234
a6eeaa81 62352004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 6236
37264101 6237 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 6238
37264101 6239 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 6240
e69cfac2
RS
62412004-03-12 Richard M. Stallman <rms@gnu.org>
6242
6243 * fns.c (internal_equal): New arg PROPS controls comparing
6244 text properties. All callers changed.
6245 (Fequal_including_properties): New function.
6246 (syms_of_fns): defsubr it.
6247
45034953
KS
62482004-03-12 Kim F. Storm <storm@cua.dk>
6249
6250 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 6251
45034953
KS
6252 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
6253 (image_background, image_background_transparent): Fix prototypes.
6254
37264101 6255 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
6256
6257 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
6258 (x_query_font, x_find_ccl_program, x_set_window_size)
6259 (x_make_frame_visible, mac_initialize, XCreatePixmap)
6260 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
6261 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
6262
6263 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
6264 (x_query_font, x_find_ccl_program, x_set_window_size)
6265 (x_make_frame_visible, mac_initialize, XCreatePixmap)
6266 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
6267 (mac_draw_line_to_pixmap): Add prototypes.
6268
62692004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6270
6271 * macterm.c (XTread_socket): Fix mouse click on tool bar.
6272
a12d3d87
KS
62732004-03-11 Kim F. Storm <storm@cua.dk>
6274
d3ab1cf1
KS
6275 * dispextern.h: Move image related prototypes from xfns.c section
6276 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
6277 HAVE_X_WINDOWS.
37264101 6278
37de9f51 6279 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 6280 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
6281 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
6282 (GTK_OBJ) [USE_GTK]: New declaration.
6283 (obj): Add $(GTK_OBJ) to list.
6284
d5fb8dab 62852004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 6286
7e26f91b 6287 * image.c [MAC_OSX]: Include sys/stat.h.
5243c06a
ST
6288
6289 * macfns.c (syms_of_macfns): Remove definitions of things now
7e26f91b 6290 defined in image.c.
5243c06a 6291
c0f97789
KS
62922004-03-11 Kim F. Storm <storm@cua.dk>
6293
6294 The following changes consolidates the identical/similar image
6295 support code previously found in xfns.c, w32fns.c, and macfns.c
6296 into a new file image.c.
6297
6298 * makefile.w32-in (OBJ1): Add image.o.
6299 ($(BLD)/image.$(O)): Add dependencies.
6300
6301 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
6302 (image.o): Add dependencies.
37264101 6303
c0f97789
KS
6304 * image.c: New file with consolidated image support code.
6305 (COLOR_TABLE_SUPPORT): New define to control whether
6306 color table support is available (X only).
6307 (Bitmap_Record): Common name for x_bitmap_record,
6308 w32_bitmap_record, and mac_bitmap_record.
6309 (XImagePtr): Common name for pointer to XImage or equivalent.
6310 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
6311 to XImagePtr on X+MAC, and to HDC on W32.
6312 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
6313 (NO_PIXMAP): Common name for "None" or equivalent.
6314 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
6315 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
6316 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
6317 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
6318 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
6319 (XDrawLine): Define on MAC for code sharing.
6320 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
6321 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
6322 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6323 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6324 (x_reference_bitmap, x_create_bitmap_from_data)
6325 (x_create_bitmap_from_file, x_destroy_bitmap)
6326 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6327 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6328 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6329 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6330 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6331 (define_image_type, lookup_image_type, valid_image_p)
6332 (image_error, enum image_value_type, struct image_keyword)
6333 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6334 (make_image, free_image, prepare_image_for_display, image_ascent)
6335 (four_corners_best, image_background, image_background_transparent)
6336 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6337 (make_image_cache, free_image_cache, clear_image_cache)
6338 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6339 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6340 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6341 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
6342 (init_image_func_pointer, image_load_quartz2d)
6343 (struct ct_color, init_color_table, free_color_table)
6344 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6345 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6346 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6347 (x_disable_image, x_build_heuristic_mask)
6348 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6349 (TIFF support, GIF support, Ghostscript support): Consolidate image
6350 code from xfns.c, w32fns.c, and macfns.c.
6351 (syms_of_image): Consolidate image related symbol setup here.
6352 (init_image): Consolidate image related initializations here.
37264101 6353
c0f97789
KS
6354 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
6355 and init_image. Remove call to init_xfns.
6356
37264101
SM
6357 * macterm.h (struct mac_bitmap_record): Add file member.
6358 Not currently used, but simplifies code sharing.
c0f97789
KS
6359
6360 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6361 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6362 (x_reference_bitmap, x_create_bitmap_from_data)
6363 (x_create_bitmap_from_file, x_destroy_bitmap)
6364 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6365 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6366 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6367 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6368 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6369 (define_image_type, lookup_image_type, valid_image_p)
6370 (image_error, enum image_value_type, struct image_keyword)
6371 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6372 (make_image, free_image, prepare_image_for_display, image_ascent)
6373 (four_corners_best, image_background, image_background_transparent)
6374 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6375 (make_image_cache, free_image_cache, clear_image_cache)
6376 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6377 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6378 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6379 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
6380 (init_image_func_pointer, image_load_quartz2d)
6381 (struct ct_color, init_color_table, free_color_table)
6382 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6383 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6384 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6385 (x_disable_image, x_build_heuristic_mask)
6386 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6387 (TIFF support, GIF support, Ghostscript support): Merge with image
6388 code from xfns.c and macfns.c into image.c.
6389 (syms_of_xfns): Move image related symbols to image.c.
6390 (init_external_image_libraries, init_xfns): Remove; initialization
6391 moved to init_image in image.c.
6392
6393 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6394 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6395 (x_reference_bitmap, x_create_bitmap_from_data)
6396 (x_create_bitmap_from_file, x_destroy_bitmap)
6397 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6398 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6399 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6400 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6401 (define_image_type, lookup_image_type, valid_image_p)
6402 (image_error, enum image_value_type, struct image_keyword)
6403 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6404 (make_image, free_image, prepare_image_for_display, image_ascent)
6405 (four_corners_best, image_background, image_background_transparent)
6406 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6407 (make_image_cache, free_image_cache, clear_image_cache)
6408 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6409 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6410 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6411 (struct ct_color, init_color_table, free_color_table)
6412 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6413 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6414 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6415 (x_disable_image, x_build_heuristic_mask)
6416 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6417 (TIFF support, GIF support, Ghostscript support): Merge with image
6418 code from xfns.c and macfns.c into image.c.
6419 (syms_of_xfns): Move image related symbols to image.c.
6420 (init_external_image_libraries, init_xfns): Remove; initialization
6421 moved to init_image in image.c.
6422
6423 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
6424 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6425 (x_reference_bitmap, x_create_bitmap_from_data)
6426 (x_create_bitmap_from_file, x_destroy_bitmap)
6427 (x_destroy_all_bitmaps, x_create_bitmap_mask)
6428 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
6429 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
6430 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
6431 (define_image_type, lookup_image_type, valid_image_p)
6432 (image_error, enum image_value_type, struct image_keyword)
6433 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
6434 (make_image, free_image, prepare_image_for_display, image_ascent)
6435 (four_corners_best, image_background, image_background_transparent)
6436 (x_clear_image_1, x_clear_image, x_alloc_image_color)
6437 (make_image_cache, free_image_cache, clear_image_cache)
6438 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
6439 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
6440 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
6441 (struct ct_color, init_color_table, free_color_table)
6442 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
6443 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
6444 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
6445 (x_disable_image, x_build_heuristic_mask)
6446 (XBM support, XPM support, PBM support, PNG support, JPEG support)
6447 (TIFF support, GIF support, Ghostscript support): Merge with
6448 w32fns.c and macfns.c image code into image.c.
6449 (syms_of_xfns): Move image related symbols to image.c.
6450 (init_xfns): Remove; initialization moved to init_image in image.c.
6451
6452 * lisp.h (syms_of_image, init_image): Add protoypes.
6453 (init_xfns): Remove prototype.
6454
6455 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6456 (x_reference_bitmap, x_create_bitmap_from_data)
6457 (x_create_bitmap_from_file, x_destroy_bitmap)
6458 (x_create_bitmap_mask): Move prototypes from dispextern.h.
6459 (gamma_correct) [MAC_OS]: Add prototype.
6460
6461 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
6462 (x_reference_bitmap, x_create_bitmap_from_data)
6463 (x_create_bitmap_from_file, x_destroy_bitmap)
6464 (x_create_bitmap_mask): Move prototypes to dispextern.h.
6465
6eced09c
KH
64662004-03-09 Kenichi Handa <handa@etlken2>
6467
6468 * coding.c (decode_coding_emacs_mule): Handle insufficent source
6469 correctly.
6470
9a7e95f3
RS
64712004-03-04 Richard M. Stallman <rms@gnu.org>
6472
04a6e76b
RS
6473 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
6474
9a7e95f3
RS
6475 * window.c (Fdisplay_buffer): Doc fix.
6476
6477 * buffer.c (Fpop_to_buffer): Doc fix.
6478
6c2488df
KS
64792004-03-03 Kim F. Storm <storm@cua.dk>
6480
6481 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
6482
d8d95bc7
SM
64832004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
6484
6485 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
6486
357589bf
RS
64872004-03-02 Richard M. Stallman <rms@gnu.org>
6488
6489 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
6490
409949b5
KH
64912004-03-02 Kenichi Handa <handa@m17n.org>
6492
6493 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
6494
d24bc50f
KS
64952004-03-02 Kim F. Storm <storm@cua.dk>
6496
6497 * window.h (struct window): New member overlay_arrow_bitmap.
6498
6499 * window.c (make_window): Initialize overlay_arrow_bitmap.
6500
6501 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
6502 implement and integrate multiple overlay arrows with redisplay.
6503 (syms_of_xdisp): DEFVAR_LISP and initialize it.
6504 (last_arrow_position, last_arrow_string): Replace by properties.
6505 (Qlast_arrow_position, Qlast_arrow_string)
6506 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
6507 (syms_of_xdisp): Intern and staticpro them.
6508 (overlay_arrow_string_or_property, update_overlay_arrows)
6509 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
6510 (overlay_arrow_at_row): New functions for multiple overlay arrows.
6511 (redisplay_internal): Use them instead of directly accessing
6512 Voverlay_arrow_position etc. for multiple overlay arrows.
6513 (mark_window_display_accurate): Use update_overlay_arrows.
6514 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
6515 (try_window_id): Use overlay_arrows_changed_p.
6516 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
6517 (display_line): Use overlay_arrow_at_row to check multiple
6518 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 6519 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
6520 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
6521 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
6522
6523 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
6524 (update_window_fringes): Remove unused code.
6525
c1464661
JR
65262004-03-01 Jason Rumney <jasonr@gnu.org>
6527
6528 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
6529
a64387ee
JB
65302004-03-01 Juanma Barranquero <lektu@terra.es>
6531
6532 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
6533
6534 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
6535
334faa08
JD
65362004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6537
6538 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
6539 how many colors can be displayed.
6540
bb62616f
KH
65412004-03-01 Kenichi Handa <handa@m17n.org>
6542
6543 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
6544 correctly.
6545
0fd16104
KS
65462004-02-28 Kim F. Storm <storm@cua.dk>
6547
6548 * dispnew.c (update_window): Update header line also if there are
6549 no other changes in window (move code after set_cursor label).
6550
6551 * lisp.h (mark_window_display_accurate): Remove prototype.
6552
6553 * window.c (window_loop, Fforce_window_update): Force mode line
6554 updates by setting prevent_redisplay_optimizations_p and
6555 update_mode_lines.
6556
b59dd9c8
JD
65572004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6558
d8d95bc7 6559 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
6560
6561 * xterm.c (x_calc_absolute_position): Call x_real_positions
6562 to get WM window sizes and use those to calculate position.
d8d95bc7 6563 (x_set_offset): Remove code commented out.
b59dd9c8 6564
a874691c
MB
65652004-02-28 Miles Bader <miles@gnu.org>
6566
6567 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
6568
3e0c6482
KS
65692004-02-28 Kim F. Storm <storm@cua.dk>
6570
6571 * keyboard.c (kbd_buffer_store_event_hold): New function to store
6572 an event into kbd fifo, but with special handling of quit event;
6573 a quit event is saved for later, and further events are discarded
6574 until the saved quit event has been processed.
6575 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
6576 (gen_help_event): Store help event in kbd fifo.
6577 (NREAD_INPUT_EVENTS): Remove.
6578 (read_avail_input): Adapt to new read_socket_hook interface.
6579 Remove allocation and initialization of local input_event buffer,
6580 as read_socket_hook stores events directly in fifo. Allocate and
6581 initialize local hold_quit event to handle postponed quit event
6582 (and store it if set by kbd_buffer_store_event_hold).
6583
6584 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
6585 (gen_help_event): Fix prototype.
6586
a64387ee 6587 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 6588 numcharsp args. Add hold_quit arg.
f63fd14e 6589 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
6590 directly in fifo using kbd_buffer_store_event_hold.
6591
6592 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
6593 (read_input_waiting): Adapt to new read_socket_hook interface.
6594 Remove allocation and initialization of local input_event buffer,
6595 as read_socket_hook stores events directly in fifo. Allocate and
6596 initialize local hold_quit event to handle postponed quit event
6597 (and store it if set by kbd_buffer_store_event_hold).
6598
a64387ee 6599 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
6600
6601 * termhooks.h (read_socket_hook): Fix prototype.
6602
6603 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
6604 numcharsp args. Add hold_quit arg.
f63fd14e 6605 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
6606 directly in fifo using kbd_buffer_store_event_hold.
6607
6608 * w32inevt.h (w32_console_mouse_position): Fix prototype.
6609
6610 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
6611 Add hold_quit arg. Rework to use just one, local, inev
6612 input_event. Store inev directly in fifo using
3e0c6482
KS
6613 kbd_buffer_store_event_hold. Update count in one place.
6614 Postpone call to gen_help_event until inev is stored; use new
6615 local do_help for this.
6616 Remove local emacs_event in handing of ButtonPress event; just use
6617 inev instead (so no reason to copy it later).
6618
6619 * xsmfns.c (x_session_check_input): Remove numchars arg.
6620
d8d95bc7
SM
6621 * xterm.c (x_focus_changed, x_detect_focus_change):
6622 Remove numchars arg. Always store event into bufp arg.
6623 Return nothing. Callers changed accordingly.
3e0c6482
KS
6624 (glyph_rect): Simplify.
6625 (STORE_KEYSYM_FOR_DEBUG): New macro.
6626 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
6627 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
6628 (current_hold_quit) [USE_GTK]: Add.
6629 (event_handler_gdk): Adapt to new handle_one_xevent.
6630 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
6631 Add hold_quit arg. Rework to use just one, local, inev
6632 input_event. Store inev directly in fifo using
3e0c6482
KS
6633 kbd_buffer_store_event_hold. Update count in one place.
6634 Postpone call to gen_help_event until inev is stored; use new
6635 local do_help for this.
6636 Simplify handling of keysyms (consolidate common code). Fix bug
6637 where count was updated with nchars instead of nbytes.
6638 Remove local emacs_event in handing of ButtonPress event; just use
6639 inev instead (so no reason to copy it later).
6640 Remove `out' label. Rename label `ret' to `done'; add various
6641 `goto done' to clarify code flow in deeply nested blocks.
6642 (x_dispatch_event): Simplify as handle_one_xevent now calls
6643 kbd_buffer_store_event itself.
f63fd14e 6644 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
6645 arg. Call handle_one_xevent with new arglist. Store event from
6646 x_session_check_input in fifo.
6647 [USE_GTK]: Setup current_hold_quit.
6648 Decrement handling_signal before unblocking input.
6649 (x_initialize) [USE_GTK]: Initialize current_count.
6650
6651 * xterm.h (x_session_check_input): Fix prototype.
6652
e3564461 66532004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 6654
d8d95bc7 6655 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 6656
e3564461
ST
6657 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
6658 macgui.h).
a64387ee 6659
e3564461 6660 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 6661
e3564461
ST
6662 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
6663 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
6664 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
6665 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
6666 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
6667 (Bitmap): Remove typedef.
6668 (Pixmap): Change int to GWorldPtr.
6669
d8d95bc7 6670 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 6671
d8d95bc7
SM
6672 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
6673 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
6674 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
6675 long representation.
6676 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
6677 colors used for masks.
6678 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 6679
e3564461
ST
6680 * macfns.c: Include sys/types.h and sys/stat.h.
6681 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
6682 Include QuickTime/QuickTime.h.
6683 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6684 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
6685 functions defined in macterm.c.
6686 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
6687 (ZPixmap): New #define for compatibility with xfns.c.
6688 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6689 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
6690 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
6691 New functions.
e3564461 6692 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
6693 (x_destroy_x_image, unwind_create_frame, x_disable_image)
6694 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
6695 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
6696 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
6697 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
6698 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
6699 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
6700 long mixup.
6701 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
6702 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
6703 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
6704 (x_set_cursor_type, Fxw_color_values, valid_image_p)
6705 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
6706 (x_alloc_image_color, clear_image_cache, lookup_image)
6707 (x_find_image_file, xbm_read_bitmap_file_data)
6708 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
6709 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
6710 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
6711 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
6712 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 6713 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
6714 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
6715 #if 0.
6716 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
6717 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
6718 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
6719 New functions (from xfns.c).
e3564461
ST
6720 (Fx_create_frame): Record unwind_create_frame.
6721 (Fxw_display_color_p): Use dpyinfo->color_p.
6722 (Fx_display_grayscale_p, Fx_display_planes): Don't use
6723 dpyinfo->n_cbits.
6724 (Fx_display_color_cells): Use dpyinfo->n_planes;
6725 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
6726 (Qheuristic, cross_disabled_images, emboss_matrix)
6727 (laplace_matrix): New variables (from xfns.c).
6728 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
6729 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
6730 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
6731 (image_background_transparent): New function (from xfns.c).
6732 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6733 (image_load_quicktime): Add declaration.
6734 [MAC_OSX] (image_load_quartz2d): Likewise.
6735 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
6736 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 6737 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
6738 (xbm_load_image_from_file, x_laplace_read_row)
6739 (x_laplace_write_row, pbm_read_file): Remove functions.
6740 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
6741 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
6742 (colors_in_color_table): Sync with xfns.c (although not used).
6743 (lookup_rgb_color): Don't lookup color table. Just do gamma
6744 correction.
6745 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
6746 (x_disable_image): New function (from xfns.c).
6747 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
6748 (x_build_heuristic_mask): Sync with xfns.c.
6749 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6750 (HAVE_PBM): Remove #ifdef.
6751 (pbm_load): Sync with xfns.c. Set img->width and img->height
6752 before IMAGE_BACKGROUND.
d8d95bc7 6753 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
6754 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
6755 Don't enclose with #if HAVE_PNG.
6756 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
6757 symbol _CGImageCreateWithPNGDataProvider is defined.
6758 Otherwise use image_load_quicktime.
e3564461 6759 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
6760 [HAVE_PNG] (png_load): Sync with xfns.c.
6761 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
6762 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
6763 HAVE_JPEG.
6764 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
6765 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
6766 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
6767 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
6768 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
6769 (tiff_image_p, tiff_load): Don't enclose declarations with #if
6770 HAVE_TIFF.
6771 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
6772 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
6773 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
6774 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
6775 New functions (from xfns.c).
e3564461 6776 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 6777 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
6778 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
6779 Don't enclose with #if HAVE_GIF.
6780 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
6781 animated gif. Otherwise use image_load_quicktime.
6782 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
6783 gif_DrawText to avoid conflict with QuickdrawText.h.
6784 [HAVE_GIF] (gif_load): Sync with xfns.c.
6785 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
6786 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
6787 Ghostscript is not supported yet).
6788 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
6789 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
6790 cross_disabled_images (from xfns.c). Remove #if 0 for supported
6791 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
6792 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
6793 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
6794 HAVE_PNG. Call EnterMovies to support animated gifs.
6795 Call init_image_func_pointer to bind a symbol
e3564461 6796 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 6797
d8d95bc7 6798 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
6799 (x_draw_bar_cursor): Sync declaration with xterm.c.
6800 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
6801 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
6802 graphics).
6803 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
6804 (mac_draw_line_to_pixmap, XCreatePixmap)
6805 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
6806 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
6807 New functions.
6808 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
6809 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
6810 Cast bits to char *.
e3564461
ST
6811 (reflect_byte): New function (from w32fns.c).
6812 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
6813 due to byte alignment.
d8d95bc7
SM
6814 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
6815 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
6816 (XSetForeground): Remove static (now used in macfns.c).
6817 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
6818 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
6819 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
6820 (x_draw_glyph_string_box, x_draw_image_foreground)
6821 (x_draw_image_foreground_1, x_draw_image_glyph_string)
6822 (x_draw_stretch_glyph_string, x_draw_glyph_string)
6823 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
6824 Sync with xterm.c.
6825 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
6826 than the xterm.c version when a strictly horizontal or vertical
6827 line is drawn.
6828 (XTset_terminal_window): Add static.
6829 (x_make_frame_visible): Add UNBLOCK_INPUT.
6830 (x_free_frame_resources): New funcion (from xterm.c).
6831 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
6832 occurs in tool bar area.
d8d95bc7
SM
6833 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
6834 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
6835 Initialize image cache.
6836 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
6837 Enclose unused functions with #if 0.
6838 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
6839 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 6840 from a mac font name to an XLFD font name according to its script code.
e3564461 6841 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 6842 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
6843 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
6844 whose name starts with `.'.
6845 (init_font_name_table): Use decode_mac_font_name. Add both
6846 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
6847 of a font is smJapanese.
6848 (mac_do_list_fonts): New function to list fonts that match a given
6849 pattern.
6850 (x_list_fonts, XLoadQueryFont): Use it.
6851 (XLoadQueryFont): Set rbearing field for each variable width
6852 character to avoid needless redraw.
6853 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
6854
446f5f3d
KS
68552004-02-26 Kim F. Storm <storm@cua.dk>
6856
af617d0f
KS
6857 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
6858 as read_socket_hook handler on X aborts if buffer is too small
6859 and W32 handler doesn't always check buffer limit.
6860
446f5f3d
KS
6861 * xdisp.c (handle_single_display_prop): Handle left-fringe and
6862 right-fringe similar to a display margin image. Specifically,
6863 the characters having the fringe prop are no longer shown, and
6864 we use IT_IMAGE/next_element_from_image with image_id = -1 to
6865 do this. Set fringe bitmap face_id in it->face_id.
6866 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
6867 still realize it->face (i.e. the fringe bitmap face).
6868
7d8a0b55
MB
68692004-02-25 Miles Bader <miles@gnu.org>
6870
6871 * xdisp.c (check_it): Check string/string_pos consistency.
6872 (init_iterator): Initialize string-related fields properly.
6873
68742004-02-11 Miles Bader <miles@gnu.org>
6875
6876 * xdisp.c (produce_image_glyph): Force negative descents to zero.
6877
68782004-02-10 Miles Bader <miles@gnu.org>
6879
6880 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
6881 BLOCK_INPUT can be nested, so it doesn't make much sense.
6882
a64387ee 68832004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
6884
6885 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
6886 (xbm_read_bitmap_data): Use unsigned char for image data.
6887
92f5fba2
LT
68882004-02-23 Luc Teirlinck <teirllm@auburn.edu>
6889
6890 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
6891
8565fb3d
JR
68922004-02-22 Jason Rumney <jasonr@gnu.org>
6893
6894 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
6895 correctly over other bitmaps.
6896
a6eeaa81 68972004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
6898
6899 * emacs.c (USAGE1): Split into two halves.
6900 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
6901 (USAGE3): Rename from USAGE2.
6902 (USAGE4): Rename from USAGE3.
f8125c39 6903
4effffca
EZ
69042004-02-21 Juri Linkov <juri@jurta.org>
6905
6906 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
6907 Fix --multibyte. Move --help, --version to USAGE2. Add alias
6908 --file. Fix -f, -l. Sort options. Untabify.
6909 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
6910
923c1e6f
LT
69112004-02-19 Luc Teirlinck <teirllm@auburn.edu>
6912
6913 * category.c (Fdefine_category, Fcategory_docstring)
6914 (Fget_unused_category, Fset_category_table)
6915 (Fcategory_set_mnemonics): Doc fixes.
6916
b0e225fd
KS
69172004-02-20 Kim F. Storm <storm@cua.dk>
6918
6919 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
6920 The following changes are relative to the 2004-01-21 revision.
6921 (NREAD_INPUT_EVENTS): Define as max number of input events to read
6922 in one call to read_socket_hook. Value is 8.
6923 (read_avail_input): Separate and rework handling of read_socket_hook
6924 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
6925 in read_socket_hook case, and repeat if full buffer is read.
6926 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
6927 In non-read_socket_hook case, just use a single input_event, and
6928 call kbd_buffer_store_event on the fly for each character.
6929
b15aa9f9
SM
69302004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
6931
6932 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
6933 Remove unused `gu' alternative.
6934
83c9aa95
AS
69352004-02-19 Andreas Schwab <schwab@suse.de>
6936
6937 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
6938 warning.
6939
cc808173
KS
69402004-02-18 Kim F. Storm <storm@cua.dk>
6941
6942 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
6943 Fix last change.
6944
ab90a54d
KS
69452004-02-17 Kim F. Storm <storm@cua.dk>
6946
b26f249f
KS
6947 * xdisp.c (fast_find_position): Fix return value of new version;
6948 it was inverted compared to the 21.1 version.
6949 (get_window_cursor_type): Don't look at glyph if NULL.
6950 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 6951
ab90a54d
KS
6952 * keyboard.c: Rework previous change; it didn't consider that the
6953 buf array was allocated on the stack.
6954 (prev_read): Remove variable.
6955 (read_avail_input_buf): New static event buffer array.
b9568dfc 6956 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 6957 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
6958 Use in_read_avail_input to handle re-entrance; when re-entered,
6959 fully initialize and use tmp_buf array instead of read_avail_input_buf.
6960 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
6961 is always cleared on entry. To ensure that, we clear (just) the
6962 entries that were used before we return.
6963 (init_keyboard): Initialize read_avail_input_buf here.
6964
b6189c3b 69652004-02-16 Jesper Harder <harder@ifa.au.dk>
4e039f3f
EZ
6966
6967 * cmds.c (Fend_of_line): Doc fix.
6968
7b5368c1
EZ
69692004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
6970
6971 * keyboard.c (prev_read): New static variable.
6972 (read_avail_input): Use it to zero out only those slots in buf[]
6973 that were used last time we were called.
6974
a6eeaa81 69752004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
6976
6977 * Makefile.in (obj): Move fringe.o from here...
6978 (XOBJ, MAC_OBJ): ...to here.
6979
159c348e
SE
69802004-02-16 Stephen Eglen <stephen@gnu.org>
6981
6982 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
6983
d2f14999
SM
69842004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
6985
b15aa9f9
SM
6986 * data.c (Fbyteorder):
6987 * fringe.c (Fdefine_fringe_bitmap):
6988 * xdisp.c (handle_single_display_prop):
d2f14999
SM
6989 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
6990
8d50508a
JR
69912004-02-16 Jason Rumney <jasonr@gnu.org>
6992
6993 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
6994
dd4497dc
ST
69952004-02-15 Steven Tamm <steventamm@mac.com>
6996
6997 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
6998 controlling emulation of a three button mouse with option and
6999 command keys.
7e26f91b 7000 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
b15aa9f9 7001 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 7002
c9159cb3
KS
70032004-02-15 Kim F. Storm <storm@cua.dk>
7004
2cc52658
KS
7005 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
7006
c9159cb3
KS
7007 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
7008 Perform byte-swapping.
7009
12fde2dc
KS
70102004-02-14 Kim F. Storm <storm@cua.dk>
7011
7012 * dispextern.h (struct draw_fringe_bitmap_params): Change member
7013 bits from char to short to facilitate wider bitmaps.
7014 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
7015 member.
7016
7017 * fringe.c (struct fringe_bitmap): Change member bits from char to
7018 short to facilitate 16 bits wide bitmaps. Modify all standard
7019 bitmaps accordingly.
7020 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
7021 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
7022 (draw_fringe_bitmap): Ditto.
7023 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
7024 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
7025 handle up to 16 bits wide bitmaps.
7026 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 7027 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
7028
7029 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
7030 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
7031 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
7032
7033 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
7034 so it is no longer necessary to expand them here.
7035
7036 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
7037
9d7271e8
KS
70382004-02-12 Kim F. Storm <storm@cua.dk>
7039
7040 * window.c (Fwindow_fringes): Doc fix.
7041
706c1e4f
JD
70422004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7043
7044 * xselect.c (x_get_foreign_selection): Add new optional parameter
7045 time_stamp.
7046 (Fx_get_selection_internal): Ditto, pass time_stamp to
7047 x_get_foreign_selection.
7048
7049 * data.c (Fbyteorder): New function.
7050
c2d12b5d
JD
70512004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7052
7053 * atimer.c: Move include stdio.h to same place as in other files.
7054
7055 * region-cache.c: Ditto.
7056
7057 * sysdep.c: Ditto.
7058
7059 * xfaces.c: Ditto.
7060
4c1947b9
SS
70612004-02-09 Sam Steingold <sds@gnu.org>
7062
89458937 7063 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 7064
82722af3
KS
70652004-02-09 Kim F. Storm <storm@cua.dk>
7066
7067 * fringe.c: New file. Move original fringe related declarations
7068 and code from dispextern.h and xdisp.c here.
7069 Rework code to support user defined fringe bitmaps, redefining
7070 standard bitmaps, ability to overlay user defined bitmap with
7071 overlay arrow bitmap, and add faces to bitmaps.
7072 (Voverflow_newline_into_fringe): Declare here.
7073 (enum fringe_bitmap_align): New enum.
7074 (..._bits): All bitmaps are now defined without bitswapping; that
7075 is now done in init_fringe_once (if necessary).
7076 (standard_bitmaps): New array with specifications for the
7077 standard fringe bitmaps.
7078 (fringe_faces): New array.
7079 (valid_fringe_bitmap_id_p): New function.
7080 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
7081 (draw_fringe_bitmap): New function which draws fringe bitmap,
7082 possibly overlaying bitmap with cursor in right fringe or the
7083 overlay arrow in the left fringe.
7084 (update_window_fringes): Do not handle overlay arrow here.
7085 Compare and copy fringe bitmap faces.
7086 (init_fringe_bitmap): New function.
7087 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
7088 define and destroy user defined fringe bitmaps.
7089 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
7090 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
7091 (syms_of_fringe): New function. Defsubr new DEFUNs.
7092 DEFVAR_LISP Voverflow_newline_into_fringe.
7093 (init_fringe_once, init_fringe): New functions.
7094 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 7095
82722af3
KS
7096 * Makefile.in (obj): Add fringe.o.
7097 (fringe.o): New dependencies.
7098
7099 * dispextern.h (FRINGE_ID_BITS): New definition for number of
7100 bits allocated to hold a fringe number. Increase number of bits
7101 from 4 to 8 to allow user defined fringe bitmaps.
7102 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
7103 left_user_fringe_face_id, right_user_fringe_bitmap,
7104 right_user_fringe_face_id.
7105 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
7106 Move to new file fringe.c.
7107 (MAX_FRINGE_BITMAPS): Define here.
7108 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
7109 and overlay_p. Change member which to int.
7110 (struct redisplay_interface): New members define_fringe_bitmap
7111 and destroy_fringe_bitmap.
7112 (valid_fringe_bitmap_id_p): Add prototype.
7113 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
7114
7115 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
7116 arrows.
7117 (update_frame): Do flush_display if force_flush_display_p to
7118 ensure display (specifically fringes) are updated in a timely
7119 manner when resizing the frame by dragging the mouse.
7120 (update_window_line): Update row if overlay arrow changed.
7121 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
7122 or overlay arrow changed.
7123
7124 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
7125 syms_of_fringe, and init_fringe.
7126
7127 * frame.h (struct frame): New member force_flush_display_p.
7128
7129 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
7130 Add prototypes.
7131
a3993cc8 7132 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 7133 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
7134 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
7135 Use cursor color for displaying cursor in fringe.
82722af3
KS
7136 (x_redisplay_interface): Add null handlers for
7137 define_fringe_bitmap and destroy_fringe_bitmap functions.
7138
7139 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
7140 xterm.c to handle overlayed fringe bitmaps and to use cursor color
7141 for displaying cursor in fringe.
7142 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
7143 specific functions to define and destroy fringe bitmaps in fringe_bmp.
7144 (w32_redisplay_interface): Add them to redisplay_interface.
7145 (w32_term_init): Call w32_init_fringe instead of explicitly
7146 defining fringe bitmaps in fringe_bmp array.
7147 (x_delete_display): Call w32_reset_fringes instead of explicitly
7148 destroying fringe bitmaps in fringe_bmp array.
7149
7150 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
7151 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
7152 (continued_bits, continuation_bits, ov_bits, first_line_bits)
7153 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
7154 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
7155 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
7156 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
7157 Move fringe handling vars and code to new file fringe.c.
7158 (handle_display_prop): Handle left-fringe and right-fringe
7159 display properties; store user fringe bitmaps in iterator.
7160 (move_it_in_display_line_to): Handle cursor in fringe at eob.
7161 (clear_garbaged_frames): Set force_flush_display_p if resized.
7162 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
7163 (display_line): Handle cursor in fringe at eob.
7164 (display_line): Set row user fringe bitmaps from iterator.
7165
7166 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
7167 Use cursor color for displaying cursor in fringe.
7168 (x_redisplay_interface): Add null handlers for
7169 define_fringe_bitmap and destroy_fringe_bitmap functions.
7170
030400eb
JD
71712004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7172
7173 * macfns.c (Fx_change_window_property): Make doc string and
7174 parameters same as for X version.
7175
7176 * w32fns.c (Fx_change_window_property): Ditto.
7177
3af55251
KS
71782004-02-07 Kim F. Storm <storm@cua.dk>
7179
ec110e9e
KS
7180 * xdisp.c (hscroll_window_tree): Position cursor near to right
7181 margin in hscrolled window when jumping to end of line (rather
7182 than centering cursor).
7183
3af55251
KS
7184 * process.c (wait_reading_process_input): Don't do adaptive read
7185 buffering if waiting for a specific process.
7186
b0c138ce
LT
71872004-02-05 Luc Teirlinck <teirllm@auburn.edu>
7188
7189 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
7190 (Fread_minibuffer, Feval_minibuffer)
7191 (Fread_string, Fread_no_blanks_input)
7192 (Fcompleting_read): Doc fixes.
7193 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
7194 completion-regexp-list. Define Qcase_fold_search and staticpro it.
7195 (read_minibuf): Fix initial comment.
7196 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 7197 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
7198 checking completion-regexp-list.
7199 (Fdisplay_completion_list): Make it handle arguments that are
7200 symbols. Doc fix.
7201
9676f5ad 72022004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 7203
9676f5ad 7204 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 7205
9676f5ad
JD
7206 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
7207 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 7208 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 7209 format. Remove unused variable cons.
5b698285
JD
7210
7211 * xselect.c: Include stdio,h.
7212
fc1d15f6
KH
72132004-02-05 Kenichi Handa <handa@m17n.org>
7214
ebaff4af
KH
7215 * fns.c (Fset_char_table_range): Fix previous change.
7216
fc1d15f6
KH
7217 * buffer.c (Fset_buffer_multibyte): Fix docstring.
7218
9676f5ad
JD
72192004-02-04 Luc Teirlinck <teirllm@auburn.edu>
7220
7221 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
7222
da75761f
SM
72232004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
7224
7225 * keymap.c (Vmouse_events): Rename from Vmenu_events.
7226 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
7227
13c5d120
KH
72282004-02-04 Kenichi Handa <handa@m17n.org>
7229
7230 * fns.c (Fset_char_table_range): Handle charsets ascii,
7231 eight-bit-control, and eight-bit-graphic correctly.
7232
2883d842
JR
72332004-02-03 Jason Rumney <jasonr@gnu.org>
7234
7235 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
7236
7237 * w32fns.c (x_to_w32_font): Likewise.
7238
69eff41f
JD
72392004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7240
7241 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
7242 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
7243
7244 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
7245 ClientMessages.
7246
7247 * xselect.c: Include termhooks.h and X11/Xproto.h
7248 (x_check_property_data, x_fill_property_data)
7249 (x_property_data_to_lisp, mouse_position_for_drop)
7250 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 7251 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
7252 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
7253
da75761f 7254 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
7255 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
7256 OUTER_P.
7257 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
7258 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
7259 if vector_ret_p is true.
7260 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 7261
a6eeaa81 72622004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
7263
7264 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
7265 basename of FILE relative to it, not FILE itself.
7266
09721b31
KH
72672004-02-02 Kenichi Handa <handa@m17n.org>
7268
7269 * coding.c (coding_restore_composition): Check invalid
7270 composition data more rigidly.
7271
eb996101
LT
72722004-01-30 Luc Teirlinck <teirllm@auburn.edu>
7273
7274 * fileio.c (Fread_file_name_internal): Correctly handle the case
7275 where insert-default-directory is nil.
7276 (Fread_file_name): Always return an empty string if the user exits
7277 with an empty minibuffer. Adapt the docstring accordingly.
7278 (syms_of_fileio): Adapt the docstring of insert-default-directory
7279 to the change in Fread_file_name.
7280
a6eeaa81 72812004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
7282
7283 * alloca.c [!alloca]: Fix the prototype for xfree.
7284
13f52ed8
KH
72852004-01-29 Kenichi Handa <handa@m17n.org>
7286
7287 * fns.c (string_char_to_byte): Optimize for ASCII only string.
7288 (string_byte_to_char): Likewise.
7289
d57625a0
JR
72902004-01-28 Peter Runestig <peter@runestig.com>
7291
7292 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
7293
a64387ee 72942004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
7295
7296 * unexmacosx.c (unexec_copy): Do not copy more than was
7297 requested to prevent overwriting during unexec.
7298
eb37b8fd
JD
72992004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7300
ce38070a
JD
7301 * process.c (sigchld_handler): Add comment about not calling malloc.
7302
eb37b8fd
JD
7303 * process.h: Add extern to synch_process_termsig.
7304
a64387ee 73052004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 7306
da75761f
SM
7307 * macterm.c (make_mac_frame, make_mac_terminal_frame):
7308 Move setting of scroll bars from make_mac_frame to
7309 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 7310
d62a265d
RS
73112004-01-26 Richard M. Stallman <rms@gnu.org>
7312
7313 * search.c (Freplace_match): Handle nonexistent
7314 back-references properly.
7315
73162004-01-03 Richard M. Stallman <rms@gnu.org>
7317
7318 * window.c (decode_any_window): New function.
7319 (Fwindow_height, Fwindow_width, Fwindow_edges)
7320 (Fwindow_pixel_edges, Fwindow_inside_edges)
7321 (Fwindow_inside_pixel_edges): Use decode_any_window.
7322
ff236419
JD
73232004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7324
7325 * process.h: synch_process_termsig new variable.
7326
7327 * callproc.c: Define synch_process_termsig.
7328 (Fcall_process): Initiate synch_process_termsig to zero and
7329 check if non-zero and get signal name after subprocess has ended.
7330
7331 * process.c (sigchld_handler): Set synch_process_termsig
7332 if terminated by a signal. synch_process_death setting removed.
7333
7334 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
7335
41b867ea
AS
73362004-01-26 Andreas Schwab <schwab@suse.de>
7337
7338 * print.c (print_preprocess): Declare size as EMACS_INT to not
7339 lose bits.
7340 (print_object): Likewise.
7341 * alloc.c (Fpurecopy): Likewise.
7342
a08084ff
LT
73432004-01-25 Luc Teirlinck <teirllm@auburn.edu>
7344
7345 * window.c (Fwindow_minibuffer_p): Doc fix.
7346
b19ac475
JY
73472004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
7348
7349 * editfns.c (Fformat): Make both passes accept the same set of flags.
7350
fe905025
KH
73512004-01-23 Kenichi Handa <handa@m17n.org>
7352
7353 * fns.c (Fmd5): If OBJECT is a buffer different from the current
7354 one, set buffer to OBJECT temporarily.
7355
438fc6c0
SM
73562004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
7357
455316e2
SM
7358 * keyboard.c (kbd_buffer_gcpro): Remove.
7359 (kbd_buffer_store_event, clear_event, Fdiscard_input)
7360 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
7361 Don't initialize and/or maintain the variable any more. It was made
7362 redundant by my commit of 2003-06-15.
7363
438fc6c0
SM
7364 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
7365
5335a4ee
JD
73662004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7367
7368 * lisp.h: Add undef DECL_ALIGN.
7369
dcdaeebc
SM
73702004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
7371
7372 * process.c (wait_reading_process_input) [SYNC_INPUT]:
7373 Check interrupt_input_pending explicitly.
7374
7375 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
7376
7377 * keyboard.c (handle_async_input): New fun,
7378 extracted from input_available_signal.
7379 (input_available_signal, reinvoke_input_signal): Use it.
7380
9076a823
SM
73812004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
7382
d7107586
SM
7383 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
7384
7385 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
7386 manipulation macros for when tags are in the lower bits.
7387 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
7388 (DECL_ALIGN): New macro.
7389 (DEFUN): Use it.
7390
7391 * lisp.h [ENABLE_CHECKING]: Don't force union type.
7392
7393 * s/darwin.h (__attribute__): Remove outdated workaround.
7394
7395 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
7396
7397 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
7398 Don't check range of malloc address.
7399 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
7400
9076a823
SM
7401 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
7402
7403 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
7404
ba029065
KH
74052004-01-19 Kenichi Handa <handa@m17n.org>
7406
7407 * fontset.c (fontset_font_pattern): Fix previous change.
7408
7af0e8d7
MB
74092004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
7410
7411 * xdisp.c (Voverflow_newline_into_fringe)
7412 (move_it_in_display_line_to, redisplay_internal)
7413 (update_window_fringes, redisplay_window, display_line, window):
7414 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
7415 that it compiles without a window-system.
7416 * dispnew.c (direct_output_for_insert, update_window): Likewise.
7417
77a9cf69
KS
74182004-01-16 Kim F. Storm <storm@cua.dk>
7419
7420 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
7421
a64387ee 7422 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
7423 buffer_local_flags for indicate_buffer_boundaries.
7424 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
7425 default- variable for it.
7426
7427 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
7428 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 7429 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
7430 overflowing newlines into right fringe.
7431 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
7432 and indicate_bottom_line_p for buffer boundaries and scrolling.
7433 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
7434 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
7435 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
7436 and HOLLOW_SQUARE_BITMAP.
7437 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
7438 Add prototypes.
7439
7440 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
7441 instead of related indicator fields.
7442 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
7443 (direct_output_for_insert): Handle exact width lines like
7444 contined lines. Call update_window_fringes.
7445 (update_window): Call update_window_fringes.
7446 (scrolling_window): Don't skip desired rows with changed bitmaps.
7447 Check if fringe bitmaps changes when assigning scrolled rows.
7448
7449 * xdisp.c (Voverflow_newline_into_fringe): New variable.
7450 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
7451 (move_it_in_display_line_to): Overflow newline into fringe for
7452 rows that are exactly as wide as the window.
7453 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
7454 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
7455 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
7456 (fringe_bitmaps): Add new bitmaps.
7457 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
7458 Select proper bitmap for cursor in fringe when appropriate.
7459 Handle alignment of bitmap to top or bottom of row.
7460 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
7461 done by update_window_fringes.
7462 (update_window_fringes, draw_window_fringes): New functions.
7463 (redisplay_internal): Call update_window_fringes in case only
7464 cursor row is updated.
7465 (redisplay_window): Call update_window_fringes.
7466 Explicitly call draw_window_fringes if redisplay was done using
7467 the current matrix or the overlay arrow is in the window.
7468 (try_window_reusing_current_matrix): Mark scrolled rows for
7469 fringe update (to update buffer-boundaries / scrolling icons).
7470 (find_last_unchanged_at_beg_row): Handle exact width lines line
7471 continued lines.
7472 (display_line): Overflow newline into fringe for rows that are
7473 exactly as wide as the window. Don't append space for newline
d7107586 7474 in this case.
77a9cf69
KS
7475 (notice_overwritten_cursor): Explicitly clear cursor bitmap
7476 in fringe as if it had been overwritten.
7477 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 7478 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
7479 void-text-area-pointer as user options.
7480 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 7481
77a9cf69
KS
7482 * xterm.c (x_update_window_end): Call draw_window_fringes.
7483 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7484 in row instead of actually drawing fringe bitmaps.
7485 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7486 (x_draw_window_cursor): Draw cursor in fringe.
7487
7488 * w32term.c (x_update_window_end): Call draw_window_fringes.
7489 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7490 in row instead of actually drawing fringe bitmaps.
7491 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7492 (w32_draw_window_cursor): Draw cursor in fringe.
7493
7494 * macterm.c (x_update_window_end): Call draw_window_fringes.
7495 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
7496 in row instead of actually drawing fringe bitmaps.
7497 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
7498 (mac_draw_window_cursor): Draw cursor in fringe.
7499
a633a954
JD
75002004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7501
7502 * xterm.c (handle_one_xevent): Don't handle characters that are part
7503 of an old style (XLookupString) compose sequence.
7504
80460525
KH
75052004-01-15 Kenichi Handa <handa@m17n.org>
7506
7507 * search.c (Freplace_match): Use make_multibyte_string or
7508 make_unibyte_string according to the buffer multibyteness.
7509
7fc34f85
SM
75102004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
7511
7512 * alloc.c (struct interval_block, struct string_block)
7513 (struct symbol_block, struct marker_block, live_string_p)
7514 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
7515 Better preserve alignment for objects in blocks.
7516 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
7517
7518 * lread.c (defvar_per_buffer): Remove dead declaration.
7519
7520 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
7521 space size.
7522
66070bd1
JD
75232004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7524
7525 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
7526 if a key press should pop down. Only pop down if a key is pressed
7527 outside the menu/dialog.
7528 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
7529 popup_get_selection.
7530 (create_and_show_dialog): Pass 1 for down_on_keypress to
7531 popup_get_selection.
7532
de7515d6
JD
75332004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7534
7535 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
7536 BLOCK/UNBLOCK_INPUT.
7537
160b1b50
JD
75382004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7539
7540 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
7541 specified.
7542
3a9f36e6
KH
75432004-01-08 Kenichi Handa <handa@m17n.org>
7544
7545 * editfns.c (Fformat): Fix '&' to '&&'.
7546
3803eb32
AS
75472004-01-08 Andreas Schwab <schwab@suse.de>
7548
7549 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
7550 size if PSEUDOVECTOR_FLAG is set.
7551
9da88f37
KH
75522004-01-07 Kenichi Handa <handa@m17n.org>
7553
74ac5074
KH
7554 * charset.c (Fdeclare_equiv_charset): Fix docstring.
7555
9da88f37
KH
7556 * fontset.c (fontset_ref_via_base): Fix previous change.
7557
05faee07
KS
75582004-01-07 Kim F. Storm <storm@cua.dk>
7559
7560 * process.c (read_process_output): Only activate adaptive
7561 buffering if we read less than 256 bytes at a time.
7562
634910c8
KS
75632004-01-06 Kim F. Storm <storm@cua.dk>
7564
7565 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
7566 object and image object. Return glyph width and height.
7567 (mode_line_string, marginal_area_string): Ditto.
7568
7569 * dispextern.h (buffer_posn_from_coords, mode_line_string)
7570 (marginal_area_string): Fix prototypes.
7571
7572 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 7573 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
7574 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
7575
7576 * keyboard.c (make_lispy_position): Use modified mode_line_string,
7577 buffer_posn_from_coords, and marginal_area_string functions to
7578 include both string object and image object in the lispy position.
7579 Also add actual glyph width and height to position.
7580 (read_key_sequence): Use real buffer position from mouse
7581 event to find keymap property even when click is in marginal area.
7582
7583 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
7584 mode_line_string and marginal_area_string functions to handle
7585 both string object and image object properties.
d7107586 7586
57951c2e
AS
75872004-01-06 Andreas Schwab <schwab@suse.de>
7588
7589 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
7590 character.
7591
181e6a61
AS
75922004-01-02 Andreas Schwab <schwab@suse.de>
7593
d7107586
SM
7594 * macterm.c (emacs_options, x_initialized, same_x_server):
7595 Remove unused (and duplicated) definitions.
181e6a61 7596
31e0fbdd
KS
75972004-01-02 Kim F. Storm <storm@cua.dk>
7598
7599 * process.h (struct Lisp_Process): New members for adaptive read
7600 buffering: adaptive_read_buffering, read_output_delay, and
7601 read_output_skip.
7602
7603 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
7604 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
7605 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
7606 (process_output_delay_count, process_output_skip): New vars.
7607 (Vprocess_adaptive_read_buffering): New variable.
7608 (make_process): Initialize adaptive read buffering members.
7609 (Fstart_process): Set adaptive_read_buffering member.
7610 (deactivate_process): Cleanup adaptive read buffering.
7611 (wait_reading_process_input): Temporarily omit delayed
7612 subprocesses from the set of file descriptors to read from;
7613 adjust the select timeout if we skipped any subprocesses.
7614 (read_process_output): Increase adaptive read buffering delay if
7615 we read less than a full buffer; reduce delay when we read a
7616 full buffer.
7617 (send_process): Simplify using local Lisp_Process var.
7618 Reset adaptive read buffering delay after write.
7619 (init_process): Initialize process_output_delay_count and
7620 process_output_skip.
7621 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
7622
68c6a789
JR
76232004-01-01 Jason Rumney <jasonr@gnu.org>
7624
d7107586 7625 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 7626
3f70fe82
LT
76272003-12-30 Luc Teirlinck <teirllm@auburn.edu>
7628
7629 * print.c (Ferror_message_string): Add hyperlink in the docstring
7630 to the definition of `signal' in the Elisp manual.
7631 * eval.c (Fsignal): Ditto.
7632
b6189c3b 76332003-12-29 James Clark <jjc@jclark.com>
c2be49ed
EZ
7634
7635 * fns.c (internal_equal): Return t for two NaN arguments.
7636
7abd90ea
RS
76372003-12-29 Richard M. Stallman <rms@gnu.org>
7638
7639 * data.c (store_symval_forwarding): Handle setting
7640 default-fill-column, etc., by changing the value in
7641 buffers that use the default.
7642
7643 * minibuf.c (Fset_minibuffer_window): Doc fix.
7644
7645 * fileio.c (choose_write_coding_system): Ignore auto_saving
7646 if using the visited file for auto saves.
7647 (Fwrite_region): Don't update SAVE_MODIFF
7648 if auto-saving in visited file.
7649
3e7cfcdc
KH
76502003-12-29 Kenichi Handa <handa@m17n.org>
7651
7652 * dispextern.h (face_font_available_p): Extern it.
7653
7654 * fontset.c (Voverriding_fontspec_alist): New variable.
7655 (lookup_overriding_fontspec): New function.
d7107586 7656 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
7657 (fontset_font_pattern): Likewise.
7658 (regulalize_fontname): New function.
7659 (Fset_fontset_font): Call regulalize_fontname.
7660 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
7661 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
7662 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
7663
7664 * xfaces.c (face_font_available_p): New function.
7665
7abd90ea
RS
76662003-12-28 Richard M. Stallman <rms@gnu.org>
7667
7668 * buffer.c (Fother_buffer): Don't crash if BUF is nil
7669 or if its name is nil.
7670
7671 * buffer.c (Fkill_buffer): Don't delete auto-save file
7672 if it's the same as the visited file.
7673
de1d1a40
LT
76742003-12-28 Luc Teirlinck <teirllm@auburn.edu>
7675
7676 * coding.c (Fcheck_coding_system): Doc fix.
7677
204fb75e
KS
76782003-12-28 Kim F. Storm <storm@cua.dk>
7679
7680 * Makefile.in (eval.o): Depend on dispextern.h.
7681
7682 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
7683 image glyph using image's ascent.
7684 (mode_line_string): Return image glyph as object clicked on.
7685 Adjust y0 for image glyph using image's ascent.
7686
7687 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
7688 (struct glyph): New members, ascent and descent. Used to save
7689 this glyph's ascent and descent, instead of having.
7690 (struct glyph): Declare member face_id using FACE_ID_BITS.
7691 (find_hot_spot): Add prototype.
7692
7693 * keyboard.c (Qimage): Remove extern (now in lisp.h).
7694 (QCmap): Declare extern.
7695 (make_lispy_position): When position is inside image hot-spot,
7696 use hot-spot element's id as posn element.
7697
7698 * lisp.h (IMAGEP): New macro to test for image object type.
7699 (Qimage): Declare extern.
7700
7701 * macfns.c (Qimage): Remove extern (now in lisp.h).
7702 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7703
7704 * macterm.c (Qface, Qmouse_face): Remove unused externs.
7705
7706 * w32fns.c (Qimage): Remove extern (now in lisp.h).
7707 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7708
7709 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
7710
7711 * w32term.c (Qface, Qmouse_face): Remove unused externs.
7712
7713 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
7714 pointer types.
7715 (Qrelative_width, Qalign_to): Remove unused variables.
7716 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
7717 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
7718 image maps.
d7107586 7719 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
7720 new dx and dy args.
7721 Remove buffer_only_p arg (always 0). Simplify code accordingly.
7722 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
7723 than row's ascent and height, to get sensible height on tall rows.
7724 (build_desired_tool_bar_string): Remove Qimage extern.
7725 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
7726 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
7727 image glyph is alone on the last line.
7728 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 7729 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 7730 (on_hot_spot_p): New function to check if position is inside an
d7107586 7731 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
7732 (find_hot_spot): New function to search for image hot-spot.
7733 (Flookup_image_map): New defun to search for image hot-spot.
7734 (define_frame_cursor1): New aux function to determine frame pointer.
7735 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7736 Handle `pointer' text property and :pointer image property to
7737 control frame pointer shape. Detect image hot-spots for pointer
7738 and help_echo properties. Use define_frame_cursor1.
7739 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 7740 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
7741 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
7742
7743 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
7744
7745 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
7746 (Qimage): Remove extern (now in lisp.h).
7747 (valid_image_p, parse_image_spec): Use IMAGEP macro.
7748
7749 * xmenu.c (show_help_event): Remove unused code.
7750
7751 * xterm.c (Qface, Qmouse_face): Remove unused externs.
7752 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
7753 row's ascent and descent, to get a sensible height on tall rows.
7754
fc052137
LT
77552003-12-25 Luc Teirlinck <teirllm@auburn.edu>
7756
7757 * minibuf.c (Fcompleting_read): Undo previous change.
7758
a64387ee 77592003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
7760
7761 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
7762 Arguments GCPRO'ed in call to file name handler.
7763
56ffd194
TTN
77642003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
7765
7766 * termcap.c (tgetst1): Scan for "%pN"; if all
7767 N are continuous in [1,9], remove all "%pN".
7768
5202d23d
JD
77692003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7770
f26fab36
JD
7771 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
7772
5202d23d
JD
7773 * xfaces.c (lface_fully_specified_p): Take into account that
7774 MAC OS always have unspecified stipple.
7775
8babaa59
TTN
77762003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7777
7778 * tparam.c (tparam1): Add handling for `%pN', which
7779 means use param N for the next substitution.
7780
2d176448
TTN
77812003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
7782
7783 * xfaces.c (Fcolor_gray_p): Fix omission bug:
7784 In case `frame' is nil, consult the selected frame.
7785 (Fcolor_supported_p): Likewise.
7786
adb0708c
LT
77872003-12-23 Luc Teirlinck <teirllm@auburn.edu>
7788
000eeb15
LT
7789 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
7790 Doc fixes.
0dc72b11
LT
7791
7792 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
7793 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
7794 (Fread_from_minibuffer): Delete code moved into read_minibuf.
7795 Doc fix.
7796 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
7797 read_minibuf.
7798 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 7799 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 7800
2e4d132b
KH
78012003-12-03 Kenichi Handa <handa@m17n.org>
7802
7803 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
7804 encoding sequence.
7805
3999c705
KH
78062003-12-01 Kenichi Handa <handa@m17n.org>
7807
7808 * composite.c (syms_of_composite): Don't make the compostion hash
7809 table week.
7810
d344ecbb
LT
78112003-11-30 Luc Teirlinck <teirllm@auburn.edu>
7812
7813 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
7814 * textprop.c (Fget_char_property_and_overlay): New function.
7815 (syms_of_textprop): Defsubr it.
7816
03d6484e
JD
78172003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7818
019b1f0e
JD
7819 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
7820 to compile on terminal configuration.
7821
03d6484e
JD
7822 * fileio.c (Fread_file_name): Check use_file_dialog also before
7823 calling Fx_file_dialog.
7824
7825 * fns.c: use_file_dialog: New variable.
7826 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
7827
442d3fd0
KS
78282003-11-29 Kim F. Storm <storm@cua.dk>
7829
7830 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
7831 (syms_of_msdos): Don't intern and staticpro them.
7832
0f6a07a8
KS
78332003-11-27 Kim F. Storm <storm@cua.dk>
7834
7835 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
7836 coordinates relative to glyph at posn. If glyph is an image,
7837 return that as object at posn. Callers changed.
7838 (mode_line_string, marginal_area_string): Calculate and return
7839 pixel coordinates relative to glyph. Callers changed.
7840
7841 * dispextern.h (buffer_posn_from_coords, mode_line_string)
7842 (marginal_area_string): Fix prototypes.
7843 (window_box_left_offset, window_box_right_offset): Add prototypes.
7844
7845 * frame.h (get_specified_cursor_type, get_window_cursor_type):
7846 Remove prototypes.
7847
7848 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
7849
7850 * keyboard.c (make_lispy_position): Add x and y coordinates
7851 relative to the current glyph as 7th element of position.
7852 If glyph is an image, return it in the object element.
7853 (read_key_sequence): Skip checks for keymap property in cases
7854 where POSN_STRING is not a string (e.g. an image).
7855
7856 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
7857 (Vshow_text_cursor_in_void): New variable.
7858 (glyph_to_pixel_coords): Don't use negative hpos.
7859 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
7860 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 7861 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
7862 (calc_pixel_width_or_height): New aux function, implementing
7863 pixel based artihmetic for glyph widths and heights.
7864 (produce_stretch_glyph): Use calc_pixel_width_or_height for
7865 :width, :height, :align-to, and :ascent, thus allowing these to
7866 be specified in pixels as well as multiples of characters.
7867 Don't produce stretch glyphs with zero width or height.
7868 (get_specified_cursor_type): Declare static.
7869 (get_window_cursor_type): Declare static. Add glyph arg to be
7870 able to know when cursor is on an image; always substitute
7871 hollow-box cursor for filled-box cursor on images, to avoid
7872 negative images and flicker when blinking the cursor.
7873 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
7874 (note_mode_line_or_margin_highlight): Use non-text cursor rather
7875 than vertical scroll-bar cursor in display margins.
7876 (note_mouse_highlight): Use non-text cursor rather than text
7877 cursor in fringes and over images in the text area.
7878 Use non-text cursor when mouse pointer is outside editable text,
7879 i.e. in the void after end-of-line or end-of-buffer; this was
7880 already done for W32, but is now standard for all systems --
7881 user can toggle show-text-cursor-in-void to get old behaviour.
7882 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
7883 Vdisplay_pixels_per_inch.
7884
00498bfc
AS
78852003-11-25 Andreas Schwab <schwab@suse.de>
7886
7887 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
7888 EMACS_INT to not lose bits.
7889 (Ffillarray): Don't set bits beyond the size of a bool vector.
7890
edaa824d
KS
78912003-11-25 Kim F. Storm <storm@cua.dk>
7892
7893 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
7894 define this defun on systems that cannot use stderr as lvalue.
7895
74d6f539
GM
78962003-11-24 Gerd Moellmann <gerd@gnu.org>
7897
7898 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
7899 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
7900 ld's default is incompatible with unexec.
7901
6a1ff3ba
KS
79022003-11-23 Kim F. Storm <storm@cua.dk>
7903
63dc7c6b
KS
7904 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
7905 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
7906 (Fforce_window_update): New defun.
7907 (syms_of_window): Defsubr it.
7908 (Fset_window_margins, Fset_window_fringes): Doc fix.
7909
6a1ff3ba
KS
7910 * print.c (Fredirect_debugging_output): New defun.
7911 (syms_of_print): Defsubr it.
7912
aef109b7
LT
79132003-11-22 Luc Teirlinck <teirllm@auburn.edu>
7914
7915 * fns.c (Fset_char_table_parent): Doc fix.
7916
6a1ff3ba 79172003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
7918
7919 * dispnew.c (buffer_posn_from_coords): Return actual row/column
7920 for glyph clicked on, rather than (unused) pixel positions.
7921 (mode_line_string, marginal_area_string): Change X and Y args to
7922 pointers for returning actual row/column for glyph clicked on.
7923 Simplify and optimize loops.
7924
aef109b7
LT
7925 * dispextern.h (mode_line_string, marginal_area_string):
7926 Update prototypes.
63ccbe21
KS
7927
7928 * keyboard.c (make_lispy_position): New function for generating
7929 mouse click positions from frame and pixel coordinates.
7930 Enhanced to return buffer position and actual row/column for
7931 events outside the text area using updated mode_line_string and
7932 marginal_area_string functions.
7933 Return left-fringe and right-fringe clicks as such, rather than
7934 clicks in text area.
7935 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
7936 pixel_to_glyph_coords, as we never use the results.
7937 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
7938 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
7939 Eliminate unused code in WHEEL_EVENT handling.
7940 (make_lispy_movement): Use make_lispy_position.
7941
7942 * window.c (coordinates_in_window): Remove redundant tests.
7943 Fix returned X pixel value for left-margin.
7944
7945 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
7946 mode_line_string and marginal_area_string parameters.
7947
a64387ee 79482003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 7949
d7107586
SM
7950 * w32.c (struct the_group, getgrgid): Add.
7951 * mac.c (struct my_group, getgrgid): Add.
aef109b7 7952
3dbf3426
LT
79532003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7954
7955 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
7956
cae8ddbb 79572003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 7958
d7107586
SM
7959 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
7960 include in call to file name handler. Optionally translate numeric
7961 UID and GID to strings. Update docstring.
7962 (directory_files_internal): Add parameter ID-FORMAT.
7963 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
7964 include in call to file name handler and call to
7965 directory_files_internal. Update Docstring.
7966 (Fdirectory_files): Add dummy parameter in call to
7967 directory_files_internal.
7968 * lisp.h (Qinteger): Add.
7969 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
7970 (Ffile_attributes): Add parameter.
7971 * data.c (Qinteger): Export.
cae8ddbb 7972
2550b848
LT
79732003-11-21 Luc Teirlinck <teirllm@auburn.edu>
7974
3dbf3426 7975 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 7976
88380018
KS
79772003-11-19 Kim F. Storm <storm@cua.dk>
7978
7979 * xdisp.c (init_iterator): Initialize it->start to position
7980 before reseating (in case start position is invisible).
7981 (init_to_row_start): Set it->start to row-start.
7982 (redisplay_window): Accept optional_new_start if start position
7983 is invisible (in which case IT_CHARPOS overshoots PT).
7984 (display_line): Setup row->start from it->start (rather than
7985 it->current which is wrong if first char on line is invisible).
7986 When done, reseat it->start to it->current (= start of next row).
7987 (expose_area): Fix exposure of text area when first char (e.g. TAB)
7988 is only partially visible.
7989
7990 * dispextern.h (struct it): New member start.
7991
854c1a59
SM
79922003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
7993
455316e2
SM
7994 * alloc.c (make_float, Fcons): Clear the markbit at init time.
7995 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
7996 of block_index outside of the macro call.
7997 (Fgarbage_collect): Remove null code.
7998
7999 * m/amdx86-64.h: Don't redefine XPNTR.
8000
854c1a59
SM
8001 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
8002 of VALMASK.
8003
8004 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
8005 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
8006 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
8007
8008 * lisp.h (VALMASK): Only define for non-union type.
8009 (MARKBIT): Remove.
8010 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
8011 (XTYPE): Define unconditionally.
8012 (XSETTYPE): Remove one more remnant.
8013 (EQ): Define differently for the union and non-union cases.
8014 (INTMASK): New bit mask.
8015 (struct Lisp_Marker): Move down to prepare for upcoming patch.
8016 (GC_EQ): Delegate to EQ.
8017
8018 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
8019
a0c6ef2d
JD
80202003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8021
8022 * xterm.c (x_window_to_scroll_bar): Move check of display to
8023 where window_id is compared.
8024
859492c4
KS
80252003-11-17 Kim F. Storm <storm@cua.dk>
8026
8027 * dispextern.h (struct it): New member first_vpos.
8028
8029 * xdisp.c (start_display): Set it->first_vpos.
8030 (try_window_id): Use first_vpos to start display in first _text_
8031 line if no reusable lines at start of window with header line.
8032
810f2256
JD
80332003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8034
7c402969 8035 * w32fns.c (XPutPixel):
854c1a59
SM
8036 * w32bdf.c (w32_init_bdf_font):
8037 * sunfns.c (sel_read):
8038 * process.c (Fmake_network_process):
8039 * frame.c (store_frame_param):
8040 * fontset.c (Fset_fontset_font):
8041 * emacs.c (shut_down_emacs):
a64387ee 8042 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 8043
a32e9bfd
JD
8044 * config.in: Regenerate.
8045
810f2256
JD
8046 * xfns.c (x_window_to_frame, x_any_window_to_frame)
8047 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8048 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
8049 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
8050 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
8051
8052 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
8053
8054 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
8055 (XTmouse_position, handle_one_xevent): Pass Display* to
8056 x_window_to_scroll_bar.
8057 (x_window_to_scroll_bar): Take a Display* argument.
8058 Check that display for frame is equal to Display* argument.
854c1a59 8059 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
8060 x_display_info_for_display instead. Use Display in xev instead
8061 of GDK_DISPLAY.
8062 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 8063 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
8064 (x_connection_closed): Call xg_display_close for GTK.
8065 (x_term_init): Call xg_display_open for additional displays.
8066 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
8067 for GTK.
8068
8069 * xmenu.c (single_menu_item, mouse_position_for_popup)
8070 (x_activate_menubar): Formatting adjustments.
8071
8072 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
8073 adjustments.
8074
8075 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
8076 (xg_display_close, xg_create_default_cursor)
8077 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
8078 handling.
854c1a59
SM
8079 (xg_left_ptr_cursor): Remove.
8080 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
8081 cursor here.
8082 (xg_win_to_widget): Take Display* argument, call
8083 gdk_xid_table_lookup_for_display.
8084 (xg_create_frame_widgets, xg_get_file_name, create_menus)
8085 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
8086 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
8087 in FRAME_X_DISPLAY_INFO.
8088 (xg_get_scroll_id_for_window): Take Display* argument.
8089 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 8090 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256 8091
78819ebb
KS
8092 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
8093 Display* argument.
8094 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
810f2256 8095
0b03cc78
JD
80962003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8097
8098 * xterm.c (x_detect_focus_change): Do not change focus frame for
8099 Enter/LeaveNotify if the current focus frame has explicit focus.
8100
77e688fa
KS
81012003-11-14 Kim F. Storm <storm@cua.dk>
8102
8103 * dispnew.c (update_text_area): Fix redisplay error when hscroll
8104 is active and first glyph is only partially visible.
854c1a59 8105
dd429b03
KH
81062003-11-13 Kenichi Handa <handa@m17n.org>
8107
8108 * xdisp.c (select_frame_for_redisplay): New function.
8109 (redisplay_internal): Record also selected_frame for
8110 unwind_redisplay. Call select_frame_for_redisplay before
8111 redrawing each frame.
8112 (unwind_redisplay): Argument changed to a cons.
8113
6d9266f4
LT
81142003-11-12 Luc Teirlinck <teirllm@auburn.edu>
8115
8116 * fns.c (Fstring_to_multibyte): Doc fix.
8117
80060eb3
KH
81182003-11-11 Kenichi Handa <handa@m17n.org>
8119
8120 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
8121
74305183
JD
81222003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8123
8124 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
8125 program specified positions.
8126
cfda993e
JD
81272003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8128
8129 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
8130
df211069
KH
81312003-11-08 Kenichi Handa <handa@m17n.org>
8132
8133 * Makefile.in (lisp): Add kannada.el.
8134 (shortlisp): Likewise.
8135
4307d534
KH
81362003-11-07 Kenichi Handa <handa@m17n.org>
8137
854c1a59
SM
8138 * coding.c (coding_allocate_composition_data):
8139 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
8140 (coding_restore_composition): Detect invalid composition data.
8141 Give Fstring and Fvector a Lispy integer, not C int.
8142
854c1a59
SM
81432003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
8144
8145 * floatfns.c (Flogb): Don't use VALMASK.
8146
8147 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
8148 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
8149
8150 * lisp.h (XINT): Move the cast to clarify what is going on.
8151 (GCTYPEMASK, XSETTYPE): Remove.
8152 (XGCTYPE): Make it an alias of XTYPE.
8153
d04103a1
JD
81542003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8155
8156 * xterm.c (x_term_init): Fix formatting.
8157
da18b5ac
JD
81582003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8159
78819ebb
KS
8160 * gtkutil.h (xg_have_tear_offs): Declare.
8161 (xg_keep_popup, xg_did_tearoff): Remove.
da18b5ac
JD
8162
8163 * gtkutil.c: Remove variable xg_did_tearoff.
8164 (xg_have_tear_offs): New function.
8165 (tearoff_remove): Just decrease xg_detached_menus.
8166 (tearoff_activate): Increase xg_detached_menus and call
8167 tearoff_remove when tearoff is removed.
854c1a59 8168 (xg_keep_popup): Remove function.
da18b5ac
JD
8169 (create_menus): Give add_tearoff_p as argument to recursive
8170 call to create_menus.
8171 (xg_create_widget): Use variables instead of multiple
8172 strcmp. Tell create_menus to create tear off only for
8173 menu bar menus.
8174 (xg_update_menubar): Change title for a detached menu also.
8175 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
8176 of deep_p.
8177 (xg_initialize): Initialize xg_detached_menus, remove
8178 initialization of xg_did_tearoff.
8179
8180 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
8181 xg_have_tear_offs returns non-zero.
8182 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
8183 call to xg_keep_popup.
8184
64d4923e
AC
81852003-11-01 Andrew Choi <akochoi@shaw.ca>
8186
8187 * macterm.c (XTread_socket): Handle menubar selection and grow
8188 window only for mouseDown events.
854c1a59 8189
6cc8bc07
JD
81902003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8191
8192 * xterm.c (x_term_init): For GTK part, increase x_initialized
8193 to check for more than one display. Use error instead of return 0.
8194
043131c4
AC
81952003-10-31 Andrew Choi <akochoi@shaw.ca>
8196
854c1a59 8197 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
8198 (copy_dysymtab): Call it.
8199
bdda99a1
LT
82002003-10-31 Luc Teirlinck <teirllm@auburn.edu>
8201
8202 * eval.c (Fdefvaralias): Doc fix.
8203
800f42ff 82042003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
8205
8206 * data.c (Fsetplist): Doc fix.
8207
ef35b389
LK
82082003-10-14 Lute Kamstra <lute@gnu.org>
8209
8210 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 8211
ef35b389 82122003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 8213
07107abc
KS
8214 * window.c (Fset_window_margins): Simplify arg checking.
8215
f7005886
RS
82162003-10-13 Richard M. Stallman <rms@gnu.org>
8217
8218 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
8219 (print_partial_compiled_pattern): Replace assert with a printout.
8220 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
8221
8222 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
8223
8224 * window.c (Fset_window_margins): Allow only integers as args.
8225 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
8226 Doc fixes.
8227
9c0c2af5
LK
82282003-10-13 Lute Kamstra <lute@gnu.org>
8229
8230 * window.c (Fset_window_fringes): Elaborate docstring.
8231
3f080e4e
AC
82322003-10-12 Andrew Choi <akochoi@shaw.ca>
8233
854c1a59 8234 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 8235
3f080e4e
AC
8236 * s/darwin.h (GC_MARK_STACK): Define.
8237
0aa513ed
JD
82382003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8239
8240 * window.c (shrink_windows): New function.
8241 (size_window): Call shrink_windows to calculate window sizes when
8242 shrinking frame with more than one window.
8243
6aa8858a
KS
82442003-10-12 Kim F. Storm <storm@cua.dk>
8245
8246 * xdisp.c (compute_fringe_widths): Doc fix.
8247
c2164d91
KH
82482003-10-08 Kenichi Handa <handa@m17n.org>
8249
854c1a59 8250 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 8251
f82ac129
KH
82522003-10-07 Kenichi Handa <handa@m17n.org>
8253
8254 * coding.c (Qcoding_system_define_form): New variable.
8255 (syms_of_coding): Intern and staticpro it.
8256 (Fcheck_coding_system): Try to autoload the definition of
8257 CODING-SYSTEM.
8258
9296c947
LT
82592003-10-05 Luc Teirlinck <teirllm@auburn.edu>
8260
8261 * fns.c (Frequire): Doc fix.
8262
c1f0671a
JD
82632003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8264
3d8c3826
JD
8265 * xfns.c (Fx_send_client_event): New function as a base for
8266 manipulating extended window manager hints.
6dc15d98 8267 (Fx_send_client_event): Remove unused variable s.
3d8c3826 8268
068ae0fd
JD
8269 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
8270 that function is removed.
8271
8272 * xterm.c (x_set_offset): Use move_offset_left/top instead of
8273 x/y_pixels_outer_diff.
8274 (x_check_expected_move): Calculate move_offset_left/top.
8275
8276 * xterm.h (struct x_output): New members: move_offset_top/left.
8277
854c1a59 8278 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
8279 call x_set_offset directly.
8280
8281 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
8282
96f09305
JD
8283 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
8284
8285 * xterm.c (x_delete_display): Free font names and font_encoder
8286 in dpyinfo->font_table.
8287
854c1a59
SM
8288 * xfns.c (Fx_close_connection): Only call XFreeFont here.
8289 Move xfree of font names to x_delete_display.
96f09305 8290
c1f0671a
JD
8291 * xterm.h (struct x_display_info): New member, wm_type.
8292 (struct x_output): New members, expected_top/left and
8293 check_expected_move.
8294
8295 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
8296 is received.
854c1a59
SM
8297 (handle_one_xevent): Rename x_check_expected_move from
8298 x_check_fullscreen_move.
c1f0671a
JD
8299 (x_set_offset): Only add WM decoration sizes to modified_top/left
8300 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 8301 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
8302 Removed fullscreen specific code. Use check_expected_move,
8303 expected_left/top instead. Also, set wm_type.
8304 (x_term_init): Initialize wm_type to unknown.
8305
8306 * frame.c (x_fullscreen_move): Remove addition of WM decoration
8307 sizes to move_x/y.
8308
be2fdba9
KH
83092003-10-03 Kenichi Handa <handa@m17n.org>
8310
8311 * macterm.c (x_load_font): Clear all members of FONTP before start
8312 filling them.
8313
83142003-10-02 Kenichi Handa <handa@m17n.org>
8315
8316 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
8317 before calling find_ccl_program_func. Call find_ccl_program_func
8318 only when fontp->font_encoder is not NULL.
8319
8320 * xterm.c (x_load_font): Clear all members of FONTP before start
8321 filling them.
8322
26a6e439
JPW
83232003-10-03 John Paul Wallington <jpw@gnu.org>
8324
8325 * keymap.c (map_keymap): Don't abort when binding is a vector.
8326
0d4c2dc2
JR
83272003-10-02 Jason Rumney <jasonr@gnu.org>
8328
854c1a59
SM
8329 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
8330 Sync dependencies with Makefile.in.
a63cf46f
JR
8331 (alloca.o): Remove.
8332
0d4c2dc2
JR
8333 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
8334 filling them.
8335
8336 * w32bdf.c (w32_load_bdf_font): Likewise.
8337
ab8f7d5c
RS
83382003-09-30 Richard M. Stallman <rms@gnu.org>
8339
8340 * term.c (set_tty_color_mode): Calculate current_mode_spec
8341 regardless of value of VAL.
8342
854c1a59 8343 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
8344 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
8345 Handle over_used when splitting UNDER.
8346
a64387ee 83472003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
8348
8349 * regex.c (regex_compile): Free the stack when returning from function.
8350
3413f972
KH
83512003-09-28 Kenichi Handa <handa@m17n.org>
8352
8353 * fontset.c (Finternal_char_font): Change return value to
8354 cons (FONT-NAME . GLYPH-CODE).
8355
a6eeaa81 83562003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
8357
8358 * term.c (tty_setup_colors): Treat any negative argument as -1.
8359
f98ddc99
KH
83602003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
8361
8362 * process.c (send_process): Delete unused temp_buf.
8363
66c8f1a8
DL
83642003-09-26 Dave Love <fx@gnu.org>
8365
8366 * xterm.c (x_bitmap_mask): Declare.
8367
ca716c26
DL
83682003-09-25 Dave Love <fx@gnu.org>
8369
8370 * Makefile.in (fns.o): Depend on md5.h.
8371
fbe57420
KS
83722003-09-25 Kim F. Storm <storm@cua.dk>
8373
8374 * window.c (set_window_buffer): Fix redisplay problems when
8375 switching between buffers with different display margin widths.
8376
ef6ae4ff
KS
83772003-09-23 Kim F. Storm <storm@cua.dk>
8378
8379 * process.c (set_socket_option): Fix :bindtodevice option.
8380 (Fset_network_process_option): Update process contact list when
8381 setting option succeeds.
8382 (Fmake_network_process): Doc fix.
8383
68e03c1c
DL
83842003-09-23 Dave Love <fx@gnu.org>
8385
7146d1c1 8386 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 8387
a6eeaa81 83882003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
8389
8390 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
8391 color mode is an integer number (it could be -1).
8392
8fe7d8c8
RS
83932003-09-22 Richard M. Stallman <rms@gnu.org>
8394
8395 * intervals.c (graft_intervals_into_buffer): Correct the main loop
8396 in the case where OVER is longer than UNDER.
8397
2f71b5ea
MY
83982003-09-22 Masatake YAMATO <jet@gyve.org>
8399
7146d1c1 8400 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 8401 `vertical_type'.
7146d1c1 8402
0c4da023
KS
84032003-09-21 Kim F. Storm <storm@cua.dk>
8404
8405 * frame.c (Vdefault_frame_scroll_bars): New variable.
8406 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
8407 (syms_of_frame): DEFVAR_LISP it, and initialize according to
8408 window-system default scroll bar position.
8409
b648413b
KS
8410 * window.c (Fwindow_scroll_bars): Doc fix.
8411
8f5b9e34
JD
84122003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8413
854c1a59 8414 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 8415
b0f23edf
RS
84162003-09-19 Richard M. Stallman <rms@gnu.org>
8417
8418 * atimer.h: Don't include lisp.h.
8419 (P_): Define it here (as well as elsewhere).
8420
8421 * print.c (Fprin1_to_string): Move the PRINTPREPARE
8422 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
8423
8424 * data.c (Fvariable_binding_locus): New function.
8425 (syms_of_data): defsubr it.
8426 (Flocal_variable_p): Delete duplicate call to indirect_variable.
8427
e1283999
DL
84282003-09-18 Dave Love <fx@gnu.org>
8429
ad5f3636
DL
8430 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
8431
e1283999
DL
8432 * process.c (Fnetwork_interface_info): Fix type error.
8433 (Fnetwork_interface_list): Doc fix.
8434 (read_process_output, read_process_output): Delete unused var.
8435
b8c7fd71
KS
84362003-09-17 Kim F. Storm <storm@cua.dk>
8437
8438 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
8439 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
8440 (Fnetwork_interface_info): Check that ifreq struct has required
8441 fields before accessing them; this requires that those fields are
8442 defined as macros, which may be too restrictive on some platforms,
8443 but it is better than failing on other platforms.
8444 (syms_of_process): Only defsubr above fns when included.
8445
11e0a411
DL
84462003-09-17 Dave Love <fx@gnu.org>
8447
8448 * unexalpha.c: Don't include varargs.h.
8449
e9c50801
KS
84502003-09-17 Kim F. Storm <storm@cua.dk>
8451
8452 * process.c (Fset_process_sentinel): Add sentinel to childp plist
8453 for network process.
8454 (socket_options): Add `:' prefix to option names. Add optbit field.
8455 (set_socket_option): Remove no_error arg and special handling of s < 0.
8456 Return 1<<optbit for known option, 0 for unknown.
8457 Do not interpret 0 as false for boolean option (only nil).
8458 Pass failed option and value to report_file_error.
7146d1c1 8459 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
8460 (Fset_network_process_option): New function to set just one option.
8461 (Fmake_network_process): Allow :coding arg to be a cons.
8462 Allow :server arg to be an integer specifying backlog size.
8463 Remove :options arg, and allow options to be specified directly
8464 as :KEY, VALUE pairs. Parse these options before binding socket.
8465 As before, :reuseaddr t is default for a server process, but this
8466 can now be disabled by specifying :reuseaddr nil.
8467 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
8468 (init_process): Availability of network options is now checked with
8469 simpler syntax (featurep 'make-network-process :OPTION); use loop to
8470 setup features.
8471 (syms_of_process): Fix defsubr's for the replaced functions.
8472
a0fc3644
DL
84732003-09-16 Dave Love <fx@gnu.org>
8474
8475 * Makefile.in: Depend on coding.h.
8476
6df2a645
KS
84772003-09-14 Kim F. Storm <storm@cua.dk>
8478
8479 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
8480 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
8481 (syms_of_process): Defsubr them.
8482
8483 * config.in: Regenerate.
7146d1c1
SM
8484
84852003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8486
8487 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
8488 * m/news-r6.h (XUNMARK): Remove.
8489 * m/mips.h (XUNMARK): Remove.
8490 * m/mips-siemens.h (XUNMARK): Remove.
8491 * m/iris4d.h (XUNMARK): Remove.
8492 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
8493
0930c1a1
SM
84942003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
8495
31003b9e
SM
8496 * lisp.h (VALBITS): Don't remove 1 for the markbit.
8497 (union Lisp_Object): Use unsigned int for types. Remove markbit.
8498 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
8499 (XTYPE): Use unsigned right-shift.
8500 (XMARKBIT, XMARK, XUNMARK): Remove.
8501
0930c1a1
SM
8502 * alloc.c (init_intervals, init_symbol, init_marker):
8503 Don't preallocate anything.
8504 (Fgarbage_collect, mark_object): Ignore the markbit.
8505
8506 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
8507
19bb0fcd 85082003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
8509
8510 * xdisp.c (pint2hrstr): New function.
8511 (decode_mode_spec): Add `%i' and `%I' specs.
8512 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
8513 for `mode-line-format'.
8514
03bb6a06
AS
85152003-09-07 Andreas Schwab <schwab@suse.de>
8516
8517 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
8518 avoid warning.
8519
a6eeaa81 85202003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 8521
0930c1a1 8522 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 8523
ed159bbf
KS
85242003-09-03 Kim F. Storm <storm@cua.dk>
8525
8526 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
8527 change (superseded by 2002-08-30 change); the default blink-off
8528 cursor is now again "no cursor".
8529
fe64a394
JR
85302003-09-01 Jason Rumney <jasonr@gnu.org>
8531
8532 * makefile.w32-in (alloca.o): Remove.
8533 (coding.o): Depend on intervals.h
8534 (emacs.o, bytecode.o): Depend on window.h
8535
c0175e24
DL
85362003-09-01 Dave Love <fx@gnu.org>
8537
8538 * Makefile.in (alloca.o): Remove commands.
8539 (coding.o): Depend on intervals.h composite.h window.h.
8540 (emacs.o): Depend on window.h keyboard.h keymap.h.
8541 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
8542 (bytecode.o): Depend on window.h.
8543
a24d4cb2
JR
85442003-08-31 Jason Rumney <jasonr@gnu.org>
8545
4bc2315e
JR
8546 * w32term.c (w32_per_char_metric): Allow cached metrics to be
8547 returned even when font_type is unknown.
8548
a24d4cb2
JR
8549 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
8550
9d35adc7
JD
85512003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8552
8553 * xterm.c (x_term_init): Initialize new fields in x_display_info.
8554
8555 * xterm.h (struct x_display_info): Add red/green/blue_bits and
8556 *_offset.
8557
8558 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
8559 calculate pixel value.
8560
6f68b035
GM
85612003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
8562
0930c1a1
SM
8563 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
8564 Don't tell redisplay display is accurate when it's actually been
8565 paused for pending input.
6f68b035 8566
4828b4d7
RS
85672003-08-29 Richard M. Stallman <rms@gnu.org>
8568
8569 * dispnew.c (adjust_glyph_matrix): Call window_box
8570 whenever W is nonzero.
8571
8572 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
8573 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 8574 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
8575 Use indirect_variable to trace thru variable aliases.
8576
8577 * config.in: Updated.
8578
8579 * callint.c (Fcall_interactively): Save and restore
8580 Vthis_command, Vthis_original_command, real_this_command,
8581 and current_kboard->Vlast_command.
8582
8583 * abbrev.c (Fexpand_abbrev): Insert before deleting.
8584
e019878d
GM
85852003-08-29 Gerd Moellmann <gerd@gnu.org>
8586
8587 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
8588
85478bc6
KH
85892003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
8590
0930c1a1 8591 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
8592 (decode_coding_sjis_big5): Likewise.
8593
07ce82d3
JR
85942003-08-27 Jason Rumney <jasonr@gnu.org>
8595
d3703de3
JR
8596 * w32.c (sys_pipe): Protect against file descriptor overflow.
8597
ee4a01d1
JR
8598 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
8599
07ce82d3
JR
8600 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
8601
a64387ee 86022003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
8603
8604 * xfns.c (Vgtk_version_string): New variable.
8605 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
8606
a6eeaa81 86072003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 8608
0930c1a1 8609 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 8610
5459e42a
EZ
8611 * Makefile.in (msdos.o): Depend on intervals.h.
8612
0930c1a1 8613 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 8614
231d6cfb
JD
86152003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8616
8617 * xterm.h (struct x_display_info): New fields: client_leader_window
8618 and Xatom_wm_client_leader.
8619
8620 * xterm.c (x_initialize): Move call to x_session_initialize to ...
8621 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
8622
8623 * xsmfns.c (create_client_leader_window): New function.
8624 (x_session_initialize): Call create_client_leader_window, take
8625 dpyinfo as argument.
8626
8627 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
8628
8629 * Makefile.in (xsmfns.o): Add more depenedencies.
8630
afa88464
DL
86312003-08-21 Dave Love <fx@gnu.org>
8632
8633 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
8634
f730033e
KH
86352003-08-21 Kenichi Handa <handa@m17n.org>
8636
8637 * term.c (term_init): Fix previous change; don't rely on the
8638 length of `buffer' if TERMINFO is defined.
8639
6dca786c
DL
86402003-08-20 Dave Love <fx@gnu.org>
8641
8642 * atimer.h: Include lisp.h.
8643
8644 * lisp.h (EMACS_LISP_H): New.
8645 (popup_activated_flag): Don't declare.
8646
8647 * alloca.c: Some merging with gnulib. Change logic and doc
8648 concerning (x)malloc/(x)free -- no longer Emacs-specific.
8649 [DO_BLOCK_INPUT]: Don't include lisp.h.
8650 (xmalloc, xfree): Declare.
8651 (malloc): Don't declare.
8652
0930c1a1 8653 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
8654 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
8655 atimer.h, blockinput.h.
8656
8657 * alloc.c (lisp_align_malloc): Change type of `aligned'.
8658
78819ebb 8659 * alloca.s: Remove.
6dca786c 8660
3a06a6d9
RS
86612003-08-19 Gerd Moellmann <gerd@gnu.org>
8662
8663 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
8664 use -lncurses.
8665
8666 * term.c (term_init): Use a buffer of size 4096 for tgetent since
8667 FreeBSD returns something longer than 2044. Abort if the end of
8668 the buffer is overwritten.
8669
27eeee55
MB
86702003-08-19 Miles Bader <miles@gnu.org>
8671
8672 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
8673
2f297815
GM
86742003-08-19 Gerd Moellmann <gerd@gnu.org>
8675
f4446bbf
GM
8676 * alloc.c (lisp_align_malloc): Check for memory full when
8677 allocating ablocks, which also avoids freeing a pointer into an
8678 ablocks structure.
8679
8680 * puresize.h (BASE_PURESIZE): Increase to 1100000.
8681
0930c1a1 8682 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 8683
0e7d7aae
RS
86842003-08-16 Richard M. Stallman <rms@gnu.org>
8685
8686 * editfns.c (Fencode_time): Doc fix.
8687
86882003-08-16 David Ponce <david@dponce.com>
8689
8690 * fileio.c (Fwrite_region): Fix conditional expression to issue
8691 the right message.
8692
b6189c3b 86932003-08-16 Juri Linkov <juri@jurta.org>
0e7d7aae
RS
8694
8695 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 8696 Set default value to 1.
0e7d7aae 8697
5d551295
KH
86982003-08-15 Kenichi Handa <handa@m17n.org>
8699
8700 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
8701 what autoscaled.
8702 (best_matching_font): Once we find a better scalable font, set
8703 non_scalable_has_exact_height_p to 1.
8704 (try_font_list): Call try_alternative_families to try any family
8705 with the given registry.
8706
1661e56b
AS
87072003-08-09 Andreas Schwab <schwab@suse.de>
8708
f29181dc
AS
8709 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
8710
1661e56b
AS
8711 * print.c (print_string): Fix printing of multibyte string with
8712 nontrivial printcharfun.
8713
465aa50a
JD
87142003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8715
8716 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
8717
8718 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
8719
e430e5ba
KH
87202003-07-31 Kenichi Handa <handa@m17n.org>
8721
8722 * process.c (read_process_output): Return the actually read bytes
8723 instead of the result of decoding.
8724
97e7188e
KH
87252003-07-31 Kenichi Handa <handa@m17n.org>
8726
8727 * xterm.h (struct x_bitmap_record): New member have_mask.
8728
8729 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
8730 to 0.
8731 (x_create_bitmap_from_file): Likewise.
8732 (x_destroy_bitmap): Check have_mask member before freeing a mask.
8733 (x_destroy_all_bitmaps): Likewise.
8734 (x_create_bitmap_mask): Set have_mask member to 1.
8735
b53094d6
RS
87362003-07-30 Richard M. Stallman <rms@gnu.org>
8737
8738 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
8739
631f2082
JD
87402003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8741
8742 * gtkutil.c (xg_mark_data): Update calls to mark_object.
8743
c855f2ca
RS
87442003-07-29 Richard M. Stallman <rms@gnu.org>
8745
8746 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
8747 Conditionalize XIM code on HAVE_XIM.
8748
8749 * fns.c (Fclear_string): New function.
8750 (syms_of_fns): defsubr it.
8751
b6189c3b 87522003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
17e6d491 8753
0930c1a1 8754 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 8755
29ea8ae9
SM
87562003-07-22 Stefan Monnier <monnier@cs.yale.edu>
8757
8758 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
8759
8760 * buffer.c (delete_all_overlays): New function.
8761 * buffer.h (delete_all_overlays): Declare.
8762 * coding.c (run_pre_post_conversion_on_str):
8763 * print.c (temp_output_buffer_setup):
8764 * fileio.c (Finsert_file_contents):
8765 * minibuf.c (get_minibuffer): Use it.
8766
1dd7ccf2
AC
87672003-07-22 Andrew Choi <akochoi@shaw.ca>
8768
8769 * unexmacosx.c (unexec_regions_sort_compare):
8770 (unexec_regions_merge): New functions. Sort and merge unexec
8771 regions before dumping them.
8772
f57bd967
DL
87732003-07-22 Dave Love <fx@gnu.org>
8774
8775 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
8776
7cdee936
SM
87772003-07-21 Stefan Monnier <monnier@cs.yale.edu>
8778
8779 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
8780 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
8781 MARKBIT as the gcmarkbit for strings.
8782
e50886d3
RS
87832003-07-21 Richard M. Stallman <rms@gnu.org>
8784
8785 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
8786
29ea8ae9 8787 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
8788 (syms_of_fns): Corresponding change.
8789
8790 * alloc.c (syms_of_alloc): Doc fixes.
8791
87922003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
8793
8794 * s/netbsd.h: Use -Wl syntax.
8795
fdc39b59
RS
87962003-07-17 Richard M. Stallman <rms@gnu.org>
8797
8798 * xterm.c (xim_initialize): Redo 6/24 change.
8799
9c53385f
SM
88002003-07-15 Stefan Monnier <monnier@cs.yale.edu>
8801
8802 * buffer.c (copy_overlays): Use EMACS_INT for positions.
8803 (Fswitch_to_buffer): Don't signal an error when switching to the same
8804 buffer in a dedicated window.
8805
8806 * alloc.c: Use bitmaps for cons, as was done for floats.
8807 (init_float, init_cons): Let the normal code allocate the first block.
8808 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
8809 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
8810 New macros.
8811 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
8812 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
8813 (live_cons_p): Check the pointer is not past the `conses' array.
8814 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
8815 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
8816 (survives_gc_p): Use CONS_MARKED_P and simplify.
8817 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
8818
dde13196
PE
88192003-07-13 Paul Eggert <eggert@twinsun.com>
8820
8821 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
8822 puts it into BSS instead, at least on Solaris 8 and 9.
8823 This is a valid optimization, and it may occur on other platforms,
8824 so Emacs should not assume that initializing a static variable to
8825 zero puts it into data.
8826 * alloc.c (pure, staticvec):
8827 Initialize these arrays to nonzero, so that they're not
8828 put into BSS by that optimization.
8829
a801bc34
SM
88302003-07-13 Stefan Monnier <monnier@cs.yale.edu>
8831
8832 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
8833 (lisp_align_malloc): Use posix_memalign is available.
8834 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
8835 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
8836 for consistency. Update users.
8837
0c8b2afa
RS
88382003-07-13 Richard M. Stallman <rms@gnu.org>
8839
8840 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
8841
668c2ab0
JB
88422003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
8843
8844 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
8845 and use the Gtk+ function gtk_window_icon_from_file if available.
8846
8847 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
8848 handle mask of bitmaps.
8849 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
8850 mask property.
8851 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
8852
8853 * xterm.h (xg_set_icon): New function.
8854
800bebe3
RS
88552003-07-12 Paul Eggert <eggert@twinsun.com>
8856
8857 * unexelf.c (unexec): Consider a section to precede the .bss
8858 section if its addresses overlap that of .bss.
8859
69e38995
RS
88602003-07-12 Richard M. Stallman <rms@gnu.org>
8861
8862 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
8863
8864 * config.in (HAVE_CRTIN): Add #undef.
8865 (INLINE): Really inline only if OPTIMIZE is defined.
8866
8867 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
8868 END_FILES_1.
8869 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 8870 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
8871
8872 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
8873 (TERMINFO): Define.
8874 (LIBS_TERMCAP): Define.
8875 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
8876
8877 * xfns.c: Include libpng/png.h instead of png.h.
8878
f1d0c238
AS
88792003-07-11 Andreas Schwab <schwab@suse.de>
8880
8881 * buffer.c (modify_overlay): Update prototype.
8882 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
8883 Likewise.
8884
5f6bf5fe
SM
88852003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8886
8887 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
8888 (struct interval): Move to intervals.h.
8889 (struct Lisp_Marker): Use EMACS_INT for position info.
8890 (forward_point): Remove prototype of defunct function.
8891 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
8892 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
8893 (syms_of_textprop, set_text_properties): Remove prototypes that are
8894 already in intervals.h.
8895
8896 * intervals.h (struct interval): Move from lisp.h.
8897 Use EMACS_INT for position and size info.
8898
8899 * coding.c: Include intervals.h for Fset_text_properties.
8900
8901 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8902 position and length information.
8903
2765b457
SM
89042003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8905
8906 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
8907 position and length information.
8908
2410d73a
SM
89092003-07-09 Stefan Monnier <monnier@cs.yale.edu>
8910
8911 Change overlays_after and overlays_before so the overlays themselves
8912 are linked into lists, rather than using cons cells. After all each
8913 Lisp_Misc already occupies 5 words, so we can add a `next' field to
8914 Lisp_Overlay for free and save up one cons cell per overlay (not
8915 to mention one indirection when traversing the list of overlay).
8916
8917 * lisp.h (struct Lisp_Overlay): New field `next'.
8918
8919 * buffer.h (struct buffer): Change overlays_before and overlays_after
8920 from Lisp lists of overlays to pointers to overlays.
8921
8922 * buffer.c (overlay_strings, recenter_overlay_lists):
8923 Fix typo in eassert in last commit.
8924 (unchain_overlay): New function.
8925 (add_overlay_mod_hooklist): Use AREF.
8926 (copy_overlays, reset_buffer, overlays_at, overlays_in)
8927 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
8928 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
8929 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
8930 (report_overlay_modification, evaporate_overlays, init_buffer_once):
8931 Adjust to new type of overlays_(before|after).
8932
8933 * alloc.c (mark_object): Mark the new `next' field of overlays.
8934 (mark_buffer): Manually mark the overlays_(after|before) fields.
8935
8936 * coding.c (run_pre_post_conversion_on_str):
8937 * editfns.c (overlays_around):
8938 * xdisp.c (load_overlay_strings):
8939 * fileio.c (Finsert_file_contents):
8940 * indent.c (current_column):
8941 * insdel.c (signal_before_change, signal_after_change):
8942 * intervals.c (set_point_both):
8943 * print.c (temp_output_buffer_setup): Use new type for
8944 overlays_(before|after).
8945
04812929
SM
89462003-07-08 Stefan Monnier <monnier@cs.yale.edu>
8947
8948 * buffer.c (report_overlay_modification): Don't run hooks while
8949 traversing the list of overlays.
8950
8951 * buffer.h (struct buffer): Use an int for overlay_center.
8952 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8953 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8954
8955 * buffer.c (reset_buffer, recenter_overlay_lists)
8956 (adjust_overlays_for_insert, adjust_overlays_for_delete)
8957 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
8958 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
8959 (overlays_at, evaporate_overlays, recenter_overlay_lists)
8960 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
8961
8962 * xdisp.c (fast_find_position): Remove unused var.
8963
8964 * cmds.c (Qexpand_abbrev): New sym.
8965 (syms_of_cmds): Initialize it.
8966 (internal_self_insert): Use it to call expand-abbrev.
8967
2e7ecf15
KS
89682003-07-09 Kim F. Storm <storm@cua.dk>
8969
f9711de4 8970 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 8971 was configured with --without-xim.
42f81f64 8972 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 8973
c6de56a0
RS
89742003-07-07 Richard M. Stallman <rms@gnu.org>
8975
8976 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
8977
8978 * alloc.c (Fgarbage_collect): Doc fix.
8979
b6189c3b 89802003-07-07 Nozomu Ando <nand@mac.com>
b93fb365
KH
8981
8982 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
8983
bfe1a3f7
SM
89842003-07-06 Stefan Monnier <monnier@cs.yale.edu>
8985
04812929
SM
8986 * minibuf.c (read_minibuf): UNGCPRO before returning.
8987 (Ftry_completion, Fall_completions): Doc fix.
8988
bfe1a3f7
SM
8989 * alloc.c (live_float_p): Check that p is not past the `floats' array,
8990 now that `floats' is not the last element of the struct any more.
8991
ee79d1aa
JR
89922003-07-06 Jason Rumney <jasonr@gnu.org>
8993
8994 * w32term.h (ClipboardSequence_Proc): New type.
8995
8996 * w32fns.c (clipboard_sequence_fn): New variable.
8997 (globals_of_w32fns): Initialize it.
8998
8999 * w32select.c (last_clipboard_sequence_number): New variable.
9000 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
9001 number if possible.
9002
49723c04
SM
90032003-07-06 Stefan Monnier <monnier@cs.yale.edu>
9004
4698665f
SM
9005 * m/amdx86-64.h (MARKBIT):
9006 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
9007 MARKBIT and ARRAY_MARK_FLAG any more.
9008
9009 * m/hp800.h (XSETMARKBIT):
9010 * m/sr2k.h (XSETMARKBIT):
9011 * lisp.h (XSETMARKBIT): Remove unused macro.
9012
49723c04
SM
9013 * lisp.h (mark_object): Change prototype.
9014
9015 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
9016 (last_marked): Change accordingly.
9017 (mark_interval, mark_maybe_object, mark_maybe_pointer)
9018 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
9019 (mark_buffer): Update calls to mark_object.
9020
9021 * bytecode.c (mark_byte_stack):
9022 * fns.c (sweep_weak_table):
9023 * keyboard.c (mark_kboards): Update calls to mark_object.
9024
1d660eca
JR
90252003-07-06 Jason Rumney <jasonr@gnu.org>
9026
9027 * alloc.c (struct ablock): Only include padding when there is some.
9028
618b5ae4
SM
90292003-07-04 Stefan Monnier <monnier@cs.yale.edu>
9030
9031 * alloc.c (ALIGN): Add casts to simplify usage.
9032 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
9033 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
9034 (struct ablock, struct ablocks): New types.
9035 (free_ablock): New global var.
9036 (lisp_align_malloc, lisp_align_free): New functions.
9037 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
9038 (struct float_block): Reorder and add gcmarkbits.
9039 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
9040 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
9041 (init_float, make_float): Use lisp_align_malloc.
9042 (free_float, live_float_p): Don't use `type' any more.
9043 (make_float): Use FLOAT_UNMARK to access to mark bit.
9044 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
9045 Use FLOAT_MARKED_P to access the mark bit.
9046 (pure_alloc): Simplify use of ALIGN.
9047 (mark_object): Use FLOAT_MARK to access the mark bit.
9048 (gc_sweep): Use new macros to access the float's mark bit.
9049 (init_alloc_once): Init free_ablock.
9050
9051 * lisp.h (struct Lisp_Float): Remove unused field `type'.
9052
3ef06d12
SM
90532003-06-27 Stefan Monnier <monnier@cs.yale.edu>
9054
9055 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
9056 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
9057 (allocate_buffer): Move.
9058 (string_bytes): Don't mask markbit of `size_byte'.
9059 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
9060 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
9061 Use the `size' field of buffers (rather than the `name' field) for
9062 the mark bit, as is done for all other vectorlike objects.
9063 Use the new macros to access the mark bit of vectorlike objects.
9064
e81043aa
RS
90652003-06-26 Richard M. Stallman <rms@gnu.org>
9066
9067 * puresize.h (BASE_PURESIZE): Increment base size.
9068
9069 * xdisp.c (fast_find_position): Enable Gerd's new definition.
9070
9071 * xterm.c (xim_initialize): Undo previous change.
9072
2d0834cc
SM
90732003-06-26 Stefan Monnier <monnier@cs.yale.edu>
9074
9075 * alloc.c (survives_gc_p): Simplify.
9076
9077 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
9078
9079 * window.c (Fset_window_dedicated_p): Simplify.
9080 (display_buffer_1): Don't raise the win from which minibuf was entered.
9081 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
9082 (Fminibuffer_selected_window): Simplify.
9083
9084 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
9085
9086 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
9087 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
9088
9089 * insdel.c (check_markers, adjust_markers_for_delete)
9090 (adjust_markers_for_insert, adjust_markers_for_replace)
9091 (prepare_to_modify_buffer, RESTORE_VALUE):
9092 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
9093 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
9094 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
9095 * alloc.c (Fmake_marker, free_marker, gc_sweep):
9096 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
9097 * editfns.c (save_excursion_restore, transpose_markers):
9098 * window.c (delete_window):
9099 * xdisp.c (message_dolog): Update for new types.
9100
d54ae3d8
JD
91012003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9102
a5f696ac
JD
9103 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
9104 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 9105 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
9106
9107 * frame.c (make_frame): Initialize default_face_done_p.
9108
9109 * frame.h (struct frame): Add default_face_done_p.
9110
d54ae3d8
JD
9111 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
9112 will be defined.
9113
2336fe58
SM
91142003-06-25 Stefan Monnier <monnier@cs.yale.edu>
9115
9116 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
9117 Initialize the new field `gcmarkbit'.
9118 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
9119 (mark_interval_tree): Don't mark the tree separately from the nodes.
9120 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
9121 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
9122 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
9123
9124 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
9125 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
9126 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
9127 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
9128 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
9129
bcea31c2
DL
91302003-06-24 Dave Love <fx@gnu.org>
9131
9132 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
9133
9134 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
9135 from gnulib.
9136
2601f59e
RS
91372003-06-21 Richard M. Stallman <rms@gnu.org>
9138
9139 * fileio.c (Fwrite_region): Alternate messages
9140 for append and partial write.
9141
9142 * keyboard.c (read_key_sequence): When converting upcase fn key to
9143 downcase, update fkey and keytran so `backspace' gets translated.
9144
9145 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
9146
9147 * process.c (wait_reading_process_input): Don't signal SIGIO
9148 in batch mode.
9149
b5d2c621
KH
91502003-06-17 Kenichi Handa <handa@m17n.org>
9151
9152 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
9153 composite.h.
9154
9155 * xselect.c: Don't include charset.h, coding.h, composite.h.
9156 (Qforeign_selection): New variable.
9157 (syms_of_xselect): Intern and static it.
9158 (selection_data_to_lisp_data): Return a unibyte string made from
9159 data with `foreign-selection' text property.
9160
6793bc63
SM
91612003-06-15 Stefan Monnier <monnier@cs.yale.edu>
9162
9163 * termhooks.h (EVENT_INIT): New macro.
9164
9165 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
9166
9167 * alloc.c (mark_kboards): Move to keyboard.c.
9168
9169 * keyboard.c (record_asynch_buffer_change, read_avail_input):
9170 * xterm.c (x_dispatch_event):
9171 * xmenu.c (find_and_call_menu_selection):
9172 * xdisp.c (handle_tool_bar_click):
9173 * w32menu.c (menubar_selection_callback):
9174 * sysdep.c (kbd_input_ast, read_input_waiting):
9175 * msdos.c (dos_rawgetc):
9176 * macterm.c (mac_check_for_quit_char):
9177 * macmenu.c (menubar_selection_callback):
9178 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
9179 data to kbd_buffer_store_event.
9180
b3ea810c
KS
91812003-06-15 Kim F. Storm <storm@cua.dk>
9182
9183 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 9184 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 9185
b8f75eda
KG
91862003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
9187
9188 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
9189
ba92ce48
KH
91902003-06-12 Kenichi Handa <handa@m17n.org>
9191
9192 * fileio.c (Fwrite_region): Save and restore restriction.
9193
b80263be
DL
91942003-06-12 Dave Love <fx@gnu.org>
9195
9196 * alloca.c (alloca): Declare arg as size_t.
9197
6793bc63
SM
9198 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
9199 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 9200
b23c0a83
DL
92012003-06-11 Dave Love <fx@gnu.org>
9202
9203 * search.c (shrink_regexp_cache): Use xrealloc.
9204 (syms_of_search): Use xmalloc.
9205
700e47c2
KS
92062003-06-10 Kim F. Storm <storm@cua.dk>
9207
9208 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
9209 Adjust phys_cursor.x to be relative to window box, rather than
9210 text area before checking -- to ensure cursor is redrawn when
9211 exposing window.
9212 Note: This also fixes a similar (older) bug if display margins
9213 are present.
9214
f11aa0b2
KH
92152003-06-06 Kenichi Handa <handa@m17n.org>
9216
9217 * coding.c (encoding_buffer_size): If coding->type is
9218 coding_type_ccl, double magnification on CRLF encoding.
9219
3d143690
JR
92202003-06-06 Jason Rumney <jasonr@gnu.org>
9221
9222 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
9223 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
9224
9225 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
9226 Mac too.
9227
f16205ca
DL
92282003-06-05 Dave Love <fx@gnu.org>
9229
b23c0a83
DL
9230 * strftime.c: Merge changes from gnulib.
9231
f16205ca
DL
9232 * mktime.c (__mktime_internal): Merge changes from gnulib
9233 involving year 69 and dst2.
9234
9235 Changes to merge with gnulib version and be consistent with the
9236 autoconf test:
9237
6793bc63
SM
9238 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
9239 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
9240 [HAVE_LOCALE_H]: Include locale.h.
9241 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
9242
9b87a0bc
KS
92432003-06-05 Kim F. Storm <storm@cua.dk>
9244
9245 * window.c (coordinates_in_window): Convert X and Y to window
9246 relative coordinates inside mode-line and header-line parts.
9247 Convert X and Y to margin area relative coordinates inside left
9248 and right display margin parts.
9249
5a8a15ec
JR
92502003-06-05 Jason Rumney <jasonr@gnu.org>
9251
9252 * w32fns.c (add_system_logical_colors_to_map): New function.
9253 (Fx_open_connection): Use it.
9254
01ed8ff1
SM
92552003-06-04 Stefan Monnier <monnier@cs.yale.edu>
9256
9257 * process.c (allocate_pty): Revert part of the previous patch.
9258 (Faccept_process_output): Simplify.
9259
b427b65d
JR
92602003-06-04 Jason Rumney <jasonr@gnu.org>
9261
9262 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
9263
9264 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
9265 (lispy_mouse_wheel_names): Remove.
9266 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
9267 Always define drag_and_drop_syms.
9268
9269 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
9270 WHEEL_EVENT events.
9271
914a8c47
SM
92722003-06-03 Stefan Monnier <monnier@cs.yale.edu>
9273
01ed8ff1
SM
9274 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
9275
914a8c47
SM
9276 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
9277
adcb132c
JD
92782003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9279
9280 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
9281 menu item label.
9282
be781fa7
RS
92832003-06-03 Richard M. Stallman <rms@gnu.org>
9284
9285 * window.c (Fwindow_edges): Doc fix.
9286 (Fwindow_pixel_edges, Fwindow_inside_edges)
9287 (Fwindow_inside_pixel_edges): New functions.
9288 (syms_of_window): defsubr them.
9289
9290 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
9291 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
9292
914a8c47
SM
92932003-06-02 Stefan Monnier <monnier@cs.yale.edu>
9294
9295 * dispnew.c (Fsit_for): Don't lie about the number of args.
9296
5b07197a
DL
92972003-06-02 Dave Love <fx@gnu.org>
9298
9299 * callproc.c: Use HAVE_FCNTL_H, not USG5.
9300 (syms_of_callproc) <process-environment>: Doc fix.
9301
9302 * doc.c: Use HAVE_FCNTL_H, not USG5.
9303
9304 * xfaces.c (font_rescale_ratio): Fix for K&R.
9305
9306 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
9307
9308 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
9309
9310 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
9311
9312 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
9313 (xg_create_frame_widgets): Use ENCODE_UTF_8.
9314
d7107586 9315 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
9316
9317 * xmenu.c (ENCODE_MENU_STRING): New.
9318 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
9319 Use it.
9320
9321 * coding.h (ENCODE_UTF_8): New.
9322 (Qutf_8): Declare.
9323
9324 * coding.c (Qutf_8): New.
9325 (syms_of_coding): Intern it.
9326
9327 * fns.c: Doc fixes.
9328
7335b336
KH
93292003-06-02 Kenichi Handa <handa@m17n.org>
9330
9331 * buffer.c (Fset_buffer_multibyte): Fix previous change.
9332
914a8c47
SM
93332003-06-01 Stefan Monnier <monnier@cs.yale.edu>
9334
9335 * lread.c (openp): Make sure STR is a string.
9336
9862c135
JR
93372003-06-01 David Ponce <david@dponce.com>
9338
cab27d04 9339 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
9862c135
JR
9340 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
9341
9342 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
9343 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
9344 (discard_mouse_events): Discard WHEEL_EVENT events too.
9345 (lispy_wheel_names, wheel_syms): New.
9346 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
cab27d04 9347 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
914a8c47 9348 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
9349
9350 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
9351 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
9352 WHEEL_EVENT events.
9353
f984e73e
JPW
93542003-05-31 John Paul Wallington <jpw@gnu.org>
9355
9356 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
9357 timer are in lisp/emacs-lisp.
9358
1efcd78f
KH
93592003-05-31 Kenichi Handa <handa@m17n.org>
9360
458c8af4
KH
9361 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
9362 region when a buffer is changed to unibyte.
9363
1efcd78f
KH
9364 * charset.h (VALID_LEADING_CODE_P): New macro.
9365 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
9366
778e2804
KH
9367 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
9368 is nonzero, accept multibyte form of eight-bit-control chars.
9369 (decode_composition_emacs_mule): Likewise.
9370 (decode_coding_emacs_mule): Likewise.
9371 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
9372 multibyte form of eight-bit-control chars.
9373
9374 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
9375 (Finsert_file_contents): If coding-system-for-read is bound to
9376 Qauto_save_coding, use the coding system emacs-mule with special
9377 setting for recovering a file.
9378 (choose_write_coding_system): On auto saving, use the coding
9379 system emacs-mule with special setting for auto saving.
9380 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
9381
034060e4
KH
93822003-05-30 Kenichi Handa <handa@m17n.org>
9383
9384 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
9385 properly before calling ccl_driver.
9386
778e2804 9387 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4 9388
cab27d04 9389 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
034060e4
KH
9390 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
9391 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
9392
595f5aa5
GM
93932003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
9394
9395 * xfaces.c (realize_default_face): Do not abort if lface is
9396 non-existent - reverts change from 2003-05-19.
9397
103e0180
KH
93982003-05-29 Kenichi Handa <handa@m17n.org>
9399
9400 * coding.c (decode_coding_iso2022): Pay attention to the byte
9401 sequence of CTEXT extended segment, and retain those bytes as is.
9402
94032003-05-28 Kenichi Handa <handa@m17n.org>
9404
cab27d04 9405 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
103e0180
KH
9406 of CODING_REPLACEMENT_CHARACTER.
9407 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
9408 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
9409 check this flag on encoding.
cab27d04
SM
9410 (encode_coding_sjis_big5):
9411 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
9412 (Fset_terminal_coding_system_internal):
9413 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
9414 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
9415
9416 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
103e0180
KH
9417 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
9418 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
9419
ff6a3bfb 94202003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 9421
ff6a3bfb
RS
9422 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
9423
9424 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 9425
1963c428
KS
94262003-05-28 Kim F. Storm <storm@cua.dk>
9427
9428 * xdisp.c (expose_window): Fix error in calculation of
9429 window relative coordinates of area to redisplay.
9430
2b5d4601
JR
94312003-05-27 Jason Rumney <jasonr@gnu.org>
9432
9433 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
9434
1c64a4a2
JB
94352003-05-27 David Ponce <david@dponce.com>
9436
9437 Handle W32 mouse wheel events as mouse click events, like in X.
9438
9439 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
9440 MOUSE_WHEEL_EVENT anymore.
9441
9442 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
9443 Scrolling down/up the mouse wheel is respectively mapped to mouse
9444 button 4 and 5.
9445 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
9446 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
9447 WM_MOUSEWHEEL events.
9448
2d031b89
AS
94492003-05-27 Andreas Schwab <schwab@suse.de>
9450
20464fdf
AS
9451 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
9452
2d031b89
AS
9453 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
9454 partially visible line.
9455
9456 * alloc.c (Fgarbage_collect): Fix last change.
9457
97bc76d4
JPW
94582003-05-26 John Paul Wallington <jpw@gnu.org>
9459
9460 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
9461
56613f06
SM
94622003-05-25 Stefan Monnier <monnier@cs.yale.edu>
9463
9464 * window.c (Fset_window_buffer): Add type of `keep_margins'.
9465 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
9466
9467 * window.h (window_box_text_cols): Declare.
9468
9469 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
9470 (x_draw_vertical_border): Remove unused var `f'.
9471
9472 * xfaces.c (build_scalable_font_name): Remove `unused var
9473 pixel_size' warning.
9474
9475 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
9476
9477 * unexelf.c (unexec): Remove `unused var n' warning.
9478
9479 * strftime.c (my_strftime_localtime_r): Remove `defined but
9480 unused' warning.
9481
9482 * process.c (allocate_pty): Remove `unused var stb' and
9483 `cp might be used uninitialized' warnings.
9484
9485 * dispnew.c (mode_line_string): Remove unused var `f'.
9486
9487 * coding.c (find_safe_codings): Remove unused var `i'.
9488
9489 * bytecode.c (Fbyte_code): Remove `unused val' warning.
9490
9491 * buffer.c (Fkill_buffer): Remove unused var `list'.
9492
9493 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
9494
93421a1f
JD
94952003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9496
9497 * frame.c (make_frame): Condition want_fullscreen with
9498 HAVE_WINDOW_SYSTEM.
9499
c4b8aebc
JB
95002003-05-25 Juanma Barranquero <lektu@terra.es>
9501
9502 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
9503 (Fwindow_scroll_bars): Fix typo in docstring.
9504
0416870b
KS
95052003-05-24 Kim F. Storm <storm@cua.dk>
9506
9507 The following changes serve several purposes:
9508
9509 1) Swap the position of fringes and display margins in windows, i.e.
9510 the fringes are now displayed between the margins and the text area
9511 (by default).
9512
9513 2) Allow fringe and scroll bar parameters to be set per-buffer and
9514 per-window (like display margins). Such settings are now stored
9515 in window configurations, preserved when frames are resized, and
9018a88e 9516 copied when windows are split vertically or horizontally.
0416870b
KS
9517 Several bugs related to display margins have been fixed.
9518
9519 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 9520
0416870b
KS
9521 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
9522 rather than FRAME_WIDTH (FRAME_FONT (f)).
9523
9524 5) Introduce a consistent naming of variables, members and macros
9525 depending on whether their value is measured in pixels or in
9526 canonical columns/lines. Pixel dimensions are named *_width and
9527 *_height, while canonical columns/lines are named *_cols and
9528 *_lines. Pixel positions are named *_x and *_y, while column/line
9529 positions are named *_col and *_line.
9530
9531 6) Consolidate more of the X, W32, and MAC gui code by moving
9532 common data into struct frame, and generalize it for the non-gui
9533 case by using suitable defaults.
9534
9535 7) Cleanup and consolidate the macros controlling frame and window
9536 layout into frame.h and window.h, and generalize the use of the
9537 various window_box_* functions (enhanced to handle the new fringe
9538 position and the per-window fringe and scroll bar settings).
9539
9540 * frame.h (struct frame): Rename members height to text_lines,
9541 width to text_cols, window_height to total_lines, window_width to
9542 total_cols, new_height to new_text_lines, new_width to
9543 new_text_cols. All uses changed.
9544 (struct frame): New members which consolidate common members of
9545 x_output, w32_output, and mac_output structures: left_pos,
9546 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
9547 win_gravity, size_hint_flags, border_width, internal_border_width,
9548 line_height, fringe_cols, left_fringe_width, right_fringe_width,
9549 want_fullscreen. All uses changed.
9550 (struct frame): New member column_width contaning the canonical
9551 column width, analogue to line_height. All uses changed.
9552 (struct frame): Rename members scroll_bar_pixel_width to
9553 config_scroll_bar_width, and scroll_bar_cols to
9554 config_scroll_bar_cols. All uses changed.
9555 (struct frame): New member scroll_bar_actual_width which
9556 consolidates and renames the vertical_scroll_bar_extra member of
9557 x_output, w32_output, and mac_output structures. All uses changed.
cab27d04 9558 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
0416870b
KS
9559 from x/w32/macterm.h files. All uses changed. Also change code
9560 which referred to f->output_data...->pixel_height.
cab27d04 9561 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
f63fd14e 9562 from x/w32/macterm.h files. All uses changed. Also change code
0416870b 9563 which referred to f->output_data...->pixel_width.
cab27d04 9564 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
0416870b 9565 Also change code which referred to f->height.
cab27d04 9566 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
0416870b
KS
9567 Also change code which referred to f->width.
9568 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
9569 to update new_text_lines and new_text_cols members directly.
cab27d04 9570 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
0416870b 9571 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
cab27d04 9572 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
0416870b
KS
9573 FRAME_SCROLL_BAR_COLS. All uses changed.
9574 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
cab27d04 9575 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
0416870b
KS
9576 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
9577 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
9578 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
cab27d04
SM
9579 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
9580 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
9581 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
0416870b
KS
9582 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
9583 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
cab27d04
SM
9584 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
9585 Unconditionally return line_height member (it now has proper value
9586 also for non-window frames).
9587 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
0416870b
KS
9588 return new column_width member (rather than the default font width).
9589 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
cab27d04 9590 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
0416870b
KS
9591 from x/w32/macterm.h files. Unconditionally return corresponding
9592 member of frame structure (they now have proper values also for
9593 non-window frames).
cab27d04 9594 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
0416870b
KS
9595 Calculate return value from left and right widths.
9596 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
9597 internal_border_width member (has proper value for non-window frame).
cab27d04
SM
9598 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
9599 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
9600 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
9601 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
9602 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
0416870b 9603 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 9604 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
0416870b 9605 consolidated from xterm.h, macterm.h, and w32term.h.
cab27d04 9606 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
0416870b 9607 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
cab27d04 9608 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
0416870b 9609 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
cab27d04 9610 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
0416870b 9611 consolidated from x/mac/w32term.h.
cab27d04 9612 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
0416870b 9613 consolidated from x/mac/w32term.h.
cab27d04 9614 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
0416870b 9615 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
cab27d04 9616 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
0416870b
KS
9617 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
9618
9619 * window.h (struct window): Rename members left to left_col,
9620 top to top_line, height to total_lines, width to total_cols,
9621 left_margin_width to left_margin_cols, right_margin_width to
9622 right_margin_cols, orig_height to orig_total_lines, orig_top to
9623 orig_top_line. All uses changed.
9624 (struct window): New members left_fringe_width, right_fringe_width,
9625 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
9626 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
9627 New macros primarily used to simplify other macros.
9628 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
9629 referred to XINT (w->width).
9630 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
9631 referred to XINT (w->height).
9632 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
9633 referred to XINT (w->width) * canon_x_unit.
9634 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
9635 referred to XINT (w->height) * canon_y_unit.
9636 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
9637 referred to XINT (w->left).
cab27d04 9638 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
0416870b
KS
9639 all uses and code that referred to XINT (w->left) + XINT (w->width).
9640 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
9641 referred to XINT (w->top).
9642 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
9643 referred to XINT (w->top) + XINT (w->height).
9644 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
9645 referred to XINT (w->left) * canon_x_unit.
9646 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
9647 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
9648 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
9649 referred to XINT (w->top) * canon_y_unit.
9650 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
9651 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
9652 (WINDOW_LEFTMOST_P): New macro.
cab27d04 9653 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
0416870b 9654 All uses changed.
cab27d04 9655 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
0416870b 9656 All uses changed.
cab27d04 9657 (WINDOW_BOX_LEFT_EDGE_X): Rename from
0416870b
KS
9658 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
9659 Do not exclude left fringe width.
cab27d04 9660 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
0416870b
KS
9661 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
9662 Do not exclude fringe widths.
9663 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
9664 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
9665 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
9666 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
9667 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
9668 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
9669 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
9670 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
9671 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
9672 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
9673 New macros. Change code which referenced corresponding
9674 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
9675 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
9676 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
9677 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
9678 allow per-window scroll-bar settings.
9679 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
9680 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
9681 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
9682 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
9683 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
9684 FRAME_SCROLL_BAR_WIDTH.
9685 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 9686 (WINDOW_SCROLL_BAR_AREA_X): New macros.
cab27d04 9687 (WINDOW_HEADER_LINE_HEIGHT): Rename from
0416870b 9688 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
cab27d04 9689 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
0416870b 9690 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
cab27d04 9691 (WINDOW_BOX_TEXT_HEIGHT): Rename from
0416870b
KS
9692 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
9693 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9694 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
cab27d04
SM
9695 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
9696 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
0416870b 9697 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
cab27d04 9698 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
0416870b
KS
9699 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
9700 (window_from_coordinates): Update prototype.
9701 (Fset_window_buffer): Update EXFUN.
9702 (set_window_buffer): Update prototype.
9018a88e 9703
0416870b 9704 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 9705 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
9706 changed.
9707 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
9708 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
9709 internal_border_width is now set to 0 for non-window frames.
9710 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
9711 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
9712 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
9713 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
9714 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
9715 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
9716 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
9717 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
9718 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 9719 Move to window.h and renamed [see window.h changes].
0416870b
KS
9720 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
9721 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
9722 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
9723 Use WINDOW_TOTAL_LINES.
0416870b
KS
9724 (frame_update_line_height): Remove prototype.
9725
9726 * buffer.h (struct buffer): Rename members measured in columns:
9727 left_margin_width to left_margin_cols, right_margin_width to
9728 right_margin_cols. All uses changed.
9729 New members left_fringe_width, right_fringe_width,
9730 fringes_outside_margins for per-buffer fringe settings.
9731 New members scroll_bar_width and vertical_scroll_bar_type for
9732 per-buffer scroll bar settings.
9733
9734 * buffer.c (init_buffer_once): Set buffer_defaults and
9735 buffer_local_flags for new buffer-local variables
9736 left_fringe_width, right_fringe_width, fringes_outside_margins,
9737 scroll_bar_width, and vertical_scroll_bar_type.
9738 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
9739 default-* variables for them.
9740
9741 * dispnew.c: Make (many) trivial substitutions for renamed and
9742 new macros in dispextern.h, frame.h and window.h.
9743 (mode_line_string): No need to adjust width for mode lines, as it
9744 is already adjusted by the caller.
9745 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 9746
0416870b
KS
9747 * frame.c: Make (many) trivial substitutions for renamed and
9748 new macros in dispextern.h, frame.h and window.h.
9749 (make_frame): Initialize left_fringe_width, right_fringe_width,
9750 fringe_cols, scroll_bar_actual_width, border_width,
9751 internal_border_width, column_width, line_height, x_pixels_diff,
9752 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
9753 members with values suitable for a non-window frames.
9754
9755 * gtkutil.c: Make (many) trivial substitutions for renamed and
9756 new macros in dispextern.h, frame.h and window.h.
9018a88e 9757
0416870b
KS
9758 * indent.c: Make (few) trivial substitutions for renamed and
9759 new macros in dispextern.h, frame.h and window.h.
9760
9761 * keyboard.c: Make (many) trivial substitutions for renamed and
9762 new macros in dispextern.h, frame.h and window.h.
9763 (make_lispy_event): Use window positions returned from
9764 window_from_coordinates when constructing the lisp event for
9765 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
9766 (incorrect) values locally.
9767 (make_lispy_movement): Use window positions returned from
9768 window_from_coordinates when constructing the lisp event, rather
9769 than calculating (incorrect) values locally.
9770
9771 * scroll.c: Make (some) trivial substitutions for renamed and
9772 new macros in dispextern.h, frame.h and window.h.
9773
9774 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
9775 scroll-bars.
9776
9777 * sysdep.c: Make (few) trivial substitutions for renamed and
9778 new macros in dispextern.h, frame.h and window.h.
9779
9780 * term.c: Make (some) trivial substitutions for renamed and
9781 new macros in dispextern.h, frame.h and window.h.
9782
9783 * widget.c: Make (few) trivial substitutions for renamed and
9784 new macros in dispextern.h, frame.h and window.h.
9785
9786 * window.c: Make (many) trivial substitutions for renamed and
9787 new macros in dispextern.h, frame.h and window.h.
9788 (make_window): Initialize new members
9789 left_margin_cols, right_margin_cols, left_fringe_width,
9790 right_fringe_width, fringes_outside_margins, scroll_bar_width,
9791 and vertical_scroll_bar_type.
cab27d04 9792 (coordinates_in_window): Adapt to new fringe/margin positions
9018a88e 9793 and per-window fringes and scroll-bars.
0416870b 9794 Fix bug related to incorrectly adjusting coordinates by
9018a88e 9795 frame's internal_border_width (the effect normally negible since
0416870b
KS
9796 the internal_border_width is typically 0 or 1 pixel, but very
9797 noticeable for an internal_border_width of e.g. 25 pixels).
9798 Upon successful return (other than ON_NOTHING), the coordinates
9799 are now always properly converted to window relative for the
9800 given display element.
9801 (window_from_coordinates): Add new parameters wx and wy to
9802 return the window relative x and y position in the returned
9803 window and part. A null arg means, don't return the position.
9804 All callers changed.
9805 (adjust_window_margins): New function which may reduce the width
9806 of the display margins if a window's text area is too small after
9807 resizing or splitting windows.
9808 (size_window): Fix bug that did not account for display margin
9809 widths when checking the minimum width of a window; use
9810 adjust_window_margins.
9811 (set_window_buffer): Call Fset_window_fringes and
9812 Fset_window_scroll_bars to setup per-window elements.
9813 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
9814 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
9815 (e.g. after splitting a window or resizing the frame).
9816 All callers changed.
0416870b
KS
9817 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
9818 (Fsplit_window): Duplicate original window's display margin,
9819 fringe, and scroll-bar settings; then call Fset_window_buffer with
9820 KEEP_MARGINS non-nil. This fixes a bug which caused a split
9821 window to only preserve the display margins in one of the windows.
c4b8aebc 9822 When splitting horizontally, call adjust_window_margins on both
0416870b 9823 windows to ensure that the text area of the new windows is non too
f9711de4 9824 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
9825 width of the split window was less than the width of the display
9826 margins.
cab27d04 9827 (window_box_text_cols): Rename from window_internal_width.
9018a88e 9828 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
9829 Fix bug that caused vertical separator to be subtracted also on
9830 window frames. Fix another bug that did not reduce the returned
9831 value by the columns used for display margins.
9832 (window_scroll_line_based): Fix bug related to scrolling too much
9833 when display margins are present (implicitly fixed by the fix to
9834 window_box_text_cols).
9835 (scroll_left, scroll_right): Fix bug related to scrolling too far
9836 by default when display margins are present (implicitly fixed by
9837 the fix to window_box_text_cols).
9838 (struct saved_window): Rename members left to left_col, top to
9839 top_line, width to total_cols, height to total_lines, orig_top to
9840 orig_top_line, orig_height to orig_total_lines. All uses changed.
9841 New members left_margin_cols, right_margin_cols,
9842 left_fringe_width, right_fringe_width, fringes_outside_margins,
9843 scroll_bar_width, and vertical_scroll_bar_type for saving
9844 per-window display elements.
9845 (Fset_window_configuration): Restore display margins, fringes,
9846 and scroll bar settings. This fixes a bug which caused display
9847 margins to be discarded when saving and restoring a window
9848 configuration.
9849 (save_window_save): Save display margins, fringes, and scroll bar
9850 settings. This fixes a bug which caused display margins to be
9851 discarded when saving and restoring a window configuration.
9852 (Fset_window_margins): Do nothing if display margins are not
9853 really changed. Otherwise, call adjust_window_margins to ensure
9854 the text area doesn't get too narrow. This fixes a bug which
f9711de4 9855 could cause Emacs to trap if setting display margins wider than
0416870b
KS
9856 the width of the window.
9857 (Fset_window_fringes): New defun to allow user to specifically set
9858 this window's fringe widths and position vs. display margins.
cab27d04 9859 (Fwindow_fringes): New defun to return window's actual fringe settings.
0416870b
KS
9860 (Fset_window_scroll_bars): New defun to allow user to specifically
9861 set this window's scroll bar width and position.
9862 (Fwindow_scroll_bars): New defun to return window's actual scroll
9863 bar settings.
9864 (compare_window_configurations): Also compare display margins,
9865 fringes, and scroll bar settings.
9866 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
9867
9868 * xdisp.c: Make (many) trivial substitutions for renamed and
9869 new macros in dispextern.h, frame.h and window.h.
9870 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 9871 and new fringe vs. display margin position. Note that returned
0416870b
KS
9872 value is no longer guaranteed to be a whole multiple of the frame
9873 column width, since per-window fringes may now be any width.
9874 (window_box_left_offset): New function like window_box_left, but
9875 value is relative to left border of window (rather than frame).
9876 (window_box_right_offset): New function like window_box_right,
9877 but value is relative to left border of window.
9878 (window_box_left): Adapt to per-window fringes and scroll bars,
9879 and new fringe vs. display margin position. Simplify by using
9880 WINDOW_LEFT_EDGE_X and window_box_left_offset.
9881 (window_box): Allow null args for unnecessary return values;
9882 change/simplify relevant callers.
9883 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
9884 and new fringe vs. display margin position.
9885 Use window_box_left_offset and window_box_right_offset
0416870b 9886 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
9887 scroll bars, and new fringe vs. display margin position.
9888 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
9889 (draw_fringe_bitmap): Rework to handle per-window fringes and new
9890 fringe vs. display margin position.
9891 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
9892 (redisplay_window): Adapt to per-window scroll bars.
9893 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
9894 bars, and new fringe vs. display margin position.
9895 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 9896 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
9897 bars, and new fringe vs. display margin position. Fix bug which
9898 increased total width of full_width rows by width of scroll bars
9899 although window's total width already includes that.
9900 (x_fix_overlapping_area): Simplify using window_box_left_offset.
9901 (expose_area): Simplify using window_box_left_offset.
9902 (x_draw_vertical_border): Handle per-window scroll bar settings,
9903 mixing windows with left, right and no scroll bars.
9904
9905 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
9906 where it's used in x_list_fonts (for clarity).
9907 (frame_update_line_height): Remove unused function; functionality
9908 is now done directly when setting the default font in x_set_font.
9909
9910 * xfns.c: Make (many) trivial substitutions for renamed and
9911 new macros in dispextern.h, frame.h and window.h.
9912
9913 * xmenu.c: Make (some) trivial substitutions for renamed and
9914 new macros in dispextern.h, frame.h and window.h.
9915
9916 * xterm.h (struct x_output): Move members left_pos, top_pos,
9917 border_width, pixel_height, pixel_width, line_height,
9918 internal_border_width, vertical_scroll_bar_extra,
9919 left_fringe_width, right_fringe_width, fringe_cols,
9920 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9921 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9922 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9923 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9924 (PIXEL_WIDTH, PIXEL_HEIGHT)
9925 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9926 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9927 frame.h and renamed [see frame.h changes].
9928 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9929 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9930 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9931 and renamed [see frame.h changes].
9018a88e 9932
0416870b
KS
9933 * xterm.c: Make (several) trivial substitutions for renamed and
9934 new macros in dispextern.h, frame.h and window.h.
cab27d04 9935 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9936 (scroll_run): Adapt to new fringe position.
9937 (glyph_rect): Use window coordinates returned from
9938 window_from_coordinates rather than frame_to_window_pixel_xy.
9939 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9940 scroll-bars.
9941 (handle_one_xevent): Simplify a USE_GTK conditional.
9942 (x_clip_to_row): Remove superfluous whole_line_p arg and code
9943 (fringes are now inside margins, i.e. always in the clipping area).
9944 All callers changed.
9945 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9946 directly, then call compute_fringe_widths. Don't call
9947 frame_update_line_height.
9948
9949 * w32term.h (struct w32_output): Move members left_pos, top_pos,
9950 border_width, pixel_height, pixel_width, line_height,
9951 internal_border_width, vertical_scroll_bar_extra,
9952 left_fringe_width, right_fringe_width, fringe_cols,
9953 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9954 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
9955 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9956 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9957 (PIXEL_WIDTH, PIXEL_HEIGHT)
9958 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9959 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
9960 frame.h and renamed [see frame.h changes].
9961 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
9962 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 9963 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 9964 and renamed [see frame.h changes].
9018a88e 9965
0416870b
KS
9966 * w32term.c: Make (several) trivial substitutions for renamed and
9967 new macros in dispextern.h, frame.h and window.h.
cab27d04 9968 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
9969 (glyph_rect): Use window coordinates returned from
9970 window_from_coordinates rather than frame_to_window_pixel_xy.
9971 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
9972 scroll-bars.
9973 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
9974 (fringes are now inside margins, i.e. always in the clipping area).
9975 All callers changed.
9976 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
9977 directly, then call compute_fringe_widths. Don't call
9978 frame_update_line_height.
9979
9980 * w32console.c: Make (few) trivial substitutions for renamed and
9981 new macros in dispextern.h, frame.h and window.h.
9982
9983 * w32fns.c: Make (many) trivial substitutions for renamed and
9984 new macros in dispextern.h, frame.h and window.h.
9985
9986 * w32menu.c: Make (few) trivial substitutions for renamed and
9987 new macros in dispextern.h, frame.h and window.h.
9988
9989 * macterm.h (struct mac_output): Move members left_pos, top_pos,
9990 border_width, pixel_height, pixel_width, line_height,
9991 internal_border_width, vertical_scroll_bar_extra,
9992 left_fringe_width, right_fringe_width, fringe_cols,
9993 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
9994 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
9995 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
9996 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
9997 (PIXEL_WIDTH, PIXEL_HEIGHT)
9998 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
cab27d04 9999 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
0416870b
KS
10000 frame.h and renamed [see frame.h changes].
10001 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
10002 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
cab27d04 10003 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
0416870b 10004 and renamed [see frame.h changes].
9018a88e 10005
0416870b
KS
10006 * macterm.c: Make (several) trivial substitutions for renamed and
10007 new macros in dispextern.h, frame.h and window.h.
cab27d04 10008 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
0416870b
KS
10009 (glyph_rect): Use window coordinates returned from
10010 window_from_coordinates rather than frame_to_window_pixel_xy.
10011 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
10012 scroll-bars.
10013 (x_clip_to_row): Remove superfluous whole_line_p arg and code
10014 (fringes are now inside margins, i.e. always in the clipping area).
10015 All callers changed.
10016 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
10017 directly, then call compute_fringe_widths. Don't call
10018 frame_update_line_height.
10019
10020 * macfns.c: Make (several) trivial substitutions for renamed and
10021 new macros in dispextern.h, frame.h and window.h.
9018a88e 10022 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
10023
10024 * macmenu.c: Make (few) trivial substitutions for renamed and
10025 new macros in dispextern.h, frame.h and window.h.
10026
10027 * msdos.h (struct x_output): Remove members left_pos, top_pos,
10028 and line_height, and use corresponding new members in struct
10029 frame. All uses changed.
10030 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
10031 superseeded by corresponding macros in frame.h.
10032
10033 * msdos.c: Make (several) trivial substitutions for renamed and
10034 new macros in dispextern.h, frame.h and window.h.
10035 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 10036 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
10037 (internal_terminal_init): No need to initialize line_height here;
10038 it now defaults to 1.
10039
9018a88e
SM
100402003-05-24 Stefan Monnier <monnier@cs.yale.edu>
10041
10042 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
10043 dropping `down' events.
10044
016bd3c0
AS
100452003-05-24 Andreas Schwab <schwab@suse.de>
10046
10047 * coding.c (find_safe_codings): Fix last change.
10048
4dacadcc
TTN
100492003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
10050
10051 * xfns.c (x_window): Fix typo from 2003-05-21 change.
10052
319830ce
SM
100532003-05-23 Stefan Monnier <monnier@cs.yale.edu>
10054
9018a88e
SM
10055 * xdisp.c (display_mode_element): Increase max depth.
10056 Simplify the error handling code. Use a different error string
10057 for the case where we hit the depth limit.
10058
319830ce
SM
10059 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
10060
10061 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
10062
100632003-05-21 Stefan Monnier <monnier@cs.yale.edu>
10064
10065 * intervals.c (get_local_map): Don't get char-property of previous
10066 point any more: get_pos_property already does it and better.
10067
c67de8ba
DL
100682003-05-21 Dave Love <fx@gnu.org>
10069
10070 [Merged from unicode branch.]
10071
10072 * xfns.c (x_window, x_window): Use use_xim.
10073
10074 * xterm.c (use_xim): Initialize.
10075 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
10076 (x_term_init): Maybe set use_xim.
10077
10078 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
10079
edd3ff1d
JR
100802003-05-21 Jason Rumney <jasonr@gnu.org>
10081
10082 * unexw32.c (_start): Remove _fmode initialization.
10083
10084 * emacs.c (main) [WINDOWSNT]: Move it here.
10085
463f55ee
DL
100862003-05-20 Dave Love <fx@gnu.org>
10087
10088 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
10089
af253914
RS
100902003-05-19 Richard M. Stallman <rms@gnu.org>
10091
10092 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
10093 as value for QCfont attribute.
10094 (realize_default_face): lface should already exist; crash if not.
10095 Specify 0 for FORCE_P when calling set_lface_from_font_name.
10096
10097 * frame.c (Fignore_event): Doc fix.
10098
1d211019
KH
100992003-05-19 Kenichi Handa <handa@m17n.org>
10100
10101 * coding.c (decode_coding_string): Handle post-read-conversion
10102 even if the coding doesn't require decoding.
10103
4dd68254
RS
101042003-05-18 Richard M. Stallman <rms@gnu.org>
10105
10106 * callproc.c (Fcall_process_region): Doc fix.
10107
14d87dc9
SM
101082003-05-17 Stefan Monnier <monnier@cs.yale.edu>
10109
deca5d96
SM
10110 * lread.c (Fload): Print a message if package is obsolete.
10111
14d87dc9
SM
10112 * window.c (Fselect_window): Add optional `norecord' arg.
10113 (select_window_1): Fold into Fselect_window.
10114 (select_window_norecord): New function.
10115 (temp_output_buffer_show): Use it. Preserve current buffer.
10116
10117 * window.h (Fselect_window): Update declaration.
10118
10119 * window.c (delete_window, Fother_window, Fset_window_configuration):
10120 * minibuf.c (read_minibuf):
10121 * macterm.c (x_new_focus_frame):
10122 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
10123 * callint.c (Fcall_interactively):
10124 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
10125
10126 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
10127
78f52183
DK
101282003-05-17 David Kastrup <dak@gnu.org>
10129
10130 * process.c (read_process_output): Back out change from 2003-03-09.
10131
14d87dc9
SM
101322003-05-17 Stefan Monnier <monnier@cs.yale.edu>
10133
10134 * editfns.c (get_pos_property): Don't assume that `object' = nil.
10135
10136 * textprop.c (text_property_stickiness): New arg `buffer'.
10137
10138 * intervals.h (text_property_stickiness): New arg `buffer'.
10139 (get_pos_property): Declare.
10140
10141 * intervals.c (get_local_map): Use get_pos_property, to obey
10142 stickiness and empty overlays.
10143 (create_root_interval, graft_intervals_into_buffer): Use BEG.
10144 (merge_properties, intervals_equal, merge_properties_sticky):
10145 Use XCAR, XCDR.
10146 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
10147
1fd1cc2f
RS
101482003-05-17 Richard M. Stallman <rms@gnu.org>
10149
4f9f637a
RS
10150 * minibuf.c (read_minibuf): If buffer is empty, record the default
10151 in the history.
10152 (Fminibuffer_complete_word): When deleting the overlap, take account
10153 of its real position.
10154
10155 * fns.c (map_char_table): Fix previous change.
10156
1fd1cc2f
RS
10157 * syntax.c (find_defun_start):
10158 When open_paren_in_column_0_is_defun_start,
10159 return beginning of buffer.
10160
10161 * lisp.h (map_char_table): Declare added arg.
10162
10163 * fns.c (map_char_table): New arg TABLE gets the master table.
10164 All calls changed.
10165 Process default and inheritance, resorting to Faref if necessary.
10166
10167 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
10168 (Faccessible_keymaps): Pass new arg to map_char_table.
10169
10170 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
10171
10172 * casetab.c (set_case_table): Pass new arg to map_char_table.
10173
10174 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
10175
10176 * lisp.h (specbinding_func): New typedef.
10177 (struct specbinding): Use specbinding_func, to put the `volatile'
10178 in the right place.
10179
10180 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
10181 to avoid GCC warning.
14d87dc9 10182
b6189c3b 101832003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
b4bd27c5 10184
14d87dc9 10185 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 10186
35fb885d
SM
101872003-05-15 Stefan Monnier <monnier@cs.yale.edu>
10188
10189 * keyboard.c (apply_modifiers): Don't fill the other cache.
10190
9a274fbd
SM
101912003-05-14 Stefan Monnier <monnier@cs.yale.edu>
10192
c55b5fad
SM
10193 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
10194
9a274fbd
SM
10195 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
10196 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
10197 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
10198 (Fset_window_configuration, Fcurrent_window_configuration)
10199 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
10200 (Fpos_visible_in_window_p, mark_window_cursors_off)
10201 (window_internal_height, window_internal_width, Frecenter)
10202 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
10203 (replace_buffer_in_all_windows, init_window_once, init_window)
10204 (syms_of_window, keys_of_window): Move from lisp.h.
10205 * lisp.h: Move window.c declarations to window.h.
10206
10207 * bytecode.c: Include window.h.
10208 * emacs.c: Include window.h.
10209
14d87dc9 10210 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
10211 (keyremap): Add `parent' field.
10212 (keyremap_step): Use it. Remove `parent' argument.
10213 (read_key_sequence): Setup and use the new `parent' field.
10214
fd93e331
SM
102152003-05-11 Stefan Monnier <monnier@cs.yale.edu>
10216
10217 * keyboard.c (adjust_point_for_property): Ensure termination.
10218
1c4001a1
SM
102192003-05-10 Stefan Monnier <monnier@cs.yale.edu>
10220
10221 * keyboard.c (follow_key): Remove dead variable `did_meta'.
10222 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
10223 duplicated handling of function-key-map and key-translation-map
10224 in read_key_sequence.
10225 (read_key_sequence): Use them.
10226
10227 * keyboard.c (adjust_point_for_property): Try harder to move point
10228 to the non-sticky end of an invisible property.
10229
10230 * xdisp.c (single_display_prop_intangible_p): Make `space' display
10231 property intangible as well.
10232
780379b1
AS
102332003-05-10 Andreas Schwab <schwab@suse.de>
10234
10235 * xmenu.c (single_menu_item): Change last parameter to void* to
10236 avoid warning.
10237
ca2de342
RS
102382003-05-09 Richard M. Stallman <rms@gnu.org>
10239
10240 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
10241 Bind Qinhibit_modification_hooks to t so there will be no GC.
10242 Rename local `tem' to `save_deactivate_mark'.
10243
10244 * eval.c (specpdl_ptr): Declare volatile.
10245 (unbind_to): Copy the whole binding and decrement specpdl_ptr
10246 before doing the work of unbinding it.
10247
10248 * lisp.h (struct specbinding): Declare elements volatile.
10249 (specpdl_ptr): Declare volatile.
10250
10251 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
10252
10253 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
10254 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
10255
347003be
DL
102562003-05-08 Dave Love <fx@gnu.org>
10257
10258 * coding.c (Vlast_coding_system_used): Doc fix.
10259
5adcec23
JR
102602003-05-07 Jason Rumney <jasonr@gnu.org>
10261
10262 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
10263 when system does not support them.
10264
5fe3b8a4
SM
102652003-05-05 Stefan Monnier <monnier@cs.yale.edu>
10266
10267 * fileio.c (Qwrite_region_annotate_functions): New var.
10268 (build_annotations): Use it to process the global part of the hook.
10269 (syms_of_fileio): Init and staticpro it.
10270
10271 * keyboard.c (safe_run_hooks_error): Display a message instead of
10272 silently ignoring the error.
10273
102742003-05-03 Stefan Monnier <monnier@cs.yale.edu>
10275
10276 * keyboard.c (input_available_signal): Mark static.
10277 (menu_bar_items): Use map_keymap.
10278 (menu_bar_one_keymap): Remove.
10279 (menu_bar_item): Adjust arglist (for use in map_keymap).
10280 Properly hide a second binding when not both are keymaps.
10281
10282 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
10283 (single_keymap_panes): Use it and map_keymap.
10284 (single_menu_item): Use skp as well.
10285
10286 * keymap.h (map_keymap_function_t): New type.
10287 (map_keymap): Declare.
10288
10289 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
10290 (map_keymap_call, Fmap_keymap): New functions.
10291 (syms_of_keymap): Defsubr map-keymap.
10292
4b1b4443
JD
102932003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10294
10295 * gtkutil.c (create_dialog, make_widget_for_menu_item)
10296 (make_menu_item, create_menus, xg_update_menu_item): Don't call
10297 ..._with_mnemonic functions for menu items.
10298
1f816871
KH
102992003-05-01 Kenichi Handa <handa@m17n.org>
10300
10301 * coding.c (coding_system_accept_latin_extra_p): Delete this
10302 function.
10303 (find_safe_codings): Pay attention to
10304 the property tranlsation-table-for-encode of each codings.
10305 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
10306
5ed6ba5b
SM
103072003-05-01 Stefan Monnier <monnier@cs.yale.edu>
10308
10309 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
10310
32c06229
SM
103112003-04-30 Stefan Monnier <monnier@cs.yale.edu>
10312
10313 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
10314
10315 * lisp.h (CHECK): Wrap args in parenthesis.
10316 (specbind): Fix doc: symbol = Qnil is not supported any more.
10317
10318 * bytecode.c (Fbyte_code) <unwind-protect>:
10319 Use Fprogn rather than 0 and Qnil.
10320
10321 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
10322 `double', and `triple' modifiers as well.
10323
ed3c3314
RS
103242003-04-30 Richard M. Stallman <rms@gnu.org>
10325
10326 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
10327
10328 * alloc.c (abort_on_gc): New variable.
10329 (Fgarbage_collect): Abort if abort_on_gc is set.
10330
10331 * lisp.h (abort_on_gc): Add decl.
10332
10333 * eval.c (Fsignal): Clear abort_on_gc.
10334
10335 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 10336 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
10337
10338 * xdisp.c (move_it_vertically_backward): Do the final big else
10339 even if nlines is 0.
10340
10341 * xdisp.c (redisplay_internal): Finish the per-frame loop
10342 even if redisplay is suspended by input.
10343
0b325c12
AC
103442003-04-24 Andrew Choi <akochoi@shaw.ca>
10345
10346 * macterm.c (x_list_fonts): Return all fonts that match if
10347 maxnames = -1.
10348
4e837cd0
KH
103492003-04-25 Kenichi Handa <handa@m17n.org>
10350
10351 * syntax.c (skip_chars): Fix previous change.
10352
9af7511a
KH
103532003-04-24 Kenichi Handa <handa@m17n.org>
10354
10355 * syntax.c (skip_chars): Make the code faster by using the common
10356 technique of *p, *stop, and *endp.
10357
e3b2c21f
JD
103582003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10359
10360 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 10361 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
10362 being updated.
10363
32c06229
SM
103642003-04-19 Stefan Monnier <monnier@cs.yale.edu>
10365
10366 * eval.c (Fapply): Undo last change and add a comment about why.
10367
c6464167
MB
103682003-04-18 Miles Bader <miles@gnu.org>
10369
10370 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
10371 pickier PARSE_MULTIBYTE_SEQ.
10372
e509f168
SM
103732003-04-17 Stefan Monnier <monnier@cs.yale.edu>
10374
10375 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
10376 Use XCDR, XCAR, CONSP.
10377 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
10378 (Fapply): Remove unnecessary GCPRO.
10379
10380 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
10381
10382 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
10383
10384 * buffer.h: Don't hardcode BEG==1.
10385
10386 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
10387
5ceea398
RS
103882003-04-16 Richard M. Stallman <rms@gnu.org>
10389
10390 * xdisp.c (try_window, try_window_reusing_current_matrix):
10391 When at end of window, set window_end_pos to Z-ZV.
10392
10393 * buffer.c (Foverlay_recenter): Doc fix.
10394
e509f168
SM
103952003-04-14 Stefan Monnier <monnier@cs.yale.edu>
10396
10397 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
10398
d243e605
AC
103992003-04-14 Andrew Choi <akochoi@shaw.ca>
10400
10401 * macterm.c (mac_check_for_quit_char): Don't check more often than
10402 once a second.
10403
6901b111
SM
104042003-04-11 Stefan Monnier <monnier@cs.yale.edu>
10405
10406 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
10407 specially, so that they can't hide an implicit switch-frame event.
10408 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
10409 (head_table): Use switch-frame as event_kind for select-window.
10410 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
10411
10412 * editfns.c (Fformat): Lisp_Object/int mixup.
10413 (format2): Remove unused var numargs.
10414
e301806f 104152003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 10416
6901b111 10417 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
10418 (Qafter_insert_file_set_coding): New variable.
10419 (syms_of_fileio): Initialize and staticpro it. Delete declaration
10420 for after-insert-file-adjust-coding-function.
10421 (Finsert_file_contents): Call Qafter_insert_file_set_coding
10422 instead of Vafter_insert_file_adjust_coding_function.
10423
38914424
KH
104242003-04-11 Kenichi Handa <handa@m17n.org>
10425
10426 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
10427
10428 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
10429 string. Callers changed.
10430
104312003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 10432
6901b111 10433 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 10434 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
10435 (Finsert_file_contents):
10436 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
10437 decode-format.
10438
f979dc05
JD
104392003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10440
10441 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
10442 get GtkAdjustment as widget now is a GtkRange.
10443
10444 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
10445 GtkRange to avoid memory leak.
10446
f8c6b4c2 104472003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 10448
50ebc53d
KH
10449 * xfaces.c (Vface_font_rescale_alist): New variable.
10450 (struct font_name): New member rescale_ratio.
10451 (font_rescale_ratio): New function.
6901b111 10452 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
10453 (better_font_p): On comparing point sized, pay attention to
10454 recale_ratio member of fonts.
10455 (build_scalable_font_name): Reflect font->rescale_ratio in the
10456 font name.
6901b111 10457 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 10458
cb98871c
KH
10459 * lread.c (read1): Before calling index, check if the 2nd
10460 arguemnt is in ASCII range.
10461
4773b8ca
RS
104622003-04-08 Richard M. Stallman <rms@gnu.org>
10463
b0ada147
RS
10464 * fileio.c (Ffile_symlink_p): Doc fix.
10465
10466 * editfns.c (Fformat): Translate positions of text properties
10467 in the format string to apply them to the result.
10468
4773b8ca
RS
10469 * fileio.c (Finsert_file_contents): Doc fix.
10470 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
10471
104722003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 10473
4773b8ca
RS
10474 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
10475
e8f25745 104762003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 10477
e8f25745
ST
10478 * mac.c (init_mac_osx_environment): Switch libexec and bin so
10479 that self-contained application finds libexec files.
10480
f8c6b4c2 104812003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 10482
6901b111
SM
10483 * coding.c (code_convert_region_unwind):
10484 Set Vlast_coding_system_used to the argument.
2310d84c
KH
10485 (code_convert_region): If post-read-conversion function changed
10486 the value of last-coding-sytem, keep the new value in
10487 coding->symbol so that it won't be overridden.
10488 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
10489 (coding_system_accept_latin_extra_p): New function.
10490 (find_safe_codings): Pay attention to characters registered in
10491 latin-extra-code-table.
2310d84c 10492
39c9a034
TTN
104932003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
10494
10495 * Makefile.in (md5.o): Add missing dependency info.
10496
eb67c5d6
RS
104972003-04-06 Richard M. Stallman <rms@gnu.org>
10498
10499 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
10500
10501 * marker.c (verify_bytepos): New function.
10502
10503 * intervals.c (set_intervals_multibyte_1): When becoming
10504 multibyte, adjust right and left child sizes to a whole set of
10505 characters. If an interval gets zero total-length, delete it.
10506 If an interval consists of just its children, delete one of them.
10507
10508 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
10509 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 10510
eb67c5d6
RS
10511 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
10512 All calls deleted.
10513 (lisp_malloc): Do the work here directly.
10514
b1f81fc5
JB
105152003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
10516
10517 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
10518 char tables.
10519
105202003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
10521
10522 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
10523 destructively change "%S" to "%s".
10524
774666fb
MB
105252003-04-03 Miles Bader <miles@gnu.org>
10526
10527 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
10528 always set.
10529
19c37f01
DL
105302003-04-01 Dave Love <fx@gnu.org>
10531
10532 * xfns.c (xpm_lookup_color): Grok "opaque".
10533
2f4b24c3
AC
105342003-03-31 Andrew Choi <akochoi@shaw.ca>
10535
10536 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
10537 parent window ID.
10538
10539 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
10540
10541 * macterm.h (struct mac_output): Define x_pixels_diff and
10542 y_pixels_diff.
b1f81fc5 10543
9443fcf6
JB
105442003-03-31 Juanma Barranquero <lektu@terra.es>
10545
10546 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
10547 blockinput.h and files included from it.
10548
e072891b
KS
105492003-03-31 Kim F. Storm <storm@cua.dk>
10550
10551 The following changes consolidates the common code related to
10552 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
10553 files into frame.c.
9443fcf6 10554
e072891b
KS
10555 * frame.c: Include blockinput.h.
10556 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
10557 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
10558 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
10559 related vars here.
10560 (struct frame_parm_table, frame_parms): New table for describing
10561 frame parameters and their associated Q-variable.
10562 The order of the parameters corresponds to the sequence of the
10563 frame_parm_handlers table in redisplay_interface.
10564 (x_fullscreen_move, x_set_frame_parameters)
10565 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
10566 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
10567 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10568 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
10569 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
10570 Generic functions for processing of frame parameters.
10571 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
10572 (display_x_get_resource, x_get_resource_string): Functions for
10573 generic access to X resources.
10574 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
10575 (x_default_parameter, Fx_parse_geometry): Functions for generic
10576 access to frame parameters.
6901b111
SM
10577 (x_figure_window_size): Generic calculation of frame size.
10578 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
10579 (syms_of_frame): Intern and staticpro frame parameter variables.
10580 Defvar_lisp Vx_resource_class and Vx_resource_name here.
10581 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 10582
e072891b
KS
10583 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
10584 parameter related vars defined in frame.c.
10585 (EMACS_CLASS): Define here.
10586 (enum FULLSCREEN_*): Define here.
10587 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
10588 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
10589 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
10590 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
10591 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
10592 (x_set_visibility, x_set_autoraise, x_set_autolower)
10593 (x_set_unsplittable, x_set_vertical_scroll_bars)
10594 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
10595 (x_figure_window_size): Add prototypes.
10596
10597 * dispextern.h (frame_parm_handler): New typedef.
10598 (struct redisplay_interface): New member frame_parm_handlers.
10599 (enum resource_types): Move declaration here.
10600 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
10601 (x_default_parameter): Add prototypes.
10602
10603 * window.c: Remove extern decl for frame parameter vars.
10604 (change_window_heights): New generic function;
10605 replaces x_change_window_heights. All users changed.
10606
10607 * window.h (change_window_heights): Add prototype.
10608
10609 * xfaces.c: Remove extern decl for frame parameter vars.
10610
10611 * xterm.h (EMACS_CLASS): Remove. Use generic define.
10612 (struct w32_display_info): Fix type of xrdb member.
10613 (enum FULLSCREEN_*): Remove.
10614 Remove prototypes for generic functions (in frame.h).
10615
10616 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10617 parameters now defined in frame.h and frame.c.
f63fd14e 10618 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
10619 (enum x_frame_parms): Remove (bogus, unused enum).
10620 (check_x_display_info): Make non-static (for frame.c).
10621 (struct x_frame_parm_table, x_frame_parms): Remove.
10622 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10623 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10624 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10625 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10626 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10627 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10628 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10629 Remove. Use generic functions instead.
10630 (enum resource_types): Remove.
10631 (x_set_scroll_bar_default_width): New global function (for frame.c).
10632 (Fx_create_frame): Depend on x_figure_window_size to add space for
10633 toolbar and setup size_hint_flags.
10634 (x_frame_parm_handlers): New table for redisplay_interface.
10635 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 10636
e072891b 10637 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 10638 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
10639 (x_redisplay_interface): Add x_frame_parm_handlers member.
10640
10641 * w32gui.h (XrmDatabase): New (dummy) typedef.
10642
10643 * w32term.h (EMACS_CLASS): Remove. Use generic define.
10644 (struct w32_display_info): Fix type of xrdb member.
10645 (enum FULLSCREEN_*): Remove.
10646 (x_fullscreen_adjust): Remove prototype.
10647
10648 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10649 parameters now defined in frame.h and frame.c.
f63fd14e 10650 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
10651 (enum x_frame_parms): Remove (bogus, unused enum).
10652 (check_x_display_info): Make non-static (for frame.c).
10653 (struct x_frame_parm_table, x_frame_parms): Remove.
10654 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10655 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10656 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10657 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10658 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10659 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10660 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10661 Remove. Use generic functions instead.
10662 (enum resource_types): Remove.
10663 (x_set_scroll_bar_default_width): New global function (for frame.c).
10664 (Fx_create_frame): Depend on x_figure_window_size to add space for
10665 toolbar and setup size_hint_flags.
10666 (w32_frame_parm_handlers): New table for redisplay_interface.
10667 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 10668
e072891b
KS
10669 * w32term.c: Remove unnecessary extern declarations.
10670 (x_fullscreen_adjust): Remove. Use generic instead.
10671 (x_redisplay_interface): Add w32_frame_parm_handlers member.
10672
10673 * w32reg.c (x_get_string_resource): Use XrmDatabase.
10674
10675 * macgui.h (XrmDatabase): New (dummy) typedef.
10676
10677 * macterm.h (EMACS_CLASS): Remove.
10678 (struct mac_display_info): Add xrdb member.
10679 (struct mac_output): Add want_fullscreen member.
10680
10681 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
10682 parameters now defined in frame.h and frame.c.
f63fd14e 10683 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
10684 (check_x_display_info): Make non-static (for frame.c).
10685 (struct x_frame_parm_table, x_frame_parms): Remove.
10686 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
10687 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
10688 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
10689 (x_change_window_heights, x_set_autoraise, x_set_autolower)
10690 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
10691 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
10692 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
10693 Remove. Use generic functions instead.
10694 (enum resource_types): Remove.
10695 (x_set_scroll_bar_default_width): New global function (for frame.c).
10696 (mac_frame_parm_handlers): New table for redisplay_interface.
10697 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 10698
e072891b
KS
10699 * macterm.c: Remove unnecessary extern declarations.
10700 (x_redisplay_interface): Add mac_frame_parm_handlers member.
10701
3e6a560b
KS
10702 * Makefile.in (frame.o): Add dependency on blockinput.h and files
10703 included from it (atimer.h and systime.h).
10704
7b7b454e
AS
107052003-03-30 Andreas Schwab <schwab@suse.de>
10706
10707 * xdisp.c (x_insert_glyphs): Fix swapped width and height
10708 parameters for shift_glyphs_for_insert.
10709
10710 * macterm.c (x_redisplay_interface): Add missing entry for
10711 draw_vertical_window_border.
10712
beb402de
KG
107132003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
10714
10715 * fileio.c (Fexpand_file_name): In the no-handler case, after
10716 expanding, look again for a handler and invoke it. This is needed
10717 for filenames like "/foo/../user@host:/bar/../baz" -- the first
10718 expansion produces "/user@host:/bar/../baz" which needs to be
10719 expanded again for the finame result "/user@host:/baz".
10720
b676f356
JD
107212003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10722
10723 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
10724 of area to be redrawn for better performance.
10725
3c671a56
SM
107262003-03-28 Stefan Monnier <monnier@cs.yale.edu>
10727
10728 * xterm.c (take_vertical_position_into_account): Remove.
10729 (xt_action_hook): Call set_vertical_scroll_bar if needed.
10730 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
10731 (xm_scroll_callback, x_create_toolkit_scroll_bar)
10732 (x_set_toolkit_scroll_bar_thumb): Simplify.
10733 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
10734 (XTread_socket): Remove unused var.
10735 (x_make_frame_invisible): Replace goto with else.
10736
10737 * xdisp.c (set_vertical_scroll_bar): New fun.
10738 (redisplay_window): Use it.
10739
84f2e615
RS
107402003-03-26 Richard M. Stallman <rms@gnu.org>
10741
10742 * xdisp.c (update_tool_bar): Recompute tool bar if
10743 update_mode_lines is set. Set w->update_mode_line
10744 only if the tool bar contents actually change.
10745 (update_menu_bar): Undo previous change.
10746
70b6104c
JD
107472003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10748
5fd6f727
JD
10749 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
10750 (xg_frame_set_char_size): Calculate scroll bar width before frame
10751 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
10752 (xg_separator_p): Check for all documented separator types.
10753 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
10754 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
10755
70b6104c
JD
10756 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
10757 so tool bar gets updated.
10758
d9b36d19
SM
107592003-03-26 Stefan Monnier <monnier@cs.yale.edu>
10760
10761 * data.c (store_symval_forwarding): Re-instate part of the code
10762 that was deleted with too much enthusiasm.
10763
107642003-03-25 Stefan Monnier <monnier@cs.yale.edu>
10765
10766 * data.c (store_symval_forwarding): Delete special read-only
10767 hack for type == -1, since we now use ->constant instead.
10768 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
10769
10770 * buffer.c (overlays_in): Declare static.
10771 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
10772 `constant' field rather than the variable's `type' field.
10773
365fa1b3
AC
107742003-03-24 Andrew Choi <akochoi@shaw.ca>
10775
10776 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
10777
10778 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
10779
10780 * fns.c [MAC_OSX]: Do not redefine vector.
10781
10782 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
10783
10784 * macgui.h: Remove definition of No_Cursor.
10785
d9b36d19 10786 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
10787
10788 * xdisp.c: Define No_Cursor.
10789 (x_write_glyphs, notice_overwritten_cursor)
10790 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
10791 (note_mouse_highlight): Remove Mac-specific code.
10792 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 10793
c0bcce6f
JPW
107942003-03-24 John Paul Wallington <jpw@gnu.org>
10795
10796 * xdisp.c (redisplay_window): If mini window's buffer is not
10797 empty, then redisplay it like other windows.
10798
a526b96c
KS
107992003-03-23 Kim F. Storm <storm@cua.dk>
10800
10801 * w32term.c (w32_draw_window_cursor): Fix last change.
10802
37ab321e
KH
108032003-03-23 Kenichi Handa <handa@m17n.org>
10804
a526b96c
KS
10805 * alloc.c (make_string_from_bytes, make_specified_string):
10806 Add `const' for the arg CONTENTS.
37ab321e
KH
10807
10808 * lisp.h (make_string_from_bytes, make_specified_string):
10809 Prototypes adjusted.
10810
7863d625
JD
108112003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10812
a526b96c 10813 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 10814
7863d625
JD
10815 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
10816 (XG_SB_RANGE): New define.
10817
10818 * gtkutil.c (xg_fixed_handle_expose): New function.
10819 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
10820 expose events.
10821 (xg_update_scrollbar_pos): Take two more arguments, left and width
10822 of scroll bar including borders.
10823 Clear left and right part outside scroll bar separately as some
10824 themes have bars that are not an even number of pixels.
d9b36d19 10825 Don't set reallocate_redraws, don't call
7863d625
JD
10826 gdk_window_process_all_updates.
10827 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
10828 so no need to change it. Calculate size and value with XG_SB_RANGE.
10829
d9b36d19
SM
10830 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
10831 Pass left and width of scroll bar including borders to
7863d625
JD
10832 xg_update_scrollbar_pos.
10833
af0ad939
TTN
108342003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
10835
10836 * Makefile.in: Make sure space precedes end-of-line backslashes.
10837
b22139fd
KS
108382003-03-22 Kim F. Storm <storm@cua.dk>
10839
10840 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
10841 Add generic versions here. Remove system specific versions
10842 defined elsewhere.
10843
10844 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
10845 Add prototypes.
10846
6e6410cf
KS
10847 * xterm.h (STORE_NATIVE_RECT): New macro.
10848
5c9cc435
KS
108492003-03-21 Kim F. Storm <storm@cua.dk>
10850
00c64fab
SM
10851 * xdisp.c (get_glyph_string_clip_rect):
10852 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
10853
10854 * dispextern.h (struct redisplay_interface): Add active_p
10855 argument to draw_window_cursor member. All uses changed.
10856
acd37560
KS
108572003-03-21 Kim F. Storm <storm@cua.dk>
10858
10859 The following changes consolidate code related to writing and
10860 inserting glyphs, exposing frame, the tool bar, the mouse face,
10861 the output cursor, and help echo from xterm.c, w32term.c and
10862 macterm.c into xdisp.c. It also generalizes the use of the
10863 window_part enum instead of using numeric values throughout.
af0ad939 10864
acd37560
KS
10865 * xdisp.c: Consolidate gui-independent code here.
10866 Include keymap.h.
10867 (Qhelp_echo): Import.
10868 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
10869 (help_echo_string, help_echo_window, help_echo_object)
10870 (previous_help_echo_string, help_echo_pos): Declare here.
10871 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
10872 (estimate_mode_line_height): Define here. Handle windowing
10873 systems directly (without using estimate_mode_line_height_hook).
10874 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
10875 (update_window_cursor, update_cursor_in_window_tree)
10876 (fast_find_position, fast_find_string_pos)
10877 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
10878 (expose_area, expose_line, expose_overlaps, expose_window)
10879 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
10880 declared static as they are only used locally in xdisp.c.
10881 (draw_glyphs): Rename from x_draw_glyphs and make static.
10882 (tool_bar_item_info, notice_overwritten_cursor): Make static.
10883 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10884 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 10885 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
10886 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10887 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
10888 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
10889 (note_mouse_highlight, x_clear_window_mouse_face)
10890 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
10891 (x_intersect_rectangles): New generic functions for use by xdisp.c
10892 and GUI front-ends.
10893 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
10894 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
10895
10896 * dispextern.h (Display_Info): Generic typedef for *_display_info.
10897 (NativeRectangle): Generic typedef for rectangle type.
10898 (enum window_part): Move here from window.c.
10899 (struct redisplay_interface): New members flush_display_optional,
10900 define_frame_cursor, clear_frame_area, draw_window_cursor,
10901 draw_vertical_window_border, shift_glyphs_for_insert.
10902 Rename member clear_mouse_face to clear_window_mouse_face.
10903 (estimate_mode_line_height_hook): Remove hook.
10904 (auto_raise_tool_bar_buttons_p): Don't declare extern.
10905 (tool_bar_item_info): Remove prototype.
10906 (help_echo_string, help_echo_window, help_echo_object)
10907 (previous_help_echo_string, help_echo_pos)
10908 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
10909 (x_stretch_cursor_p, output_cursor): Declare extern.
10910 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
10911 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
10912 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
10913 (display_and_set_cursor, set_output_cursor, x_cursor_to)
10914 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
10915 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
10916 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
10917 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
10918 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
10919 Add prototypes.
10920 (mode_line_string, marginal_area_string): Fix prototypes.
10921
10922 * window.c (enum window_part): Move to dispextern.h.
10923 (coordinates_in_window): Use enum window_part member names
10924 instead of numbers to describe return value.
10925 (struct check_window_data): Change part member to window_part.
10926 (check_window_containing): Return window_part unaltered.
10927 (window_from_coordinates): Change part arg from int to enum
10928 window_part. Allow part arg to be null. All users changed.
10929
10930 * window.h (window_from_coordinates): Fix prototype.
10931
10932 * term.c (estimate_mode_line_height): Move to xdisp.c.
10933
10934 * keyboard.c (make_lispy_event): Use enum window_part.
10935
10936 * dispnew.c (mode_line_string, marginal_area_string): Use enum
10937 window_part instead of int in arg list. Users changed.
10938
10939 * xterm.h (No_Cursor): Declare as None for X.
10940 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 10941
acd37560
KS
10942 * xterm.c: Remove consolidated defines and code.
10943 (BETWEEN): Remove unused macro.
10944 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
10945 (x_define_frame_cursor, x_clear_frame_area)
10946 (x_draw_window_cursor): New X-specific functions for RIF.
10947 (x_redisplay_interface): Add new members.
10948
10949 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
10950
10951 * w32term.h (struct w32_output): Remove cross_cursor member.
10952
10953 * w32term.c: Remove consolidated defines and code.
10954 (BETWEEN): Remove unused macro.
10955 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
10956 (w32_define_frame_cursor, w32_clear_frame_area)
10957 (w32_draw_window_cursor): New W32-specific functions for RIF.
10958 (w32_redisplay_interface): Add new members.
10959
a64387ee 10960 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
10961 (XRectangle): Add X compatible rectangle type.
10962 (NativeRectangle): Declare as RECT for W32.
10963 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10964
10965 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
10966
10967 * w32console.c: Remove consolidated defines and code.
af0ad939 10968
acd37560
KS
10969 * msdos.h (Display_Info): Add generic typedef.
10970
10971 * msdos.c: Remove consolidated defines and code.
10972 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
10973
10974 * macterm.h (struct mac_output): Replace member cross_cursor by
10975 hand_cursor.
10976 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
10977
10978 * macterm.c: Remove consolidated defines and code.
10979 (BETWEEN): Remove unused macro.
10980 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
10981 (mac_define_frame_cursor, mac_clear_frame_area)
10982 (mac_draw_window_cursor): New Mac-specific functions for RIF.
10983 (x_redisplay_interface): Add new members.
10984
10985 * macgui.h (No_Cursor): Define as 0 for Mac.
10986 (XRectangle): Add X compatible rectangle type.
10987 (NativeRectangle): Declare as Rect for Mac.
10988 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
10989
204ccab1
KS
10990 * macfns.c (x_set_mouse_color): Setup hand_cursor.
10991 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 10992
9443fcf6 10993 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
10994 included from it. Add dependency on keymap.h.
10995
10996 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
10997
8ba01a70 109982003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
10999
11000 * fileio.c (Fexpand_file_name): Fix previous change.
11001
8ba01a70 110022003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
11003
11004 * fileio.c (Ffile_name_directory): Reconstruct file name by
11005 make_specified_string.
11006 (Ffile_name_nondirectory, Ffile_name_as_directory)
11007 (Fdirectory_file_name, Fexpand_file_name)
11008 (Fsubstitute_in_file_name): Likewise.
11009 (Fread_file_name): Compare decoded homedir with DIR and
11010 DEFAULT_FILENAME.
11011
11012 * alloc.c (make_specified_string): If NCHARS is negative, count
11013 the number of characters.
11014
19536747
JD
110152003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11016
de38ae5a
JD
11017 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
11018 all widgets.
11019
19536747
JD
11020 * gtkutil.h: Removed xg_ignore_next_thumb.
11021
37ab321e 110222003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
11023
11024 * coding.c (Vchar_coding_system_table): Remove this variable.
11025 (Vcoding_system_safe_chars): New variable.
11026 (intersection): Remove this function.
11027 (find_safe_codings): Don't use Vchar_coding_system_table, but try
11028 all codings in SAFE_CODINGS.
00c64fab 11029 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
11030 find_safe_codings. Get generic coding systems from
11031 Vcoding_system_safe_chars.
11032 (Fdefine_coding_system_internal): New function.
11033 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
11034 Initialize and staticpro Vcoding_system_safe_chars.
11035
17097258
JD
110362003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11037
2a2071c3
JD
11038 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
11039 equal old values before updating.
11040
17097258
JD
11041 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
11042
11043 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
11044
110452003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11046
11047 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
11048 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
11049 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
11050 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
11051 (xg_create_scroll_bar): Pass bar to button event callback.
11052 (xg_find_top_left_in_fixed): New function.
11053 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
11054 whole scroll bar area. Get old position with
11055 xg_find_top_left_in_fixed, calculate and only clear needed areas.
11056 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
11057 dragging is in progress. Calculate whole as for Motif.
11058 Remove code that saved last values. Call gtk_range functions to
11059 set scroll bar sizes.
11060
11061 * gtkutil.h: Removed xg_ignore_next_thumb.
11062
8cb9dfbf
JB
110632003-03-17 Juanma Barranquero <lektu@terra.es>
11064
11065 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
11066 and files included from it.
11067
00c64fab
SM
110682003-03-18 Stefan Monnier <monnier@cs.yale.edu>
11069
11070 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
11071 multiple occurrences of the same keymap under different prefixes.
11072 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
11073
c45bb3b2
JR
110742003-03-16 Jason Rumney <jasonr@gnu.org>
11075
11076 * w32gui.h: Use HDC for Display.
11077
11078 * w32term.c (w32_encode_char): Prevent double-byte chars from
11079 crashing Emacs.
11080
11081 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
11082 as binary.
11083
2a6d0874
JB
110842003-03-16 Juanma Barranquero <lektu@terra.es>
11085
11086 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
11087
03eb5fab
KS
110882003-03-16 Kim F. Storm <storm@cua.dk>
11089
11090 The following changes consolidate some of the gui-independent
11091 parts of the processing and drawing of "glyph strings" from
11092 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 11093
03eb5fab
KS
11094 * dispextern.h (struct glyph): Reduce face_id member from 22 to
11095 21 bits (this reduces number of faces from 4M to 2M).
11096 Replace W32 specific w32_font_type member (2 bits) by generic
11097 font_type member (3 bits) for portability.
11098 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
11099 (enum draw_glyphs_face): Define here.
11100 (struct glyph_string): Define here. Merge W32 and X versions.
11101 (struct redisplay_interface): New members per_char_metric,
11102 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
11103 (VCENTER_BASELINE_OFFSET): Define here.
11104 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
11105 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
11106
11107 * xdisp.c: Consolidate gui-independent "glyph string" code here.
11108 (dump_glyph_string): Moved here.
11109 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
11110 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
11111 (fill_composite_glyph_string, fill_glyph_string)
11112 (fill_image_glyph_string, fill_stretch_glyph_string)
11113 (left_overwritten, left_overwriting, right_overwritten)
11114 (right_overwriting, get_char_face_and_encoding)
11115 (set_glyph_string_background_width, compute_overhangs_and_x)
11116 (append_glyph, append_composite_glyph, produce_image_glyph)
11117 (take_vertical_position_into_account, append_stretch_glyph)
11118 (produce_stretch_glyph): New generic functions (based on X version).
11119 Call platform specific functions through rif.
11120 (INIT_GLYPH_STRING): New macro, hides W32 details.
11121 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
11122 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
11123 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
11124 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
11125 (notice_overwritten_cursor):
11126 Generic functions exported to platform modules. Users changed.
11127
11128 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
11129 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
11130 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 11131 New macros for consolidated code.
2a6d0874 11132
03eb5fab
KS
11133 * xterm.c: Remove consolidated defines and code.
11134 (x_per_char_metric, x_encode_char)
11135 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
11136 (x_redisplay_interface): Add new members.
11137
11138 * w32gui.h (Display): Add dummy typedef for consolidation.
11139 (XChar2b): Define alias for wchar_t for consolidation.
11140 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
11141
11142 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 11143 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
11144 New macros for consolidation.
11145
fad49844 11146 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
11147 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
11148 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
11149 (w32_per_char_metric): Change font_type arg to int for RIF.
11150 (w32_encode_char): Return int according to RIF requirements.
11151 (w32_compute_glyph_string_overhangs): Adapt to RIF.
11152 (w32_get_glyph_overhangs): New function for RIF. Uses generic
11153 x_get_glyph_overhangs.
11154 (w32_redisplay_interface): Add new members.
11155
11156 * macgui.h (XChar2b): Move typedef here for consolidation.
11157 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
11158
11159 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
11160 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
11161 consolidation.
11162
11163 * macterm.c: Remove consolidated defines and code.
11164 (mac_per_char_metric): New function for RIF.
00c64fab 11165 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
11166 (mac_compute_glyph_string_overhangs): Adapt for RIF.
11167 (x_redisplay_interface): Add new members.
11168
00c64fab
SM
111692003-03-15 Stefan Monnier <monnier@cs.yale.edu>
11170
11171 * keymap.c (Vmenu_events): New var.
11172 (syms_of_keymap): Initialize it.
11173 (where_is_internal): Check more carefully what is a menu event.
11174
225c7a07
RS
111752003-03-14 Richard M. Stallman <rms@gnu.org>
11176
11177 * lread.c (read1): After #!, exit loop on eof.
11178
cea9be54
JD
111792003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11180
9ea0e54d
JD
11181 * gtkutil.h: Add declaration for xg_frame_cleared.
11182
0cb35f4e
JD
11183 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
11184
cea9be54
JD
11185 * gtkutil.c (struct xg_last_sb_pos): New structure.
11186 (handle_fixed_child): New function.
11187 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
11188 and force a redraw on them.
11189 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
11190 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
11191 so we can avoid unneeded redraws.
11192 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
11193 and force a redraw on the scroll bar.
11194 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
11195 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 11196 (xg_frame_cleared): New function.
cea9be54 11197
20b853f3
KH
111982003-03-13 Kenichi Handa <handa@m17n.org>
11199
11200 * coding.c (Fdetect_coding_region): Fix docstring.
11201 (Fdetect_coding_string): Fix docstring.
11202
7a555aff
AS
112032003-03-13 Andreas Schwab <schwab@suse.de>
11204
25cc0080
AS
11205 * gtkutil.c: Add prototype for create_menus.
11206
30225431
AS
11207 * data.c (long_to_cons): Fix type of top.
11208
11209 * xselect.c (selection_data_to_lisp_data): Use int instead of
11210 long for an integer of size 4.
11211
7a555aff 11212 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 11213 (xg_tool_bar_help_callback): Likewise.
7a555aff 11214
a3e4741f
AS
112152003-03-12 Andreas Schwab <schwab@suse.de>
11216
11217 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
11218
9668be7c
KS
112192003-03-12 Kim F. Storm <storm@cua.dk>
11220
03eb5fab 11221 The following changes consolidate the fringe handling from
9668be7c 11222 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 11223
9668be7c
KS
11224 * xdisp.c: Consolidate fringe handling code here.
11225 (left_bits, right_bits, continued_bits, continuation_bits)
11226 (ov_bits, zv_bits): Define fringe bitmaps.
11227 (fringe_bitmaps): New array holding fringe bitmaps.
11228 (draw_fringe_bitmap): Draw a specific bitmap; call display
11229 specific drawing routine via rif->draw_fringe_bitmap.
11230 (draw_row_fringe_bitmaps): Generic replacement for
11231 x_draw_row_fringe_bitmaps; all callers changed.
11232 (compute_fringe_widths): Generic replacement for
11233 x_compute_fringe_widths; all callers changed.
11234
11235 * dispextern.h (enum fringe_bitmap_type): Define here.
11236 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
11237 (fringe_bitmaps): Declare extern.
11238 (struct redisplay_interface): New member draw_fringe_bitmap.
11239 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
11240
11241 * xterm.c: Remove generic fringe code.
11242 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
11243 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
11244
11245 * w32term.c: Remove generic fringe code.
11246 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
11247 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 11248
9668be7c
KS
11249 * macterm.c: Remove generic fringe code.
11250 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
11251 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
11252
00a88f32
SM
112532003-03-11 Stefan Monnier <monnier@cs.yale.edu>
11254
11255 * print.c (Fprin1_to_string): Return unibyte string if possible.
11256
1d1de695
DK
112572003-03-09 David Kastrup <dak@gnu.org>
11258
11259 * process.c (read_process_output): We have allocated enough space
11260 for readmax and carryover, so actually use the alloted space.
11261
257f40f2
JD
112622003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11263
11264 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
11265 toolkit scrollbar click.
11266
11267 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
11268 for USE_GTK.
11269 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
11270 also.
11271 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
11272 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 11273
78819ebb 11274 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
257f40f2
JD
11275
11276 * gtkutil.c (xg_get_scroll_id_for_window): New function.
11277 (xg_tool_bar_item_expose_callback): New function.
11278 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
11279 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
11280 on the tool bar widget.
11281 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
11282 to expose on the tool bar item widgets.
11283
15213141
JD
112842003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11285
26b74a0b 11286 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 11287 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
11288 deleted from the image cache).
11289
15213141
JD
11290 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
11291 the event isn't for a frame (i.e. for dialogs).
11292
20b853f3 112932003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
11294
11295 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
11296 composition components reaches the limit, terminate composing.
11297 (COMPOSITION_OK): New macro.
00a88f32 11298 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
11299 composition is found.
11300 (coding_restore_composition): Adjust the number of composition
11301 components if it is not sane.
11302
c9029fe5
JB
113032003-03-06 Juanma Barranquero <lektu@terra.es>
11304
11305 * w32term.h (struct w32_display_info): Add xrdb member to support
11306 passing resources via -xrm on Windows.
11307
11308 * w32term.c (w32_make_rdb): New function.
11309 (w32_term_init): Use it to initialize xrdb member of w32_display_info
11310 struct. Delete leftover code.
11311
11312 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
11313 for resources passed on the command line.
11314
11315 * w32reg.c (w32_get_rdb_resource): New function.
11316 (x_get_string_resource): Use it, so resources passed with -xrm
11317 supercede the ones in the registry.
11318
9d00001f
JD
113192003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11320
11321 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
11322 instead of x_top_window_to_frame.
11323
ca2417b9
JD
113242003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11325
11326 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
11327 when restarting Emacs.
11328
5b20caf0
RS
113292003-03-03 Richard M. Stallman <rms@gnu.org>
11330
11331 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
11332 to run kill-buffer-query-functions.
11333 (Qkill_buffer_query_functions): New var.
11334 (syms_of_buffer): Init and staticpro it.
11335
58e91b77
JD
113362003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11337
11338 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
11339
932357b4
KS
113402003-02-25 Kim F. Storm <storm@cua.dk>
11341
11342 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
11343 If centering point failed to make whole line visible and vscroll
11344 is non-zero, disable vscroll and try centering point again.
11345
11346 * lread.c (read1): Accept `single space' syntax like (? x).
11347
bb8db7e1
JD
113482003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11349
11350 * keyboard.c (cancel_hourglass_unwind): Surround with
11351 #ifdef HAVE_X_WINDOWS
11352
47d77aab
KH
113532003-02-25 Kenichi Handa <handa@m17n.org>
11354
11355 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
11356 process only when "subprocesses" is defined.
11357
6a097c0c
SM
113582003-02-24 Stefan Monnier <monnier@cs.yale.edu>
11359
11360 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
11361
0b063c27
JB
113622003-02-24 Juanma Barranquero <lektu@terra.es>
11363
d1135afc
JB
11364 * callint.c (fix_command): Declare as static void and move before
11365 Fcall_interactively.
11366
0b063c27
JB
11367 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
11368 (syms_of_xdisp): Don't initialize Qwhen.
11369
0af912f0
JD
113702003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11371
11372 * keyboard.c (cancel_hourglass_unwind): New function.
11373 (command_loop_1): Cancel hourglass with unwind-protect.
11374
120d0a23
RS
113752003-02-23 Richard M. Stallman <rms@gnu.org>
11376
11377 * callint.c (fix_command): New subroutine, from Fcall_interactively.
11378 Detect (when ... (region-beginning)) etc.
11379 (Fcall_interactively): Call fix_command.
11380 (Qif, Qwhen): New variables.
11381 (syms_of_callint): Init and staticpro them.
0b063c27 11382
120d0a23
RS
11383 * regex.c (print_partial_compiled_pattern): Output to stderr.
11384
4ece81a6
KG
113852003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
11386
11387 * dired.c (directory_files_internal): Don't expand directory.
11388 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
11389 instead. From Lars Hansen <larsh@math.ku.dk>.
11390
e52bd6b7
SM
113912003-02-22 Stefan Monnier <monnier@cs.yale.edu>
11392
11393 * fns.c (string_to_multibyte): Remove unused var i.
11394 (Flanginfo): Fix int/Lisp_Object mixup.
11395 (void_call2): New fun.
11396 (Fmap_char_table): Use it in place of call2.
11397
11398 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
11399
11400 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
11401
11402 * keymap.c (copy_keymap_1): Make it static.
11403
11404 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
11405
c33ef7c4
JB
114062003-02-22 David Ponce <david@dponce.com>
11407
11408 * lread.c (Fload): Don't check STRING_MULTIBYTE.
11409
16782258
JD
114102003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11411
11412 * process.h: Removed subtty field from struct Lisp_Process.
11413
11414 * process.c (create_process): Remove setting of subtty.
11415 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
11416 (Fprocess_running_child_p, process_send_signal):
11417 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
11418 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
11419
3abeca61
KG
114202003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
11421
11422 * keymap.c (Fdefine_key): Doc fix.
11423
92a8ce63
JB
114242003-02-21 Juanma Barranquero <lektu@terra.es>
11425
11426 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
11427
11428 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
11429 POLLING_PROBLEM_IN_SELECT.
11430
11431 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
11432 Delete #undef of POLLING_PROBLEM_IN_SELECT.
11433
11434 * s/hpux10-20.h: New file.
11435
e52bd6b7
SM
11436 * process.c (wait_reading_process_input):
11437 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 11438
20f1ef2e
KH
114392003-02-20 Kenichi Handa <handa@m17n.org>
11440
32d0a9dc
KH
11441 * fontset.c (check_fontset_name): If NAME is nil, return the
11442 default fontset.
11443 (override_font_info): New function.
e52bd6b7 11444 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
11445 (Ffontset_info): If FONTSET is not the default fontset, merge
11446 FONTSET onto the copy of the default fontset, and work on that
11447 copy. Document that NAME nil means the default fontset.
11448 (Ffontset_font): Document that NAME nil means the default fontset.
11449
20f1ef2e
KH
11450 * process.c (setup_process_coding_systems): If the process's
11451 in/out descriptor is -1, do nothing.
11452
77d1daf2
AS
114532003-02-19 Andreas Schwab <schwab@suse.de>
11454
e52bd6b7
SM
11455 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
11456 Add prototypes.
77d1daf2 11457
f9a45bb3
KH
114582003-02-19 Kenichi Handa <handa@m17n.org>
11459
11460 * xfaces.c (try_alternative_families): Try all scalable fonts if
11461 Vscalable_fonts_allowed is not Qt.
11462
72ecb43c
JD
114632003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11464
11465 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
11466
ee5be7c3
JD
114672003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11468
11469 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
11470 names.
11471
11472 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 11473 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
11474 x_face_list_fonts.
11475 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
11476 (Fx_list_fonts): Set maxnames to -1 to get all font names.
11477
4cd519a7
KS
114782003-02-18 Kim F. Storm <storm@cua.dk>
11479
068f9882
KS
11480 * lread.c (read1): Fix last change.
11481 "`" is not always special. Allow "?" after a character constant.
4cd519a7 11482
7290a344
AC
114832003-02-18 Andrew Choi <akochoi@shaw.ca>
11484
11485 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
11486
1f7fa69b
AS
114872003-02-18 Andreas Schwab <schwab@suse.de>
11488
11489 * window.c (window_scroll_pixel_based): Move outside a
11490 multi-glyph character before setting new window start.
11491
11492 * xdisp.c (in_display_vector_p): New function.
11493 * dispextern.h (in_display_vector_p): Declare.
11494
23e21195
KS
114952003-02-18 Kim F. Storm <storm@cua.dk>
11496
11497 * lread.c (read1): Fix and relax read syntax.
11498 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
11499 Only recognize "," after dotted-pair dot if inside backquote.
11500 Never include "`" or "," (inside backquote) in a symbol.
11501 Allow dotted-pair dot after a character constant.
11502 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 11503
f098b121
JD
115042003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11505
11506 * gtkutil.c (xg_tool_bar_expose_callback): New function.
11507 (xg_create_tool_bar): Force style of tool bar to be horizontal with
11508 icons. Set name of tool bar to emacs-toolbar.
11509 (update_frame_tool_bar): Connect expose event to
11510 xg_tool_bar_expose_callback.
11511
63020c46
RS
115122003-02-17 Richard M. Stallman <rms@gnu.org>
11513
11514 * keyboard.c (this_command_key_count_reset): New variable.
11515 Initiatize to 0 where this_command_key_count is set.
11516 (read_char): Save and restore this_command_key_count_reset
11517 around input method code.
11518 (read_char): If this_command_key_count_reset, echo reread commands.
11519 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
11520
fb4452cc
KH
115212003-02-17 Kenichi Handa <handa@m17n.org>
11522
11523 * fns.c (string_to_multibyte): Always return a multibyte string.
11524
bd11cc09
JR
115252003-02-16 Jason Rumney <jasonr@gnu.org>
11526
e52bd6b7
SM
11527 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
11528 Negative max_fonts parameter means list all.
bd11cc09 11529
4cdf4bde
DL
115302003-02-14 Dave Love <fx@gnu.org>
11531
11532 * fns.c (Flanginfo): Doc fix.
11533
023b93f6
KS
115342003-02-13 Kim F. Storm <storm@cua.dk>
11535
37cd4238
KS
11536 * lread.c (read_escape): Interpret \s as a SPACE character, except
11537 for \s-X in a character constant which still is the super modifier.
11538 (read1): Signal an `invalid read syntax' error if a character
11539 constant is immediately followed by a digit or symbol character.
11540
140a6b7e
KS
11541 * search.c (Fmatch_data): Doc fix. Explicitly state that
11542 match-data is undefined if last search failed.
11543
3419757d 11544 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
023b93f6
KS
11545 All uses changed.
11546
7d5c86e5
JB
115472003-02-12 Juanma Barranquero <lektu@terra.es>
11548
11549 * eval.c (Fdefmacro): Fix typo.
11550
295fff2c
KS
115512003-02-12 Kim F. Storm <storm@cua.dk>
11552
11553 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
11554 macro is a string, convert meta modifiers in string when copying
11555 the string into a vector.
11556
60f3202d
KS
115572003-02-11 Kim F. Storm <storm@cua.dk>
11558
11559 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
11560
61cb0b53
KH
115612003-02-11 Kenichi Handa <handa@m17n.org>
11562
11563 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
11564
7392e23c
KS
115652003-02-10 Kim F. Storm <storm@cua.dk>
11566
11567 * process.c: Doc fixes.
11568 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
11569
ce4254bd
KH
115702003-02-10 Kenichi Handa <handa@m17n.org>
11571
9c7a329a
KH
11572 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
11573
ce4254bd
KH
11574 * process.c (QCfilter_multibyte): New variable.
11575 (setup_process_coding_systems): New function.
e52bd6b7
SM
11576 (Fset_process_buffer, Fset_process_filter):
11577 Call setup_process_coding_systems.
ce4254bd
KH
11578 (Fstart_process): Initialize the member `filter_multibyte' of
11579 struct Lisp_Process.
11580 (create_process): Call setup_process_coding_systems.
11581 (Fmake_network_process): New keyward `:filter-multibyte'.
11582 Initialize the member `filter_multibyte' of struct Lisp_Process.
11583 Call setup_process_coding_systems.
11584 (server_accept_connection): Call setup_process_coding_systems.
11585 (read_process_output): If the process has a filter, decide the
11586 multibyteness of a string to given to the filter by
11587 `filter_multibyte' member of the process. If the process doesn't
11588 have a filter and the result of conversion is unibyte, use
11589 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
11590 multibyte form.
11591 (Fset_process_coding_system): Call setup_process_coding_systems.
11592 (Fset_process_filter_multibyte): New function.
11593 (Fprocess_filter_multibyte_p): New function.
11594 (syms_of_process): Intern and staticpro QCfilter_multibyte.
11595 Defsubr Sset_process_filter_multibyte and
11596 Sprocess_filter_multibyte_p.
11597
11598 * process.h (struct Lisp_Process): New member filter_multibyte.
11599
11600 * lisp.h (setup_process_coding_systems): Add prototype.
11601
11602 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
11603 process, update coding systems for the process.
11604
b08d5f59
KH
116052003-02-09 Kenichi Handa <handa@m17n.org>
11606
11607 * fns.c (string_to_multibyte): New function.
11608 (Fstring_to_multibyte): New function.
11609 (syms_of_fns): Defsubr it.
11610
0dfd93c0
AS
116112003-02-08 Andreas Schwab <schwab@suse.de>
11612
11613 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
11614 instead of the substitution.
11615
7b76ca1c
JD
116162003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11617
11618 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
11619
11620 * xmenu.c (menu_position_func): Adjust menu popup position so that
11621 the menu is fully visible.
7b76ca1c 11622
2436a4e4
JD
116232003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11624
11625 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
11626 (x_make_frame_invisible, x_wm_set_icon_position):
11627 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
11628
11629 * xfns.c (x_set_name, x_set_title): Ditto.
11630
37d1e680
RS
116312003-02-04 Richard M. Stallman <rms@gnu.org>
11632
11633 * keyboard.c (echo_now): Update before_command_echo_length.
11634 (Freset_this_command_lengths): Reset this_command_key_count etc.
11635 immediately rather than arranging to do it later.
11636 (before_command_key_count_1, before_command_echo_length_1)
11637 (before_command_restore_flag): Vars deleted.
11638 (add_command_key): Don't handle before_command_restore_flag.
11639 (read_char, record_menu_key): Don't update before_command_key_count or
11640 before_command_echo_length.
11641 (read_char): Don't handle before_command_restore_flag.
11642
11643 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
11644 in direct-output clauses if it wouldn't be called in the ordinary case.
11645
578846a3
KS
116462003-02-04 Kim F. Storm <storm@cua.dk>
11647
11648 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
11649
49853a4d
JD
116502003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11651
11652 * gtkutil.c (remove_from_container): Copying list is not needed.
11653 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
11654 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
11655 on list returned from gtk_container_get_children to avoid memory leak.
11656
8b53dc06
JR
116572003-02-01 Jason Rumney <jasonr@gnu.org>
11658
5d54d177
JR
11659 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
11660 local malloc.
11661 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
11662 definitions in xpm.h.
11663 (init_xpm_functions): New function.
f63fd14e 11664 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
11665 (init_external_image_libraries): Try to load libXpm.dll.
11666
8b53dc06
JR
11667 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
11668 timestamp.
11669
b222e415
DL
116702003-01-31 Dave Love <fx@gnu.org>
11671
11672 * syntax.c (Fskip_chars_forward)
11673 (open-paren-in-column-0-is-defun-start): Doc fix.
11674
c60ee5e7
JB
116752003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
11676
11677 * fileio.c: Support // at start of name for Cygwin (just added proper
11678 preprocessor tests).
11679
11680 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
11681
11682 * Makefile.in: Use @EXEEXT@ for Cygwin.
11683
11684 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
11685
11686 * s/cygwin.h: Added for Cygwin port.
11687
53b37591
JB
116882003-01-31 Juanma Barranquero <lektu@terra.es>
11689
11690 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
11691 when including gif_lib.h.
fe929957 11692 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
11693 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
11694 Windows. Disable color table lookups. Call library functions
53b37591 11695 through pointers determined at runtime.
fe929957
JB
11696 (init_external_image_libraries): Try to load libungif.dll and
11697 libtiff.dll.
53b37591 11698
45415a8f
KH
116992003-01-31 Kenichi Handa <handa@m17n.org>
11700
11701 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 11702 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 11703
a97e4138
JD
117042003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11705
e52bd6b7 11706 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 11707
6eed9bed
DL
117082003-01-30 Dave Love <fx@gnu.org>
11709
11710 * alloc.c (Vgc_elapsed, gcs_done): New variables.
11711 (Fgarbage_collect): Use them.
11712 (init_alloc, syms_of_alloc): Set them up.
11713
100dcd40
JB
117142003-01-30 Juanma Barranquero <lektu@terra.es>
11715
11716 * w32fns.c (init_external_image_libraries): Add missing operator.
11717
fbd852af
JR
117182003-01-29 Jason Rumney <jasonr@gnu.org>
11719
11720 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
11721 an alternative name for jpeg.dll.
11722
8a2d8020
KH
117232003-01-29 Kenichi Handa <handa@m17n.org>
11724
11725 * xdisp.c (set_cursor_from_row): Pay attention to string display
11726 properties.
11727
058c18c7
AC
117282003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
11729
11730 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
11731 <escape>.
11732 (keycode_to_xkeysym_table): Reformat and add more comments.
11733 (XTread_socket): Drop special case for backspace.
11734
385f11cf
AC
117352003-01-28 Andrew Choi <akochoi@shaw.ca>
11736
11737 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
11738 values in old-style RGB specs.
11739
c922a224
JB
117402003-01-27 Juanma Barranquero <lektu@terra.es>
11741
11742 * w32fns.c (init_external_image_libraries): Try alternate names for the
11743 jpeg dll.
11744
0a1d6de0
JD
117452003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11746
11747 * gtkutil.c (create_dialog, xg_separator_p)
11748 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
11749 before calling strcmp or strlen.
11750
a97e4138 117512003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
11752
11753 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
11754 and handle image load failure.
11755
28908312
JR
117562003-01-26 Jason Rumney <jasonr@gnu.org>
11757
11758 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
11759 New functions.
f63fd14e
JB
11760 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
11761 Disable color table lookups. Call jpeg library functions
28908312
JR
11762 through pointers determined at runtime.
11763 (init_external_image_libraries): Try to load jpeg.dll.
11764
84e47416
RS
117652003-01-25 Richard M. Stallman <rms@gnu.org>
11766
11767 * lisp.h: Declare format2 instead of format1.
11768
11769 * fileio.c (barf_or_query_if_file_exists):
11770 Call format2 instead of format1.
11771
11772 * editfns.c (format2): New function, replaces format1
11773 but takes exactly two Lisp Objects as format args.
11774
11775 * buffer.c (Fkill_buffer): Call format2 instead of format1.
11776
a97e4138 117772003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
11778
11779 * xterm.h: Change to return value of x_dispatch_event to int.
11780
11781 * xterm.c (x_filter_event): New function.
11782 (event_handler_gdk, XTread_socket): Call x_filter_event.
11783 (x_dispatch_event): Change to return value of finish.
11784 (event_handler_gdk): Use return value from x_dispatch_event.
11785
11786 * xfns.c (x_window): Call create_frame_xic for GTK version to
11787 initialize input methods.
11788
11789 * gtkutil.h: Add (void) prototypes.
11790
11791 * gtkutil.c (create_menus): Remove code that puts the help menu to
11792 the right.
11793
54eefef1
JR
117942003-01-25 Jason Rumney <jasonr@gnu.org>
11795
11796 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
11797 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
11798 (png_load): Adjust colors for Windows. Use Windows
11799 bitmaps. Disable color table lookups.
c262430d
JR
11800 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
11801 (init_png_functions): New function.
11802 (png_read_from_memory, png_load): Call png library functions
11803 through pointers determined at runtime.
11804 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
11805 (init_external_image_libraries): New function.
11806 (init_xfns): Call it.
54eefef1 11807
1a9e275b
AS
118082003-01-24 Andreas Schwab <schwab@suse.de>
11809
11810 * minibuf.c (Fminibuffer_message): Verify type of parameter.
11811
a97e4138 118122003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
11813
11814 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
11815 of static initializer.
11816
422eec7e
DL
118172003-01-24 Dave Love <fx@gnu.org>
11818
11819 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
11820 architectures.
11821
11822 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
11823 Use __alignof__.
11824
2a026b04
KH
118252003-01-24 Kenichi Handa <handa@m17n.org>
11826
11827 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 11828 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
11829 (command_loop_1): Call adjust_point_for_property with proper
11830 second arg.
11831
a18bb28d
JR
118322003-01-22 Jason Rumney <jasonr@gnu.org>
11833
11834 Sync changes with xterm.c and xfns.c.
11835
11836 * w32term.c (x_draw_glyph_string_foreground)
11837 (x_draw_composite_glyph_string_foreground): Implement overstriking.
11838
11839 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
11840 phys_cursor's hpos is overwritten. This is still not completely
11841 correct, as it doesn't really make sense to use hpos at all to
11842 get the cursor glyph (as that is relative to the width of the
11843 characters on the line, which may have changed during the update).
11844
11845 * w32term.c (notice_overwritten_cursor): Handle the special case
11846 of the cursor being in the first blank non-text line at the
11847 end of a window.
11848
11849 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11850 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11851 Compute from the x position returned by x_draw_glyphs.
11852
11853 (x_display_and_set_cursor): Don't set phys_cursor_width here,
11854 except for NO_CURSOR and system caret, to make phys_cursor_width
11855 contain what its name suggests.
11856 (notice_overwritten_cursor): Consider the cursor image erased if
11857 the output area intersects the cursor image in y-direction.
11858
6a097c0c
SM
11859 * w32term.c (note_mode_line_or_margin_highlight): Rename from
11860 note_mode_line_highlight and extend.
a18bb28d
JR
11861
11862 * w32term.c (last_window): New variable.
11863 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
11864 (note_mouse_movement): Remove reimplemented code in #if 0.
11865
11866 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
11867 not update_mode_lines, and always set it to 1.
11868
ac6e47ef
JR
118692003-01-21 Jason Rumney <jasonr@gnu.org>
11870
11871 * w32fns.c (IDC_HAND): Define it if system headers don't.
11872
118732003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11874
11875 * w32term.h (struct w32_output): New member hand_cursor.
11876 (WM_EMACS_SETCURSOR): New message definition.
11877
11878 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
11879 function w32_define_cursor.
11880 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
11881 position, change member name output_data.x to output_data.w32 and
11882 add function w32_define_cursor.
11883 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
11884 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
11885 (w32_initialize_display_info):
11886 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
11887
11888 * w32fns.c (Vx_hand_shape): New variable.
11889 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
11890 WM_EMACS_SETCURSOR.
11891 (x-create-frame): Setup Cursor types.
11892
ceb39a17
JB
118932003-01-21 David Ponce <david@dponce.com>
11894
ac6e47ef 11895 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 11896 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 11897 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 11898 2002-09-30.)
ac6e47ef
JR
11899 (w32_draw_relief_rect): Declare all args.
11900 (w32_define_cursor): New.
11901
11902 * w32fns.c (w32_load_cursor): New function.
11903 (w32_init_class): Use it.
11904 (x_put_x_image): Declare all args.
11905
b6189c3b 119062003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
46cf0bed
JB
11907
11908 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
11909
a97e4138 119102003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
11911
11912 * gtkutil.c: Must include stdio.h before termhooks.h
11913
83fc9c63
DL
119142003-01-21 Dave Love <fx@gnu.org>
11915
11916 * alloc.c (Fgc_status): Print zombie list.
11917 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11918 Fix assignment of zombies.
11919 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
11920 Don't take car of non-cons.
11921
11922 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11923
11924 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
11925
fe04b8c8
JR
119262003-01-20 David Ponce <david@dponce.com>
11927
11928 * w32menu.c (digest_single_submenu): Declare all args.
11929
11930 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
11931 changes in xmenu.c:
11932
11933 (parse_single_submenu): Use individual keymap's prompt
11934 string as pane name, if there is one.
11935 (set_frame_menubar): Save menu_items_n_panes from each call to
11936 parse_single_submenu and use it when calling digest_single_submenu.
11937
539e69a9
ST
119382003-01-20 Steven Tamm <steventamm@mac.com>
11939
7e26f91b 11940 * macterm.c (XTread_socket): Check for valid, visible window
539e69a9
ST
11941 before sending a scroll-wheel event.
11942
675d000f
RS
119432003-01-20 Richard M. Stallman <rms@gnu.org>
11944
11945 * xdisp.c (redisplay_window): If mini window's buffer is not
11946 a minibuffer, then redisplay it like other windows.
11947
a97e4138 119482003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
11949
11950 * gtkutil.c (xg_create_frame_widgets): Check if there is an
11951 external tool bar before setting tool bar height.
11952
048addec
JD
119532003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11954
11955 * xterm.c (handle_one_xevent): Surround popup_activated
11956 with #ifdef:s for non-toolkit version.
11957
11958 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
11959 (gtkutil.o): New file.
11960 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
11961 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
11962
11963 * gtkutil.c: New file for GTK version.
11964
11965 * gtkutil.h: New file for GTK version.
11966
11967 * xterm.h: Add xt_or_gtk_widget.
11968 Include gtk files for USE_GTK.
11969 (struct x_output): Add toolbar_height.
11970 (struct x_output): Add GTK widgets and Gdk size_hints.
11971 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
11972 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
11973 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
11974
11975 * xterm.c: Include gtkutil.h for USE_GTK.
78819ebb 11976 (free_frame_menubar): Declare extern void for USE_GTK.
048addec
JD
11977 (note_mouse_highlight): Check popup_activated for USE_GTK.
11978 (xt_action_hook): Don't compile if USE_GTK.
11979 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
11980 (xg_scroll_callback): New function.
11981 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
11982 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
11983 for USE_GTK.
11984 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
11985 xg_show_scroll_bar for USE_GTK.
11986 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
11987 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
11988 (event_handler_gdk): New function for USE_GTK.
11989 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
11990 (handle_one_xevent): Make sure widget is mapped before
11991 calling x_real_positions for USE_GTK.
11992 (XTread_socket): Add GTK event loop for USE_GTK.
11993 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
11994 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
11995 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
11996 (x_iconify_frame): Add code for USE_GTK.
11997 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
11998 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
11999 is in gtkutil.c.
12000 (x_term_init): Add initialization for GTK.
12001 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
12002
12003 * xmenu.c: Include gtkutil.h for USE_GTK.
12004 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
12005 (single_menu_item, single_menu_item, Fx_popup_dialog):
12006 Check for USE_GTK.
048addec
JD
12007 (popup_widget_loop): New function for USE_GTK.
12008 (x_activate_menubar): Add code for USE_GTK.
12009 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
12010 (menu_highlight_callback, menubar_selection_callback):
12011 Add USE_GTK versions.
048addec
JD
12012 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
12013 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
12014 (free_frame_menubar): Only compile if not USE_GTK. GTK version
12015 is in gtkutil.c.
12016 (popup_selection_callback): New version for USE_GTK.
12017 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 12018 one USE_X_TOOLKIT version.
048addec
JD
12019 (xmenu_show): Call create_and_show_popup_menu.
12020 (dialog_selection_callback): New version for USE_GTK.
12021 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 12022 one USE_X_TOOLKIT version.
048addec
JD
12023 (xdialog_show): Call create_and_show_dialog.
12024
12025 * xfns.c: Include gtkutil for USE_GTK.
12026 (x_window_to_frame, x_any_window_to_frame)
12027 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12028 (x_top_window_to_frame): Add code for USE_GTK.
12029 (x_set_background_color): Call xg_set_background_color for GTK.
12030 (x_set_menu_bar_lines): Check for USE_GTK.
12031 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
12032 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
12033 (x_window): Call xg_create_frame_widgets for USE_GTK.
12034 (Fx_create_frame): Check for USE_GTK
12035 (Fx_file_dialog): New implementation for USE_GTK.
12036
12037 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
12038 (update_menu_bar): Add check for USE_GTK.
12039 (update_tool_bar): Add check for USE_GTK and external tool bar.
12040 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
12041 (redisplay_internal): Add check for USE_GTK and popup_activated.
12042 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
12043 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
12044 (display_menu_bar): Add check for USE_GTK
12045
78819ebb 12046 * lisp.h (Vx_resource_name): Declare extern.
048addec 12047
a64387ee 12048 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
12049 for USE_GTK.
12050 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
12051
12052 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
12053 (FRAME_EXTERNAL_TOOL_BAR): New macro.
12054 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
12055
12056 * fileio.c (Fread_file_name): Add check for USE_GTK.
12057
6bdb309a
SM
12058 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
12059 Add check for USE_GTK.
048addec
JD
12060
12061 * config.in: Added HAVE_GTK
12062
12063 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
12064
120652003-01-18 Stefan Monnier <monnier@cs.yale.edu>
12066
12067 * charset.h (Funibyte_char_to_multibyte): Export.
12068
120692003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12070
12071 * xmenu.c (mouse_position_for_popup): New function.
12072 (Fx_popup_menu): Call mouse_position_for_popup for X and
12073 mouse_position_hook for others.
12074
120752003-01-17 Kim F. Storm <storm@cua.dk>
12076
12077 * editfns.c (Finsert): Mention `string-make-multibyte' and
12078 `string-as-multibyte' in doc string.
12079
120802003-01-17 Kenichi Handa <handa@m17n.org>
12081
12082 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 12083
048addec
JD
12084 * editfns.c (Fformat): Convert an unibyte char argument that is
12085 formatted by "%c" to multibyte if the total result must be a
12086 multibyte string.
cd7df9c0 12087
048addec 120882003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 12089
048addec
JD
12090 * process.c (set-process-filter): Document unibyte/multibyte-ness
12091 of string argument.
56210ecd 12092
048addec 120932003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 12094
048addec 12095 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 12096
048addec
JD
12097 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
12098 (re_search_2): Likewise.
6df8b9fe 12099
048addec 121002003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 12101
048addec
JD
12102 * xdisp.c (message_dolog): Fix bug of the case that *Message*
12103 buffer is unibyte.
292ddc31 12104
048addec 121052003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 12106
048addec 12107 * fns.c (Fsubstring): Clarify doc string.
292ddc31 12108
048addec
JD
12109 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
12110 (Fprevious_char_property_change)
12111 (Fnext_single_char_property_change)
12112 (Fprevious_single_char_property_change, Fnext_property_change)
12113 (Fnext_single_property_change, Fprevious_property_change)
12114 (Fprevious_single_property_change, Fadd_text_properties)
12115 (Fput_text_property, Fset_text_properties)
12116 (Fremove_text_properties, Fremove_list_of_text_properties)
12117 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 12118
048addec 121192003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 12120
048addec
JD
12121 * process.h (struct Lisp_Process): New member plist replaces old
12122 member private_vars. All uses changed.
63e4e4c6 12123
048addec 12124 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 12125 (QCplist): Rename from QCvars. Change all uses.
048addec 12126 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 12127 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 12128 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 12129 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 12130
048addec 121312003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 12132
6bdb309a 12133 * m/delta.h: Remove (obsolete).
e833850f 12134
048addec 121352003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 12136
048addec
JD
12137 * fileio.c (Fdelete_directory, Fdelete_file): Document the
12138 behaviour in front of symlinks.
12139 (Fdelete_file): Raise an error on directories.
817cb127 12140
048addec 121412003-01-13 Dave Love <fx@gnu.org>
817cb127 12142
048addec 12143 * fns.c (Freverse): Use QUIT.
3e8cf2ea 12144
048addec 121452003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 12146
048addec
JD
12147 * minibuf.c (minibuffer_completion_contents):
12148 Error if point is inside prompt.
3e8cf2ea 12149
048addec
JD
12150 * keyboard.c (command_loop_1): Don't redisplay directly
12151 if there's a post-command-hook.
3e8cf2ea 12152
048addec
JD
12153 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
12154 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 12155
048addec 121562003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 12157
048addec 12158 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 12159
048addec
JD
12160 * process.c (QCvars): New variable.
12161 (syms_of_process): Intern and staticpro it.
12162 (Fset_process_contact): Removed function.
12163 (Fprocess_variable, Fset_process_variable): New functions.
12164 (syms_of_process): Defsubr them.
12165 (Fstart_process): Initialize private_vars plist to nil.
12166 (Fmake_network_process): New arg :vars to setup the private
12167 variables for new network process.
12168 (server_accept_connection): Copy server's private variables to
12169 client process.
2c10f029 12170
048addec
JD
12171 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
12172 crashes). Code rewritten and simplified. Now directly aligns the
12173 pointer and recalculates pure_bytes_used, rather than aligning the
12174 size and adjusting the pointer.
b8a76c6c 12175
048addec 121762003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 12177
048addec
JD
12178 * process.c (Fset_process_contact): New function.
12179 (syms_of_process): defsubr it.
12180 (make-network-process): Update doc.
3a8d0899 12181
048addec 121822003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 12183
048addec
JD
12184 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
12185 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 12186
048addec 121872003-01-10 Dave Love <fx@gnu.org>
4abc7470 12188
048addec 12189 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 12190
048addec 121912003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 12192
048addec
JD
12193 * process.c (Fmake_network_process): Convert new port number
12194 to host byte order for `:service t' case. From Mario Lang.
bf338245 12195
048addec 121962003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 12197
048addec
JD
12198 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
12199 instead of XtAppProcessEvent.
bf338245 12200
048addec
JD
12201 * xterm.c (handle_one_xevent): New function.
12202 (x_dispatch_event): New function.
12203 (XTread_socket): Call handle_one_xevent.
bf338245 12204
048addec 12205 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 12206
048addec
JD
12207 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
12208 call XQueryPointer to get coordinates.
12209 (popup_get_selection): Do not set popup_activated_flag to zero,
12210 let popup_deactivate_callback do that. Needed for Motif.
12211 Call x_dispatch_event instead of XtDispatchEvent.
12212 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 12213
048addec 122142003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 12215
6bdb309a 12216 * process.c (server_accept_connection): Fix recording of new
048addec
JD
12217 connection's local address in :local property of contact info.
12218 (Fmake_network_process): Record local network address for new
12219 client processes in :local property of contact info.
6bdb309a 12220 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 12221
048addec 122222003-01-07 Dave Love <fx@gnu.org>
00e3ab56 12223
048addec 12224 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 12225
048addec 122262003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 12227
048addec 12228 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 12229
048addec
JD
12230 * eval.c (Fuser_variable_p): Doc change. For custom variables,
12231 use the same test as for custom-variable-p.
8c6d74c6 12232
048addec 122332003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 12234
048addec
JD
12235 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
12236 Count LAST_LINE_MISFIT in scroll margin for end of window.
12237 Move label too_near_end before setting SCROLL_MARGIN_POS.
12238 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 12239
048addec
JD
12240 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
12241 scroll_conservatively case. If scrolling that much doesn't change
12242 STARTP, move it down one line.
e833850f 12243
048addec
JD
12244 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
12245 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 12246
048addec
JD
12247 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
12248 selected frame.
8c6d74c6 12249
048addec 12250 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
3419757d 12251 (syms_of_keymap): Staticpro them.
048addec
JD
12252 (Fapropos_internal): Initialize them and clear them out.
12253 Don't GCPRO them.
8c6d74c6 12254
048addec
JD
12255 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
12256 Doc fixes.
8c6d74c6 12257
048addec
JD
12258 * lisp.h: New misc type Lisp_Save_Value.
12259 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
12260 (XSAVE_VALUE): New macro.
12261 (struct Lisp_Save_Value): New data type.
12262 (union Lisp_Misc): Add u_save_value alternative.
78819ebb 12263 (make_save_value): Declare.
8c6d74c6 12264
048addec 12265 * alloc.c (make_save_value): New function.
8c6d74c6 12266
048addec
JD
12267 * xterm.c (x_catch_errors): Save dpy using make_save_value.
12268 (x_catch_errors_unwind): Call XSync.
8c6d74c6 12269
048addec 122702003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 12271
048addec 12272 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 12273
048addec
JD
12274 * keyboard.c (command_loop_1): Call adjust_point_for_property
12275 in direct action cases for Qforward_char and Qbackward_char.
12276 Set already_adjusted so it won't be done twice.
8c6d74c6 12277
b6189c3b 122782002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
8c6d74c6 12279
048addec
JD
12280 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
12281 type definition of size_t.
8c609cff 12282
048addec 122832003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 12284
048addec
JD
12285 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
12286 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 12287
048addec 122882002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 12289
048addec
JD
12290 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
12291 to default to t.
fa634a5e 12292
048addec 122932002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 12294
048addec 12295 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 12296
048addec 122972002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 12298
7e26f91b 12299 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
048addec
JD
12300 allow building in a different directory than source. Uses some
12301 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 12302
048addec 123032002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 12304
048addec
JD
12305 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
12306 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
12307 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
12308 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 12309
048addec 123102002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 12311
048addec
JD
12312 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
12313 <scroll-down-aggressively>: Doc fix.
2155ecf3 12314
048addec
JD
12315 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
12316 string as pane name, if there is one.
12317 (set_frame_menubar): Save menu_items_n_panes from each call to
12318 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 12319
048addec
JD
12320 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
12321 Don't try to make last line fully visible if it is past end of window.
61f1d295 12322
048addec 123232002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 12324
048addec
JD
12325 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
12326 (mac_menu_show): Add support for hierarchical popup menus.
12327 (add_menu_item): Remove indentation support.
12328 (fill_submenu, fill_menu): Create hierarchical menus
12329 instead of using indentation.
0b17a217 12330
048addec 123312002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 12332
048addec
JD
12333 * xdisp.c (try_cursor_movement): Don't call try_window here.
12334 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 12335
048addec 12336 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 12337
048addec 123382002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 12339
048addec
JD
12340 * macterm.c (XTread_socket): Call KeyTranslate for control and
12341 meta to deal correctly shifted non-alpha characters, like C-S-5
7e26f91b 12342 being treated like C-%. Do not look for shift key to deal
048addec 12343 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 12344
048addec 123452002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 12346
048addec
JD
12347 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
12348 If it is non-nil, run timers. Use an unwind-protect to requeue
12349 the events that were read ahead.
12350 (popup_get_selection_unwind): New subroutine.
12351 (popup_get_selection_queue): File-scope variable now holds that queue.
12352 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
12353 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
12354 Use an unwind-protect to pop down the dialog box.
12355 (xdialog_show_unwind): New subroutine implements that.
f02cac82 12356
048addec
JD
12357 * xdisp.c (row_containing_pos): Change exit test using last_y.
12358 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 12359
048addec
JD
12360 * lread.c (load_error_handler): New function.
12361 (Fload): Handle errors in Fsubstitute_in_file_name.
12362 Don't expect Fsignal to return.
f02cac82 12363
048addec
JD
12364 * eval.c: Errors and throws work right with interrupt blocking.
12365 (struct catchtag): New elt interrupt_input_blocked.
12366 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
12367 (internal_catch, Fcondition_case, internal_condition_case)
12368 (internal_condition_case_1, internal_condition_case_2): Save it.
12369 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 12370
048addec 12371 * editfns.c (Fformat): Add parens.
f02cac82 12372
048addec
JD
12373 * dired.c (file_name_completion): Fix that change.
12374 Delete special quit-handling code; just use QUIT.
f02cac82 12375
b6189c3b 123762002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
f02cac82 12377
048addec
JD
12378 * dired.c (file_name_completion): Close directory on error
12379 just as in directory_files_internal.
1a590729 12380
048addec 123812002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 12382
048addec
JD
12383 * window.c (Fset_window_configuration): Set old_point to correct
12384 value when new_current_buffer == current_buffer.
f02cac82 12385
048addec 123862002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 12387
048addec
JD
12388 Revisited my earlier fix for the following entry in etc/PROBLEMS:
12389 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12390 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 12391
048addec
JD
12392 These changes were in part based upon suggestions made by Peter
12393 'Luna' Runestig [peter@runestig.com].
9785d95b 12394
f4a5a485
SM
12395 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
12396 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
12397 (g_b_init_get_sid_identifier_authority ): Add several static
048addec 12398 global variables.
9785d95b 12399
048addec
JD
12400 * w32.c (globals_of_w32): New function. Used to initialize those
12401 global variables that must always be initialized on startup even
12402 when the global variable initialized is non zero. Its primary
12403 purpose at this time is to set the global variables
12404 g_b_init_is_windows_9x, g_b_init_open_process_token,
12405 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
12406 g_b_init_get_sid_identifier_authority to 0 on startup.
12407 Called from main.
9785d95b 12408
048addec
JD
12409 * w32.c (is_windows_9x): Perform initialization only if
12410 g_b_init_is_windows_9x is equal to 0. On initialization set
12411 g_b_init_is_windows_9x equal to 1.
2308af15 12412
048addec
JD
12413 * w32.c (open_process_token): Perform initialization only if
12414 g_b_init_open_process_token is equal to 0. On initialization set
12415 g_b_init_open_process_token equal to 1.
2308af15 12416
048addec
JD
12417 * w32.c (get_token_information): Perform initialization only if
12418 g_b_init_get_token_information is equal to 0. On initialization
12419 set g_b_init_get_token_information equal to 1.
9785d95b 12420
048addec
JD
12421 * w32.c (lookup_account_sid): Perform initialization only if
12422 g_b_init_lookup_account_sid is equal to 0. On initialization
12423 set g_b_init_lookup_account_sid equal to 1.
9785d95b 12424
048addec
JD
12425 * w32.c (get_sid_identifier_authority): Perform initialization
12426 only if g_b_init_get_sid_identifier_authority is equal to 0.
12427 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 12428
f63fd14e 12429 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
12430 those global variables that must always be initialized on startup
12431 even when the global variable initialized is non zero.
12432 Its primary purpose at this time is to initialize the global variable
12433 track_mouse_event_fn.
9785d95b 12434
a64387ee 12435 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 12436 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 12437
048addec 12438 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 12439
f63fd14e 12440 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
12441 initialize those global variables that must always be initialized
12442 on startup even when the global variable initialized is non zero.
12443 Its primary purpose at this time is to initialize the global
12444 variables get_menu_item_info and set_menu_item_info.
9785d95b 12445
048addec
JD
12446 * w32menu.c (initialize_frame_menubar): Remove initialization of
12447 get_menu_item_info and set_menu_item_info.
9785d95b 12448
048addec 12449 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 12450
048addec
JD
12451 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
12452 Declare them.
9785d95b 12453
048addec
JD
12454 * emacs.c (main): Call globals_of_w32 prior to calling
12455 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
12456 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
12457 is defined.
9785d95b 12458
048addec
JD
12459 * w32term.c (x_update_window_begin): Fix Windows API error
12460 detected by BoundsChecker. Test to determine if
12461 w32_system_caret_hwnd is NULL prior to attempting to use
12462 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 12463
048addec
JD
12464 * w32term.c (x_update_window_end): Fix Windows API error
12465 detected by BoundsChecker. Test to determine if
12466 w32_system_caret_hwnd is NULL prior to attempting to use
12467 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 12468
048addec 124692002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 12470
048addec
JD
12471 * coding.c (coding_system_require_warning): New variable.
12472 (syms_of_coding): DEFVAR it.
b6da19ef 12473
048addec 12474 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 12475
048addec
JD
12476 * fileio.c (choose_write_coding_system): Even if
12477 Vcoding_system_for_write is non-nil, if
12478 coding_system_require_warning is nonzero, call
12479 Vselect_safe_coding_system_function.
bfcf6dbe 12480
048addec 124812002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 12482
048addec
JD
12483 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
12484 (lisp): Add font-core.
2c568af5 12485
048addec 124862002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 12487
048addec
JD
12488 * textprop.c (text_read_only): New arg `propval'.
12489 (get_char_property_and_overlay): Remove unused var `next_overlay'.
12490 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 12491
048addec 124922002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 12493
048addec 12494 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 12495
048addec 124962002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 12497
048addec
JD
12498 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
12499 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
12500 Be more careful about when help_events are generated.
96720f09 12501
048addec 125022002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 12503
048addec
JD
12504 * macterm.c (mac_check_for_quit_char): Correctly set the
12505 modifiers of the event to 0.
12506 * mac.c (sys_select): Duplicate rfds before calling select to
12507 ensure that rfds survive the while loop.
e5ae1c49 12508
048addec 125092002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 12510
048addec
JD
12511 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
12512 row_containing_pos returned NULL.
2eb46b2d 12513
048addec 125142002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 12515
6bdb309a 12516 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 12517 non-blocking.
6bdb309a 12518 (sys_select): Fix sys_select to not use a timeout larger than
048addec 12519 the one given.
b11f1d8a 12520
048addec 125212002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 12522
048addec 12523 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 12524
048addec 125252002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 12526
048addec
JD
12527 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
12528 as the last thing.
a4ac5b17 12529
048addec 125302002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 12531
048addec 12532 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 12533
048addec 125342002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 12535
048addec
JD
12536 * editfns.c (Fformat): Handle precision in string conversion
12537 specifiers like libc functions do (ie, print at most that many
12538 characters).
85cce843 12539
048addec 125402002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 12541
048addec
JD
12542 * xdisp.c (row_containing_pos): Check more carefully
12543 whether charpos is really in the row before returning it.
0d4d26a7 12544
048addec 125452002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 12546
048addec 12547 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 12548
048addec
JD
12549 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
12550 each stack frame. This may change as it could be time consuming.
0d4d26a7 12551
048addec
JD
12552 * macterm.c (mac_check_for_quit_char, quit_char_comp)
12553 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 12554 (mac_initialize): Add code to check for pressing of quit_char
048addec 12555 in the OS event queue.
b11f1d8a 12556
048addec
JD
12557 * mac.c (sys_select): Call mac_check_for_quit_char every second
12558 while blocking on select.
0d4d26a7 12559
048addec
JD
12560 * mac.c (sys_read): Use sys_select to test for input first
12561 before calling read, to allow C-g to break.
9252f7bc 12562
048addec 125632002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 12564
048addec 12565 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 12566
048addec 12567 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 12568
048addec 12569 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 12570
048addec
JD
12571 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
12572 autoload.
9252f7bc 12573
048addec 12574 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 12575
048addec 12576 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 12577
048addec 125782002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 12579
048addec 12580 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 12581
048addec 125822002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 12583
048addec 12584 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 12585
048addec 12586 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 12587
048addec 12588 * alloca.c: Don't use #error.
02d588e2 12589
048addec 125902002-12-03 Dave Love <fx@gnu.org>
02d588e2 12591
048addec
JD
12592 * buffer.c (Qucs_set_table_for_input): New.
12593 (Fget_buffer_create): Use it.
12594 (Qset_buffer_major_mode_hook): Deleted.
12595 (Fset_buffer_major_mode): Revert previous change.
12596 (init_buffer_once): Intern ucs-set-table-for-input.
12597 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
12598 Add &Qucs_set_table_for_input.
451e2697 12599
048addec 126002002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 12601
048addec
JD
12602 * callint.c (Fcall_interactively): Use next_event only if less
12603 than key_count.
72742a99 12604
048addec 126052002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 12606
048addec
JD
12607 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
12608 names to 255 characters.
72742a99 12609
048addec
JD
12610 * macterm.c (XTread_socket): If all frames have been collapsed,
12611 expand the first one before handling drag-and-drop events.
72742a99 12612
048addec
JD
12613 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
12614 which is detected by autoconf.
40e6ff95 12615
048addec 126162002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 12617
048addec
JD
12618 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
12619 offset in two hints table to allow prebinding to be redone and
12620 allow the executable to be stripped.
c02138c6 12621
048addec 126222002-11-29 Dave Love <fx@gnu.org>
c02138c6 12623
048addec
JD
12624 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
12625 already provided.
0e47bbf7 12626
048addec 126272002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 12628
048addec
JD
12629 * xdisp.c (start_display): Check more intelligently for
12630 whether the line is continued.
12631 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 12632
048addec 126332002-11-28 Dave Love <fx@gnu.org>
44129dcb 12634
048addec
JD
12635 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
12636 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 12637
048addec 126382002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 12639
048addec
JD
12640 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
12641 more descriptive error output from lread.c:Fload upon most require
12642 cycles during boostrapping.
1637fd2c 12643
048addec 126442002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 12645
048addec
JD
12646 * fileio.c (Finsert_file_contents): Give a more appropriate error
12647 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 12648
048addec
JD
12649 * dired.c (Ffile_attributes): Don't return negative file sizes for
12650 files bigger than 2Gb when off_t is 32 bit.
540c2788 12651
048addec 126522002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 12653
048addec 12654 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 12655
048addec
JD
12656 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
12657 Test GETPGRP_VOID instead.
12658 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 12659
048addec
JD
12660 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
12661 Don't define.
12662 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 12663
048addec 12664 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 12665
048addec 126662002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 12667
048addec
JD
12668 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
12669 supported.
4042a81a 12670
048addec 126712002-11-25 Dave Love <fx@gnu.org>
4042a81a 12672
048addec 12673 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 12674
048addec 12675 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 12676
048addec 126772002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 12678
048addec 12679 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 12680
048addec 126812002-11-24 Steven Tamm <steventamm@mac.com>
82122254 12682
048addec
JD
12683 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
12684 determine the size of pointers alloced in unexed space instead
12685 of using possibly invalid emacs_zone pointers. This fixes the
12686 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 12687
048addec 126882002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 12689
048addec 12690 * search.c (Fstring_match): Doc fix.
c1ee53bc 12691
048addec
JD
12692 * callint.c (Fcall_interactively): If a command fails because
12693 `*' detects a read-only buffer, but RECORD_FLAG is set,
12694 record it anyway if the args don't actually do tty input.
5598c32e 12695
048addec 126962002-11-22 Dave Love <fx@gnu.org>
5598c32e 12697
048addec 12698 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 12699
048addec
JD
12700 * keyboard.c (interrupt_signal): Provide forward declaration.
12701 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 12702
048addec 12703 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 12704
048addec 127052002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 12706
048addec
JD
12707 * eval.c (interactive_p): Skip any number of bytecode
12708 and special form frames, in any order.
516eea8e 12709
048addec 127102002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 12711
048addec
JD
12712 * w32fns.c (convert_mono_to_color_image): New function.
12713 (xbm_load, xbm_load_image): Use it when foreground or background
12714 is explicitly set.
04dbfa08 12715
048addec 127162002-11-19 Dave Love <fx@gnu.org>
04dbfa08 12717
048addec 12718 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 12719
048addec 127202002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 12721
048addec
JD
12722 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
12723 (XPutPixel): Swap blue and red.
12724 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
12725 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
12726 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
12727 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 12728
048addec 127292002-11-18 Dave Love <fx@gnu.org>
d824beee 12730
048addec 12731 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 12732
048addec 12733 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 12734
048addec 12735 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 12736
048addec
JD
12737 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
12738 malloc, realloc, calloc.
d824beee 12739
048addec
JD
12740 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
12741 (bcmp): Don't define.
d824beee 12742
048addec 12743 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 12744
048addec 12745 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 12746
048addec 12747 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 12748
048addec 12749 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 12750
048addec
JD
12751 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
12752 Don't include alloca.h.
d824beee 12753
048addec 12754 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 12755
048addec 12756 * regex.c (_GNU_SOURCE): Don't define.
1998560a 12757
048addec 12758 * process.c (_GNU_SOURCE): Don't define.
1998560a 12759
048addec 12760 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 12761
048addec 127622002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 12763
048addec 12764 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 12765
048addec 127662002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 12767
048addec
JD
12768 * dispextern.h (struct face): Add `overstrike' field.
12769 * xterm.c (x_draw_glyph_string_foreground)
12770 (x_draw_composite_glyph_string_foreground): Implement overstriking.
12771 * xfaces.c (load_face_font): Set `face->overstrike' based on
12772 result from choose_face_font.
12773 (best_matching_font, choose_face_font): Add `needs_overstrike'
12774 argument, and use it to return whether overstriking is desirable
12775 for this face/font combo.
12776 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 12777
048addec 127782002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 12779
048addec
JD
12780 This change is my fix for the following entry in etc/PROBLEMS:
12781 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
12782 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 12783
048addec
JD
12784 * w32.c: Added wrapper functions around the win32 API functions
12785 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
12786 GetSidIdentifierAuthority. These wrapper functions serve two
12787 purposes:
12788 1. They ensure that the wrapped function can never be called
12789 when Emacs is running on an operating system on which they are
12790 not supported (Microsoft Windows 95 / 98 / ME).
12791 2. They call the wrapped functions via function pointers rather
12792 than calling them directly. This avoids taking advantage of the
12793 undocumented fact that although these functions are not supported
12794 in the 9x branch of Microsoft Windows, the functions do exist in
12795 the version of advapi32.dll that is found in the 9x branch of
12796 Microsoft Windows.
f60ae425 12797
6bdb309a 12798 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
12799 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
12800 and GetSidIdentifierAuthority with calls to the newly added
12801 wrapper functions.
f60ae425 12802
048addec
JD
12803 * w32.h: Added extern declarations for the following functions:
12804 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
12805 syms_of_w32menu, and void syms_of_fontset.
f60ae425 12806
6bdb309a 12807 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
12808 function pointer track_mouse_event_fn in the handler for the
12809 WM_SETFOCUS message.
3582b6a3 12810
6bdb309a 12811 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
12812 reinitialize the function pointers set_menu_item_info and
12813 get_menu_item_info.
f60ae425 12814
048addec 128152002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 12816
048addec
JD
12817 * sound.c: Added a partial implementation of play-sound-internal
12818 for Microsoft Windows. Added various #ifdef / #else / #endif
12819 code blocks to separate the code that will compile under
12820 Microsoft Windows from the code that is specific to Gnu/Linux.
12821 Moved several blocks of code around to make this separation of code
12822 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 12823
048addec 12824 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 12825
048addec
JD
12826 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
12827 added support for play-sound-internal under Windows would be
12828 included in the build of Emacs.
517f42a0 12829
048addec 128302002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 12831
048addec 12832 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 12833
048addec 12834 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 12835
048addec 128362002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 12837
048addec
JD
12838 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
12839 (adjust_point_for_property): Move out of display and invisible even if
12840 we were already inside before (in case a property was added while
12841 we weren't looking). Be more careful when handling invisible props.
12842 Skip invisible text as if it really wasn't there at all.
aab83f91 12843
048addec 128442002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 12845
048addec
JD
12846 * w32term.c (x_draw_image_foreground)
12847 (w32_draw_image_foreground_1): Use standard copy and invert
12848 operations to draw images.
aab83f91 12849
048addec
JD
12850 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
12851 depth of 1.
12852 (xbm_read_bitmap_data): Invert bits as xbm is read in.
12853 (XPutPixel): Don't invert bits here.
a4478a76 12854
048addec 128552002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 12856
048addec
JD
12857 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
12858 (w32_draw_image_foreground_1): Handle image masks.
12859 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 12860
048addec
JD
12861 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
12862 (x_from_xcolors): Adjust RGB values for W32.
12863 (image_background, image_background_transparent)
12864 (postprocess_image, x_to_xcolors, x_disable_image)
12865 (x_build_heuristic_mask): Adapt for W32 and enable.
12866 (x_create_x_image_and_pixmap): Mark images with palettes as such.
12867 (xbm_load): Remove unused variable.
03670a65 12868
048addec 128692002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 12870
048addec 12871 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 12872
048addec 128732002-11-14 Dave Love <fx@gnu.org>
59daa29a 12874
048addec 12875 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 12876
048addec
JD
12877 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
12878 * xmenu.c (unuse_menu_items, digest_single_submenu):
12879 * xfns.c (x_put_x_image):
12880 * xdisp.c (message2_nolog, set_message):
12881 * undo.c (record_point):
12882 * terminfo.c (tparam):
12883 * syntax.c (scan_sexps_forward):
12884 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12885 * composite.c (update_compositions):
12886 * cm.c (calccost, cmgoto):
12887 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 12888
048addec 12889 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 12890
048addec
JD
12891 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
12892 Don't declare.
59daa29a 12893
048addec 12894 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 12895
048addec
JD
12896 * fns.c (Fcopy_sequence): Doc fix.
12897 (Fmap_char_table): Cast `call2'.
3947677c 12898
048addec
JD
128992002-11-14 Francesco Potorti` <pot@gnu.org>
12900
12901 * s/sol2-8.h: New file.
12902
129032002-11-14 Kim F. Storm <storm@cua.dk>
12904
12905 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
12906 dependency on `risky-local-variable' and the :propertize form.
12907
129082002-11-12 Stefan Monnier <monnier@cs.yale.edu>
12909
12910 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
12911
12912 * syntax.c (scan_sexps_forward): Undo last patch.
12913 Use a more obvious fix: check eob before updating the syntax table.
12914
129152002-11-09 Stefan Monnier <monnier@cs.yale.edu>
12916
12917 * syntax.c (scan_sexps_forward): Update syntax table before reading
12918 a char rather than after so we don't update the table past eob.
12919
129202002-11-09 Dave Love <fx@gnu.org>
12921
12922 * buffer.c (Fset_buffer_major_mode): Fix last change.
12923
12924 * regex.c (regexec): Fix pmatch declaration.
12925
12926 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
12927
12928 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
12929 to self-inserting characters.
12930 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
12931
12932 * coding.c (Vtranslation_table_for_input): New.
12933 (syms_of_coding): DEFVAR it.
12934
129352002-11-08 Juanma Barranquero <lektu@terra.es>
12936
12937 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
12938 window.
12939
129402002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12941
6bdb309a 12942 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
12943 cp, and i.
12944
129452002-11-06 Dave Love <fx@gnu.org>
12946
12947 * buffer.c (Qset_buffer_major_mode_hook): New.
12948 (Fset_buffer_major_mode): Use it.
12949
129502002-11-06 Richard M. Stallman <rms@gnu.org>
12951
12952 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
12953 and stop_polling.
12954
12955 * process.c (wait_reading_process_input):
12956 Test POLLING_PROBLEM_IN_SELECT, not hpux.
12957 Avoid initialization for auto Lisp_Object var.
12958
12959 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
12960
12961 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
12962
129632002-11-05 Richard M. Stallman <rms@gnu.org>
12964
12965 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
12966
12967 * callint.c (Fcall_interactively): New local filter_specs.
12968 (Fcall_interactively): Check for progn as well as let.
12969 Add a gcpro.
12970 (Qprogn): New variable.
12971 (syms_of_callint): Staticpro and init Qprogn.
12972
129732002-11-04 John Paul Wallington <jpw@shootybangbang.com>
12974
12975 * lread.c (Feval_buffer): Doc fix.
12976
129772002-11-04 Dave Love <fx@gnu.org>
12978
12979 * keyboard.c (read_char): Always translate iff
12980 Vkeyboard_translate_table is a char table and c is valid.
12981
12982 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
12983 and fix C types.
12984
129852002-11-03 Stefan Monnier <monnier@cs.yale.edu>
12986
12987 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
12988
12989 * editfns.c (get_pos_property): Don't hardcode Qfield.
12990
12991 * keyboard.c (adjust_point_for_property): Handle `display' prop on
12992 overlays. Also handle `invisible' prop.
12993
129942002-11-02 Stefan Monnier <monnier@cs.yale.edu>
12995
12996 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
12997 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
12998
129992002-11-01 Andreas Schwab <schwab@suse.de>
13000
13001 * editfns.c (Fmessage): Revert last change to properly handle %%.
13002
130032002-11-01 Stefan Monnier <monnier@cs.yale.edu>
13004
13005 * xmenu.c (unuse_menu_items): New fun.
13006 (menu_items_inuse): New var.
13007 (syms_of_xmenu): Initialize it.
13008 (init_menu_items): Use it to detect re-entrance.
13009 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
13010 (Fx_popup_menu): Remove spurious XSETFRAME.
13011
13012 * editfns.c (find_field): Make an exception for nil fields.
13013
130142002-11-01 Dave Love <fx@gnu.org>
13015
13016 * m/gec63.h: Deleted.
13017
130182002-10-31 Dave Love <fx@gnu.org>
13019
13020 * xterm.c (XTread_socket): Fix last change.
13021 (xaw_scroll_callback): Cast call_data to long to avoid warning.
13022
130232002-10-31 Stefan Monnier <monnier@cs.yale.edu>
13024
13025 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
13026
130272002-10-30 Stefan Monnier <monnier@cs.yale.edu>
13028
13029 * editfns.c (overlays_around, get_pos_property): New funs.
13030 (find_field): Use them.
13031 Also be careful not to modify POS before its last use.
13032 (Fmessage): Don't Fformat if there's nothing to format.
13033
130342002-10-30 Dave Love <fx@gnu.org>
13035
13036 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
13037 [HAVE_PTY_H]; Include pty.h.
13038
13039 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
13040
13041 * xterm.c (Qeql): Declare.
13042 (Vx_keysym_table): New.
13043 (syms_of_xterm): Initialize it.
13044 (XTread_socket): Use it. Deal with ASCII keysyms.
13045 (XSetIMValues) [HAVE_X11R6]: Prototype.
13046
13047 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
13048 (lispy_kana_keys): Comment out.
13049 (make_lispy_event) [XK_kana_A]: Comment out.
13050 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
13051 Fix sprintf call.
13052
13053 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
13054 regexp.h change).
13055 (TERMINFO, LIBS_TERMCAP): Define.
13056
13057 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
13058 (bcmp): Define conditional on HAVE_BCMP.
13059 (NO_SIOCTL_H): Don't define.
13060 (TIOCSIGSEND): Don't make conditional on IRIX6.
13061
13062 * s/sol2-5.h: Don't include strings.h.
13063 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
13064
13065 * s/irix6-0.h (IRIX6): Don't define.
13066 (bcopy, bcmp, bzero): Don't undef.
13067
13068 * s/irix6-5.h: Don't include strings.h.
13069 (IRIX6): Don't define.
13070 (bcopy, bcmp, bzero): Don't undef.
13071
13072 * syntax.c (Fforward_comment): Doc fix.
13073
130742002-10-29 Kim F. Storm <storm@cua.dk>
13075
13076 * process.c (Fsignal_process): Allow PROCESS to be specified by
13077 name in addition to pid (as integer or string).
13078
130792002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
13080
13081 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
13082 environments.
13083
130842002-10-27 Kim F. Storm <storm@cua.dk>
13085
13086 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
13087
13088 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
13089
13090 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
13091
13092 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
13093
130942002-10-26 Richard M. Stallman <rms@gnu.org>
13095
13096 * editfns.c (Fformat): Detect invalid format letters for floats.
13097
130982002-10-25 Kenichi Handa <handa@m17n.org>
13099
13100 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
13101 (x_set_title): Likewise.
13102
131032002-10-25 Juanma Barranquero <lektu@terra.es>
13104
13105 * macgui.h:
13106 * w32gui.h: Remove definition of XColor.
13107
13108 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
13109
131102002-10-24 Kim F. Storm <storm@cua.dk>
13111
13112 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
13113 Callers changed (supply dummy arg).
13114
13115 * lisp.h (get_window_cursor_type): Update prototype.
13116
13117 * w32term.c (x_display_and_set_cursor): Get active_cursor from
13118 get_window_cursor_type to track system caret.
13119
131202002-10-24 Kim F. Storm <storm@cua.dk>
13121
13122 * process.c (Fformat_network_address): New function.
13123 (syms_of_process): Defsubr it.
13124 (list_processes_1): Use it to format :local/:remote address if
f9711de4 13125 service/host is not set; before Emacs would crash in that case.
048addec
JD
13126 (Fmake_network_process): Don't use Ffind_operation_coding_system
13127 to setup coding system if host or service is not set.
13128
131292002-10-23 Juanma Barranquero <lektu@terra.es>
13130
13131 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
13132
13133 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
13134 COLORREF.
13135
13136 * macgui.h:
13137 * w32gui.h: Add definition of XColor.
13138
13139 * macfns.c:
13140 * w32fns.c:
13141 * xfaces.c: Remove definition of XColor.
13142
131432002-10-22 Stefan Monnier <monnier@cs.yale.edu>
13144
13145 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
13146
13147 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
13148 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
13149 window if it is dedicated.
13150 (Fshrink_window): Add preserve_before as was done for enlarge_window.
13151 (Vspecial_display_function): Update docstring.
13152
13153 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
13154 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
13155 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
13156
131572002-10-21 Stefan Monnier <monnier@cs.yale.edu>
13158
13159 * casefiddle.c (casify_region): Don't treat a prefix char as part
13160 of a word when at the beginning.
13161
131622002-10-17 Juanma Barranquero <lektu@terra.es>
13163
13164 * lread.c (syms_of_lread): Fix typos.
13165
131662002-10-17 Dave Love <fx@gnu.org>
13167
13168 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
13169
131702002-10-16 Richard M. Stallman <rms@gnu.org>
13171
13172 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
13173
131742002-10-14 Juanma Barranquero <lektu@terra.es>
13175
13176 * w16select.c (syms_of_win16select): Fix docstring for
13177 `selection-coding-system'.
13178
13179 * w32select.c (syms_of_w32select): Likewise.
13180
131812002-10-14 Stefan Monnier <monnier@cs.yale.edu>
13182
13183 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
13184 a backslash-quoted char.
13185 (scan_lists, scan_sexps_forward): Pacify the compiler.
13186
131872002-10-13 Richard M. Stallman <rms@gnu.org>
13188
13189 * window.c (window_scroll): Set immediate_quit.
13190
13191 * print.c (print): When backquote form is the car of a list,
13192 output in old style. Use old_backquote_output to output all
13193 comma forms inside it in old style too.
13194
13195 * buffer.h (struct buffer): Move `undo_list' down below `name'.
13196
131972002-10-11 Markus Rost <rost@math.ohio-state.edu>
13198
13199 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
13200 batch mode).
13201
13202 * lread.c (Fload): Doc fix (load-suffixes).
13203
132042002-10-10 Steven Tamm <steventamm@mac.com>
13205
13206 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
13207 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
13208 Also switch the default to Qnil from Qt.
13209
132102002-10-08 Kenichi Handa <handa@m17n.org>
13211
13212 * coding.c (code_convert_region): When we need more GAP for
13213 conversion, pay attention to the case that coding->produced is not
13214 greater than coding->consumed.
13215
132162002-10-07 Richard M. Stallman <rms@gnu.org>
13217
13218 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
13219
132202002-10-06 Andrew Choi <akochoi@shaw.ca>
13221
13222 * macmenu.c (mac_menu_show): Add j to count menu items; match
13223 menu_item_selection to it to find selected item.
13224
132252002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13226
13227 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
13228 cases. The correct fix is to pass ReparentNotify to Xt.
13229 The shell widget interprets ConfigureNotify differently depending
13230 on if it has been reparented or not.
13231
132322002-10-05 Markus Rost <rost@math.ohio-state.edu>
13233
13234 * editfns.c (Fformat_time_string): Doc fix.
13235
132362002-10-05 John Paul Wallington <jpw@shootybangbang.com>
13237
13238 * fns.c (Flength): Doc fix.
13239
132402002-10-04 Stefan Monnier <monnier@cs.yale.edu>
13241
13242 * keyboard.c (keyremap): New struct.
13243 (read_key_sequence): Use it: globally replace keytran_foo with
13244 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
13245 keytran_next and fkey_next to just `next'.
13246
132472002-10-04 Steven Tamm <steventamm@mac.com>
13248
13249 * macterm.c (keycode_to_xkeysym_table): Change return to be
13250 treated like an X keysym.
13251
132522002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13253
13254 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
13255 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
13256 This is to also handle x/y changes that occur because of a resize.
13257
132582002-10-02 John Paul Wallington <jpw@shootybangbang.com>
13259
13260 * frame.c (Vdelete_frame_functions): New variable.
13261 (syms_of_frame): Initialize and defvar it.
13262 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
13263 it when frame's `tooltip' parameter is non-nil.
13264
13265 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
13266
13267 * w32fns.c (x_create_tip_frame): Likewise.
13268
13269 * macfns.c (x_create_tip_frame): Likewise.
13270
132712002-09-30 Kenichi Handa <handa@m17n.org>
13272
13273 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
13274 -1 before calling ccl_driver.
13275
13276 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
13277 Only when it is non-nil, handle composition sequence.
13278 (setup_coding_system) <0>: Don't force composition handling.
13279
13280 * Makefile.in (lisp, shortlisp): Add utf-16.elc
13281
132822002-09-29 Richard M. Stallman <rms@gnu.org>
13283
13284 * search.c (Freplace_match): Adjust match data for the substitution
13285 just made in the buffer.
13286
13287 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
13288 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
13289
132902002-09-27 Richard M. Stallman <rms@gnu.org>
13291
13292 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
13293 (read_char): Use them. Do all exits thru the end of the function.
13294
132952002-09-27 Kenichi Handa <handa@etl.go.jp>
13296
13297 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
13298 is nil.
13299
133002002-09-26 Richard M. Stallman <rms@gnu.org>
13301
13302 * regex.h (__restrict_arr): Don't define if already defined.
13303
13304 * coding.c (run_pre_post_conversion_on_str):
13305 Save and restore Vdeactivate_mark.
13306
133072002-09-26 John Paul Wallington <jpw@shootybangbang.com>
13308
13309 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
13310
133112002-09-26 Kenichi Handa <handa@etl.go.jp>
13312
13313 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
13314 nonzero, try face's family at first. Otherwise try FAMILY at first.
13315 (choose_face_font): If C is a single byte char or latin-1, call
13316 try_font_list with PREFER_FACE_FAMILY 1.
13317
133182002-09-21 Richard M. Stallman <rms@gnu.org>
13319
13320 * window.c (select_window_1): Don't select frame.
13321 Set frame's selected window only when frame itself is selected.
13322 (Fselect_window): Doc fix.
13323
133242002-09-18 Kim F. Storm <storm@cua.dk>
13325
13326 * process.c (make-network-process): Doc fix (there is no
13327 network-server-log-function hook).
13328
133292002-09-18 Richard M. Stallman <rms@gnu.org>
13330
13331 * print.c (print): Clear out the unused parts of Vprint_number_table.
13332 (syms_of_print): Doc fix for `print-number-table'.
13333
13334 * unexelf.c (unexec): Undo previous change.
13335
133362002-09-17 Andreas Schwab <schwab@suse.de>
13337
13338 * m/alpha.h [LINUX]: Don't define DATA_START.
13339
133402002-09-16 Dave Love <fx@gnu.org>
13341
13342 * unexelf.c (unexec): Deal with .got, reinstating change from
13343 25-08-1999.
13344
133452002-09-13 Richard M. Stallman <rms@gnu.org>
13346
13347 * s/sol2-6.h (UNEXEC): Comment out definition.
13348
13349 * unexsol.c (unexec): Don't downcase first letter of error msg.
13350
13351 * xfaces.c (Fcolor_supported_p): Just one arg is required.
13352
133532002-09-12 Markus Rost <rost@math.ohio-state.edu>
13354
13355 * unexsol.c: Include buffer.h, charset.h, coding.h.
13356
133572002-09-11 Richard M. Stallman <rms@gnu.org>
13358
13359 * unexsol.c: Don't use report_file_error; do it by hand
13360 using dlerror.
13361
13362 * process.c (wait_reading_process_input, both versions):
13363 Before calling turn_on_atimers, call stop_polling.
13364
13365 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
13366
13367 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
13368 we go to too_near_end, call clear_glyph_matrix.
13369 (redisplay_window): After make_cursor_line_fully_visible,
13370 call clear_glyph_matrix and bypass `goto done'.
13371
13372 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
13373 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
13374
133752002-09-10 Richard M. Stallman <rms@gnu.org>
13376
13377 * fileio.c (Fdo_auto_save): Catch error making directory.
13378 Only call push_message if we need to.
13379 At the same time, make an unwind-protect to pop it.
13380 Rename local message_p to old_message_p.
13381 (do_auto_save_make_dir, do_auto_save_eh): New functions.
13382 (do_auto_save_unwind): Don't call pop_message.
13383
13384 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
13385
13386 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
13387
13388 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
13389
13390 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
13391
133922002-09-10 Stefan Monnier <monnier@cs.yale.edu>
13393
13394 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
13395 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
13396 (re_match_2_internal): Be more careful with infinite loops.
13397
133982002-09-10 Kim F. Storm <storm@cua.dk>
13399
13400 * macros.c (end_kbd_macro): New function.
13401 (Fend_kbd_macro): Use it.
13402
13403 * macros.h (end_kbd_macro): Declare extern.
13404
13405 * keyboard.c (Fdiscard_input): If defining keyboard macro,
13406 end and save it instead of discarding it.
13407
134082002-09-09 Markus Rost <rost@math.ohio-state.edu>
13409
13410 * s/sol2-6.h: Fix typo. Add comment.
13411
134122002-09-09 Richard M. Stallman <rms@gnu.org>
13413
13414 * regex.c (regnum_t): Use signed int, not unsigned int.
13415
13416 * s/sol2-6.h: New file.
13417
13418 * s/sol2-5.h (UNEXEC): Definition deleted.
13419
134202002-09-08 Kim F. Storm <storm@cua.dk>
13421
13422 * macros.c (executing_macro_index): Change type to EMACS_INT.
13423 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
13424
13425 * macros.h (executing_macro_index): Change type to EMACS_INT.
13426
134272002-09-06 Richard M. Stallman <rms@gnu.org>
13428
13429 * casetab.c (set_case_table): Make canon table point to eqv table.
13430
134312002-09-06 Juanma Barranquero <lektu@terra.es>
13432
13433 * coding.c (syms_of_coding): Fix spacing.
13434
13435 * composite.c (Fcompose_region_internal)
13436 (Fcompose_string_internal): Likewise.
13437
13438 * data.c (Flsh): Likewise.
13439
13440 * fontset.c (Fset_fontset_font): Likewise.
13441
13442 * macfns.c (Fx_server_max_request_size): Likewise.
13443
13444 * w16select.c (syms_of_win16select): Likewise.
13445
13446 * w32select.c (syms_of_w32select): Likewise.
13447
13448 * xselect.c (syms_of_xselect): Likewise.
13449
134502002-09-05 Richard M. Stallman <rms@gnu.org>
13451
13452 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
13453 call EXTEND_RANGE_TABLE and return a proper value.
13454 (set_image_of_range): Don't call set_image_of_range_1
13455 if no TRANSLATE or if range includes all of Latin-1.
13456 Only call it for the Latin-1 part of the range.
13457 For other cases, make two separate ranges,
13458 one for the original specified characters and one for
13459 their case-conversions.
13460
134612002-09-04 Richard M. Stallman <rms@gnu.org>
13462
13463 * s/sol2-5.h (UNEXEC): Use unexsol.o.
13464
13465 * window.c (displayed_window_lines): Correct for one-off bug
13466 in HEIGHT on non-window displays.
13467
13468 * regex.c (set_image_of_range_1): New function.
13469 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
13470 Return a value to indicate running out of memory.
13471 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
13472 (extend_range_table_work_area): New subroutine.
13473 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
13474 Different calling conventions, and used from set_image_of_range{,_1}.
13475 (IMMEDIATE_QUIT_CHECK): Definitions moved.
13476
134772002-09-04 Juanma Barranquero <lektu@terra.es>
13478
13479 * makefile.w32-in: All dependencies updated.
13480
134812002-09-01 Richard M. Stallman <rms@gnu.org>
13482
13483 * unexsol.c: New file.
13484
13485 * xfns.c (Qbox): Declare external, don't define.
13486
13487 * xdisp.c (redisplay_window) <force-start case>:
13488 If point is on semi-visible last line, reposition
13489 it at previous line.
13490
13491 * alloc.c (display_malloc_warning): Use display-warning.
13492 (malloc_warning_1): Function deleted.
13493
13494 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
13495
13496 * lread.c (read1): Handle #! by skipping the line.
13497
134982002-08-31 Richard M. Stallman <rms@gnu.org>
13499
13500 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
13501 Don't include LDFLAGS.
13502 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
13503
135042002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
13505
13506 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
13507 member of x_display_info unless we compile for some window system.
13508
135092002-08-31 Kim F. Storm <storm@cua.dk>
13510
13511 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
13512 (get_window_cursor_type): Don't use them.
13513 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
13514
135152002-08-30 Kenichi Handa <handa@etl.go.jp>
13516
13517 * xdisp.c (get_next_display_element): Fix previous change.
13518
135192002-08-30 Andrew Choi <akochoi@shaw.ca>
13520
13521 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
13522 (expose_window): Use it to fix the display of overlapping
13523 rows (merge code from xterm.c).
13524
13525 * macfns.c (Qbox): Add extern declaration.
13526
135272002-08-30 Juanma Barranquero <lektu@terra.es>
13528
13529 * w32fns.c (Qbox): Make extern.
13530 (syms_of_w32fns): Remove initialization of Qbox.
13531
135322002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
13533
13534 * xfns.c (Fx_open_connection): Fix error message.
13535
135362002-08-30 Kim F. Storm <storm@cua.dk>
13537
13538 The following changes consolidates the handling of the cursor
13539 type in xdisp.c, moving duplicate code and functionality from
13540 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
13541
13542 * frame.h (enum text_cursor_kinds): Consolidated here.
13543 Added DEFAULT_CURSOR value.
13544 (struct frame) <desired_cursor, cursor_width>
13545 <blink_off_cursor, blink_off_cursor_width>: New fields.
13546 Consolidated from output_x, output_w32 and output_mac structs.
13547 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13548 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
13549
13550 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
13551 Variables consolidated here.
13552 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
13553 (Vcursor_in_non_selected_windows): Renamed from
13554 cursor_in_non_selected_windows and changed to Lisp_Object.
13555 (syms_of_xdisp): Define and staticpro new and moved variables.
13556 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
13557 consolidated here. Recognize Qhollow setting.
13558 (set_frame_cursor_types): New function to set frame cursor types
13559 based on the frame parameters.
13560 (get_window_cursor_type): New function to calculate new cursor
13561 type and width for the specified window. Based on duplicated
13562 code consolidated here.
13563 Enhancements: cursor-in-non-selected-windows may be a cursor type,
13564 check buffer-local alternate-cursor-type and blink-cursor-alist
13565 before using built-in blink off methods.
13566
13567 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
13568
13569 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
13570 (get_specified_cursor_type, get_window_cursor_type)
13571 (set_frame_cursor_types): Added prototypes.
13572
13573 * macfns.c (x_specified_cursor_type): Removed.
13574 (x_set_cursor_type): Use set_frame_cursor_types.
13575 (Qbar, Qbox): Removed.
13576 (syms_of_macfns): Don't intern or staticpro them.
13577
13578 * macterm.c (x_specified_cursor_type): Remove prototype.
13579 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13580 (x_display_and_set_cursor): Use get_window_cursor_type.
13581 Remove unused local variables cursor_non_selected, active_cursor.
13582 Redraw cursor if hbar cursor width changes.
13583 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
13584
13585 * macterm.h (enum text_cursor_kinds): Removed.
13586 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
13587 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13588 (FRAME_DESIRED_CURSOR): Macro removed.
13589
13590 * w32fns.c (Vblink_cursor_alist): Removed.
13591 (Qbar, Qhbar, Qbox, Qhollow): Removed.
13592 (syms_of_w32fns): Don't intern, staticpro, or define them.
13593 (x_specified_cursor_type): Removed.
13594 (x_set_cursor_type): Use set_frame_cursor_types.
13595
13596 * w32term.c (x_specified_cursor_type): Remove prototype.
13597 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13598 (x_display_and_set_cursor): Use get_window_cursor_type.
13599 Remove unused local variables cursor_off_state.
13600 Redraw cursor if hbar cursor width changes.
13601 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
13602
13603 * w32term.h (enum text_cursor_kinds): Removed.
13604 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
13605 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13606 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13607 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
13608 (struct w32_display_info) <x_highlight_frame>: Renamed member from
13609 w32_highlight_frame.
13610
13611 * xfns.c (Vblink_cursor_alist): Removed.
13612 (Qbar, Qhbar, Qbox, Qhollow): Removed.
13613 (syms_of_xfns): Don't intern, staticpro, or define them.
13614 (x_specified_cursor_type): Removed.
13615 (x_set_cursor_type): Use set_frame_cursor_types.
13616
13617 * xterm.c (x_specified_cursor_type): Remove prototype.
13618 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
13619 (x_display_and_set_cursor): Use get_window_cursor_type.
13620 Remove unused local variables cursor_off_state.
13621 Redraw cursor if hbar cursor width changes.
13622
13623 * xterm.h (enum text_cursor_kinds): Removed.
13624 (struct output_x) <current_cursor, desired_cursor, cursor_width>
13625 <blink_off_cursor, blink_off_cursor_width>: Members removed.
13626 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
13627 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
13628 (x_specified_cursor_type): Remove prototype.
13629
136302002-08-28 Richard M. Stallman <rms@gnu.org>
13631
13632 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
13633 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
13634 (Vblink_cursor_alist): New variable.
13635 (syms_of_w32fns): Initialize and defvar it.
13636 (x_specified_cursor_type): Recognize Qbox for filled box.
13637 Exceptions are hollow boxes.
13638 (Qbox, Qhollow): New variables.
13639 (syms_of_w32fns): Initialize and staticpro them.
13640
13641 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13642 New macros.
13643 (struct w32_output): New fields blink_off_cursor,
13644 blink_off_cursor_width.
13645 (FRAME_CURSOR_WIDTH): New macro.
13646
13647 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13648 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13649
13650 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
13651 for bar cursor.
13652
13653 * w32term.c (expose_overlaps): New function.
13654 (expose_window): Use it to fix the display of overlapping rows.
13655
136562002-08-28 Simon Josefsson <jas@extundo.com>
13657
13658 * xfns.c (Fx_open_connection): Improve help when X connection
13659 fails, xhost is insecure and xauth is better.
13660
136612002-08-28 Juanma Barranquero <lektu@terra.es>
13662
13663 * makefile.w32-in: Add missing dependencies on w32term.h and
13664 composite.h.
13665
13666 * emacs.c (USAGE1): Add missing newline.
13667
136682002-08-27 Andrew Choi <akochoi@shaw.ca>
13669
13670 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
13671
136722002-08-27 Richard M. Stallman <rms@gnu.org>
13673
13674 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
13675 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
13676 (Vblink_cursor_alist): New variable.
13677 (syms_of_xfns): Initialize and defvar it.
13678 (x_specified_cursor_type): Recognize Qbox for filled box.
13679 Exceptions are hollow boxes.
13680 (Qbox, Qhollow): New variables.
13681 (syms_of_xfns): Initialize and staticpro them.
13682
13683 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
13684 New macros.
13685 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
13686
13687 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
13688 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
13689
13690 * emacs.c (main): Handle --script.
13691 (USAGE1): Mention --script.
13692 (standard_args): Define sort order for --script.
13693
136942002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
13695
13696 * xdisp.c (redisplay_updating_p): Variable removed.
13697 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
13698 New variables.
13699 (init_iterator): Don't free realized faces if
13700 inhibit_free_realized_faces is set.
13701 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
13702 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
13703 initialize Qinhibit_free_realized_faces.
13704
13705 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
13706 when iterator is adding glyphs to a glyph matrix.
13707
137082002-08-27 Kenichi Handa <handa@etl.go.jp>
13709
13710 * xdisp.c (get_next_display_element): In unibyte case, don't use
13711 octal form for such eight-bit characters that can be converted to
13712 multibyte char.
13713
137142002-08-26 Kim F. Storm <storm@cua.dk>
13715
b6189c3b
KS
13716 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
13717 foreground and background colors. From Joe Buehler.
048addec
JD
13718
137192002-08-26 Miles Bader <miles@gnu.org>
13720
13721 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
13722
137232002-08-25 Andrew Choi <akochoi@shaw.ca>
13724
13725 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
13726 defined instead of MAC_OSX.
13727
13728 * s/darwin.h (select): Define select to sys_select only if
13729 HAVE_CARBON is defined.
13730 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
13731 (DONT_REOPEN_PTY): #def it.
13732
13733 * macterm.c (XTread_socket): Remove code to call
13734 SendEventToEventTarget for keys with command modifiers when
13735 mac_command_key_is_meta is nil.
13736
137372002-08-24 Andreas Schwab <schwab@suse.de>
13738
13739 * eval.c (Fdefvar): Fix last change.
13740
137412002-08-23 Richard M. Stallman <rms@gnu.org>
13742
13743 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
13744 Record variables in load history as (defvar . VAR).
13745 (Fdefvar): Don't record in load history if no initial value.
13746 (Qdefvar): New variable.
13747 (syms_of_eval): Init and staticpro it.
13748
13749 * lread.c (syms_of_lread): Doc fix.
13750 (build_load_history): Use Fmember to see if a definition
13751 is already in the Vload_history element.
13752
13753 * process.c (Fstart_process): Remove /: from program name.
13754
13755 * emacs.c (decode_env_path): Don't add /: if file name handler
13756 has a `safe-magic' property.
13757
13758 * callproc.c (Fcall_process): Remove /: from program name.
13759
137602002-08-23 Stefan Monnier <monnier@cs.yale.edu>
13761
13762 * regex.c (PATFETCH): Remove the translating fetch.
13763 (PATFETCH_RAW): Rename to PATFETCH.
13764 (set_image_of_range): New fun.
13765 (SET_RANGE_TABLE_WORK_AREA): Use it.
13766 (regex_compile): Don't translate the pattern chars so eagerly.
13767 Only do it when inserting an `exactn' bytecode or when handling
13768 a char-range.
13769 (mutually_exclusive_p): Avoid empty statement.
13770
137712002-08-22 Kim F. Storm <storm@cua.dk>
13772
13773 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
13774 end up on a partially visible line; this reverts a specific part
13775 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
13776 display error which has been reported several times now.
13777 However it introduces the problem that changes was supposed to fix.
13778 See my comments in the source if you want to debug this further.
13779
137802002-08-20 Kenichi Handa <handa@etl.go.jp>
13781
13782 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
13783
137842002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
13785
13786 * msdos.c (croak): Add `void' to definition.
13787
c1380aa6 13788 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
13789 Don't define them, they are defined in msdos.c.
13790
13791 * mem-limits.h [MSDOS]: Declare etext.
13792
13793 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
13794 `const' since CORRECT_DIR_SEPS modifies its target.
13795
137962002-08-19 Kim F. Storm <storm@cua.dk>
13797
2fb0ce67 13798 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
13799 KEEP-RECORD to avoid clearing lossage when we just want to clear
13800 the current key sequence (kmacro needs this).
13801
138022002-08-19 Kenichi Handa <handa@localhost>
13803
13804 * composite.c (run_composition_function): Call FUNC if it is fboundp.
13805
13806 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
13807 cons, return Qnil.
13808
138092002-08-17 Richard M. Stallman <rms@gnu.org>
13810
13811 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
13812
13813 * sysdep.c [!VMS]: Include sys/files.h.
13814
13815 * editfns.c (save_restriction_restore): Defend from unchained marker.
13816
13817 * buffer.c (overlays_at): Handle extending vec uniformly.
13818 (overlays_in): Handle extending vec from length 0 as in overlays_at.
13819
138202002-08-15 Andrew Choi <akochoi@shaw.ca>
13821
13822 * mac.c (init_mac_osx_environment): New function.
13823
13824 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
13825
138262002-08-14 Kim F. Storm <storm@cua.dk>
13827
13828 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
13829 executing macro before appending to it (when used from Lisp).
13830 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
13831 which is called prior to each iteration of macro (for kmacro.el).
13832 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
13833
13834 * lisp.h (Fexecute_kbd_macro): Update prototype.
13835
13836 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
13837
138382002-08-14 Kenichi Handa <handa@etl.go.jp>
13839
13840 * xselect.c (QUTF8_STRING): New variable.
13841 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
13842 (x_atom_to_symbol): Likewise.
13843 (x_get_local_selection): New argument local_request. If it is
13844 nonzero, call handler_fn with the second arg nil.
13845 (x_handle_selection_request): Call x_get_local_selection with
13846 local_request 0.
13847 (lisp_data_to_selection_data): Don't encode the string here.
13848 (Fx_get_selection_internal): Call x_get_local_selection with
13849 local_request 1.
13850 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
13851
13852 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
13853
13854 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
13855
138562002-08-13 Richard M. Stallman <rms@gnu.org>
13857
13858 * minibuf.c (Fminibufferp): New function.
13859 (syms_of_minibuf): Defsubr it.
13860 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
13861
138622002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
13863
13864 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
13865
138662002-08-12 Richard M. Stallman <rms@gnu.org>
13867
13868 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
13869 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
13870 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
13871 already.
13872
13873 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
13874
138752002-08-11 Andrew Choi <akochoi@shaw.ca>
13876
13877 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
13878 (Vmac_pass_command_to_system): New variable.
13879 (Vmac_pass_control_to_system): New variable.
13880 (do_mouse_moved): Check wp with is_emacs_window.
13881 (XTread_socket): Check window_ptr with is_emacs_window.
13882 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
13883 events back to Mac Toolbox for processing, depending on values of
13884 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
13885 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
13886 Vmac_pass_control_to_system.
13887
138882002-08-10 Kenichi Handa <handa@etl.go.jp>
13889
13890 * coding.c (unencodable_char_position): New function.
13891 (Funencodable_char_position): New function.
13892 (syms_of_coding): Defsubr Funencodable_char_position.
13893
138942002-08-10 Andrew Choi <akochoi@shaw.ca>
13895
13896 * mac.c (sys_select) [MAC_OSX]: New function.
13897
13898 * macterm.c (MakeMeTheFrontProcess): New function.
13899 (mac_initialize): Call MakeMeTheFrontProcess.
13900
13901 * s/darwin.h: Define select to sys_select.
13902
139032002-08-09 Richard M. Stallman <rms@gnu.org>
13904
13905 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
13906
139072002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
13908
13909 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
13910 end of the buffer.
13911
139122002-08-08 Ken Raeburn <raeburn@mit.edu>
13913
13914 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
13915
13916 * puresize.h (BASE_PURESIZE): Increase to 910000.
13917
139182002-08-08 Kenichi Handa <handa@etl.go.jp>
13919
13920 * coding.c (Ffind_operation_coding_system): For write-region, if
13921 VISIT is a filename, make it the target.
13922
139232002-08-07 Richard M. Stallman <rms@gnu.org>
13924
13925 * alloc.c (mark_object): Detect long lists for debugging.
13926 (mark_object_loop_halt): New variable.
13927
13928 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
13929
13930 * data.c (Fmake_variable_frame_local): Doc fix.
13931
139322002-08-01 David Ponce <david@dponce.com>
13933
13934 * w32menu.c (local_heap, local_alloc, local_free): New macros.
13935 (malloc_widget_value, free_widget_value)
13936 (w32_free_submenu_strings): Use them.
13937
13938 (push_submenu_start, push_submenu_end, push_left_right_boundary)
13939 (push_menu_pane, push_menu_item, single_keymap_panes)
13940 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
13941 (single_submenu, set_frame_menubar)
13942 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
13943
13944 (Fx_popup_menu): Don't show pop up menu until preceding one is
13945 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
13946
13947 * w32menu.c: Changes adapted from xmenu.c
13948 (set_frame_menubar): First parse all submenus,
13949 then make widget_value trees from them.
13950 Don't allocate any widget_value objects
13951 until we are done with the parsing.
13952 (parse_single_submenu): New function.
13953 (digest_single_submenu): New function.
13954 (single_submenu): Function deleted, replaced by those two.
13955
139562002-08-04 Andrew Choi <akochoi@shaw.ca>
13957
13958 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
13959 returns a valid window pointer before proceeding for keyDown and
13960 autoKey events.
13961
139622002-08-03 Andrew Choi <akochoi@shaw.ca>
13963
13964 * macterm.c (USE_CARBON_EVENTS): New macro.
13965 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
13966 (x_iconify_frame): Call CollapseWindow.
13967 (Vmac_reverse_ctrl_meta): New variable.
13968 (Vmac_wheel_button_is_mouse_2): New variable.
13969 (init_mac_drag_n_drop): New function.
13970 (mac_do_receive_drag): New function.
13971 (mac_handle_service_event): New function.
13972 (init_service_handler): New function.
13973 (mac_to_emacs_modifiers): New function.
13974 (mac_event_to_emacs_modifiers): New function.
13975 (mac_get_mouse_btn): New function.
13976 (mac_convert_event_ref): New function.
13977 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
13978 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
13979 mac_get_mouse_btn.
13980 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
13981
13982 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
13983 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
13984 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
13985 TOOL_BAR_EVENT for MAC_OS as well.
13986 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
13987 as for WINDOWS_NT.
13988 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
13989
13990 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
13991
139922002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
13993
13994 * xdisp.c (forward_to_next_line_start): Fix a condition that
13995 lead to a newline being skipped.
13996
139972002-08-02 Andrew Choi <akochoi@shaw.ca>
13998
13999 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
14000
140012002-08-01 Richard M. Stallman <rms@gnu.org>
14002
14003 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
14004
140052002-07-31 Andrew Choi <akochoi@shaw.ca>
14006
14007 * macfns.c: #undef init_process before #define-ing it.
14008
14009 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
14010 HAVE_CARBON is defined.
14011
140122002-07-31 Richard M. Stallman <rms@gnu.org>
14013
14014 * xmenu.c (set_frame_menubar): First parse all submenus,
14015 then make widget_value trees from them.
14016 Don't allocate any widget_value objects
14017 until we are done with the parsing.
14018 (parse_single_submenu): New function.
14019 (digest_single_submenu): New function.
14020 (single_submenu): Function deleted, replaced by those two.
14021
140222002-07-30 Juanma Barranquero <lektu@terra.es>
14023
14024 * w32proc.c (syms_of_ntproc): Fix docstring of
14025 `w32-get-true-file-attributes'.
14026
140272002-07-28 Richard M. Stallman <rms@gnu.org>
14028
14029 * s/hpux8.h (HPUX8): Define this before including hpux.h.
14030 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
14031
14032 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
14033
14034 * keyboard.c (make_lispy_event):
14035 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
14036 Explicitly clear up_modifier in event->modifiers.
14037
140382002-07-27 Richard M. Stallman <rms@gnu.org>
14039
14040 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
14041
14042 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
14043 for bar cursor.
14044
140452002-07-26 Kenichi Handa <handa@etl.go.jp>
14046
14047 * coding.c (detect_coding_iso2022): While checking a byte sequence
14048 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
14049 it in the normal loop.
14050
140512002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
14052
14053 * xterm.c (expose_overlaps): New function.
14054 (expose_window): Use it to fix the display of overlapping rows.
14055
14056 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
14057
140582002-07-23 Ken Raeburn <raeburn@gnu.org>
14059
14060 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
14061 since it only depends on XUINT.
14062
14063 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
14064 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
14065 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
14066 Macros deleted.
3947677c 14067
77d1daf2
AS
14068 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
14069 its value over other approaches.
14070 * sysdep.c (start_of_data): Don't define the function if a macro
14071 form has been defined.
8a8e19a3 14072
048addec
JD
140732002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
14074
14075 * xdisp.c (redisplay_updating_p): New variable.
14076 (init_iterator): Don't free realized faces when
14077 redisplay_updating_p is set.
14078 (redisplay_internal): Set redisplay_updating_p while updating
14079 the display.
14080
140812002-07-23 Richard M. Stallman <rms@gnu.org>
14082
14083 * editfns.c (Fmessage): Treat "" like nil.
14084
140852002-07-23 Kenichi Handa <handa@etl.go.jp>
14086
14087 * xdisp.c (face_before_or_after_it_pos):
14088 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14089
140902002-07-22 Juanma Barranquero <lektu@terra.es>
14091
14092 * callproc.c (init_callproc) [DOS_NT]:
14093 Initialize Vshared_game_score_directory to nil.
14094 (syms_of_callproc) [DOS_NT]: Likewise.
14095
140962002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
14097
14098 * xdisp.c (display_line): Replace an abort with xassert.
14099
141002002-07-21 Richard M. Stallman <rms@gnu.org>
14101
14102 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
14103 and END_UNCHANGED when setting buffer_unchanged_p.
14104 Use current_matrix_up_to_date_p to decide whether to use
14105 try_cursor_movement.
14106
14107 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
14108
14109 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
14110
14111 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
14112 Set to nil if dir does not exist.
14113 (syms_of_callproc): Init unconditionally and simply.
14114
14115 * buffer.c (Fbuffer_list): Doc fix.
14116
141172002-07-21 Ken Raeburn <raeburn@gnu.org>
14118
14119 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
14120
14121 * buffer.c (mmap_realloc): When shrinking, make sure number of
14122 pages to unmap is rounded towards zero.
14123
14124 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
14125 (XSETINT): Deleted.
14126
14127 * m/att3b.h (XINT): Don't define.
14128 (VALBITS, VALMASK, XTYPE): Deleted.
14129 (DATA_SEG_BITS): Define.
14130 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
14131 ARRAY_MARK_FLAG): Deleted.
14132 (DATA_SEG_BITS): Define.
14133 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
14134 (DATA_SEG_BITS): Define.
14135
141362002-07-20 Richard M. Stallman <rms@gnu.org>
14137
14138 * print.c (print_error_message): New args CONTEXT and CALLER.
14139 Calls changed.
14140
14141 * lisp.h (print_error_message): Declare new args.
14142
14143 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
14144 and CONTEXT to print_error_message, don't print them here.
14145 For a Quit, don't use Vsignaling_function.
14146 Call message_log_maybe_newline.
14147
14148 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
14149
141502002-07-20 Kim F. Storm <storm@cua.dk>
14151
14152 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
14153
141542002-07-19 Ken Raeburn <raeburn@gnu.org>
14155
14156 * bytecode.c (struct byte_stack): Pointers into byte string now
14157 point to const.
14158 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
14159 const.
14160 * charset.h (BCOPY_SHORT): Source pointer now points to const.
14161 * coding.c (encode_eol, detect_coding, detect_eol):
14162 (decode_coding, encode_coding, detect_coding_system):
14163 Source strings now treated as const.
14164 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
14165 modify Lisp string contents.
14166 * coding.h (decode_coding, encode_coding, detect_coding,
14167 detect_eol): Declarations updated.
14168 * composite.c (compose_chars_in_text): Treat Lisp string contents
14169 as const.
14170 * dispnew.c (safe_bcopy): Source pointer now points to const.
14171 * lisp.h (STRING_COPYIN): New macro.
14172 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
14173 (internal_with_output_to_temp_buffer): Declarations updated.
14174 * print.c (temp_output_buffer_setup):
14175 (internal_with_output_to_temp_buffer): Buffer name argument is now
14176 pointer to const.
14177 * sound.c (struct sound_device): Function pointer field "write"
14178 buffer argument now points to const.
14179 (vox_write): Buffer argument points to const.
14180 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
14181 contents as const.
14182 * sysdep.c (emacs_write): Buffer pointer now const.
14183 * term.c (encode_terminal_code): Buffer pointer now const.
14184 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
14185 (x_face_list_fonts, x_update_menu_appearance):
14186 (hash_string_case_insensitive): Treat Lisp string contents as const.
14187
141882002-07-19 Juanma Barranquero <lektu@terra.es>
14189
048addec
JD
14190 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
14191
14192 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
14193 (Ffile_name_as_directory): Fix argument name in docstring.
14194 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
14195
141962002-07-18 Richard M. Stallman <rms@gnu.org>
14197
14198 * data.c (Fdefalias): Doc fix.
14199
142002002-07-17 Dave Love <fx@gnu.org>
14201
14202 * intervals.h (text_property_stickiness): Use P_.
14203
14204 * ccl.c: Remove `emacs' conditionals.
14205 (ccl_backtrace_table): Fix size spec.
14206 (ccl_driver): Fix type errors.
14207
142082002-07-16 Ken Raeburn <raeburn@gnu.org>
14209
14210 * alloc.c (xstrdup, make_string, make_unibyte_string)
14211 (make_multibyte_string, build_string): String pointer args now
14212 point to const.
14213 * charset.c (find_charset_in_text, c_string_width):
14214 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
14215 * fileio.c (report_file_error):
14216 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
14217 (count_combining_before, count_combining_after, insert_1_both):
14218 (insert, insert_and_inherit, insert_string):
14219 (insert_before_markers, insert_before_markers_and_inherit):
14220 * lread.c (intern, oblookup, hash_string):
14221 * minibuf.c (temp_echo_area_glyphs):
14222 * search.c (fast_c_string_match_ignore_case):
14223 * sysdep.c (emacs_open, set_file_times):
14224 * xfaces.c (xstricmp):
14225 * xdisp.c (store_frame_title, string_char_and_length):
14226 (message_dolog, message2, message2_nolog, set_message): Likewise.
14227 (set_message_1): Cast message string argument to const pointer.
14228 * editfns.c (general_insert_function): Insertion function now
14229 takes pointer to const for input data.
14230 * charset.h (find_charset_in_text, c_string_width):
14231 (parse_str_as_multibyte): Declarations updated.
14232 * dispextern.h (xstricmp): Declaration updated.
14233 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
14234 (count_size_as_multibyte, count_combining_before):
14235 (count_combining_after, insert_1, insert_1_both, message_dolog):
14236 (insert, insert_and_inherit, insert_before_markers)
14237 (insert_before_markers_and_inherit, set_message, message2):
14238 (message2_dolog, build_string, make_string, make_unibyte_string):
14239 (make_multibyte_string, intern, oblookup, report_file_error):
14240 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
14241 (emacs_open, xstrdup): Declarations updated.
14242 * systime.h (set_file_times): Declaration updated.
14243
14244 * charset.c (find_charset_in_text, lisp_string_width): Use const
14245 for pointer to lisp string data.
14246 * charset.h (FETCH_STRING_CHAR_ADVANCE):
14247 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
14248 * coding.c (Ffind_coding_systems_region_interval):
14249 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
14250 (Fmake_directory_internal, Fdelete_directory):
14251 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
14252 * fontset.c (font_family_registry, fs_query_fontset):
14253 (list_fontsets):
14254 * frame.c (Fframe_parameter):
14255 * keyboard.c (cmd_error_internal):
14256 * keymap.c (Fdescribe_buffer_bindings):
14257 * lread.c (complete_filename_p, openp):
14258 * minibuf.c (Fminibuffer_complete_word):
14259 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
14260 (face_before_or_after_it_pos, next_element_from_string):
14261 (get_overlay_arrow_glyph_row, display_mode_element):
14262 (decode_mode_spec_coding):
14263 * xterm.c (same_x_server): Likewise.
14264
14265 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
14266 settings of non-existent fields.
14267
14268 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
14269 copy a lisp value.
14270
14271 * lread.c (Fintern_soft): Use string macros instead of
14272 Lisp_String fields.
14273 * keyboard.c (echo_char, parse_modifiers_uncached):
14274 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
14275 * textprop.c (validate_interval_range, interval_of): Likewise.
14276
14277 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
14278
14279 * charset.h (FETCH_STRING_CHAR_ADVANCE)
14280 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
14281 XSTRING()->size_byte.
14282
14283 * lisp.h (SDATA, SREF): Produce rvalue.
14284 (SSET): New macro.
14285 * alloc.c (make_event_array): Use SSET for storing into a string.
14286 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
14287 a string.
14288 * casefiddle.c (casify_object): Use SSET.
14289 * charset.h (FETCH_STRING_CHAR_ADVANCE)
14290 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
14291 address of string contents.
14292 * data.c (Faref): Use SDATA.
14293 (Faset): Use SDATA, SSET.
14294 * dired.c (directory_files_internal): Use SSET.
14295 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
14296 (Fread_file_name): Use SREF, SSET.
14297 * fns.c (concat): Use SSET.
14298 (concat, Fdelete): Use SDATA.
14299 * insdel.c (insert_from_string_1): Use SDATA.
14300 * keyboard.c (Fevent_convert_list): Use SREF.
14301 * lread.c (Fload): Use SDATA, SSET.
14302 * macfns.c (validate_x_resource_name): Use SSET.
14303 * process.c (status_message): Use SSET.
14304 * search.c (wordify): Use SDATA.
14305 (Freplace_match): Use SREF.
14306 * w32fns.c (validate_x_resource_name): Use SSET.
14307 * xfns.c (validate_x_resource_name): Use SSET.
14308 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
14309
143102002-07-16 Richard M. Stallman <rms@gnu.org>
14311
14312 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
14313
14314 * xdisp.c (reconsider_clip_changes):
14315 Don't test prevent_redisplay_optimizations_p.
14316 (redisplay_internal): Test prevent_redisplay_optimizations_p
14317 along with clip_changed in some cases.
14318 (try_window_id): Likewise.
14319 (redisplay_window): New local var buffer_unchanged_p.
14320
14321 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
14322
14323 * process.c (create_process): Test USG_SUBTTY_WORKS.
14324 (process_send_signal): Clean up handling of GID.
14325 Detect errors in ioctls meant to set GID.
14326
14327 * window.c (temp_output_buffer_show):
14328 Don't set prevent_redisplay_optimizations_p.
14329
143302002-07-15 Juanma Barranquero <lektu@terra.es>
14331
14332 * eval.c (Fdefvaralias): Add docstring argument.
14333
143342002-07-15 Ken Raeburn <raeburn@gnu.org>
14335
14336 * lisp.h (STRING_INTERVALS): Produce rvalue.
14337 (STRING_SET_INTERVALS): New macro.
14338 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
14339 * fns.c (Fstring_as_multibyte): Likewise.
14340 * intervals.c (balance_possible_root_interval, delete_interval)
14341 (create_root_interval, copy_intervals_to_string): Likewise.
14342 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
14343 instead of 0.
14344
143452002-07-14 Ken Raeburn <raeburn@gnu.org>
14346
14347 * lisp.h (STRING_SET_CHARS): New macro.
14348 (SCHARS, SBYTES): Produce rvalues.
14349 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
14350 * fns.c (concat): Likewise.
14351 * lread.c (read_vector): Likewise.
14352
3419757d 14353 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
048addec 14354 (STRING_SET_UNIBYTE): New macro.
3419757d 14355 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
048addec
JD
14356 length of -1) changed to use STRING_SET_UNIBYTE.
14357 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14358 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
14359 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
14360 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
14361 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
14362 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
14363 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
14364 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
14365 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14366 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
14367 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
14368 STRING_BYTES or indirection changed to SCHARS, SBYTES,
14369 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
14370 unchanged for now.
14371
143722002-07-13 Kim F. Storm <storm@cua.dk>
14373
14374 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
14375
143762002-07-12 Richard M. Stallman <rms@gnu.org>
14377
14378 * fileio.c (Fwrite_region): Doc fix.
14379
14380 * print.c (print_error_message): Don't handle Vsignaling_function here.
14381
14382 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
14383 (command_loop_1): Avoid certain actions after memory-full error.
14384
14385 * eval.c (Fsignal): Don't call cancel_hourglass.
14386 For a memory-full error, don't call Vsignal_hook_function
14387 and don't set Vsignaling_function.
14388
14389 * process.c (process_send_signal): Add abort call.
14390
143912002-07-11 Markus Rost <rost@math.ohio-state.edu>
14392
14393 * keymap.c (Fkey_binding): Fix typo.
14394
143952002-07-11 Richard M. Stallman <rms@gnu.org>
14396
14397 * alloc.c (Vmemory_full): New variable.
3419757d 14398 (Vmemory_signal_data): Rename from memory_signal_data.
048addec
JD
14399 Uses changed.
14400 (syms_of_alloc): Defvar them.
14401 (memory_full, buffer_memory_full): Set Vmemory_full.
14402
14403 * lisp.h (Vmemory_full): Add declaration.
14404 (current_column, indented_beyond_p): Change declaration.
14405
14406 * indent.c (last_known_column): Declare as double, not float.
14407 (current_column, current_column_1, string_display_width)
14408 (position_indentation): Return `double'.
14409 (indented_beyond_p): Arg `column' is `double'. Callers changed.
14410
14411 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
14412 (back_to_previous_visible_line_start)
14413 (reseat_at_next_visible_line_start, next_element_from_buffer):
14414 Use `double', not `float', when calling indented_beyond_p.
14415
3419757d 14416 * s/hpux11.h (BROKEN_SA_RESTART): Define.
048addec
JD
14417
14418 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
14419
144202002-07-11 Juanma Barranquero <lektu@terra.es>
14421
14422 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
14423 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
14424 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
14425 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
14426 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
14427 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
14428
144292002-07-10 Juanma Barranquero <lektu@terra.es>
14430
d814862a
JB
14431 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
14432 All callers changed.
048addec
JD
14433
144342002-07-09 Stefan Monnier <monnier@cs.yale.edu>
14435
14436 * data.c (Fdefalias): Add an optional `docstring' argument.
14437 (set_internal, Fsetq_default): Use XCAR/XCDR.
14438
14439 * composite.c (HASH_VALUE, HASH_KEY):
14440 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
14441
144422002-07-09 Kenichi Handa <handa@etl.go.jp>
14443
14444 * callproc.c (Fcall_process): Fix previous change.
14445
144462002-07-07 Stefan Monnier <monnier@cs.yale.edu>
14447
14448 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
14449 Add support for hash-tables.
14450 (Ftry_completion): Return t even if the string appears multiple times.
14451
14452 * fns.c (Fnconc): Use XCDR.
14453 (Fprovide): Use CONSP and XCDR.
14454 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
14455 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
14456 (Fmake_hash_table): Accept `:size nil'.
14457 (Fmakehash): Delete: moved to subr.el.
14458 (syms_of_fns): Don't defsubr makehash.
14459
14460 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
14461 (HASH_TABLE_SIZE): Move from fns.c.
14462
144632002-07-07 Richard M. Stallman <rms@gnu.org>
14464
14465 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
14466 Instead just return 0 when there is something to be done.
14467 (try_scrolling): If make_cursor_line_fully_visible returns 0,
14468 retry scrolling as if cursor were off the bottom.
14469 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
14470 return CURSOR_MOVEMENT_MUST_SCROLL.
14471 (redisplay_window): If make_cursor_line_fully_visible returns 0,
14472 go to try_to_scroll.
14473
14474 * buffer.c (Fbuffer_local_value): Store current value into its binding
14475 so we get the up-to-date value for the binding that is loaded.
14476
14477 * eval.c (Fdefmacro): Doc fix.
14478
144792002-07-05 Dave Love <fx@gnu.org>
14480
14481 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
14482 correctly.
14483
14484 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
14485 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
14486 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
14487 CCL_LookupCharConstTbl.
14488 (syms_of_ccl): Defvar translation-hash-table-vector.
14489
144902002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14491
14492 * xdisp.c: Remove unused variable `face'.
14493
144942002-07-04 Juanma Barranquero <lektu@terra.es>
14495
14496 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
14497 obsolescence information.
14498
144992002-07-03 Andrew Choi <akochoi@shaw.ca>
14500
14501 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
14502 pattern. Search cache first.
14503 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
14504 for Japanese font.
14505 (XLoadQueryFont): Use it.
14506
145072002-07-02 Richard M. Stallman <rms@gnu.org>
14508
14509 * keymap.c (Fdefine_key): Doc fix.
14510
14511 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
14512
145132002-07-02 Juanma Barranquero <lektu@terra.es>
14514
14515 * keymap.c (syms_of_keymap): Fix typo.
14516
145172002-07-01 Andrew Choi <akochoi@shaw.ca>
14518
14519 * s/darwin.h: Define POSIX_SIGNALS.
14520
14521 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
14522 and FSRefMakePath to convert FSSpec returned with Apple Event to
14523 Posix pathname.
14524 (mac_initialize) [TARGET_API_MAC_CARBON]:
14525 Call init_required_apple_events and disable the `Quit' menu item
14526 provided automatically by the Carbon Toolbox.
14527
145282002-07-01 Dave Love <fx@gnu.org>
14529
14530 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
14531 for K&R.
14532
14533 * xterm.c: Fix prototype for K&R.
14534
14535 * term.c (costs_set): Declare static, non-initialized for pcc.
14536
145372002-07-01 Richard M. Stallman <rms@gnu.org>
14538
14539 * keyboard.c (timer_last_idleness_start_time): New variable.
14540 (timer_start_idle): Set that.
14541 (read_key_sequence): Use that to reset timer_idleness_start_time
14542 to previous value.
14543
14544 * window.c (Frecenter): With arg, set optional_new_start.
14545
14546 * xdisp.c (redisplay_internal): Make optional_new_start really work.
14547
14548 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
14549 buffer for completion.
14550
145512002-06-29 Ken Raeburn <raeburn@gnu.org>
14552
14553 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
14554
145552002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14556
14557 * keyboard.c (readable_filtered_events): New function that filters
14558 FOCUS_IN_EVENT depending on parameter.
14559 (readable_events): Calls readable_filtered_events, not filtering
14560 FOCUS_IN_EVENT.
14561 (get_filtered_input_pending): New function, filtering parameter passed
14562 to readable_filtered_events.
14563 (get_input_pending): Calls get_filtered_input_pending, not filtering
14564 FOCUS_IN_EVENT.
14565 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
14566 FOCUS_IN_EVENT.
14567
14568 * xterm.h (struct x_output): Add focus_state.
14569
14570 * xterm.c (x_focus_changed): New function.
14571 (x_detect_focus_change): New function.
14572 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
14573 EnterNotify and LeaveNotify to track X focus changes.
14574
145752002-06-28 Andreas Schwab <schwab@suse.de>
14576
14577 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
14578
145792002-06-27 Kim F. Storm <storm@cua.dk>
14580
14581 * xdisp.c: (mode_line_string_list, mode_line_string_face)
14582 (mode_line_string_face_prop): New variables.
14583 (store_mode_line_string): New function.
14584 (display_mode_element): Use store_mode_line_string to
14585 add mode-line string elements to mode_line_string_list
14586 when mode_line_string_list is non-nil.
14587 (Fformat_mode_line): Now returns propertized string by
14588 default. New arg NO-PROPS to ignore properties.
14589 (decode_mode_spec): Only add two dashes for %- in propertized
14590 mode-line string.
14591 (syms_of_xdisp): Init and staticpro mode_line_string_list.
14592
145932002-06-27 Stefan Monnier <monnier@cs.yale.edu>
14594
14595 * minibuf.c (minibuffer_completion_contents): Add return type.
14596
145972002-06-27 Juanma Barranquero <lektu@terra.es>
14598
14599 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
14600
146012002-06-26 Juanma Barranquero <lektu@terra.es>
14602
14603 * fileio.c (read_file_name_cleanup): Add missing return.
14604
146052002-06-26 Richard M. Stallman <rms@gnu.org>
14606
14607 * window.c (Frecenter): Don't set force_start flag.
14608
14609 * minibuf.c (do_completion, Fminibuffer_complete_word)
14610 (Fminibuffer_completion_help): Complete just the text before point.
14611 (minibuffer_completion_contents): New function.
14612
14613 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
14614
14615 * frame.c (frames_bury_buffer): Function deleted.
14616
146172002-06-25 Miles Bader <miles@gnu.org>
14618
14619 * callint.c (Fcall_interactively): When checking to see if doprnt hit
14620 the end of callint_message, allow for a terminating '\0'.
14621
146222002-06-24 Juanma Barranquero <lektu@terra.es>
14623
14624 * w32select.c: Include composite.h
14625
14626 * w16select.c: Likewise.
14627
146282002-06-24 Kenichi Handa <handa@etl.go.jp>
14629
14630 * callproc.c (Fcall_process): If code detection is necessary,
14631 call detect_coding directly here.
14632
14633 * coding.c (detect_eol): Preserve coding->cmp_data.
14634
14635 * w16select.c (Fw16_get_clipboard_data):
14636 * w32fns.c (w32_to_x_font):
14637 * w32select.c (Fw32_get_clipboard_data):
14638 * xselect.c (selection_data_to_lisp_data):
14639 * xterm.c (XTread_socket): Disable composition handling.
14640
146412002-06-24 Stefan Monnier <monnier@cs.yale.edu>
14642
14643 * print.c (temp_output_buffer_setup): Kill all local variables.
14644
146452002-06-22 Stefan Monnier <monnier@cs.yale.edu>
14646
14647 * lread.c (Fread): Remove redundant and imprecise declaration.
14648
14649 * xfns.c (check_x_display_info): Use check_x_frame.
14650
14651 * .gdbinit (xprintsym): Use the new `xname' field.
14652 (xsymbol): Use it.
14653
146542002-06-22 Jason Rumney <jasonr@gnu.org>
14655
14656 * w32fns.c (file_dialog_callback): New function.
14657 (Fx_file_dialog): Allow selecting directories as well as files.
14658
146592002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14660
14661 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 14662 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
14663
146642002-06-17 Andrew Choi <akochoi@shaw.ca>
14665
14666 * macterm.c (mac_scroll_area): Set foreground and backcolor to
14667 black and white before scrolling. Restore frame background and
14668 foreground color after scrolling.
14669 (do_window_update): Call XClearWindow before calling expose_frame.
14670 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
14671 FRAME_FOREGROUND_PIXEL of frame.
14672
14673 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14674 test Mac command key as <ALT> key.
14675
146762002-06-17 Stefan Monnier <monnier@cs.yale.edu>
14677
14678 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
14679
14680 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
14681 Lookup keys in function-key-map immediately so that key-translation-map
14682 can be applied earlier.
14683 Remove function_key_possible and key_translation_possible, replaced
14684 by checking `keytran_start < t'.
14685
14686 * .gdbinit (xsymbol): Use the new `xname' field.
14687
146882002-06-17 Andrew Choi <akochoi@shaw.ca>
14689
14690 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
14691 test Mac command key as <ALT> key.
14692
14693 * mac.c (do_applescript): Call initialize_applescript if necessary
14694 when first called. Dispose of result_desc only when there is no error.
14695 (Fdo_applescript): Use %d format specifier instead of %ld.
14696
146972002-06-16 Andrew Choi <akochoi@shaw.ca>
14698
14699 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
14700 of FrontWindow for cases keyDown and autoKey.
14701
14702 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
14703 Vdefault_fontset to Monaco with mac-roman coding.
14704
14705 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
14706 init_process before and after inclusion of Carbon/Carbon.h, resp.
14707
14708 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
14709 cursor_gc.
14710 (add_font_name_table_entry): New function.
14711 (init_font_name_table): Use add_font_name_table_entry; add italic,
14712 bold, and bold-italic entries for truetype fonts.
14713
14714 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
14715 for Mac too.
14716 (try_font_list) [MAC_OS]: If no font matches given registry, try
14717 fonts with any registry matching face_family.
14718 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
14719
14720 * s/darwin.h: If autoconf detects the Ncurses library, define
14721 LIBS_TERMCAP to -lncurses to use it.
14722
147232002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
14724
14725 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
14726
147272002-06-15 Richard M. Stallman <rms@gnu.org>
14728
14729 * window.c (Fset_window_configuration): Explicitly preserve
14730 the point value that new_current_buffer had at the start.
14731
147322002-06-14 Juanma Barranquero <lektu@terra.es>
14733
14734 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
14735 Fix typos.
14736
147372002-06-14 Kim F. Storm <storm@cua.dk>
14738
14739 * insdel.c (insert_1_both, insert_from_string_1)
14740 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
14741 insert happened in the end_unchanged region. Otherwise, the
14742 redisplay may be confused and duplicate the last line in the
14743 buffer [seen after save-buffer when require-final-newline==t].
14744
147452002-06-13 Jason Rumney <jasonr@gnu.org>
14746
14747 * w32.c (init_environment): Remove EMACSLOCKDIR.
14748 (stat): Swap _S_IFDIR and _S_IFREG.
14749
147502002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14751
14752 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
14753 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
14754 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
14755 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
14756 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
14757 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
14758 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
14759 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
14760 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
14761 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
14762 SELECTION_REQUEST_EVENT, selection_clear_event to
14763 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
14764 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
14765 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
14766 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
14767 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
14768 no_event to NO_EVENT.
14769
147702002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14771
14772 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
14773
147742002-06-12 Stefan Monnier <monnier@cs.yale.edu>
14775
14776 * intervals.c (textget): Don't forget to `return'.
14777 (lookup_char_property): Use XCAR/XCDR.
14778
147792002-06-12 Juanma Barranquero <lektu@terra.es>
14780
14781 * xdisp.c (Fformat_mode_line): Fix typo.
14782
147832002-06-12 Kim F. Storm <storm@cua.dk>
14784
14785 * xdisp.c (Fformat_mode_line): New function.
14786 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
14787 (store_frame_title_char, store_frame_title): Use unconditionally.
14788 (init_xdisp): Defsubr Fformat_mode_line.
14789 Initialize frame_title_buf etc. unconditionally.
14790
147912002-06-11 Stefan Monnier <monnier@cs.yale.edu>
14792
14793 * keyboard.c (read_key_sequence):
14794 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
14795 things through those maps after downcasing events.
14796 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
14797 applies after function-key-map.
14798 Make sure that keytran can be done in the middle in the sequence.
14799 Be careful not to throw away events past the one we downcase.
14800
14801 * lread.c (read_integer): Remove unused var `tem'.
14802 (read1): Fix int/Lisp_Object mixup.
14803
14804 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
14805
148062002-06-11 Richard M. Stallman <rms@gnu.org>
14807
14808 * keyboard.c (readable_events): Ignore any number of
14809 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
14810
148112002-06-09 Miles Bader <miles@gnu.org>
14812
14813 * xfaces.c (Ftty_supports_face_attributes_p): New function.
14814 (parse_rgb_list, tty_lookup_color): New functions.
14815 (tty_defined_color): Use `tty_lookup_color' to do all the work.
14816 (color_distance, Fcolor_distance): New functions.
14817 (TTY_SAME_COLOR_THRESHOLD): New macro.
14818 (Qtty_color_standard_values): New variable.
14819 (syms_of_xfaces): Initialize new vars & functions.
14820
148212002-06-08 Colin Walters <walters@verbum.org>
14822
14823 * textprop.c (Vchar_property_alias_alist): New variable.
14824 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
14825
14826 * intervals.c (lookup_char_property): New function for looking up
14827 overlay and text properties, created from textget.
14828 (textget): Use it.
14829
14830 * intervals.h (lookup_char_property): Declare.
14831 (Vchar_property_alias_alist): Declare.
14832
14833 * buffer.c (Foverlay_get): Use lookup_char_property.
14834
148352002-06-07 Sam Steingold <sds@gnu.org>
14836
14837 * xselect.c (lisp_data_to_selection_data): Fix last change:
14838 *data_ret is not a Lisp string, while unibyte_string is.
14839
148402002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
14841
14842 * xselect.c (lisp_data_to_selection_data): Fix last change:
14843 set size_ret.
14844
148452002-06-07 Andreas Schwab <schwab@suse.de>
14846
14847 * m/amdx86-64.h: New file.
14848
148492002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
14850
14851 * fns.c (Fstring_make_unibyte): Doc fix.
14852
14853 * xselect.c (lisp_data_to_selection_data): If the requested type
14854 is STRING, call string_make_unibyte to encode the selected text
14855 as a string.
14856
14857 * window.c (Fset_window_hscroll): Doc fix.
14858
148592002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14860
14861 * fileio.c (choose_write_coding_system):
14862 Call select-safe-coding-system properly.
14863
148642002-06-03 Richard M. Stallman <rms@gnu.org>
14865
14866 * xdisp.c (message_with_string): Error if STRING is not a string.
14867
14868 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
14869
14870 * fileio.c (choose_write_coding_system): Pass FILE arg to
14871 Vselect_safe_coding_system_function.
14872
148732002-06-03 Ken Raeburn <raeburn@gnu.org>
14874
14875 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
14876
148772002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
14878
14879 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
14880 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
14881 * keymap.c (describe_command): Likewise.
14882 * minibuf.c (read_minibuf): Likewise.
14883
14884 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
14885 Cast `current_column' return value to int.
14886 (back_to_previous_visible_line_start)
14887 (reseat_at_next_visible_line_start, next_element_from_buffer):
14888 Cast `indented_beyond_p' 3rd arg to float.
14889
14890 * indent.c (last_known_column): Now a float.
14891 (current_column_1, position_indentation, current_column)
14892 (string_display_width): Return float.
14893 (Fcurrent_column): Cast `current_column' return value to int.
14894 (Fcurrent_indentation): Cast `position_indentation' retval to int.
14895 (indented_beyond_p): Third arg now a float.
14896 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
14897
14898 * lisp.h (current_column): Now returns float.
14899 (indented_beyond_p): 3rd arg now a float.
14900
149012002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
14902
14903 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
14904 is Qcompound_text_with_extensions.
14905
14906 * xselect.c (lisp_data_to_selection_data): Always set selection
14907 type as string if x_encode_text returns streingp non-NULL.
14908
14909 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
14910
149112002-05-30 Richard M. Stallman <rms@gnu.org>
14912
14913 * window.c (Fset_window_configuration): Correct the handling
14914 of point in current buffer, to work with multiple windows.
14915
149162002-05-29 Colin Walters <walters@verbum.org>
14917
14918 * lread.c (Fread_from_string): Don't depend on order of evaluation
14919 for C function parameters.
14920
149212002-05-28 Richard M. Stallman <rms@gnu.org>
14922
14923 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
14924 way for blinked-off state and for a nonselected window.
14925
14926 * window.c (window_scroll_pixel_based): Don't call Fbolp;
14927 instead, see if the new start pos is at beginning of line.
14928
14929 * fileio.c (Fwrite_region): If START is a string, don't
14930 make any annotations.
14931
14932 * eval.c (syms_of_eval): Doc fix.
14933
149342002-05-28 Colin Walters <walters@debian.org>
14935
14936 * emacs.c (USAGE1): Add --no-splash.
14937 (standard_args): Ditto.
14938
149392002-05-28 Colin Walters <walters@gnu.org>
14940
14941 * lread.c (readchar_count): New variable.
14942 (readchar): Increment it.
14943 (unreadchar): Decrement it.
14944 (read_multibyte): Decrement it.
14945 (Vread_with_symbol_positions): New variable.
14946 (Vread_symbol_positions_list): New variable.
14947 (read_internal_start): New function, created from Fread and
14948 Fread_from_string. Handle Vread_symbol_positions_list and
14949 Vread_with_symbol_positions.
14950 (readevalloop, Fread, Fread_from_string): Use it.
14951 (read1): Use readchar_count to add symbol positions to
14952 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
14953 (syms_of_lread): DEFVAR_LISP and initialize them.
14954
14955 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
14956 (substitute_object_recurse, substitute_object_in_subtree)
14957 (substitute_in_interval): Prototype.
14958 (read_multibyte): Return c if it's less than zero.
14959
149602002-05-28 Kim F. Storm <storm@cua.dk>
14961
14962 * fileio.c (Fread_file_name_internal): Added brute-force
14963 speed up for using predicate file-directory-p.
14964
149652002-05-28 Kim F. Storm <storm@cua.dk>
14966
14967 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
14968 New variables.
14969 (syms_of_fileio): DEFVAR_LISP them.
14970 (read_file_name_cleanup): New unwind function.
14971 (Fread_file_name_internal): Only return completions satifying
14972 Vread_file_name_predicate. Temporarily unwind protect and rebind
14973 default-directory while checking completions against the predicate.
14974 (Fread_file_name): Added PREDICATE argument. Specbind it to
14975 Vread_file_name_predicate during completion.
14976 Call Vread_file_name_function to read the file name if non-nil.
14977
14978 * lisp.h (Fread_file_name): Now has 6 args.
14979
14980 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
14981 predicate for Fread_file_name when reading directory name.
14982 Supply Qnil for predicate in other calls to Fread_file_name.
14983
149842002-05-26 Miles Bader <miles@gnu.org>
14985
14986 * term.c (tty_capable_p): New function.
14987 * dispextern.h (tty_capable_p): New function declaration.
14988 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
14989 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
14990
149912002-05-23 Stefan Monnier <monnier@cs.yale.edu>
14992
14993 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
14994 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
14995 (Vwrite_region_annotate_functions): Docstring fix.
14996
149972002-05-23 Kim F. Storm <storm@cua.dk>
14998
14999 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
15000 phys_cursor's hpos is overwritten. This is still not completely
15001 correct, as it doesn't really make sense to use hpos at all to
15002 get the cursor glyph (as that is relative to the width of the
15003 characters on the line, which may have changed during the update).
15004
150052002-05-22 Jason Rumney <jasonr@gnu.org>
15006
15007 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
15008 Lisp_Object.
15009 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
15010 Use modified enumfont_t struct.
15011
15012 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
15013
15014 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
15015 Handle the `hbar' cursor type.
15016 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
15017
15018 * w32fns.c (Qhbar): New variable.
15019 (x_specified_cursor_type): Use it.
15020
150212002-05-21 Ken Raeburn <raeburn@gnu.org>
15022
15023 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
15024 now, when the address is needed.
15025
150262002-05-21 Colin Walters <walters@gnu.org>
15027
15028 * Makefile.in (shortlisp): Add font-core.el.
15029
150302002-05-20 Richard M. Stallman <rms@gnu.org>
15031
15032 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
15033
15034 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
15035 equivalent key bindings here.
15036
150372002-05-20 Ken Raeburn <raeburn@gnu.org>
15038
15039 Change symbol structure to contain a lisp object for the symbol
15040 name:
15041 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
15042 object field named "xname".
15043 (SYMBOL_NAME): New macro.
15044 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
15045 name field.
15046 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
15047 (mark_object, gc_sweep): Use symbol xname field and XSTRING
15048 instead of name field.
15049 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
15050 SYMBOL_NAME instead of XSYMBOL and name field.
15051 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
15052 instead of XSYMBOL and name field.
15053 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
15054 and SYMBOL_NAME instead of XSYMBOL and name field.
15055 * coding.c (Fread_coding_system, code_convert_region1)
15056 (code_convert_string1, code_convert_string_norecord)
15057 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
15058 XSYMBOL and name field.
15059 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
15060 (Fmake_variable_buffer_local, Fmake_local_variable)
15061 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
15062 of XSYMBOL and name field.
15063 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
15064 XSYMBOL and name field.
15065 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
15066 instead of XSYMBOL and name field.
15067 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
15068 XSYMBOL and name field.
15069 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
15070 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15071 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
15072 instead of XSYMBOL and name field.
15073 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
15074 (parse_modifiers, apply_modifiers, Fevent_convert_list)
15075 (parse_solitary_modifier, Fexecute_extended_command):
15076 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15077 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
15078 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
15079 of XSYMBOL and name field.
15080 (describe_command, describe_translation): Use SYMBOL_NAME and
15081 assignment instead of XSYMBOL and name field and XSETSTRING.
15082 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
15083 instead of XSYMBOL and name field.
15084 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
15085 name field and XSETSTRING.
15086 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
15087 of XSYMBOL and name field.
15088 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
15089 assignment instead of XSYMBOL and name field and XSETSTRING.
15090 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
15091 XSTRING instead of XSYMBOL and name field.
15092 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
15093 and XSTRING instead of XSYMBOL and name field.
15094 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
15095 and XSTRING instead of XSYMBOL and name field.
15096 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
15097 XSTRING instead of XSYMBOL and name field.
15098 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
15099 of XSYMBOL and name field.
15100 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
15101 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
15102
151032002-05-19 Ken Raeburn <raeburn@gnu.org>
15104
15105 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
15106 and XCDR real rvalues in most configurations.
15107
15108 * buffer.c (fix_overlays_in_range, fix_overlays_before):
15109 Don't take the address of the cdr part of a cons cell; instead, track
15110 the parent cell and call XSETCDR, or set the variable for the head
15111 of the list if we haven't started down the list yet.
15112
151132002-05-19 Richard M. Stallman <rms@gnu.org>
15114
15115 * doc.c (reread_doc_file): Don't ask for confirmation.
15116
151172002-05-18 Jason Rumney <jasonr@gnu.org>
15118
15119 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
15120 (xbm_load_image): Use it.
15121 (xbm_load): Ditto.
15122 (xbm_read_bitmap_data): Reverted to xfns.c version.
15123 From David Ponce <david@dponce.com>.
15124
151252002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
15126
15127 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
15128 2.02 and later.
15129
151302002-05-16 Juanma Barranquero <lektu@terra.es>
15131
15132 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
15133
151342002-05-15 Stefan Monnier <monnier@cs.yale.edu>
15135
15136 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
15137 meaningful test.
15138 (read_char_minibuf_menu_prompt): Fix typo.
15139
151402002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
15141
15142 * eval.c (Fcommandp): Doc fix.
15143
151442002-05-13 Stefan Monnier <monnier@cs.yale.edu>
15145
15146 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
15147 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
15148 (Fset_keymap_parent): Gcpro a bit more.
15149 (access_keymap): Gcpro around meta_map call and around the main loop.
15150 (get_keyelt): Gcpro when following indirect references.
15151 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
15152 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
15153 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
15154 Remove useless ad-hoc remap code.
15155
151562002-05-13 Richard M. Stallman <rms@gnu.org>
15157
15158 * search.c (search_buffer): Give up boyer moore search if inverse
15159 translation change charset_base.
15160
151612002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
15162
15163 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
15164 characters is carried over from the previous block of text, adjust
15165 coding->produced to account for the extra character.
15166
151672002-05-11 Andreas Schwab <schwab@suse.de>
15168
15169 * coding.c (intersection): Keep the elements of the returned list
15170 in the same order as in the first list.
15171
151722002-05-11 Kim F. Storm <storm@cua.dk>
15173
3419757d 15174 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
048addec
JD
15175 only update cmm_size if realloc actually succeeds.
15176 Testing with initial size of 2 elements revealed that using
15177 realloc on GNU/Linux would cause a random trap in xmalloc
15178 later on, so I rewrote the code to use malloc/bcopy/free instead
15179 of realloc.
15180
151812002-05-10 Jason Rumney <jasonr@gnu.org>
15182
15183 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
15184
151852002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
15186
15187 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
15188 parens, to ensure correct evaluation order.
15189
151902002-05-10 Kim F. Storm <storm@cua.dk>
15191
15192 * keymap.c (Vemulation_mode_map_alists): New variable.
15193 (syms_of_keymap): DEFVAR_LISP it.
15194 (current_minor_maps): Process keymap alists in that list before
15195 minor-mode-overriding-map-alist and minor-mode-map-alist.
15196
151972002-05-09 Richard M. Stallman <rms@gnu.org>
15198
15199 * search.c (Freplace_match): Doc fix.
15200
152012002-05-09 Kim F. Storm <storm@cua.dk>
15202
15203 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
15204 Enlarge cursor rectangle drawn around image with non-zero relief.
15205
15206 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
15207 Enlarge cursor rectangle drawn around image with non-zero relief.
15208
15209 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
15210 Enlarge cursor rectangle drawn around image with non-zero relief.
15211
152122002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
15213
15214 * xselect.c (lisp_data_to_selection_data): Don't set selection
15215 type if comes from the Lisp object's car. If the selection
15216 contains a pure ASCII text, always return QSTRING as its type.
15217
152182002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15219
15220 * mac.c (mac-cut-function): Doc fix.
15221
152222002-05-05 Richard M. Stallman <rms@gnu.org>
15223
15224 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
15225
152262002-05-04 Jason Rumney <jasonr@gnu.org>
15227
15228 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
15229 for event-click-count.
15230
15231 * process.c (init_process): Only add server subfeature if we can
15232 use non-blocking I/O.
15233
152342002-05-04 Andrew Choi <akochoi@shaw.ca>
15235
15236 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
15237 repeatedly.
15238
152392002-05-03 Jason Rumney <jasonr@gnu.org>
15240
15241 * process.c (Fmake_network_process): Only support server sockets
15242 when we can make them non-blocking.
15243
15244 * s/ms-w32.h (HAVE_SELECT): Define.
15245
15246 * w32.h (FILE_NDELAY): New flag.
15247
15248 * w32.c (sys_getpeername, fcntl): New functions.
15249 (_sys_read_ahead): Temporarily block on non-blocking sockets.
15250
15251 * w32proc.c: include sys/file.h.
15252
152532002-05-03 Colin Walters <walters@verbum.org>
15254
15255 * callproc.c (Vgame_score_directory): Renamed to
15256 Vshared_game_score_directory.
15257
152582002-04-30 Richard M. Stallman <rms@gnu.org>
15259
15260 * s/gnu.h [emacs]: Include stdio.h.
15261 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
15262
15263 * eval.c (do_autoload): Error if called while preparing to dump.
15264
15265 * fns.c (Frequire): Error if need to load while preparing to dump.
15266
152672002-04-28 Colin Walters <walters@verbum.org>
15268
15269 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
15270 Default to "~/.emacs.d/games".
15271
152722002-04-29 Stefan Monnier <monnier@cs.yale.edu>
15273
15274 * lread.c (openp): Change arg exec_only to predicate.
15275 (build_load_history): Use XCAR/XCDR.
15276 (Flocate_file_internal): New fun.
15277 (syms_of_lread): Defsubr it.
15278 (Fload): Update call to openp.
15279
15280 * lisp.h (openp): Update prototype.
15281
15282 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
15283 * w32proc.c (sys_spawnve):
15284 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
15285 * w32.c (check_windows_init_file):
15286 * sound.c (Fplay_sound_internal):
15287 * process.c (Fstart_process):
15288 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
15289 * mac.c (run_mac_command):
15290 * emacs.c (init_cmdargs):
15291 * callproc.c (Fcall_process): Update call to openp.
15292
15293 * textprop.c (remove_properties): Don't use XCAR without CONSP.
15294
15295 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
15296
152972002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15298
15299 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
15300 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
15301
153022002-04-28 Richard M. Stallman <rms@gnu.org>
15303
15304 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
15305
15306 * eval.c (Fcommandp): New arg for_call_interactively.
15307 * lisp.h (Fcommandp): Declare new arg.
15308
153092002-04-28 Jason Rumney <jasonr@gnu.org>
15310
15311 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
15312
15313 * w32.c (stat, fstat): Use file index information to generate
15314 inodes for directories where available.
15315
153162002-04-26 Andrew Choi <akochoi@shaw.ca>
15317
15318 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
15319 [HAVE_CARBON]: Include Mac object files.
15320
15321 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
15322 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
15323 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
15324 MAC_OSX, and MAC_OS instead of macintosh.
15325
15326 * editfns.c [MAC_OS8]: Include stdio.h.
15327
15328 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
15329
15330 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
15331 Apple Monaco.
15332
78819ebb 15333 * process.c (QCfamily, QCfilte): Declare extern.
048addec
JD
15334 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
15335 calling select.
15336
15337 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
15338
15339 * tparam.c [MAC_OSX]: Don't define BC and UP.
15340
15341 * config.in [HAVE_CARBON]: Add.
15342
15343 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
15344 Move here from mac/src and mac/inc.
15345
15346 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
15347
153482002-04-26 Gerd Moellmann <gerd@gnu.org>
15349
15350 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
15351 Compute phys_cursor_width from the x position returned
15352 by x_draw_glyhs, which is cheaper.
15353 (x_display_and_set_cursor): Compute the buffer-local value
15354 of `cursor-in-non-selected-windows' only when needed.
15355
153562002-04-25 Gerd Moellmann <gerd@gnu.org>
15357
15358 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
15359 cursor on a stretch glyph has a width that depends on
15360 x_stretch_cursor_p.
15361
153622002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15363
15364 * abbrev.c (abbrev-start-location): Doc fix.
15365
15366 * indent.c (Fvertical_motion): Fix last change.
15367
153682002-04-25 Gerd Moellmann <gerd@gnu.org>
15369
15370 * indent.c (Fvertical_motion): Move to the start of the line
15371 containing PT before moving up or down.
15372
153732002-04-24 Gerd Moellmann <gerd@gnu.org>
15374
15375 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
15376 case of writing a whole row, more or less analogous to the case of
15377 writing only parts of a row.
15378
15379 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
15380 0 for NO_CURSOR.
15381
15382 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
15383
153842002-04-23 Colin Walters <walters@verbum.org>
15385
15386 * buffer.c (syms_of_buffer): Doc fix.
15387
153882002-04-23 Gerd Moellmann <gerd@gnu.org>
15389
15390 * xterm.c (notice_overwritten_cursor): Handle the special case
15391 of the cursor being in the first blank non-text line at the
15392 end of a window.
15393
15394 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
15395 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
15396 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
15397 bar cursors only, to make phys_cursor_width contain what its name
15398 suggests.
15399 (notice_overwritten_cursor): Consider the cursor image erased if
15400 the output area intersects the cursor image in y-direction.
15401
154022002-04-23 Simon Marshall <simon@gnu.org>
15403
15404 * xfns.c (x_set_mouse_color): Change default for cross_cursor
15405 to XC_hand2.
15406
154072002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15408
15409 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
15410
154112002-04-22 Kim F. Storm <storm@cua.dk>
15412
15413 * textprop.c (remove_properties): Fixed trap for malformed plist.
15414
154152002-04-22 Richard M. Stallman <rms@gnu.org>
15416
15417 * cmds.c (Fend_of_line): Handle intangible text in mid line.
15418
15419 * window.c (make_window): Initialize height_fixed_p,
15420 last_cursor_off_p, and p->cursor_off_p slots.
15421
154222002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15423
15424 * fns.c (use-dialog-box): Doc fix.
15425
154262002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15427
15428 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
15429 variables `row', `i' and `area'.
15430 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
15431 toolkit library.
15432
154332002-04-19 Stefan Monnier <monnier@cs.yale.edu>
15434
15435 * xfaces.c (clear_font_table): Don't free the default font of
15436 a frame even if it's on another display.
15437 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
15438 that could be Qt.
15439
154402002-04-19 Juanma Barranquero <lektu@terra.es>
15441
15442 * indent.c (Fmove_to_column): Remove unused local variable
15443 `next_boundary_byte'.
15444 (current_column_1): Likewise.
15445
154462002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
15447
15448 * msdos.c (Qhbar): New variable.
15449 (syms_of_msdos): Intern and staticpro it.
15450 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
15451 cursor type.
15452
154532002-04-19 Dave Lambert <dlambert@acm.org>
15454
15455 Theses change implement an underscore-like (`hbar') cursor.
15456
15457 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
15458
15459 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
15460 Handle the `hbar' cursor type.
15461 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
15462
15463 * xfns.c (Qhbar): New variable.
15464 (syms_of_xfns): Intern and staticpro it.
15465 (x_specified_cursor_type): Handle `hbar' cursor.
15466
15467 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
15468 not defined.
15469
154702002-04-18 Richard M. Stallman <rms@gnu.org>
15471
15472 * textprop.c (remove_properties): New arg LIST allows scanning
15473 either a list or a plist.
15474 (interval_has_some_properties_list): New function, like
15475 interval_has_some_properties using list instead of plist.
15476 All callers changed.
15477 (Fremove_list_of_text_properties): New function.
15478 (syms_of_textprop): Defsubr it.
15479
154802002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
15481
15482 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
15483
154842002-04-17 Juanma Barranquero <lektu@terra.es>
15485
15486 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
15487
154882002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
15489
15490 * window.c (coordinates_in_window): Don't report on margin area
15491 if its width is zero.
15492
154932002-04-16 Jason Rumney <jasonr@gnu.org>
15494
15495 * w32fns.c (Fx_file_dialog): Decode file name before using.
15496
15497 * w32term.c (construct_drag_n_drop): Likewise.
15498
154992002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
15500
15501 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
15502 store load-history in pure space.
15503
15504 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
15505
155062002-04-16 Stefan Monnier <monnier@cs.yale.edu>
15507
15508 * xterm.c (Qlatin_1, Qutf_8): New vars.
15509 (syms_of_xterm): Initialize them.
15510 (XTread_socket): Eliminate incorrect optimization that tried to avoid
15511 decoding the output of X*LookupString.
15512 Always use latin-1 to decode the output of XLookupString.
15513 Try Xutf8LookupString if XmbLookupString failed.
15514
15515 * region-cache.c (new_region_cache): Use BEG.
15516
155172002-04-16 Gerd Moellmann <gerd@gnu.org>
15518
15519 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
15520 configuration files.
15521 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
15522 returns 0.
15523
155242002-04-15 Andreas Schwab <schwab@suse.de>
15525
15526 * config.in: Regenerated using autoheader.
15527
15528 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
15529 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
15530 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
15531 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
15532 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
15533 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
15534 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
15535 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
15536 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
15537 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
15538 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
15539 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
15540 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
15541 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
15542 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
15543 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
15544 STACK_DIRECTION, now set by autoconf.
15545
155462002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15547
15548 * dispnew.c (marginal_area_string): Sort arguments.
15549
15550 * dispextern.h (marginal_area_string): Add prototype.
15551
155522002-04-13 Richard M. Stallman <rms@gnu.org>
15553
15554 * fileio.c (Finsert_file_contents):
15555 Don't call temp_output_buffer_setup--do just part, by hand.
15556
15557 * coding.c (run_pre_post_conversion_on_str):
15558 Don't call temp_output_buffer_setup--do just part, by hand.
15559
15560 * keyboard.c (command_loop_1): Don't call start_hourglass
15561 or cancel_hourglass when executing a macro.
15562
15563 * marker.c (count_markers): New function.
15564
15565 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
15566 grow without limit. Move recently used elements to the front.
15567
155682002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
15569
15570 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
15571
155722002-04-12 Gerd Moellmann <gerd@gnu.org>
15573
15574 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
15575 rows marginal areas.
15576 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
15577 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
15578
15579 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
15580
155812002-04-12 Dave Love <fx@gnu.org>
15582
15583 * dispnew.c (marginal_area_string): New.
15584
15585 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
15586 (Qleft_margin, Qright_margin): Declare.
15587 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
15588
15589 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
15590 note_mode_line_highlight and extended.
15591
15592 * keyboard.c (Qleft_margin, Qright_margin): Declare.
15593 (make_lispy_event): Deal with mouse events in margins.
15594
155952002-04-12 Stefan Monnier <monnier@cs.yale.edu>
15596
15597 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
15598
15599 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
15600 than deactivating the mark if tmm is set to `lambda'.
15601 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
15602 Use a single event for HELP_EVENT.
15603 (Fexecute_extended_command): Save last_point_position.
15604
156052002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15606
15607 * lisp.h (Fpropertize): Add prototype.
15608
15609 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
15610
156112002-04-10 Colin Walters <walters@verbum.org>
15612
15613 * config.in: Add HAVE_SHARED_GAME_DIR.
15614
15615 * callproc.c: (Vgame_score_directory): New variable.
15616 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
15617
156182002-04-10 Richard M. Stallman <rms@gnu.org>
15619
15620 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
15621
156222002-04-09 Stefan Monnier <monnier@cs.yale.edu>
15623
15624 * minibuf.c (read_minibuf): Use empty_string.
15625 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
15626 Short-circuit the search as soon as it "failed".
15627 (Fall_completions): Allow lambda forms and lists of strings for alist.
15628 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
15629 when require_match is nil.
15630 (Ftest_completion): Rename from `test_completion' and export to elisp.
15631 Call the predicate also when alist is a list.
15632 Obey Vcompletion_regexp_list.
15633 (do_completion, Fminibuffer_complete_and_exit): Use it.
15634 (Fassoc_string): Rename from `assoc_for_completion'.
15635 Allow list of strings as well and export to elisp.
15636
156372002-04-08 Stefan Monnier <monnier@cs.yale.edu>
15638
15639 * puresize.h (BASE_PURESIZE): Increase to 900KB.
15640
156412002-04-08 Juanma Barranquero <lektu@terra.es>
15642
15643 * w32.c (sys_accept): Don't hide variable `s'.
15644
156452002-04-05 Gerd Moellmann <gerd@gnu.org>
15646
15647 * callint.c (Fcall_interactively): Use INTEGERP instead of
15648 NUMBERP for checking Vhistory_length.
15649
156502002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15651
15652 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
15653 Doc fix to reflect it.
15654
156552002-04-04 Richard M. Stallman <rms@gnu.org>
15656
15657 * xdisp.c (display_mode_element): New arg RISKY.
15658 Disregard text props found or specified within a variable
15659 that isn't marked risky-local-variable.
15660 (Qrisky_local_variable): New variable.
15661 (syms_of_xdisp): Init and staticpro it.
15662
156632002-04-04 Stefan Monnier <monnier@cs.yale.edu>
15664
15665 * undo.c (record_point): New fun.
15666 (record_delete, record_insert): Use it.
15667
156682002-04-03 Juanma Barranquero <lektu@terra.es>
15669
15670 * doc.c (Fdocumentation): Add missing parentheses.
15671 (Fdocumentation_property): Likewise.
15672
156732002-04-03 Stefan Monnier <monnier@cs.yale.edu>
15674
15675 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
15676 data is 0, just return nil.
15677
156782002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
15679
15680 * msdos.c (syms_of_msdos): Fix last change with
15681 mouse_autoselect_window.
15682
156832002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15684
15685 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
15686 mouse_autoselect_window.
15687
156882002-04-02 Stefan Monnier <monnier@cs.yale.edu>
15689
15690 * keyboard.c (make_lispy_event): Handle unknown keysyms together
15691 with system-specific keysyms. Use it also for unknown function keys.
15692
15693 * doc.c (reread_doc_file): Return whether reload was attempted.
15694 (Fdocumentation, Fdocumentation_property): Don't try to reload
15695 if the doc is 0 and only ask once.
15696
15697 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
15698
156992002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
15700
15701 * keyboard.c (read_char): If the event was Qselect_window,
15702 restore timer_idleness_start_time to its previous value.
15703
15704 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
15705
157062002-04-01 Stefan Monnier <monnier@cs.yale.edu>
15707
15708 * region-cache.c (new_region_cache): Use BEG.
15709
15710 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
15711 Use BEG and BEG_BYTE.
15712
15713 * doc.c (get_doc_string): Return nil if the location is wrong.
15714 (reread_doc_file): New fun.
15715 (Fdocumentation, Fdocumentation_property):
15716 Call it if get_doc_string fails.
15717 (Fsnarf_documentation): Make it work for a dumped Emacs.
15718
15719 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
15720 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
15721
15722 * charset.c (Fstring): Allow 0 arguments.
15723
15724 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
15725
15726 * process.c (DATAGRAM_CONN_P, list_processes_1)
15727 (Fprocess_datagram_address, Fset_process_datagram_address)
15728 (Fset_network_process_options, server_accept_connection):
15729 Fix some int/Lisp_Object confusions (thank you union types).
15730
157312002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15732
15733 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
15734
15735 * w32term.c: Likewise.
15736 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
15737
15738 * keyboard.c (Qselect_window): New symbol.
15739 (head_table): Use it.
15740 (keys_of_keyboard): Bound select-window event to handle-select-window.
15741 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
15742
15743 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
15744 (last_window): New variable.
15745 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
15746 (note_mouse_movement): Remove reimplemented code in #if 0.
15747 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
15748 Emacs windows.
15749
15750 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
15751
157522002-03-31 Gerd Moellmann <gerd@gnu.org>
15753
15754 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
15755 Callers changed.
15756
157572002-03-30 Richard M. Stallman <rms@gnu.org>
15758
15759 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
15760 loop whenever it stops making progress.
15761
15762 * widget.c (set_frame_size): Don't call change_frame_size.
15763
157642002-03-30 Gerd Moellmann <gerd@gnu.org>
15765
15766 * dispnew.c (direct_output_for_insert):
15767 Call mark_window_display_accurate.
15768
157692002-03-29 Jason Rumney <jasonr@gnu.org>
15770
15771 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
15772
157732002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
15774
15775 * Makefile.in (lread.o): Depend on coding.h.
15776
15777 * lread.c (openp, Fload): Encode the file name before passing it
15778 to `stat', `access', and `emacs_open'.
15779 (openp): GCPRO the encoded file name. Don't recompute Lisp
15780 strings unnecessarily.
15781
157822002-03-29 Kim F. Storm <storm@cua.dk>
15783
15784 * fns.c (Flax_plist_put): Doc fix.
15785
157862002-03-28 Miles Bader <miles@gnu.org>
15787
15788 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
15789
157902002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15791
15792 * process.c (set-network-process-options): Add usage.
15793 (make-network-process): Doc fix.
15794
157952002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
15796
15797 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
15798
157992002-03-26 Richard M. Stallman <rms@gnu.org>
15800
15801 * fns.c (Fsubstring_no_properties): New function.
15802 (Flax_plist_get, Flax_plist_put): New functions.
15803 (syms_of_fns): defsubr them.
15804
15805 * xdisp.c (update_menu_bar): Test only update_mode_lines;
15806 don't test or alter w->update_mode_line.
15807
15808 * window.c (Fdisplay_buffer): Doc fix.
15809
158102002-03-24 Richard M. Stallman <rms@gnu.org>
15811
15812 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
15813
158142002-03-24 Gerd Moellmann <gerd@gnu.org>
15815
15816 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
15817 (Fdefmacro): Handle `(declare ...)'.
15818 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
15819 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
15820
158212002-03-24 Jason Rumney <jasonr@gnu.org>
15822
15823 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
15824 (xbm_file_p): Add prototypes.
15825 (xbm_format, xbm_image_p): Sync with xfns.c.
15826 (reflect_byte): New function.
15827 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
15828 (xbm_load_image): Create bitmaps with a depth of 1.
15829 (init_xfns): Enable XBM images.
15830
158312002-03-23 Jason Rumney <jasonr@gnu.org>
15832
15833 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
15834 correctly. Do not pass up_modifier to keyboard buffer.
15835
15836 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
15837
158382002-03-22 Stefan Monnier <monnier@cs.yale.edu>
15839
15840 * Makefile.in (bootstrapclean): New target.
15841 (bootstrap-temacs, bootstrap-doc): Remove.
15842 (bootstrap-emacs): Use a bog-standard `temacs'.
15843 Don't bother to build a DOC file.
15844
15845 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
15846
15847 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
15848 in temacs even if !CANNOT_DUMP.
15849 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
15850
15851 * alloc.c (check_pure_size): Only output a warning.
15852
158532002-03-22 Jason Rumney <jasonr@gnu.org>
15854
15855 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
15856 supported.
15857
15858 * w32term.c (zv_bits): Declare as short, for word alignment.
15859 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
15860 (syms_of_w32term): Define x-use-underline-position-properties.
15861
15862 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
15863 (clear_image_cache): Block input, fix logic, clear matrices in
15864 all frames that share this cache.
15865
158662002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
15867
15868 * emacs.c (main): Update the Copyright year in the blurb printed
15869 by "emacs --version".
15870
15871 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
15872
15873 * xterm.c (XTread_socket): If XK_ISO_Lock and
15874 XK_ISO_Last_Group_Lock are defined, handle keysyms between
15875 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
15876
158772002-03-21 Kim F. Storm <storm@cua.dk>
15878
15879 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
15880 menu-bar bindings in keymap and local-map properties _are_ used.
15881 But try keymap property first in accordance with 2002-01-03 patch.
15882 Added comment describing why this is not always reliable.
15883 (tool_bar_items): Ditto for tool-bar.
15884
158852002-03-21 Jason Rumney <jasonr@gnu.org>
15886
15887 * w32fns.c (x_clear_image_1): Disable color table code.
15888
158892002-03-21 Kim F. Storm <storm@cua.dk>
15890
15891 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
15892 removed the wrong version of the DEFUN macro; fixed it.
15893
15894 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
15895 Fmember rather than Fmemq).
15896 (Fprovide): Check that subfeatures is a list.
15897
15898 * process.c (QCfeature, QCdatagram): Removed variables.
15899 (QCtype, Qdatagram): New variables.
15900 (network_process_featurep): Removed function.
15901 (Fmake_network_process): Removed :feature check.
15902 Use :type 'datagram instead of :datagram t to create a datagram
15903 socket. This allows us to add other connection types (e.g. raw
15904 sockets) later in a consistent manner.
15905 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
15906 supported subfeatures for feature make-network-process.
15907 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
15908 Intern and staticpro QCtype and Qdatagram.
15909 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
15910
15911 * xfns.c: (QCtype): Remove duplicate declaration and
15912 initialization (is now declared in process.c).
15913
15914 * w32fns.c: (QCtype): Remove duplicate declaration and
15915 initialization (is now declared in process.c).
15916
159172002-03-21 Richard M. Stallman <rms@gnu.org>
15918
15919 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
15920 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
15921 when jumping to `fail' to avoid undoing reg changes in the
15922 last iteration of the loop.
15923 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
15924
15925 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
15926 Depend on process.h.
15927
159282002-03-20 Jason Rumney <jasonr@gnu.org>
15929
15930 Most of the following changes are still conditional on HAVE_IMAGES
15931 which is not set by default on Windows.
15932
15933 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
15934
15935 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
15936 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
15937 (four_corners_best, x_clear_image_1, x_clear_image)
15938 (x_alloc_image_color, postprocess_image)
15939 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
15940 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
15941 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
15942
15943 * w32gui.h (struct XImage): Define.
15944
15945 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
15946 extract mouse co-ordinates.
15947
159482002-03-20 Jason Rumney <jasonr@gnu.org>
15949
15950 * w32.c (init_winsock): Dynamically load new server and UDP
15951 socket functions.
15952 (socket_to_fd): New function.
15953 (sys_socket): Use it.
15954 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
15955 (sys_recvfrom, sys_sendto): New wrapper functions.
15956
15957 * process.c (QCfamily, QCfilter): Remove duplicate declaration
15958 and initialization.
15959
15960 * makefile.w32-in (LIBS): Remove $(WSOCK32).
15961
159622002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
15963
15964 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
15965 Don't use "sun" as a variable, it's a predefined constant on Sun
15966 machines.
15967
159682002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15969
15970 * bytecode.c (Fbyte_code): Revert last change.
15971
159722002-03-19 Kim F. Storm <storm@cua.dk>
15973
15974 * makefile.w32-in (LIBS): Add $(WSOCK32).
15975 From David Ponce <dponce@voila.fr>.
15976
159772002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15978
15979 * process.c (wait_reading_process_input): Move variables `pname'
15980 and `pnamelen' down where they are used.
15981
15982 * bytecode.c (Fbyte_code): Discard unused computed value to
15983 prevent gcc warning.
15984
15985 * lisp.h (Fplist_member): Add prototype.
15986
159872002-03-18 Kim F. Storm <storm@cua.dk>
15988
15989 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
15990 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
15991
15992 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
15993 Remove explicit GNU_LINUX settings for datagram support.
15994
159952002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15996
15997 * process.c (Fmake_network_process): Remove unused variable `sa'.
15998 Doc fix. Add usage:.
15999 (set_socket_options): Remove unused variables `optnum' and `opttype'.
16000
160012002-03-17 Richard M. Stallman <rms@gnu.org>
16002
16003 * xdisp.c (cursor_type_changed): New variable.
16004 (redisplay_internal): Redisplay all windows if cursor_type_changed.
16005 Clear it when clearing windows_or_buffers_changed.
16006 (try_cursor_movement, redisplay_window, try_window_id)
16007 (try_window_reusing_current_matrix): Test cursor_type_changed
16008 along with windows_or_buffers_changed.
16009
16010 * window.h (cursor_type_changed): New variable.
16011
16012 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
16013 not update_mode_lines, and always set it to 1.
16014
16015 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
16016 if no frames needed redrawing.
16017
160182002-03-17 Kim F. Storm <storm@cua.dk>
16019
16020 The following changes add support for network server processes,
16021 datagram connections, and local (unix) sockets.
16022
16023 * process.h (struct Lisp_Process): New member log.
16024 Doc fix: Member command used to indicate stopped network process.
16025 Doc fix: Member childp contains plist for network process.
16026 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
16027
16028 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
16029 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
16030 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
16031 New variables.
16032 (NETCONN1_P): New macro.
16033 (DATAGRAM_SOCKETS): New conditional symbol.
16034 (datagram_address): New array.
16035 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
16036 (status_message): Use concat3.
16037 (Fprocess_status): Add `listen' status to doc string. Return `stop'
16038 for a stopped network process.
16039 (Fset_process_buffer): Update contact plist for network process.
16040 (Fset_process_filter): Ditto. Don't enable input for stopped
16041 network processes. Server must listen, even if filter is t.
16042 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
16043 New functions.
16044 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
16045 (Fprocess_contact): Added KEY argument. Handle datagrams.
16046 (list_processes_1): Optionally show only processes with the query
16047 on exit flag set. Dynamically adjust column widths. Omit tty
16048 column if not needed. Report stopped network processes.
16049 Identify server and datagram network processes.
16050 (Flist_processes): New optional arg `query-only'.
16051 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
16052 (conv_lisp_to_sockaddr, set_socket_options)
16053 (network_process_featurep, unwind_request_sigio): New helper functions.
16054 (Fprocess_datagram_address, Fset_process_datagram_address):
16055 (Fset_network_process_options): New lisp functions.
16056 (Fopen_network_stream): Removed. Now defined in simple.el.
16057 (Fmake_network_process): New lisp function. Code is based on previous
16058 Fopen_network_stream, but heavily reworked with new property list based
16059 argument list, support for datagrams, server processes, and local
16060 sockets in addition to old client-only functionality.
16061 (server_accept_connection): New function.
16062 (wait_reading_process_input): Use it to handle incoming connects.
16063 Do not enable input on a new connection if process is stopped.
f63fd14e 16064 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
16065 (send_process): Handle datagram sockets.
16066 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
16067 network process is indicated by setting command field to t .
16068 (Fprocess_send_eof): No-op if datagram connection.
16069 (Fstatus_notify): Don't read input for a stream server socket or a
16070 stopped network process.
16071 (init_process): Initialize datagram_address array.
16072 (syms_of_process): Intern and staticpro new variables, defsubr new
16073 functions.
16074
160752002-03-16 Jason Rumney <jasonr@gnu.org>
16076
16077 * w32fns.c (w32_to_all_x_charsets): Return correct type in
16078 startup case.
16079
160802002-03-16 Richard M. Stallman <rms@gnu.org>
16081
16082 * xdisp.c (redisplay_internal, redisplay_windows):
16083 Use list_of_error to call internal_condition_case_1.
16084 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
16085 so as to catch all errors with no possibility of debugger redisplay.
16086 (list_of_error): New variable.
16087 (syms_of_xdisp): Init and staticpro it.
16088
16089 * print.c (print_object): Delete `\ ' from printed rep of frame.
16090
160912002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
16092
16093 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
16094 until its implementation is fixed.
16095
160962002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16097
16098 * xfns.c (png_load): Remove unused variable `gamma_str'.
16099
161002002-03-14 Richard M. Stallman <rms@gnu.org>
16101
16102 * xfns.c (x_real_positions): Handle failure in XQueryTree.
16103
161042002-03-14 Miles Bader <miles@gnu.org>
16105
16106 * intervals.c (adjust_for_invis_intang): New function.
16107 (set_point_both): Use `adjust_for_invis_intang' to do most of the
16108 work for dealing with invisible+intangible regions. Do so before
16109 and after both forward and backward movements, to handle both
16110 front-sticky and rear-sticky cases.
16111 * textprop.c (text_property_stickiness): Function moved here from
16112 `editfns.c'.
16113 * intervals.h (text_property_stickiness): New declaration.
16114 * editfns.c (char_property_eq): Function removed.
16115 (text_property_stickiness): Function moved to `textprop.c'.
16116
161172002-03-13 Jason Rumney <jasonr@gnu.org>
16118
16119 * config.in: Add STRFTIME_NO_POSIX2.
16120
16121 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
16122 and %OX when underlying strftime does not.
16123
161242002-03-13 Stefan Monnier <monnier@cs.yale.edu>
16125
16126 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
16127 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
16128 line) to avoid annoying flicker.
16129 (xm_scroll_callback): Get rid of the now unnecessary kludge.
16130 (XTread_socket): Mark it static.
16131
16132 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
16133
161342002-03-13 Kim F. Storm <storm@cua.dk>
16135
16136 * puresize.h (BASE_PURESIZE): Increase to 775000.
16137
161382002-03-12 Juanma Barranquero <lektu@terra.es>
16139
16140 * editfns.c (syms_of_editfns): Fix typo.
16141
161422002-03-12 Gerd Moellmann <gerd@gnu.org>
16143
16144 * xsmfns.c: Include stdio.h because termhooks.h needs it.
16145 Include termopt.h for interrupt_input.
16146
161472002-03-11 Andreas Schwab <schwab@suse.de>
16148
16149 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
16150
161512002-03-11 Gerd Moellmann <gerd@gnu.org>
16152
16153 * xterm.c (note_mouse_movement): Put code for
16154 x_autoselect_window_p in #if 0.
16155
16156 * lread.c (Fload): Don't assume that message_with_string uses the
16157 string it is given like a C string.
16158
161592002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16160
78819ebb 16161 * xterm.h (x_session_check_input, x_session_initialize): Declare.
048addec
JD
16162
16163 * xterm.c: (XTread_socket): Add call to x_session_check_input and
16164 x_session_have_connection.
16165 (x_initialize): Add call to x_session_initialize.
16166
16167 * termhooks.h (enum event_kind): Add save_session_event.
16168
16169 * keyboard.c: Add Emacs event save_session_event.
16170
16171 * emacs.c (main): Add call to syms_of_xsmfns.
16172
78819ebb 16173 * lisp.h (syms_of_xsmfns): Declare extern.
048addec
JD
16174
16175 * config.in: Add HAVE_X_SM.
16176
16177 * Makefile.in (LIBXT): Add -lSM -lICE
16178 if HAVE_X_SM and not USE_X_TOOLKIT.
16179 (XOBJ): New file xsmfns.c added.
16180
16181 * xsmfns.c: New file for X session management.
16182
161832002-03-09 Jason Rumney <jasonr@gnu.org>
16184
16185 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
16186 read-only when setting modified time.
16187
161882002-03-08 Gerd Moellmann <gerd@gnu.org>
16189
16190 * xdisp.c (move_it_vertically_backward): At the end of the function,
16191 when moving forward by lines, treat terminal frames specially.
16192
16193 * keyboard.c (echo_char): Make sure to add a separator between
16194 keys even if echo_dash hasn't been called.
16195
16196 * xdisp.c: Use new string macros.
16197 (update_echo_area): Pass number of bytes to message3 instead of
16198 number of chars.
16199 (set_message_1): Don't access a string's size_byte directly.
16200 (decode_mode_spec_coding): Use number of bytes of eoltype string
16201 instead number of chars.
16202
16203 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
16204
162052002-03-08 Juanma Barranquero <lektu@terra.es>
16206
16207 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
16208 24-bit.
16209
162102002-03-06 Jason Rumney <jasonr@gnu.org>
16211
16212 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
16213
162142002-03-06 Gerd Moellmann <gerd@gnu.org>
16215
16216 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
16217 (cancel_echoing, echo_length, echo_truncate): Changed to
16218 work with new kboard definition.
16219 (echo_now): Use message3_nolog instead of message2_nolog.
16220
16221 * alloc.c (mark_kboards): Mark echo_string.
16222
16223 * keyboard.h (ECHOBUFSIZE): Removed.
16224 (struct kboard): Member echoptr removed, member echobuf renamed
16225 to echo_string.
16226
16227 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
16228 message3 instead of message2 to display the message using STRING's
16229 text properties.
16230
162312002-03-05 Andreas Schwab <schwab@suse.de>
16232
16233 * xdisp.c (hscroll_margin): Change to EMACS_INT.
16234
162352002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
16236
16237 * frame.c (default-frame-alist): Explain that setting it doesn't
16238 affect existing frames.
16239
162402002-03-05 Stefan Monnier <monnier@cs.yale.edu>
16241
16242 * indent.c (skip_invisible): Fix my brain fart.
16243
16244 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
16245
162462002-03-04 Stefan Monnier <monnier@cs.yale.edu>
16247
16248 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
16249 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
16250 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
16251 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
16252 and variables to use EMACS_INT instead of just int.
16253
16254 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
16255
162562002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
16257
16258 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
16259 environment, pass it down with corrected value.
16260
162612002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16262
16263 * lread.c (read_filtered_event): Do not call start_hourglass
16264 before returning.
16265
162662002-03-04 Juanma Barranquero <lektu@terra.es>
16267
16268 * w32term.c (x_display_and_set_cursor): Fix typo.
16269
162702002-03-03 Richard M. Stallman <rms@gnu.org>
16271
16272 * fileio.c (Fmake_temp_name): Doc fix.
16273
162742002-03-03 Gary Wong <gtw@gnu.org>
16275
16276 * termcap.c [!emacs]: Replace ospeed for building standalone
16277 libtermcap, for binary compatibility.
16278
16279 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
16280
162812002-03-03 Richard M. Stallman <rms@gnu.org>
16282
16283 * xrdb.c (file_p): Rename arg `path' to `filename'.
16284
16285 * abbrev.c (Fexpand_abbrev): Increment plist as use count
16286 only if it is an integer.
16287
16288 * xfns.c (png_load): Set screen_gamma based on f->gamma.
16289 If png_get_sRGB gives an answer, call png_set_gamma
16290 using the default image gamma value.
16291
16292 * lread.c (read1): When reading from a file, default string to
16293 multibyte only if it has some multibyte characters.
16294
16295 * print.c (print_object): Output multibyte chars 128...255
16296 using \x even if ! print_escape_multibyte.
16297
16298 * xdisp.c (display_mode_element): Move the places where
16299 bytepos, charpos, this, and lisp_string are set.
16300 Use lisp_string to set bytepos.
16301
16302 * xdisp.c (redisplay_internal):
16303 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
16304
16305 * xdisp.c (display_mode_element): Merge properties specified with
16306 :propertize onto those that come with the string.
16307
163082002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
16309
16310 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
16311 automatic-hscrolling. Users changed.
16312 <hscroll-margin>: Renamed from automatic-hscroll-margin.
16313 Users changed.
16314 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
16315
163162002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
16317
16318 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
16319
163202002-03-02 Kim F. Storm <storm@cua.dk>
16321
16322 * window.c (Fminibuffer_selected_window): New function.
16323 (syms_of_window): Defsubr it.
16324
163252002-03-01 Kim F. Storm <storm@cua.dk>
16326
16327 * window.h (struct window): New member phys_cursor_width.
16328
16329 * window.c (make_window, replace_window): Init phys_cursor_width.
16330
16331 * xterm.c (x_display_and_set_cursor): Blink box cursor using
16332 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
16333
16334 * w32term.c (x_display_and_set_cursor): Blink box cursor using
16335 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
16336
16337 * lisp.h (GCPRO6): New macro.
16338
16339 * process.c (Fopen_network_stream): Use GCPRO6.
16340
163412002-03-01 Kim F. Storm <storm@cua.dk>
16342
16343 * process.c (Qconnect, Qfailed): New variables.
16344 (syms_of_process): Intern and staticpro them.
16345 (Fprocess_status): Document connect and failed return values.
16346 [NON_BLOCKING_CONNECT]: New conditional.
16347 (connect_wait_mask, num_pending_connects): New variables.
16348 (status_message): Convert Qfailed status.
16349 (Fopen_network_stream): Added support for non-blocking connect.
16350 New optional args: filter, sentinel, non_blocking. Doc updated.
16351 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
16352 (deactivate_process): Handle pending non-blocking connect.
16353 (wait_reading_process_input): Poll for status of non-blocking
16354 connects. Exec sentinel directly when connect succeeds.
16355 (status_notify): Don't read process output if not yet connected.
16356
163572002-02-28 Kim F. Storm <storm@cua.dk>
16358
16359 * window.c: (minibuf_selected_window): Renamed from
16360 Vminibuf_selected_window. Users changed.
16361 (syms_of_window): Staticpro it.
16362
163632002-02-26 Kim F. Storm <storm@cua.dk>
16364
16365 The following changes add a new Vminibuf_selected_window variable
16366 which is similar to Vminibuf_scroll_window, but which is only set
16367 on entry to the minibuffer (from a non-minibuffer window):
16368
16369 * window.c: (Vminibuf_selected_window): New variable.
16370 (struct save_window_data): New member minibuf_selected_window.
16371 (Fset_window_configuration): Restore Vminibuf_selected_window.
16372 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
16373 Set minibuf_scroll_window member to nil if minibuf_level is 0.
16374 (compare_window_configurations): Compare minibuf_selected_window.
16375
16376 * window.h: (Vminibuf_selected_window): Declare extern.
16377
16378 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
16379 entry to minibuffer or on entry from a non-minibuffer window.
16380
16381 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
16382 Vminibuf_selected_window instead of Vminibuf_scroll_window.
16383
16384 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
16385 instead of Vminibuf_scroll_window when deciding in which window
16386 the region should be highlighted. Consequently, the region remains
16387 highlighteded even when a completion buffer is also displayed.
16388
163892002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
16390
16391 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
16392
16393 * xselect.c (Qcompound_text_with_extensions): Renamed from
16394 Qcompound_text_no_extensions.
16395 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
16396
163972002-02-26 Juanma Barranquero <lektu@terra.es>
16398
16399 * w32proc.c (syms_of_ntproc): Doc fix.
16400
164012002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16402
16403 * intervals.h: Include "dispextern.h" unconditionally.
16404
164052002-02-24 Jason Rumney <jasonr@gnu.org>
16406
16407 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
16408 and disp-table.elc.
16409 (lisp): Add emacs-lisp/backquote.elc.
16410
164112002-02-24 Kim F. Storm <storm@cua.dk>
16412
3419757d 16413 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
048addec
JD
16414 The validation of the event type was too strict as it didn't
16415 allow string events; buffer names are used in bindings for
16416 menu-bar-select-buffer (see `menu-bar-update-buffers').
16417
164182002-02-23 Kim F. Storm <storm@cua.dk>
16419
16420 The following changes rework my patch of 2002-02-06 which
16421 added command remapping by entering the commands directly into
16422 the keymaps. Now, command remapping uses an explicit `remap'
16423 prefix in the keymaps, i.e. [remap COMMAND].
16424
16425 * keymap.c (Qremap, remap_command_vector): New variables.
3419757d 16426 (is_command_symbol): Remove function.
048addec
JD
16427 (Fdefine_key): No longer accept a symbol for KEY.
16428 Added validation of [remap COMMAND] argument for KEY.
16429 The DEF is no longer required to be a symbol when remapping a command.
16430 (Fremap_command): New function to remap command through keymaps.
16431 (Flookup_key): Perform command remapping initiated by
16432 Fremap_command directly for speed.
16433 (Fkey_binding): Use Fremap_command for command remapping.
16434 (where_is_internal): Handle new command remapping representation.
16435 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
16436 staticpro them. Defsubr Fremap_command.
16437
16438 * keymap.h (Fremap_command): Declare extern.
16439 (is_command_symbol): Remove extern.
16440
16441 * keyboard.c (command_loop_1): Use Fremap_command for command
16442 remapping; now try command remapping for all symbols.
16443
164442002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
16445
16446 * coding.h (run_pre_post_conversion_on_str): Add prototype.
16447
164482002-02-23 Jason Rumney <jasonr@gnu.org>
16449
16450 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
16451 on the string before encoding it.
16452 (Fw32_get_clipboard_data): Run post-read-conversion on the string
16453 after decoding it.
16454
16455 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
16456
164572002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16458
16459 * w32term.c (enter_timestamp): Remove unused static variable to
16460 prevent warning.
16461
16462 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
16463
164642002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
16465
16466 * w16select.c (Fw16_get_clipboard_data): Fix last change.
16467
16468 * xselect.c (selection_data_to_lisp_data): Fix last change.
16469
164702002-02-22 Jason Rumney <jasonr@gnu.org>
16471
16472 * w32term.h (struct w32_output): New member menu_command_in_progress.
16473
16474 * w32menu.c (menubar_selection_callback): Free the menu and
16475 clear the menu_command_in_progress flag.
16476
16477 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
16478 (menu_free_timer): New variable.
16479 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
16480 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
16481 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
16482 menu command is in progress.
16483 <WM_COMMAND>: Set the menu_command_in_progress flag.
16484 Kill any menu_free_timer that is running.
16485
16486 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
16487 Call ExtTextOutA rather than ExtTextOut.
16488
164892002-02-22 Eli Zaretskii <eliz@gnu.org>
16490
16491 * puresize.h (BASE_PURESIZE): Increase to 755000.
16492
164932002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
16494
16495 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
16496 on the string before encoding it.
16497 (Fw16_get_clipboard_data): Run post-read-conversion on the string
16498 after decoding it.
16499
165002002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
16501
16502 Support for ICCCM Extended Segments in X selections:
16503
16504 * xselect.c <Qcompound_text_no_extensions>: New variable.
16505 (syms_of_xselect): Intern and staticpro it.
16506 (selection_data_to_lisp_data): Run post-read-conversion on decoded
16507 selection text.
16508 (lisp_data_to_selection_data): If next-selection-coding-system is
16509 compound-text-no-extensions, set the type of selection to be
16510 compound-text.
16511
16512 * xterm.h (x_encode_text): Update prototype.
16513
16514 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
16515 callers changed. If SELECTIONP is non-zero, run the
16516 pre-write-conversion function before encoding the selection text.
16517
165182002-02-21 Kim F. Storm <storm@cua.dk>
16519
16520 * frame.c (syms_of_frame): Change mouse-highlight default to t.
16521
16522 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
16523 Correct composing of language-change event.
16524
165252002-02-20 Kim F. Storm <storm@cua.dk>
16526
16527 * keyboard.c (menu_bar_items): Don't include keymap or local-map
16528 bindings at PT when building menu (the menu is not updated often
16529 enough for this to work reliable).
16530 (tool_bar_items): Likewise.
16531 (current_active_maps): Removed unused (and buggy) function.
16532
165332002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16534
16535 * xfns.c (gif_load): Use correct width and height for GIF images.
16536
165372002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
16538
16539 * floatfns.c (Fatan): Accept an optional second arg and call
16540 atan2 if passed 2 args.
16541
165422002-02-18 Jason Rumney <jasonr@gnu.org>
16543
16544 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
16545
165462002-02-17 Jason Rumney <jasonr@gnu.org>
16547
16548 * w32term.c (x_autoselect_window_p): New variable.
16549 (syms_of_w32term): DEFVAR_BOOL and initialize it.
16550 (note_mouse_movement): Use it.
16551
16552 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
16553
16554 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
16555
16556 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
16557 New variables.
16558 (syms_of_w32fns): Intern and staticpro them.
16559 (x_frame_parms) <"fullscreen">: New parameter.
16560 (x_fullscreen_move, x_set_fullscreen): New functions.
16561 (x_set_frame_parameters): Support Qfullscreen.
16562 (x_real_positions): Save x/y_pixels_diff frame params.
16563 (x_figure_window_size): Support full-screen frames.
16564 (Fx_create_frame): Default the fullscreen parameter.
16565
16566 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
16567 (x_fullscreen_adjust): New functions.
16568 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
16569 fullscreen. Call x_check_fullscreen_move, and set the
16570 want_fullscreen member of output_data.w32
16571 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
16572
16573 * w32term.h: New enum for FULLSCREEN_* constants.
16574 (struct w32_output): New members want_fullscreen, x_pixels_diff,
16575 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
16576 (x-fullscreen-adjust): New prototype.
16577
165782002-02-17 Kim F. Storm <storm@cua.dk>
16579
16580 * frame.c: (Vmouse_highlight): New variable.
16581 (syms_of_frame): DEFVAR_LISP it.
16582
16583 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 16584
048addec 16585 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 16586
048addec
JD
16587 * xterm.c (disable_mouse_highlight): Removed variable.
16588 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
16589 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16590 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
16591 and on after keyboard input.
16592 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 16593
048addec 16594 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 16595
048addec
JD
16596 * msdos.c (disable_mouse_highlight): Removed variable.
16597 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16598 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
16599 (internal_terminal_init): Initialize mouse_face_hidden.
16600 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
16601 and on after keyboard input.
4f1b1854 16602
048addec 16603 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 16604
048addec
JD
16605 * w32term.c (disable_mouse_highlight): Removed variable.
16606 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
16607 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
16608 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
16609 and on after keyboard input.
16610 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 16611
048addec 166122002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 16613
048addec
JD
16614 * msdos.c (last_mouse_window): New variable.
16615 (dos_rawgetc): Fix last change--if the mouse is in the same window
16616 as recorded in last_mouse_window, don't select this window.
5cb6905d 16617
048addec 16618 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 16619
048addec
JD
16620 * msdos.c (x_autoselect_window_p): New variable.
16621 (syms_of_msdos): Defvar it.
16622 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
16623 which the last mouse movement occured, unless it is already selected.
437dfb9f 16624
048addec
JD
16625 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
16626 New variables.
16627 (syms_of_xdisp): DEVFAR them.
16628 (hscroll_window_tree): Use automatic_hscroll_margin and
16629 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 16630
048addec 166312002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 16632
048addec
JD
16633 * xterm.c (x-autoselect-window): New variable.
16634 (note_mouse_movement): Use it.
9f696a00 16635
048addec 16636 * keyboard.c: Do not include "systime.h" twice.
d57966d7 16637
048addec 166382002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 16639
bfa02563 16640 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
d57966d7 16641
048addec 16642 * alloc.c (NSTATICS): Increase to 1280.
74779f52 16643
048addec 166442002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 16645
048addec 16646 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 16647
048addec
JD
16648 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
16649 (Vx_super_keysym): New variables.
16650 (syms_of_xterm): DEFVAR_LISP them.
16651 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
16652 variables to determine which keys to use for the various modifiers.
a474d59c 16653
048addec 166542002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 16655
048addec
JD
16656 * window.c: (Vmode_line_in_non_selected_windows): Removed.
16657 (mode_line_in_non_selected_windows): New variable.
16658 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 16659
048addec
JD
16660 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
16661 Use mode_line_in_non_selected_windows.
16662 (mode_line_in_non_selected_windows): Declare extern.
16663 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 16664
048addec 166652002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 16666
048addec
JD
16667 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
16668 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
16669 (Fclear_this_command_keys): Doc fixes.
2d10309f 16670
048addec
JD
16671 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
16672 (update_face_from_frame_parameter): Increment face_change_count
16673 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 16674
048addec
JD
16675 * xdisp.c (QCpropertize): New variable.
16676 (mode_line_proptrans_alist): New variable.
16677 (display_mode_element): New arg PROPS; all calls changed.
16678 Implement this, for strings.
16679 Handle literal output of strings by sharing the
16680 main-line code for strings, using local var `literal'.
16681 Handle :propertize feature.
16682 (syms_of_xdisp): Initialze and staticpro QCpropertize and
16683 mode_line_proptrans_alist.
0b1e6b54 16684
048addec 166852002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 16686
048addec
JD
16687 * window.c: (Vmode_line_in_non_selected_windows): New variable.
16688 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 16689
048addec
JD
16690 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
16691 (CURRENT_MODE_LINE_FACE_ID): Use it.
16692 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 16693
048addec
JD
16694 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
16695 to get mode line face.
e17144de 16696
048addec 166972002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 16698
048addec
JD
16699 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
16700 variables; cus-start.el doesn't need them anymore.
44368f8f 16701
048addec 167022002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 16703
048addec
JD
16704 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
16705 reduction. This fixes a display problem where stray newlines were
16706 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 16707
048addec 167082002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 16709
048addec 16710 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 16711
048addec 16712 * xdisp.c (display_mode_lines): Fix last change.
453c5510 16713
048addec 167142002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 16715
048addec
JD
16716 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
16717 match each other.
16718 (w32_load_system_font): Prevent Cleartype fonts from loading.
16719 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 16720
048addec 167212002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 16722
048addec
JD
16723 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
16724 (CURRENT_MODE_LINE_HEIGHT): Use it.
16725 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16726
048addec
JD
16727 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
16728 (pos_visible_p, handle_face_prop): Likewise.
16729 (display_mode_lines): Likewise, but for the real selected window.
16730 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 16731
048addec
JD
16732 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
16733 in non-selected windows.
16734 (realize_basic_faces): Realize it.
16735 (syms_of_term): Intern and staticpro it.
308dd672 16736
048addec 167372002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 16738
048addec
JD
16739 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
16740 Changed mail addresses to emacs-devel@gnu.org.
308dd672 16741
048addec 167422002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 16743
048addec
JD
16744 * fileio.c (Fsubstitute_in_file_name): If the file name includes
16745 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 16746
048addec 16747 * floatfns.c (Fround): Doc fix.
3c1e6b46 16748
048addec 167492002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 16750
048addec 16751 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 16752
048addec 167532002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 16754
048addec 16755 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 16756
048addec 167572002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 16758
048addec
JD
16759 * keymap.c (where_is_internal): Only check whether definition is
16760 remapped if it fulfills is_command_symbol.
0065bb74 16761
048addec 167622002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 16763
048addec 16764 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 16765
048addec 16766 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 16767
048addec 167682002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 16769
048addec
JD
16770 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
16771 defining command remapping. Doc updated.
16772 (Flookup_key): Remap command through keymap if KEY is a symbol.
16773 (is_command_symbol): New function.
16774 (Fkey_binding): Use it. New optional argument NO-REMAP.
16775 Doc updated. Callers changed. Perform command remapping via
16776 recursive call unless that arg is non-nil.
16777 (where_is_internal): New argument no_remap. Callers changed.
16778 Call recursively to find original key bindings for a remapped
16779 comand unless that arg is non-nil.
16780 (Fwhere_is_internal): New optional argument NO-REMAP.
16781 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 16782
048addec 16783 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
3419757d 16784 (is_command_symbol): Add prototype.
0d8466cc 16785
048addec
JD
16786 * keyboard.c (Vthis_original_command): New variable.
16787 (syms_of_keyboard): DEFVAR_LISP it.
16788 (command_loop_1): Set it, and perform command remapping.
15fff01d 16789
048addec 167902002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 16791
048addec 16792 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 16793
048addec 167942002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 16795
048addec 16796 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 16797
048addec 167982002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 16799
048addec 16800 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 16801
048addec 168022002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 16803
048addec 16804 * filelock.c (S_ISLNK): Define if not defined.
3a232704 16805
048addec 168062002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 16807
048addec 16808 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 16809
048addec
JD
16810 * lread.c (read1): Redesign strategy for force_multibyte and
16811 force_singlebyte. Now is_multibyte records whether read_buffer
16812 is multibyte. Encountering any multibyte character makes it so.
4e02881b 16813
048addec 168142002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 16815
048addec
JD
16816 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
16817 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 16818
048addec 168192002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 16820
048addec
JD
16821 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
16822 latter never being defined on GNU/Linux.
749f499f 16823
048addec 168242002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 16825
048addec
JD
16826 * xfaces.c (realize_default_face): Don't set the weight and slant of
16827 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 16828
048addec 168292002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 16830
048addec
JD
16831 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
16832 Call cancel_hourglass unconditionally.
d0fd26dd 16833
048addec
JD
16834 * eval.c (Fsignal): Remove duplicated declaration of
16835 the variable `display_hourglass_p'.
b4c45162 16836
048addec 168372002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 16838
048addec 16839 * editfns.c (region_limit): Nicer error message.
c95eaa61 16840
048addec
JD
16841 * coding.c (decode_composition_emacs_mule):
16842 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 16843
048addec
JD
16844 * callint.c (check_mark): New arg to specify clearer error message.
16845 Callers changed.
c95eaa61 16846
048addec 168472002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 16848
048addec 16849 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 16850
048addec 168512002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 16852
048addec
JD
16853 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
16854 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
16855 Fix doc-strings.
c95eaa61 16856
048addec 168572002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 16858
048addec 16859 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 16860
048addec
JD
16861 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
16862 and scroll_up_aggressively.
c95eaa61 16863
048addec 168642002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 16865
048addec 16866 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 16867
048addec 168682002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 16869
048addec
JD
16870 * textprop.c (Fnext_property_change, Fnext_single_property_change)
16871 (Fprevious_property_change, Fprevious_single_property_change):
16872 Stay within the narrowed-buffer boundaries.
e2c3786a 16873
048addec 168742002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 16875
048addec
JD
16876 * term.c (Ftty_display_color_cells): New function.
16877 (syms_of_term): Defsubr it.
16878 (Ftty_display_color_cells, Ftty_display_color_p): Change the
16879 argument name to DISPLAY. Doc fix.
bf794306 16880
048addec
JD
16881 * dispextern.h: Add prototype for set_tty_color_mode and
16882 tty_setup_colors.
bf794306 16883
048addec 168842002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 16885
048addec
JD
16886 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
16887 If region left to draw is not what was expected, mark the frame as
16888 garbaged.
62582985 16889
048addec
JD
16890 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
16891 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 16892
048addec 168932002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 16894
048addec
JD
16895 * w32term.c (x_update_window_begin): Only hide caret if
16896 w32_use_visible_system_caret is set.
16897 (x_update_window_end): Only show caret if
16898 w32_use_visible_system_caret is set.
16899 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 16900
048addec 16901 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 16902
048addec 169032002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 16904
048addec
JD
16905 * unexelf.c (unexec): Define n so as to cause compilation error
16906 for the code where people have often written n instead of nn.
1e9a6186 16907
048addec 16908 * .gdbinit (hookpost-run): Defined.
1e9a6186 16909
048addec 169102002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 16911
048addec 16912 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 16913
048addec 169142002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 16915
048addec
JD
16916 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
16917 if fullscreen is being set.
7c75be36 16918
048addec 169192002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 16920
048addec
JD
16921 * minibuf.c (Fminibuffer_contents)
16922 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
16923 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 16924
048addec 169252002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 16926
048addec 16927 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 16928
048addec 169292002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 16930
048addec
JD
16931 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
16932 height before comparison.
16933 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 16934
048addec 169352002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 16936
048addec
JD
16937 * w32term.c (w32_system_caret_width): Remove.
16938 (w32_use_visible_system_caret): New user flag.
16939 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
16940 Windows reports a screen reader running.
16941 (x_update_window_begin): Hide the system caret.
16942 (x_update_window_end): Show the system caret.
16943 (x_display_and_set_cursor): Don't draw a cursor when
16944 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 16945
048addec
JD
16946 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
16947 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
16948 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
16949 the user requests it. Use system default width when creating.
16950 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 16951
048addec
JD
16952 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
16953 New window messages.
905cc05a 16954
048addec 169552002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 16956
048addec 16957 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 16958
048addec 169592002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 16960
048addec 16961 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 16962
048addec 169632002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 16964
048addec 16965 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 16966
048addec 169672002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 16968
048addec
JD
16969 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
16970 that Windows returns. If a double check fails, try to guess how
16971 ExtTextOut is going to act.
4d0fa4f3 16972
048addec
JD
16973 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
16974 in place of stricmp.
16975 (w32_list_synthesized_fonts): Removed.
16976 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
16977 (struct enumfont_t): New element; list.
16978 (enum_font_cb2): List all style and charset variations of a font.
16979 (Fw32_select_font): New optional argument; include_proportional.
16980 Exclude vertical fonts. Exclude proportional fonts unless
16981 include_proportional is non-nil.
16982 (w32_enable_synthesized_fonts): Change to a boolean.
16983 (Fw32_send_sys_command): Doc fix.
493faf20 16984
048addec 169852002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 16986
048addec
JD
16987 * dispnew.c (update_frame): Move the variable `tem' to the block
16988 where it is used.
4971e491 16989
048addec 169902002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 16991
048addec
JD
16992 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
16993 call to face-set-after-frame-default.
4971e491 16994
048addec 169952002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 16996
048addec
JD
16997 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
16998 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 16999
048addec 170002002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 17001
048addec
JD
17002 * window.c (enlarge_window): When exceeding size of parent,
17003 directly delete all the siblings instead of trying to resize it.
201c831a 17004
048addec 170052002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 17006
048addec 17007 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 17008
048addec 170092002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 17010
048addec 17011 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 17012
048addec 170132002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 17014
048addec
JD
17015 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
17016 is invisible. This can happen if cursor is on top line of a
17017 window, and we switch to a buffer with a header line.
d77fbc16 17018
048addec 17019 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 17020
048addec 170212002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 17022
048addec
JD
17023 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
17024 `dont_resize' only when used.
61e3b944 17025
048addec 17026 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 17027
048addec 170282002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 17029
048addec
JD
17030 * xdisp.c (display_mode_element): When computing charpos, depend
17031 on multibyteness of elt, not the text in field.
8af01033 17032
048addec 170332002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 17034
048addec
JD
17035 * buffer.c (Fkill_all_local_variables):
17036 Increment `update_mode_lines' only once.
7363986a 17037
048addec 170382002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 17039
048addec
JD
17040 * lisp.h (adjust_after_replace_noundo)
17041 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 17042
048addec 17043 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 17044
048addec 170452002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 17046
048addec
JD
17047 Support for the --color command-line argument and tty-color-mode
17048 frame parameter:
f1a85b89 17049
048addec
JD
17050 * term.c (tty_default_color_capabilities, tty_setup_colors)
17051 (set_tty_color_mode): New functions.
17052 (term_init): Call tty_default_color_capabilities.
17053 (Qtty_color_mode_alist): New variable.
17054 (syms_of_term): Intern and staticpro it.
f1a85b89 17055
048addec
JD
17056 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
17057 frames.
17058 (do_switch_frame): For termcap frames, switch the tty
17059 color mode as specified by the frame's parameters.
17060 (Qtty_color_mode): New variable.
17061 (syms_of_frame): Intern and staticpro it.
3a62677f 17062
048addec
JD
17063 * emacs.c (USAGE2): Add the --color option.
17064 (standard_args): Ditto.
72244db2 17065
048addec
JD
170662002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17067
17068 * xterm.h (struct x_output): New members want_fullscreen,
17069 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
17070 y_pixels_outer_diff.
17071 New enum for FULLSCREEN_* constants.
17072 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
17073 is NULL.
17074 (x_fullscreen_adjust): Add prototype.
3a62677f 17075
048addec
JD
17076 * emacs.c (USAGE2): Add the new full-screen arguments.
17077 (standard_args): Ditto.
3a62677f 17078
048addec
JD
17079 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
17080 New variables.
17081 (syms_of_xfns): Intern and staticpro them.
17082 (x_frame_parms) <"fullscreen">: New parameter.
17083 (x_fullscreen_move, x_set_fullscreen): New functions.
17084 (x_set_frame_parameters): Support for Qfullscreen.
17085 (x_real_positions): More accurate computation of the frame position.
17086 (x_figure_window_size): Support full-screen frames.
17087 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 17088
048addec
JD
17089 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
17090 (XTread_socket) <Expose>: Call x_check_fullscreen.
17091 <ConfigureNotify>: Don't resize to fullscreen.
17092 Call x_check_fullscreen_move, and set the want_fullscreen member of
17093 output_data.x.
3a62677f 17094
048addec 170952002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 17096
048addec
JD
17097 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
17098 for mice with more than 3 buttons.
b8523839 17099
048addec
JD
17100 * w32term.c (parse_button): New parameter xbutton. Callers changed.
17101 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 17102
048addec
JD
17103 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
17104 (syms_of_w32fns): DEFVAR_BOOL it.
17105 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 17106
048addec 171072002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 17108
048addec 17109 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 17110
048addec 171112002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 17112
048addec 17113 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 17114
048addec 171152002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 17116
048addec
JD
17117 * .gdbinit (xbuffer): Remove address operator since data is now a
17118 pointer.
c93674bb 17119
048addec 171202002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 17121
048addec 17122 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 17123
048addec 17124 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 17125
048addec 171262002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 17127
048addec
JD
17128 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
17129 when checking for multiple frames.
91175673 17130
048addec 171312002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 17132
048addec
JD
17133 * window.c (delete_window): Rewrite the code for changing the
17134 selected window to handle the case where WINDOW is not a leaf.
91175673 17135
048addec 171362002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 17137
048addec
JD
17138 * process.c (send_process): Set src_multibyte to 1 after the call
17139 top setup_coding_system, not before the call.
e0fead5d 17140
048addec 171412002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 17142
048addec
JD
17143 * xmenu.c (set_frame_menubar, xmenu_show):
17144 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 17145
048addec
JD
17146 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
17147 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 17148
048addec 171492002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 17150
048addec 17151 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 17152
048addec 17153 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 17154
048addec 17155 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 17156
048addec 171572002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 17158
048addec
JD
17159 * insdel.c (make_gap_larger): Make sure buffer size does not
17160 overflow range of int.
62854fe2 17161
048addec 171622002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 17163
048addec
JD
17164 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17165 OVERLAPS_P.
656f46bb 17166
048addec 17167 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 17168
048addec
JD
17169 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
17170 to the left or to the right of the pointer, put it against
17171 the left screen edge.
17172 (x_frame_parms): Add missing braces around initializer.
036e218d 17173
048addec
JD
17174 * w32term.c (x_setup_relief_colors): Don't compute an image's
17175 background color if it doesn't have a Pixmap.
17176 (notice_overwritten_cursor): Don't depend on
17177 output_cursor and updated_area. Compare pixel coordinates with
17178 window's cursor pixel coordinates.
17179 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
17180 Call notice_overwritten_cursor with new arg list.
17181 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
17182 unconditionally.
17183 (x_draw_image_relief): Use predefined macro instead of
17184 constant when the value of `tool_bar_button_relief' is negative.
036e218d 17185
048addec 17186 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 17187
048addec 171882002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 17189
048addec 17190 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 17191
048addec 171922002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 17193
048addec
JD
17194 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
17195 (Fkey_binding): Try the `keymap' property map first.
17196 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
17197 minor mode bindings.
90647b07 17198
048addec 171992002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 17200
3419757d 17201 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
ace9b298 17202
048addec 172032002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 17204
048addec
JD
17205 * keyboard.c (read_key_sequence): Handle the keymap property
17206 before minor mode maps.
9fbc32aa 17207
048addec
JD
17208 * editfns.c (Fformat): Update thissize from field_width
17209 based on the actual width, in the string case.
036e218d 17210
048addec 172112002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 17212
048addec
JD
17213 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
17214 when used as truth value to prevent gcc warnings.
9fbc32aa 17215
048addec
JD
17216 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
17217 * w32proc.c: Include <config.h>.
9fbc32aa 17218
048addec 172192002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 17220
048addec
JD
17221 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
17222 not EMACS_INT, to make them compatible with DEFVAR_INT.
17223 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 17224
048addec 172252002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 17226
048addec
JD
17227 * print.c (print_object): Test print_escape_nonascii only for
17228 unibyte strings.
17229 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
17230 when outputting to a multibyte buffer.
9fbc32aa 17231
048addec 172322001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 17233
048addec
JD
17234 * print.c (print_object): In multibyte string, use hex escapes.
17235 Use octal only for unibyte strings.
17236 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 17237
048addec
JD
17238 * lread.c (read_escape): New arg BYTEREP for reporting whether
17239 escape forces unibyte or multibyte.
17240 (read1): When reading a string, take note of that info.
0142178a 17241
048addec 172422001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 17243
048addec
JD
17244 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
17245 comparison to test lisp value returned by Fget.
d4824a5d 17246
048addec 172472001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 17248
048addec 17249 * lisp.h (max_specpdl_size): Add declaration.
b1356234 17250
048addec 17251 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 17252
048addec
JD
17253 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
17254 Handle modifier bits. Correct typo in error message.
99e380ee 17255
048addec 172562001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 17257
048addec
JD
17258 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
17259 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
17260 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
17261 Update calls to Fdefine_abbrev.
17262 (write_abbrev): Update for changed data format.
17263 Don't list "system" abbrevs.
17264 (Fexpand_abbrev): Update use count with new data format.
17265 (describe_abbrev): Update for changed data format.
17266 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 17267
048addec 17268 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 17269
048addec 17270 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 17271
048addec
JD
17272 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
17273 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 17274
048addec
JD
17275 * keymap.c (Flookup_key): Error message if key has wrong data type.
17276 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
17277 (exclude_key): New variable.
59a86c99 17278
048addec 172792001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 17280
048addec
JD
17281 * xterm.c (x_setup_relief_colors): Don't compute an image's
17282 background color if it doesn't have a Pixmap.
eb77a5f4 17283
048addec
JD
17284 * xterm.c (notice_overwritten_cursor): Don't depend on
17285 output_cursor and updated_area. Compare pixel coordinates with
17286 window's cursor pixel coordinates.
17287 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
17288 Call notice_overwritten_cursor with new arg list.
17289 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
17290 unconditionally.
eb77a5f4 17291
048addec
JD
17292 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
17293 height of the cursor line to the amount to scroll.
eb77a5f4 17294
048addec 172952001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 17296
048addec
JD
17297 * intervals.c (set_point_both): The position after an invisible,
17298 intangible character is not an acceptable stopping point.
bb313871 17299
048addec 173002001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 17301
048addec
JD
17302 * window.c (enlarge_window): In new preserve_before code, convert
17303 CURBEG from lisp object to integer before doing arithmetic.
6052529b 17304
048addec 173052001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 17306
048addec 17307 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 17308
048addec 173092001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 17310
048addec
JD
17311 * keyboard.c (record_char): Ignore duplicate help-echo events only
17312 separated by mouse-movement. When tracking mouse, only record
17313 first and last mouse-movement event in same window.
17314 Don't record mouse-movement events in keyboard macros.
3ce081f5 17315
048addec 173162001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 17317
048addec
JD
17318 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
17319 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 17320
048addec
JD
17321 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
17322 instead of Fstring_as_unibyte.
9fabb2f5 17323
048addec 173242001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 17325
048addec 17326 The following changes remove mocklisp support:
9fabb2f5 17327
048addec 17328 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 17329
048addec
JD
17330 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
17331 `Qmocklisp' and `Qmocklisp_arguments'.
17332 Remove prototype of syms_of_mocklisp.
2fa0eedf 17333
048addec 17334 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 17335
048addec
JD
17336 * callint.c: Do not include mocklisp.h.
17337 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 17338
048addec
JD
17339 * eval.c: Remove variables `Qmocklisp_arguments',
17340 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
17341 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
17342 Do not test for mocklisp case.
17343 (Fwhile): Remove unused variable `tem'.
17344 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 17345
048addec 17346 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 17347
048addec 17348 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 17349
048addec 17350 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 17351
048addec 173522001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 17353
048addec
JD
17354 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
17355 to the left or to the right of the pointer, put it against
17356 the left screen edge.
6108b49c 17357
048addec 173582001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 17359
048addec
JD
17360 * Makefile.in (distclean): Remove .gdbinit if we are building
17361 outside the source tree.
5eea19a4 17362
048addec 173632001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 17364
048addec 17365 * w32.c (emacs_root_dir): New function.
5eea19a4 17366
048addec 17367 * msdos.c (emacs_root_dir): New function.
5eea19a4 17368
048addec
JD
17369 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
17370 of the current drive as the fallback for default_directory.
438e57dd 17371
048addec
JD
17372 * dired.c (file_name_completion): Run the elements of
17373 completion-ignored-extensions through ENCODE_FILE.
438e57dd 17374
048addec
JD
17375 * lisp.h (scmp): Remove prototype, since it's now a static
17376 function private to dired.c.
c88e5347 17377
048addec 173782001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 17379
048addec
JD
17380 * dired.c (scmp): Function moved from minibuf.c.
17381 Delete multibyte handling--used only on encoded strings.
59ce1461 17382
048addec 17383 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 17384
048addec 17385 * fns.c (merge): Add QUIT call.
59ce1461 17386
048addec 173872001-12-18 Dave Love <fx@gnu.org>
8727d588 17388
048addec
JD
17389 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
17390 language/georgian.el.
8727d588 17391
048addec 173922001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 17393
048addec
JD
17394 * Makefile.in (lisp, shortlisp): Synchronize with changes to
17395 lisp/Makefile.in:DONTCOMPILE.
cc63037e 17396
048addec 173972001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 17398
048addec
JD
17399 * xdisp.c (window_box_height): Do not return negative values.
17400 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 17401
048addec 17402 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 17403
048addec 17404 * term.c (keys): Likewise.
deece6f5 17405
048addec 17406 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 17407
048addec 174082001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 17409
048addec
JD
17410 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
17411 patch (COMPOSING_P, not COMPOSING).
28ff4293 17412
048addec 174132001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 17414
048addec 17415 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 17416
048addec
JD
17417 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
17418 before calling decode_coding.
9b46de40 17419
048addec 17420 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 17421
048addec
JD
17422 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
17423 instead of only for COMPOSITION_DISABLED.
9b46de40 17424
048addec 174252001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 17426
048addec 17427 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 17428
048addec 17429 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 17430
048addec
JD
17431 * buffer.h (struct buffer): New field `display_error_modiff'.
17432 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 17433
048addec 17434 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 17435
048addec
JD
17436 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
17437 Call redisplay_window, but not if display_error_modiff field says no.
17438 (redisplay_window_error): New function.
17439 (displayed_buffer): New variable.
17440 (redisplay_internal, redisplay_windows): Call the new functions
17441 instead of redisplay_window directly.
2cd23960 17442
048addec 174432001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 17444
048addec 17445 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 17446
048addec 174472001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 17448
048addec 17449 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 17450 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 17451 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 17452
048addec 174532001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 17454
048addec
JD
17455 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
17456 parameter have a numeric value all the time.
f6fa0866 17457
048addec 17458 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 17459
048addec 174602001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 17461
048addec 17462 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 17463
048addec
JD
17464 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
17465 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 17466
048addec 174672001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 17468
048addec
JD
17469 * xdisp.c (move_it_vertically_backward): Change heuristic
17470 for the case that we didn't move far enough initially.
91c153e2 17471
048addec
JD
17472 * window.c (Frecenter): Simplify computation in the case of window
17473 system frames and ARG < 0; use window_box_height.
65b7d3e7 17474
048addec 174752001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 17476
048addec
JD
17477 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
17478 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 17479
048addec 174802001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 17481
048addec
JD
17482 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
17483 arg is negative.
be676094 17484
048addec 174852001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 17486
048addec
JD
17487 * m/hp800.h: Split the __hpux conditional into the parts
17488 that are right for GNU/Linux too and the parts that are not.
17489 Use the former if GNU_LINUX.
17490 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 17491
048addec 17492 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 17493
048addec 174942001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 17495
048addec
JD
17496 * macros.c, msdos.c, w16select.c: Change doc-string comments to
17497 `new style' [w/`doc:' keyword].
032a857d 17498
048addec 174992001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 17500
048addec
JD
17501 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
17502 before using.
b6270150 17503
048addec 175042001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 17505
048addec
JD
17506 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
17507 keyword].
98cbb9fa 17508
048addec 175092001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 17510
048addec 17511 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 17512
048addec 17513 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 17514
048addec 175152001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 17516
048addec 17517 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
78819ebb 17518 Add comment to explain where the struct came from.
048addec
JD
17519 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
17520 (add_menu_item): Process pop-up menus first to avoid memory leak.
17521 (add_menu_item, w32_menu_display_help): Use `help' field as
17522 Lisp_Object.
17523 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 17524
048addec 175252001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 17526
048addec 17527 * COPYING: Moved back.
fa336b91 17528
048addec
JD
17529 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
17530 Add parentheses around && within ||.
077907d4 17531
048addec 17532 * indent.c (compute_motion): Likewise.
aa2af83a 17533
048addec 17534 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 17535
048addec
JD
17536 * coding.c (setup_coding_system, shrink_encoding_region)
17537 (Fdecode_sjis_char): Likewise.
60a653f1 17538
048addec 175392001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 17540
048addec
JD
17541 * xdisp.c (display_mode_element): Don't read past end of string if
17542 it ends with '%'.
60a653f1 17543
048addec
JD
17544 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
17545 can hold.
60a653f1 17546
048addec
JD
17547 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
17548 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
17549 type changed to Lisp_Object.
17550 (syms_of_data): DEFVAR_LISP them.
60a653f1 17551
048addec 175522001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 17553
048addec
JD
17554 * callproc.c (init_callproc): Set Vdata_directory based on the source
17555 location whenever Emacs was run uninstalled.
60a653f1 17556
048addec 175572001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 17558
048addec
JD
17559 * config.in (HAVE_WORKING_VFORK): New #undefs.
17560 * process.c (create_process):
17561 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
17562 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
17563 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
17564 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
17565 * m/intel386.h (HAVE_VFORK): Likewise.
17566 * m/mips-siemens.h (HAVE_VFORK): Likewise.
17567 * m/mips.h (HAVE_VFORK): Likewise.
17568 * s/freebsd.h (vfork): Remove #define.
17569 * s/lynxos.h (HAVE_VFORK): Remove #undef.
17570 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 17571
048addec 175722001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 17573
048addec
JD
17574 * s/hpux10.h (random): Add undef.
17575 (HAVE_RANDOM): Define it just once.
60a653f1 17576
048addec 175772001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17578
048addec 17579 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 17580
048addec 175812001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17582
048addec
JD
17583 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
17584 scroll bars of the frame before deleting the frame itself. If the
17585 frame has a widget, delete the frame with XtDestroyWidget, and do
17586 not call XDestroyWindow before that.
60a653f1 17587
048addec 175882001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 17589
048addec 17590 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 17591
048addec 17592 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 17593
048addec 175942001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 17595
048addec
JD
17596 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
17597 excessively large.
60a653f1 17598
048addec
JD
17599 * insdel.c (make_gap_larger): New function.
17600 (make_gap_smaller): New function.
17601 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
17602 Call make_gap_smaller if arg is negative.
60a653f1 17603
048addec 176042001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17605
048addec
JD
17606 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
17607 Pass a dummy argument when calling interrupt_signal.
17608 (parse_menu_item): Mark disabled items before checking for empty def.
17609 (read_char_minibuf_menu_prompt): Make safety more visible.
17610 (read_key_sequence): Add a `first_unbound' variable.
17611 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
17612 unbound prefix as soon as we can detect it.
60a653f1 17613
048addec
JD
17614 * doc.c (Fsnarf_documentation): Add prototype.
17615 (get_doc_string): Handle negative arguments.
17616 (Fdocumentation): Use AREF and ASIZE.
17617 Move the calls to get_doc_string to a single place.
17618 Don't confuse an interactive-spec for a docstring reference.
17619 (Fdocumentation_property): Take advantage of the fact that
17620 get_doc_string now ignores the sign of the docstring position.
60a653f1 17621
048addec 17622 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 17623
048addec 176242001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17625
a64387ee 17626 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 17627
048addec 176282001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17629
048addec
JD
17630 * xterm.c (x_draw_image_relief): Use predefined macro instead of
17631 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 17632
048addec 176332001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 17634
048addec
JD
17635 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
17636 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 17637
048addec 17638 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 17639
048addec 176402001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17641
048addec 17642 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 17643
048addec 176442001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 17645
048addec 17646 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 17647
048addec 176482001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 17649
f63fd14e 17650 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 17651
048addec
JD
17652 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
17653 [!WM_MOUSELEAVE]: Define.
60a653f1 17654
048addec
JD
17655 * w32menu.c (current_popup_menu, get_menu_item_info):
17656 (set_menu_item_info): New vars.
17657 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
17658 (w32_menu_show): Set current_popup_menu.
17659 (add_menu_item): Allocate new strings for owner-drawn menu items
17660 and help strings.
17661 Use owner-draw for disabled menu items again.
17662 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
17663 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 17664
048addec
JD
17665 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
17666 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
17667 <WM_EXITMENULOOP>: Free menu strings.
17668 <WM_MOUSELEAVE>: Stop tracking mouse.
17669 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 17670
048addec
JD
17671 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
17672 and mouse face.
60a653f1 17673
048addec 176742001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 17675
048addec
JD
17676 The following changes add left-fringe and right-fringe
17677 frame parameters to adjust fringe widths, or remove one or
17678 both fringes.
60a653f1 17679
048addec
JD
17680 * frame.h (struct frame): Remove trunc_area_pixel_width and
17681 trunc_area_cols fields.
17682 (Qleft_fringe, Qright_fringe): Declare.
17683 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 17684
048addec
JD
17685 * frame.c (Qleft_fringe, Qright_fringe): New vars.
17686 (syms_of_frame): Initialize them.
60a653f1 17687
048addec
JD
17688 * window.c (coordinates_in_window): Handle separate left and right
17689 fringe widths.
60a653f1 17690
048addec
JD
17691 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
17692 and fringe_cols fields.
17693 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
17694 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
17695 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
17696 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
17697 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
17698 (x_compute_fringe_widths): Add prototype.
60a653f1 17699
048addec
JD
17700 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
17701 fill fringe evenly with small dashes.
f63fd14e 17702 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
17703 clip the new ZV bitmap to avoid jitter between rows.
17704 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
17705 background. Don't draw fringe bitmaps if fringe width is zero.
17706 (x_compute_fringe_widths): New function.
17707 (x_new_font, x_set_window_size_1): Use it.
60a653f1 17708
048addec
JD
17709 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
17710 (x_set_frame_parameters): Process `font' parameter before other
17711 parameters as fringe widths depend on it.
17712 (x_set_fringe_width): New function.
17713 (x_figure_window_size): Use x_compute_fringe_widths.
17714 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
17715 parameters.
60a653f1 17716
048addec
JD
17717 * widget.c (set_frame_size): Use x_compute_fringe_widths.
17718 (EmacsFrameSetCharSize): Ditto.
60a653f1 17719
048addec
JD
17720 * w32term.h: Merged changes from xterm.h.
17721 * w32term.c: Merged changes from xterm.c.
17722 * w32fns.c: Merged changes from xfns.c.
60a653f1 17723
048addec 177242001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17725
048addec 17726 * COPYING: Removed.
60a653f1 17727
048addec 177282001-11-29 Dave Love <fx@gnu.org>
60a653f1 17729
048addec
JD
17730 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
17731 extra extra slot.
17732 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 17733
048addec 177342001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17735
048addec
JD
17736 * fileio.c (file-name-coding-system)
17737 (default-file-name-coding-system): Doc fix (links to referenced
17738 variables added).
60a653f1 17739
048addec 177402001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17741
048addec
JD
17742 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
17743 Add dummy uses of gcproN variables.
60a653f1 17744
048addec
JD
17745 * category.c (describe_category, describe_category_1)
17746 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
17747 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 17748
048addec 177492001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 17750
048addec 17751 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 17752
048addec
JD
17753 * Makefile.in (lispdir): New variable, referring to build dir.
17754 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 17755
048addec 177562001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 17757
048addec
JD
17758 * w32menu.c (w32_menu_display_help): Actually add the new argument
17759 OWNER.
60a653f1 17760
048addec 177612001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 17762
048addec
JD
17763 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
17764 menu items. From David Ponce <dponce@wanadoo.fr>.
17765 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
17766 conditionally.
f63fd14e 17767 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 17768 help event in the owner frame's keyboard buffer.
60a653f1 17769
048addec
JD
17770 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
17771 (Fx_show_tip): Don't subtract last width from row width.
17772
17773 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
17774 (w32_read_socket): Use EQ to compare frames.
60a653f1 17775
048addec 177762001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 17777
048addec
JD
17778 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
17779 OVERLAPS_P.
60a653f1 17780
048addec 177812001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17782
048addec
JD
17783 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
17784 `gcpro3' and `gcpro4'.
60a653f1 17785
048addec 17786 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 17787
048addec 177882001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17789
048addec 17790 * ccl.c: Use AREF and ASIZE.
60a653f1 17791
048addec 177922001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17793
048addec
JD
17794 * lisp.h (run_hook_list_with_args): Remove.
17795 (LIST_END_P): Fix call to wrong_type_argument.
17796 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 17797
048addec 177982001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17799
048addec
JD
17800 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
17801 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 17802
048addec
JD
17803 * eval.c: Use AREF and ASIZE.
17804 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 17805
048addec
JD
17806 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
17807 which match the end of the file-name.
17808 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
17809 is not a valid env var, but leave it as is instead.
60a653f1 17810
048addec
JD
17811 * keymap.c (access_keymap): Handle t bindings like nil bindings.
17812 Make nil bindings in char-tables transparent.
17813 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 17814
048addec 178152001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 17816
048addec
JD
17817 * textprop.c (set_text_properties_1): Allow START, END in either order.
17818 Do nothing if range is empty.
60a653f1 17819
048addec 17820 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 17821
048addec
JD
17822 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
17823 (clean): Not here.
60a653f1 17824
048addec 178252001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17826
048addec
JD
17827 * textprop.c (set_text_properties_1): Clearly mark that the
17828 interval should not be empty.
60a653f1 17829
048addec
JD
17830 * intervals.c (graft_intervals_into_buffer):
17831 Don't call set_text_properties_1 on an empty interval.
60a653f1 17832
048addec 178332001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 17834
048addec 17835 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 17836
048addec
JD
17837 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
17838 don't lose the data in it.
60a653f1 17839
048addec 178402001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 17841
048addec 17842 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 17843
c62aec78 17844 * buffer.c (Fkill_buffer): Likewise.
60a653f1 17845
c62aec78 17846 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 17847
048addec 178482001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 17849
048addec 17850 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 17851
048addec 178522001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17853
048addec
JD
17854 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
17855 Niemitalo <kon@iki.fi>.
60a653f1 17856
048addec 178572001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 17858
048addec 17859 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 17860
048addec
JD
17861 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
17862 (Fx_show_tip): Block input during frame creation.
17863 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 17864
048addec 178652001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 17866
048addec
JD
17867 * lread.c (Fload): Detect recursive load error for more than 3
17868 nestings of the same file.
17869 (Vrecursive_load_depth_limit): Variable deleted.
17870 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 17871
048addec 178722001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 17873
048addec
JD
17874 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
17875 mouse position if either left or top is not specified.
60a653f1 17876
048addec
JD
17877 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
17878 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
17879 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
17880 (my_create_tip_window): Assign tip_window.
17881 (x_create_tip_frame): Use same defaults as X.
17882 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 17883 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 17884
048addec
JD
17885 * w32term.c (x_after_update_window_line): Doc fix.
17886 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
17887 frames.
17888 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 17889
048addec
JD
17890 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
17891 for all Windowed systems.
60a653f1 17892
048addec 178932001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 17894
048addec
JD
17895 * msdos.c (IT_clear_screen): If the frame's faces are not yet
17896 realized, use the initial screen colors to clear the screen.
60a653f1 17897
048addec 178982001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 17899
048addec
JD
17900 * textprop.c (Fset_text_properties): Remove unused variables
17901 `unchanged', `prev_changed', `s' and `len'.
60a653f1 17902
048addec
JD
17903 * search.c (Freplace_match): Remove unused variable `inslen'.
17904
17905 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
17906
179072001-11-22 Jason Rumney <jasonr@gnu.org>
17908
17909 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
17910 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
17911 (my_create_tip_window): New function.
17912 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
17913 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
17914
179152001-11-20 Jason Rumney <jasonr@gnu.org>
17916
17917 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
17918 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
17919
17920 * w32fns.c (Vw32_system_coding_system): Remove.
17921 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
17922
179232001-11-19 Stefan Monnier <monnier@cs.yale.edu>
17924
17925 * fileio.c (Fwrite_region): Move choose_write_coding_system to
17926 after build_annotations.
17927
17928 * syntax.c (describe_syntax): Add dummy arg.
17929 (describe_syntax_1): Update call to describe_vector.
17930
17931 * category.c (describe_category): Add dummy arg.
17932 (describe_category_1): Update call to describe_vector.
17933
17934 * keymap.c (Fdescribe_vector): Add `describer' parameter.
17935 (describe_command, describe_translation): Add dummy second param.
17936 (describe_map): Call elt_describer with two arguments.
17937 (describe_vector_princ): Add `fun' parameter.
17938 Call it instead of the hardcoded `princ'.
17939 (describe_vector): Add arg `args'.
17940 Pass it as a new second argument to elt_describer.
60a653f1 17941
048addec 17942 * keymap.h (describe_vector): Update prototype.
60a653f1 17943
048addec
JD
17944 * frame.c: Don't include keymap.h any more.
17945 (keys_of_frame): Remove.
60a653f1 17946
048addec 17947 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 17948
048addec 17949 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 17950
048addec 179512001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 17952
048addec
JD
17953 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
17954 if defined, 0 otherwise.
17955 (MAP_FAILED): Define if not defined and use it to test mmap failure.
17956 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 17957
048addec 179582001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 17959
048addec 17960 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 17961
048addec 179622001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 17963
048addec
JD
17964 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
17965 (x_draw_bar_cursor): If the background color of the glyph under
17966 the cursor equals the frame's cursor color, use the glyph's
17967 foreground color for drawing the bar cursor.
17968 (x_after_update_window_line): Clear internal border in different
17969 circumstances.
17970 (w32_set_vertical_scroll_bar): Check for width and height > 0.
17971 (w32_draw_relief_rect): Correct relief by 1 pixel.
17972 (x_set_glyph_string_background_width):
17973 Set extends_to_end_of_line_p if the row's fill_line_p is set and
17974 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
17975 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
17976 if cursor_in_non_selected_windows is false.
17977 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
17978 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
17979 Notice if cursor gets overwritten.
17980 (notice_overwritten_cursor): Renamed from
17981 note_overwritten_text_cursor. Rewritten to take glyph widths
17982 into account, and to take X positions as parameters.
17983 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
17984 around call to x_draw_glyphs.
17985 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
17986 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
17987 color to use for image glyph reliefs.
17988 (x_draw_image_relief): Accept zero tool_bar_button_relief.
17989 (glyph_rect): Remove unused variable `area'.
60a653f1 17990
048addec
JD
17991 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
17992 some items.
17993 (x_set_internal_border_width): Set frame garbaged when window
17994 doesn't exist yet.
17995 (Fx_create_frame): Accept zero tool_bar_button_relief.
17996 (x_clear_image_1, four_corners_best, image_background)
17997 (image_background_transparent): New functions.
17998 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
17999 (gs_format): Add `:background' entry.
18000 (lookup_image): Set IMG's background color if specified.
18001 (pbm_load, xbm_load_image, png_load): Set IMG's background field
18002 when appropriate.
18003 (x_clear_image_1): Reset `background_valid' and
18004 `background_transparent_valid' fields.
18005 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
18006 calculating it here. Set IMG's background_transparent field.
18007 (enum xpm_keyword_index): Add XPM_BACKGROUND.
18008 (enum png_keyword_index): Add PNG_BACKGROUND.
18009 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
18010 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
18011 (enum gif_keyword_index): Add GIF_BACKGROUND.
18012 (enum gs_keyword_index): Add GS_BACKGROUND.
18013 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
18014 Pre-calculate image background color where necessary.
18015 (x_create_x_image_and_pixmap, xbm_load, gs_load):
18016 Use display info's n_cbits entry for screen depth.
18017 (Fx_show_tip): Remove unused variables `buffer', `top',
18018 `left', `max_width' and `max_height'.
60a653f1 18019
048addec 18020 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 18021
048addec 180222001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 18023
048addec 18024 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 18025
048addec 180262001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 18027
048addec 18028 * frame.c (Fframe_live_p): Doc fix.
60a653f1 18029
048addec 180302001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 18031
048addec
JD
18032 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
18033 (message_dolog_marker3): New static variables hold three markers.
18034 (syms_of_xdisp): Initialize and staticpro them.
18035 (message_dolog): Use message_dolog_marker1..3 instead of
18036 allocating markers each time. Unchain them when done.
60a653f1 18037
048addec 180382001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 18039
048addec 18040 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 18041
048addec 180422001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 18043
048addec 18044 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 18045
048addec 180462001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 18047
048addec 18048 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 18049
048addec 180502001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 18051
048addec 18052 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 18053
048addec 180542001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 18055
048addec
JD
18056 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
18057 with invalid position.
60a653f1 18058
048addec 180592001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 18060
048addec 18061 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 18062
048addec
JD
18063 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
18064 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
18065 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 18066
048addec 18067 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 18068
048addec 180692001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 18070
048addec
JD
18071 * fileio.c (build_annotations): Split off the tail.
18072 (build_annotations_2): New fun. Extracted from build_annotations.
18073 (Fwrite_region): Split the call to build_annotations into two
18074 calls to build_annotations and build_annotations_2.
077907d4 18075
048addec 180762001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 18077
048addec
JD
18078 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
18079 clear_waiting_for_input with argument.
1756e2fb 18080
048addec 18081 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 18082
048addec 18083 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 18084
048addec 18085 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 18086
048addec 18087 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 18088
048addec 180892001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 18090
048addec
JD
18091 * fileio.c (choose_write_coding_system): New fun, extracted
18092 from Fwrite_region.
18093 (Fwrite_region): Use it.
fa336b91 18094
048addec
JD
18095 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
18096 (funcall_lambda, run_hook_with_args): Make static and add prototype.
18097 (ml_apply, find_handler_clause): Add prototype.
fa336b91 18098
048addec 180992001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 18100
048addec 18101 * config.in: Add #undef HAVE_COFF_H.
fa336b91 18102
048addec
JD
18103 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
18104 Required for ISC 4.1.
fa336b91 18105
048addec 181062001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 18107
048addec
JD
18108 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
18109 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 18110
048addec 181112001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 18112
048addec
JD
18113 The following changes are made to clean up the various internal
18114 references to the fringes to actually use the term `fringe' for
18115 them. Previously, they were called `flags areas', `bitmap areas',
18116 `left/right side of windows', or implicitly as `flags' or
18117 `bitmaps':
fa336b91 18118
048addec 18119 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 18120 Comments fixed. Use renamed symbols.
06e8f738 18121
f63fd14e 18122 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 18123
048addec
JD
18124 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
18125 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
18126 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 18127
048addec 18128 * msdos.c: Comment fix.
9ce647f4 18129
048addec 18130 * w32fns.c: Use renamed symbols.
9b784ab8 18131
f63fd14e 18132 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
18133 (fringe_bitmap_type): Renamed from bitmap_type.
18134 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
18135 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
18136 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 18137
f63fd14e 18138 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
18139 (fringes_extra): Renamed from flags_areas_extra.
18140 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
18141 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
18142 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
18143 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
18144 (FRAME_X_LEFT_FRINGE_WIDTH):
18145 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
18146 (FRAME_X_RIGHT_FRINGE_WIDTH):
18147 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 18148
048addec 18149 * widget.c: Use renamed symbols.
9f7e52b4 18150
f63fd14e 18151 * window.c: Comment fixes. Use renamed symbols.
048addec 18152 (coordinates-in-window-p): Doc fix.
fa336b91 18153
f63fd14e 18154 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 18155
048addec 18156 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 18157
048addec 18158 * xfns.c: Use renamed symbols.
89512fcd 18159
f63fd14e 18160 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
18161 (fringe_bitmap_type): Renamed from bitmap_type.
18162 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
18163 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
18164 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 18165
f63fd14e 18166 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
18167 (fringes_extra): Renamed from flags_areas_extra.
18168 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
18169 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
18170 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
18171 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
18172 (FRAME_X_LEFT_FRINGE_WIDTH):
18173 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
18174 (FRAME_X_RIGHT_FRINGE_WIDTH):
18175 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
18176
181772001-11-15 Jason Rumney <jasonr@gnu.org>
18178
18179 * w32menu.c (add-menu-item): Make help_echo and radio buttons
18180 work for most menu items. From David Ponce
18181 <david.ponce@wanadoo.fr>.
18182
181832001-11-15 Gerd Moellmann <gerd@gnu.org>
18184
18185 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
18186 Some x_set_* function expect to be called even if old and new
18187 value are equal.
18188
18189 * xdisp.c (build_desired_tool_bar_string): Accept zero
18190 tool_bar_button_relief.
18191
18192 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
18193
18194 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
18195
18196 * xterm.c (x_draw_bar_cursor): If the background color of the
18197 glyph under the cursor equals the frame's cursor color, use
18198 the glyph's foreground color for drawing the bar cursor.
18199
18200 * dispnew.c (direct_output_forward_char): Fix character/byte
18201 position comparison.
7d18891d 18202
048addec 182032001-11-15 Miles Bader <miles@gnu.org>
d2936d21 18204
048addec
JD
18205 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
18206 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
18207 Update arguments to find_field.
18208 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
18209 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
18210 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
18211 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 18212
048addec 182132001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 18214
048addec 18215 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 18216
048addec
JD
18217 * dispextern.h (image_background, image_background_transparent):
18218 Conditionalize on HAVE_X_WINDOWS.
7d18891d 18219
048addec 182202001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 18221
048addec 18222 * print.c (Fprin1_to_string): Doc fix.
7d18891d 18223
048addec 18224 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 18225
048addec 18226 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 18227
048addec 18228 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 18229
048addec 18230 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 18231
048addec 18232 * eval.c (syms_of_eval): Doc fix.
7d18891d 18233
048addec 18234 * coding.c (syms_of_coding): Doc fix.
7d18891d 18235
048addec 18236 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 18237
048addec 18238 * dispnew.c (syms_of_display): Doc fix.
9474c847 18239
048addec 18240 * category.c (Fget_unused_category): Doc fix.
9474c847 18241
048addec 18242 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 18243
048addec 182442001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 18245
048addec 18246 * print.c (prin1, print): Doc fix.
e3059a5d 18247
048addec 182482001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 18249
048addec
JD
18250 * fontset.h: Remove declarations of variables
18251 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 18252
048addec
JD
18253 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
18254 `Vclip_large_size_font'.
eae936e2 18255
048addec 182562001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 18257
048addec 18258 * w32fns.c: Doc fix.
ddb67bdc 18259
048addec 182602001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 18261
048addec 18262 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 18263
048addec 18264 * fns.c: Doc fix.
6e1b91d7 18265
048addec 18266 * emacs.c: Doc fix.
1c1d3d69 18267
048addec 18268 * coding.c: Doc fix.
1c1d3d69 18269
048addec
JD
18270 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
18271 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
18272 `new style' [w/`doc:' keyword].
b6f4c7ba 18273
048addec 182742001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 18275
048addec
JD
18276 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
18277 LeaveNotify events. Only FocusIn and FocusOut do that now.
18278 (x_display_and_set_cursor): Do display hollow cursors in active
18279 minibuffer windows when they are not selected.
b6f4c7ba 18280
048addec 182812001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 18282
048addec 18283 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
18284 * w32term.c: Change doc-string comments to `new style'
18285 [w/`doc:' keyword]. Doc fixes.
a89f435d 18286
048addec
JD
18287 * w32fns.c: Don't define max.
18288 (Fx_open_connection): Only execute once.
a4cd0cd7 18289
048addec 182902001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 18291
048addec
JD
18292 * ccl.c: Change macros to use do-while block instead of if-else.
18293 Use braces to follow GNU Coding Standards.
eafb659a 18294
048addec 182952001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 18296
048addec 18297 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 18298
048addec 18299 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 18300
048addec
JD
18301 * insdel.c (replace_range): Use adjust_markers_for_replace
18302 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 18303
78819ebb 18304 * intervals.h (set_text_properties, set_text_properties_1): Declare.
a4cd0cd7 18305
048addec
JD
18306 * textprop.c (set_text_properties_1): New subroutine
18307 broken out of set_text_properties.
18308 (set_text_properties): Use set_text_properties_1.
91823618 18309
048addec
JD
18310 * intervals.c (graft_intervals_into_buffer):
18311 Use set_text_properties_1 to clear out properties.
91823618 18312
048addec
JD
18313 * search.c (Freplace_match): Use replace_range to insert
18314 and delete. Don't request property inheritance from
18315 surrounding text.
86928dfb 18316
048addec 183172001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 18318
048addec 18319 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 18320 vertical fonts. Allow them if face name is explicitly specified.
048addec 18321 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 18322
048addec 183232001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 18324
048addec
JD
18325 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
18326 instead of malloc/free.
a78e0303 18327
048addec 183282001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 18329
048addec
JD
18330 * xfaces.c (merge_face_vectors): Use braces to follow GNU
18331 Coding Standards.
18332 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 18333
048addec 18334 * buffer.c (Fbury_buffer): Likewise.
0c99b139 18335
048addec 18336 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 18337
048addec
JD
18338 * coding.c (encode_coding): Use precomputed value of `src'.
18339 (encode_coding): Remove unused variable `src_end'.
18340 (code_convert_region): Remove unused variables `count'.
830ddd77 18341
048addec 183422001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 18343
048addec
JD
18344 * w32term.c (x_display_and_set_cursor): Do not move system caret
18345 if cursor_glyph is NULL.
55c6d645 18346
048addec 183472001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 18348
048addec 18349 * keymap.c (access_keymap): Fix compilation error.
5de38842 18350
048addec 183512001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 18352
048addec 18353 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 18354
048addec 183552001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 18356
048addec
JD
18357 * intervals.c (graft_intervals_into_buffer):
18358 Remove #ifdef'd-out code.
18359 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 18360
048addec
JD
18361 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
18362 code (eval-current-buffer).
18363 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 18364
048addec 183652001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 18366
048addec 18367 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 18368
048addec 183692001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 18370
048addec 18371 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 18372
048addec
JD
18373 * keyboard.c (make_lispy_event): Check integerness and fix
18374 Lisp_Object/int mixup.
17893c65 18375
048addec 183762001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 18377
048addec 18378 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 18379
048addec
JD
18380 * fontset.c (fontset_font_pattern): Remove unused variable
18381 `family_registry'.
d5360cc7 18382
048addec 18383 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 18384
048addec 183852001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 18386
048addec 18387 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 18388
048addec
JD
18389 * buffer.c (Fkill_buffer): Don't delete auto save file
18390 if buffer is modified.
d9d54213 18391
048addec 183922001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 18393
048addec
JD
18394 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
18395 CHECK_NUMBER_CDR.
b116830b 18396
048addec 183972001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 18398
048addec 18399 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 18400
048addec 184012001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 18402
048addec 18403 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 18404
048addec 184052001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 18406
048addec 18407 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 18408
048addec 184092001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 18410
048addec
JD
18411 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
18412 the program image directly.
982f6c7e 18413
048addec 184142001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 18415
048addec 18416 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 18417
048addec 184182001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 18419
048addec
JD
18420 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
18421 and CHECK_BUFFER.
d31053f9 18422
048addec
JD
18423 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
18424 (record_char): Likewise.
d31053f9 18425
048addec
JD
18426 * keyboard.c (make_lispy_event): Don't insist a drag event must
18427 move to a different buffer position. Instead, check for moving at
18428 least double_click_fuzz.
982f6c7e 18429
048addec 18430 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 18431
048addec 18432 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 18433
048addec
JD
18434 * indent.c (current_column_1, Fmove_to_column): Separate the code
18435 for display-table glyphs from the code for buffer text, to fix
18436 bugs in the former.
830047fd 18437
048addec 184382001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 18439
048addec
JD
18440 * buffer.c (Fbuffer_local_value): New function.
18441 (syms_of_buffer): Defsubr it.
2df5238c 18442
048addec
JD
18443 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
18444 value of `cursor-in-non-selected-windows'.
4e397688 18445
048addec
JD
18446 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
18447 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
18448 (syms_of_xdisp): Initialize it.
48b0f3ae 18449
048addec 184502001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 18451
048addec 18452 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 18453
048addec
JD
18454 * coding.c: Change doc-string comments to `new style' [w/`doc:'
18455 keyword].
3ecaf7e5 18456
048addec
JD
18457 * eval.c (top_level_value, top_level_set): Remove commented and
18458 #ifdef'd-out code.
18459 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 18460
048addec 184612001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 18462
048addec 18463 * xfns.c: Include unistd.h, if it exists.
8db2e33b 18464
048addec 18465 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 18466
048addec 18467 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 18468
048addec 184692001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 18470
048addec
JD
18471 * lisp.h (CHECK_STRING_CAR): New macro.
18472 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
18473 treating XCAR and XCDR as lvalues.
18474 (openp): Use CHECK_STRING_CAR.
18475 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 18476
048addec 184772001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 18478
048addec
JD
18479 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
18480 (SIGMASKTYPE): Define.
1b1acc13 18481
048addec 18482 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 18483
048addec 184842001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 18485
048addec
JD
18486 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
18487 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
18488 Fix typos in comments.
6cb16f95 18489
048addec
JD
18490 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
18491 and #ifdef'd-out code.
18492 Fix and reindent comments.
6cb16f95 18493
048addec 18494 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 18495
048addec
JD
18496 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
18497 argument `i' in macros.
6cb16f95 18498
048addec
JD
18499 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
18500 `i' in macros.
7e9d3c2f 18501
048addec
JD
18502 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
18503 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
18504 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
18505 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
18506 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
18507 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
18508 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
18509 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
18510 in macros.
7e9d3c2f 18511
048addec
JD
18512 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
18513 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
18514 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
18515 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
18516 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
18517 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
18518 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
18519 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
18520 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
18521 (remove unused second argument).
7e9d3c2f 18522
048addec 185232001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 18524
048addec
JD
18525 * syntax.c (describe_syntax): New wrapper.
18526 (Finternal_describe_syntax_value): Rename from describe_syntax.
18527 Don't insert space at front and \n at the end.
18528 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 18529
048addec
JD
18530 * regex.c (re_wctype): Try to fix some warnings.
18531 (regcomp, regexec): Don't forget the __restrict.
9ba48103 18532
048addec 185332001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 18534
048addec 18535 * textprop.c (Fget_char_property): Doc fix.
9ba48103 18536
048addec 185372001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 18538
048addec 18539 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 18540
048addec 18541 * data.c (Fsetq_default): Ditto.
c22e59e1 18542
048addec 18543 * callint.c (Finteractive): Ditto.
9271ed2c 18544
048addec 185452001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 18546
048addec
JD
18547 * macros.c: Don't include keymap.h any more.
18548
185492001-11-01 Richard M. Stallman <rms@gnu.org>
18550
18551 * data.c (Fmake_local_variable): Doc fix.
18552
18553 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
18554 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 18555
048addec 18556 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
18557 bindings along with or instead of the buffer local map.
18558 Make the overriding maps override what they should.
18559
f00691a3 185602001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
18561
18562 * window.c (grow_mini_window): Fix typo in comment.
18563
27188d11
GM
185642001-11-01 Gerd Moellmann <gerd@gnu.org>
18565
7b49b9d2
GM
18566 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
18567 (XTset_vertical_scroll_bar): Likewise.
18568
43f7c3ea
GM
18569 * xfns.c (x_build_heuristic_mask): Use four_corners_best
18570 instead of IMAGE_BACKGROUND.
c22e59e1 18571
b350c2e5
GM
18572 * xfns.c (four_corners_best): Reindent.
18573
c22e59e1 18574 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
18575 Handle :box so that it is possible to specify sexprs.
18576
bf00d461
EZ
185772001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
18578
18579 * s/hpux11.h: New file.
18580
f00691a3 185812001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 18582
2b209b97
PJ
18583 * emacs.c (USAGE1): Show command line option --no-window-system
18584 instead of --no-windows in usage.
18585 (standard_args): Rename --no-windows to --no-window-system.
18586 (bug_reporting_address): Follow Emacs coding conventions.
18587
9dbc9081
PJ
18588 * eval.c (Fcommandp): Doc fix.
18589 Change doc-string comments to `new style' [w/`doc:' keyword].
18590
4e10df59
PJ
18591 * frame.c (Fframe_live_p): Doc fix.
18592
18593 * buffer.c (selective-display-ellipses): Doc fix.
18594
dd387b25
GM
185952001-10-31 Gerd Moellmann <gerd@gnu.org>
18596
fe957e65
GM
18597 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
18598
dd387b25
GM
18599 * xfaces.c (realize_x_face): If C is not a single-byte character,
18600 set the face's colors_copied_bitwise_p instead of the defaulted_p
18601 members which have a different meaning.
18602 (free_face_colors): Do nothing for a face whose colors have been
18603 copied bitwise.
18604
c22e59e1 18605 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 18606
f00691a3 186072001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 18608
687784e8
PJ
18609 * marker.c, mocklisp.c: Change doc-string comments to `new style'
18610 [w/`doc:' keyword].
2e1280f8 18611
b9d9a9b9
GM
186122001-10-31 Gerd Moellmann <gerd@gnu.org>
18613
18614 * fns.c (require_unwind): Return Lisp_Object.
18615
f00691a3 186162001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 18617
fa1361cb
PJ
18618 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
18619 (last-input-char): Revert doc-string to be the same as the
18620 doc-string of `last-input-event'.
18621
6c465a15 18622 * xdisp.c: Fix typos in comments.
48400103 18623
eafa3196
GM
186242001-10-31 Gerd Moellmann <gerd@gnu.org>
18625
18626 * window.c (grow_mini_window): Handle case that the root
18627 window is already smaller than the nominal mininum height.
18628
747d3f2a
SM
186292001-10-30 Stefan Monnier <monnier@cs.yale.edu>
18630
bf9bb76f
SM
18631 * emacs.c (main): Don't call keys_of_macros any more.
18632
18633 * lisp.h (keys_of_macros): Remove.
18634
18635 * macros.c (keys_of_macros): Remove.
18636
747d3f2a
SM
18637 * xfaces.c (Fface_attribute_relative_p): Declare args.
18638
5e905a57
JR
186392001-10-30 Jason Rumney <jasonr@gnu.org>
18640
18641 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
18642 (enum_font_cb2): Ignore fonts with vertical orientation.
18643
3a426197
RS
186442001-10-30 Richard M. Stallman <rms@gnu.org>
18645
18646 * keyboard.c (Finput_pending_p): Doc fix.
18647
a742d646
GM
186482001-10-30 Gerd Moellmann <gerd@gnu.org>
18649
259cf6bc
GM
18650 * xterm.c (x_after_update_window_line): Don't run the code
18651 clearing in borders for rows whose visible height is 0.
18652
3f99f948
GM
18653 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
18654 resized_p flag is set. If not set, use the much less flickering
18655 method previously used.
18656
18657 * dispnew.c (change_frame_size_1): Set frame's resized_p.
18658
18659 * frame.h (struct frame) <resized_p>: New member.
18660
b4a3be43
GM
18661 * lread.c (to_multibyte): Ensure read_buffer is at least twice
18662 as large as the number of bytes to convert.
747d3f2a 18663
a742d646
GM
18664 * lread.c (to_multibyte): New function.
18665 (read1): Use it.
18666
cacbb9e9
EZ
186672001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
18668
18669 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
18670
99cb6b2f
GM
186712001-10-30 Gerd Moellmann <gerd@gnu.org>
18672
327f42ee 18673 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
18674 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
18675 if the row's fill_line_p is set and drawing the last glyph with
18676 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 18677
99cb6b2f
GM
18678 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
18679
8e8223e2
SM
186802001-10-29 Stefan Monnier <monnier@cs.yale.edu>
18681
18682 * xmenu.c: Include coding.h and charset.h.
18683 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
18684 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
18685 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
18686 Explicitly set wv->help. Use `TRUE' rather than `True'.
18687 (menu_help_callback): Use empty_string.
18688
18689 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
18690 (Fx_popup_dialog): Explicitly init f.
18691 (w32_menu_display_help): Use empty_string.
18692
4d083a8f
RS
186932001-10-29 Richard M. Stallman <rms@gnu.org>
18694
b2304472
RS
18695 * fns.c (Frequire): Detect recursive try to require the same
18696 feature 3 or more levels deep, and get error.
18697 (require_unwind): New subroutine.
18698 (require_nesting_list): New variable.
18699 (syms_of_fns): Init and staticpro it.
18700
4d083a8f
RS
18701 * print.c (print_object): Clarify indication of insertion type.
18702
2fe41216
EZ
187032001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
18704
90480000
EZ
18705 * coding.c (syms_of_coding): Document that locale-coding-system is
18706 used for decoding input on X.
18707
2fe41216
EZ
18708 * window.c (Fscroll_left, Fscroll_right): Doc fix.
18709
f00691a3 187102001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
18711
18712 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
18713 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
18714
60ebcfe8
GM
187152001-10-29 Gerd Moellmann <gerd@gnu.org>
18716
9a7bdceb
GM
18717 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
18718 use NO_CURSOR if cursor_in_non_selected_windows is false.
18719
3f08fcd2
GM
18720 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
18721 the slant attribute if FRAME is t.
18722
0ccfdad2
GM
18723 * xfns.c (x_set_internal_border_width): Set frame garbaged
18724 when X window doesn't exist yet.
18725
ef253080
GM
18726 * xterm.c (x_after_update_window_line): Clear internal border
18727 in different circumstances.
b116830b 18728
60ebcfe8
GM
18729 * xterm.c (XTread_socket) <KeyPress>: Don't use
18730 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
18731 <handa@etl.go.jp>.
18732
73d25f9c
EZ
187332001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
18734
18735 * m/ibms390.h: New file. From Adam Thornton
18736 <athornton@sinenomine.net>.
18737
cac1daf0
GM
187382001-10-28 Gerd Moellmann <gerd@gnu.org>
18739
053b3256 18740 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 18741
cac1daf0
GM
18742 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
18743 a loop counter.
18744
f00691a3 187452001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 18746
f9711de4 18747 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 18748
4707d2d0
PJ
18749 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
18750 keyword].
18751 Fix typos in comments.
b116830b 18752
d883731c
PJ
18753 * emacs.c (bug_reporting_address): New function.
18754 Use it when displaying usage message.
18755
04012254
PJ
18756 * minibuf.c (read_minibuf): Remove unused external declaration of
18757 variable `Qread_only'.
18758
13b1a09c
PJ
18759 * keymap.c (access_keymap): Remove unused variable `charset'.
18760
5bbf4378
MB
187612001-10-28 Miles Bader <miles@gnu.org>
18762
18763 * xfaces.c (merge_face_heights): Handle TO being relative as well.
18764 Remove #ifdef'd-out code.
18765 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
18766 (syms_of_xfaces): Initialize them.
18767
1ce1e4ee
JR
187682001-10-27 Jason Rumney <jasonr@gnu.org>
18769
18770 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
18771 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
18772 position using the system caret.
18773
18774 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
18775 (w32_system_caret_height, w32_system_caret_x)
18776 (w32_system_caret_y): New variables for tracking system caret.
18777 (w32_initialize): Initialize them.
c2d53558 18778 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 18779
c2d53558
SM
18780 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
18781 New messages types.
1ce1e4ee
JR
18782
18783 * w32term.c (note_mouse_highlight): Clear old help_echo.
18784
f00691a3 187852001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 18786
bb4600a4
PJ
18787 * xterm.c: Fix typo in a comment.
18788
7db35a48
PJ
18789 * emacs.c: Fix typos in comments.
18790 Remove unnecessary spaces.
18791 Change doc-string comments to `new style' [w/`doc:' keyword].
18792 (USAGE2): Fix typos in usage string.
18793
a7248e4f
PJ
18794 * xterm.c: Fix typo in a comment.
18795
4e30ce42
PJ
18796 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
18797 emacs.c.
18798
62725a92
GM
187992001-10-27 Gerd Moellmann <gerd@gnu.org>
18800
798dbe1f 18801 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 18802 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
18803 farther backward when target_y was not reached.
18804
62725a92
GM
18805 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
18806 Display errno only if non-zero.
18807 (sound_warning): New function.
18808 (vox_configure): Don't treat failing to set sample rate as error.
18809 (various places): Improve error messages.
18810
d4e34d24
EZ
188112001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
18812
944e6f60
EZ
18813 * fileio.c (Faccess_file): Run the argument filename through
18814 Fexpand_file_name, before using it.
18815
d4e34d24
EZ
18816 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
18817 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
18818
38d2af0c
GM
188192001-10-26 Gerd Moellmann <gerd@gnu.org>
18820
da80a8d5
GM
18821 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
18822
38d2af0c
GM
18823 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18824 Fix clearing in the case of scroll bars on the right.
c2d53558 18825
45de4a6f 188262001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
18827
18828 * w32gui.h (XImage): Add a dummy typedef.
18829
fbd5ceb2
GM
188302001-10-26 Gerd Moellmann <gerd@gnu.org>
18831
c2d53558 18832 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 18833
b23236fb
EZ
188342001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
18835
18836 * frame.c (Fframe_parameter): Fix last change.
18837
5d991fc4
EZ
18838 * fileio.c: Revert last change (which removed old commented-out
18839 version of expand-file-name). Add a comment that explains why
18840 this old version should not be removed.
18841
879eadc3
GM
188422001-10-25 Gerd Moellmann <gerd@gnu.org>
18843
75700ff2
GM
18844 * frame.c (Fframe_parameter): Fix a bug whereby some
18845 ``artificial'' frame parameters, like `minibuffer' were not
18846 obtained by calling Fframe_parameters.
18847
dfe92a6a
GM
18848 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
18849 cursor differently.
18850
879eadc3
GM
18851 * xdisp.c (move_it_vertically_backward): Compute line height
18852 differently. Add heuristic to try to be more compatible to 20.x.
18853
e1010ebe
SM
188542001-10-25 Stefan Monnier <monnier@cs.yale.edu>
18855
d73a471b
SM
18856 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
18857
d6da5a06
GM
18858 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
18859 boolean.
e1010ebe 18860
f66bd220
MB
188612001-10-25 Miles Bader <miles@gnu.org>
18862
18863 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
18864 BG is a pointer to a structure, not a structure.
18865 (gif_format, png_format): Add missing commas.
18866
d436d538
RS
188672001-10-24 Richard M. Stallman <rms@gnu.org>
18868
18869 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 18870 (syms_of_xfaces): Defsubr it.
d436d538 18871
f00691a3 188722001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
18873
18874 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
18875 variable `area'.
18876
f00691a3 188772001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 18878
c2d53558 18879 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 18880
e2a57b34
MB
188812001-10-25 Miles Bader <miles@gnu.org>
18882
18883 * dispextern.h (struct image): Add `background',
18884 `background_valid', and `background_transparent' fields.
18885 (image_background, image_background_transparent): New declarations.
18886 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
18887 * xfns.c (image_background, image_background_transparent)
18888 (four_corners_best): New functions.
c2d53558 18889 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
18890 (gs_format): Add `:background' entry.
18891 (lookup_image): Set IMG's background color if specified.
18892 (pbm_load, xbm_load_image, png_load): Set IMG's background field
18893 when appropriate.
18894 (x_clear_image_1): Reset `background_valid' and
18895 `background_transparent_valid' fields.
18896 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
18897 calculating it here. Set IMG's background_transparent field.
18898 (enum xpm_keyword_index): Add XPM_BACKGROUND.
18899 (enum png_keyword_index): Add PNG_BACKGROUND.
18900 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
18901 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
18902 (enum gif_keyword_index): Add GIF_BACKGROUND.
18903 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 18904 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
18905 Pre-calculate image background color where necessary.
18906 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
18907 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
18908 color to use for image glyph reliefs.
18909
b547b6e8
GM
189102001-10-24 Gerd Moellmann <gerd@gnu.org>
18911
d9e3b8c6
GM
18912 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
18913 in full-width rows.
c2d53558 18914
b547b6e8
GM
18915 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
18916 Fix clearing of area not covered by scroll bar.
18917
f00691a3 189182001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
18919
18920 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
18921 and `real_start'.
c2d53558 18922 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
18923 (glyph_rect): Remove unused variable `area'.
18924
76cb5e06
GM
189252001-10-24 Gerd Moellmann <gerd@gnu.org>
18926
bdbdebff 18927 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
18928
18929 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
18930 (row_containing_pos): Take additional argument DY.
18931 Treat rows ending in middle of char differently.
62e33982
GM
18932 (display_line): Handle tabs on window systems differently.
18933
18934 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
18935 with additional argument.
18936
18937 * dispextern.h (row_containing_pos): Adjust prototype.
18938
76cb5e06
GM
18939 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
18940 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
18941 (try_window_id, try_window_reusing_current_matrix)
18942 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 18943 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 18944
f00691a3 189452001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 18946
c9e60620
PJ
18947 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
18948 gnuemacs).
18949 (HAVE_BOXES): Fix typo in comment.
18950 (push_menu_pane): Fix typo in comment.
18951
3b552d56
PJ
18952 * xdisp.c: (display_prop_string_p): Remove unused local declaration
18953 of `Qwhen'.
18954 (single_display_prop_string_p): Remove unused local declarations
18955 of `Qwhen' and `Qmargin'.
18956 (string_buffer_position): Remove unused variable `around'.
18957 (store_frame_title): Remove unused variable `width'.
18958
15c565ac
PJ
18959 * window.c: Don't define max.
18960 (coordinates_in_window): Remove unused variable `uy'.
18961
a8818eb9
PJ
18962 * widget.c: Don't define max.
18963
996fee11
PJ
18964 * process.c: Don't define max.
18965 (create_process): Remove unused variable `buffer'.
18966
496e1a5b
GM
189672001-10-23 Gerd Moellmann <gerd@gnu.org>
18968
c2d53558 18969 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 18970
5905ae8b
EZ
189712001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
18972
18973 * xfaces.c (Finternal_set_lisp_face_attribute)
18974 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
18975 frame is on a windowed display.
18976
24db49fb
GM
189772001-10-23 Gerd Moellmann <gerd@gnu.org>
18978
c2d53558
SM
18979 * dispnew.c (sync_window_with_frame_matrix_rows):
18980 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
18981 of marginal areas.
18982
c2d53558 18983 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 18984
f0487f05
EZ
189852001-10-23 Andreas Schwab <schwab@suse.de>
18986
18987 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
18988 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
18989
f0a48a01
GM
189902001-10-23 Gerd Moellmann <gerd@gnu.org>
18991
c2d53558 18992 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
18993 REAL_END. Notice if cursor gets overwritten.
18994 (notice_overwritten_cursor): Take X positions as parameters.
18995 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
18996 around call to x_draw_glyphs.
18997
f00691a3 189982001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 18999
fc11dff0
PJ
19000 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
19001 instead of C) and usage.
a50a10a0 19002
fc11dff0
PJ
19003 * editfns.c (char-to-string): Fix argument names (use CHAR instead
19004 of C) and usage.
a50a10a0
PJ
19005
19006 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
19007 `left', `max_width' and `max_height'.
19008
8738febd
GM
190092001-10-23 Gerd Moellmann <gerd@gnu.org>
19010
19011 * xdisp.c (display_line): For a tab continued to the next line,
19012 set row's ends_in_middle_of_char_p.
19013
653c329b
GM
190142001-10-22 Gerd Moellmann <gerd@gnu.org>
19015
19016 * xdisp.c (display_line): Fix computation of continuation lines
19017 width for TABs.
19018
f00691a3 190192001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 19020
7ba51063
PJ
19021 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
19022 `Qlaplace'.
19023
f958c5ac
PJ
19024 * fileio.c: Remove unused code.
19025
eb360291
MB
190262001-10-22 Miles Bader <miles@gnu.org>
19027
19028 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
19029 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
19030 Remove `DOC_STRINGS_IN_COMMENTS' cases.
19031
98515cf0
JR
190322001-10-21 Jason Rumney <jasonr@gnu.org>
19033
19034 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
19035
93026d88
EZ
190362001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
19037
19038 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
19039 (Finsert_string): Avoid the multi-line string literals warning.
19040
c9a95b79
MB
190412001-10-22 Miles Bader <miles@gnu.org>
19042
19043 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
19044 (Fdocumentation): Don't use it.
19045 (syms_of_doc): Don't initialize it.
19046
19047 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
19048 * print.c (Fwith_output_to_temp_buffer): Likewise.
19049 * window.c (Fsave_window_excursion): Likewise.
c2d53558 19050 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 19051 (Fsave_restriction): Likewise.
c2d53558
SM
19052 * eval.c (Frun_hooks, Frun_hook_with_args)
19053 (Frun_hook_with_args_until_failure)
19054 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
19055 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
19056 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
19057 (Funwind_protect, Fcondition_case): Likewise.
19058 * coding.c (Ffind_operation_coding_system): Likewise.
19059 * keyboard.c (Ftrack_mouse): Likewise.
19060
a3b10252
MB
190612001-10-21 Miles Bader <miles@gnu.org>
19062
c2d53558 19063 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
19064 (Fmake_hash_table): Add usage: string to doc string.
19065 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 19066 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
19067 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
19068 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
19069 (Fml_prefix_argument_loop): Likewise.
19070
f00691a3 190712001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 19072
c2d53558 19073 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 19074
c6f73eec
PJ
19075 * sysdep.c (init_sys_modes): Change doc-string comments to `new
19076 style' [w/`doc:' keyword].
19077
19078 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
19079 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
19080 comments to `new style' [w/`doc:' keyword].
19081
3cf3436e
JR
190822001-10-21 Jason Rumney <jasonr@gnu.org>
19083
19084 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
19085
c169b8f1
JR
19086 * w32term.c (remember_mouse_glyph): New function.
19087 (w32_mouse_position): Use it.
19088 (note_mouse_movement): If the mouse moved off the glyph, remember
19089 its new position.
c2d53558 19090
4fdd691b
JR
19091 * w32term.h (struct w32_output): Correct spelling of x_compatible.
19092 (w32_display_info): Add mouse_face_overlay.
19093
c169b8f1
JR
19094 * w32term.c (notice_overwritten_cursor): Renamed from
19095 note_overwritten_text_cursor. Rewritten to take glyph widths into
19096 account.
19097 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
19098 (fast_find_string_pos): New function.
19099 (fast_find_position): Return the correct vpos. Add parameter
19100 STOP. In the final row, stop before glyphs having STOP as object.
19101 Don't consider glyphs that are not from a buffer.
19102 (fast_find_position) [0]: Add a presumably more correct version
19103 for after 21.1.
19104 (expose_window_tree, expose_frame): Don't compute intersections here.
19105 (expose_window): Do it here instead.
19106 (expose_window_tree, expose_window, expose_line): Return 1 when
19107 overwriting mouse-face.
19108 (expose_window): If W is the window currently being updated, mark
19109 the frame garbaged.
19110 (expose_frame): If mouse-face was overwritten, redo it.
19111 (x_use_underline_position_properties): New variable.
19112 (syms_of_xterm): DEFVAR_BOOL it.
19113 (x_draw_glyph_string): Add comment to use it in future.
19114 (x_draw_glyph_string): Restore clipping after drawing box.
19115 Fix a computation of the underline position.
19116 (w32_get_glyph_string_clip_rect): Minor cleanup.
19117 (x_fill_stretch_glyph_string): Remove an assertion.
19118 (x_produce_glyphs): Don't convert multibyte characters
19119 to unibyte characters in unibyte buffers.
19120 (cursor_in_mouse_face_p): New function.
19121 (x_draw_stretch_glyph_string): Use it to choose a different GC
19122 when drawing a cursor within highlighted text. Don't draw
19123 background again if it has already been drawn.
19124 (x_draw_glyph_string_box): Don't draw a full-width
19125 box just because the glyph row's full_width_p flag is set.
19126 (x_draw_glyphs): Fix computation of rightmost x for
19127 full-width rows.
19128 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
19129 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 19130 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
19131 (x_update_window_end): Handle overwritten mouse face
19132 also for tool bar windows.
19133 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
19134 DRAW is DRAW_IMAGE_RAISED.
19135 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
19136 actually redrawn. Make the function static.
19137 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
19138 optimize away highlighting if we pass over that same overlay again.
19139 (note_mouse_highlight): Call mouse_face_overlay_overlaps
19140 to detect a case where we have to highlight a different region
19141 despite not having left the currently highlighted region.
19142 Set mouse_face_overlay in the x_display_info. Avoid changing the
19143 mouse pointer shape when show_mouse_face has already done it, or
19144 there is no need. Handle mouse-face and help-echo in strings.
19145 (glyph_rect): New function.
19146 (w32_mouse_position): Use it to raise the threshold for mouse
19147 movement event generation.
19148 (w32_initialize_display_info): Initialize the x_display_info's
19149 mouse_face_overlay.
19150 (w32_set_vertical_scroll_bar): Don't clear a zero height
19151 or width area.
19152 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
19153 a widget to zero height.
19154
3cf3436e 19155 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 19156 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
19157 equivalents in menu_items.
19158 (w32_menu_show): Don't overwrite an item's name with its key
19159 description in case the description is a multibyte string.
19160 (single_submenu): Some cleanup.
19161
19162 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
19163 (postprocess_image): New function.
19164 (lookup_image): Call it for all image types except PostScript.
19165 (x_kill_gs_process): Call postprocess_image.
19166 (tiff_error_handler, tiff_warning_handler): New functions.
19167 (tiff_load): Install them as handlers.
19168 (x_kill_gs_process): Recognize if someone has cleared the image
19169 cache under us.
19170 (valid_image_p): Protect better against invalid image
19171 specifications. Previous code could signal an error.
19172 (Fx_hide_tip, Fshow_tip): Doc fix.
19173 (Fv_max_tooltip_size): New variable.
19174 (syns_of_xfns): DEFVAR_LISP it.
19175 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 19176 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
19177 window_width. Use a maximum tooltip size specified by
19178 Vx_max_tooltip_size, if that has valid contents.
19179 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
19180 Make sure the tooltip is completely visible.
19181 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
19182 (Fx_create_frame): Adjust the frame's height for presence
19183 of the tool bar before calling x_figure_window_size.
19184 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
19185 when the window gets smaller.
19186 (x_set_foreground_color): Set frame's cursor_pixel.
19187 (x_set_foreground_color, x_set_background_color): Cleaned up.
19188 (x_set_font): Handle case of x_new_fontset returning the same name
19189 as before, although there was a change in fontsets.
19190
386ca361
MB
191912001-10-21 Miles Bader <miles@gnu.org>
19192
c2d53558 19193 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
19194 (Flogxor): Add usage: string to doc string.
19195 * charset.c (Fstring): Likewise.
19196 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
19197 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
19198
f00691a3 191992001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 19200
03be2694
PJ
19201 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
19202
19203 * alloc.c: Reindent DEFUNs with doc: keywords.
19204
19205 * abbrev.c (Finsert_abbrev_table_description): Reindent.
19206
14ff1ee0
PJ
19207 * frame.c: Change doc-string comments to `new style' [w/`doc:'
19208 keyword].
19209
2f147815 19210See ChangeLog.9 for earlier changes.
6922b018
KH
19211
19212;; Local Variables:
49b3bd82 19213;; coding: iso-2022-7bit
6922b018 19214;; End:
2a34a036 19215
2f147815 19216 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
19217 Copying and distribution of this file, with or without modification,
19218 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
19219
19220;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4