(vhdl-current-line): Don't hardcode point-min==1.
[bpt/emacs.git] / src / ChangeLog
1 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * nsfns.m (x_set_foreground_color, x_set_background_color)
4 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
5 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6 x_ prefix instead of ns_. Update references.
7 (syms_of_nsfns): Add a FIXME comment.
8
9 * nsterm.m (x_set_cursor_type): New prototype.
10 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
11
12 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
13 for Solaris instead of incorrectly providing Qutime and Qcutime.
14
15 2009-01-02 Eli Zaretskii <eliz@gnu.org>
16
17 * w32.c (process_times): Compute sum of utime and stime.
18 (system_process_attributes): Add Qtime to the alist.
19
20 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
21 and add them to the alist.
22
23 * process.c (top level) <Qtime, Qctime>: New variables.
24 (syms_of_process): staticpro them.
25 (Fsystem_process_attributes): Add their documentation to the doc
26 string.
27
28 * process.h: Declare Qtime and Qctime.
29
30 2009-01-02 Jason Rumney <jasonr@gnu.org>
31
32 * image.c: (Qgobject): New symbol.
33 (syms_of_image): Initialize it.
34 (init_svg_functions): Load some functions from gobject library.
35
36 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
37
38 * frame.c (make_terminal_frame): Remove redundant code and useless
39 block.
40
41 2009-01-01 Andreas Schwab <schwab@suse.de>
42
43 * process.c (conv_sockaddr_to_lisp): Add workaround for
44 getsockname bug on BSD.
45
46 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
47
48 * xfns.c (x_create_tip_frame): Set border width of the X window.
49
50 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error
51 message.
52
53 2009-01-01 Jason Rumney <jasonr@gnu.org>
54
55 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
56 Don't block input, as per earlier xterm.c changes.
57
58 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
59
60 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
61 (ns_appkit_version_int): New function.
62 (x-server-version): Use ns_appkit_version_int and follow 21+
63 convention of returning 3 integers.
64
65 2008-12-30 Kenichi Handa <handa@m17n.org>
66
67 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
68 (CHAR_SURROGATE_PAIR_P): New macro.
69
70 * font.h (struct font_driver): New member get_variation_glyphs.
71
72 * font.c (font_range): Don't require a font for a variation
73 selector.
74 (Ffont_variation_glyphs): New function.
75 (syms_of_font): Defsubr it.
76
77 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
78 ftfont_variation_glyphs.
79 (setup_otf_gstring): New function.
80 (ftfont_drive_otf): Use it.
81 (ftfont_shape_by_flt): Handle variation selector.
82 (ftfont_variation_glyphs): New function.
83
84 2008-12-30 Martin Rudalics <rudalics@gmx.at>
85
86 * frame.c (Vemacs_iconified): Remove.
87
88 2008-12-30 Jason Rumney <jasonr@gnu.org>
89
90 * frame.c (store_frame_param, x_get_arg): Enable newer code on
91 WINDOWSNT too, as related changes have already been synced. (Bug#117)
92
93 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
94
95 * indent.c (Fvertical_motion): Don't advance iterator if we have
96 reseated to the desired position.
97
98 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
99 checking for pos match.
100
101 2008-12-30 Kenichi Handa <handa@m17n.org>
102
103 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
104 just get the low 8-bit of the code.
105
106 * font.c (font_intern_prop): Validate str as multibyte.
107
108 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
109
110 * dispextern.h (struct face): Move lface and hash from the middle
111 of bitfields.
112
113 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
114
115 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
116
117 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
118 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
119 instead of intervals.h.
120
121 2008-12-26 Andreas Schwab <schwab@suse.de>
122
123 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
124 cons.
125
126 2008-12-26 Martin Rudalics <rudalics@gmx.at>
127
128 * textprop.c (Qminibuffer_prompt): New variable.
129 (syms_of_textprop): Initialize it.
130 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
131 in minibuffer-prompt face. (Bug#1662)
132
133 2008-12-25 Jason Rumney <jasonr@gnu.org>
134
135 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
136
137 2008-12-24 Jason Rumney <jasonr@gnu.org>
138
139 * ralloc.c (r_alloc_reset_variable): New function.
140
141 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
142 record of what points where. (Bug#716)
143
144 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
145
146 * minibuf.c (read_minibuf): Follow the non-interactive case when
147 running as a daemon, before detaching.
148
149 2008-12-22 Andreas Schwab <schwab@suse.de>
150
151 * buffer.c (init_buffer): Use realloc instead of xrealloc.
152 * gtkutil.c (free_widget_value): Use xfree instead of free.
153
154 2008-12-22 Martin Rudalics <rudalics@gmx.at>
155
156 * frame.c (delete_frame): New function derived from
157 Fdelete_frame to handle Qnoelisp value for FORCE argument.
158 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
159 (Fdelete_frame): Call delete_frame. Remove line from doc-string
160 saying that FORCE non-nil doesn't run `delete-frame-functions'.
161 * frame.h: Extern delete_frame.
162 * window.c (window_loop):
163 * terminal.c (delete_terminal):
164 * xterm.c (x_connection_closed):
165 * xfns.c (Fx_hide_tip):
166 * w32fns.c (Fx_hide_tip): Call delete_frame instead of
167 Fdelete_frame.
168
169 2008-12-21 Jason Rumney <jasonr@gnu.org>
170
171 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
172 when character maps to .notdef character.
173
174 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
175
176 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
177
178 2008-12-20 Jason Rumney <jasonr@gnu.org>
179
180 * frame.c (Fmake_terminal_frame): Raise an error when called from
181 a graphical frame on Windows. (Bug#1325)
182
183 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
184
185 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
186
187 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
188
189 * minibuf.c (Fread_buffer): Doc fix.
190
191 2008-12-20 Jason Rumney <jasonr@gnu.org>
192
193 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
194 server name in UNC paths. (Bug#719)
195
196 * coding.c (decode_coding): Clear chars_at_source flag when using
197 charbuf. (Bug#1035)
198
199 2008-12-19 Daniel Engeler <engeler@gmail.com>
200
201 * sysdep.c (serial_configure): Fix typo.
202
203 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
204
205 * sysdep.c: Include alloca.h.
206 (system_process_attributes): Add implementation for Solaris.
207
208 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
209
210 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
211
212 Reorganize implementation of Flist_system_processes and
213 Fsystem_process_attributes. No functional changes.
214 * process.c: Don't #include pwd.h, grp.h and limits.h.
215 (Flist_system_processes): Just call list_system_processes.
216 (Fsystem_process_attributes): Just call system_process_attributes.
217 (procfs_list_system_processes, time_from_jiffies)
218 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
219 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
220
221 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
222 (list_system_processes): Rename from
223 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
224 Provide a do nothing implementation.
225 (system_process_attributes): Rename from
226 procfs_list_system_processes.
227 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
228 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
229
230 * w32.c (list_system_processes): Rename from
231 w32_list_system_processes.
232 (system_process_attributes): Rename from
233 w32_system_process_attributes.
234
235 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
236
237 * process.h (w32_list_system_processes)
238 (w32_system_process_attributes): Remove.
239 (list_system_processes, system_process_attributes): New
240 prototypes.
241
242 2008-12-19 Kenichi Handa <handa@m17n.org>
243
244 * xfont.c (xfont_decode_coding_xlfd): New function.
245 (xfont_encode_coding_xlfd): New function.
246 (xfont_list_pattern): Decode XLFD by iso-8859-1.
247 (xfont_list): Decode and encode XLFD by iso-8859-1.
248 (xfont_match): Likewise.
249 (xfont_list_family): Likewise.
250 (xfont_open): Likewise.
251
252 * ftfont.c (ftfont_open): Genarate a multibyte string if given
253 names are utf-8.
254
255 * xftfont.c (xftfont_open): Genarate a multibyte string if given
256 names are utf-8.
257
258 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
259
260 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
261 changed.
262 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
263 clicked on a detached tool bar button.
264
265 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
266
267 * emacs.c (main): Print and error and exit when no data is read
268 from the pipe.
269
270 2008-12-17 Jason Rumney <jasonr@gnu.org>
271
272 * w32font.c (w32font_has_char): Always return -1.
273
274 2008-12-16 Kenichi Handa <handa@m17n.org>
275
276 * font.c (font_open_entity): Fix previous change.
277
278 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
279
280 * process.c: Include <limits.h>.
281
282 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
283
284 * font.c (font_update_drivers): Fix mistake in reconstructing the
285 driver list.
286
287 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
288
289 * font.c (font_clear_cache): Fix format of font cache data.
290
291 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
292
293 * xftfont.c (xftfont_open): Free Xft font pattern if
294 XftFontOpenPattern fails.
295
296 * xterm.c (x_free_frame_resources): Remove extraneous call to
297 free_frame_faces.
298
299 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
300
301 * xterm.c (x_delete_display): Move xim_close_dpy call to
302 x_delete_terminal.
303 (x_delete_terminal): Call xim_close_dpy.
304
305 2008-12-13 Jason Rumney <jasonr@gnu.org>
306
307 * w32font.c (intern_font_name): New function.
308 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
309 (w32font_open_internal, Fx_select_font): Decode font name.
310 (fill_in_logfont, list_all_matching_fonts): Encode font name.
311
312 * w32font.h (intern_font_name): Declare new function.
313
314 * w32uniscribe.c (add_opentype_font_name_to_list):
315 Use intern_font_name.
316
317 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
318
319 * frame.c (Fdelete_frame): Call free_font_driver_list.
320
321 * font.c (free_font_driver_list): Implement missing function.
322
323 * w32term.c (w32_term_init): Don't initialize the image cache
324 here; it will be done in init_frame_faces.
325
326 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
327 (struct x_display_info): Remove unused member null_pixel. New
328 member xim_callback_data.
329
330 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
331 (xim_initialize): Save pointer to callback function data.
332 (xim_close_dpy): Free callback function data. Call XCloseIM,
333 reverting 2008-11-04 change by David Smith.
334 (x_term_init): Don't initialize the image cache here; it will be
335 done in init_frame_faces. Remove ancient "null_pixel" cruft.
336 (x_delete_display): Free x_dnd_atoms member.
337
338 2008-12-13 Kenichi Handa <handa@m17n.org>
339
340 * font.c (font_rescale_ratio): Moved from xfaces.c. Argument
341 type changed. Handle a font-spec too.
342 (font_score): Check Vface_font_rescale_alist.
343 (font_open_entity): Likewise.
344
345 * xfaces.c (font_rescale_ratio): Moved to font.c.
346
347 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
348
349 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
350
351 2008-12-12 Jason Rumney <jasonr@gnu.org>
352
353 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
354 Vwindow_system_version to the real w32 major version.
355
356 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
357
358 * term.c (init_tty): Move setting the terminal name before the
359 potential user: maybe_fatal.
360
361 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
362
363 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
364 all callers changed. Call free_frame_faces to free the face cache.
365
366 2008-12-11 Jason Rumney <jasonr@gnu.org>
367
368 * w32font.c (fill_in_logfont): Don't assume symbol script means
369 SYMBOL_CHARSET. (Bug#547)
370
371 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
372 size for surrogates. (Bug#1096, bug#872)
373
374 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
375
376 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
377
378 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
379
380 * process.c (Fsystem_process_attributes, syms_of_process):
381 Fix typo in name of Ssystem_process_attributes.
382 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
383
384 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
385
386 * syntax.c (Fmodify_syntax_entry): Doc fix.
387
388 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
389
390 * font.c (Ffont_spec): Move usage to end of docstring.
391
392 2008-12-10 Jason Rumney <jasonr@gnu.org>
393
394 * w32font.c (Qcham): New symbol.
395 (font_supported_scripts): Add cham, and comments for other new
396 scripts in bitfield from OpenType spec.
397 (add_font_entity_to_list): Limit unicode-sip fonts to those that
398 contain characters beyond the bmp.
399
400 2008-12-10 Kenichi Handa <handa@m17n.org>
401
402 * ftfont.c (fc_charset_table): Add "unicode-sip".
403 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
404 Qunicode_sip.
405
406 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
407
408 * coding.c (QCdefault_char): Rename from QCdefalut_char.
409 (Fcoding_system_put): Use QCdefault_char.
410 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
411
412 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
413
414 * xftfont.c (syms_of_xftfont): Fix typo.
415
416 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
417
418 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
419
420 * emacs.c (main): Close daemon_pipe on exec.
421
422 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
423
424 * termchar.h (struct tty): New members termcap_term_buffer and
425 termcap_strings_buffer.
426
427 * term.c (encode_terminal_code): Free any previous memory blocks
428 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
429 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
430 All callers changed.
431 (init_tty): Store termcap data and string buffers in new struct
432 tty members termcap_term_buffer and termcap_strings_buffer.
433 (delete_tty): Free them.
434 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
435
436 2008-12-07 Seiji Zenitani <zenitani@mac.com>
437
438 * nsfns.m (ns_set_background_color): Remove code duplication.
439 It was a substitute for face-transparency on OS X 10.3.
440
441 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
442
443 * coding.c (make_conversion_work_buffer): Disable buffer
444 modification hooks in the work buffer.
445
446 2008-12-05 Eli Zaretskii <eliz@gnu.org>
447
448 * process.c (procfs_system_process_attributes): If `nread' has a
449 negative value, assign zero to it.
450
451 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
452
453 * eval.c (Vdebug_on_error): Doc fix.
454
455 2008-12-05 Kenichi Handa <handa@m17n.org>
456
457 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
458 second character is a combining character.
459
460 2008-12-05 Eli Zaretskii <eliz@gnu.org>
461
462 * process.c (procfs_system_process_attributes): Don't use cmd,
463 cmdsize, and q without initializing them first.
464
465 2008-12-04 Jason Rumney <jasonr@gnu.org>
466
467 * w32font.c (w32font_draw): Initialize orig_clip before getting
468 it, and delete it when finished.
469
470 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
471
472 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
473 case when running as a daemon before detaching.
474
475 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
476
477 * w32.c (init_environment): Don't unload library shell32.dll.
478
479 2008-12-03 Kenichi Handa <handa@m17n.org>
480
481 * font.c (font_at): Set `multibyte' at first.
482
483 * coding.c (decode_coding_charset): Check type of an element of
484 vector VALIDS.
485 (encode_coding_emacs_mule): Be sure to set `code'.
486
487 * fontset.c (face_for_char): Handle invalid charset property correctly.
488 (font_for_char): Likewise.
489
490 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
491
492 * font.c (Fopen_font): Compute pixel size correctly.
493 (font_update_lface): Handle fonts with corrupted size specs,
494 i.e. non-int and non-float.
495
496 * ftfont.c (ftfont_match): Initialize entity variable.
497 (ftfont_resolve_generic_family): Avoid using uninitialized var.
498 (ftfont_list_family): Initialize list var earlier.
499
500 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
501
502 * xterm.c (x_draw_glyph_string): Fall back on
503 underline_minimum_offset for underline position.
504
505 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
506
507 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
508
509 * character.c (c_string_width): Specify the type for LEN.
510
511 2008-12-03 Kenichi Handa <handa@m17n.org>
512
513 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
514 (decode_coding_utf_8): Likewise.
515 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
516 (produce_chars): Initialize consumed_chars to 0.
517
518 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
519
520 * keyboard.c (make_lispy_position): Only use PT if the selected
521 window is current.
522
523 2008-12-02 Andreas Schwab <schwab@suse.de>
524
525 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
526
527 * doprnt.c (doprnt1): Fix size of charbuf.
528
529 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
530
531 * keyboard.c (timer_check): Revert last change.
532
533 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
534
535 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
536
537 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
538
539 * makefile.w32-in: Update dependencies.
540 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
541
542 2008-12-01 Andreas Schwab <schwab@suse.de>
543
544 * font.c (register_font_driver): Use xmalloc.
545 (font_put_frame_data): Likewise.
546
547 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
548
549 * xfaces.c (realize_x_face): Make abort condition clearer.
550
551 * gtkutil.c (update_frame_tool_bar): Initialize variable.
552
553 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
554
555 * keyboard.c (timer_check): After a timer runs, ensure that the
556 selected window's buffer is current.
557
558 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
559
560 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
561 It was accidentally restored by the Unicode merge.
562
563 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
564
565 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
566
567 * w32proc.c: Include "coding.h".
568 (Fw32_short_file_name): Encode filename passed to Windows API.
569 (Fw32_long_file_name): Encode filename passed to Windows API and
570 decode back the result. (Bug#1433)
571
572 2008-11-29 Kenichi Handa <handa@m17n.org>
573
574 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
575 not before accessing it.
576
577 * charset.c (Fdefine_charset_internal): After calculating
578 min_char, max_char, and fastmap, copy the charset structure again.
579 (encode_char): Fix the previous change.
580
581 2008-11-28 Seiji Zenitani <zenitani@mac.com>
582
583 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
584
585 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
586
587 * nsterm.m (x_set_frame_alpha): New function.
588
589 2008-11-27 Eli Zaretskii <eliz@gnu.org>
590
591 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
592
593 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
594
595 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
596 pointer to check_face_name.
597
598 2008-11-27 Kenichi Handa <handa@m17n.org>
599
600 * category.h (SET_CATEGORY_SET): Call set_category_set.
601 (set_category_set): Extern it.
602
603 * category.c (hash_get_category_set): New function.
604 (Fmodify_category_entry): Adjusted for the change of
605 char_table_ref_and_range. Call hash_get_category_set to get a
606 category set to store in the table.
607
608 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
609 Funify_charset.
610
611 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
612 (DECODE_CHAR): Check if the decoder vector is ready.
613 (ENCODE_CHAR): Check if the encoder char-table is ready.
614 (maybe_unify_char): Extern it.
615
616 * charset.c (Vchar_unified_charset_table): Delete it.
617 (inhibit_load_charset_map): New variable.
618 (temp_charset_work): New variable.
619 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
620 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
621 New macros.
622 (load_charset_map): Meaning of control_flag changed. If
623 inhibit_load_charset_map is nonzero, setup a table in
624 temp_charset_work.
625 (load_charset): New argument control_flag.
626 (map_charset_for_dump): New function.
627 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
628 map_charset_for_dump.
629 (Fdefine_charset_internal): If the charset method is MAP, load
630 mapping tables by calling load_charset.
631 (Funify_charset): Don't load a mapping table but directly set
632 Vchar_unify_table.
633 (maybe_unify_char): New function.
634 (decode_char): Don't handle the deleted method MAP_DEFERRED.
635 Handle the case of inhibit_load_charset_map being nonzero.
636 (encode_char): Don't handle the deleted method MAP_DEFERRED.
637 Handle the case of inhibit_load_charset_map being nonzero.
638 (Fclear_charset_maps): Just free temp_charset_work.
639 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
640 variable.
641
642 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
643 change of char_table_ref_and_range.
644 (char_table_ref_and_range): Change the meaning of argument FROM
645 and TO. Now the caller must provide initial values for *FROM
646 and *TO.
647
648 * fontset.c (fontset_add): Adjusted for the change of
649 char_table_ref_and_range.
650 (fontset_get_font_group): Likewise.
651 (Ffontset_info): Likewise.
652
653 * keymap.c (describe_vector): Adjusted for the change of
654 char_table_ref_and_range. For char-table, put boundary between
655 non-ASCII and 8-bit characters.
656
657 * print.c (print_object): For bool-vector, delete unnecessary
658 check of ASCII_BYTE_P.
659
660 2008-11-26 Jason Rumney <jasonr@gnu.org>
661
662 * w32font.c (w32font_open_internal): Don't include external
663 leading in font height. (Bug#879)
664
665 2008-11-26 Glenn Morris <rgm@gnu.org>
666
667 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
668 redefinition with ifdef. (Bug#1383)
669
670 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
671
672 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
673
674 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
675
676 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
677 New EmacsView methods.
678 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
679 Fixes bug #1048,1357,1414.
680
681 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
682
683 Fix bug #1362.
684 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
685 is not an indexed color.
686 * nsterm.m (free_indexed_color): Add argument checking.
687 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
688
689 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
690
691 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
692 Document confirm-after-completion value for
693 minibuffer-completion-confirm.
694
695 2008-11-24 Jason Rumney <jasonr@gnu.org>
696
697 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
698 warning.
699
700 2008-11-23 Jason Rumney <jasonr@gnu.org>
701
702 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
703 restored before returning.
704
705 * w32font.c (check_face_name): New function.
706 (add_font_entity_to_list): Use it to filter out common substituted
707 fonts. (Bug#642)
708
709 2008-11-22 Martin Rudalics <rudalics@gmx.at>
710
711 * buffer.c (Fswitch_to_buffer): Reword and mention new option
712 confirm-nonexistent-file-or-buffer in doc-string.
713
714 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
715
716 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
717 Fix copy/paste typo. Add checks.
718
719 2008-11-21 Kenichi Handa <handa@m17n.org>
720
721 * coding.c (detect_coding_iso_2022): Reject invalid composition
722 sequence.
723 (DECODE_COMPOSITION_START): If the current source is the last
724 block, and the current composition doesn't end, regard this
725 sequence as invalid.
726 (decode_coding_iso_2022): Handle invalid composition sequence.
727
728 2008-11-20 Martin Rudalics <rudalics@gmx.at>
729
730 * window.c (coordinates_in_window): Don't return
731 ON_VERTICAL_BORDER for the rightmost position of a mode/header
732 line when the window is not the rightmost one. (Bug#1372)
733
734 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
735
736 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
737
738 2008-11-15 Eli Zaretskii <eliz@gnu.org>
739
740 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
741 and bright_bg if noninteractive is non-zero.
742
743 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
744
745 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
746 x_draw_glyph_string_background.
747
748 * w32term.c (x_draw_glyph_string): Likewise.
749
750 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
751
752 * xterm.c (x_draw_glyph_string): Stop drawing the background of
753 the next glyph string once past the overhang width.
754
755 * nsterm.m (ns_draw_glyph_string): Likewise.
756
757 * w32term.c (x_draw_glyph_string): Likewise.
758
759 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
760
761 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
762 double file close.
763
764 2008-11-14 Martin Rudalics <rudalics@gmx.at>
765
766 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
767 dedicated status of window before attempting to display another
768 buffer in it.
769
770 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
771
772 * msdos.c (Fmsdos_long_file_names):
773 (syms_of_msdos) <dos-unsupported-char-glyph>:
774 * dosfns.c (Fint86): Fix typos in docstrings.
775
776 2008-11-14 Eli Zaretskii <eliz@gnu.org>
777
778 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
779
780 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
781
782 * puresize.h (BASE_PURESIZE): Increase to 1260000.
783
784 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
785
786 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
787
788 * frame.h: Negative alpha means "don't touch".
789
790 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
791
792 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
793
794 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
795
796 * hftctl.c:
797 * chpdef.h:
798 * acldef.h: Remove files used only for systems no longer supported.
799
800 * Makefile.in: Fix .o alphabetical ordering.
801 (hftctl.o): Remove dependency, file removed.
802 (keymap.o, print.o): Depend on charset.h.
803
804 2008-11-10 Kenichi Handa <handa@m17n.org>
805
806 * character.c (Fget_byte): Fix and make it faster for unibyte target.
807
808 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
809
810 * dired.c (file_name_completion): If completion_ignore_case is
811 enabled, ignore case when checking completion-regexp-list.
812
813 2008-11-08 Eli Zaretskii <eliz@gnu.org>
814
815 * vm-limit.c (get_lim_data): Fix last change.
816
817 2008-11-08 Kenichi Handa <handa@m17n.org>
818
819 * character.c (Fget_byte): New function.
820 (syms_of_character): Defsubr Fget_byte.
821
822 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
823
824 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
825 cursor position is valid after scrolling.
826
827 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
828
829 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
830
831 2008-11-06 Glenn Morris <rgm@gnu.org>
832
833 * xterm.c (handle_one_xevent): Don't let popup menus cause
834 mouse-autoselect-window related window switching. (Bug#1261)
835
836 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
837
838 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
839
840 2008-11-04 Andreas Schwab <schwab@suse.de>
841
842 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
843
844 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
845
846 * xfns.c (Fx_wm_set_size_hint): New function.
847
848 2008-11-03 Martin Rudalics <rudalics@gmx.at>
849
850 * textprop.c (Fprevious_single_char_property_change): Return 0
851 when there's no change in a string. (Bug#1301)
852
853 2008-11-02 Martin Rudalics <rudalics@gmx.at>
854
855 * frame.c (do_switch_frame): New argument NORECORD passed to
856 Fselect_window.
857 (Fselect_frame): New argument NORECORD passed to
858 do_switch_frame.
859 (Fset_frame_selected_window): New argument NORECORD passed to
860 Fselect_frame.
861 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
862 in call of do_switch_frame.
863 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
864 Handle NORECORD argument in call of Fselect_frame.
865 * lisp.h (do_switch_frame, Fselect_frame)
866 (Fset_frame_selected_window): Adjust declarations.
867 * window.c (select_frame_norecord): New function.
868 (run_window_configuration_change_hook): Use it and call
869 Fselect_frame with NORECORD set.
870 (Fselect_window): Pass NORECORD to Fselect_frame.
871 (Fset_window_configuration): Handle NORECORD argument in call of
872 do_switch_frame.
873 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
874 Fset_frame_selected_window.
875 * keyboard.c (command_loop_1): Handle NORECORD in call of
876 Fselect_frame (currently ifdefd).
877
878 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
879
880 * emacs.c (USAGE2): Untabify.
881
882 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
883
884 * composite.c (fill_gstring_header): Fix copy/paste typo.
885
886 2008-10-31 Martin Rudalics <rudalics@gmx.at>
887
888 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
889 (Fother_window): Rename argument and rewrite doc-string.
890 (select_window_norecord): Fix return value. (Bug#1276)
891
892 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
893
894 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
895 new frames overriding foreground for tooltips. Based on similar patch
896 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
897
898 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
899
900 * emacs.c (Fdaemon_initialized): Initialize nfd.
901
902 2008-10-29 Martin Rudalics <rudalics@gmx.at>
903
904 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
905 (Fwindow_text_height): Clarify doc-strings.
906 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
907 doc-string of window-scroll-functions.
908
909 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
910
911 * category.c (syms_of_category): Fix typo in docstring.
912
913 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
914
915 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
916 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
917 Fix typos in docstrings.
918
919 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
920
921 * emacs.c (daemon_pipe): Make non-static.
922 (IS_DAEMON): Move definition ...
923 * lisp.h (IS_DAEMON): ... here.
924 (daemon_pipe): Declare.
925 (is_daemon): Remove.
926 * dispnew.c (init_display): Use IS_DAEMON.
927
928 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
929
930 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
931 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
932
933 * emacs.c (is_daemon): Remove.
934 (main): Don't set is_daemon.
935 (IS_DAEMON): New macro.
936 (Fdaemonp, Fdaemon_initialized): Use it.
937 (Fdaemon_initialized): Write a char into the pipe to make sure the
938 parent exits.
939 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
940
941 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
942
943 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
944 over-sized glyph, draw it with the default glyph width.
945
946 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
947 glyph, draw it with the default glyph width.
948
949 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
950 glyph, draw it with the default glyph width.
951
952 * xdisp.c (try_scrolling): When computing the distance from the
953 scroll margin to PT, try moving some distance past the window
954 bottom before giving up.
955
956 2008-10-27 Martin Rudalics <rudalics@gmx.at>
957
958 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
959 (Fset_window_buffer): Explain in doc-string that a window can be
960 "strongly" dedicated to its buffer.
961
962 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
963
964 * emacs.c (daemon_name): New variable.
965 (main): Deal with --daemon=SERVER_NAME.
966 (Fdaemonp): Return a name if one was passed to --daemon.
967
968 2008-10-26 Romain Francoise <romain@orebokech.com>
969
970 * emacs.c (daemon_pipe): New variable.
971 (main): Create a pipe before forking, make the parent exit only after
972 the child has closed its end of the pipe. Move closing the
973 descriptors ...
974 (Fdaemon_initialized): ... here. New function.
975
976 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
977
978 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
979 the previous unoptimized table.
980
981 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
982 the distinction between non-nil and non-t value of `dedicated'.
983
984 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
985
986 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
987 read_char_minibuf_menu_text is large enough to hold the menu string.
988
989 2008-10-25 Martin Rudalics <rudalics@gmx.at>
990
991 * window.c (Fget_buffer_window, Fdelete_windows_on)
992 (Freplace_buffer_in_windows): Make buffer argument optional and
993 rename to buffer_or_name.
994
995 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
996
997 * xdisp.c (handle_single_display_spec, handle_display_prop):
998 Undo 2005-05-16 change.
999 (handle_stop): Pop iterator if it's loaded with an empty string.
1000 (get_overlay_strings_1): Don't save iterator if it's loaded with
1001 an empty string (bug#1201).
1002
1003 2008-10-24 Kenichi Handa <handa@m17n.org>
1004
1005 * ftfont.c (ftfont_otf_features): Fix previous change.
1006 (ftfont_otf_capability): Check FeatureList.FeatureCount before
1007 calling ftfont_otf_features.
1008
1009 2008-10-24 Kenichi Handa <handa@m17n.org>
1010
1011 * font.c (font_match_p): Fix for the case that a vector of
1012 characters is in script-representative-chars.
1013
1014 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
1015
1016 * dbusbind.c (xd_in_read_queued_messages): New variable.
1017 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1018 (xd_read_queued_messages): Catch Qdbus_error from the macros.
1019 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
1020 macro. (Bug#1186).
1021
1022 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
1023
1024 * s/sol2-10.h: New file.
1025
1026 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
1027
1028 * xdisp.c (fill_glyph_string): Fix typo in source (though the
1029 poor beast has survived 9+ years and the jump from xterm.c!).
1030
1031 2008-10-23 Martin Rudalics <rudalics@gmx.at>
1032
1033 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
1034 Reword doc-string.
1035 (Fbury_buffer): In doc-string say what happens to the buffer's window.
1036
1037 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
1038
1039 * character.c (syms_of_character) <script-representative-chars>:
1040 <unicode-category-table>: Doc fixes.
1041
1042 2008-10-23 Noah Friedman <friedman@splode.com>
1043
1044 * coding.c (make_conversion_work_buffer): Check that
1045 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
1046 Fget_buffer_create.
1047
1048 2008-10-23 Kenichi Handa <handa@m17n.org>
1049
1050 * font.c (font_add_log): Check the values of extra properties.
1051
1052 2008-10-22 Martin Rudalics <rudalics@gmx.at>
1053
1054 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1055 Reword doc-string.
1056 (Fset_window_parameter): Use NILP.
1057 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
1058 (Frecenter): Use "selected" instead of "current" window in doc-strings.
1059
1060 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
1061
1062 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
1063
1064 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
1065
1066 * nsfns.m (ns_appkit_version): New function.
1067 (x-server-version): Use it.
1068 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
1069 (x-server-vendor): Don't check_ns().
1070
1071 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
1072
1073 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
1074
1075 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1076 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
1077
1078 2008-10-22 Kenichi Handa <handa@m17n.org>
1079
1080 * syntax.c (scan_words): Call word_boundary_p instead of comparing
1081 scripts.
1082
1083 * category.c (word_boundary_p): Check scripts instead of charset.
1084 Handle nil value in word-separating-categories and
1085 word-combining-categories.
1086 (syms_of_category): Fix docstrings of word-separating-categories
1087 and word-combining-categories.
1088
1089 2008-10-21 Eli Zaretskii <eliz@gnu.org>
1090
1091 * coding.c (Fencode_coding_region, Fdecode_coding_region)
1092 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
1093
1094 2008-10-21 Martin Rudalics <rudalics@gmx.at>
1095
1096 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
1097 Rename arg "buffer" to "buffer_or_name".
1098 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
1099 it optional.
1100 (no_switch_window): Remove since the return value is not used.
1101 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
1102 Consider window as dedicated when Fwindow_dedicated_p returns a
1103 non-nil value.
1104 * lisp.h: Remove prototype for no_switch_window.
1105
1106 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
1107
1108 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
1109 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
1110
1111 2008-10-21 Kenichi Handa <handa@m17n.org>
1112
1113 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
1114 check Vlatin_extra_code_table.
1115
1116 2008-10-20 Eli Zaretskii <eliz@gnu.org>
1117
1118 * fileio.c (Fset_file_modes): Doc fix.
1119
1120 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
1121
1122 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
1123 in arrays.
1124
1125 2008-10-19 Martin Rudalics <rudalics@gmx.at>
1126
1127 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1128 Mention kill-buffer in doc-string.
1129 (Fset_window_buffer): Reinsert tem check removed in last commit.
1130 (Fenlarge_window, Fshrink_window): Have argument names and
1131 doc-string follow Elisp manual more closely.
1132
1133 2008-10-18 Eli Zaretskii <eliz@gnu.org>
1134
1135 * fileio.c (Fset_file_modes): Doc fix.
1136
1137 2008-10-18 Martin Rudalics <rudalics@gmx.at>
1138
1139 * window.c (Fwindow_width, Fset_window_start)
1140 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
1141 (Fdelete_windows_on, Freplace_buffer_in_windows):
1142 Make doc-strings follow code and Elisp manual more closely.
1143 (Fwindow_dedicated_p): Make window argument optional.
1144 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
1145 (Fset_window_buffer): Respect any non-nil dedicated value for
1146 window. Rename "buffer" argument to "buffer_or_name".
1147
1148 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
1149
1150 * m/sh3.h: New file, machine description for SuperH.
1151
1152 2008-10-17 Martin Rudalics <rudalics@gmx.at>
1153
1154 * window.c (Fsplit_window): Rename arg horflag to horizontal.
1155
1156 2008-10-17 Kenichi Handa <handa@m17n.org>
1157
1158 * ftfont.c (ftfont_otf_features): Fix indexing
1159 gsub_gpos->FeatureList.Feature. Check the validity of indices.
1160
1161 2008-10-16 Magnus Henoch <mange@freemail.hu>
1162
1163 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
1164 (Fdbus_call_method_asynchronously): Ditto.
1165 This change makes C-h f display the argument list.
1166
1167 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
1168
1169 * fileio.c (Fexpand_file_name): Doc fix.
1170
1171 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
1172 of :foreground and :background equivalent to unspecified (20.x
1173 compatibility).
1174
1175 2008-10-15 Eli Zaretskii <eliz@gnu.org>
1176
1177 * buffer.c (syms_of_buffer): Doc fix.
1178
1179 2008-10-14 Kenichi Handa <handa@m17n.org>
1180
1181 * font.c (font_clear_prop): When clearing font width, clear the
1182 average width field too.
1183
1184 2008-10-12 Andreas Schwab <schwab@suse.de>
1185
1186 * ftfont.c (ftfont_shape_by_flt): Make static.
1187 * ftfont.h (ftfont_shape_by_flt): Don't declare.
1188
1189 * font.c: Don't include <m17n-flt.h>.
1190
1191 2008-10-10 Eli Zaretskii <eliz@gnu.org>
1192
1193 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
1194
1195 2008-10-09 Eli Zaretskii <eliz@gnu.org>
1196
1197 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
1198 away code.
1199
1200 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
1201
1202 * dispnew.c (update_text_area): Avoid looping due to large glyph
1203 overhangs (bug#1070).
1204
1205 2008-10-09 Kenichi Handa <handa@m17n.org>
1206
1207 * fontset.c (face_for_char): If face->fontset is negative, just
1208 return ascii_face.
1209
1210 * font.c (font_delete_unmatched): Fix previous change.
1211 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
1212
1213 2008-10-09 Martin Rudalics <rudalics@gmx.at>
1214
1215 * frame.c (Fraise_frame): On text-only terminals select frame in
1216 order to make it visible. (Bug#1061)
1217
1218 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
1219
1220 * fontset.c (fontset_find_font): Check frame validity.
1221
1222 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
1223
1224 * gtkutil.c (xg_display_open): Reset default display if none exists.
1225 (xg_display_close): Allow Emacs to close all displays (bug#985).
1226
1227 2008-10-06 Andreas Schwab <schwab@suse.de>
1228
1229 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
1230
1231 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
1232
1233 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
1234
1235 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
1236
1237 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
1238 during initialization.
1239
1240 2008-10-04 Eli Zaretskii <eliz@gnu.org>
1241
1242 * xdisp.c (redisplay_internal): If frame switched, redisplay the
1243 whole thing on MSDOS frames as well as on a TTY.
1244
1245 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
1246 well as for TTY.
1247 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
1248 well as on a TTY.
1249
1250 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
1251 as well as for TTY.
1252
1253 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
1254
1255 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
1256 MSDOS frames as well.
1257
1258 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1259
1260 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
1261 correct arguments.
1262 * menu.c (find_and_return_menu_selection) Add cast.
1263
1264 2008-10-03 Glenn Morris <rgm@gnu.org>
1265
1266 * emacs.c (USAGE1): Add --daemon.
1267
1268 2008-10-02 Eli Zaretskii <eliz@gnu.org>
1269
1270 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
1271 100, so it's in percents as advertised.
1272
1273 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1274
1275 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
1276 (ns_output.current_cursor, ns_output.desired_cursor)
1277 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
1278 (FRAME_NEW_CURSOR_COLOR): Remove.
1279
1280 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
1281 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
1282 enumeration (HOLLOW_BOX_CURSOR, etc.).
1283
1284 * nsterm.m (ns_frame_rehighlight): Remove commented code.
1285 (draw_window_cursor): Simplify code.
1286 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
1287 Don't change cursor type. In latter, call rehighlight instead of doing
1288 updates manually.
1289 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
1290 Use core Emacs cursor types.
1291
1292 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
1293
1294 2008-10-02 Martin Rudalics <rudalics@gmx.at>
1295
1296 * process.c (Faccept_process_output): Fix doc-string.
1297
1298 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1299
1300 * gmalloc.c (__sbrk): Also define for uClibc.
1301
1302 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
1303 for uClibc.
1304
1305 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1306
1307 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
1308 styles.
1309 (nsfont_open): Reenable the cache.
1310
1311 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1312
1313 * font.c (font_matching_entity): Reflect ATTRS in font selection.
1314 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
1315
1316 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
1317
1318 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
1319 a suspended terminal.
1320
1321 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
1322
1323 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
1324
1325 2008-09-30 Eli Zaretskii <eliz@gnu.org>
1326
1327 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
1328
1329 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
1330
1331 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
1332 in a continued line coincides with a line beginning.
1333
1334 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1335
1336 * nsfont.m (nsfont_trait_distance): Fix bug.
1337 (nsfont_list): Return a list rather than a vector (syncs with Handa
1338 changes of 2008-05-14).
1339 (nsfont_open): Improve logging.
1340
1341 2008-09-29 Andreas Schwab <schwab@suse.de>
1342
1343 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1344
1345 2008-09-28 Martin Rudalics <rudalics@gmx.at>
1346
1347 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
1348 name as char-resolve-modifiers.
1349 Reported by: Markus Triska <markus.triska@gmx.at>
1350
1351 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
1352
1353 * dispnew.c (init_display): Return earlier when running as a daemon.
1354
1355 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1356
1357 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
1358
1359 2008-09-27 Eli Zaretskii <eliz@gnu.org>
1360
1361 * composite.c (Fcomposition_get_gstring)
1362 (Fcompose_region_internal, Fcompose_string_internal)
1363 (Ffind_composition_internal): Doc fix.
1364 (syms_of_composite) <compose-chars-after-function>: Doc fix.
1365 (syms_of_composite) <auto-composition-function>: Doc fix.
1366 (syms_of_composite) <composition-function-table>: Doc fix.
1367
1368 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
1369
1370 * search.c (wordify): New argument for lax word-ends.
1371 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
1372
1373 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
1374
1375 * lisp.h (is_daemon): Declare.
1376 * dispnew.c (init_display): Do not try to initialize the terminal
1377 when running as a daemon.
1378
1379 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
1380
1381 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
1382 x_display_pixel_height.
1383
1384 2008-09-22 Martin Rudalics <rudalics@gmx.at>
1385
1386 * undo.c (record_point): Don't call Fundo_boundary for first
1387 change. (Bug#731)
1388
1389 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
1390
1391 * emacs.c (Fdaemonp): Doc fix.
1392
1393 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
1394
1395 * emacs.c (main): Place #ifdef in the proper place.
1396
1397 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
1398
1399 * emacs.c (standard_args): Add --daemon.
1400 (main): Disconnect from the terminal when --daemon is passed.
1401 (is_daemon): New variable.
1402 (Fdaemonp): New function.
1403 (syms_of_emacs): Defsubr it.
1404
1405 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
1406
1407 * xdisp.c (get_next_display_element): Handle string display
1408 correctly when checking for the end of a box run.
1409
1410 2008-09-20 Glenn Morris <rgm@gnu.org>
1411
1412 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
1413 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
1414 (Frename_file): Avoid copying to trash if a rename involves
1415 a delete. (Bug#964).
1416
1417 2008-09-20 Eli Zaretskii <eliz@gnu.org>
1418
1419 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
1420 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
1421 frames as well as termcap frames.
1422 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
1423 get_named_tty.
1424
1425 2008-09-19 Eli Zaretskii <eliz@gnu.org>
1426
1427 * process.c (procfs_system_process_attributes): Fix cmdline in
1428 case /proc/PID/cmdline is empty.
1429
1430 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
1431 x_display_pixel_height.
1432
1433 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
1434
1435 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
1436
1437 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
1438 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
1439
1440 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
1441
1442 * dispextern.h (struct it): Move line_wrap away from the middle of
1443 bitfields. Move voffset in struct iterator_stack_entry after the
1444 bitfields. Move tab_width near after another short.
1445
1446 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
1447
1448 * frame.h (struct frame): Move alpha from the middle of bitfields.
1449
1450 * window.h (struct window): Move frozen_window_start_p after the
1451 rest of the bitfields to reduce padding.
1452
1453 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
1454
1455 * xterm.h (x_display_info): Remove `height' and `width' members.
1456
1457 * nsterm.h (ns_display_info): Remove `height' and `width' members.
1458
1459 * w32term.h (w32_display_info): Remove `height', `width',
1460 `height_in', and `width_in' members.
1461
1462 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1463 New functions.
1464 (x_calc_absolute_position): Use them.
1465 (x_term_init): Omit removed `height' and `width' members.
1466
1467 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1468 New functions.
1469 (w32_read_socket, x_calc_absolute_position): Use them.
1470 (w32_initialize_display_info, w32_term_init): Omit removed members
1471 of w32_display_info.
1472
1473 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
1474 New functions.
1475 (ns_initialize_display_info): Omit removed members of ns_display_info.
1476
1477 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1478 New functions.
1479 (x_calc_absolute_position): Use them.
1480 (x_term_init): Omit removed `height' and `width' members.
1481
1482 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
1483 (compute_tip_xy):
1484 * frame.c (x_fullscreen_adjust):
1485 * xmenu.c (menu_position_func): Use x_display_pixel_height and
1486 x_display_pixel_width.
1487
1488 2008-09-18 Kenichi Handa <handa@m17n.org>
1489
1490 * composite.c (fill_gstring_header): Don't check FROM and TO here.
1491 (composition_compute_stop_pos): Fix handling of static composition.
1492 (Fcomposition_get_gstring): Check FROM and TO at first.
1493
1494 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1495
1496 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Oject
1497 mixup (YAILOM).
1498
1499 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
1500
1501 * indent.c (Fvertical_motion): Use position reported by iterator
1502 instead of PT for determining screen motion (bug#943).
1503
1504 2008-09-17 Romain Francoise <romain@orebokech.com>
1505
1506 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
1507
1508 2008-09-17 Kenichi Handa <handa@m17n.org>
1509
1510 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
1511
1512 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
1513 if necessary.
1514
1515 2008-09-16 Kenichi Handa <handa@m17n.org>
1516
1517 * coding.c (make_conversion_work_buffer): Avoid calling
1518 Fget_buffer_create if it is not necessary.
1519
1520 2008-09-15 Martin Rudalics <rudalics@gmx.at>
1521
1522 * window.c (Fselect_window): Don't update window_select_count and
1523 use_time when norecord is not nil.
1524
1525 2008-09-14 Kenichi Handa <handa@m17n.org>
1526
1527 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
1528 specpdl_ptr.
1529
1530 2008-09-12 Kenichi Handa <handa@m17n.org>
1531
1532 * indent.c (scan_for_column): Don't handle automatic composition
1533 if the current buffer is not associated with a window.
1534
1535 * composite.c (composition_reseat_it): If the current buffer is
1536 not associated with a window, ignore the automatic composition.
1537 (find_automatic_composition): Likewise.
1538
1539 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1540
1541 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
1542 (Fgpm_mouse_stop): Use it.
1543 * termhooks.h (close_gpm): Declare.
1544 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
1545 connection if Gpm_GetEvent fails.
1546
1547 * window.c (set_window_buffer): Always preserve current-buffer.
1548
1549 2008-09-12 Glenn Morris <rgm@gnu.org>
1550
1551 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
1552
1553 2008-09-11 Glenn Morris <rgm@gnu.org>
1554
1555 * charset.c (charset-map-path): Doc fix.
1556
1557 2008-09-10 Kenichi Handa <handa@m17n.org>
1558
1559 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
1560
1561 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
1562 compose a grapheme cluster with the preceding base glyph.
1563
1564 * composite.c (composition_compute_stop_pos): Fix previous change.
1565 Reset cmp_it->id to -1 at first.
1566
1567 2008-09-10 Glenn Morris <rgm@gnu.org>
1568
1569 * Makefile.in (character.o, chartab.o): Fix config.h typo.
1570
1571 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
1572
1573 * keyboard.c (read_key_sequence): Reapply translation maps when
1574 switching keyboards.
1575
1576 2008-09-09 Kenichi Handa <handa@m17n.org>
1577
1578 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
1579 characters.
1580
1581 * composite.c (FORWARD_CHAR): Fix calculation
1582 of (POSITION).pos_byte.
1583 (composition_compute_stop_pos): Limit the search of composition to
1584 at most 500 characters ahead. If we reach the limit or find a
1585 newline, set cmp_it->ch to -2 and return 0.
1586 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
1587
1588 2008-09-08 Kenichi Handa <handa@m17n.org>
1589
1590 * indent.c (Fvertical_motion): Be sure to set
1591 it_overshoot_expected if it.cmp_it.id is non-negative.
1592
1593 2008-09-07 Andreas Schwab <schwab@suse.de>
1594
1595 * callproc.c (Fcall_process): Don't hold references to string data
1596 across garbage collection. Move initialisation of new_argv down
1597 to avoid compiler bug.
1598
1599 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1600
1601 * process.c (Fsystem_process_attributes): Doc fix.
1602
1603 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
1604
1605 * callproc.c (Fcall_process): Canonicalize current directory name.
1606
1607 * xdisp.c (move_it_to): When moving by vpos, ensure that the
1608 iterator advances to the next line if the current line ends in a
1609 continued tab.
1610
1611 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
1612
1613 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
1614 member to point to cmp_from.
1615
1616 * xdisp.c: Doc fix for references to gidx data member.
1617
1618 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1619
1620 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
1621
1622 2008-09-07 Kenichi Handa <handa@m17n.org>
1623
1624 * composite.c (FORWARD_CHAR): Check STOP after
1625 incrementing (POSITION).pos.
1626
1627 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1628
1629 * process.c (Fsystem_process_attributes): Doc fix.
1630
1631 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
1632
1633 * keyboard.c (Ftop_level): Doc fix.
1634
1635 2008-09-06 Eli Zaretskii <eliz@gnu.org>
1636
1637 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
1638 minibuffer, don't let lower part of menu invade the echo area.
1639
1640 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
1641 "char *q" to access menu text and advance through it. Revert the
1642 change that displayed ">" instead of ASCII character 0x10.
1643
1644 2008-09-05 Eli Zaretskii <eliz@gnu.org>
1645
1646 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
1647 toggle boxes and radio buttons on MS-DOS as well.
1648
1649 2008-09-05 Kenichi Handa <handa@m17n.org>
1650
1651 * composite.c (autocmp_chars): Check lookback count.
1652 (composition_compute_stop_pos): Set cmp_it->lookback.
1653 (composition_reseat_it): Check lookback count.
1654 (struct position_record): New struct.
1655 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
1656 (find_automatic_composition): New function.
1657 (composition_adjust_point): Use find_automatic_composition.
1658
1659 * dispextern.h (struct composition_it): New member lookback.
1660
1661 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
1662
1663 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
1664 if moving by a single line.
1665
1666 2008-09-02 Andreas Schwab <schwab@suse.de>
1667
1668 * xterm.c (x_delete_display): Fix merge error.
1669
1670 * fileio.c (Fexpand_file_name): Remove unused variables.
1671
1672 2008-09-02 Eli Zaretskii <eliz@gnu.org>
1673
1674 * fileio.c (Fexpand_file_name): Copy argument `name' into local
1675 storage on all platforms, not just on DOS_NT.
1676
1677 2008-09-02 Jason Rumney <jasonr@gnu.org>
1678
1679 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
1680 Ensure mouse is not grabbed after menu is finished.
1681
1682 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
1683
1684 * xfaces.c (Finternal_set_alternative_font_family_alist)
1685 (Finternal_set_alternative_font_registry_alist): Properly copy
1686 entire alist structure.
1687
1688 2008-09-01 Kenichi Handa <handa@m17n.org>
1689
1690 * ftfont.c (ftfont_spec_pattern): Don't create a charset of the
1691 representative chars of the script is a vector.
1692 (ftfont_list): Handle the case the representative chars of the
1693 script is a vector.
1694
1695 * character.c (syms_of_character): Docstring of
1696 script-representative-chars fixed.
1697
1698 2008-08-31 Eli Zaretskii <eliz@gnu.org>
1699
1700 * msdos.c (BUILD_CHAR_GLYPH): New macro.
1701 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
1702 the menu. Allocate larger buffer for `text', to account for
1703 possible ^C characters.
1704
1705 2008-08-31 Martin Rudalics <rudalics@gmx.at>
1706
1707 * xdisp.c (prepare_menu_bars): Don't call
1708 Vwindow_size_change_functions with arg Qt.
1709
1710 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
1711
1712 * font.h (font_range):
1713 * fileio.c (report_file_error):
1714 * composite.c (composition_update_it): Yet another int/Lisp_Oject mixup.
1715
1716 2008-08-30 Glenn Morris <rgm@gnu.org>
1717
1718 * data.c (Fmake_variable_frame_local): Doc fix.
1719
1720 * frame.c (Fmodify_frame_parameters): Doc fix.
1721
1722 2008-08-30 Eli Zaretskii <eliz@gnu.org>
1723
1724 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
1725 needed by GetTokenInformation.
1726 (w32_system_process_attributes): Check return values of all system
1727 APIs.
1728
1729 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
1730 only when the state changes.
1731 (IT_update_begin, IT_update_end): Add termscript trace.
1732
1733 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
1734 clipboard is unavailable. Set dst to NULL if it doesn't point to
1735 malloc'ed data.
1736 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
1737 passing random values to xfree.
1738
1739 * dispnew.c (init_display): Set `tty's association in frame's
1740 parameters alist to the name of the terminal device, if that is known.
1741
1742 2008-08-29 Jason Rumney <jasonr@gnu.org>
1743
1744 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
1745
1746 2008-08-29 Eli Zaretskii <eliz@gnu.org>
1747
1748 * composite.c (fill_gstring_body): Avoid compiler warnings.
1749
1750 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
1751 LGLYPH_SET_CODE to avoid compiler warnings.
1752
1753 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
1754
1755 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
1756
1757 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
1758 LGLYPH_SET_CODE.
1759
1760 2008-08-29 Kenichi Handa <handa@m17n.org>
1761
1762 * fileio.c (report_file_error): Don't downcase the first character
1763 of errstring if it is still unibyte.
1764
1765 2008-08-29 Kenichi Handa <handa@m17n.org>
1766
1767 These changes are to re-implement the automatic composition so
1768 that it doesn't use text properties.
1769
1770 * Makefile.in (ftfont.o): Depend on composite.h.
1771 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
1772
1773 * character.h (Vunicode_category_table): Extern it.
1774
1775 * character.c (Vunicode_category_table): New variable.
1776 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
1777
1778 * chartab.c (optimize_sub_char_table): Perform more greedy
1779 optimization.
1780
1781 * composite.h (enum composition_method):
1782 Delete COMPOSITION_WITH_GLYPH_STRING.
1783 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
1784 (Vcomposition_function_table): Extern it.
1785 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
1786 (composition_gstring_put_cache, composition_gstring_from_id)
1787 (composition_gstring_p, composition_gstring_width)
1788 (composition_compute_stop_pos, composition_reseat_it)
1789 (composition_update_it, composition_adjust_point): Extern them.
1790 (Fcomposition_get_gstring): EXFUN it.
1791
1792 * composite.c: Include window.h, frame.h, dispextern.h font.h.
1793 (Vcomposition_function_table)
1794 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
1795 (gstring_hash_table, gstring_work, gstring_work_headers):
1796 New variables.
1797 (gstring_lookup_cache, composition_gstring_put_cache)
1798 (composition_gstring_from_id, composition_gstring_p)
1799 (composition_gstring_width, fill_gstring_header)
1800 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
1801 (composition_reseat_it, composition_update_it)
1802 (composition_adjust_point, Fcomposition_get_gstring): New functions.
1803 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
1804 and gstring_work_headers. DEFVAR_LISP composition-function-table.
1805 Defsubr compostion_get_gstring.
1806
1807 * dispextern.h (struct glyph): New union u.cmp. Delete the member
1808 cmp_id.
1809 (struct glyph_string): Delete the member gidx. New members
1810 cmp_id, cmp_from, and cmp_to.
1811 (enum it_method): Delete GET_FROM_COMPOSITION.
1812 (struct composition_it): New struct.
1813 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
1814 Delete c, len, cmp_id, cmp_len in u.comp.
1815
1816 * font.h (enum lgstring_indices): Delete it.
1817 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
1818 (enum lglyph_indices): Likewise.
1819 (font_range): Adjust extern.
1820 (font_fill_lglyph_metrics): Extern it.
1821
1822 * font.c (QCf): New variable.
1823 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1824 (font_prepare_composition): Delete this function.
1825 (font_range): Type and arguments changed.
1826 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
1827 (font_fill_lglyph_metrics): New function.
1828 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
1829 (syms_of_font): DEFSYM QCf. Delete defsubr for
1830 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
1831 Defsubr Sfont_shape_gstring.
1832
1833 * fontset.h (font_for_char): Extern it.
1834
1835 * fontset.c (font_for_char): New function.
1836
1837 * ftfont.c: Include composite.h.
1838 (ftfont_resolve_generic_family): Add langset "en" to pattern.
1839 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1840
1841 * indent.c: Include composite.h and dispextern.h.
1842 (check_composition): Delete this function.
1843 (scan_for_column): Handle composition by
1844 composition_compute_stop_pos, composition_reseat_it, and
1845 composition_update_it.
1846 (compute_motion): Likewise.
1847 (Fvertical_motion): Fix checking of composition.
1848
1849 * keyboard.c (adjust_point_for_property): Check composition by
1850 composition_adjust_point.
1851
1852 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
1853 struct glyph_string.
1854
1855 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
1856 (append_composite_glyph): Adjust for the change of struct it and
1857 struct glyph.
1858 (produce_composite_glyph): Likewise.
1859
1860 * w32term.c (x_draw_composite_glyph_string_foreground):
1861 Adjust for the change of struct glyph_string.
1862 (x_draw_glyph_string): Likewise.
1863
1864 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
1865 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1866
1867 * xdisp.c: Include font.h.
1868 (it_props): Delete the entry for Qauto_composed.
1869 (init_iterator): Initialize it->cmp_it.id to -1.
1870 (compute_stop_pos): Call composition_compute_stop_pos.
1871 (face_before_or_after_it_pos): Adjust for the change of struct it.
1872 (handle_auto_composed_prop): Delete it.
1873 (handle_composition_prop): Handle only static composition.
1874 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
1875 from xassert. Initialize it->cmp_it.stop_pos.
1876 (push_it): Adjust for the change of struct it.
1877 (pop_it): Likewise.
1878 (get_next_element): Delete next_element_from_composition.
1879 (CHAR_COMPOSED_P): New macro.
1880 (get_next_display_element): For automatic composition, get a face
1881 from the font in the glyph-string.
1882 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
1883 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
1884 (next_element_from_string): Check if the character at the current
1885 position is composed by CHAR_COMPOSED_P.
1886 (next_element_from_buffer): Likewise.
1887 (next_element_from_composition): Adjust for the change of struct
1888 it. Update it->cmp_it.
1889 (dump_glyph): Adjust for the change of struct glyph.
1890 (fill_composite_glyph_string): Adjust for the change of struct
1891 it and struct glyph. Don't handle automatic composition here.
1892 (fill_gstring_glyph_string): New function.
1893 (x_get_glyph_overhangs): Handle automatic composition.
1894 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
1895 (BUILD_GSTRING_GLYPH_STRING): New macro.
1896 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
1897 automatic composition.
1898 (append_composite_glyph): Adjust for the change of struct it and
1899 struct glyph.
1900 (x_produce_glyphs): Adjust for the change of struct it.
1901
1902 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
1903 the change of struct glyph_string.
1904 (x_draw_glyph_string): Likewise.
1905
1906 2008-08-29 Glenn Morris <rgm@gnu.org>
1907
1908 * buffer.c (word-wrap): Doc fix.
1909 * xdisp.c (truncate-partial-width-windows): Doc fix.
1910 Increase default to 50.
1911
1912 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
1913
1914 * xdisp.c (update_tool_bar_unwind): New function.
1915 (update_tool_bar): Temporarily set selected frame before building
1916 tool-bar items.
1917
1918 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
1919
1920 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
1921 snprintf, respectively.
1922 (xd_append_arg): Convert strings with Fstring_make_unibyte.
1923
1924 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
1925
1926 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
1927 LDFLAGS to GNUstep CC invocation.
1928
1929 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
1930
1931 * indent.c (Fvertical_motion): Revert last change. Handle the
1932 general case where we are moving forward, and PT spans multiple
1933 screen lines.
1934
1935 * eval.c (find_handler_clause): Temporarily increase
1936 max-lisp-eval-depth while printing the backtrace buffer, to
1937 guarantee that help-mode code can run.
1938
1939 2008-08-27 Eli Zaretskii <eliz@gnu.org>
1940
1941 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
1942 colors under -rv.
1943 (IT_set_frame_parameters): Don't swap foreground and background
1944 colors if `(reverse . t)' is present in the frame properties.
1945 (internal_terminal_init): Call init_frame_faces only for the
1946 initial frame.
1947
1948 2008-08-27 Andreas Schwab <schwab@suse.de>
1949
1950 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
1951
1952 2008-08-27 Andreas Schwab <schwab@suse.de>
1953
1954 * search.c (search_buffer): Set char_base to zero only at the end.
1955
1956 2008-08-27 Kenichi Handa <handa@m17n.org>
1957
1958 * fileio.c (report_file_error): Fix handling of multibyte error string.
1959
1960 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
1961
1962 * xterm.c (x_term_init): Temporarily hide the partially
1963 initialized terminal while calling vendor-specific-keysyms.
1964
1965 2008-08-26 Eli Zaretskii <eliz@gnu.org>
1966
1967 * msdos.c (internal_terminal_init): Most initializations done only
1968 once, especially initial_screen_colors[] and termscript open.
1969
1970 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
1971
1972 * eval.c (Fcondition_case): Doc fix.
1973
1974 * widgetprv.h (EmacsFramePart): Change font member to the new font
1975 struct.
1976
1977 * widget.c: Include character.h and font.h for XSETFONT.
1978 (setup_frame_gcs): Compute X font id from font struct, just once.
1979
1980 2008-08-26 Eli Zaretskii <eliz@gnu.org>
1981
1982 * term.c (get_named_tty): Fix last change.
1983
1984 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
1985
1986 * indent.c (Fvertical_motion): If moving forward starting from a
1987 multi-line string, move the iterator to the last line of that string.
1988
1989 2008-08-25 Eli Zaretskii <eliz@gnu.org>
1990
1991 * frame.c (do_switch_frame): Mark previously displayed frame as
1992 obscured for FRAME_MSDOS_P frames as well.
1993
1994 2008-08-24 Eli Zaretskii <eliz@gnu.org>
1995
1996 * frame.c (make_terminal_frame): Initialize f->terminal,
1997 f->terminal->reference_count, and scroll bars on MS-DOS as well.
1998 Set the top frame to newly created frame.
1999 (Fmake_terminal_frame): Reuse the_only_display_info.
2000
2001 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
2002 estimating available memory.
2003
2004 2008-08-23 David Reitter <david.reitter@gmail.com>
2005
2006 * nsterm.m (ns_draw_window_cursor): Don't call
2007 NSDisableScreenUpdates and NSEnableScreenUpdates on
2008 non-NS_IMPL_COCOA systems.
2009
2010 2008-08-23 Andreas Schwab <schwab@suse.de>
2011
2012 * process.c (procfs_system_process_attributes): Fix use of
2013 uninitialized variables.
2014
2015 2008-08-23 Eli Zaretskii <eliz@gnu.org>
2016
2017 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
2018
2019 * dispnew.c (init_display): Remove MS-DOS specific conditions for
2020 calling tty-set-up-initial-frame-faces.
2021
2022 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
2023 Allow MSDOS frames along with X frames.
2024
2025 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
2026 addition to output_termcap.
2027
2028 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
2029
2030 * termchar.h (FRAME_TTY): Support output_msdos_raw.
2031 (struct tty_display_info) [MSDOS]: Add fields related to mouse
2032 highlight.
2033
2034 * process.c [!subprocesses]: Define QCname.
2035 (syms_of_process): Intern and staticpro it.
2036
2037 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
2038 Adjust for changes in encoding/decoding routines.
2039 Use encode_coding_object and decode_coding_object instead of
2040 encode_coding and decode_coding.
2041
2042 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
2043
2044 * dosfns.c: Include frame.h before termhooks.h.
2045 (dos_cleanup): Use CURTTY ()->termscript instead of a global
2046 variable termscript.
2047
2048 * s/msdos.h (USER_FULL_NAME): Define.
2049 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
2050
2051 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
2052 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
2053 pw->pw_gecos.
2054
2055 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
2056 SELECTED_FRAME as additional (1st) argument.
2057 (tty_read_avail_input): Handle output_msdos_raw in
2058 addition to output_termcap.
2059
2060 * msdos.c: Include frame.h before termhooks.h.
2061 (mouse_on, mouse_off, mouse_moveto, mouse_init)
2062 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
2063 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
2064 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
2065 (IT_set_terminal_modes, IT_reset_terminal_modes)
2066 (IT_set_frame_parameters): Use tty->termscript instead of a global
2067 variable termscript.
2068 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
2069 global variable terminal_coding. Don't refer to
2070 Vnonascii_translation_table.
2071 (internal_terminal_init): Set Vwindow_system in current_kboard.
2072 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
2073 Announce date and time of session start, if termscript is open.
2074 Don't zero out the_only_display_info (it is done in
2075 term.c:init_tty). Open termscript only of not already open.
2076 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
2077 here instead of dos_ttraw. Don't initialize display if this is an
2078 initial tty. Don't set FRAME_FONT.
2079 (Vwindow_system_version): Bump to 23.
2080 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
2081 is available, set up mouse_position_hook.
2082 (dos_ttraw, IT_set_terminal_modes): If called with initial
2083 terminal, do nothing.
2084 (IT_set_frame_parameters): Handle the Qtty_type frame
2085 parameter by calling internal_terminal_init.
2086 (dos_set_window_size, show_mouse_face)
2087 (clear_mouse_face, IT_note_mode_line_highlight)
2088 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
2089 (dos_rawgetc): Use tty_display_info instead of x_display_info.
2090 (initialize_msdos_display): New function.
2091 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
2092 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
2093 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
2094 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
2095 Accept additional argument: a pointer to a frame. Update all callers.
2096 (request_sigio, unrequest_sigio): Don't define, now defined on
2097 sysdep.c.
2098 (IT_write_glyphs): Rewrite to use encode_terminal_code.
2099
2100 * term.c [MSDOS]: Include msdos.h.
2101 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
2102 conditional to DOS_NT. Allow only one call to this function in a
2103 session. Don't allocate a new struct tty_display_info; instead,
2104 reuse the_only_display_info. Call get_tty_size to get screen
2105 dimensions. Call init_baud_rate to set bad_rate.
2106 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
2107 (Fsuspend_tty) [MSDOS]: Don't close input and output.
2108 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
2109 (get_tty_terminal, get_named_tty, Ftty_type)
2110 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
2111 output_termcap.
2112 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
2113 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2114 only when subprocesses are supported.
2115
2116 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
2117 f->output_data.x.
2118 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
2119 terminal devices.
2120
2121 * msdos.h: Remove definition of struct x_display_info and struct
2122 x_output.
2123 (FRAME_FONT): Use output_data.tty.
2124 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
2125 (struct x_display_info): Rename from display_info. Update all users in
2126 msdos.c.
2127 (struct x_output): Remove background_pixel and foreground_pixel.
2128 (the_only_display_info): Rename from the_only_x_display.
2129 (dos_ttraw): Update prototype.
2130
2131 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
2132 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
2133
2134 2008-08-23 Jason Rumney <jasonr@gnu.org>
2135
2136 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
2137 (fn_TIFFSetDirectory): New library function used.
2138 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
2139 (tiff_load): Use :index to select among multiple images. Set count
2140 property when multiple images exist.
2141 (gif_format): Use :index, not :image.
2142
2143 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
2144
2145 * xdisp.c (try_scrolling): Check INT_MAX instead of
2146 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
2147 to obtain INT_MAX.
2148
2149 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
2150
2151 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
2152
2153 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
2154
2155 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
2156 GNUstep library location.
2157
2158 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
2159
2160 * xfaces.c (x_update_menu_appearance): Check validity of menu font
2161 before using it.
2162
2163 * puresize.h (BASE_PURESIZE): Increase to 1250000.
2164
2165 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2166
2167 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
2168 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
2169 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
2170 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
2171 (EmacsApp-cursor_blink_handler): Remove declaration.
2172 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
2173 match 01 Feb 2008 changes in xterm.c.
2174 (ns_read_socket): Add cast to avoid warning.
2175 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
2176 GNUstep.
2177
2178 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
2179
2180 * xselect.c (x_get_foreign_selection): Return nil if desired
2181 selection could not be obtained, instead of signalling an error.
2182
2183 2008-08-20 David Reitter <david.reitter@gmail.com>
2184
2185 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
2186 * nsterm.m: Remove ns-specific code for cursor blinking.
2187 (ns_draw_window_cursor): Clear cursor properly rather than
2188 redrawing the area. Respect width of bar cursors.
2189 These changes enable the use of generic blink-cursor-mode and
2190 generic cursor types in NS and support smooth cursor movements (do
2191 not blink off after command).
2192 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
2193 Nextstep, too.
2194
2195 2008-08-19 Kenichi Handa <handa@m17n.org>
2196
2197 * font.c (Vfont_log_deferred): New variable.
2198 (font_add_log): Check Vfont_log_deferred.
2199 (font_deferred_log): New function.
2200
2201 * font.h (font_deferred_log): Extern it.
2202
2203 * fontset.c (reorder_font_vector): Use encoding charset of fonts
2204 for sorting.
2205 (face_for_char): Use deferred log.
2206
2207 2008-08-18 Kenichi Handa <handa@m17n.org>
2208
2209 * fontset.c (face_for_char): Add font log.
2210
2211 * font.c (font_add_log): Add the font properties :script, :lang,
2212 and :otf in the log.
2213
2214 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
2215
2216 * xdisp.c: Remove dead code.
2217 (handle_invisible_prop, next_overlay_string): Defer call to
2218 setup_for_ellipsis.
2219 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
2220
2221 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
2222
2223 * xfaces.c (lookup_derived_face): Properly handle possible zero
2224 return value of get_lface_attributes.
2225 (merge_faces): Don't tell lookup_derived_face to signal an error
2226 if face is not found.
2227
2228 * dired.c (Fdirectory_files): Doc fix.
2229
2230 * process.c (make_process): Initialize kill_without_query struct
2231 member.
2232
2233 2008-08-15 Eli Zaretskii <eliz@gnu.org>
2234
2235 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
2236 Alternative calculation of totphys for Visual Studio 6.
2237
2238 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
2239
2240 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
2241 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
2242 All users changed.
2243 (stat): Only root directory passed to GetDriveType. Allow RAM
2244 disk as well as local fixed disk when w32-get-true-file-attributes
2245 is set to `local'.
2246 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
2247 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
2248 (w32_cached_id, w32_add_to_cache): New functions.
2249 (get_name_and_id): Look account names in the cache before calling
2250 lookup_account_sid.
2251 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
2252 New initialization flags.
2253 (globals_of_w32): Initialize them to zero.
2254 (w32_system_process_attributes): Use w32_cached_id and
2255 w32_add_to_cache.
2256
2257 2008-08-14 Lawrence Mitchell <wence@gmx.li>
2258
2259 * lread.c (Fread_char, Fread_char_exclusive): If no character
2260 event is read before timeout is reached, return nil, rather than
2261 converting to a number.
2262
2263 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
2264
2265 * fns.c (use_dialog_box): Doc fix.
2266
2267 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
2268 on OS X.
2269
2270 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
2271
2272 * frame.c (Qns_parse_geometry): New var.
2273 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
2274
2275 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
2276
2277 * xdisp.c (x_produce_glyphs): Handle the case when font has no
2278 space character in calculating tabs.
2279
2280 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
2281
2282 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
2283
2284 2008-08-10 Glenn Morris <rgm@gnu.org>
2285
2286 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
2287 silence gcc "limited range of data type" warnings in some
2288 make_fixnum_or_float calls.
2289
2290 2008-08-09 Eli Zaretskii <eliz@gnu.org>
2291
2292 * w32.c (w32_system_process_attributes): If the process does not
2293 exist, return nil.
2294
2295 * w32.c: Include thelp32.h, psapi.h and coding.h.
2296 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
2297 declarations.
2298 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
2299 (Process32Next_Proc): New typedefs.
2300 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
2301 (g_b_init_process32_next, g_b_init_open_thread_token)
2302 (g_b_init_impersonate_self, g_b_init_revert_to_self)
2303 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
2304 (g_b_init_get_process_working_set_size)
2305 (g_b_init_global_memory_status_ex): New static variables.
2306 (globals_of_w32): Initialize them.
2307 (create_toolhelp32_snapshot, process32_first, process32_next)
2308 (open_thread_token, impersonate_self, revert_to_self)
2309 (get_process_memory_info, get_process_working_set_size)
2310 (global_memory_status, global_memory_status_ex): New wrapper
2311 functions.
2312 (w32_list_system_processes, w32_system_process_attributes)
2313 (enable_privilege, restore_privilege, ltime, process_times):
2314 New functions.
2315 (convert_time_raw): New function.
2316 (convert_time): Remove conversion of FILETIME into time in 100
2317 nsec units, call convert_time_raw instead.
2318
2319 * process.h (w32_list_system_processes, w32_system_process_attributes):
2320 Add prototypes.
2321 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
2322 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
2323 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
2324 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
2325
2326 * process.c (Fsystem_process_attributes): Doc fix.
2327
2328 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
2329
2330 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
2331 a continued multi-char glyph; if so, advance to the actual glyph.
2332
2333 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2334
2335 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
2336
2337 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
2338 (.m.o): Use it.
2339 * config.in: Regenerate.
2340
2341 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
2342
2343 * xdisp.c (redisplay_window): Revert last change.
2344 (try_window): Check bottom scroll margin too.
2345
2346 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2347
2348 * config.in: Regenerate.
2349
2350 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
2351 -list-load-path-shadows'.
2352 (nsgui.h): Reduce number of things depending on it.
2353
2354 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
2355
2356 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
2357 instead of window-end which does the wrong thing at eob.
2358 (try_cursor_movement): Minor optimization.
2359 (redisplay_window): If scroll margin is defined, don't assume
2360 window doesn't need scrolling.
2361
2362 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2363
2364 * config.in: Regenerate.
2365
2366 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
2367 (mostlyclean): Don't delete *.d under NS.
2368
2369 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
2370
2371 2008-08-06 Kenichi Handa <handa@m17n.org>
2372
2373 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
2374
2375 2008-08-06 Andreas Schwab <schwab@suse.de>
2376
2377 * config.in: Regenerate.
2378
2379 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
2380
2381 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
2382 forcing a window start.
2383
2384 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
2385 (auto_save_1): Update modtime when auto-save-list-file-name is on.
2386
2387 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2388
2389 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
2390 argument.
2391
2392 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
2393
2394 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
2395 <scroll-down-aggressively, before-change-functions>:
2396 <after-change-functions>: Reflow docstrings.
2397
2398 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2399 Ken Raeburn <raeburn@gnu.org>
2400
2401 Dock menu customization, based on a patch by Ken Raeburn, plus some
2402 other fixes.
2403 * nsmenu.m (dockMenu): New variable.
2404 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
2405
2406 * nsterm.h (dockMenu): Declare.
2407
2408 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
2409 (ns_term_init): Initialize dockMenu.
2410 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
2411 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
2412 left.
2413
2414 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
2415
2416 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
2417
2418 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
2419
2420 * config.in: Regenerate.
2421
2422 2008-08-04 Seiji Zenitani <zenitani@mac.com>
2423
2424 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
2425
2426 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
2427
2428 * nsterm.h (find_and_call_menu_selection): Fix prototype.
2429
2430 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2431
2432 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
2433
2434 * keyboard.h: Comment an #endif.
2435
2436 * lisp.h (have_menus_p): Adjust comment.
2437
2438 * menu.c (find_and_return_menu_selection): Fix comparison with
2439 client_data.
2440
2441 * nsmenu.m (popup_activated_flag): New variable.
2442 (popup_activated): New function.
2443 (menu-or-popup-active-p): New exported lisp definition.
2444 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
2445 when popup done.
2446 (ns_popup_dialog): Set popup_activated_flag.
2447
2448 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
2449 version for GNUstep (handled by conditional typedef in nsterm.m).
2450 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
2451 in rgb.txt).
2452
2453 * process.c (init_process): Use DARWIN_OS, not DARWIN.
2454
2455 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
2456
2457 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
2458
2459 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
2460 shortcircuit if popup_activated like GTK and X toolkit.
2461
2462 * m/inter386.h: Change DARWIN to DARWIN_OS.
2463
2464 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
2465 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
2466 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
2467 comment on NO_SOCK_SIGIO.
2468
2469 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
2470
2471 * nsterm.m (windowDidResize): Remove stopModal call.
2472
2473 2008-08-03 Andreas Schwab <schwab@suse.de>
2474
2475 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
2476 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
2477
2478 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
2479
2480 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
2481 Don't use uninitialized pointer variable when using getrlimit.
2482
2483 2008-08-02 Jason Rumney <jasonr@gnu.org>
2484
2485 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
2486
2487 2008-08-02 Eli Zaretskii <eliz@gnu.org>
2488
2489 * alloc.c (NSTATICS): Bump to 0x640.
2490
2491 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
2492
2493 * lisp.h: Add prototype for directory_files_internal.
2494
2495 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
2496 New functions.
2497 (syms_of_process): Defsubr them. Add initializations for various
2498 Q* symbols used in procfs_system_process_attributes.
2499 (procfs_list_system_processes, procfs_system_process_attributes)
2500 [HAVE_PROCFS]: New functions.
2501 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
2502 (procfs_get_total_memory): New functions.
2503
2504 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
2505
2506 * xfaces.c (Fx_load_color_file): Fix previous change;
2507 it is #ifdef WINDOWSNT, not WINDOWS_NT.
2508
2509 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
2510
2511 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
2512
2513 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2514
2515 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
2516
2517 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
2518
2519 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
2520
2521 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
2522 define NSApplicationDelegateReplySuccess.
2523 (EmacsView -converstationIdentifier): Use long instead of
2524 NSInteger for GNUstep, since it doesn't have NSInteger.
2525
2526 * xmenu.c: Revert last change.
2527
2528 * keyboard.h: Fix last change.
2529
2530 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
2531
2532 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
2533 on Windows.
2534
2535 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2536
2537 Warning clearing and clean-up in NS port.
2538 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
2539 Add prototypes.
2540 * nsgui.h (FACE_DEFAULT): Remove, unused.
2541 (XGCValues): Change colors to unsigned long.
2542 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
2543 nsterm.m.
2544 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
2545 (ns_list_fonts): Remove, unused.
2546 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
2547 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
2548 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
2549 (nsfont_draw): Compare face colors to 0, not nil.
2550 * nsmenu.m (struct widget_value): Drop unneeded declaration.
2551 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
2552 (-addSubmenuWithTitle:): Use NSMenuItem class.
2553 (ns_popup_menu): Use NO, not NULL, for enabled setting.
2554 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
2555 (ns_clip_to_row): Make gc arg a BOOL.
2556 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
2557 ns_clip_to_row() call.
2558 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
2559 used). Cast FRAME_FONT assignments.
2560 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
2561 (ns_string_to_lispmod): Change arg to const char.
2562 (ns_term_init): Use NSMenuItem class.
2563 (EmacsApp -openFile:): Move to different section of file.
2564 (EmacsApp -application:openFiles:): Don't return a value, call
2565 -replyToOpenOrPrint:.
2566 (EmacsView -keyDown:): Fix up cast.
2567 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
2568 (EmacsView -menuDown:): Cast tag in call to
2569 find_and_call_menu_selection().
2570 (ns_list_fonts): Remove, unused.
2571 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
2572 (ns_fontname_to_xlfd): Make static.
2573 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
2574 Remove prototypes (now in keyboard.h).
2575 (next_menubar_widget_id): Remove, unused.
2576 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
2577 Remove prototypes (now in keyboard.h).
2578 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
2579
2580 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
2581
2582 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
2583 (floatfns.o): Depend on syssignal.h.
2584 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
2585
2586 * systty.h: Fix previous change that removed BSD_TERMIOS.
2587 Add comments to #ifdefs.
2588
2589 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2590
2591 * w32fns.c (w32-load-color-file): Remove.
2592 (x-open-connection): Use renamed Fx_load_color_file.
2593 * xfaces.c (x-load-color-file): Add.
2594 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
2595 Emacs.clr.
2596 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
2597
2598 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
2599
2600 * dbusbind.c (Fdbus_call_method_asynchronously)
2601 (Fdbus_method_error_internal): New defuns.
2602 (xd_read_message): Handle also reply messages.
2603 (Vdbus_registered_functions_table): Extend docstring.
2604
2605 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
2606
2607 * keyboard.c (gobble_input): Fix previous change.
2608
2609 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2610
2611 * bitmaps/README:
2612 * xfns.c:
2613 * termcap.c:
2614 * term.c:
2615 * syswait.h:
2616 * systty.h:
2617 * systime.h:
2618 * syssignal.h:
2619 * sysdep.c:
2620 * process.h:
2621 * process.c:
2622 * print.c:
2623 * ndir.h:
2624 * lread.c:
2625 * keyboard.c:
2626 * getpagesize.h:
2627 * floatfns.c:
2628 * fileio.c:
2629 * emacs.c:
2630 * doc.c:
2631 * dispnew.c:
2632 * dired.c:
2633 * data.c:
2634 * callproc.c:
2635 * buffer.c:
2636 * README:
2637 * Makefile.in:
2638 * s/template.h:
2639 * s/msdos.h:
2640 * m/vax.h: Remove VMS support.
2641 * s/vms.h:
2642 * vlimit.h:
2643 * uaf.h:
2644 * temacs.opt:
2645 * param.h:
2646 * ioctl.h: Remove file.
2647
2648 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2649
2650 * s/ms-w32.h (MULTI_KBOARD): Remove.
2651 * xterm.c:
2652 * xselect.c:
2653 * xfns.c:
2654 * window.c:
2655 * w32term.c:
2656 * w32fns.c:
2657 * terminal.c:
2658 * termhooks.h:
2659 * term.c:
2660 * sysdep.c:
2661 * keyboard.h:
2662 * keyboard.c:
2663 * frame.h:
2664 * frame.c:
2665 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
2666 * config.in: Regenerate.
2667
2668 2008-07-30 Jason Rumney <jasonr@gnu.org>
2669
2670 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
2671
2672 * w32font.c (w32font_encode_char): Leave as unicode if in range.
2673 (w32font_open_internal): Get unicode version of textmetrics.
2674 Don't enable or disable glyph indices here.
2675 (w32font_open): Disable use of glyph indices.
2676
2677 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
2678
2679 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
2680
2681 * minibuf.c (Vread_buffer_function): Doc fix.
2682
2683 2008-07-30 John Paul Wallington <jpw@pobox.com>
2684
2685 * minibuf.c (read_buffer_completion_ignore_case): New var.
2686 (Fread_buffer): Use it.
2687
2688 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
2689
2690 * systty.h (sensemode): Remove empty #if. Remove reference to
2691 BSD_TERMIOS, unused.
2692
2693 * sysdep.c: Remove reference to DGUX.
2694 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
2695
2696 * config.in: Regenerate.
2697
2698 2008-07-30 Jason Rumney <jasonr@gnu.org>
2699
2700 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
2701
2702 2008-07-29 Jason Rumney <jasonr@gnu.org>
2703
2704 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
2705 is populated.
2706 (uniscribe_encode_char): Always use uniscribe.
2707 Avoid using context if cache is populated.
2708
2709 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
2710
2711 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
2712 open menu.
2713
2714 * gtkutil.c (menu_nav_ended): Remove.
2715 (create_menus): Remove signal connect for menu_nav_ended.
2716
2717 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
2718
2719 * xdisp.c (redisplay_window): Check return value of
2720 compute_window_start_on_continuation_line before forcing a window
2721 start.
2722
2723 2008-07-28 Jason Rumney <jasonr@gnu.org>
2724
2725 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
2726
2727 * w32term.c (w32_enable_unicode_output, cleartype_active):
2728 Remove obsolete display options.
2729 (x_draw_glyph_string_background): Don't use old cleartype_active
2730 workaround.
2731 (w32_initialize): Remove cleartype_active initialization.
2732 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
2733
2734 2008-07-28 Andreas Schwab <schwab@suse.de>
2735
2736 * lisp.h (init_weak_hash_tables, syms_of_font)
2737 (xd_read_queued_messages, syms_of_dbusbind): Declare.
2738 (remove_hash_entry): Don't declare.
2739 * eval.c (maybe_call_debugger): Make static and move before use.
2740 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
2741 * xdisp.c: Include "gtkutil.h" if USE_GTK.
2742 * xterm.h (x_set_frame_alpha): Declare.
2743
2744 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
2745
2746 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
2747 (create_menus): Connect selection-done to menu_nav_ended.
2748
2749 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2750
2751 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
2752 Set Vx_resource_name to a fallback. Replace read of 'buffered'
2753 parameter with read of 'alpha' one.
2754 (Qns_frame_parameter): Remove.
2755 * nsselect.m (selection-coding-system)
2756 (next-selection-coding-system, Vselection_coding_system)
2757 (Vnext_selection_coding_system): Drop.
2758
2759 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2760
2761 * nsfns.m (do-applescript, do_applescript): Rename to
2762 ns-do-applescript, ns_do_applescript, and move within file.
2763
2764 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2765
2766 Remove support for Mac Carbon.
2767 * mactoolbox.c:
2768 * macterm.h:
2769 * macterm.c:
2770 * macselect.c:
2771 * macmenu.c:
2772 * macgui.h:
2773 * macfns.c:
2774 * mac.c: Remove file.
2775 * s/darwin.h:
2776 * m/intel386.h:
2777 * xfaces.c:
2778 * xdisp.c:
2779 * window.c:
2780 * tparam.c:
2781 * termhooks.h:
2782 * termcap.c:
2783 * term.c:
2784 * syssignal.h:
2785 * sysselect.h:
2786 * sysdep.c:
2787 * process.c:
2788 * lread.c:
2789 * lisp.h:
2790 * keyboard.c:
2791 * image.c:
2792 * fringe.c:
2793 * frame.h:
2794 * frame.c:
2795 * fontset.c:
2796 * font.h:
2797 * font.c:
2798 * fns.c:
2799 * fileio.c:
2800 * emacs.c:
2801 * dispnew.c:
2802 * dispextern.h:
2803 * config.in:
2804 * atimer.c:
2805 * Makefile.in: Remove code for Carbon.
2806
2807 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2808
2809 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
2810
2811 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2812
2813 * macterm.h (kCGBitmapByteOrder32Host): New define for
2814 non-universal SDKs.
2815
2816 * image.c (mac_create_cg_image_from_image, image_load_image_io)
2817 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2818
2819 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
2820 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2821
2822 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
2823
2824 * w32inevt.c: Include dispextern.h.
2825
2826 2008-07-26 Andreas Schwab <schwab@suse.de>
2827
2828 * print.c (print_object): Fix off-by-one in last change.
2829
2830 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
2831
2832 * term.c (syms_of_term): Don't initialize default_orig_pair,
2833 default_set_foreground and default_set_background on Windows.
2834
2835 2008-07-25 Jason Rumney <jasonr@gnu.org>
2836
2837 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
2838 ScriptItemize. Clean up return value checking. Remove unused
2839 variables.
2840 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
2841 shaping engine.
2842
2843 * w32font.c (w32font_has_char): Handle the case where we can't
2844 determine the script for a character.
2845
2846 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
2847
2848 * term.c (syms_of_term): Initialize default_orig_pair,
2849 default_set_foreground, and default_set_background.
2850
2851 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
2852 clash (bug#86).
2853 (getloadavg): Callers changed.
2854
2855 * image.c (svg_load_image): Fix last change.
2856 (svg_load_image): Use rsvg_handle_get_dimensions to check that
2857 image size is valid. Use g_object_unref instead of deprecated
2858 rsvg_handle_free to free rsvg handle.
2859 (x_from_xcolors): Don't initialize pixmap (silence compiler).
2860
2861 2008-07-25 Jason Rumney <jasonr@gnu.org>
2862
2863 * w32font.c (w32font_encode_char): Encode characters outside BMP as
2864 surrogates before looking up glyph index.
2865 (w32font_text_extents): Encode as surrogates if falling back to
2866 functions that need UTF-16 wide chars.
2867
2868 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
2869 BMP as surrogates before looking up glyph index.
2870
2871 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
2872
2873 * image.c (svg_load_image): Check for failure in return value of
2874 rsvg_handle_get_pixbuf. Free rsvg handle when done.
2875
2876 2008-07-25 Jason Rumney <jasonr@gnu.org>
2877
2878 * w32font.c (Fx_select_font): Reverse sense of second arg.
2879
2880 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
2881
2882 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
2883 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
2884
2885 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
2886 (PURESIZE): Use it.
2887
2888 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
2889
2890 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
2891 * m/alpha.h (TEXT_END):
2892 * m/ibmrs6000.h (TEXT_END):
2893 * m/macppc.h (TEXT_END):
2894 * s/darwin.h (TEXT_END):
2895 * s/msdos.h (TEXT_END): Remove, unused.
2896 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
2897 * s/cygwin.h: Remove comment.
2898
2899 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
2900 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
2901 * m/intel386.h (DOT_GLOBAL_START):
2902 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
2903 (USG): Remove, file not used on USG platforms.
2904
2905 * Makefile.in (HAVE_X11): Remove empty #else.
2906
2907 2008-07-24 Andreas Schwab <schwab@suse.de>
2908
2909 * fileio.c (Finsert_file_contents): Properly adjust undo list
2910 after format conversion.
2911
2912 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
2913
2914 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
2915 (menu_nav_ended): Remove.
2916 (create_menus): Remove signal connect for menu_nav_ended.
2917 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
2918 create_menus.
2919 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
2920
2921 2008-07-23 Jason Rumney <jasonr@gnu.org>
2922
2923 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
2924 with opened font.
2925 (w32font_open): Set font type to gdi.
2926
2927 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
2928
2929 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
2930
2931 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
2932 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
2933 defines it.
2934 * unexec.c (ADDR_CORRECT): Define unconditionally.
2935
2936 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
2937
2938 * unexec.c: Remove code depending on !COFF and USG, the file is
2939 not used for such systems.
2940
2941 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
2942 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
2943 (LD_SWITCH_SYSTEM_1): Remove, update users.
2944
2945 * s/darwin.h (DATA_END):
2946 * m/intel386.h (DATA_END):
2947 * m/ibmrs6000.h (DATA_END):
2948 * m/alpha.h (DATA_END): Remove, unused.
2949
2950 * config.in: Regenerate.
2951 * s/ms-w32.h (subprocesses): Define unconditionally.
2952 * s/template.h (subprocesses): Update comment.
2953 * s/vms.h (subprocesses):
2954 * s/usg5-4.h (subprocesses):
2955 * s/hpux10-20.h (subprocesses):
2956 * s/gnu-linux.h (subprocesses):
2957 * s/cygwin.h (subprocesses):
2958 * s/bsd-common.h (subprocesses):
2959 * s/aix4-2.h (subprocesses):
2960 * s/darwin.h (subprocesses): Do not define, defined by default now.
2961
2962 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
2963 Remove all references.
2964 (temacs): Add GNUstep specific ld flags.
2965
2966 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
2967 similarly to what X does.
2968
2969 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2970
2971 * nsfns.m (x-list-fonts): Remove.
2972 (syms_of_nsfns): Drop the x-list-fonts declaration.
2973 * nsterm.m: Get rid of remaining "//" comments.
2974
2975 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
2976
2977 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
2978
2979 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
2980 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
2981 (Fns_own_selection_internal, Fx_disown_selection_internal)
2982 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
2983
2984 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
2985 ... */' style of docstrings. Doc fixes.
2986
2987 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2988
2989 * terminfo.c (UP, BC, PC): Undo previous change.
2990
2991 * nsfns.m: Rename ns prefixed functions/variables to the
2992 corresponding x versions. Update references.
2993
2994 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
2995
2996 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
2997
2998 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2999
3000 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
3001 Remove forwarding functions.
3002 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
3003 non-static.
3004 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
3005 non-static.
3006 (ns_frame_parm_handlers): Use the new names.
3007 (syms_of_nsfns): Move to the end of file.
3008
3009 * nsterm.m (syms_of_nsterm): Move to the end of file.
3010
3011 * dispnew.c (init_display): Remove code for X10.
3012
3013 2008-07-22 Jason Rumney <jasonr@gnu.org>
3014
3015 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
3016 bare drive.
3017
3018 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3019
3020 * nsterm.m (syms_of_nsterm): Remove debugging println.
3021
3022 2008-07-22 David Reitter <david.reitter@gmail.com>
3023
3024 * nsfns.m (do_applescript, F_do_applescript): NS version of the
3025 Carbon implementation of the same functionality: execute arbitrary
3026 AppleScript code.
3027
3028 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3029
3030 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
3031 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
3032 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3033 (Fx_display_mm_height, Fx_display_mm_width)
3034 (Fx_display_backing_store, Fx_display_visual_class)
3035 (Fx_display_save_under, Fx_open_connection)
3036 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
3037 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
3038 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3039 (Fx_display_pixel_width, Fx_display_pixel_height)
3040 (Fx_display_usable_bounds, Fx_display_planes)
3041 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
3042 ... */' style of docstrings.
3043
3044 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
3045
3046 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
3047 on this platform.
3048 (mips):
3049 * m/iris4d.h (mips): Do not define.
3050 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
3051
3052 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
3053
3054 * image.c:
3055 * nsfns.m:
3056 * nsselect.m:
3057 * nsterm.h:
3058 * nsterm.m: Rename ns prefixed functions/variables to the
3059 corresponding x versions. Update references.
3060
3061 * m/ibms390x.h (NO_REMAP): Do not undefine.
3062
3063 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
3064
3065 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
3066
3067 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
3068 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
3069 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
3070 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
3071 (Fns_display_mm_height, Fns_display_mm_width)
3072 (Fns_display_backing_store, Fns_display_visual_class)
3073 (Fns_display_save_under, Fns_open_connection)
3074 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
3075 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
3076 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3077 (Fns_display_pixel_width, Fns_display_pixel_height)
3078 (Fns_display_usable_bounds, Fx_display_planes)
3079 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
3080
3081 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
3082
3083 * print.c (print_object): Check print_depth before searching for
3084 circularities.
3085
3086 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
3087
3088 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
3089 only sprintf.
3090
3091 2008-07-21 Kenichi Handa <handa@m17n.org>
3092
3093 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
3094
3095 2008-07-20 Andreas Schwab <schwab@suse.de>
3096
3097 * syntax.c (find_start_pos, find_start_value)
3098 (find_start_value_byte, find_start_begv, find_defun_start)
3099 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
3100
3101 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3102
3103 * s/sol2-3.h: Insert contents of s/sol2.h.
3104 (LD_SWITCH_SYSTEM): Remove redundant definition.
3105 * s/sol2.h: Remove, unused.
3106
3107 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3108
3109 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
3110
3111 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3112
3113 * Makefile.in (ns_appdir): Fix typo in find command.
3114
3115 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3116
3117 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
3118
3119 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
3120 added not supported anymore.
3121
3122 * s/usg5-4-2.h (LIBS_SYSTEM):
3123 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
3124
3125 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3126 * s/lynxos.h (GETPGRP_NO_ARG):
3127 * s/hpux10-20.h (NO_SIOCTL_H):
3128 * s/gnu.h (GETPGRP_NO_ARG):
3129 * s/gnu-linux.h (NO_SIOCTL_H):
3130 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3131 * s/cygwin.h (GETPGRP_NO_ARG):
3132 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
3133 (C_DEBUG_SWITCH): Remove duplicate definition.
3134
3135 * m/ibms390.h: Remove boilerplate comments.
3136
3137 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
3138
3139 * process.c (HAVE_SERIAL): Consolidate ifdefs.
3140 (wait_reading_process_output): Remove code for SunOS, platform not
3141 supported anymore. Use SOLARIS2 instead of sun.
3142
3143 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3144
3145 * font.c (font_open_by_name): Under NS, default lface height to zero.
3146 (font_open_for_lface): Under NS, set size based on frame fontsize.
3147 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
3148 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
3149
3150 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3151
3152 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
3153 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
3154 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
3155 YES/NO.
3156 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
3157 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
3158 * Makefile.in (clean): Clear out build destination dir.
3159
3160 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3161
3162 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
3163 xterm, xselect.
3164 * lisp.h: Remove declaration of hash_remove.
3165 * nsgui.h: Remove redefinitions of hash_remove.
3166 * fns.c (hash_remove): Rename to hash_remove_from_table.
3167
3168 2008-07-19 Seiji Zenitani <zenitani@mac.com>
3169
3170 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
3171 strdup() the family UTF8String before modifying it.
3172
3173 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3174
3175 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
3176 NS_FACE_BACKGROUND with 0 instead of nil.
3177 * nsfont.m (nsfont_draw): Same.
3178
3179 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
3180
3181 * nsfns.m (ns_set_background_color): Fix crash.
3182
3183 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
3184
3185 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
3186
3187 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
3188
3189 * puresize.h (BASE_PURESIZE): Increase to 1240000.
3190
3191 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3192
3193 * gtkutil.c: Include <config.h> instead of "config.h".
3194
3195 * lisp.h (Foverlay_buffer): Add EXFUN.
3196
3197 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
3198 child process to complete child_setup. Undo 2005-09-21 change.
3199
3200 * s/darwin.h: Mention setsid after vfork.
3201
3202 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3203
3204 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
3205 Depend on macgui.h.
3206
3207 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
3208 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
3209
3210 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
3211 and f19.
3212 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
3213
3214 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
3215 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
3216 Remove enumerators.
3217
3218 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
3219 Check if FACE_FROM_ID returns NULL.
3220
3221 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
3222
3223 * w32inevt.c (change_frame_size): Remove extern declaration.
3224 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
3225 change_frame_size.
3226
3227 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3228
3229 * getloadavg.c: Revert last change (2008-07-15).
3230
3231 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3232
3233 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
3234 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
3235 from configure.
3236
3237 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
3238
3239 * s/sol2.h:
3240 * s/sol2-4.h: Reorganize conditionals.
3241
3242 * ecrt0.c: Remove code depending on m68000, not used anymore.
3243
3244 * fns.c (hash_remove): Make static.
3245 * lisp.h (hash_remove): Don't prototype.
3246
3247 * m/ibmrs6000.h:
3248 * m/ibms390x.h:
3249 * m/macppc.h: Remove boilerplate comments.
3250
3251 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
3252 Solaris, which does not need them.
3253
3254 * m/vax.h: Remove comments about unsupported systems.
3255
3256 * s/darwin.h: Reorganize ifdefs.
3257
3258 2008-07-17 Andreas Schwab <schwab@suse.de>
3259
3260 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
3261
3262 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
3263
3264 Use SDATA. Follow coding convention of placing operators at
3265 beginning of next line rather than end of previous line, and placing
3266 spaces around infix operators.
3267
3268 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
3269 in case it was defined already.
3270 USE @GNUSTEP_MAKEFILES@ rather than envvars.
3271 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
3272 ns_default.
3273 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
3274 Lisp_Objects.
3275 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
3276 (ns_defined_color, ns_color_to_lisp): Declare.
3277 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
3278 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
3279 it's accepted even with USE_LISP_UNION_TYPE.
3280 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
3281 (update_frame_tool_bar): Remove apparently obsolete tests for
3282 non-integerness of f->tool_bar_lines.
3283 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
3284 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
3285 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
3286 (nsfont_open): Don't confuse NULL for Qnil.
3287 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
3288 * menu.h (find_and_call_menu_selection):
3289 * menu.c (find_and_call_menu_selection): Use just int for vector size.
3290 (find_and_return_menu_selection): Always return something.
3291 * frame.h: Include dispextern.h for Display_Info.
3292 (display_x_get_resource): Declare.
3293
3294 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
3295
3296 * syntax.c: Remove stdio.h include accidentally introduced in
3297 Emacs.app commit.
3298 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
3299 NS_IMPL_COCOA.
3300 * keyboard.c (handle_async_input, input_available_signal): Remove
3301 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
3302
3303 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3304
3305 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
3306 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
3307 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
3308 Use SDATA.
3309
3310 * keymap.c: Remove all NS-specific code.
3311 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
3312 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
3313 where_is_preferred_modifier, return a different value depending on how
3314 preferred is the binding.
3315 (where_is_internal): Adjust accordingly.
3316 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
3317 Adjust to new preferred_sequence_p.
3318 (syms_of_keymap): Declare `where-is-preferred-modifier'.
3319 * keyboard.c (parse_solitary_modifier): Not static any more.
3320 * keyboard.h (parse_solitary_modifier): Declare.
3321
3322 2008-07-16 Andreas Schwab <schwab@suse.de>
3323
3324 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
3325 of easymenu.
3326
3327 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
3328
3329 * xdisp.c (move_it_in_display_line): Account for word wrap, so
3330 that we don't move off the line.
3331
3332 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3333
3334 * keyboard.c (Qsuper): Remove.
3335 (parse_menu_item): Don't call where_is_internal specially for NS.
3336
3337 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3338
3339 * s/gnu-linux.h: Remove boilerplate comments.
3340
3341 * m/alpha.h (__ELF__): Consolidate conditions.
3342
3343 * m/m68k.h (linux): Use GNU_LINUX instead.
3344 Remove boilerplate comments.
3345
3346 * m/intel386.h: Undo refactoring from previous change.
3347 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
3348 too, remove dead code.
3349 (linux): Use GNU_LINUX instead.
3350
3351 2008-07-16 Jason Rumney <jasonr@gnu.org>
3352
3353 * w32gui.h: Repeat 26 June changes lost by last change.
3354
3355 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3356
3357 * systty.h: Remove code for Aix on 386, unsupported platform.
3358
3359 * s/ms-w32.h: Remove boilerplate comments.
3360 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
3361
3362 * s/gnu-linux.h (TERM): Remove support.
3363 (HAVE_SYSVIPC): Remove, unused.
3364 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
3365 for this system.
3366
3367 * process.c: Remove support for IRIS, unused.
3368 Remove support for TERM, not relevant anymore.
3369
3370 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
3371 used with the definition.
3372
3373 * s/aix4-2.h (static): Do not undef.
3374
3375 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
3376 only used on Aix.
3377 (HAVE_SYSVIPC): Remove, unused.
3378
3379 * m/hp800.h (CANNOT_DUMP): Do not undef.
3380
3381 * m/alpha.h: Fix comment.
3382
3383 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
3384 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
3385 used by this configuration.
3386 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
3387 * unexec.c: Remove code depending on HPUX and
3388 USG_SHARED_LIBRARIES, not used with this file. Remove code
3389 depending on IRIS, unused. Remove if 0-ed code.
3390
3391 * s/template.h: Remove comments about static.
3392
3393 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
3394 Remove if 0-ed code.
3395 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
3396 were the same as the default.
3397 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
3398 Remove boilerplate comments.
3399 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
3400 (HAVE_SYSVIPC): Remove, unused.
3401 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
3402
3403 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3404 Remove boilerplate comments.
3405 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3406 Remove boilerplate comments.
3407 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3408 Remove boilerplate comments.
3409 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
3410
3411 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
3412 USG systems which do not use DATA_SEG_BITS.
3413 Refactor code. Remove boilerplate comments.
3414
3415 * m/ibms390.h:
3416 * m/m68k.h:
3417 * s/bsd-common.h:
3418 * s/cygwin.h:
3419 * s/darwin.h:
3420 * s/freebsd.h:
3421 * s/gnu.h:
3422 * s/msdos.h: Remove boilerplate comments.
3423
3424 * m/iris4d.h: Remove boilerplate comments and code for systems that
3425 do not use this file.
3426 (IRIS_4D): Remove, unused.
3427
3428 * m/mips.h: Remove boilerplate comments and code for systems that
3429 do not use this file.
3430 (SIGN_EXTEND_CHAR):
3431 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
3432 * unexmips.c: Remove file, unused.
3433
3434 * editfns.c (Fuser_full_name): Replace the only use of
3435 USER_FULL_NAME with its value.
3436 * config.in: Regenerate.
3437
3438 2008-07-16 David Reitter <david.reitter@gmail.com>
3439
3440 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
3441 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
3442
3443 2008-07-16 Glenn Morris <rgm@gnu.org>
3444
3445 * emacs.c (system-type): Doc fix.
3446
3447 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
3448
3449 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
3450 If the cache doesn't work, let's fix it, rather than work around it.
3451
3452 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3453
3454 * Makefile.in: Correct additions for nsfont.o in last commit.
3455 * nsfont.m: New file (forgot last commit).
3456
3457 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3458
3459 * callproc.c (set_initial_environment): Initialize
3460 Vprocess_environment under CANNOT_DUMP (fixes crash when
3461 batch-compiling for bootstrap).
3462
3463 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3464 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3465
3466 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
3467 fix crash due to different init order.
3468
3469 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3470
3471 Changes and additions for NeXTstep windowing system (Cocoa and
3472 GNUstep) support.
3473
3474 * Makefile.in:
3475 * config.in: Support defines and build commands for NS port.
3476 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
3477 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
3478 * dispextern.h: Include nsgui.h and add needed typedefs under NS
3479 windowing.
3480 (struct face): Add synth_ital field.
3481 * dispnew.c: Include nsterm.h when compiling under NS windowing.
3482 (init_display): Initialize Vinitial_window_system to "ns" when so
3483 compiled.
3484 * emacs.c: Include GSConfig.h when compiling under GNUstep.
3485 (display_arg): Use under NS.
3486 (main): Under NS, allocate autorelease pool and handle command line
3487 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
3488 (standard_args): Add NS-specific args.
3489 (shut_down_emacs): Shut down NS terminal if compiled under NS.
3490 * font.c (DEFAULT_ENCODING): New variable.
3491 (font_find_for_lface): Use it.
3492 (syms_of_font): Load syms_of_nsfont under NS.
3493 * font.h: Declare nsfont_driver when compiled under NS.
3494 * fontset.c: When compiling under NS, include nsterm.h.
3495 (fontset_from_font): Autoconstruct fontset under NS.
3496 * frame.c (various): Under NS, include nsterm.h, add Qns window system
3497 symbol, document and use it.
3498 (do_switch_frame): When for_deletion under Cocoa, add
3499 Fraise_frame(Qnil).
3500 (x_set_frame_parameters): Ensure font attribute changes are picked up.
3501 (x_get_arg): Allow "yes" and "no" as boolean values.
3502 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
3503 Qright under Cocoa.
3504 (focus-follows-mouse): Default to 0 under NS.
3505 * frame.h (enum output_method): Add output_ns.
3506 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
3507 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
3508 (FRAME_WINDOW_P): NS-specific definition.
3509 * fringe.c (max_used_fringe_bitmap): Make public.
3510 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
3511 (getloadavg): Use NeXT code under descendant OS's.
3512 * image.c (includes and header section, x_create_bitmap_from_data)
3513 (x_create_bitmap_from_file, free_bitmap_record, image_background)
3514 (image_background_transparent, x_clear_image_1)
3515 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3516 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
3517 (x_to_xcolors, x_from_xcolors, x_disable_image)
3518 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
3519 other GUIs, including XPM support using code originally written for
3520 Carbon GUI.
3521 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
3522 using NS API.
3523 (image_ascent): Use font metrics macros instead of direct struct field
3524 access.
3525 * keyboard.c (includes): Add nsterm.h when compiling under NS.
3526 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
3527 Also, handle NS as GTK for menu bar purposes.
3528 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
3529 toolkit where they differ.
3530 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
3531 use cachelist, still needed under NS.
3532 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
3533 (struct widget_value): Define it here for menu.c.
3534 * keymap.c (includes): Include modifier internals.
3535 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
3536 NS.
3537 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
3538 support for preferring sequences using certain modifiers, specified by
3539 the FIRSTONLY argument.
3540 * lisp.h (hash_remove): Rename to avoid name clash when compiling
3541 under NS GNUstep implementation.
3542 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
3543 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
3544 * menu.c: Include nsterm.h under NS.
3545 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
3546 (free_menubar_widget_tree_value, update_submenu_strings)
3547 (find_and_call_menu_selection): Treat NS as X and NT.
3548 (find_and_return_menu_selection): New function, used for popup menus.
3549 * nsgui.h:
3550 * nsterm.h:
3551 * nsfns.m:
3552 * nsimage.m:
3553 * nsmenu.m:
3554 * nsselect.m:
3555 * nsterm.m: New files.
3556 * process.c (wait_reading_process_output): Under NS, call ns_select()
3557 instead of plain select().
3558 * syntax.c (char_quoted): Under NS, avoid a crash when called near
3559 beginning of buffer.
3560 * sysselect.h (init_process): Rename when compiling under Cocoa to
3561 avoid name conflict.
3562 * termhooks.h (display_info): Add ns_display_info to union.
3563 * terminal.c (Fterminal_live_p): Add ns to terminal types.
3564 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
3565 COCOA environment.
3566 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
3567 unexec() signature. (Note, this will dump, but the resulting file
3568 crashes; unexosx is used instead; keeping around for reference and
3569 possible aid in getting dump working under GNUstep.)
3570 * w32gui.h (button_type, widget_value): Remove definitions (now in
3571 keyboard.h).
3572 * window.c: Include nsterm.h when compiling under NS.
3573 * xdisp.c (includes): Include nsterm.h when compiling under NS.
3574 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
3575 other GUI windowing systems.
3576 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
3577 GTK.
3578 (x_consider_frame_title): Under NS, set icon type and frame
3579 modified-state indicator; use ns_set_name_as_filename() when using
3580 formatted title.
3581 (update_window_cursor): Make public when compiling under NS.
3582 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
3583 (hourglass_atimer, Vhourglass_delay
3584 * xfaces.c (header section, init_frame_faces, clear_font_table)
3585 (defined_color, unload_color, x_face_list_fonts)
3586 (prepare_face_for_display): Add NS support parallel to other GUIs.
3587 Emulate GCs like other non-X GUIs.
3588 (split_font_name): Don't lowercase font name under NS.
3589 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
3590 under NS.
3591 * s/darwin.h: Add support for compilation under NS.
3592
3593 2008-07-15 Jason Rumney <jasonr@gnu.org>
3594
3595 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
3596 (w32_show_hourglass): Rename from show_hourglass.
3597 (w32_hide_hourglass): Rename from hide_hourglass.
3598 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
3599 (Vhourglass_delay): Declare extern.
3600 (hourglass_started): Remove.
3601
3602 * xdisp.c (Vhourglass_delay): Remove static.
3603 (hourglass_started, start_hourglass, cancel_hourglass):
3604 Don't include these versions on WINDOWSNT.
3605
3606 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3607
3608 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
3609 variables (formerly in xfns.c).
3610 (show_hourglass, hide_hourglass): New prototypes (same).
3611 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
3612 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
3613 in xfns.c).
3614 (syms_of_xdisp): Declare/initialize display-hourglass,
3615 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
3616 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
3617 formerly in xfns.c.
3618 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3619 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3620 (start_hourglass, cancel_hourglass): Remove.
3621 (show_hourglass, hide_hourglass): Remove prototypes and static
3622 modifiers.
3623 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
3624 hourglass_atimer, hourglass_shown_p declaration/initialization.
3625 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3626 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3627 (start_hourglass, cancel_hourglass): Remove.
3628 (show_hourglass, hide_hourglass): Remove prototypes and static
3629 modifiers.
3630 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
3631 hourglass_atimer, hourglass_shown_p declaration/initialization.
3632 * w32fns.c (display_hourglass_p, Vhourglass_delay)
3633 (DEFAULT_HOURGLASS_DELAY): Remove.
3634 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
3635 hourglass_shown_p declaration/initialization.
3636
3637 2008-07-14 Jason Rumney <jasonr@gnu.org>
3638
3639 * w32fns.c (w32_get_arg): Remove wrapper function.
3640 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
3641 directly.
3642 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
3643
3644 2008-07-14 Kenichi Handa <handa@m17n.org>
3645
3646 * xfont.c (xfont_open): Add workaround for X's bug.
3647
3648 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
3649
3650 * fontset.c: Include <stdio.h> unconditionally.
3651
3652 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
3653
3654 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
3655 for filtering.
3656
3657 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
3658
3659 * s/vms.h: Use __GNUC__ instead of _GNUC_.
3660
3661 * m/macppc.h:
3662 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
3663
3664 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
3665 (SPECIAL_EMACS_INT):
3666 * m/ia64.h (SPECIAL_EMACS_INT):
3667 * m/amdx86-64.h (SPECIAL_EMACS_INT):
3668 * s/gnu.h (NLIST_STRUCT):
3669 * s/aix4-2.h (X11R5_INHIBIT_I18N):
3670 * s/gnu-linux.h (LINUX):
3671 * s/msdos.h (HAVE_FACES):
3672 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
3673
3674 * systty.h:
3675 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
3676 anymore.
3677
3678 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
3679
3680 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
3681 always defined as int.
3682
3683 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
3684 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
3685 * s/gnu-linux.h (HAVE_WAIT_HEADER):
3686 * s/freebsd.h (HAVE_WAIT_HEADER):
3687 * s/bsd-common.h (HAVE_UNION_WAIT):
3688 * s/aix4-2.h (HAVE_WAIT_HEADER):
3689 * m/mips.h (HAVE_UNION_WAIT):
3690 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
3691 (COFF, static): Do not define, they are undefined later in the file.
3692
3693 * process.c (update_status): Don't use a union.
3694 (status_convert):
3695 (sigchld_handler): Use int instead of WAITTYPE.
3696
3697 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
3698
3699 * indent.c (Fvertical_motion): Restore hscroll before moving to
3700 goal column.
3701
3702 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3703
3704 * lisp.h: Remove left over code.
3705
3706 2008-07-11 Andreas Schwab <schwab@suse.de>
3707
3708 * lisp.h: Fix logic in last change.
3709
3710 * menu.h: New file.
3711 * menu.c: Include it.
3712 * xmenu.c: Likewise.
3713 * Makefile.in: Update dependencies.
3714
3715 2008-07-11 Kenichi Handa <handa@m17n.org>
3716
3717 * fontset.c (fontset_from_font): Cancel the previous change.
3718
3719 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3720
3721 * lisp.h:
3722 * w32heap.c:
3723 * emacs.c:
3724 * alloc.c: Replace all references of NO_UNION_TYPE with
3725 USE_LISP_UNION_TYPE.
3726
3727 * m/xtensa.h (NO_UNION_TYPE):
3728 * m/vax.h (NO_UNION_TYPE):
3729 * m/template.h (NO_UNION_TYPE):
3730 * m/sparc.h (NO_UNION_TYPE):
3731 * m/mips.h (NO_UNION_TYPE):
3732 * m/macppc.h (NO_UNION_TYPE):
3733 * m/m68k.h (NO_UNION_TYPE):
3734 * m/iris4d.h (NO_UNION_TYPE):
3735 * m/intel386.h (NO_UNION_TYPE):
3736 * m/ibms390x.h (NO_UNION_TYPE):
3737 * m/ibms390.h (NO_UNION_TYPE):
3738 * m/ibmrs6000.h (NO_UNION_TYPE):
3739 * m/ia64.h (NO_UNION_TYPE):
3740 * m/hp800.h (NO_UNION_TYPE):
3741 * m/arm.h (NO_UNION_TYPE):
3742 * m/amdx86-64.h (NO_UNION_TYPE):
3743 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
3744 defining it the same.
3745
3746 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
3747
3748 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
3749
3750 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3751
3752 * fileio.c:
3753 * sysdep.c
3754 * systty.h:
3755 * m/ibmrs6000.h:
3756 * m/iris4d.h:
3757 * s/aix4-2.h:
3758 * s/freebsd.h:
3759 * s/gnu-linux.h:
3760 * s/hpux10-20.h:
3761 * s/hpux11.h:
3762 * s/netbsd.h:
3763 * s/sol2-3.h:
3764 * s/sol2-4.h:
3765 * s/sol2.h:
3766 * s/usg5-4.h:
3767 * s/vms.h: Remove references to unused variables.
3768
3769 2008-07-10 Andreas Schwab <schwab@suse.de>
3770
3771 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
3772 pattern before matching the generic family.
3773
3774 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3775
3776 * unexec.c:
3777 * s/vms.h:
3778 * s/usg5-4-2.h:
3779 * s/sol2-5.h:
3780 * s/freebsd.h:
3781 * s/darwin.h: Remove dead code.
3782
3783 * m/template.h:
3784 * m/sparc.h:
3785 * m/mips.h:
3786 * m/m68k.h:
3787 * m/iris4d.h:
3788 * m/intel386.h:
3789 * m/ibms390x.h:
3790 * m/ibms390.h:
3791 * m/ia64.h:
3792 * m/hp800.h:
3793 * m/arm.h:
3794 * m/amdx86-64.h: Remove dead code and references to unused
3795 and compiler defined symbols.
3796
3797 * unexmips.c:
3798 * unexelf.c: Remove references to desupported systems.
3799
3800 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
3801
3802 * m/powermac.h: Remove boilerplate comments.
3803 (NO_REMAP): Remove unused definition.
3804
3805 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
3806 define them.
3807
3808 2008-07-10 Kenichi Handa <handa@m17n.org>
3809
3810 * xfont.c (xfont_open): Log the reason of failure.
3811
3812 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
3813
3814 * fontset.c (fontset_get_font_group):
3815 * font.c (font_check_otf): Specify argument types.
3816
3817 2008-07-09 Kenichi Handa <handa@m17n.org>
3818
3819 * coding.c (detect_coding_utf_8): Set detect_info->found only when
3820 non-ASCII char is found.
3821
3822 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
3823 (reorder_font_vector): Change the arg preferred_family to font.
3824 Prefer the spec matching with font.
3825 (fontset_get_font_group): New function.
3826 (fontset_find_font): Change the format of an element of a realized
3827 fontset. Use fontset_get_font_group.
3828 (fontset_font): Try the current fontset, the default fontset, the
3829 fallbacks of the current fontset, and the fallbacks of the default
3830 fontset in this order.
3831 (face_for_char): Delete the shortcut to use the current font.
3832 (fontset_from_font): Don't set fonts for Latin in the fontset.
3833
3834 * font.h (font_make_object, font_match_p): Adjust prototypes.
3835
3836 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
3837
3838 * font.c (font_make_object): New arg entity and pixelsize.
3839 (font_check_otf_features, font_check_otf): New functions.
3840 (font_match_p): Check :lang, :script, and :otf properties.
3841
3842 * xfont.c (xfont_open): Adjust it for the change of
3843 font_make_object.
3844 (xfont_text_extents): Fix initial setting of metrics.
3845
3846 * ftfont.c (struct ftfont_info): New member index, delete member
3847 fc_charset_idx. Make the member order compatible with struct
3848 xftfont_info.
3849 (fc_charset_table): Change charset names to registry names.
3850 (ftfont_pattern_entity): Delete the args registry and
3851 fc_charset_idx. Change the value of :font-entity property
3852 to (FONTNAME . INDEX). Always set :registry property to
3853 `iso10646-1'.
3854 (struct ftfont_cache_data): New struct.
3855 (ftfont_lookup_cache): New arg for_face.
3856 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
3857 (ftfont_driver): Set the member otf_capability.
3858 (ftfont_get_charset): Adjust it for the change of
3859 fc_charset_table.
3860 (OTF_TAG_SYM): New macro.
3861 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
3862 for the change of fc_charset_table.
3863 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
3864 ftfont_pattern_entity. Add FC_INDEX to objset.
3865 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
3866 and ftfont_pattern_entity.
3867 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
3868 font_make_object, struct ftfont_info.
3869 (ftfont_has_char): Use ftfont_get_fc_charset.
3870 (ftfont_otf_features, ftfont_otf_capability): New functions.
3871 (ftfont_shape): Use ftfont_get_otf.
3872 (ftfont_text_extents): Fix initial setting of metrics.
3873
3874 * xftfont.c (struct xftfont_info): New member ft_size. Make the
3875 member order compatible with struct ftfont_info.
3876 (xftfont_open): Add FC_CHARSET to the pattern. Set
3877 xftfont_info->ft_size. Don't unlock the face. Check BDF
3878 properties if appropriate.
3879 (xftfont_close): Unlock the face.
3880 (xftfont_anchor_point, xftfont_shape): Deleted.
3881 (syms_of_xftfont): Don't set members anchor_point and shape of
3882 xftfont_driver.
3883
3884 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
3885 font_make_object.
3886
3887 * w32font.c (w32font_open): Adjust it for the change of
3888 font_make_object.
3889 (w32font_open_internal): Don't set properties of font_object here.
3890
3891 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
3892
3893 * macfns.c (x_create_tip_frame):
3894 * w32fns.c (x_create_tip_frame):
3895 * xfns.c (x_create_tip_frame): Pass parameter argument to
3896 face-set-after-frame-default.
3897
3898 * xfaces.c (Finternal_merge_in_global_face): Save merged
3899 attributes for the default face back into the face vector.
3900
3901 2008-07-08 Andreas Schwab <schwab@suse.de>
3902
3903 * fontset.h: Declare fontset_from_font. Don't declare
3904 new_fontset_from_font and fontset_from_font_name.
3905 * xterm.c: Include "fontset.h".
3906 * Makefile.in (xterm.o): Update dependencies.
3907
3908 2008-07-08 Glenn Morris <rgm@gnu.org>
3909
3910 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
3911 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
3912
3913 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
3914
3915 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
3916 (x_set_frame_parameters): Don't bind it.
3917
3918 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
3919
3920 * w32fns.c (map_w32_filename): Declare extern.
3921
3922 2008-07-07 Jason Rumney <jasonr@gnu.org>
3923
3924 * w32term.c (WS_EX_LAYERED): Define if not already.
3925
3926 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
3927
3928 * xfaces.c (set_font_frame_param): Don't try to set the font
3929 parameter if it is still unspecified in the lface.
3930
3931 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
3932
3933 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
3934 face if it didn't already exist.
3935
3936 * xdisp.c (try_window_id): Give up if word-wrapping is on.
3937
3938 2008-07-05 Andreas Schwab <schwab@suse.de>
3939
3940 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
3941
3942 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
3943
3944 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
3945 word-wrapping.
3946 (IT_DISPLAYING_WHITESPACE): New macro.
3947 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
3948 when word-wrapping. Simplify word-wrapping logic. Use correct
3949 pixel positions when saving copies of the iterator.
3950 (display_line): Use proper wrap point if the last character on a
3951 line was preceded by whitespace.
3952
3953 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
3954
3955 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
3956
3957 2008-07-04 Kenichi Handa <handa@m17n.org>
3958
3959 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
3960
3961 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
3962
3963 2008-07-02 Jason Rumney <jasonr@gnu.org>
3964
3965 * xfns.c (syms_of_xfns): Only define x-select-font when both
3966 HAVE_FREETYPE and USE_GTK.
3967
3968 * xdisp.c (next_element_from_display_vector): Move assignment out
3969 of if statement.
3970
3971 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
3972
3973 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
3974
3975 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
3976 (syms_of_fileio): Initialize and export them.
3977 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
3978
3979 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
3980 (Fsystem_move_file_to_trash): New function.
3981 (syms_of_w32fns): Export it to lisp.
3982
3983 2008-07-01 Jason Rumney <jasonr@gnu.org>
3984
3985 * w32font.c (w32font_text_extents): Don't count overhang as part
3986 of width.
3987
3988 2008-06-30 Miles Bader <miles@gnu.org>
3989
3990 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
3991 Add `avoid_cursor_p' field.
3992
3993 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
3994 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
3995 (append_glyph, append_composite_glyph, produce_image_glyph)
3996 (append_stretch_glyph): Initialize avoid_cursor_p.
3997 (get_it_property): Rename from `get_line_height_property'.
3998 (x_produce_glyphs): Use get_it_property.
3999 (handle_line_prefix, push_display_prop): New functions.
4000 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
4001 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
4002 New variables.
4003 (syms_of_xdisp): Initialize them.
4004
4005 2008-06-30 Kenichi Handa <handa@m17n.org>
4006
4007 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
4008 XftDefaultSubstitute (they are called in XftFontMatch).
4009 (xftfont_open): Fix args to ftfont_font_format.
4010
4011 * ftfont.c (fc_charset_table): New member lang.
4012 (ftfont_resolve_generic_family): New arg pattern.
4013 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
4014 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
4015 (ftfont_open): Fix args to ftfont_font_format.
4016 (ftfont_font_format): New arg filename.
4017
4018 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
4019
4020 * xfaces.c (Finternal_merge_in_global_face): If default face was
4021 modified, realize it again. Update the font face attribute.
4022
4023 2008-06-29 Jason Rumney <jasonr@gnu.org>
4024
4025 * w32term.c (x_set_frame_alpha): Fix logic.
4026
4027 2008-06-29 Kenichi Handa <handa@m17n.org>
4028
4029 * fontset.c (Finternal_char_font): Return font-object instead of
4030 font-name.
4031
4032 * composite.c (get_composition_id): Fix the width calculation for TAB.
4033
4034 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
4035
4036 * indent.c (Fvertical_motion): Properly handle float column arg.
4037
4038 2008-06-28 Jason Rumney <jasonr@gnu.org>
4039
4040 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
4041 (pfnSetLayeredWindowAttributes): New function pointer.
4042 (w32_initialize): Initialize it when supported.
4043 (x_set_frame_alpha): New function.
4044
4045 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
4046 (w32_frame_parm_handlers): Set alpha handler.
4047
4048 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
4049
4050 2008-06-27 Jason Rumney <jasonr@gnu.org>
4051
4052 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
4053 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
4054 (w32_to_x_charset, x_to_w32_charset)
4055 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4056 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4057 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4058 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4059 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4060 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4061 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
4062 (Qw32_charset_unicode): Remove.
4063 (syms_of_w32fns): Update for above changes.
4064
4065 * w32font.c (w32_to_x_charset, x_to_w32_charset)
4066 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4067 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4068 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4069 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4070 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4071 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4072 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
4073 (syms_of_w32font): Update for above changes.
4074
4075 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
4076
4077 * s/usg5-4.h: Fix previous change: keep the correct branch of a
4078 removed #if.
4079 (USG_SHARED_LIBRARIES): Remove duplicate definition.
4080
4081 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
4082 Eli Zaretskii <eliz@gnu.org>
4083
4084 * makefile.w32-in (LOCAL_FLAGS):
4085 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
4086
4087 * sysdep.c (_spawnlp, _getpid):
4088 Declare with explicit _cdecl instead of _CRTAPI1.
4089
4090 * editfns.c (Fget_internal_run_time):
4091 Check for WINDOWSNT with #ifdef, not #if.
4092
4093 2008-06-26 Jason Rumney <jasonr@gnu.org>
4094
4095 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
4096
4097 * w32term.c (x_draw_glyph_string_foreground)
4098 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
4099 Use FONT_HANDLE macro.
4100 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
4101
4102 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4103 (uniscribe_encode_char): Use FONT_HANDLE macro.
4104
4105 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
4106 (w32font_text_extents): Use precast w32_font.
4107 (w32font_close): Free cached metrics.
4108 (w32font_open_internal): Allocate space for name on stack.
4109
4110 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
4111
4112 * xdisp.c (extend_face_to_end_of_line): Fix last change.
4113
4114 2008-06-26 Jason Rumney <jasonr@gnu.org>
4115
4116 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
4117 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
4118
4119 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
4120
4121 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
4122
4123 2008-06-26 Jason Rumney <jasonr@gnu.org>
4124
4125 * w32bdf.c, w32bdf.h: Remove obsolete files.
4126
4127 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
4128
4129 * w32gui.h: Don't include w32bdf.h.
4130 (XCharStruct, enum w32_char_font_type, W32FontStruct):
4131 Remove obsolete font support.
4132
4133 * w32font.h (struct w32font_info): Remove compat_w32_font.
4134 Add hfont member.
4135 (FONT_COMPAT): Remove obsolete macro.
4136
4137 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
4138 (w32font_encode_char, w32font_text_extents): Use new hfont member.
4139 (w32font_open_internal): Remove compat code. Set new hfont member.
4140 (Fx_select_font): Use new hfont member.
4141
4142 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4143 (uniscribe_encode_char): Use new hfont member.
4144
4145 * w32term.c (x_draw_glyph_string_foreground)
4146 (x_draw_composite_glyph_string_foreground): Use new hfont member.
4147 (x_draw_glyph_string): Use metrics in w32font_info.
4148
4149 2008-06-26 Kenichi Handa <handa@m17n.org>
4150
4151 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
4152
4153 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
4154
4155 * unexnext.c:
4156 * m/ews4800.h:
4157 * m/hp9000s300.h:
4158 * m/ibm370aix.h:
4159 * m/mips-siemens.h:
4160 * m/ncr386.h:
4161 * m/next.h:
4162 * m/pmax.h:
4163 * m/powerpcle.h:
4164 * m/tandem-s2.h:
4165 * s/386bsd.h:
4166 * s/bsd386.h:
4167 * s/bsd4-1.h:
4168 * s/bsd4-2.h:
4169 * s/bsdos2-1.h:
4170 * s/bsdos2.h:
4171 * s/bsdos3.h:
4172 * s/bsdos4.h:
4173 * s/nextstep.h:
4174 * s/ultrix4-3.h:
4175 * s/usg5-0.h:
4176 * s/usg5-2-2.h:
4177 * s/usg5-2.h:
4178 * s/usg5-4-3.h:
4179 * s/ux4800.h:
4180 * s/uxpds.h:
4181 * s/uxpv.h: Remove support for obsolete systems.
4182 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
4183 Remove, insert contents in s/hpux-10.20.h.
4184 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
4185 Remove, insert contents in s/aix4-2.h.
4186 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
4187 * s/bsd4-3.h: Rename to ...
4188 * s/bsd-common.h: ... this.
4189 * data.c:
4190 * doc.c:
4191 * ecrt0.c:
4192 * emacs.c:
4193 * fileio.c:
4194 * floatfns.c:
4195 * keyboard.c:
4196 * mem-limits.h:
4197 * print.c:
4198 * process.c:
4199 * sysdep.c:
4200 * syssignal.h:
4201 * systty.h:
4202 * syswait.h:
4203 * term.c:
4204 * unexec.c:
4205 * unexelf.c:
4206 * unexhp9k800.c:
4207 * m/hp800.h:
4208 * m/ibmrs6000.h:
4209 * m/mips.h:
4210 * m/vax.h:
4211 * s/darwin.h:
4212 * s/freebsd.h:
4213 * s/gnu.h:
4214 * s/ms-w32.h:
4215 * s/msdos.h:
4216 * s/netbsd.h:
4217 * s/template.h: Remove references to obsolete variables.
4218
4219 * Makefile.in: Add dependencies for all unexec files.
4220 (admindir): Remove unused variable.
4221 (UNEXEC_SRC): Remove references.
4222
4223 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
4224
4225 * xfns.c (x_default_font_parameter): If Xft is available, first
4226 try Monospace-12 for the default font.
4227
4228 2008-06-25 Jason Rumney <jasonr@gnu.org>
4229
4230 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
4231
4232 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
4233
4234 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
4235
4236 * buffer.c (syms_of_buffer): Remove default-word-wrap.
4237
4238 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
4239
4240 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
4241 <scroll-conservatively>: Fix typo in docstring.
4242
4243 * xselect.c (Fx_send_client_event): Doc fix.
4244
4245 2008-06-25 Kenichi Handa <handa@m17n.org>
4246
4247 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
4248
4249 * font.c (font_parse_fcname): Remove unused variables.
4250 (font_sort_entites): Delete the arg SPEC. Caller changed.
4251 Fix for the case of ! best_only.
4252 (font_delete_unmatched): Check DPI and AVGWIDTH too.
4253
4254 * lisp.h (Fstring_to_unibyte): EXFUN it.
4255
4256 * character.h (str_to_unibyte): Extern it.
4257
4258 * character.c (str_to_unibyte): New function.
4259
4260 * fns.c (Fstring_to_unibyte): New function.
4261 (syms_of_fns): Defsubr it.
4262
4263 2008-06-24 Kenichi Handa <handa@m17n.org>
4264
4265 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
4266 DPI too.
4267 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
4268
4269 2008-06-24 Andreas Schwab <schwab@suse.de>
4270
4271 * Makefile.in (${lispsource}loaddefs.el): Rename from
4272 ../lisp/loaddefs.el.
4273 (bootstrap-clean): Do what distclean does but don't remove
4274 Makefile.
4275 (distclean): Depend on bootstrap-clean and remove Makefile.
4276
4277 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
4278
4279 * buffer.h (struct buffer): New member word_wrap.
4280
4281 * buffer.c (syms_of_buffer): New variables default-word-wrap and
4282 word-wrap.
4283 (init_buffer_once): Initialize them.
4284
4285 * dispextern.h (struct it): Replace bool truncate_lines_p with a
4286 line_wrap enum possessing three possible values.
4287
4288 * termopts.h: Replace truncate_partial_width_windows with
4289 Vtruncate_partial_width_windows.
4290
4291 * dispnew.c (direct_output_for_insert): Avoid direct output when
4292 inserting a space with word wrap on.
4293
4294 * indent.c (compute_motion): Obey integer values of
4295 truncate-partial-width-windows.
4296
4297 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
4298 replacing truncate_partial_width_windows.
4299 (init_iterator): If Vtruncate_partial_width_windows is an integer,
4300 truncate only if the window width is below that integer.
4301 (start_display, resize_mini_window, produce_stretch_glyph)
4302 (display_string, move_it_in_display_line_to): Use line_wrap.
4303 (back_to_previous_visible_line_start, reseat_1): Reset
4304 string_from_display_prop_p.
4305 (display_line): Extend default face to end of line when wrapping.
4306
4307 2008-06-24 Kim F. Storm <storm@cua.dk>
4308
4309 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
4310 to wrap continued lines at word boundaries.
4311
4312 2008-06-24 Jason Rumney <jasonr@gnu.org>
4313
4314 * font.c (Ffont_face_attributes): Multiply pixel size before point
4315 conversion to avoid multiplying rounding error.
4316
4317 2008-06-23 Jason Rumney <jasonr@gnu.org>
4318
4319 * w32term.c (x_draw_glyph_string_background)
4320 (x_draw_glyph_string): Remove old bdf font code.
4321
4322 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
4323
4324 2008-06-22 Kenichi Handa <handa@m17n.org>
4325
4326 * font.c (font_find_for_lface): Try the adstyle specified in
4327 the property of LFACE_FONT of LFACE (if any).
4328
4329 2008-06-21 Seiji Zenitani <zenitani@mac.com>
4330 Ryo Yoshitake <ryo@shiftmode.net>
4331
4332 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
4333
4334 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
4335
4336 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
4337 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
4338 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
4339 (witness-emacs): Remove.
4340 (lisp, shortlisp): Move loaddefs.el earlier.
4341 (mostlyclean): Forget about witness-emacs.
4342
4343 2008-06-22 Glenn Morris <rgm@gnu.org>
4344
4345 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
4346 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
4347
4348 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4349
4350 * Makefile.in (PRECOMP): Remove.
4351 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
4352 (witness-emacs): Run `compile-first'.
4353 (.el.elc): Use the new compile-onefile target.
4354
4355 2008-06-21 Kenichi Handa <handa@m17n.org>
4356
4357 * xftfont.c (xftfont_open): Handle QCembolden only when
4358 FC_EMBOLDEN is defined.
4359
4360 2008-06-21 Andreas Schwab <schwab@suse.de>
4361
4362 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
4363 (.el.elc): Likewise.
4364
4365 2008-06-21 Miles Bader <miles@gnu.org>
4366
4367 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
4368 build dir, not the lisp source dir.
4369
4370 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4371
4372 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
4373 (bootstrapclean): Remove.
4374 (.el.elc): New rule.
4375 (PRECOMP): New var.
4376 (../lisp/subdirs.el): Remove.
4377 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
4378 (witness-emacs): New target.
4379 (mostlyclean): Remove witness-emacs as well.
4380 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
4381 Add witness-emacs dependency.
4382
4383 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
4384
4385 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
4386 defined by the font.
4387
4388 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4389
4390 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
4391 (bootstrap-clean): New target that keeps TAGS around.
4392 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
4393 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
4394
4395 2008-06-20 Jason Rumney <jasonr@gnu.org>
4396
4397 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
4398 Remove obsolete font code.
4399
4400 * w32font.c (font_matches_spec): Use csb bitfield from font signature
4401 to determine language support.
4402
4403 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4404
4405 * sysdep.c (cfsetspeed): New fun extracted from the code.
4406 (cfmakeraw): Move before first use.
4407
4408 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
4409
4410 * sysdep.c (cfmakeraw): Provide fallback implementation.
4411 (serial_configure): Provide fallback implementation of cfsetspeed.
4412
4413 2008-06-20 Kenichi Handa <handa@m17n.org>
4414
4415 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
4416 the pattern.
4417
4418 * fontset.c (fontset_from_font): Copy font_spec before changing
4419 the elements.
4420
4421 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
4422
4423 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4424
4425 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
4426 for explicit `font' parameters.
4427
4428 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
4429
4430 2008-06-19 Kenichi Handa <handa@m17n.org>
4431
4432 * frame.c: Include <ctype.h>.
4433 (x_set_font_backend): Allow spacing characters in the X resource
4434 for FontBackend.
4435
4436 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
4437
4438 * w32fns.c, xfns.c (Qfont_param): New var.
4439 (syms_of_w32fns): Initialize it.
4440 (x_default_font_parameter): Record explicit `font' into
4441 `font-parameter'.
4442
4443 2008-06-18 Kenichi Handa <handa@m17n.org>
4444
4445 * font.c (font_parse_xlfd): Fix previous change.
4446 (font_parse_fcname): Don't use :fc-unknown-spec.
4447 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
4448 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
4449 (font_add_log): Prepend the driver name to the resulting fonts.
4450
4451 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
4452 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
4453 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
4454
4455 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
4456 (QCembolden): New variables.
4457 (syms_of_xftfont): DEFSYM them.
4458 (xftfont_open): Call XftFontMatch. Don't trust the result of
4459 XftTextExtents8 if the pixel_size is less than 5.
4460
4461 2008-06-18 Andreas Schwab <schwab@suse.de>
4462
4463 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
4464 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
4465
4466 2008-06-18 Jason Rumney <jasonr@gnu.org>
4467
4468 * w32font.c (w32font_list, w32font_match): Add logging.
4469
4470 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
4471
4472 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
4473
4474 * font.c (font_parse_fcname): Store divider characters for
4475 unknown-spec list. For known key symbols, intern using correct
4476 symbol name.
4477
4478 2008-06-17 Kenichi Handa <handa@m17n.org>
4479
4480 * xfaces.c (realize_default_face): If the frame is not on window
4481 system, set the fontset of face to nil.
4482
4483 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4484
4485 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
4486
4487 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
4488
4489 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
4490 (build_font_name_from_vector): Delete externs.
4491
4492 * xfaces.c (struct font_name): Don't declare.
4493
4494 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4495
4496 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
4497
4498 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
4499
4500 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
4501
4502 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
4503
4504 * font.c (Ffont_spec): Fix usage in docstring.
4505 (Ffont_face_attributes): Doc fix.
4506
4507 2008-06-16 Andreas Schwab <schwab@suse.de>
4508
4509 * font.c (Ffont_face_attributes): Fix definition.
4510
4511 2008-06-16 Jason Rumney <jasonr@gnu.org>
4512
4513 * font.h (font_style_symbolic_from_value): Remove.
4514
4515 * font.c (font_style_symbolic_from_value): Remove.
4516 (font_style_symbolic): Revert to pre 2008-06-13 version.
4517
4518 * w32font.c (w32_to_fc_weight): New function.
4519 (w32font_full_name, logfont_to_fcname): Use it.
4520
4521 2008-06-16 Kenichi Handa <handa@m17n.org>
4522
4523 * font.c (font_check_object): Delete it.
4524 (font_clear_cache): Check if a font-object is alive.
4525 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
4526 font-object to nil.
4527 (font_close_object): Don't check FONT_CLOSE_OBJECT.
4528 (font_at): Don't call font_check_object.
4529 (Ffont_get): Return a symbol for :weight, :slant, and :width.
4530
4531 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
4532
4533 * puresize.h (BASE_PURESIZE): Increase to 1230000.
4534
4535 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
4536
4537 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
4538
4539 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
4540
4541 * font.c (font_parse_fcname): Only one decimal point.
4542 (font_unparse_fcname): Handle data in family and foundry indices
4543 as symbols, not strings.
4544 (font_unparse_gtkname, Ffont_face_attributes): New functions.
4545
4546 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
4547
4548 * font.h (font_unparse_gtkname): Add prototype.
4549
4550 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4551
4552 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
4553
4554 2008-06-15 Andreas Schwab <schwab@suse.de>
4555
4556 * font.c (font_update_drivers): Fix crash when no drivers match.
4557
4558 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
4559
4560 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
4561 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
4562
4563 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
4564
4565 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
4566
4567 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4568
4569 * process.c (Fserial_process_configure, Fprocess_send_eof):
4570 Use EQ to compare Lisp_Objects.
4571
4572 2008-06-13 Jason Rumney <jasonr@gnu.org>
4573
4574 * w32fns.c (Fw32_select_font): Remove old font API function.
4575
4576 * w32font.c (logfont_to_fcname): New function.
4577 (Fx_select_font): New font dialog function compatible with
4578 GTK/fontconfig version.
4579
4580 * font.c (font_style_symbolic_from_value): New function.
4581 (font_style_symbolic): Use it.
4582
4583 * font.h (font_style_symbolic_from_value): Declare new function.
4584
4585 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
4586
4587 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
4588 <font-width-table>: Fix typos in docstrings.
4589
4590 2008-06-13 Daniel Engeler <engeler@gmail.com>
4591
4592 These changes add serial port access.
4593 * process.c: Add HAVE_SERIAL.
4594 (Fdelete_process, Fprocess_status, Fset_process_buffer)
4595 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
4596 (list_processes_1, select_wrapper, Fstop_process)
4597 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
4598 (status_notify): Modify to handle serial processes.
4599 [HAVE_SERIAL] (Fserial_process_configure)
4600 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
4601 New functions.
4602 * process.h (struct Lisp_Process): Add `type'.
4603 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
4604 New functions.
4605 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
4606 serial ports.
4607 (serial_open, serial_configure) New functions.
4608 * w32.h: Add FILE_SERIAL.
4609 (struct _child_process): Add ovl_read, ovl_write.
4610
4611 2008-06-13 Kenichi Handa <handa@m17n.org>
4612
4613 * dispextern.h (enum lface_attribute_index): New member
4614 LFACE_FOUNDRY_INDEX.
4615
4616 * font.c (font_score): Delete arg alternate_families. Check only
4617 weight, slant, width, and size. Ignore the difference of alias
4618 style symbols.
4619 (font_sort_entites): Adjust for the above change. Reflect the
4620 order of font-driver to scores.
4621 (font_list_entities): Don't check alternate_familes here.
4622 (font_clear_prop): Handle foundry.
4623 (font_update_lface): Don't parse "foundry-family" form here.
4624 Handle FONT_FOUNDRY_INDEX.
4625 (font_find_for_lface): Likewise. Handle alternate families here.
4626 If registry is nil, try iso8859-1 and ascii-0.
4627 (font_open_for_lface): Pay attention to size in ENTITY.
4628 (font_open_by_name): Simplify by calling font_load_for_lface.
4629 (free_font_driver_list): Delete it.
4630 (font_update_drivers): Preserve the order of backends.
4631 (syms_of_font): Setting of sort_shift_bits adjusted for the change
4632 of font_score and font_sort_entites.
4633 (font_update_sort_order): Likewise.
4634
4635 * xfaces.c (LFACE_FOUNDRY): New macro.
4636 (check_lface_attrs): Check foundry.
4637 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
4638 (merge_face_vectors): Check foundry.
4639 (merge_face_ref): Likewise.
4640 (Finternal_set_lisp_face_attribute): Likewise.
4641 (x_update_menu_appearance): Likewise.
4642 (Finternal_get_lisp_face_attribute): Likewise.
4643 (lface_hash): Likewise.
4644 (lface_same_font_attributes_p): Likewise.
4645 (x_supports_face_attributes_p): Likewise.
4646 (tty_supports_face_attributes_p): Likewise.
4647 (Finternal_set_alternative_font_family_alist): Intern strings.
4648 (Finternal_set_alternative_font_registry_alist): Downcase strings.
4649 (realize_default_face): Set LFACE_FOUNDRY (lface).
4650
4651 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
4652 font-driver at first.
4653
4654 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
4655
4656 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4657
4658 * lread.c (Fload): Use xfree, not free on saved_doc_string.
4659
4660 2008-06-12 Jim Meyering <meyering@redhat.com>
4661
4662 Make unexec_free handle NULL the same way free does.
4663 * unexmacosx.c (unexec_free): Ignore a NULL argument.
4664
4665 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
4666
4667 * character.h (CHAR_TO_BYTE_SAFE): New macro.
4668 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
4669 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
4670 (WEAK_ALIAS): Simplify.
4671 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
4672 when searching a unibyte buffer.
4673
4674 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
4675
4676 * xfns.c (Fx_select_font): Rename from x-font-dialog.
4677
4678 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
4679
4680 * w32font.c: Include ctype.h.
4681
4682 2008-06-11 Jason Rumney <jasonr@gnu.org>
4683
4684 * w32font.c (w32font_encode_char): Detect missing glyphs that are
4685 misreported as space.
4686 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
4687 as aliases for registry iso10646-1.
4688
4689 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
4690
4691 * buffer.c (clone_per_buffer_values): Skip `name'.
4692
4693 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
4694
4695 * font.c (font_parse_fcname): Fix last change; accept decimal
4696 points in font size.
4697
4698 2008-06-10 Jason Rumney <jasonr@gnu.org>
4699
4700 * w32uniscribe.c (add_opentype_font_name_to_list):
4701 Skip non unicode fonts.
4702
4703 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
4704
4705 * xfns.c (Fx_font_dialog): New function.
4706
4707 * gtkutil.c (xg_dialog_response_cb): Rename from
4708 xg_file_response_callback.
4709 (pop_down_dialog): Rename from pop_down_file_dialog.
4710 (xg_get_file_name): Callers changed.
4711 (xg_get_font_name): New function.
4712
4713 * gtkutil.h (xg_get_font_name): Insert prototype.
4714
4715 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4716
4717 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
4718 x_underline_minimum_display_offset.
4719 (syms_of_xdisp): Declare it here rather than in xterm.c.
4720 * dispextern.h (underline_minimum_offset): Declare it.
4721 * w32term.c (x_draw_glyph_string): Use it.
4722 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
4723 (syms_of_xterm): Don't declare it any more.
4724 (x_draw_glyph_string): Adjust to the new name.
4725
4726 2008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
4727
4728 * xterm.c (x_underline_minimum_display_offset): New var.
4729 (x_draw_glyph_string): Use it.
4730 (syms_of_xterm): Declare it.
4731
4732 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
4733
4734 * font.c (font_parse_fcname): Accept GTK-style font names too.
4735
4736 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4737
4738 * dired.c (file_name_completion): Don't return t if the match is exact
4739 but with different capitalization.
4740 * minibuf.c (Ftry_completion): Simplify.
4741
4742 * window.c (Vwindow_point_insertion_type): New var.
4743 (set_window_buffer): Use it.
4744 (syms_of_window): Init and export it to Lisp.
4745
4746 2008-06-10 Kenichi Handa <handa@m17n.org>
4747
4748 * font.h (font_intern_prop): Prototype adjusted.
4749
4750 * font.c (font_intern_prop): New arg force_symbol.
4751 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
4752 Adjust for the change of font_intern_prop.
4753
4754 * ftfont.c (ftfont_pattern_entity):
4755 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
4756 (w32_registry):
4757 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
4758 the change of font_intern_prop.
4759
4760 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
4761
4762 * w32menu.c (digest_single_submenu): Declare extern.
4763
4764 2008-06-09 Jason Rumney <jasonr@gnu.org>
4765
4766 * w32term.c (x_make_frame_visible): Use alternate restore flags.
4767
4768 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
4769 (parse_single_submenu): Remove.
4770 (digest_single_submenu): Remove.
4771 (syms_of_w32menu): Don't initialise variables that have moved
4772 to menu.c.
4773 (set_frame_menubar): Sync with version in xmenu.c.
4774 (w32_menu_show): Sync with xmenu_show in xmenu.c.
4775
4776 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
4777 Make static again.
4778
4779 2008-06-09 Jason Rumney <jasonr@gnu.org>
4780
4781 Changes to w32 files related to the move of common menu code
4782 to menu.c on 2008-06-08 by Chong Yidong.
4783
4784 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
4785 defs to w32gui.h.
4786 (single_keymap_panes, push_menu_item, push_menu_pane):
4787 Make globally visible.
4788
4789 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
4790 (local_free, malloc_widget_value, free_widget_value)
4791 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
4792 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
4793 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
4794 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
4795 (menu_items, menu_items_allocated, menu_items_used)
4796 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
4797 (init_menu_items, finish_menu_items, discard_menu_items)
4798 (grow_menu_items, push_submenu_start, push_submenu_end)
4799 (push_left_right_boundary, push_menu_pane, push_menu_item)
4800 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
4801 (free_menubar_widget_tree_value, parse_single_submenu)
4802 (update_submenu_strings): Remove functions.
4803 (xmalloc_widget_value): Remove and declare extern.
4804
4805 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
4806 (OBJ1): Build it.
4807
4808 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
4809 (local_heap, local_alloc, local_free, malloc_widget_value)
4810 (free_widget_value): Define here.
4811
4812 2008-06-09 Kenichi Handa <handa@m17n.org>
4813
4814 * font.h (Qascii_0): Extern it.
4815
4816 * font.c (Qascii_0): New variable.
4817 (syms_of_font): DEFSYM it.
4818 (font_open_by_name): If the registry "iso8859-1" fails, try also
4819 "ascii-0".
4820
4821 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
4822
4823 2008-06-08 Kenichi Handa <handa@m17n.org>
4824
4825 * .gdbinit (xfont): New command.
4826
4827 2008-06-08 Andreas Schwab <schwab@suse.de>
4828
4829 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
4830 * Makefile.in (menu.o): Update dependencies.
4831
4832 * Makefile.in (obj): Always add menu.o.
4833 * emacs.c (main): Always call syms_of_menu.
4834 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
4835
4836 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
4837
4838 * Makefile.in: Compile menu.c.
4839
4840 * lisp.h: Declare syms_of_menu.
4841
4842 * emacs.c (main): Call syms_of_menu.
4843
4844 * keyboard.h: Relocate platform-independent menu definitions from
4845 xmenu.c.
4846
4847 * menu.c: New file. Relocate platform-independent menu
4848 definitions from xmenu.c. Suggested by Adrian Robert.
4849
4850 * xmenu.c: Remove platform-independent menu definitions.
4851 (menu_items menu_items_inuse, menu_items_allocated)
4852 (menu_items_used, menu_items_n_panes)
4853 (menu_items_submenu_depth): Move to keyboard.h.
4854 (init_menu_items, finish_menu_items, unuse_menu_items)
4855 (discard_menu_items, restore_menu_items, save_menu_items)
4856 (grow_menu_items, push_submenu_start, push_submenu_end)
4857 (push_left_right_boundary, push_menu_pane, push_menu_item)
4858 (keymap_panes, single_keymap_panes, single_menu_item)
4859 (list_of_panes, list_of_items, find_and_call_menu_selection)
4860 (xmalloc_widget_value, free_menubar_widget_value_tree)
4861 (parse_single_submenu, digest_single_submenu)
4862 (update_submenu_strings): Move to menu.c.
4863
4864 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
4865
4866 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
4867
4868 2008-06-06 Miles Bader <miles@gnu.org>
4869
4870 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
4871 face, not frame default.
4872
4873 2008-06-05 Martin Rudalics <rudalics@gmx.at>
4874
4875 * window.c (pop_up_windows, pop_up_frames)
4876 (display_buffer_reuse_frames, Vpop_up_frame_function)
4877 (Vdisplay_buffer_function, Veven_window_heights)
4878 (Vspecial_display_buffer_names, Vspecial_display_regexps)
4879 (Vspecial_display_function, Vsame_window_buffer_names)
4880 (Vsame_window_regexps, split_height_threshold)
4881 (Vsplit_window_preferred_function): Move those vars to window.el.
4882 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
4883 (Fdisplay_buffer): Move those functions to window.el.
4884 (syms_of_window): Remove corresponding declarations.
4885 (display_buffer): New function.
4886 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
4887 * dispnew.c (Flast_nonminibuf_frame): New function.
4888 * buffer.c (Fpop_to_buffer): Move to window.el.
4889
4890 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4891
4892 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
4893
4894 2008-06-05 Kenichi Handa <handa@m17n.org>
4895
4896 * coding.c (detect_coding): Fix previous change.
4897 (detect_coding_system): Likewise.
4898
4899 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4900
4901 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
4902
4903 * keymap.c (Vminibuffer_local_filename_must_match_map):
4904 Rename from Vminibuffer_local_must_match_filename_map.
4905 (syms_of_keymap):
4906 * minibuf.c (Fcompleting_read): Adjust accordingly.
4907 * commands.h: Rename declaration as well.
4908
4909 2008-06-05 Kenichi Handa <handa@m17n.org>
4910
4911 * font.c (Ffont_spec): Don't use font_parse_family_registry for
4912 family name.
4913 (Ffont_put): Likewise.
4914
4915 * fontset.c (fontset_find_font): Call font_open_for_lface with the
4916 current font-spec.
4917
4918 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
4919 is unspecified.
4920
4921 * xfaces.c (realize_x_face): If the font-related face attributes
4922 are the same as those of default face, realize a new fontset from
4923 default->fontset.
4924 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
4925
4926 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4927
4928 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
4929 (move_it_in_display_line): New wrapper.
4930
4931 * window.c (window_scroll_pixel_based_preserve_x)
4932 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
4933 (window_scroll_pixel_based, window_scroll_line_based):
4934 Use them to preserve column positions.
4935 (syms_of_window): Initialize them.
4936
4937 * indent.c (Fvertical_motion): Extend first arg to allow passing an
4938 (HPOS . VPOS) pair.
4939
4940 * dispextern.h (move_it_in_display_line): Declare.
4941
4942 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
4943
4944 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
4945 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
4946 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
4947
4948 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
4949
4950 * window.c (Fset_window_parameter): Doc fix.
4951 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
4952
4953 2008-06-04 Joakim Verona <joakim@verona.se>
4954
4955 * window.h (struct window): Add new member window_parameters.
4956
4957 * window.c (Fwindow_parameters, Fwindow_parameter)
4958 (Fset_window_parameter): New defuns.
4959 (syms_of_window): Defsubr the new defuns.
4960 (make_window): Initialize window_parameters to nil.
4961
4962 2008-06-04 John Paul Wallington <jpw@pobox.com>
4963
4964 * eval.c (Fdefmacro): Doc fix.
4965
4966 2008-06-04 Kenichi Handa <handa@m17n.org>
4967
4968 * coding.c (detect_coding): Fix handling of coding->head_ascii.
4969 Be sure to call setup_coding_system when we find a proper coding system.
4970 (detect_coding_system): Fix handling of coding->head_ascii.
4971
4972 2008-06-03 Andreas Schwab <schwab@suse.de>
4973
4974 * font.c (font_prop_validate_spacing): Fix last change.
4975
4976 2008-06-03 Kenichi Handa <handa@m17n.org>
4977
4978 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
4979 (font_parse_fcname): Fix handling of unknown key.
4980
4981 * xfont.c (xfont_list): Try an alias.
4982
4983 * charset.c (char_charset): Return NULL if the arg charset_list is
4984 specified and C doesn't belong to any of them.
4985
4986 2008-06-02 Chip Coldwell <coldwell@redhat.com>
4987
4988 * font.c (font_pixel_size): Don't take cdr of an integer.
4989
4990 2008-06-02 Jim Meyering <meyering@redhat.com>
4991
4992 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
4993 * alloc.c (xfree): Return right away for a NULL arg.
4994 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
4995 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
4996 * mac.c (create_apple_event_from_event_ref): Likewise.
4997 (create_apple_event_from_drag_ref, cfstring_create_normalized):
4998 Likewise.
4999 * doprnt.c (doprnt1): Likewise.
5000 * frame.c (frame): Likewise.
5001 * keyboard.c (wipe_kboard): Likewise.
5002 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
5003 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
5004 * term.c (tty_default_color_capabilities, maybe_fatal)
5005 (delete_tty): Likewise.
5006 * w16select.c (string): Likewise.
5007 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
5008 * w32bdf.c (w32_free_bdf_font): Likewise.
5009 * w32fns.c (w32_unload_font): Likewise.
5010 * w32font.c (w32font_close): Likewise.
5011 * window.c (size_window): Likewise.
5012 * xselect.c (receive_incremental_selection): Likewise.
5013 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
5014 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
5015 * w32.c (stat): Likewise.
5016
5017 Remove useless if-before-free tests.
5018 * editfns.c (Fset_time_zone_rule): Likewise.
5019 * lread.c (nosuffix): Likewise.
5020 * ralloc.c (get_bloc): Likewise.
5021 * regex.c (reg_free): Likewise.
5022 * xftfont.c (xftfont_open, xftfont_close): Likewise.
5023 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
5024 * xsmfns.c (smc_save_yourself_CB): Likewise.
5025
5026 2008-06-02 Kenichi Handa <handa@m17n.org>
5027
5028 * font.c (font_find_for_lface): Handle float font size.
5029 (font_open_for_lface): Likewise.
5030
5031 * xfaces.c (x_supports_face_attributes_p): Check face->font before
5032 comparing the properties.
5033
5034 2008-06-01 Jason Rumney <jasonr@gnu.org>
5035
5036 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
5037 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
5038 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
5039 Don't add empty script list.
5040 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
5041
5042 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
5043
5044 * Makefile.in (dot, dotdot): Remove, update users.
5045 ".." has been used elsewhere in the file for a long time.
5046 (LIBXT_STATIC): Remove conditional based on unused variable.
5047
5048 2008-06-01 Miles Bader <miles@gnu.org>
5049
5050 * xfaces.c (Vface_remapping_alist): New variable.
5051 (syms_of_xfaces): Initialize it.
5052 (enum named_merge_point_kind): New type.
5053 (struct named_merge_point): Add `named_merge_point_kind' field.
5054 (push_named_merge_point): Make cycle detection respect different
5055 named-merge-point kinds.
5056 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
5057 Remove face-name alias resolution.
5058 (lface_from_face_name): New definition using
5059 `lface_from_face_name_no_resolve'.
5060 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
5061 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
5062 (get_lface_attributes): New definition that layers face-remapping on
5063 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
5064 (lookup_basic_face): New function.
5065 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
5066 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
5067 `get_lface_attributes'.
5068 (face_at_buffer_position): Use `lookup_basic_face' to lookup
5069 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
5070 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
5071
5072 * xdisp.c (init_iterator): Pass base_face_id through
5073 `lookup_basic_face' when we actually use it as a face-id.
5074 (handle_single_display_prop): Use `lookup_basic_face' to lookup
5075 DEFAULT_FACE_ID.
5076
5077 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
5078 lookup the initial face-id.
5079
5080 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
5081
5082 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
5083
5084 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
5085 (Fremove_text_properties): Fix typos in docstrings.
5086
5087 2008-05-31 Kenichi Handa <handa@m17n.org>
5088
5089 * font.c (font_list_entities): Fix the car part of data to be
5090 stored in the cache.
5091
5092 * ftfont.c (ftfont_font_format): Don't use strcasestr.
5093
5094 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5095
5096 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
5097 Add a `test' argument so another predicate than `equal' can be used.
5098 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
5099 (map_char_table): Remove unused vars `c' and `i'.
5100 * lisp.h (Foptimize_char_table): Adjust declaration.
5101 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
5102
5103 2008-05-30 Kenichi Handa <handa@m17n.org>
5104
5105 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
5106 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
5107 defined.
5108
5109 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5110
5111 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5112 (Fmake_variable_frame_local): Disallow mixing buffer-local and
5113 frame-local settings for the same variable.
5114
5115 2008-05-30 Kenichi Handa <handa@m17n.org>
5116
5117 * fontset.c (Ffont_info): Move to font.c.
5118 (syms_of_fontset): Delete defsubr of Sfont_info.
5119
5120 * font.c (font_style_to_value, font_score): Delete casting of the
5121 args to xstcasecmp.
5122 (register_font_driver): Increment num_font_drivers only when
5123 registering the driver globally.
5124 (Ffont_info): Move from fontset.c. Handle a font object too.
5125 (syms_of_font): Defsubr Sfont_info.
5126
5127 2008-05-29 Kenichi Handa <handa@m17n.org>
5128
5129 * coding.h (enum define_coding_utf8_arg_index): New enum.
5130 (enum coding_attr_index): Change coding_attr_utf_16_bom to
5131 coding_attr_utf_bom.
5132 (enum utf_bom_type): Rename from utf_16_bom_type.
5133 (struct utf_16_spec): Adjust for the above change.
5134 (struct coding_system): Add utf_8_bom in `spec' union.
5135
5136 * coding.c (CODING_UTF_8_BOM): New macro.
5137 (enum coding_category): Delete coding_category_utf_8, add
5138 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
5139 coding_category_utf_8_sig.
5140 (CATEGORY_MASK_UTF_8): Delete it.
5141 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
5142 (CATEGORY_MASK_UTF_8_SIG): New macros.
5143 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
5144 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
5145 CATEGORY_MASK_UTF_8_SIG.
5146 (CATEGORY_MASK_UTF_8): New macro.
5147 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
5148 (detect_coding_utf_8): Check BOM.
5149 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
5150 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
5151 (encode_coding_utf_16): Likewise.
5152 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
5153 (detect_coding, detect_coding_system): Handle utf-8-auto.
5154 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
5155 (syms_of_coding): Fix setting up of Vcoding_category_table.
5156
5157 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
5158
5159 * process.c (Faccept_process_output): If `millisec' is non-nil,
5160 `seconds' default to 0.
5161 (wait_reading_process_output): Also return non-nil if we read output
5162 from a non-running process.
5163
5164 2008-05-29 Jason Rumney <jasonr@gnu.org>
5165
5166 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
5167 `raster' specified.
5168 (add_font_entity_to_list): Allow non-opentype truetype fonts back
5169 in the uniscribe backend, but disallow any font that has no
5170 unicode subrange support.
5171
5172 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
5173
5174 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
5175 Fix typos in docstrings.
5176
5177 2008-05-29 Kenichi Handa <handa@m17n.org>
5178
5179 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
5180 (Fx_family_fonts): Set frame correctly.
5181
5182 2008-05-28 Jason Rumney <jasonr@gnu.org>
5183
5184 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
5185
5186 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5187
5188 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
5189 calling build_annotations.
5190
5191 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
5192
5193 * coding.c (Fdecode_coding_region, Fencode_coding_region)
5194 (Fencode_coding_string):
5195 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
5196 <latin-extra-code-table>: Fix typos in docstrings.
5197 (syms_of_coding) <coding-system-alist>: Doc fix.
5198 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
5199
5200 2008-05-28 Kenichi Handa <handa@m17n.org>
5201
5202 * fontset.c (Ffont_info): Don't call font_close_object.
5203
5204 * font.c (font_parse_family_registry): Use Ffont_put to validate
5205 foundry and family.
5206 (font_delete_unmatched): Don't check spacing.
5207 (font_list_entities): Add spacing to the spec to list fonts.
5208
5209 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
5210 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
5211
5212 * coding.c (encode_coding_raw_text): Fix previous change.
5213 (encode_coding_object): When the dst_object is a buffer and is
5214 different from src_object, move gap to PT.
5215
5216 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
5217
5218 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
5219
5220 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5221
5222 * coding.c (encode_coding_raw_text): Set coding->produced_char for
5223 all branches. Compute it differently.
5224
5225 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
5226
5227 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
5228
5229 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
5230 into "else if () ... else ...".
5231
5232 2008-05-27 Jason Rumney <jasonr@gnu.org>
5233
5234 * w32font.c (w32font_open_internal): Determine if glyph indices
5235 are likely to work here.
5236
5237 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
5238
5239 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
5240 draw overlap glyphs with appropriate highlighting.
5241
5242 2008-05-27 Kenichi Handa <handa@m17n.org>
5243
5244 * xfont.c (xfont_open): Fix calculation of font->average_width.
5245
5246 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5247
5248 * casefiddle.c (casify_object): Try to guess better whether the
5249 argument is a byte or a char.
5250
5251 2008-05-26 Andreas Schwab <schwab@suse.de>
5252
5253 * xselect.c (x_reply_selection_request): Properly handle format == 32.
5254 Always send multiples of format size.
5255
5256 * xterm.c (x_set_frame_alpha): Fix type mismatch.
5257
5258 2008-05-26 Jason Rumney <jasonr@gnu.org>
5259
5260 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
5261 (compute_metrics): Don't set failure if we just cleared the cache.
5262 (w32_weight_table): Remove unused variable.
5263 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
5264 backwards compatibility.
5265
5266 2008-05-25 Kenichi Handa <handa@m17n.org>
5267
5268 * w32term.c (x_draw_glyph_string):
5269 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
5270
5271 * xfaces.c: Delete unused function prototypes.
5272 (xstrlwr, font_frame): Delete them.
5273 (clear_face_cache): Delete unused variable.
5274
5275 * xftfont.c (xftfont_open): Delete unused variable.
5276 If underline_thickness is not 1, adjust underline_position.
5277
5278 * ftxfont.c (ftxfont_open): Delete unused variable.
5279
5280 * fontset.c (face_for_char): Optimize for the case of no charset
5281 property.
5282
5283 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
5284 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
5285 (otf_open, font_otf_capability, generate_otf_features)
5286 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
5287 Comment out by surrounding "#if 0" and "#endif" for the moment.
5288 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
5289 (syms_of_font): Codes for accessing above commented out.
5290
5291 2008-05-24 Eli Zaretskii <eliz@gnu.org>
5292
5293 * w32proc.c: Include dispextern.h.
5294
5295 * w32.c: Include dispextern.h.
5296
5297 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
5298
5299 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
5300 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
5301 Fix typos in docstrings.
5302
5303 2008-05-23 Jason Rumney <jasonr@gnu.org>
5304
5305 * xsmfns.c: Remove includes that are already included by config.h.
5306
5307 2008-05-23 Kenichi Handa <handa@m17n.org>
5308
5309 * charset.c (Qemacs, charset_emacs): New variables.
5310 (char_charset): Fix for non-Unicode characters.
5311 (syms_of_charset): Define charset_emacs.
5312
5313 * w32term.c (x_draw_glyph_string): Be sure to update
5314 s->underline_thickness and s->underline_position. Be sure to draw
5315 underline within the current line area.
5316
5317 * xterm.c (x_draw_glyph_string): Be sure to update
5318 s->underline_thickness and s->underline_position. Be sure to draw
5319 underline within the current line area.
5320
5321 * fontset.c: Delete unused variables and add casting for char *
5322 throughout the file.
5323 (fontset_font): Try the fallback fonts of the current fontset
5324 before consulting the default fontset.
5325
5326 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
5327
5328 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
5329
5330 2008-05-22 Jason Rumney <jasonr@gnu.org>
5331
5332 * font.c: Don't include strings.h.
5333
5334 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
5335
5336 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
5337 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
5338 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
5339 to call xstrcasecmp.
5340
5341 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
5342
5343 * fontset.c (fs_query_fontset): Use xstrcasecmp.
5344
5345 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
5346
5347 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
5348
5349 2008-05-22 Kenichi Handa <handa@m17n.org>
5350
5351 * puresize.h (BASE_PURESIZE): Increase to 1220000.
5352
5353 * font.c (font_prop_validate_style): Adjust for the format
5354 change of font_style_table.
5355
5356 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
5357 two args.
5358
5359 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
5360 two args.
5361
5362 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
5363
5364 * minibuf.c (keys_of_minibuf): Delete.
5365 * lisp.h (keys_of_minibuf): Delete.
5366 * emacs.c (main): Don't call keys_of_minibuf.
5367
5368 2008-05-22 Kenichi Handa <handa@m17n.org>
5369
5370 * ftfont.c (ftfont_resolve_generic_family): Rename from
5371 ftfont_list_generic_family. Return a single family for each
5372 generic family.
5373 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
5374 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
5375 Call font_add_log.
5376 (ftfont_match): Call font_add_log.
5377
5378 * font.h (Ffont_xlfd_name): EXFUN adjusted.
5379 (FONT_DEBUG): Define it.
5380 (font_add_log): Extern it.
5381 (font_assert): Rename from xassert.
5382
5383 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
5384 (xfont_list_family): Call font_add_log.
5385 (xfont_match): Likewise.
5386 (memq_no_quit): Delete.
5387
5388 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
5389 call of Ffont_xlfd_name.
5390
5391 * xfaces.c (struct table_entry, slant_table, weight_table)
5392 (swidth_table): Move to font.c.
5393
5394 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
5395 xassert are changed to font_assert. Delete many unused variables.
5396 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
5397 New variables.
5398 (struct table_entry): Move from xfaces.c and modified.
5399 (weight_table, slant_table, width_table): Move from xfaces.c and
5400 contents adjusted for the change of struct table_entry.
5401 (font_style_to_value, font_style_symbolic): Adjust for the
5402 format change of font_style_table.
5403 (font_parse_family_registry): Don't overwrite existing foundry and
5404 family of font_spec.
5405 (font_score): Fix calculation of diff for sizes.
5406 (font_sort_entites): Call font_add_log.
5407 (font_delete_unmatched): Return a newly created list.
5408 (font_list_entities): Fix previous change. Call font_add_log.
5409 (font_matching_entity, font_open_entity, font_close_entity):
5410 Call font_add_log.
5411 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
5412 (Finternal_set_font_style_table): Delete.
5413 (BUILD_STYLE_TABLE): New macro.
5414 (build_style_table): New function.
5415 (Vfont_log, font_log_env_checked): New variables.
5416 (font_add_log): New function.
5417 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
5418 Declare Lisp variables "font-weight-table", "font-slant-table",
5419 "font-width-table", and "font-log". Initialize font_style_table.
5420
5421 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
5422
5423 * xterm.c (x_set_frame_alpha): Move declarations before statements.
5424
5425 2008-05-21 Seiji Zenitani <zenitani@mac.com>
5426 Ryo Yoshitake <ryo@shiftmode.net>
5427
5428 * frame.c (Qalpha): Add a new frame parameter `alpha'.
5429 (Vframe_alpha_lower_limit): New variable.
5430 (x_set_alpha): New function.
5431
5432 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
5433
5434 * xfns.c (x-create-frame, Qalpha):
5435 Initialize the frame parameter `alpha'.
5436 * xterm.c (OPAQUE, OPACITY): New.
5437 (x_set_frame_alpha): New function.
5438 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
5439
5440 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
5441 * w32fns.c (w32_frame_parm_handlers): Likewise.
5442
5443 2008-05-20 Jason Rumney <jasonr@gnu.org>
5444
5445 * w32font.c (add_font_entity_to_list): Don't add non-opentype
5446 truetype fonts to opentype list.
5447
5448 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
5449
5450 * fontset.c (Ffontset_info): Doc fix.
5451 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
5452 <ignore-relative-composition>: Fix typos in docstrings.
5453
5454 * font.c (syms-of-font) <font-encoding-alist>:
5455 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
5456 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
5457 (Ffont_otf_alternates): Doc fixes.
5458
5459 2008-05-20 Kenichi Handa <handa@m17n.org>
5460
5461 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
5462 font.h through out the file.
5463 (FONT_DRIVERS): Rename from FONTOBJ.
5464 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
5465 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
5466
5467 * emacs.c (main): Call syms_of_font unconditionally.
5468
5469 * font.h (find_font_encoding): Extern it.
5470
5471 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
5472 fontset.c.
5473 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
5474 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
5475 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
5476 only when HAVE_WINDOW_SYSTEM is defined.
5477 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
5478 when HAVE_WINDOW_SYSTEM is defined.
5479
5480 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
5481 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
5482
5483 * xfaces.c: Include font.h unconditionally.
5484 (merge_face_ref, merge_face_vectors)
5485 (Finternal_set_lisp_face_attribute): Cancel the previous change.
5486
5487 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
5488
5489 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
5490 indirect_variable.
5491 * eval.c (lisp_indirect_variable): New fun.
5492 (Fuser_variable_p): Use it.
5493
5494 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5495
5496 * lisp.h (indirect_variable):
5497 * data.c (indirect_variable, let_shadows_buffer_binding_p):
5498 Use Lisp_Symbol pointers rather than Lisp_Object.
5499 Adjust callers.
5500 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
5501 To this end, change calling-convention.
5502
5503 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
5504 if some non-hidden buffers are selected by string&pred.
5505
5506 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
5507
5508 * process.c (wait_reading_process_output): Always check status
5509 when in batch mode.
5510
5511 2008-05-19 Kenichi Handa <handa@m17n.org>
5512
5513 * font.c (font_list_entities): Fix handling of cache.
5514 (font_matching_entity): Likewise.
5515
5516 * ftfont.c (cs_iso8859_1): Delete.
5517 (ft_face_cache): New variable.
5518 (struct ftfont_info): New member fc_charset_idx.
5519 (ftfont_build_basic_charsets): Delete.
5520 (fc_charset_table): New variable.
5521 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
5522 . FC_CHARSET_IDX) as :font-entity property in the font entity.
5523 Callers changed.
5524 (ftfont_lookup_cache, ftfont_get_charset): New functions.
5525 (ftfont_spec_pattern): New argument fc_charset_idx.
5526 Check registry more rigidly. Change callers.
5527 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
5528 change of :font-entity property of the font.
5529
5530 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
5531 property of the font.
5532
5533 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
5534
5535 * coding.c (Fcoding_system_p): Rename argument to match docstring.
5536 (Funencodable_char_position, Fcheck_coding_systems_region)
5537 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
5538 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
5539 (Ffind_operation_coding_system, Fset_coding_system_priority)
5540 (Fcoding_system_eol_type): Doc fixes.
5541
5542 2008-05-17 Glenn Morris <rgm@gnu.org>
5543
5544 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
5545
5546 2008-05-16 Eli Zaretskii <eliz@gnu.org>
5547
5548 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
5549 and st_gid.
5550
5551 * frame.c (Fdelete_frame): Don't call font_update_drivers if
5552 HAVE_WINDOW_SYSTEM is not defined.
5553
5554 * xfaces.c (merge_face_ref, merge_face_vectors)
5555 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
5556 HAVE_WINDOW_SYSTEM is defined.
5557 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
5558
5559 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
5560
5561 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
5562
5563 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5564
5565 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
5566
5567 2008-05-15 Kenichi Handa <handa@m17n.org>
5568
5569 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
5570 preference.
5571
5572 2008-05-15 Glenn Morris <rgm@gnu.org>
5573
5574 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
5575
5576 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
5577
5578 * fns.c (init_fns): Don't initialize weak_hash_tables here.
5579 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
5580
5581 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
5582
5583 2008-05-15 Kenichi Handa <handa@m17n.org>
5584
5585 * ftfont.c (ftfont_list): Downcase family name to check generic
5586 families.
5587
5588 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
5589 font-spec for QCfont value.
5590
5591 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
5592 buffer. Check the return value of it.
5593
5594 2008-05-14 Jason Rumney <jasonr@gnu.org>
5595
5596 * w32term.c (w32_get_glyph_overhangs): Remove.
5597 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
5598
5599 2008-05-14 Kenichi Handa <handa@m17n.org>
5600
5601 * font.c (font_prop_validate): Make nil a valid value.
5602 (font_clear_cache): Check if the cached vector of entities is nil
5603 or not.
5604
5605 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5606
5607 * emacs.c (main_thread): Conditionalize on
5608 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5609 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
5610
5611 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
5612 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
5613 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5614
5615 2008-05-14 Kenichi Handa <handa@m17n.org>
5616
5617 * coding.c (detect_coding_iso_2022): Ignore a coding category that
5618 has no corresponding coding system.
5619
5620 2008-05-14 Jason Rumney <jasonr@gnu.org>
5621
5622 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
5623
5624 * w32font.h (w32font_open_internal): Update declaration.
5625
5626 * w32font.c (w32font_open_internal): Change last argument from
5627 w32font_info struct to font object. Fill in font object from
5628 font_entity. Get Outline metrics if possible. Use them to
5629 calculate underline position and thickness. Use xlfd name as name
5630 property. Don't set codepage.
5631 (w32font_open): Pass font_object to w32font_open_internal. Don't
5632 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
5633 (w32font_draw): Use s->font.
5634 (clear_cached_metrics): Don't clear non-existent blocks.
5635
5636 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
5637 font was not found.
5638 (x_draw_glyph_string): Use underline position and thickness from font.
5639
5640 * w32uniscribe.c (uniscribe_open): Pass font_object to
5641 w32font_open_internal.
5642
5643 2008-05-14 Kenichi Handa <handa@m17n.org>
5644
5645 These changes are to delete all legacy font-handling codes, and
5646 make Emacs use only font-backends.
5647
5648 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
5649 (frame.o, image.o, print.o): Depend on $(FONTSRC).
5650
5651 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
5652
5653 * charset.h (Vcharset_non_preferred_head)
5654 (Vcurrent_iso639_language): Extern them.
5655
5656 * charset.c (Vcharset_non_preferred_head): New variable.
5657 (Vcurrent_iso639_language): New variable.
5658 (syms_of_charset): Declare it as a Lisp variable.
5659 (char_charset): Don't check non preferred charsets. As a last
5660 resort, return charset_unicode.
5661 (Fset_charset_priority): Update Vcharset_non_preferred_head.
5662
5663 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
5664 conditionals. Don't check enable_font_backend. Delete all codes
5665 used only when USE_FONT_BACKEND is not defined.
5666
5667 * dispextern.h (struct glyph_string): Change type of `font' to
5668 `struct font *'.
5669 (struct glyph_string): New member underline_position and
5670 underline_thickness.
5671 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
5672 (struct face): Change type of `font' to `struct font *'. Remove
5673 members `font_name', `font_info_id'.
5674 (per_char_metric, encode_char): Delete externs.
5675 (calc_pixel_width_or_height): Adjust the prototype.
5676
5677 * emacs.c (enable_font_backend): Delete extern.
5678 (main): Don't set enable_font_backend. Don't check the command
5679 line argument "-disable-font-backend".
5680
5681 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
5682 (enum font_property_index): New members FONT_DPI_INDEX,
5683 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
5684 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
5685 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
5686 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
5687 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
5688 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
5689 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
5690 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
5691 (struct font_spec, struct font_entity): New structs.
5692 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
5693 (struct font): Many members from old "struct font_info" moved to
5694 here. Members font and entity deleted.
5695 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
5696 the new font-related objects.
5697 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
5698 (CHECK_FONT_GET_OBJECT): Likewise.
5699 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
5700 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
5701 (struct font_driver): New members case_sensitive anc check. Type
5702 of the member list and open changed.
5703 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
5704 (font_symbolic_width, font_find_object, font_get_spec)
5705 (font_set_lface_from_name): Delete extern.
5706 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
5707
5708 * font.c: Include <strings.h>.
5709 (enable_font_backend): Delete it.
5710 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
5711 (CHECK_VALIDATE_FONT_SPEC): Delete it.
5712 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
5713 (null_string): Delete it.
5714 (null_vector): Make it static.
5715 (font_family_alist): Delete it.
5716 (Qnormal): Extern it.
5717 (QCextra, QClanguage): Delete it.
5718 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
5719 (font_make_spec, font_make_entity, font_make_object)
5720 (font_intern_prop): Renamed from intern_downcase. Don't downcase
5721 the string. Callers changed.
5722 (font_pixel_size): Adjusted for the format change of font-related
5723 objects.
5724 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
5725 (font_style_to_value, font_style_symbolic): New function.
5726 (build_font_family_alist): Delete it.
5727 (font_registry_charsets): Use Fassoc_string instead of
5728 assq_no_quit.
5729 (font_prop_validate_symbol): Don't return null_string.
5730 (font_prop_validate_style): Adjusted for the change of
5731 style-related values in a font vector.
5732 (font_property_table): Delete entries for QClanguage and
5733 QCantialias, add entries for QCavgwidth.
5734 (get_font_prop_index): Delete the 2nd argument FROM.
5735 (font_prop_validate): Arguments changed.
5736 (font_put_extra): Adjusted for the change of font-related objects.
5737 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
5738 (font_parse_fcname, font_unparse_fcname)
5739 (font_prepare_composition): Likewise.
5740 (font_parse_family_registry): Renamed from font_merge_old_spec.
5741 (otf_open): Delete the 1st arg entity.
5742 (font_otf_capability): Adjusted for the above change.
5743 (font_score): New arg alternate_families. Adjusted for the change
5744 of font-related objects.
5745 (font_sort_entites): New arg best_only.
5746 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
5747 Delete them.
5748 (font_match_p): Check alternate families.
5749 (font_find_object): Delete it.
5750 (font_check_object): New function.
5751 (font_clear_cache): Adjusted for the change of font-related objects.
5752 (font_delete_unmatched): New arg.
5753 (font_list_entities): Call font_driver->list with a spec that
5754 doesn't specify style-related properties.
5755 (font_matching_entity): Arguments changed. Caller changed.
5756 (font_open_entity): Adjusted for the change of font-related objects.
5757 (font_close_object, font_has_char, font_encode_char)
5758 (font_get_name, font_get_spec): Likewise.
5759 (font_spec_from_name, font_clear_prop, font_update_lface):
5760 New functions.
5761 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
5762 (font_prepare_for_face, font_done_for_face, font_open_by_name)
5763 (font_at): Adjusted for the change of font-related objects.
5764 (font_range): New function.
5765 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
5766 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
5767 (Fcopy_font_spec, Fmerge_font_spec): New function.
5768 (Ffont_family_list): Renamed from list-families.
5769 (Finternal_set_font_style_table): Arguments changed.
5770 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
5771 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
5772 change of font-related objects.
5773 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
5774
5775 * fontset.h (struct font_info): Delete it. Most members go to
5776 struct font.
5777 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
5778 (enum FONT_SPEC_INDEX): Delete it.
5779 (font_info, list_fonts_func, load_font_func, query_font_func)
5780 (set_frame_fontset_func, find_ccl_program_func)
5781 (get_font_repertory_func, new_fontset_from_font_name): Delete
5782 externs.
5783 (fontset_from_font_name): Extern it.
5784 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
5785 (FONT_INFO_FROM_FACE): Deleted.
5786 (face_for_font): Adjust prototype.
5787
5788 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
5789 conditionals. Don't check enable_font_backend. Delete all codes
5790 used only when USE_FONT_BACKEND is not defined.
5791 (get_font_info_func, list_font_func, load_font_func)
5792 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
5793 (get_font_repertory_func): Delete them.
5794 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
5795 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
5796 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
5797 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
5798 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
5799 (fontset_compare_rfontdef): New function.
5800 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
5801 rfont-defs by qsort. Adjusted for the change of font-group vector.
5802 (load_font_get_repertory): Deleted.
5803 (fontset_find_font): Use new macros to ref/set elements of
5804 font-def and rfont-def.
5805 (fontset_font): Fix the timing of remembering that no font for C.
5806 (free_face_fontset): Do nothing if the face has no fontset.
5807 (face_suitable_for_char_p): Use new macros to ref/set elements of
5808 rfont-def.
5809 (face_for_char): Likewise. Call face_for_char with font_object.
5810 (fs_load_font): Delete. Delete #pragma surrounding it.
5811 (fs_query_fontset): Use strcasecmp instead of strcmp.
5812 (generate_ascii_font_name): Adjusted for the format change of
5813 font-spec.
5814 (Fset_fontset_font): Likewise. Use new macros to set elements of
5815 font-def.
5816 (Fnew_fontset): Use font_unparse_xlfd to generate
5817 FONTSET_ASCII (fontset).
5818 (new_fontset_from_font_name): Deleted.
5819 (fontset_from_font): Renamed from new_fontset_from_font. Check if
5820 a fontset is already created for the font. FIx updating of
5821 Vfontset_alias_alist.
5822 (fontset_ascii_font): Deleted.
5823 (Ffont_info): Adjusted for the format change of font-spec.
5824 (Finternal_char_font): Likewise.
5825 (Ffontset_info): Likewise.
5826 (syms_of_fontset): Don't check load_font_func.
5827
5828 * fns.c (internal_equal): Handle PREV_FONT.
5829
5830 * frame.h: Delete USE_FONT_BACKEND conditional.
5831
5832 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
5833 conditionals. Don't check enable_font_backend. Delete all codes
5834 used only when USE_FONT_BACKEND is not defined.
5835 (x_set_font): Call x_new_font, not x_new_fontset2.
5836 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
5837 already set for the frame.
5838
5839 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
5840 a font-entity by font_make_entity. Use font_intern_prop instead
5841 of intern_downcase. Use FONT_SET_STYLE to set a style-related
5842 font property. If a font is scalable, set avgwidth property to 0.
5843 Set font-entity property by font_put_extra.
5844 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
5845 (ffont_driver): Adjusted for the change of struct font_driver.
5846 (ftfont_spec_pattern): New function.
5847 (ftfont_list): Return a list, not vector.
5848 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
5849 (ftfont_list_family): Don't downcase names.
5850 (ftfont_free_entity): Deleted.
5851 (ftfont_open): Return a font-object. Adjusted for the change of
5852 struct font. Get underline_thickness and underline_position from
5853 font property. Don't update dpyinfo->smallest_font_height and
5854 dpyinfo->smallest_char_width.
5855 (ftfont_close): Don't free `struct font'.
5856 (ftfont_has_char): Adjusted for the format change of font-entity.
5857 (ftfont_encode_char, ftfont_text_extents): Likewise.
5858
5859 * ftxfont.c (ftxfont_list): Return a list, not vector.
5860 (ftxfont_open): Return a font-object. Adjusted for the change of
5861 struct font. Get underline_thickness and underline_position from
5862 font property. Don't update dpyinfo->smallest_font_height and
5863 dpyinfo->smallest_char_width.
5864 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
5865 (ftxfont_draw): Adjusted for the change of struct font.
5866
5867 * image.c (image_ascent): Don't include "charset.h". Include
5868 "character.h" and "font.h".
5869
5870 * lisp.h (enum pvec_type): New member PREV_FONT.
5871 (Fassoc_string): EXFUN it.
5872
5873 * print.c: Include font.h.
5874 (print_object): Handle font-related objects.
5875
5876 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
5877 conditionals. Don't check enable_font_backend. Delete all codes
5878 used only when USE_FONT_BACKEND is not defined.
5879 (handle_auto_composed_prop): Do nothing if it->f is not on a
5880 window system. Check how many following characters can be
5881 displayed by the same font.
5882 (calc_pixel_width_or_height): Type of the 4th arg is changed to
5883 'struct font *'.
5884 (get_char_face_and_encoding): Assign the whole encoding task to
5885 the `encode-char' method of a font driver.
5886 (fill_composite_glyph_string): Adjusted for the change of `struct
5887 face' and `struct glyph_string'.
5888 (fill_glyph_string): Likewise.
5889 (get_per_char_metric): Arguments changed.
5890 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
5891 and `struct glyph_string'.
5892 (produce_stretch_glyph, calc_line_height_property)
5893 (x_produce_glyphs): Likewise.
5894
5895 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
5896 conditionals. Don't check enable_font_backend. Delete all codes
5897 used only when USE_FONT_BACKEND is not defined. Use
5898 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
5899 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
5900 (Qp): Extern them.
5901 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
5902 Deleted.
5903 (struct font_name): Deleted.
5904 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
5905 (compare_fonts_by_sort_order): New function.
5906 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
5907 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
5908 Deleted.
5909 (Fx_family_fonts): Use font_list_entities, and sort fonts by
5910 compare_fonts_by_sort_order.
5911 (Fx_font_family_list): Call Ffont_family_list.
5912 (face_numeric_value, face_numeric_weight, face_numeric_slant)
5913 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
5914 (face_symbolic_slant, face_symbolic_swidth)
5915 (split_font_name_into_vector, build_font_name_from_vector)
5916 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
5917 (font_rescale_ratio, split_font_name, build_font_name)
5918 (free_font_names, sort_fonts, x_face_list_fonts)
5919 (face_font_available_p, sorted_font_list, cmp_font_names)
5920 (font_list_1, concat_font_list, font_list, remove_duplicates):
5921 Deleted.
5922 (Fx_list_fonts): Use Ffont_list.
5923 (LFACE_AVGWIDTH): Deleted.
5924 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
5925 by FONTP.
5926 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
5927 (set_lface_from_font_name): Delete it.
5928 (set_lface_from_font): Renamed from
5929 set_lface_from_font_and_fontset. Caller changed. Don't set
5930 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
5931 for face.
5932 (merge_face_vectors): Copy font-spec if necessary.
5933 Clear properties of the font-spec if necessary.
5934 (merge_face_ref): Clear properties of the font-spec if necessary.
5935 (Finternal_set_lisp_face_attribute): Likewise.
5936 (set_font_frame_param): Use font_load_for_lface to load a
5937 font-object, and call Fmodify_frame_parameters with it.
5938 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
5939 font name by Ffont_xlfd_name.
5940 (Finternal_lisp_face_attribute_values): Don't check QCweight,
5941 QCslant, and QCwidth.
5942 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
5943 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
5944 Compare fonts by EQ.
5945 (lookup_non_ascii_face): Deleted.
5946 (face_for_font): The 2nd argument changed.
5947 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
5948 Check atomic font properties by case insensitive.
5949 (realize_non_ascii_face): Set face->overstrike correctly.
5950 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
5951 (dump_realized_face): Get font name from
5952 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
5953
5954 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
5955 conditionals. Don't check enable_font_backend. Delete all codes
5956 used only when USE_FONT_BACKEND is not defined.
5957 (xic_create_xfontset): Original code deleted and renamed from
5958 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
5959 (x_make_gc): Don't set GCFont in GCs.
5960 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
5961 opened by "fixed".
5962 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
5963 find_ccl_program_func, query_font_func, set_frame_fontset_func,
5964 get_font_repertory_func.
5965
5966 * xfont.c: Include <stdlib.h> and "ccl.h".
5967 (struct xfont_info): New structure.
5968 (xfont_query_font): Deleted.
5969 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
5970 moved from xterm.c.
5971 (xfont_driver): Adjusted for the change of struct font_driver.
5972 (compare_font_names): New function.
5973 (xfont_list_pattern): Sort font names case insensitively. Make
5974 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
5975 (xfont_list): Return a list, not vector.
5976 (xfont_match): If the font doesn't have QCname property, generate
5977 a name from the other font properties.
5978 (xfont_open): Return a font-object. Adjusted for the change of
5979 struct font. Get underline_thickness and underline_position from
5980 font property. Don't update dpyinfo->smallest_font_height and
5981 dpyinfo->smallest_char_width.
5982 (xfont_close): Don't free struct font.
5983 (xfont_prepare_face): Adjusted for the change of struct font.
5984 (xfont_done_face): Deleted.
5985 (xfont_has_char): Adjusted for the change of struct font.
5986 (xfont_encode_char, xfont_draw): Likewise.
5987 (xfont_check): New function.
5988
5989 * xftfont.c (xftfont_list): Adjusted for the change of `list'
5990 callback function.
5991 (xftfont_match): Adjusted for the format change of font-entity.
5992 (xftfont_open): Adjusted for the format change of font-entity and
5993 font-object. Adjusted for the change of struct font. Return a
5994 font-object. Don't update dpyinfo->smallest_font_height and
5995 dpyinfo->smallest_char_width.
5996 (xftfont_close): Block input while calling XftFontClose.
5997 (xftfont_prepare_face): Don't block input while calling
5998 xftfont_get_colors. Adjusted for the change of struct font.
5999 (xftfont_shape): Return value of error case fixed.
6000
6001 * xrdb.c (x_load_resources): Don't setup a fontset resource.
6002
6003 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
6004 conditionals.
6005 (FONT_WIDTH): Return (f)->max_width.
6006 (struct x_display_info): Delete member `font'.
6007 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
6008 (x_find_ccl_program, x_get_font_repertory): Delete externs.
6009 (struct x_output): Change type of `font' to `struct font *'.
6010
6011 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
6012 conditionals. Don't check enable_font_backend. Delete all codes
6013 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
6014 (x_per_char_metric, x_encode_char): Deleted.
6015 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
6016 (x_compute_glyph_string_overhangs): Adjusted for the change of
6017 `struct face'.
6018 (x_draw_glyph_string_foreground)
6019 (x_draw_composite_glyph_string_foreground): Likewise.
6020 (x_draw_glyph_string): Likewise. Use font->underline_position and
6021 font->underline_thickness.
6022 (x_new_font): Renamed from x_new_fontset2.
6023 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
6024 (x_check_font): Call `check' method of a font driver.
6025 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
6026 (x_query_font, x_get_font_repertory): Deleted.
6027 (x_find_ccl_program): Renamed and moved to xfont.c.
6028 (x_redisplay_interface): Adjusted for the change of `struct
6029 redisplay_interface'.
6030
6031 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
6032 conditionals. Don't check enable_font_backend. Delete all codes
6033 used only when USE_FONT_BACKEND is not defined. Surround non-used
6034 code by "#ifdef OLD_FONT" and "endif".
6035 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
6036
6037 * w32font.h (struct w32font_info): New member.
6038 (FONT_COMPAT): New macro.
6039 (w32font_open_internal): Prototype adjusted.
6040
6041 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
6042 OLD_FONT" and "endif".
6043
6044 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
6045 conditionals. Don't check enable_font_backend. Delete all codes
6046 used only when USE_FONT_BACKEND is not defined.
6047 (w32font_open): Return a font-object. Make a font-object by
6048 font_make_object. Adjusted for the change of struct w32font_info.
6049 (w32font_close): Don't free struct font. Adjusted for the change
6050 of struct w32font_info.
6051 (w32font_encode_char, w32font_text_extents, w32font_draw):
6052 Adjusted for the change of struct w32font_info.
6053 (w32font_draw): Likewise.
6054 (w32font_list_internal): Return a list, not vector.
6055 (w32font_open_internal): Change the 4th arg to font-object.
6056 Adjusted for the change of struct w32font_info and font-object format.
6057 (add_font_name_to_list): Don't downcase names.
6058 (w32_enumfont_pattern_entity): Make a font-entity by
6059 font_make_entity. Adjusted for the format change of font-entity.
6060 Use FONT_SET_STYLE to set a style-related font property. If a
6061 font is scalable, set avgwidth property to 0. Set font-entity
6062 property by font_put_extra.
6063 (font_matches_spec): Adjusted for the format change of font-entity.
6064 (w32_weight_table, w32_decode_weight): New variables.
6065 (w32_encode_weight): New function.
6066 (fill_in_logfont): Adjusted for the format change of font-spec.
6067 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
6068 weight value.
6069 (w32font_driver): Adjusted for the change of struct font_driver.
6070
6071 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
6072 conditionals. Don't check enable_font_backend. Surround non-used
6073 code by "#ifdef OLD_FONT" and "endif".
6074 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
6075 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
6076
6077 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
6078 conditionals. Don't check enable_font_backend. Delete all codes
6079 used only when USE_FONT_BACKEND is not defined. Surround non-used
6080 code by "#ifdef OLD_FONT" and "endif".
6081
6082 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
6083 (uniscribe_open): Return value changed to font-object.
6084 Adjusted for the format change of font-object.
6085 (uniscribe_otf_capability): Adjusted for the change of struct font.
6086 (add_opentype_font_name_to_list): Don't downcase names.
6087 (uniscribe_font_driver): Adjusted for the change of struct
6088 font_driver.
6089
6090 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
6091
6092 * dispnew.c (update_frame_1): Check if tty output is still valid
6093 before flushing it.
6094
6095 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
6096
6097 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
6098 to Gtk+ menus.
6099
6100 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
6101
6102 * dired.c (file_name_completion): Tweak the code so as to always do it
6103 in a single pass. Tighten the scope of some variables.
6104
6105 * dired.c (Qdefault_directory): New var.
6106 (file_name_completion): Use it instead of Fexpand_file_name.
6107 (syms_of_dired): Initialize it.
6108
6109 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
6110
6111 * fileio.c (double_dollars): Remove dead code.
6112
6113 2008-05-10 Eli Zaretskii <eliz@gnu.org>
6114
6115 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
6116 Mention w32-get-true-file-attributes in doc string.
6117
6118 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
6119
6120 2008-05-09 Glenn Morris <rgm@gnu.org>
6121
6122 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
6123 2008-04-23.
6124
6125 2008-05-09 Eli Zaretskii <eliz@gnu.org>
6126
6127 Support for reporting owner and group of each file on MS-Windows:
6128 * dired.c (stat_uname, stat_gname): New functions, with special
6129 implementation for w32.
6130 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
6131
6132 * w32.c: Rename the_passwd_* to dflt_passwd_*.
6133 (dflt_group_name): New static variable.
6134 (dflt_group): Rename from the_group.
6135 (init_user_info): Init dflt_group fields. Get user's group name
6136 from LookupAccountSid.
6137 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
6138 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
6139 New initialization states.
6140 (globals_of_w32): Initialize them to zero. Initialize the default
6141 group name to "None".
6142 (GetFileSecurity_Name): New global var, the name of the function
6143 to call for GetFileSecurity.
6144 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
6145 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
6146 (get_file_security, get_security_descriptor_owner)
6147 (get_security_descriptor_group, is_valid_sid)
6148 (get_file_security_desc, get_rid, get_name_and_id)
6149 (get_file_owner_and_group): New functions.
6150 (stat): Use get_file_security_desc and get_file_owner_and_group to
6151 report the owner and primary group of each file. Don't ignore the
6152 high 32 bits of file's size, now that st_size is 64-bit wide.
6153 Fix test when to get true file attributes.
6154 (init_user_info): Use get_rid instead of equivalent inline code.
6155 (fstat): Don't ignore the high 32 bits of file's size.
6156
6157 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
6158
6159 * image.c (png_load): Use correct bit-depth for setting background
6160 color.
6161
6162 2008-05-08 Eli Zaretskii <eliz@gnu.org>
6163
6164 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
6165 epa-hook.elc.
6166
6167 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
6168
6169 * font.c (Ffont_match_p): Don't use `iff' in docstring.
6170
6171 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
6172
6173 * macfns.c (Fx_create_frame): Make a copy of frame parameters
6174 because the original parameters are in pure storage now.
6175 (mac_window): Remove unused params. Update callers.
6176
6177 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6178
6179 * lread.c (substitute_object_recurse): Use lower-level primitives.
6180 Don't signal errors when traversing sub-char-tables.
6181 Don't loop over all the possible characters when traversing char-tables.
6182
6183 * print.c (print_preprocess): Add sub-char-tables to the print-table,
6184 just like we do in print.c.
6185
6186 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
6187
6188 * minibuf.c (Ftry_completion): Remove code left over from when we used
6189 scmp instead of Fcompare_strings.
6190
6191 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
6192
6193 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
6194
6195 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6196
6197 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
6198 Create bitmap context in native byte order.
6199
6200 * macterm.c (XDrawLine)
6201 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
6202 context in native byte order.
6203
6204 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6205
6206 * config.in: Regenerate.
6207
6208 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
6209 New definitions for Image I/O support.
6210 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6211 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
6212 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6213 (mac_data_provider_release_data, image_load_image_io)
6214 [USE_MAC_IMAGE_IO]: New functions.
6215 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
6216 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
6217 (init_image_func_pointer) [MAC_OSX]: Remove function.
6218 (image_load_quartz2d) [MAC_OSX]: Check availability of
6219 CGImageCreateWithPNGDataProvider at compile time.
6220 Use lowercase `false' for boolean constant.
6221 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
6222 Use image_load_image_io.
6223 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
6224 Don't check MyCGImageCreateWithPNGDataProvider.
6225 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
6226 Don't call init_image_func_pointer.
6227
6228 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
6229
6230 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
6231 Make variable non-static.
6232 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6233 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6234
6235 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
6236 (RED_FROM_ULONG): Mask off higher bits.
6237 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
6238
6239 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
6240 Include AvailabilityMacros.h.
6241 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
6242 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
6243
6244 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
6245
6246 * chartab.c (Fset_char_table_range): If range is t, really set all
6247 chars to that value.
6248
6249 2008-05-03 Eli Zaretskii <eliz@gnu.org>
6250
6251 * dired.c (Ffile_attributes): Don't allow the device number become
6252 negative.
6253
6254 2008-05-02 Daiki Ueno <ueno@unixuser.org>
6255
6256 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
6257
6258 2008-05-02 Juri Linkov <juri@jurta.org>
6259
6260 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
6261 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
6262 DEFAULT argument as a list of default values in docstrings.
6263
6264 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
6265
6266 * puresize.h (BASE_PURESIZE): Increase to 1210000.
6267
6268 2008-05-01 Martin Rudalics <rudalics@gmx.at>
6269
6270 * dispnew.c (change_frame_size_1): Preserve small windows when
6271 shrinking frames by calling set_window_height|width with third
6272 arg 2.
6273
6274 * window.h (struct window): Replace field too_small_ok by field
6275 resize_proportionally.
6276
6277 * window.c (make_window): Initialize resize_proportionally.
6278 (enlarge_window): Temporarily set resize_proportionally to make
6279 sure that shrink_windows does scale the window proportionally.
6280 (shrink_windows): When window has resize_proportionally set try
6281 to shrink it proportionally by stealing from other windows.
6282 (struct saved_window, Fset_window_configuration)
6283 (compare_window_configurations): Handle resize_proportionally.
6284 (WINDOW_TOTAL_SIZE): New macro.
6285 (window_min_size, shrink_windows, size_window): Use it.
6286 (check_min_window_sizes): Remove. Invalid values of
6287 window-min-height|width are handled by window_min_size_2 now.
6288 (size_window, Fsplit_window, enlarge_window)
6289 (adjust_window_trailing_edge, grow_mini_window): Don't call
6290 check_min_window_sizes.
6291 (window_min_size_2, window_min_size_1, window_min_size):
6292 New argument safe_p for retrieving "safe" minimum sizes.
6293 (Fdisplay_buffer, Fsplit_window, enlarge_window)
6294 (adjust_window_trailing_edge, grow_mini_window):
6295 Adjust arguments of window_min_size... functions.
6296 (shrink_windows): Argument min_size removed. New argument
6297 safe_p allows shrinking windows to their safe minimum sizes.
6298 Calculate minimum size and decide whether a window shall be
6299 deleted for each window individually.
6300 (size_window): When nodelete_p equals 2, tell shrink_windows to
6301 delete windows only if their new minimum size is no more safe.
6302 (shrink_window_lowest_first): Call window_min_size_1 to make
6303 sure to preserve modeline of bottom-most window when resizing
6304 the minibuffer.
6305 (Fset_window_configuration, Fcurrent_window_configuration)
6306 (compare_window_configurations): Do not handle
6307 window-min-height|width any more.
6308 (syms_of_window): Clarify window-min-height|width doc-strings.
6309
6310 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
6311
6312 * dired.c (file_name_completion): Fix up the encoding/decoding issue
6313 some more. Copy some of the code from Ftry_completions.
6314 Remove special case code that dates back to initial revision when the
6315 slash was only added when necessary and that can't trigger nowadays.
6316
6317 2008-04-27 Kenichi Handa <handa@m17n.org>
6318
6319 * font.c (font_prop_validate): Signal `error' instead of `font'.
6320
6321 2008-04-29 Jason Rumney <jasonr@gnu.org>
6322
6323 * w32fns.c (Fw32_battery_status): New defun.
6324 (syms_of_w32fns): Defsubr it.
6325
6326 2008-04-28 Andreas Schwab <schwab@suse.de>
6327
6328 * dired.c (file_name_completion): Fix another mixing of encoded
6329 and decoded names.
6330
6331 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
6332
6333 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
6334
6335 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
6336
6337 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
6338
6339 2008-04-27 Andreas Schwab <schwab@suse.de>
6340
6341 * dired.c (file_name_completion): Fix inappropriate mixing of
6342 encoded and decoded names.
6343
6344 * xterm.c (XTread_socket): Fix use of uninitialized variable.
6345
6346 * puresize.h (BASE_PURESIZE): Increase to 1200000.
6347
6348 2008-04-26 Eli Zaretskii <eliz@gnu.org>
6349
6350 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
6351 2008-03-31, it's not needed anymore with `struct stat' definition
6352 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
6353 for the same reasons.
6354
6355 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
6356
6357 * m/sparc.h: Additional redefinitions for GNU/Linux.
6358
6359 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6360
6361 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
6362 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
6363 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
6364 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
6365 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6366 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
6367 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6368 Likewise.
6369
6370 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
6371 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
6372 (mac_ax_number_of_characters): Add externs.
6373 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6374 [USE_MAC_TSM]: Likewise.
6375 (mac_handle_text_input_event) [MAC_OSX]:
6376 Handle kEventTextInputOffsetToPos for no active input area case.
6377 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6378 (mac_handle_document_access_event)
6379 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
6380 (install_application_handler) [MAC_OSX]: Register handlers for
6381 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6382 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6383 Register mac_handle_document_access_event.
6384
6385 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
6386 Make functions non-static.
6387
6388 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
6389
6390 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
6391 (read_file_name_completion_ignore_case, insert_default_directory)
6392 (Qdefault_directory): Move to minibuffer.el.
6393 (Fread_file_name): Call the new `read-file-name' instead.
6394
6395 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6396
6397 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
6398 Make function non-static.
6399 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
6400 Remove function.
6401 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6402 Move to mactoolbox.c.
6403 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
6404
6405 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
6406 (mac_rect_make): New macro.
6407
6408 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
6409 instead of float.
6410 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6411 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
6412 (XSetBackground) [USE_CG_DRAWING]: Likewise.
6413 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
6414 CGRectMake.
6415 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6416 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
6417 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
6418 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6419 instead of WindowRef in argument type.
6420 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
6421 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
6422 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
6423 instead of DISPLAY. All uses changed.
6424 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
6425 (x_calc_absolute_position): Simplify so as not to use
6426 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
6427
6428 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6429 instead of WindowRef in argument type.
6430 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
6431 [TARGET_API_MAC_CARBON]: Remove externs.
6432 (create_apple_event, mac_event_parameters_to_lisp)
6433 [TARGET_API_MAC_CARBON]: Add externs.
6434
6435 * mactoolbox.c (Vmac_ts_script_language_on_focus)
6436 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
6437 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
6438 is clicked.
6439 (x_activate_menubar): Remove extern for saved_menu_event_location.
6440 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6441 Move from mac.c.
6442
6443 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6444
6445 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
6446 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
6447
6448 2008-04-23 Jason Rumney <jasonr@gnu.org>
6449
6450 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
6451 attributes only for local files.
6452
6453 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
6454 default to Qlocal.
6455
6456 2008-04-22 Juri Linkov <juri@jurta.org>
6457
6458 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
6459 read-buffer-to-switch instead of using the letter "B".
6460
6461 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
6462
6463 * fileio.c (Qdefault_directory): New variable.
6464 (Fread_file_name): Use it to pass `dir' to the completion functions.
6465
6466 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
6467
6468 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
6469
6470 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
6471
6472 * keyboard.c (Vpre_help_message): Remove.
6473 (show_help_echo): Remove default C code.
6474
6475 * dired.c (directory_files_internal, file_name_completion):
6476 Only call ENCODE_FILE if the string is indeed decoded.
6477
6478 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6479
6480 * Makefile.in (TOOLKIT_DEFINES): Remove.
6481 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
6482
6483 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6484
6485 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
6486 (mactoolbox.o): New target.
6487
6488 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
6489 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
6490
6491 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
6492 Use mac_set_frame_window_background instead of XSetWindowBackground.
6493 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
6494 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
6495 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
6496 instead of SetWindowTitleWithCFString.
6497 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
6498 Move function to mactoolbox.c.
6499 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
6500 Use mac_set_window_modified instead of SetWindowModified.
6501 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
6502 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
6503 (Fx_focus_frame): Use mac_front_non_floating_window instead of
6504 FrontNonFloatingWindow. Use mac_activate_window instead of
6505 ActivateWindow. Use mac_active_non_floating_window instead of
6506 ActiveNonFloatingWindow.
6507 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
6508 Use mac_show_hourglass and mac_hide_hourglass.
6509 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
6510 instead of GetGlobalMouse.
6511 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
6512 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
6513 Use mac_bring_window_to_front instead of BringToFront.
6514 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
6515 mactoolbox.c.
6516 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
6517 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
6518 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
6519 mactoolbox.c.
6520
6521 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
6522 (XtPointer): Move typedef from macmenu.c.
6523 (enum button_type): Move enum from macmenu.c.
6524 (widget_value): Move typedef from macmenu.c.
6525 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
6526 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6527 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6528 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6529 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6530 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6531 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6532 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
6533 (Selection): Move typedef from macselect.c.
6534 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
6535 macterm.c.
6536 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
6537 (mac_is_window_collapsed, mac_bring_window_to_front)
6538 (mac_send_window_behind, mac_hide_window, mac_show_window)
6539 (mac_collapse_window, mac_front_non_floating_window)
6540 (mac_active_non_floating_window, mac_activate_window)
6541 (mac_move_window_structure, mac_move_window, mac_size_window)
6542 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
6543
6544 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
6545 (enum mac_menu_kind): Move enum to mactoolbox.c.
6546 (min_menu_id): Move variable to mactoolbox.c.
6547 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
6548 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
6549 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
6550 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
6551 [TARGET_API_MAC_CARBON]: Likewise.
6552 (XtPointer): Move typedef to macgui.h.
6553 (enum button_type): Move enum to macgui.h.
6554 (widget_value): Move typedef to macgui.h.
6555 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6556 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6557 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6558 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6559 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6560 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6561 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
6562 (popup_activated_flag): Make variable non-static.
6563 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
6564 (add_menu_item, fill_menu, dispose_menus):
6565 Move functions to mactoolbox.c.
6566 (restore_show_help_function, menu_target_item_handler)
6567 (install_menu_target_item_handler, mac_handle_dialog_event)
6568 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
6569 [TARGET_API_MAC_CARBON]: Likewise.
6570 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
6571 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6572 (find_and_call_menu_selection, name_is_separator): Make function
6573 non-static.
6574 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
6575 to mactoolbox.c.
6576 (set_frame_menubar): Don't call install_menu_quit_handler.
6577 (menu_item_selection): New variable.
6578 (mac_menu_show): Use create_and_show_popup_menu.
6579 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
6580 selection but set variable menu_item_selection. All uses changed.
6581 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
6582 Call install_menu_quit_handler. Move to mactoolbox.c.
6583
6584 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
6585 (Selection): Move typedef to macgui.h.
6586 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
6587 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
6588 Make variables non-static.
6589 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6590 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
6591 Make functions non-static.
6592 (Vmac_service_selection) [MAC_OSX]: Likewise.
6593 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
6594 (mac_valid_selection_target_p, mac_clear_selection)
6595 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6596 (mac_put_selection_value, mac_selection_has_target_p)
6597 (mac_get_selection_value, mac_get_selection_target_list)
6598 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
6599 Move functions to mactoolbox.c.
6600 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
6601 Likewise.
6602 (copy_scrap_flavor_data, mac_handle_service_event)
6603 (install_service_handler) [MAC_OSX]: Likewise.
6604 (syms_of_macselect) <Vmac_dnd_known_types>:
6605 Use mac_dnd_default_known_types.
6606
6607 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
6608 Move to mactoolbox.c.
6609 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
6610 (Fx_selection_owner_p): Add EXFUN.
6611 (install_window_handler, remove_window_handler, XSetWindowBackground):
6612 Remove externs.
6613 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
6614 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
6615 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
6616 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
6617 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
6618 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
6619 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
6620 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
6621 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
6622 (create_and_show_popup_menu, mac_get_selection_from_symbol)
6623 (mac_valid_selection_target_p, mac_clear_selection)
6624 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6625 (mac_put_selection_value, mac_selection_has_target_p)
6626 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
6627 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
6628 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
6629 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6630 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
6631 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6632 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
6633 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6634 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6635
6636 * mactoolbox.c: New file.
6637
6638 2008-04-18 Jason Rumney <jasonr@gnu.org>
6639
6640 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
6641
6642 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6643
6644 * character.c (Fmultibyte_char_to_unibyte):
6645 Return latin1 chars unchanged.
6646
6647 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
6648 relocated if it points to `name'.
6649
6650 2008-04-17 Kenichi Handa <handa@m17n.org>
6651
6652 * data.c (Faset): Allow setting a multibyte character in an
6653 ASCII-only unibyte string.
6654
6655 * lisp.h (STRING_SET_MULTIBYTE): New macro.
6656
6657 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
6658
6659 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
6660 done in config.h.
6661
6662 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
6663
6664 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
6665 (Fchar_direction): Add usage in the docstring.
6666
6667 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
6668
6669 * keyboard.c (read_key_sequence): Remove always-true checks.
6670
6671 2008-04-14 Jason Rumney <jasonr@gnu.org>
6672
6673 * w32font.c (w32font_open_internal): Set max_bounds.descent in
6674 compatibility struct, for better underline positioning.
6675
6676 2008-04-13 David Hansen <david.hansen@gmx.net>
6677
6678 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
6679 string.
6680
6681 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
6682
6683 * m/hp800.h (XUINT, XSET): Remove.
6684
6685 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
6686
6687 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
6688 previous change.
6689
6690 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
6691
6692 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
6693 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
6694
6695 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6696
6697 * keymap.h (map_keymap_canonical): Declare.
6698 * xmenu.c (single_keymap_panes): Use it.
6699
6700 2008-04-11 Glenn Morris <rgm@gnu.org>
6701
6702 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
6703 set the target's value to that of the alias.
6704
6705 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6706
6707 * term.c (set_tty_color_mode): Left over typo.
6708
6709 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
6710
6711 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
6712 only after check for file name handler functions. Signal, when
6713 native functionality is not supported.
6714 (syms_of_fileio): Declare it unconditionally.
6715
6716 2008-04-10 Jason Rumney <jasonr@gnu.org>
6717
6718 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
6719 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
6720
6721 * w32.c (logon_network_drive): Also logon to remote drives that
6722 are mapped to drive letters.
6723
6724 2008-04-10 Glenn Morris <rgm@gnu.org>
6725
6726 * xdisp.c (truncate-partial-width-windows): Doc fix.
6727
6728 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
6729
6730 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
6731 Move functions to minibuffer.el.
6732 (syms_of_fileio): Don't declare them.
6733
6734 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6735
6736 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
6737 (syms_of_minibuf): Remove its initialization.
6738
6739 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
6740
6741 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
6742
6743 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
6744
6745 2008-04-09 Jason Rumney <jasonr@gnu.org>
6746
6747 * makefile.w32-in (distclean): Delete makefile too.
6748 (maintainer-clean): New target.
6749
6750 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
6751
6752 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
6753 for new font backend and composite cases.
6754
6755 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
6756
6757 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
6758 Most of the code moved to run_timers.
6759 (do_pending_atimers): Call run_timers.
6760 (run_timers): New function.
6761
6762 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
6763 run atimers.
6764
6765 * process.c (wait_reading_process_output): The same as above.
6766
6767 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6768
6769 * minibuf.c (last_exact_completion): Remove variable.
6770 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
6771 (complete_and_exit_1, complete_and_exit_2)
6772 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
6773 (Fdisplay_completion_list, display_completion_list_1)
6774 (Fminibuffer_completion_help, Fself_insert_and_exit)
6775 (Fexit_minibuffer, Fminibuffer_message): Move functions to
6776 minibuffer.el.
6777 (syms_of_minibuf): Remove corresponding initializations.
6778
6779 * keyboard.c (Qdeactivate_mark): New var.
6780 (command_loop_1): Use it to call `deactivate-mark'.
6781 (syms_of_keyboard): Initialize it.
6782
6783 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
6784 to another frame.
6785 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
6786 Don't call set_tty_color_mode.
6787 (store_frame_param): Reset previous_frame rather than call
6788 set_tty_color_mode.
6789 * term.c (set_tty_color_mode): Rewrite.
6790 * dispextern.h (set_tty_color_mode): New type.
6791 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
6792
6793 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
6794
6795 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
6796 for generic chars, which do not exist any more in emacs-unicode.
6797
6798 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
6799
6800 * coding.c (detect_coding_emacs_mule)
6801 (Ffind_operation_coding_system): Fix typo.
6802
6803 2008-04-08 Jason Rumney <jasonr@gnu.org>
6804
6805 * w32uniscribe.c (SNAME): Extract only symbol name.
6806
6807 * w32font.h (struct w32_metric_cache): New struct.
6808 (w32font_info): Use it.
6809 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
6810 (CACHE_BLOCKSIZE): New constants.
6811
6812 * w32font.c (Qja, Qko, Qzh): New symbols.
6813 (syms_of_w32font): Initialise them.
6814 (font_matches_spec): Use them to filter by language.
6815 (recompute_cached_metrics): Remove function.
6816 (compute_metrics, clear_cached_metrics): New functions.
6817 (w32font_encode_char): Use them to manage metric cache.
6818 (w32font_text_extents): Cache metrics for all glyphs on demand.
6819 Delay converting glyph indices to WORD until needed.
6820 (w32font_open_internal): Initialize metric cache to empty.
6821 (registry_to_w32_charset): Charset should always be a symbol.
6822 (fill_in_logfont, list_all_matching_fonts): Family should
6823 always be a symbol.
6824
6825 2008-04-06 Jason Rumney <jasonr@gnu.org>
6826
6827 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
6828 Give up if glyph indices not supported. Use uniscribe obtained
6829 ABC widths for individual metrics. Map glyph clusters back to
6830 characters using fClusterStart flag. Return number of glyphs
6831 produced, not chars processed.
6832 (uniscribe_shape): Map char at FROM to current glyph.
6833
6834 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6835
6836 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
6837 Use SetMenuItemHierarchicalMenu.
6838
6839 2008-04-05 Jason Rumney <jasonr@gnu.org>
6840
6841 * image.c (pbm_load): Allow color values up to 65535.
6842 Throw an error if max_color_idx is outside the supported range.
6843 Report an error when image size is invalid.
6844 Read two bytes at a time when raw images have max_color_idx above 255.
6845
6846 2008-04-05 Eli Zaretskii <eliz@gnu.org>
6847
6848 * w32.c (readdir): If FindFirstFile/FindNextFile return in
6849 cFileName a file name that includes `?' characters, use the 8+3
6850 alias in cAlternateFileName instead.
6851
6852 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
6853
6854 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
6855 append "CCL: Quitted" when the CCL program is quitted.
6856 (setup_ccl_program): Initialize ccl->quit_silently to zero.
6857
6858 * ccl.h (struct ccl_program): New member quit_silently.
6859
6860 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
6861
6862 * search.c (compile_pattern_1): Treat non-nil and non-string of
6863 search-spaces-regexp as nil.
6864
6865 * minibuf.c (Fassoc_string): Tweak docstring.
6866
6867 2008-04-05 Eli Zaretskii <eliz@gnu.org>
6868
6869 * dired.c (Ffile_attributes): Support inode numbers wider than 32
6870 bits. Remove ugly WINDOWSNT-specific kludge introduced on
6871 2008-03-14 to force inode be positive.
6872
6873 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
6874 _S_* ones, since we now use our own sys/stat.h.
6875 (stat, fstat): Don't mangle the inode number.
6876 (init_user_info): Don't restrict UID and GID to 0-60000 range.
6877
6878 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
6879
6880 * frame.h (struct frame): Give one more bit to `visible' since we use
6881 values larger than 1 to indicate obscured frames on ttys.
6882
6883 * keymap.c (Qkeymap_canonicalize): New var.
6884 (Fmap_keymap_internal): New fun.
6885 (describe_map): Use keymap-canonicalize.
6886
6887 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
6888 (Fundo_boundary): Set them.
6889 (syms_of_undo): Initialize them.
6890 (record_point): Use them instead of last_point_position*.
6891 (last_undo_buffer): Change type.
6892
6893 2008-04-04 Jason Rumney <jasonr@gnu.org>
6894
6895 * w32font.c (w32font_text_extents): Use font's ascent and descent.
6896 (recompute_cached_metrics): Don't set ascent and descent per char.
6897
6898 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
6899 (uniscribe_check_otf): Add GC protection before consing.
6900 Rearrange loop for counting features.
6901
6902 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
6903
6904 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
6905 buffer with byte-size of source buffer.
6906
6907 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
6908
6909 * callint.c (Fcall_interactively): Handle temporary region even
6910 when shift-select-mode is off.
6911
6912 2008-04-03 Jason Rumney <jasonr@gnu.org>
6913
6914 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
6915
6916 2008-04-03 Kenichi Handa <handa@m17n.org>
6917
6918 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
6919 (CATEGORY_MASK_UTF_16): Likewise.
6920 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
6921 binary file.
6922 (detect_coding): Add null-byte detection for a binary file.
6923 (detect_coding_system): Likewise.
6924
6925 2008-04-03 Jason Rumney <jasonr@gnu.org>
6926
6927 * w32uniscribe.c: New file.
6928
6929 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
6930
6931 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
6932
6933 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
6934 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
6935 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
6936 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
6937 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
6938 (Qphonetic): New symbols.
6939 (syms_of_w32font): Initialize them.
6940 (font_supported_scripts): Use them.
6941 (w32font_list_family): List all charsets.
6942 (w32font_text_extents, recompute_cached_metrics): Fix metric
6943 calculations.
6944 (w32_enumfont_pattern_entity): Make full_type a DWORD.
6945 Give opentype fonts their own format.
6946 (font_matches_spec): New arguments backend and logfont.
6947 Handle :otf spec for uniscribe backend.
6948 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
6949 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
6950
6951 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
6952 font backend.
6953 (globals_of_w32fns): Initialize uniscribe font backend.
6954
6955 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
6956 dependencies.
6957 (w32uniscribe.$(O)): New file to build.
6958 (FONT_OBJ): Include w32uniscribe.$(O).
6959 (LIBS): Add uniscribe libraries.
6960
6961 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
6962
6963 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
6964
6965 * callint.c (Vshift_select_mode): New var.
6966 (Finteractive): Document new ^ spec.
6967 (Fcall_interactively): Call handle-shift-selection if the ^ spec
6968 is present.
6969
6970 * keyboard.c (Vthis_command_keys_shift_translated): New var.
6971 (command_loop_1): Avoid running the direct display versions of
6972 forward-char and backward-char if shift-selection may occur.
6973 (read_key_sequence): Set Vthis_command_keys_shift_translated if
6974 shift-translation takes place.
6975
6976 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
6977 avoid clobbering by define-minor-mode.
6978
6979 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
6980 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
6981
6982 * syntax.c (Fforward_word): Add ^ interactive spec.
6983
6984 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
6985 (Fscroll_right): Add ^ interactive spec.
6986
6987 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
6988
6989 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
6990
6991 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
6992
6993 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
6994
6995 2008-03-31 Juri Linkov <juri@jurta.org>
6996
6997 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
6998
6999 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
7000
7001 * gtkutil.c (xg_set_geometry): Fix indentation.
7002 (xg_resize_outer_widget): Remove.
7003 (x_wm_size_hint_off): Fix indentation.
7004 (xg_frame_set_char_size): Call flush_and_sync after
7005 gtk_window_resize.
7006 (x_wm_set_size_hint): Pass NULL as geometry window to
7007 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
7008 Add menu bar and tool bar height to base height.
7009 (xg_update_frame_menubar, free_frame_menubar)
7010 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
7011 (update_frame_tool_bar, free_frame_tool_bar):
7012 Change xg_resize_outer_widget to xg_frame_set_char_size.
7013
7014 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
7015
7016 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
7017 (Fdbus_call_method): New parameter TIMEOUT.
7018 (dbus-send-signal): Optimize UNGCPRO call.
7019
7020 2008-03-29 Juri Linkov <juri@jurta.org>
7021
7022 * window.c (Fdisplay_buffer): Move call to
7023 Vsplit_window_preferred_function out of conditions that check
7024 if window is eligible for vertical splitting.
7025 When Vsplit_window_preferred_function is non-nil, call it and use
7026 its non-nil return value as window. Otherwise, continue doing
7027 vertical splitting using Fsplit_window with arg horflag=nil.
7028 (syms_of_window) <Vsplit_window_preferred_function>: Change the
7029 default value from `split-window' to nil.
7030
7031 2008-03-29 Juri Linkov <juri@jurta.org>
7032
7033 * callint.c (Fcall_interactively): Revert 2008-03-16 change
7034 for interactive code letters 'b' and 'B'.
7035
7036 2008-03-29 Eli Zaretskii <eliz@gnu.org>
7037
7038 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
7039 multibyte string.
7040
7041 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
7042
7043 * keyboard.c (pending_funcalls): New var.
7044 (timer_check): Run it.
7045 (syms_of_keyboard): Initialize it.
7046 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
7047 (Vdelete_terminal_functions): New vars.
7048 (syms_of_terminal): Initialize them.
7049 (Fdelete_terminal): Run delete-terminal-functions.
7050 * xdisp.c (safe_eval): Rewrite.
7051 (safe_call2): New fun.
7052 * frame.c (Qdelete_frame_functions): New var.
7053 (syms_of_frame): Initialize it.
7054 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
7055 * lisp.h (safe_call2, pending_funcalls): Declare.
7056
7057 2008-03-28 Andreas Schwab <schwab@suse.de>
7058
7059 * indent.c (Fmove_to_column): Move declaration before statements.
7060
7061 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
7062
7063 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
7064 (struct frame): Use bit fields for boolean vars.
7065
7066 * process.c (server_accept_connection): Simplify naming.
7067 (emacs_get_tty_pgrp): Use SDATA.
7068
7069 * coding.c (decode_coding_object): Fix last change.
7070
7071 2008-03-27 Jason Rumney <jasonr@gnu.org>
7072
7073 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
7074
7075 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
7076
7077 * charset.c (Fdefine_charset_internal): Change the way of
7078 registering charsets in Vcharset_order_list.
7079 (syms_of_charset): Make the charset `eight-bit' supplementary.
7080
7081 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
7082
7083 * regex.c (EXTEND_BUFFER): Change order of pointer addition
7084 operations, to avoid having the difference between pointers
7085 overflow.
7086
7087 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
7088
7089 * indent.c (check_display_width): New fun.
7090 (scan_for_column): Use it.
7091
7092 * data.c (syms_of_data): Mark most-positive-fixnum and
7093 most-negative-fixnum as constants.
7094
7095 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
7096
7097 * indent.c (scan_for_column): Extract from current_column_1.
7098 Merge with the same code from Fmove_to_column.
7099 (current_column_1, Fmove_to_column): Use it.
7100
7101 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
7102
7103 * keymap.c (map_keymap_internal): New fun.
7104 (map_keymap): Use it.
7105 (Fmap_keymap_internal): New fun.
7106 (Fmap_keymap): Remove left-out test from before make_save_value.
7107
7108 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
7109
7110 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
7111 Use XCAR/XCDR.
7112
7113 * process.h (struct Lisp_Process): Remove filter_multibyte.
7114 * process.c (QCfilter_multibyte): Remove.
7115 (setup_process_coding_systems): Don't use filter_multibyte.
7116 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
7117 (read_process_output): Don't adjust multibyteness to filter_multibyte.
7118 (Fset_process_filter_multibyte): Change the coding-system to
7119 approximate the previous behavior.
7120 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
7121 coding-system.
7122
7123 * coding.c (decode_coding_object): When not decoding into a buffer,
7124 obey the coding system's preference of (uni|multi)byte.
7125
7126 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
7127
7128 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
7129 every char is changed and has a different byte-length.
7130 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
7131 Fix int -> EMACS_INT.
7132
7133 2008-03-23 David Hansen <david.hansen@gmx.net>
7134
7135 * dbusbind.c (xd_read_message): Remove extra copying of message
7136 strings. Check for NULL `interface' or `member'.
7137
7138 2008-03-22 Eli Zaretskii <eliz@gnu.org>
7139
7140 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7141 cFileName a file name that includes `?' characters, use the 8+3
7142 alias in cAlternateFileName instead.
7143
7144 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
7145
7146 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
7147
7148 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7149
7150 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
7151 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
7152 work on current_buffer only instead (that was already the case
7153 for some of the code anyway).
7154 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
7155 (temp_set_point, temp_set_point_both): Use EMACS_INT.
7156 (SET_PT, SET_PT_BOTH): Adjust.
7157 * intervals.h (set_point, temp_set_point, set_point_both)
7158 (temp_set_point_both): Remove redundant declarations.
7159
7160 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7161
7162 * fileio.c (Finsert_file_contents):
7163 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
7164 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
7165 when buffer != current_buffer anyway.
7166
7167 2008-03-20 Andreas Schwab <schwab@suse.de>
7168
7169 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
7170 as default.
7171
7172 2008-03-19 Jason Rumney <jasonr@gnu.org>
7173
7174 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
7175 (syms_of_w32fns): Initialize them.
7176 (HOURGLASS_ID): New constant.
7177 (x_window_to_frame): Don't check hourglass_window.
7178 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
7179 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
7180 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
7181 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
7182 Only change the cursor if hourglass is not active.
7183 (Fx_create_frame): Initialize frame's current_cursor.
7184 (hourglass_atimer): Remove.
7185 (hourglass_started): New function.
7186 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
7187 (show_hourglass): Adapt to w32, changing argument to frame.
7188
7189 * w32term.h (struct w32_output): Remove hourglass_window.
7190 Add current_cursor.
7191
7192 * eval.c (call_debugger, Fsignal):
7193 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
7194 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
7195 (Fexecute_extended_command, cancel_hourglass_unwind):
7196 * minibuf.c (read_minibuf):
7197 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
7198
7199 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
7200
7201 * window.c (run_funs): New fun.
7202 (run_window_configuration_change_hook): Use it to run the buffer-local
7203 and the global part of the hook.
7204
7205 * xdisp.c (format_mode_line_unwind_data): Add window argument.
7206 (unwind_format_mode_line): Restore selected window.
7207 (x_consider_frame_title, Fformat_mode_line): Set selected window.
7208
7209 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7210
7211 * editfns.c (Fchar_equal): Check they are valid characters.
7212
7213 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
7214
7215 2008-03-17 Andreas Schwab <schwab@suse.de>
7216
7217 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
7218 against a charset.
7219
7220 * lisp.h (Fbuffer_list): Declare.
7221
7222 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
7223
7224 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
7225 handlebox_widget is != 0.
7226
7227 2008-03-16 Juri Linkov <juri@jurta.org>
7228
7229 * callint.c (Fcall_interactively): For interactive code letters
7230 'b' and 'B' put the buffer list into the list of default "future"
7231 values of the minibuffer.
7232
7233 2008-03-16 Andreas Schwab <schwab@suse.de>
7234
7235 * keyboard.c (read_key_sequence): Fix downcasing of letters with
7236 modifiers.
7237
7238 * regex.c (re_match_2_internal): Correct matching of a charset
7239 against latin-1 characters.
7240
7241 2008-03-16 Kenichi Handa <handa@m17n.org>
7242
7243 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
7244 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
7245 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
7246 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
7247 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
7248 CHAR_STRING_ADVANCE.
7249 (produce_chars): Fix for the case that the source and the
7250 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
7251 instead of CHAR_STRING_ADVANCE.
7252 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
7253 STRING_CHAR_ADVANCE.
7254
7255 2008-03-15 Andreas Schwab <schwab@suse.de>
7256
7257 * regex.c (re_match_2_internal): Correct matching of eight bit
7258 characters in unibyte strings.
7259
7260 2008-03-15 Martin Rudalics <rudalics@gmx.at>
7261
7262 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
7263 at end of range when it coincides with the end of the buffer.
7264
7265 2008-03-14 Eli Zaretskii <eliz@gnu.org>
7266
7267 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
7268
7269 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
7270
7271 2008-03-14 Jason Rumney <jasonr@gnu.org>
7272
7273 * editfns.c (initial_tz): New variable.
7274 (syms_of_editfns): Initialize it.
7275 (Fset_time_zone_rule): Set it when first called.
7276 Use it when TZSTRING is nil.
7277
7278 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
7279 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
7280 (monitor_from_point_fn, get_monitor_info_fn): New globals.
7281 (globals_of_w32fns): Initialize them.
7282 (compute_tip_xy): Use them to position tooltips.
7283
7284 2008-03-14 Glenn Morris <rgm@gnu.org>
7285
7286 * emacs.c (main): Revert previous change.
7287 (standard_args): Revert -internal-script back to -scriptload,
7288 and remove the long-option form.
7289
7290 2008-03-13 Glenn Morris <rgm@gnu.org>
7291
7292 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
7293 Remove option -enable-font-backend.
7294
7295 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
7296
7297 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
7298
7299 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
7300
7301 * xterm.c (x_connection_closed): For GTK: If this is the last
7302 terminal just exit without closing the display.
7303
7304 2008-03-11 Jason Rumney <jasonr@gnu.org>
7305
7306 * w32font.c (w32font_full_name): Use floor to round.
7307
7308 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
7309
7310 * sound.c (alsa_configure): Declare vol at beginning of block.
7311
7312 * fontset.c (Ffontset_info): Remove extra semicolon.
7313
7314 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
7315
7316 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
7317 size of resulting string.
7318
7319 2008-03-10 Jason Rumney <jasonr@gnu.org>
7320
7321 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
7322
7323 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7324
7325 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
7326 Don't pretend as if characters with display property haven't been
7327 consumed for string-replacing-string case.
7328
7329 2008-03-08 Kim F. Storm <storm@cua.dk>
7330
7331 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
7332 (get_next_display_element, next_element_from_string)
7333 (next_element_from_ellipsis, next_element_from_buffer): Use it.
7334
7335 2008-03-08 Andreas Schwab <schwab@suse.de>
7336
7337 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
7338
7339 2008-03-06 Jason Rumney <jasonr@gnu.org>
7340
7341 * w32font.c (w32_registry): Take font_type argument. Use ANSI
7342 when charset not specified. Only translate ANSI to unicode when
7343 font_type is truetype.
7344 (w32font_coverage_ok): New function.
7345 (add_font_entity_to_list): Use it to filter unsuitable fonts.
7346
7347 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
7348
7349 * lread.c (Fread_char): Resolve modifiers.
7350 (Fread_char_exclusive): Likewise.
7351
7352 * character.c (char_resolve_modifier_mask): New function.
7353 (char_string): Use char_resolve_modifier_mask.
7354 (Fchar_resolve_modifiers): New function.
7355 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
7356 function.
7357
7358 2008-03-04 Jason Rumney <jasonr@gnu.org>
7359
7360 * makefile.w32-in: Always include w32font.c in the build.
7361 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
7362
7363 2008-03-04 Andreas Schwab <schwab@suse.de>
7364
7365 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
7366 (versionclean): Likewise.
7367
7368 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
7369
7370 * .cvsignore: Add oo.
7371
7372 2008-03-03 Andreas Schwab <schwab@suse.de>
7373
7374 * coding.c (decode_coding_object): Inhibit gap shrinking while
7375 decoding in place.
7376
7377 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
7378
7379 * w32term.c: Remove unused include "gnu.h".
7380 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
7381
7382 * gnu.h: Rename to ...
7383 * emacs-icon.h: ... this.
7384 * xterm.c: Use emacs-icon.h instead of gnu.h.
7385 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
7386
7387 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
7388
7389 * w32font.c: Include math.h.
7390
7391 2008-03-03 Jason Rumney <jasonr@gnu.org>
7392
7393 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
7394 Compute options separately.
7395 (w32font_open_internal): Set glyph_idx before caching metrics.
7396
7397 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
7398 Define if system headers don't.
7399 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
7400 (w32font_encode_char): Don't declare here.
7401
7402 * w32font.c (Quniscribe, QCformat): New symbols.
7403 (syms_of_w32font): Define them.
7404 (w32font_has_char): Indicate uncertainty.
7405 (w32font_encode_char): Encode as glyph point. Make static.
7406 (recompute_cached_metrics): New function.
7407 (w32font_open_internal): Use it. Set font to use glyph points
7408 initially. Set format based on type of font.
7409 (w32font_text_extents, w32font_draw): Optionally use glyph points.
7410 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
7411 on it. Set format based on information available here.
7412 (add_font_entity_to_list): Identify backend based on opentype_only.
7413
7414 2008-03-02 Andreas Schwab <schwab@suse.de>
7415
7416 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
7417
7418 * coding.c (decode_coding_big5, produce_chars):
7419 Fix typos in last change.
7420
7421 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
7422
7423 * gnu.h: New icon.
7424
7425 2008-03-02 Kenichi Handa <handa@m17n.org>
7426
7427 * coding.c (decode_coding_utf_8): When eol-type of CODING is
7428 `dos', don't decode '\r' if that is the last in the source.
7429 (decode_coding_utf_16, decode_coding_emacs_mule)
7430 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7431 (decode_coding_raw_text, decode_coding_charset): Likewise.
7432 (produce_chars): Don't decode EOL here. Use EMACS_INT.
7433
7434 2008-03-01 Jason Rumney <jasonr@gnu.org>
7435
7436 * w32font.c (w32font_full_name): Report point size for scalable fonts.
7437
7438 2008-03-01 Kim F. Storm <storm@cua.dk>
7439
7440 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
7441
7442 2008-03-01 Jason Rumney <jasonr@gnu.org>
7443
7444 * w32font.c (w32font_full_name): New function.
7445 (w32font_open_internal): Use it.
7446
7447 2008-03-01 Kim F. Storm <storm@cua.dk>
7448
7449 * dispnew.c (line_draw_cost): Fix invalid glyph check.
7450
7451 2008-03-01 Jason Rumney <jasonr@gnu.org>
7452
7453 * font.c (font_unparse_fcname): Increase len when style is a symbol.
7454
7455 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
7456
7457 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
7458 xg_frame_resized when the event is for the edit widget.
7459
7460 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
7461
7462 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
7463 set_char_size.
7464 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
7465 operations on widgets here. Just set frame size if needed.
7466 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
7467 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
7468 (x_wm_set_size_hint): Set size hints on the edit widget only, not
7469 the whole frame.
7470 (xg_create_tool_bar): Move attachment of the tool bar to
7471 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
7472 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
7473
7474 2008-03-01 Jason Rumney <jasonr@gnu.org>
7475
7476 * w32fns.c (w32_msg_pump): Disable debug code.
7477
7478 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7479
7480 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
7481
7482 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
7483
7484 * xdisp.c (next_overlay_string): Don't set
7485 overlay_strings_at_end_processed_p if we're currently reading from
7486 a display string.
7487
7488 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
7489
7490 * xdisp.c (get_overlay_strings_1): Fix typo.
7491
7492 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
7493
7494 * xdisp.c (get_overlay_strings_1): Add missing argument type.
7495
7496 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
7497
7498 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
7499
7500 * xdisp.c (display_mode_element): Cancel the previous change.
7501 (decode_mode_spec): Likewise.
7502 (handle_auto_composed_prop): Don't make composition if it->string
7503 is a string.
7504
7505 2008-02-27 Kim F. Storm <storm@cua.dk>
7506
7507 * lisp.h (GLYPH): Change type from int to struct with separate char
7508 and face_id members.
7509 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
7510 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
7511 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
7512 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
7513 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
7514 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
7515 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
7516 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
7517 handle new Lisp glyph code encoding, either an integer or a cons.
7518
7519 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
7520 (GLYPH_ALIAS): Delete.
7521 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
7522 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
7523 (GLYPH_FROM_CHAR): Replace macro by ...
7524 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
7525
7526 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
7527 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
7528 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
7529 (GLYPH_INVALID_P): New macro.
7530 (spec_glyph_lookup_face): Update prototype.
7531
7532 * dispnew.c (line_draw_cost): Adapt to new glyph type.
7533 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
7534 new glyph code encoding.
7535 (spec_glyph_lookup_face): No return value; update passed glyph instead.
7536 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
7537
7538 * xdisp.c (get_next_display_element, next_element_from_display_vector):
7539 Adapt to new glyph type and new glyph code encoding.
7540
7541 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
7542
7543 * indent.c (current_column, current_column_1, Fmove_to_column)
7544 (compute_motion): Adapt to new glyph code encoding.
7545
7546 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
7547
7548 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
7549
7550 * process.c (wait_reading_process_output): Check for window
7551 changes caused by timers.
7552 Suggested by Johan Bockgård.
7553
7554 2008-02-27 Glenn Morris <rgm@gnu.org>
7555
7556 * emacs.c (USAGE1): Add `--disable-font-backend'.
7557
7558 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
7559
7560 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
7561 is made to the buffer.
7562
7563 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
7564
7565 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
7566 (face_at_string_position):
7567 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
7568 (face_at_string_position):
7569 * xdisp.c (display_string, next_overlay_change):
7570 * buffer.h (overlays_at):
7571 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
7572 Update callers.
7573
7574 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
7575
7576 * editfns.c (Fformat): Doc fix.
7577
7578 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
7579
7580 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
7581 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
7582 (Ffont_otf_alternates, Fquery_font): Doc fixes.
7583
7584 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7585
7586 * buffer.c (Fbuffer_swap_text): New function.
7587 (syms_of_buffer): Defsubr it.
7588
7589 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
7590
7591 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
7592
7593 2008-02-25 Jason Rumney <jasonr@gnu.org>
7594
7595 * w32font.c (w32font_draw): Draw one character at a time when padding.
7596
7597 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7598
7599 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
7600 Handle a nil arg. Use run_window_configuration_change_hook.
7601 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
7602 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
7603 Use run_window_configuration_change_hook.
7604
7605 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7606
7607 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
7608 1-pixel width.
7609
7610 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7611
7612 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
7613 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
7614 if the glyph in the font is zero pixel with.
7615
7616 * dispextern.h (struct glyph_string): New member padding_p.
7617
7618 * w32font.c (w32font_draw): Pay attention to s->padding_p.
7619
7620 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
7621
7622 * xfont.c (xfont_draw): Pay attention to s->padding_p.
7623
7624 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
7625
7626 * font.c: If the font driver doesn't have `shape' function, return Qnil.
7627
7628 2008-02-25 Jason Rumney <jasonr@gnu.org>
7629
7630 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
7631
7632 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
7633
7634 Allow fine-grained image-cache flushing.
7635 * dispextern.h (struct image): Add `dependencies' field.
7636 (clear_image_caches): Change arg to Lisp_Object.
7637 * image.c (make_image): Initialize `dependencies' field.
7638 (clear_image_cache): Change arg to allow fine-grained flushing.
7639 Perform the flush even if image-cache-eviction-delay is nil.
7640 (clear_image_caches): Change arg to Lisp_Object.
7641 (Fclear_image_cache): Expand meaning of the argument.
7642 (mark_image): Mark `dependencies' field.
7643 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
7644 (lface_hash): Use XHASH rather than XFASTINT.
7645 (face_at_buffer_position): Fix int -> EMACS_INT position.
7646 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
7647 (select_frame_for_redisplay): Remove code duplication.
7648 (redisplay_internal): Adapt arg to call to clear_image_caches.
7649
7650 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
7651
7652 * s/vms4-0.h:
7653 * s/vms4-2.h:
7654 * s/vms4-4.h:
7655 * s/vms5-5.h: Remove, unused.
7656
7657 * s/irix5-2.h:
7658 * s/irix6-0.h:
7659 * s/riscos5.h:
7660 * s/mach-bsd4-3.h:
7661 * m/mips4.h: Remove files for obsolete systems.
7662
7663 * Makefile.in:
7664 * filelock.c:
7665 * unexmips.c:
7666 * m/hp9000s300.h:
7667 * m/iris4d.h:
7668 * s/aix3-1.h:
7669 * s/hpux.h:
7670 * s/msdos.h:
7671 * s/usg5-0.h:
7672 * s/usg5-2-2.h:
7673 * s/usg5-2.h:
7674 * s/usg5-3.h: Remove references to obsolete variables.
7675
7676 * s/irix5-0.h: Remove, move all the contents ...
7677 * s/irix6-5.h: ... here. Simplify.
7678 * config.in: Regenerate.
7679
7680 2008-02-24 Jason Rumney <jasonr@gnu.org>
7681
7682 * w32term.c (x_draw_glyph_string_background): Clear the background
7683 manually when cleartype is in use.
7684 (x_draw_glyph_string_foreground): Draw text transparently when
7685 cleartype is in use.
7686
7687 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
7688 a font into it unless we have to.
7689
7690 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7691
7692 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
7693 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
7694
7695 2008-02-18 Jason Rumney <jasonr@gnu.org>
7696
7697 * w32fns.c (Fw32_shell_execute): Encode parameters.
7698
7699 2008-02-09 Eli Zaretskii <eliz@gnu.org>
7700
7701 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
7702
7703 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
7704
7705 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
7706
7707 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
7708
7709 * xterm.c (x_set_offset): Don't change the gravity if
7710 CHANGE_GRAVITY is -1.
7711
7712 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
7713
7714 * fileio.c (auto_save_error_occurred): New var.
7715 (auto_save_error): Set it.
7716 (Fdo_auto_save): Don't overwrite the error message if an auto-save
7717 error occurred.
7718
7719 2008-02-23 Eli Zaretskii <eliz@gnu.org>
7720
7721 * w32.c (globals_of_w32): Add initializations for
7722 g_b_init_get_sid_sub_authority and
7723 g_b_init_get_sid_sub_authority_count.
7724
7725 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
7726
7727 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
7728 (font_parse_xlfd): Use them for sanity check.
7729 (Finternal_set_font_style_table): Make sure the table is bijective.
7730
7731 Consolidate the image_cache to the terminal struct.
7732 * termhooks.h (P_): Remove redundant def.
7733 (struct terminal): New field `image_cache'.
7734 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
7735 of FRAME_X_IMAGE_CACHE.
7736 * xterm.h (struct x_display_info): Remove image_cache field.
7737 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7738 * w32term.h (struct w32_display_info): Remove image_cache field.
7739 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7740 * macterm.h (struct mac_display_info): Remove image_cache field.
7741 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7742 * xterm.c (x_term_init):
7743 * w32term.c (w32_term_init):
7744 * macterm.c (mac_term_init): Set the image_cache in the terminal.
7745 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
7746 Remove declarations.
7747 (clear_image_caches, mark_image_cache): New declarations.
7748 * xfaces.c (clear_face_cache):
7749 * xdisp.c (redisplay_internal): Use clear_image_caches.
7750 * image.c (clear_image_cache): Don't check that a frame is on
7751 a window-system before checking if it shares the same cache.
7752 (clear_image_caches): New function.
7753 (Fclear_image_cache): Use it.
7754 (mark_image): Move from allo.c.
7755 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
7756 * alloc.c (mark_image, mark_image_cache): Move to image.c.
7757 (mark_object): Don't call mark_image_cache for frames.
7758 (mark_terminals): Call mark_image_cache.
7759
7760 * lisp.h (Fdelete_terminal): Declare.
7761
7762 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
7763 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
7764 wrong_type_argument.
7765
7766 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
7767
7768 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
7769 malayalam.el, and tamil.el. Add sinhala.el.
7770
7771 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
7772
7773 * xterm.c (x_connection_closed): Consolidate identical tests.
7774 (x_delete_terminal): Don't crash if called via x_connection_closed.
7775
7776 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
7777
7778 * xdisp.c (decode_mode_spec): New arg string.
7779 (display_mode_element): Adjust for the above change.
7780
7781 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7782
7783 * callint.c (Fcall_interactively): Use AREF.
7784
7785 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
7786
7787 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
7788
7789 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
7790
7791 * xfns.c (Fx_show_tip): Set string to " " if empty.
7792
7793 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
7794
7795 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
7796 with Qt.
7797
7798 2008-02-17 Kenichi Handa <handa@m17n.org>
7799
7800 * ftfont.c (ftfont_shape): Return Lispy number.
7801
7802 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
7803 for GCs.
7804 (Finternal_set_font_selection_order): Call font_update_sort_order
7805 only when enable_font_backend is set.
7806 (realize_x_face): Set face->font_info to that of default face only
7807 when enable_font_backend is set.
7808
7809 * xdisp.c (handle_composition_prop): Set it->c to the fist
7810 character of the composed region.
7811 (fill_composite_glyph_string): Set base_face->font_info to
7812 s->font_info. Get a face for ascii from base_face->ascii_face.
7813 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
7814 with a face already decided.
7815 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
7816 non-negative.
7817 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
7818 call font_prepare_composition unconditionally.
7819
7820 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
7821
7822 * xterm.h (struct x_display_info): New member font.
7823
7824 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
7825 (x_set_mouse_face_gc, x_new_font): Likewise.
7826 (x_term_init): Setup display_info->font.
7827 (x_delete_terminal): Free display_info->font.
7828
7829 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
7830
7831 * ftxfont.c (ftxfont_default_fid): Delete it.
7832 (ftxfont_open): Set xfont->fid to 0.
7833 (ftxfont_end_for_frame): Clear data specific to the frame and the
7834 font-driver.
7835
7836 * xftfont.c (xftfont_default_fid): Delete it.
7837 (xftfont_open): Set xfont->fid to 0.
7838
7839 * fontset.c (FONTSET_OBJLIST): New macro.
7840 (fontset_find_font): Update font-object list of the fontset.
7841 (free_realized_fontset): New function.
7842 (free_face_fontset): Call free_realized_fontset.
7843 (Ffont_info): Call font_close_object only when enable_font_backend
7844 is set.
7845
7846 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
7847 [HAVE_NTGUI]: Include w32term.h.
7848 [MAC_OS]: Include macterm.ch.
7849 (font_otf_ValueRecord): Use make_number.
7850 (font_finish_cache): Fix handling of reference count.
7851 (font_clear_cache): Update num_fonts.
7852 (font_open_entity): Update smallest_char_width and
7853 smallest_font_height of the frame.
7854 (font_close_object): Update num_fonts.
7855 (Fclear_font_cache): Fix finding the target cache data.
7856
7857 2008-02-16 Glenn Morris <rgm@gnu.org>
7858
7859 * fontset.c (Finternal_char_font): Fix compilation warning.
7860
7861 2008-02-16 Eli Zaretskii <eliz@gnu.org>
7862
7863 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
7864 instead of char arrays. Enlarge the size of array passed to
7865 get_token_information.
7866
7867 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
7868 warnings.
7869
7870 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
7871
7872 * .gdbinit: Don't set `args', it breaks gdb --args.
7873
7874 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
7875
7876 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
7877 within a narrowed buffer.
7878
7879 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
7880
7881 * coding.c (decode_coding_object, encode_coding_object):
7882 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
7883
7884 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
7885
7886 * coding.c (coding_set_destination): Use BEG_BYTE rather than
7887 hardcoding 1.
7888 (detect_coding_system):
7889 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
7890 (string_char_to_byte, string_byte_to_char, insert_from_gap):
7891 * insdel.c (insert_from_gap):
7892 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
7893 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
7894 (string_to_multibyte):
7895 * character.c (chars_in_text, multibyte_chars_in_text):
7896 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
7897
7898 * character.h (FETCH_STRING_CHAR_ADVANCE)
7899 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
7900 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
7901 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
7902
7903 * casefiddle.c (casify_region): Only call after-change and composition
7904 functions on the part of the region that was changed.
7905
7906 * keyboard.c (read_avail_input):
7907 * frame.c (Fdelete_frame): Call Fdelete_terminal.
7908
7909 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7910
7911 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
7912 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
7913
7914 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
7915
7916 * w32menu.c (push_submenu_start, push_submenu_end)
7917 (push_left_right_boundary, push_menu_pane, push_menu_item):
7918 * keyboard.c (read_key_sequence): Don't pass args with side effects
7919 to AREF, it fails when compiling with -DENABLE_CHECKING.
7920
7921 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
7922
7923 * Makefile.in (${lispsource}international/charprop.el):
7924 Delete this target.
7925
7926 * search.c (boyer_moore): Fix incorrect synching of the trunk and
7927 emacs-unicode-2.
7928
7929 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7930
7931 * terminal.c (Fdelete_terminal): Clean up the `force' path.
7932
7933 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7934
7935 * frame.c (Qnoelisp): New symbol.
7936 (syms_of_frame): Initialize it.
7937 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
7938 harmless Elisp code, from a strong `force' from x_connection_closed.
7939 * frame.h (Qnoelisp): Declare.
7940 * xterm.c (x_connection_closed): Pass `noelisp'.
7941
7942 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
7943 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
7944 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
7945 rather than `int' for the type of `type'.
7946
7947 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
7948
7949 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
7950
7951 * Makefile.in (GNUC): Remove support for gcc-1.x.
7952
7953 2008-02-10 Richard Stallman <rms@gnu.org>
7954
7955 * lisp.h (ASET): Use AREF, not ASLOT.
7956
7957 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7958
7959 * lisp.h (ASET): Check bounds.
7960
7961 2008-02-10 Glenn Morris <rgm@gnu.org>
7962
7963 * buffer.c (mode-name): Doc fix.
7964
7965 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7966
7967 * Makefile.in:
7968 * emacs.c:
7969 * gmalloc.c:
7970 * keyboard.c:
7971 * lisp.h:
7972 * m/ibm370aix.h:
7973 * process.c:
7974 * regex.c:
7975 * s/hpux.h:
7976 * sysdep.c:
7977 * sysselect.h:
7978 * systty.h:
7979 * unexec.c:
7980 * w32term.c:
7981 * xsmfns.c:
7982 * xterm.c: Remove code that deals with obsolete variables.
7983
7984 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
7985
7986 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
7987 nothing else needs it anymore.
7988
7989 2008-02-09 Eli Zaretskii <eliz@gnu.org>
7990
7991 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
7992 instead of unibyte_char_to_multibyte.
7993
7994 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7995
7996 * s/gnu-linux.h: Remove commented out code.
7997
7998 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
7999
8000 * Makefile.in: Update what RMS says about using autoconf.
8001 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
8002 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
8003 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
8004 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
8005
8006 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
8007
8008 * keymap.c (Fkey_description): Move side effect outside of macro call.
8009
8010 * xfaces.c (Finternal_make_lisp_face):
8011 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
8012
8013 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
8014 (syms_of_fontset): Use ASET.
8015
8016 * fns.c (concat): Move side effect outside of macro call.
8017 (hash_clear): Use ASET.
8018
8019 2008-02-08 Richard Stallman <rms@gnu.org>
8020
8021 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
8022 If FORCE, and frame has a surrogate minibuffer for another frame,
8023 delete the other frame first.
8024
8025 2008-02-07 Timo Savola <timo.savola@iki.fi>
8026
8027 * xterm.c (x_detect_focus_change): Handle embed client message.
8028 (handle_one_xevent): Ditto.
8029 (handle_one_xevent): If embedded and we get a button press/release,
8030 request focus.
8031 (xembed_set_info, xembed_send_message): New functions.
8032 (x_make_frame_visible): Call xembed_set_info if embedded.
8033 (x_make_frame_invisible): Call xembed_set_info if embedded.
8034 (x_term_init): Initialize Xatom_XEMBED.
8035 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
8036 (x_iconify_frame): Ditto.
8037
8038 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
8039 (enum xembed_info, enum xembed_message, enum xembed_focus)
8040 (enum xembed_modifier, enum xembed_accelerator): New.
8041 (xembed_set_info, xembed_send_message): Declare.
8042 (FRAME_X_EMBEDDED_P): New.
8043
8044 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
8045 gtk_plug_new.
8046
8047 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
8048 window ID of a frame.
8049 (x_window): Reparent frame if embedded.
8050 (Fx_create_frame): Don't set border width if embedded.
8051
8052 * emacs.c (USAGE3): Add --parent-id.
8053 (standard_args): Ditto.
8054
8055 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
8056
8057 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
8058
8059 2008-02-07 Jim Meyering <meyering@redhat.com>
8060
8061 Use "do...while (0)", not "if (1)...else" in macro definitions.
8062 The latter provokes a warning from gcc about the empty else, when
8063 followed by ";". Also, without that trailing semicolon, it would
8064 silently swallow up any following statement.
8065 * syntax.h (SETUP_SYNTAX_TABLE)
8066 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
8067 * buffer.h (DECODE_POSITION): Likewise.
8068 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
8069 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
8070 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
8071 (FETCH_CHAR_ADVANCE): Likewise.
8072 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
8073
8074 2008-02-07 Jim Meyering <meyering@redhat.com>
8075
8076 * lread.c [lint]: Don't include <sys/inode.h>.
8077
8078 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
8079
8080 * xselect.c (x_handle_dnd_message):
8081 * xmenu.c (digest_single_submenu, xmenu_show):
8082 * xdisp.c (with_echo_area_buffer_unwind_data)
8083 (format_mode_line_unwind_data, unwind_format_mode_line)
8084 (display_menu_bar):
8085 * eval.c (Ffetch_bytecode):
8086 * doc.c (store_function_docstring):
8087 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
8088 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
8089 * buffer.c (add_overlay_mod_hooklist): Use ASET.
8090
8091 2008-02-07 Kenichi Handa <handa@m17n.org>
8092
8093 * ftxfont.c (ftxfont_open): Don't set
8094 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
8095
8096 * ftfont.c (ftfont_open): Fix previous change.
8097
8098 2008-02-06 Jason Rumney <jasonr@gnu.org>
8099
8100 * w32font.c (w32font_text_extents): Fill in lbearing metric.
8101 Use cached metrics for ASCII characters.
8102 (w32font_open_internal): Don't set font's owning_frame.
8103 Cache metrics for ASCII characters.
8104
8105 * w32font.h (struct w32font_info): Add ascii_metrics.
8106 Remove owning_frame.
8107
8108 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
8109
8110 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
8111 to negative value.
8112
8113 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
8114
8115 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
8116
8117 * charset.c (syms_of_charset): Set QCtest and Qeq.
8118
8119 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
8120
8121 * process.c (Fstart_process):
8122 * callproc.c (Fcall_process): Handle the case where
8123 Funhandled_file_name_directory returns nil.
8124
8125 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
8126 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
8127 * font.c (check_gstring): Use them and AREF to access the vector before
8128 we know it's really a gstring.
8129 (Ffont_shape_text): Fix typo.
8130 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
8131
8132 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
8133 Declare.
8134
8135 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
8136
8137 2008-02-05 Jason Rumney <jasonr@gnu.org>
8138
8139 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
8140 Set smallest_font_height and smallest_char_width in display info.
8141
8142 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
8143
8144 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
8145
8146 2008-02-05 Miles Bader <miles@gnu.org>
8147
8148 * xfaces.c (get_lface_attributes, merge_named_face)
8149 (lookup_named_face, lookup_derived_face, realize_named_face):
8150 Revert 2008-02-01 change by cyd@stupidchicken.com.
8151
8152 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
8153
8154 * fontset.c (Ffontset_info): Handle the case of inhibitting the
8155 fallback fonts.
8156 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
8157
8158 2008-02-04 Jason Rumney <jasonr@gnu.org>
8159
8160 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
8161 set full_name.
8162 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
8163
8164 2008-02-03 Jason Rumney <jasonr@gnu.org>
8165
8166 * makefile.w32-in (OBJ1): Include font.o here.
8167 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
8168
8169 2008-02-02 Jason Rumney <jasonr@gnu.org>
8170
8171 * makefile.w32-in (temacs): Bump EMHEAP to 21.
8172
8173 2008-02-01 Jason Rumney <jasonr@gnu.org>
8174
8175 * s/cygwin.h: Define VIRT_ADDR_VARIES.
8176
8177 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
8178
8179 2008-02-01 Andreas Schwab <schwab@suse.de>
8180
8181 * Makefile.in (shortlisp, lisp): Update for rename of
8182 ../lisp/language/myanmar.el.
8183
8184 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
8185
8186 * xfaces.c (get_lface_attributes): Delete function.
8187 (merge_named_face, lookup_named_face, lookup_derived_face)
8188 (realize_named_face): Call lface_from_face_name directly, and use
8189 the fact that merge_face_vectors does not alter its FROM argument.
8190
8191 2008-02-01 Jason Rumney <jasonr@gnu.org>
8192
8193 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
8194 input in the default locale. Handle non-Unicode multibyte input.
8195
8196 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8197
8198 * fontset.c (reorder_font_vector): Exclude nil elements from the
8199 font group. Don't try multiple fonts.
8200 (fontset_font): Adjust for the above change.
8201 (Finternal_char_font): Return nil if the found font doesn't
8202 contain the character ch.
8203
8204 * Makefile.in (lisp, shortlisp): Add cham.el.
8205
8206 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8207
8208 * font.h (FONTP): Make it return 1 also for a font-object.
8209
8210 * .gdbinit (xfontset): New function.
8211
8212 * font.c (font_find_for_lface): Check if the character C is
8213 supported or not only for the first font.
8214
8215 * fontset.c (reorder_font_vector): Fix typo.
8216 (fontset_find_font): Don't add a font-spec specifying a script.
8217 Use 0 (not Qt) for the indication of empty font-group. Change the
8218 format of RFONT-DEF. Return Qt if no font in the font-group
8219 support the character.
8220 (fontset_font): Adjust for the above change. If no font was
8221 found the character, remember that.
8222 (face_for_char): Adjust for the change of RFONT-DEF.
8223 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
8224 no font for the target.
8225 (Finternal_char_font): Adjust for the change of RFONT-DEF.
8226
8227 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8228
8229 * font.c (font_load_for_face): Handle the case that the font in
8230 face->lface is a string.
8231
8232 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8233
8234 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
8235
8236 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8237
8238 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
8239 Fix previous change. If the frame is not on a window system,
8240 signal an error.
8241
8242 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8243
8244 * coding.c (decode_coding_object, encode_coding_object): Adjust
8245 marker positions after conversion.
8246
8247 * lisp.h (struct Lisp_Marker): New member need_adjustment.
8248
8249 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8250
8251 * font.c (font_find_for_lface): Fix the handling of the return
8252 value of font_has_char.
8253 (Ffont_shape_text): Fix previous change.
8254
8255 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
8256 (fontset_ref_and_range): Delete it.
8257 (fontset_find_font): Call char_table_ref_and_range instead of
8258 FONTSET_REF_AND_RANGE.
8259 (make_fontset): Don't setup font groups of Latin here.
8260 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
8261 (new_fontset_from_font): Make the specified font the default for
8262 all Latin characters.
8263
8264 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8265
8266 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
8267 is on a window system before accessing the fontset of the frame.
8268
8269 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8270
8271 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
8272
8273 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
8274 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
8275
8276 * font.c (Ffont_shape_text): If the font driver doesn't have a
8277 shaper function, make zero-width glyphs to have at least one-pixel
8278 width. Fix setting of `to' field of glyphs.
8279
8280 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8281
8282 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
8283 glyphs.
8284
8285 * font.h (struct font_driver): Improve docstring of member `shape'.
8286
8287 2008-02-01 Kenichi Handa <handa@m17n.org>
8288
8289 * composite.c (syms_of_composite): Fix docstring of
8290 auto-composition-function.
8291
8292 * font.h (LGLYPH_SIZE): New macro.
8293
8294 * font.c (Ffont_fill_gstring): Stop filling when a character not
8295 supported by the font is found.
8296 (Ffont_shape_text): When a shape callback function returns nil,
8297 try at most two more times with larger gstring.
8298 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
8299
8300 * xdisp.c (handle_auto_composed_prop): Change the argument to
8301 auto-composition-function.
8302
8303 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
8304 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
8305 Lispy glyph and store it in the lgstring.
8306
8307 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
8308
8309 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
8310
8311 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8312
8313 * font.c (Ffont_shape_text): Avoid unnecessary composition.
8314
8315 * fontset.c (Vfont_encoding_charset_alist): New variable.
8316 (syms_of_fontset): DEFVAR it.
8317 (reorder_font_vector, fontset_find_font): Optimize for the case of
8318 no need of reordering.
8319 (face_for_char): Map the charset property by
8320 Vfont_encoding_charset_alist.
8321
8322 2008-02-01 Jason Rumney <jasonr@gnu.org>
8323
8324 * w32font.c (logfonts_match): Don't check adstyle here.
8325 (font_matches_spec): Check here against physical font instead.
8326 (add_font_entity_to_list): Avoid some substitutions.
8327
8328 * font.c (font_parse_fcname): Default weight and slant to normal.
8329 (font_score): Prefer normal fonts if weight or slant unspecified.
8330 (font_score) [WINDOWSNT]: Scale weight difference down to closer
8331 match freetype scores.
8332
8333 2008-02-01 Jason Rumney <jasonr@gnu.org>
8334
8335 * w32font.c (w32font_text_extents): Don't use the frame stored in the
8336 font, as it may have been deleted.
8337 (w32_enumfont_pattern_entity): Map generic family to adstyle using
8338 most common hyphenless variation.
8339 (logfonts_match): Check generic family.
8340 (font_matches_spec): Don't check generic family here.
8341 (fill_in_logfont): Set generic family based on adstyle.
8342
8343 * w32font.h (w32font_get_cache): Update declaration.
8344
8345 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8346
8347 * ftfont.c (ftfont_get_cache): Adjust the argument type.
8348
8349 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
8350 If none of the new drivers are available, call font_update_drivers
8351 with the old drivers.
8352
8353 * w32font.c (w32font_get_cache): Adjust the argument type.
8354
8355 * xfont.c (xfont_get_cache): Adjust the argument type.
8356
8357 * font.h (struct font_driver): Change argument type of get_cache.
8358
8359 * xftfont.c (xftfont_start_for_frame): Delete prototype.
8360
8361 * font.c (Ffont_get): Fix arguments to Fassoc.
8362 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
8363 (font_clear_cache): New function.
8364 (font_list_entities, font_matching_entity): Use font_get_cache.
8365 (font_update_drivers): Call font_clear_cache when finishing a driver.
8366
8367 * fontset.c (fontset_find_font): Fix previous change.
8368
8369 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8370
8371 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
8372 dpyinfo->font_table.
8373 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
8374 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
8375
8376 * font.c (font_at): Handle the case that the arg C is negative.
8377 Handle the unibyte case.
8378 (Ffont_at): Call font_at with the arg C -1.
8379
8380 * xdisp.c (handle_auto_composed_prop): Don't get a character at
8381 the position here, and call font_at with the arg C -1.
8382 Don't check the range of the existing composition at the point.
8383
8384 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8385
8386 * fontset.c (fontset_add): New args charset_id and family.
8387 Change caller.
8388 (load_font_get_repertory, fontset_find_font): Assume that
8389 font_spec is always a font-spec object.
8390 (Fset_fontset_font): Always store a font-spec object in a fontset.
8391
8392 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
8393 instead of get_property_and_range.
8394
8395 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8396
8397 * xftfont.c (struct xftfont_info): Delete the member ft_face.
8398 (xftfont_open): Don't keep locking face.
8399 (xftfont_close): Don't unlock face.
8400 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
8401
8402 * fontset.c (fontset_find_font): Don't prefer a font of
8403 supplementary charset.
8404
8405 2008-02-01 Kenichi Handa <handa@m17n.org>
8406
8407 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
8408 script, langsys_tag to langsys, new member script.
8409 (OTF_TAG_STR): Terminate by '\0'.
8410 (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the
8411 listing to the script specified in that property. Fix arg to
8412 OTF_check_features.
8413
8414 2008-02-01 Jason Rumney <jasonr@gnu.org>
8415
8416 * w32font.h: New file.
8417
8418 * w32font.c: Include it.
8419 (struct w32font_info): Add owning_frame field. Move to w32font.h.
8420 (w32font_open): Set owning_frame.
8421 (w32font_text_extents): Use owning_frame.
8422 (struct font_callback_data): Add opentype_only field.
8423 (add_font_entity_to_list): Use it to filter fonts.
8424 Don't check against full name.
8425 (w32font_list_internal): New function.
8426 (w32font_list): Use it.
8427 (w32font_match_internal): New function.
8428 (w32font_match): Use it.
8429 (w32font_open_internal): New function.
8430 (w32font_open): Use it.
8431 (w32font_get_cache, w32font_close, w32font_has_char)
8432 (w32font_encode_char, w32font_text_extents, w32font_draw):
8433 Make non-static.
8434
8435 * makefile.w32-in (w32font.o): Depend on w32font.h.
8436
8437 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8438
8439 * charset.c (Fdefine_charset_internal): Record a supplementary
8440 charset at the tail of Vcharset_order_list.
8441
8442 * font.c (Ffont_shape_text): Fix the return value.
8443
8444 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
8445
8446 * xdisp.c (handle_auto_composed_prop): Fix previous change.
8447
8448 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8449
8450 * ftfont.c (struct OpenTypeSpec): New struct.
8451 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
8452 (ftfont_get_open_type_spec): New function.
8453 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
8454
8455 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
8456
8457 2008-02-01 Jason Rumney <jasonr@gnu.org>
8458
8459 * w32font.c (add_font_entity_to_list): Compare only the beginning
8460 of full name.
8461
8462 2008-02-01 Kenichi Handa <handa@m17n.org>
8463
8464 * xdisp.c (handle_auto_composed_prop): Simplify the code.
8465 Never return HANDLED_RECOMPUTE_PROPS.
8466
8467 2008-02-01 Kenichi Handa <handa@m17n.org>
8468
8469 * font.c (font_gstring_produce): Delete it.
8470
8471 * composite.h (COMPOSITION_METHOD):
8472 Handle COMPOSITION_WITH_GLYPH_STRING.
8473
8474 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8475
8476 * xfont.c (Qx): Delete.
8477 (syms_of_xfont): Don't initialize Qx.
8478
8479 * composite.h (enum composition_method):
8480 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
8481
8482 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8483
8484 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
8485 (choose_face_font): Accept new form of font-spec.
8486
8487 * frame.h (font_driver_list): Declare it unconditionally.
8488 (struct frame): Define members font_driver_list and font_data_list
8489 unconditionally.
8490
8491 * fontset.c: Include "font.h" unconditionally.
8492 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
8493 (Fset_fontset_font): Accept a font-spec object.
8494
8495 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
8496 PIXEL_SIZE part a wild card.
8497
8498 * dispextern.h (struct glyph_string): Define members clip and
8499 num_clips unconditionally.
8500 (struct face): Define members font_info and extra unconditionally.
8501
8502 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
8503 ftfont_info only when HAVE_LIBOTF is defined.
8504
8505 2008-02-01 Andreas Schwab <schwab@suse.de>
8506
8507 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
8508 and end.
8509
8510 2008-02-01 Jason Rumney <jasonr@gnu.org>
8511
8512 * w32font.c (w32font_driver): Add new fields.
8513
8514 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8515
8516 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
8517 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
8518 (LIBES): Add @M17N_FLT_CFLAGS@.
8519
8520 * composite.c (compose_text): Don't treat the new style
8521 composition specially.
8522
8523 * emacs.c (main): Call syms_of_font unconditionally.
8524
8525 * font.h (FONT_ENTITY_NOT_LOADABLE)
8526 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
8527 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
8528 (struct font_driver): New member shape.
8529 (font_registry_charsets): Extern it.
8530 (font_find_for_lface, font_prepare_composition): Adjust prototype.
8531 (font_otf_capability, font_drive_otf): Delete their externs.
8532
8533 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
8534 (font_charset_alist, font_registry_charsets): Move from xfont.c
8535 and rename.
8536 (font_prop_validate_otf): New function.
8537 (font_property_table): Register it for QCotf.
8538 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
8539 (font_drive_otf): Delete.
8540 (font_prepare_composition): New arg F. Adjust for the change of
8541 lispy gstring.
8542 (font_find_for_lface): New arg C.
8543 (font_load_for_face): Adjust for the change of font_find_for_lface.
8544 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
8545 lispy gstring.
8546 (Ffont_shape_text): New function.
8547 (Fopen_font): If the font size is not given, use 12-pixel.
8548 (Ffont_at): New arg STRING.
8549 (syms_of_font): Initalize font_charset_alist.
8550 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
8551 conditionally.
8552
8553 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
8554 fonts of the same font-spec. Change the format of RFONT-DEF.
8555 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
8556 Adjust for the change of RFONT-DEF.
8557 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
8558
8559 * ftfont.h: New file.
8560
8561 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
8562 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8563 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8564 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
8565 font_otf_capability and font_drive_otf, set ftfont_shape.
8566 (ftfont_list): Adjust for the change of :otf property value.
8567 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
8568 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
8569 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
8570 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8571 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
8572 (otf_gstring, gstring, m17n_flt_initialized): New variables.
8573
8574 * w32term.c (x_draw_composite_glyph_string_foreground):
8575 Adjust for the change of lispy gstring.
8576
8577 * xdisp.c (handle_composition_prop): Adjust for the change of
8578 lispy gstring. Call a function for auto-composition with the
8579 third arg it->window.
8580 (fill_composite_glyph_string): Adjust for the change of lispy string.
8581 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
8582
8583 * xfaces.c (set_font_frame_param): Adjust for the change of
8584 font_find_for_lface.
8585
8586 * xfont.c (x_font_charset_alist): Move to font.c and rename.
8587 (xfont_registry_charsets): Likewise. Change caller.
8588 (syms_of_xfont): Don't handle x_font_charset_alist.
8589
8590 * xftfont.c: Include "ftfont.h".
8591 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8592 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8593 (xftfont_close) [HAVE_LIBOTF]: Close otf.
8594 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8595 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
8596 Set xftfont_driver.shape to xftfont_shape.
8597
8598 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8599 the change of lispy gstring.
8600
8601 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8602
8603 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
8604
8605 2008-02-01 Jason Rumney <jasonr@gnu.org>
8606
8607 * w32font.c (w32font_draw): Fill background manually.
8608
8609 2008-02-01 Jason Rumney <jasonr@gnu.org>
8610
8611 * font.c (Qfontp): Remove unused symbol.
8612 (QCantialias): New symbol.
8613 (syms_of_font): Define it.
8614 (font_property_table): Set a validator for QCantialias.
8615
8616 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
8617 Define if not already.
8618 (QCfamily): Share with xfaces.c.
8619 (Qstandard, Qsubpixel, Qnatural): New symbols.
8620 (syms_of_w32font): Define them. Don't define QCfamily here.
8621 (w32_antialias_type, lispy_antialias_type): New functions.
8622 (w32_enumfont_pattern_entity): New arg requested_font.
8623 Set antialias parameter if non-default was requested.
8624 (fill_in_logfont): Fill in lfQuality if :antialias specified.
8625
8626 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8627
8628 * lread.c (read1): Undo the previous change.
8629
8630 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
8631
8632 * frame.c (Fdelete_frame): Call font_update_drivers only when
8633 USE_FONT_BACKEND is defined.
8634
8635 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8636
8637 * font.h (struct font_bitmap): New member bits_per_pixel.
8638 (struct font_driver): New members start_for_frame and end_for_frame.
8639 (struct font_data_list): New struct.
8640 (font_put_frame_data, font_get_frame_data): Extern them.
8641
8642 * frame.h (struct frame): New member font_data_list.
8643
8644 * font.c (font_update_drivers): Call driver->start_for_frame and
8645 driver->end_for_frame at proper timings.
8646 (font_put_frame_data, font_get_frame_data): New functions.
8647 (Ffont_spec): Add usage in the docstring.
8648
8649 * frame.c (make_frame): Initialize f->font_data_list to NULL.
8650 (Fdelete_frame): Call font_update_drivers.
8651
8652 * xftfont.c (struct xftface_info): Delete the member xft_draw.
8653 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
8654 (xftfont_get_xft_draw): New function.
8655 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
8656 (xftfont_end_for_frame): New function.
8657 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
8658
8659 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
8660 Change argument. Cache GCs in the per-frame data.
8661 (struct ftxfont_frame_data): New struct.
8662 (ftxfont_draw_bitmap): New arg gc_fore and flush.
8663 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
8664 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
8665 (ftxfont_end_for_frame): New function.
8666 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
8667
8668 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
8669
8670 2008-02-01 Kenichi Handa <handa@m17n.org>
8671
8672 * xselect.c (Vselection_coding_system)
8673 (Vnext_selection_coding_system): Delete them.
8674 (syms_of_xselect): Don't declare selection-coding-system and
8675 next-selection-coding-system. They are declared in select.el.
8676
8677 2008-02-01 Jason Rumney <jasonr@gnu.org>
8678
8679 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
8680
8681 * w32fns.c: Include imm.h.
8682 (get_composition_string_fn, get_ime_context_fn): New optional
8683 system functions.
8684 (globals_of_w32fns): Load them from imm32.dll.
8685 (ignore_ime_char): New flag.
8686 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
8687 WM_IME_ENDCOMPOSITION messages.
8688
8689 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
8690 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
8691
8692 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8693
8694 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
8695 (READCHAR_REPORT_MULTIBYTE): New macro.
8696 (readchar): New 2nd arg MULTIBYTE.
8697 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
8698 Make symbol's name multibyte according to the multibyteness of the
8699 source.
8700
8701 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8702
8703 * xfaces.c (face_for_overlay_string): Call lookup_face with
8704 correct arguments (fix of synching with the trunk).
8705
8706 2008-02-01 Kenichi Handa <handa@m17n.org>
8707
8708 * font.c (font_prop_validate_symbol, font_prop_validate_style)
8709 (font_prop_validate_non_neg, font_prop_validate_spacing):
8710 Delete argument prop_index.
8711 (font_property_table): Change arguments to validater. Change Callers.
8712 (font_lispy_object): Delete.
8713 (font_at): Use font_find_object instead fo font_lispy_object.
8714
8715 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8716
8717 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
8718 and file names.
8719
8720 2008-02-01 Jason Rumney <jasonr@gnu.org>
8721
8722 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
8723 (font_matches_spec): Remove debug output.
8724 (add_font_entity_to_list): Avoid using substituted fonts.
8725
8726 2008-02-01 Jason Rumney <jasonr@gnu.org>
8727
8728 * doc.c (Fsnarf_documentation):
8729 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
8730
8731 2008-02-01 Miles Bader <miles@gnu.org>
8732
8733 * dispextern.h (struct glyph_row): Only define "clip" field if
8734 HAVE_WINDOW_SYSTEM is defined.
8735
8736 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8737
8738 Fix up multi-tty merge.
8739
8740 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
8741 and indentation.
8742
8743 * xfaces.c (free_realized_face, clear_face_gcs):
8744 Include font_done_for_face in the input_blocked section, just in case.
8745
8746 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
8747 (get_char_face_and_encoding): Undo last change and remove the *other*
8748 duplicate definition (i.e. keep the one that's better scoped and that
8749 includes code for the font-backend).
8750
8751 * terminal.c (create_terminal): Default keyboard_coding to
8752 `no-conversion' and terminal_coding to `undecided'.
8753
8754 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
8755
8756 * fontset.c (free_realized_fontsets): Check that the table entry does
8757 contain a fontset before trying to compare it to `base'.
8758
8759 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
8760 syms_of_charset, and syms_of_coding earlier because init_window_once
8761 now needs Vcoding_system_hash_table to be setup.
8762
8763 * coding.h (default_buffer_file_coding): Remove.
8764
8765 * coding.c (default_buffer_file_coding): Remove.
8766 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
8767 than ->symbol, and use the terminal-local coding system.
8768 (syms_of_coding): Don't setup the coding-systems that are not
8769 terminal-local.
8770 (Fdefine_coding_system_internal): Use XCAR/XCDR.
8771
8772 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
8773 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
8774
8775 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
8776 in chartab.c and were re-added here by mistake.
8777 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
8778
8779 * doc.c (Fsnarf_documentation):
8780 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
8781 src to etc.
8782
8783 * ChangeLog.10: Add mistakenly removed entry.
8784
8785 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
8786
8787 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
8788
8789 2008-02-01 Miles Bader <miles@gnu.org>
8790
8791 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
8792 Add extra args to FACE_FOR_CHAR.
8793
8794 2008-02-01 Kenichi Handa <handa@m17n.org>
8795
8796 * keymap.c (where_is_internal_1): If key is a cons, store the copy
8797 in sequence.
8798
8799 * chartab.c (map_sub_char_table, map_char_table): If the range
8800 contains just one character, call the function with that character
8801 even if the depth is not 3.
8802
8803 2008-02-01 Jason Rumney <jasonr@gnu.org>
8804
8805 * w32font.c (w32font_text_extents): Calculate metrics for the
8806 whole string.
8807
8808 2008-02-01 Jason Rumney <jasonr@gnu.org>
8809
8810 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
8811
8812 2008-02-01 Jason Rumney <jasonr@gnu.org>
8813
8814 * w32term.c (x_set_glyph_string_clipping): Use
8815 get_glyph_string_clip_rects.
8816 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8817 Adjust for the change of struct glyph_string.
8818
8819 * w32font.c (w32font_draw): Do clipping here.
8820
8821 2008-02-01 Kenichi Handa <handa@m17n.org>
8822
8823 * xftfont.c (xftfont_draw): Adjust for the change of struct
8824 glyph_string.
8825
8826 * xterm.c (x_set_glyph_string_clipping): Use
8827 get_glyph_string_clip_rects.
8828 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8829 Adjust for the change of struct glyph_string.
8830
8831 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
8832 the resulting clip(s}.
8833 (expose_overlaps): Add arg r. Change callers. Set it to
8834 row->clip temporarily.
8835 (expose_window): Redraw rows overlapping the exposed area.
8836
8837 * dispextern.h (struct glyph_row): New member clip.
8838 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
8839 clip_height, new member clip, and num_clips.
8840
8841 2008-02-01 Kenichi Handa <handa@m17n.org>
8842
8843 * data.c (Fchar_or_string_p): Fix docstring.
8844
8845 2008-02-01 Kenichi Handa <handa@m17n.org>
8846
8847 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
8848 create a temporary XftDraw object.
8849
8850 2008-02-01 Kenichi Handa <handa@m17n.org>
8851
8852 * font.c (Ffontp): Fix docstring.
8853
8854 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
8855 strong evidence of ISO-2022.
8856
8857 2008-02-01 Kenichi Handa <handa@m17n.org>
8858
8859 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
8860 SYNTAX_ENTRY_FOLLOW_PARENT.
8861
8862 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8863
8864 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
8865 its type.
8866 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
8867 Update to the new type of weak_hash_tables and next_weak.
8868
8869 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
8870 a plain C pointer to Lisp_Hash_Table.
8871
8872 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
8873 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
8874 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
8875 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
8876 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
8877 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
8878 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
8879 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
8880 (GC_EQ): Remove since they've been identical to their non-GC_
8881 alter-egos ever since the markbit was eradicated.
8882
8883 * alloc.c:
8884 * buffer.c:
8885 * buffer.h:
8886 * data.c:
8887 * fileio.c:
8888 * filelock.c:
8889 * fns.c:
8890 * frame.h:
8891 * lisp.h:
8892 * macterm.c:
8893 * print.c:
8894 * process.c:
8895 * w32fns.c:
8896 * w32menu.c:
8897 * w32term.c:
8898 * xfns.c:
8899 * xmenu.c:
8900 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
8901
8902 2008-02-01 Kenichi Handa <handa@m17n.org>
8903
8904 * chartab.c (map_sub_char_table): Make it work for the top-level
8905 char-table. Fix handling of parent char-table.
8906 (map_char_table): Adjust for the above change.
8907
8908 2008-02-01 Jason Rumney <jasonr@gnu.org>
8909
8910 * w32font.c (Qgdi): Rename from Qw32.
8911
8912 2008-02-01 Jason Rumney <jasonr@gnu.org>
8913
8914 * w32bdf.c (get_quoted_string): Make function static.
8915
8916 2008-02-01 Kenichi Handa <handa@m17n.org>
8917
8918 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
8919 bigger ascent and descent than those of the font, use them as
8920 font's ascent and descent.
8921
8922 2008-02-01 Kenichi Handa <handa@m17n.org>
8923
8924 * Makefile.in (${lispsource}international/charprop.el): Move this
8925 target within "#ifdef HAVE_UNIDATA" and "#endif".
8926
8927 2008-02-01 Kenichi Handa <handa@m17n.org>
8928
8929 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
8930 (shortlisp): Add ../lisp/language/tai-viet.el.
8931
8932 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
8933
8934 * Makefile.in (${lispsource}international/charprop.el): Depend on
8935 temacs${EXEEXT}.
8936
8937 2008-02-01 Jason Rumney <jasonr@gnu.org>
8938
8939 * w32font.c (w32font_close): Delete the GDI font object.
8940
8941 * w32menu.c: Include character.h.
8942
8943 * w32proc.c: Likewise.
8944
8945 * w32select.c: Likewise.
8946
8947 * makefile.w32-in (w32proc.o): Depend on character.h.
8948
8949 2008-02-01 Jason Rumney <jasonr@gnu.org>
8950
8951 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
8952
8953 * w32menu.c (syms_of_w32menu): Likewise.
8954
8955 * w32proc.c (syms_of_ntproc): Likewise.
8956
8957 * w32select.c (syms_of_w32select): Likewise.
8958
8959 * w32term.c (syms_of_w32term): Likewise.
8960
8961 2008-02-01 Jason Rumney <jasonr@gnu.org>
8962
8963 * w32font.c (w32font_draw): Delete brush after using it.
8964
8965 2008-02-01 Jason Rumney <jasonr@gnu.org>
8966
8967 * w32font.c (w32font_open): Don't set font_idx.
8968 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
8969 to font settings.
8970 (w32font_draw): Fill background explicitly.
8971
8972 2008-02-01 Jason Rumney <jasonr@gnu.org>
8973
8974 * w32term.c (w32_initialize): Don't call w32font_initialize.
8975
8976 * w32font.c (w32font_info): Remove subranges.
8977 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
8978 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
8979 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
8980 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
8981 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
8982 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
8983 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
8984 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
8985 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
8986 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
8987 New symbols.
8988 (font_callback_data): New struct.
8989 (w32font_list, w32font_match): Use it.
8990 (w32font_open): Don't populate subranges.
8991 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
8992 (w32font_encode_char): Always return unicode code-point as-is.
8993 (w32font_text_extents): Supply a transformation matrix to
8994 GetGlyphOutline. Never look up by glyph index. Avoid looping
8995 twice. Use unicode version of GetTexExtentPoint32 instead of
8996 glyph index version.
8997 (set_fonts_frame): Remove.
8998 (w32_enumfont_pattern_entity): Add frame parameter, use it to
8999 set frame parameter. Use backward compatible fake foundries.
9000 Save generic family in extra slot under QCfamily. Make width slot
9001 constant. Save QCspacing value. Save list of scripts instead of
9002 binary subranges.
9003 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
9004 (add_font_entity_to_list): Use font_callback_data struct. Filter
9005 unwanted fonts.
9006 (add_one_font_entity_to_list): Use font_callback_data struct.
9007 (w32_registry): Default to iso10646_1.
9008 (fill_in_logfont): Use dpi from extra slot. Don't bother with
9009 string font registries. Don't fill in font name if it is a generic
9010 family name, fill family instead. Use spacing, family and script
9011 extra info to fill pitch, family and charset fields.
9012 (list_all_matching_fonts): Use font_callback_data struct.
9013 (unicode_range_for_char): Remove.
9014 (font_supported_scripts): New function.
9015 (w32font_initialize): Remove.
9016 (syms_of_w32font): Update which symbols are defined.
9017
9018 2008-02-01 Jason Rumney <jasonr@gnu.org>
9019
9020 * font.c (font_pixel_size): Reverse assq_no_quit args.
9021
9022 * w32term.h (FONT_WIDTH): Report max width, not average.
9023 (FONT_MAX_WIDTH): Remove.
9024 (FONT_AVG_WIDTH): New macro.
9025
9026 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
9027 redefinition of FONT_WIDTH.
9028
9029 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
9030 (w32_cache_char_metrics): Use FONT_WIDTH.
9031
9032 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
9033
9034 2008-02-01 Jason Rumney <jasonr@gnu.org>
9035
9036 * w32font.c (w32font_open): Make lfHeight negative.
9037
9038 * w32fns.c (x_default_font_parameter): Use new style font name.
9039 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
9040
9041 2008-02-01 Jason Rumney <jasonr@gnu.org>
9042
9043 * w32font.c (QCsubranges): New symbol.
9044 (w32font_open, w32font_has_char): Get subranges from subproperty
9045 of extra.
9046 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
9047 (syms_of_w32font): Define :subranges symbol.
9048
9049 * font.c (font_put_extra): Expose externally.
9050
9051 * font.h (font_put_extra): Move declaration from font.c.
9052
9053 * font.c (Ffont_get): Use font driver to determine otf capability.
9054 (adjust_anchor): Check if driver defines anchor_point before using.
9055
9056 * w32font.c (w32font_open): Handle size, height and pixel_size better.
9057 (w32font_draw): Use options.
9058 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
9059 Fix detection of truetype fonts.
9060 (registry_to_w32_charset): Handle charsets other than iso8859-1
9061 expressed as lisp symbols.
9062 (w32_registry): Express charset as lisp symbol.
9063 (fill_in_logfont): Reverse pixel and point height logic.
9064 Don't set width here. Set quality to default.
9065
9066 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
9067 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
9068
9069 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9070 Remove redundant loop and allocation.
9071
9072 * makefile.w32-in (font.o, w32font.o): New objects.
9073 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
9074 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
9075
9076 * xdisp.c (fill_composite_glyph_string): Make the first arg to
9077 STORE_XCHARB a valid l-value.
9078
9079 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
9080 calculations for non-Truetype fonts.
9081 (x_draw_glyph_string): Sync with xterm.c.
9082 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9083 Remove redundant code.
9084 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
9085
9086 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
9087 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
9088
9089 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
9090 (x_to_w32_charset, w32_to_x_charset): Expose externally.
9091
9092 * w32font.c: New file for w32 font backend.
9093
9094 2008-02-01 Kenichi Handa <handa@m17n.org>
9095
9096 * term.c: Don't include "buffer.h" twice.
9097
9098 2008-02-01 Kenichi Handa <handa@m17n.org>
9099
9100 * character.c (Funibyte_string): New function.
9101 (syms_of_character): Defsubr it.
9102
9103 2008-02-01 Jason Rumney <jasonr@gnu.org>
9104
9105 * w32term.c [USE_FONT_BACKEND]:
9106 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
9107 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
9108 (x_draw_glyph_string, x_draw_glyph_string_foreground)
9109 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
9110 (x_free_frame_resources): Sync with xterm.c.
9111
9112 2008-02-01 Andreas Schwab <schwab@suse.de>
9113
9114 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
9115 char-table size.
9116
9117 2008-02-01 Kenichi Handa <handa@m17n.org>
9118
9119 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
9120
9121 2008-02-01 Kenichi Handa <handa@m17n.org>
9122
9123 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
9124 font_otf_gpos, add font_drive_otf.
9125
9126 * fontset.c (fontset_find_font): Pay attention to font size
9127 specified for a font.
9128 (reorder_font_vector): Check contents of font_def.
9129
9130 * font.c (struct otf_list): Delete it.
9131 (otf_list): Make it a lisp variable.
9132 (otf_open): Use lispy otf_list.
9133 (generate_otf_features): Rename from parse_gsub_gpos_spec.
9134 (check_otf_features): New function.
9135 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9136 New functions.
9137 (font_drive_otf): New function merging font_otf_gsub and
9138 font_otf_gpos.
9139 (font_open_for_lface): New arg spec. Change argument order.
9140 (font_load_for_face): Adjust for the change of font_open_for_lface.
9141 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
9142 Ffont_otf_gpos.
9143 (syms_of_font): Staticpro otf_list. Delete defsubr of
9144 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
9145
9146 * xfaces.c (set_font_frame_param): Adjust for the change of
9147 font_open_for_lface.
9148
9149 * font.h (font_open_for_lface): Adjust prototype.
9150 (struct font_driver): Delete members otf_gsub and otf_gpos, add
9151 member otf_drive.
9152 (font_otf_gsub, font_otf_gpos): Delete externs.
9153 (font_drive_otf): Extern it.
9154
9155 2008-02-01 Kenichi Handa <handa@m17n.org>
9156
9157 * font.c (font_at): If the window W is not on a window system,
9158 return Qnil.
9159
9160 * coding.c (produce_chars, encode_coding): Don't call
9161 insert_from_gap if no characters to produce.
9162
9163 2008-02-01 Kenichi Handa <handa@m17n.org>
9164
9165 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
9166 Fclear_face_cache.
9167
9168 * xfaces.c (face_for_font): Check also face->font==font->font.font.
9169
9170 2008-02-01 Miles Bader <miles@gnu.org>
9171
9172 * emacs.c (main): Change default value of `enable_font_backend' to 1.
9173 Parse "--disable-font-backend" option.
9174 (standard_args): Add "--disable-font-backend" option.
9175
9176 2008-02-01 Kenichi Handa <handa@m17n.org>
9177
9178 * fontset.c (fontset_find_font): New function.
9179 (fontset_font): Use fontset_find_font.
9180 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
9181 Register the specified font for all Latin characters.
9182 (new_fontset_from_font): Register the specified font for all Latin
9183 characters.
9184 (dump_fontset): For a realized fontset, include the base fontset
9185 name in the returned vector.
9186
9187 2008-02-01 Kenichi Handa <handa@m17n.org>
9188
9189 * character.h (CHAR_STRING): Cast C to unsigned on calling
9190 char_string.
9191
9192 * character.c (char_string): Type of arg C changed to unsigned.
9193 Signal an error if C is an invalid character code.
9194
9195 * editfns.c (general_insert_function, Fchar_to_string):
9196 Use CHARACTERP, not INTEGERP.
9197
9198 2008-02-01 Kenichi Handa <handa@m17n.org>
9199
9200 * character.h (MIN_MULTIBYTE_LEADING_CODE)
9201 (MAX_MULTIBYTE_LEADING_CODE): New macros.
9202
9203 * regex.c (analyse_first): Fix for multibyte characters in "case
9204 charset:" and "case categoryspec:".
9205
9206 2008-02-01 Andreas Schwab <schwab@suse.de>
9207
9208 * Makefile.in (LIBES): Move standard libraries to the end.
9209
9210 2008-02-01 Kenichi Handa <handa@m17n.org>
9211
9212 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
9213 nonzero, don't shrink the buffer nextb.
9214
9215 * buffer.h (struct buffer_text): New member inhibit_shrinking.
9216
9217 * coding.c (coding_alloc_by_making_gap): New arg offset.
9218 (alloc_destination): Call coding_alloc_by_making_gap with the arg
9219 offset.
9220 (decode_coding_iso_2022): Update coding->safe_charsets.
9221 (decode_coding_gap): Temporarily set
9222 current_buffer->text->inhibit_shrinking to 1.
9223
9224 2008-02-01 Kenichi Handa <handa@m17n.org>
9225
9226 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
9227 indexing into elements of s->cmp and s->char2b.
9228
9229 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
9230
9231 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
9232
9233 2008-02-01 Kenichi Handa <handa@m17n.org>
9234
9235 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
9236 target_multibyte instead of multibyte.
9237 (re_match_2_internal): Call bcmp_translate with target_multibyte.
9238 (bcmp_translate): Change the argument name from multibyte to
9239 target_multibyte.
9240
9241 2008-02-01 Kenichi Handa <handa@m17n.org>
9242
9243 These changes are to compile a regexp into a pattern that can be
9244 used both for multibyte and unibyte targets.
9245
9246 * Makefile.in (search.o): Depend on charset.h.
9247
9248 * character.c (multibyte_char_to_unibyte_safe): New function.
9249
9250 * search.c: Include "charset.h".
9251 (compile_pattern_1): Delete argument multibyte. Don't set
9252 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
9253 (compile_pattern): Don't compare cp->buf.target_multibyte.
9254 Compare cp->buf.charset_unibyte.
9255 (compile_pattern): Set cp->buf.target_multibyte.
9256
9257 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
9258
9259 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
9260
9261 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
9262 multibyte. Change callers.
9263 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
9264 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
9265 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
9266 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
9267 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
9268 (regex_compile): Make the compiled pattern usable both for
9269 multibyte and unibyte targets.
9270 (analyse_first): Make the fastmap usable both for multibyte and
9271 unibyte targets.
9272 (TRANSLATE_VIA_MULTIBYTE): Delete.
9273 (re_match_2_internal): Pay attention to the case that the
9274 multibyteness of bufp and target may be different.
9275
9276 2008-02-01 Kenichi Handa <handa@m17n.org>
9277
9278 * xdisp.c (x_produce_glyphs): When a font is not found, make the
9279 empty box occupy at least one column width.
9280
9281 2008-02-01 Miles Bader <miles@gnu.org>
9282
9283 * Makefile.in: Remove redundant HAVE_XFT clause.
9284
9285 2008-02-01 Kenichi Handa <handa@m17n.org>
9286
9287 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
9288
9289 2008-02-01 Kenichi Handa <handa@m17n.org>
9290
9291 * fontset.c (Finternal_char_font): Fix for the case of POSITION
9292 being nil.
9293
9294 2008-02-01 Kenichi Handa <handa@m17n.org>
9295
9296 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
9297
9298 2008-02-01 Kenichi Handa <handa@m17n.org>
9299
9300 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
9301
9302 2008-02-01 Kenichi Handa <handa@m17n.org>
9303
9304 * search.c (simple_search): Fix previous change.
9305
9306 2008-02-01 Kenichi Handa <handa@m17n.org>
9307
9308 * xftfont.c (ftfont_font_format): Extern declaration.
9309
9310 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
9311
9312 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
9313 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
9314
9315 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
9316 (ftfont_font_format): Fix previous change.
9317
9318 * font.h (Ffont_xlfd_name): EXFUN it.
9319
9320 * font.c (font_parse_xlfd): Fix the array size of `f'.
9321 (register_font_driver): Use EQ to compare driver->type.
9322
9323 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
9324 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
9325 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
9326
9327 2008-02-01 Kenichi Handa <handa@m17n.org>
9328
9329 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
9330 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
9331
9332 2008-02-01 Kenichi Handa <handa@m17n.org>
9333
9334 * xfont.c (xfont_open): Set font->format.
9335
9336 * xftfont.c (xftfont_open): Set font->format.
9337
9338 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
9339 (ftfont_list): Include FC_FONTFORMAT in FcObject.
9340 (ftfont_open): Set font->format.
9341 (ftfont_font_format): New function.
9342
9343 * font.h (struct font): New member format.
9344
9345 * font.c (Qopentype): New variable.
9346 (syms_of_font): Defsym it.
9347 (Fquery_font): Change the format of the last element of the return
9348 value.
9349
9350 2008-02-01 Kenichi Handa <handa@m17n.org>
9351
9352 * xfns.c (xic_create_xfontset): Try the default fontset name as a
9353 last resort.
9354
9355 2008-02-01 Kenichi Handa <handa@m17n.org>
9356
9357 * coding.c (detect_coding_charset): Fix detection of multi-byte
9358 charset.
9359
9360 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
9361
9362 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
9363
9364 2008-02-01 Kenichi Handa <handa@m17n.org>
9365
9366 * xdisp.c (get_next_display_element): Set it->face_id for the
9367 first component of a composition.
9368 (x_produce_glyphs): Check if the font is changed or not for composition.
9369
9370 2008-02-01 Kenichi Handa <handa@m17n.org>
9371
9372 * fontset.c (Qlatin): New variable.
9373 (syms_of_fontset): Define it as a lisp symbol.
9374 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
9375
9376 2008-02-01 Kenichi Handa <handa@m17n.org>
9377
9378 * font.c (font_unparse_fcname): Pay attention to the case that
9379 some of font property is a null string.
9380
9381 2008-02-01 Kenichi Handa <handa@m17n.org>
9382
9383 * term.c: Include "composite.h".
9384 (encode_terminal_code): Output all components of composition.
9385 Check the size of encode_terminal_src.
9386 (produce_glyphs): For composition, call produce_composite_glyph.
9387 (append_composite_glyph, produce_composite_glyph): New functions.
9388
9389 * xdisp.c (x_produce_glyphs): In handling composition, if a font
9390 is not found, get font_info from the current ascii face.
9391
9392 2008-02-01 Kenichi Handa <handa@m17n.org>
9393
9394 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
9395 buffer-file-name to Qnil before calling insert_from_buffer.
9396
9397 * font.c (font_unparse_fcname): Pay attention to the case that
9398 foundry is a null string.
9399
9400 2008-02-01 Kenichi Handa <handa@m17n.org>
9401
9402 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
9403
9404 * font.c (Qunicode_sip): New variable.
9405 (syms_of_font): Declare it as a Lisp symbol.
9406
9407 * font.h (Qunicode_sip): Extern it.
9408
9409 2008-02-01 Kenichi Handa <handa@m17n.org>
9410
9411 * composite.c (get_composition_id): Pay attention to TAB component.
9412
9413 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
9414 TAB. Adjust for the change of s->char2b which always points to
9415 the first element of allocated memory.
9416
9417 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
9418
9419 * xdisp.c (handle_composition_prop): Set it->c to the first
9420 non-TAB component.
9421 (fill_composite_glyph_string): Change argument.
9422 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
9423 (x_produce_glyphs): Fix handling of left/right padding.
9424
9425 2008-02-01 Kenichi Handa <handa@m17n.org>
9426
9427 * coding.c (detect_coding_system): Fix for handling off
9428 inhibit_iso_escape_detection. Fix for the case that no coding
9429 system is defined for a specific coding category.
9430
9431 2008-02-01 Kenichi Handa <handa@m17n.org>
9432
9433 * font.c (font_matching_entity): Delete unused local var.
9434
9435 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
9436 opening a font.
9437
9438 * fileio.c (Finsert_file_contents): On recovering a file, assume
9439 Unix-like eol.
9440 (choose_write_coding_system): On auto-saving a file, force
9441 Unix-like eol.
9442
9443 * coding.c (setup_coding_system): Fix setting of
9444 coding->common_flags based on eol_type.
9445 (coding_inherit_eol_type): If PARENT is not nil, be sure to
9446 inherit from it.
9447
9448 2008-02-01 Kenichi Handa <handa@m17n.org>
9449
9450 * alloc.c (NSTATICS): Increas to 0x600.
9451
9452 2008-02-01 Kenichi Handa <handa@m17n.org>
9453
9454 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
9455 (ftfont_list): Don't check :name property.
9456 (ftfont_match): New function.
9457 (ftfont_pattern_entity): If the pattern doesn't contain
9458 FC_SPACING, don't assume FC_MONO.
9459
9460 * font.h (struct font_driver): New member `match'.
9461 (font_update_drivers): Adjust prototype.
9462
9463 * font.c (font_parse_fcname, font_parse_name): Don't change :name
9464 property of FONT.
9465 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
9466 them unconditionally.
9467 (font_matching_entity): New function.
9468 (font_open_by_name): Try font_matching_entity if exact match is
9469 not found.
9470 (font_update_drivers): Delete the arg FONT. Return a list of
9471 actually used backends. Don't free faces, font caches here.
9472 Don't store data in frame parameters. Don't call x_set_font.
9473 (Ffont_spec): Store :name property as is.
9474 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
9475 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
9476 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
9477 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
9478 Call font->driver->otf_gsub instead of font_otf_gsub.
9479
9480 * frame.c (x_set_font_backend): Do more works that were done in
9481 font_update_drivers before.
9482
9483 * xfont.c (xfont_match): New function.
9484 (xfont_driver): Set xfont_driver.match to xfont_match.
9485 (xfont_draw): Set font in GC if necessary.
9486
9487 * ftxfont.c (ftxfont_match): New function.
9488 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
9489
9490 * xftfont.c (xftfont_match): New function.
9491 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
9492
9493 2008-02-01 Kenichi Handa <handa@m17n.org>
9494
9495 * font.h (struct font): New member scalable.
9496 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
9497 (font_otf_gsub): Adjust prototype.
9498
9499 * font.c (font_otf_capability): Fix handling of the default langsys.
9500 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
9501 Check the contents of SPEC.
9502 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
9503 (check_gstring): New function.
9504 (REPLACEMENT_CHARACTER): New macro.
9505 (font_otf_gsub): New arg alternate_subst. Be sure to set all
9506 glyph codes of GSTRING.
9507 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
9508 (font_prepare_composition): Set cmp->glyph_len.
9509 (font_open_entity): Set font->scalable.
9510 (Ffont_get): Handle :otf property.
9511 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
9512 functions.
9513 (Fquery_font): Use font->font.full_name.
9514 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
9515 Sfont_otf_alternates.
9516
9517 * ftfont.c (ftfont_open): Set font->font.full_name and
9518 font->font.name properly. Fix calculation of font->font.height
9519 and font->min_width.
9520
9521 * ftxfont.c (ftxfont_create_gcs): New function.
9522 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
9523 (ftxfont_draw_backgrond): Fix filling region.
9524 (ftxfont_default_fid): New function.
9525 (ftxfont_open): Set xfont->fid to the return value of
9526 ftxfont_default_fid.
9527 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
9528 (ftxfont_done_face): Free only GCs that are created by
9529 ftxfont_create_gcs.
9530 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
9531
9532 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
9533 Clip to src->width, etc (not src->clip_XXX).
9534
9535 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
9536 FontBackend frame parameter.
9537
9538 2008-02-01 Kenichi Handa <handa@m17n.org>
9539
9540 * font.h (struct font_driver_list): New member `on'.
9541 (Fclear_font_cache): EXFUN it.
9542 (font_update_drivers): Extern it.
9543
9544 * font.c (font_unparse_fcname): Fix typo (swidth->width).
9545 (font_list_entities): Check driver_list->on.
9546 (register_font_driver): Initalize `on' member to 0.
9547 (font_update_drivers): New function.
9548 (Fclear_font_cache): Check driver_list->on.
9549
9550 * frame.h (Qfont_backend): Extern it.
9551 (x_set_font_backend): Extern it.
9552
9553 * frame.c (Qfont_backend): New variable.
9554 (frame_parms): New element for font-backend.
9555 (x_set_font_backend): New function.
9556
9557 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
9558 FontBackend frame parameter.
9559 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
9560 x_set_font_backend.
9561
9562 * xfont.c (xfont_list): Don't try listing by :name property if the
9563 name is not for XLFD.
9564
9565 2008-02-01 Kenichi Handa <handa@m17n.org>
9566
9567 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
9568 (LGLYPH_SET_TO): New macros.
9569 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
9570 element of G is vector or not.
9571 (font_at): Extern it.
9572
9573 * font.c: Include window.h.
9574 (font_lispy_object): New function.
9575 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
9576 end of valid glyph.
9577 (font_close_object): Fix getting (struct font *).
9578 (font_at): New function.
9579 (Ffont_get): If FONT is a font-object, get entity from it.
9580 (Ffont_make_gstring): Initialize elements of glyphs with nil.
9581 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
9582 range check.
9583 (Ffont_at): New function.
9584 (syms_of_font): Defsubr Sfont_at.
9585
9586 * xdisp.c (it_props): Move the entry for Qauto_composed to just
9587 before the entry for Qcomposition.
9588 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
9589 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
9590 the font in gstring.
9591 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
9592 LGLYPH_FORM (g) to detect the end of valid glyph.
9593 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
9594 we are composing with gstring.
9595
9596 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
9597 Check if adjustment is vector or not.
9598
9599 * Makefile.in (font.o): Make it depends on window.h.
9600
9601 2008-02-01 Kenichi Handa <handa@m17n.org>
9602
9603 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
9604 adjustment is vector or not.
9605
9606 2008-02-01 Miles Bader <miles@gnu.org>
9607
9608 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
9609
9610 2008-02-01 Kenichi Handa <handa@m17n.org>
9611
9612 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
9613 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
9614 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
9615
9616 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
9617 (DEVICE_DELTA): Fix typo.
9618 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
9619 LGLYPH format.
9620
9621 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9622 the change of LGLYPH format.
9623
9624 2008-02-01 Kenichi Handa <handa@m17n.org>
9625
9626 * ftfont.c (ftfont_list): Fix typo.
9627 (ftfont_build_basic_charsets): Don't include letters with diacritics.
9628
9629 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9630
9631 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
9632
9633 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
9634 xftface_info is non-NULL.
9635
9636 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9637
9638 * ftfont.c (ftfont_list): Move misplaced #endif.
9639
9640 2008-02-01 Kenichi Handa <handa@m17n.org>
9641
9642 * ftfont.c (ftfont_list): Pay attention to the case that
9643 FC_CAPABILITY is not defined.
9644
9645 2008-02-01 Kenichi Handa <handa@m17n.org>
9646
9647 * xftfont.c (xftfont_open): Set charset related members to -1.
9648
9649 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
9650 QCname.
9651 (ftfont_open): Set charset related members to -1.
9652
9653 * fontset.c (Votf_script_alist): New variable.
9654 (syms_of_fontset): Initialize it.
9655 (fontset_font): Delete unused variable.
9656
9657 * fontset.h (Votf_script_alist): Extern it.
9658
9659 * font.c (font_find_for_lface): Optimize code.
9660
9661 * font.h (font_close_object, font_merge_old_spec): Extern them.
9662
9663 2008-02-01 Kenichi Handa <handa@m17n.org>
9664
9665 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
9666 (syms_of_font): Initialize them.
9667 (font_pixel_size): Allow float value in dpi.
9668 (font_prop_validate_type): Delete.
9669 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
9670 Change caller.
9671 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
9672 (font_prop_validate_extra): Delete.
9673 (font_prop_validate_spacing): New function.
9674 (font_property_table): Add elements for all known properties.
9675 (get_font_prop_index): Rename from check_font_prop_name. New
9676 argument FROM. Change caller.
9677 (font_prop_validate): Validate all known properties.
9678 (font_put_extra): Delete argument force. Change caller.
9679 (font_expand_wildcards): Make it static. Fix the way of shrinking
9680 the possible range.
9681 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
9682 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
9683 Change caller.
9684 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
9685 (font_parse_fcname): Delete argument merge. Fix parsing of point
9686 size. Don't validate properties values here. Change caller.
9687 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
9688 (font_open_by_name): Delete unused variable.
9689 (Ffont_spec): Likewise. Validate property values.
9690 (Ffont_match_p): New function.
9691
9692 * font.h (QCscalable): Extern it.
9693 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
9694
9695 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
9696
9697 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
9698 (xfont_list_pattern): New function.
9699 (xfont_list): Use xfont_list_pattern.
9700
9701 2008-02-01 Kenichi Handa <handa@m17n.org>
9702
9703 * font.h (Flist_fonts): EXFUN it.
9704
9705 2008-02-01 Jason Rumney <jasonr@gnu.org>
9706
9707 * w32term.c (w32_initialize): Add back smoothing_type and
9708 smoothing_enabled definitions.
9709
9710 2008-02-01 Kenichi Handa <handa@m17n.org>
9711
9712 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
9713 s->face->font on determining underline position.
9714
9715 2008-02-01 Kenichi Handa <handa@m17n.org>
9716
9717 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
9718 (font_has_char): Accept font-object too.
9719 (font_find_for_lface): Try at first with a size specified in face.
9720
9721 2008-02-01 Kenichi Handa <handa@m17n.org>
9722
9723 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
9724 font_open_by_name.
9725
9726 2008-02-01 Kenichi Handa <handa@m17n.org>
9727
9728 * font.h (QCspacing, QCdpi): Extern them.
9729 (enum font_spacing): New enum.
9730 (FONT_PIXEL_SIZE_QUANTUM): New macro.
9731
9732 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
9733 (QCspacing, QCdpi): New variables.
9734 (syms_of_font): Initialize them.
9735 (font_pixel_size): New function.
9736 (font_put_extra): New function.
9737 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
9738 in FONT_EXTRA.
9739 (font_parse_fcname): Handle enumerated values (e.g. bold).
9740 Fix handling font size. Add QCname property that contains only
9741 unknown properties.
9742 (font_score): Change argument. Change caller. Pay attention to
9743 FONT_PIXEL_SIZE_QUANTUM.
9744 (font_sort_entites, font_list_entities, font_find_for_lface)
9745 (font_open_for_lface, font_open_by_name): Fix handling of font size.
9746 (Ffont_spec): Add QCname property that contains only unknown properties.
9747
9748 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
9749 include weight in listing pattern, instead check weight of each
9750 listed font. Don't include scalable in pattern. Pay attention to
9751 FONT_PIXEL_SIZE_QUANTUM.
9752
9753 2008-02-01 Kenichi Handa <handa@m17n.org>
9754
9755 * font.c (font_parse_fcname): Fix parsing of point-size.
9756 (font_unparse_fcname): Produce symbolic names for style properties.
9757 (font_list_entities): Handle float size correctly.
9758 (font_open_by_name): Prefer `normal' property values if the name
9759 doesn't specify them.
9760
9761 * fontset.c (Finternal_char_font): Use font_get_name, not
9762 Ffont_xlfd_name.
9763
9764 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
9765 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
9766 pattern. Don't force scalable.
9767
9768 * xftfont.c (xftfont_open): For generating a name, start from
9769 96-byte buffer.
9770
9771 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9772
9773 * frame.h (x_new_fontset2): Fix prototype.
9774
9775 2008-02-01 Kenichi Handa <handa@m17n.org>
9776
9777 * font.h (struct font_driver): Delete member parse_name.
9778 (font_match_p, font_get_spec, font_parse_fcname)
9779 (font_unparse_fcname): Extern them.
9780 (font_get_name): Adjust prototype.
9781
9782 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
9783 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
9784 (font_expand_wildcards): Fix handling ENCODING field. Avoid
9785 unnecessary checks for weight, slant, and swidth.
9786 (font_parse_fcname): New function.
9787 (font_unparse_fcname): New function.
9788 (font_parse_name): New function.
9789 (font_match_p): New function.
9790 (font_get_name): Change return value to Lisp string.
9791 (font_get_spec): New function.
9792 (Qunspecified, Qignore_defface): Don't extern them.
9793 (font_find_for_lface): Assume that LFACE is fully specified.
9794 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
9795 object, use it for FACE.
9796 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
9797 driver->parse_name.
9798 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
9799
9800 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
9801 prototype.
9802
9803 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
9804 argument F. Don't call Fnew_fontset. Instead, directly call
9805 make_fontset.
9806
9807 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
9808
9809 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
9810 of x_new_fontset2.
9811
9812 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
9813 (Qsans__serif): New variables.
9814 (ftfont_generic_family_list): New variable.
9815 (syms_of_ftfont): Initialize the above variables.
9816 (ftfont_pattern_entity): Delete argument NAME.
9817 (ftfont_list_generic_family): New function.
9818 (ftfont_parse_name): Delete this function.
9819 (ftfont_list): Try generic family only when FcFontList found no font.
9820 (ftfont_list_family): Fix args to FcObjectSetBuild.
9821
9822 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
9823 object in attrs[LFACE_FONT_INDEX].
9824 (set_lface_from_font_name): Cancel all changes for font-backend.
9825 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
9826 function.
9827 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
9828 font object in QCfont attribute.
9829 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
9830 (realize_default_face) [USE_FONT_BACKEND]: Call
9831 set_lface_from_font_and_fontset.
9832
9833 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
9834 "fixed", and signal error here if no suitable font was found.
9835
9836 * xfont.c (xfont_parse_name): Delete this function.
9837
9838 * xftfont.c (xftfont_open): Change coding style of error
9839 handling. Generate fontconfig's fontname pattern.
9840
9841 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
9842 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
9843
9844 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
9845 Both args FONTSET and FONT_OBJECT must be existing ones.
9846
9847 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9848
9849 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
9850
9851 2008-02-01 Kenichi Handa <handa@m17n.org>
9852
9853 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
9854
9855 * font.h (struct font): Fix typo.
9856
9857 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
9858 XLFD_XXX_INDEX.
9859 (enum xlfd_field_mask): New enum.
9860 (intern_font_field): Changed argument. Change caller. If digits
9861 are followed by non-digits, return a symbol.
9862 (font_expand_wildcards): New function.
9863 (font_parse_xlfd): Fix wildcard handling.
9864 (Ffont_spec): If :name is specified, reflect the info in the other
9865 properties.
9866
9867 * ftfont.c (ftfont_pattern_entity): Fix typo.
9868 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
9869 locale.
9870
9871 2008-02-01 Kenichi Handa <handa@m17n.org>
9872
9873 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
9874
9875 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
9876 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
9877 registry doesn't specify encoding part.
9878 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
9879 (font_open_by_name): At first try parsing the name.
9880 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
9881 as Lisp symbols.
9882
9883 * fontset.c (reorder_font_vector): Pay attention to the case that
9884 the 3rd element of font_def is nil.
9885 (fontset_font): For the default fontset, append one more fontset
9886 elements for a script-based font specification. Don't add script
9887 attribute on finding a font.
9888 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
9889 font name.
9890 (fontset_ascii_font): If a font can't be opened, return nil.
9891
9892 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
9893 (ftfont_pattern_entity): New function.
9894 (ftfont_get_cache): Assume that freetype_font_cache is already
9895 initialized.
9896 (ftfont_list): Handle the case that a file is specified in font
9897 name. Use ftfont_pattern_entity to generate entities.
9898 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
9899 (syms_of_ftfont): Initialize freetype_font_cache.
9900
9901 * xftfont.c (xftfont_open): Make the font name fontconfig's
9902 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
9903 (xftfont_close): Free font->font.name if not NULL.
9904
9905 * xfont.c (xfont_list): If script is specified for a font, return
9906 null_vector.
9907 (xfont_list_family): Declare argument type.
9908
9909 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
9910 name, set LFACE_FONT (lface) to nil.
9911
9912 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
9913 return Qnil.
9914
9915 2008-02-01 Kenichi Handa <handa@m17n.org>
9916
9917 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
9918 (standard_args): Add "-enable-font-backend".
9919
9920 2008-02-01 Kenichi Handa <handa@m17n.org>
9921
9922 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
9923 (struct xftdraw_list, xftdraw_list): Delete them.
9924 (register_xftdraw, check_xftdraw): Delete them.
9925 (xftfont_prepare_face): Don't call register_xftdraw.
9926 (xftfont_done_face): Don't call check_xftdraw.
9927 (xftfont_draw): Get background color only when with_background is
9928 nonzero.
9929
9930 * xfont.c (xfont_encode_char): Fix calculation of char2b.
9931
9932 2008-02-01 Kenichi Handa <handa@m17n.org>
9933
9934 These changes are for the new font handling codes.
9935
9936 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
9937 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
9938 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
9939 (FONTSRC, FONTOBJ): New variables.
9940 (obj): Add $(FONTOBJ).
9941 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
9942 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
9943 @LIBOTF_LIBS@.
9944 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
9945 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
9946
9947 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
9948
9949 * character.h (Vscript_representative_chars): Extern it.
9950
9951 * character.c (Vscript_representative_chars): New variable.
9952 (syms_of_character): Declare it as a Lisp variable.
9953
9954 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
9955 enable_font_backend is nonzero, accept the composition method
9956 COMPOSITION_WITH_GLYPH_STRING.
9957
9958 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
9959 enumeration COMPOSITION_WITH_GLYPH_STRING.
9960
9961 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
9962 members clip_x, clip_y, clip_width, and clip_height.
9963 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
9964
9965 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
9966 --enable-font-backend. Call syms_of_font.
9967
9968 * fns.c (assoc_no_quit): New function.
9969
9970 * fontset.h (FONT_INFO_FROM_FACE): New macro.
9971 (face_for_font, new_fontset_from_font)
9972 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
9973
9974 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
9975 (fontset_font, fontset_ascii, face_for_char)
9976 (make_fontset_for_ascii_face, Ffont_info)
9977 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
9978 is nonzero, use font-backend mechanism.
9979 (find_font_encoding): Make it non-static.
9980 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
9981 New functions.
9982
9983 * frame.h (struct frame): New members resx and resy.
9984 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
9985 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
9986
9987 * frame.c [USE_FONT_BACKEND]: Include "font.h".
9988 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
9989
9990 * lisp.h (assoc_no_quit): Extern it.
9991
9992 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
9993 Through out the file, use FONT_INFO_FROM_FACE instead of
9994 FONT_INFO_FROM_ID, use get_per_char_metric instead of
9995 rif->per_char_metric.
9996 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
9997 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
9998 (get_glyph_face_and_encoding, fill_composite_glyph_string)
9999 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10000 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
10001 nonzero, use font-backend mechanism.
10002 (get_per_char_metric): New function.
10003
10004 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
10005 (set_lface_from_font_name)
10006 (set_font_frame_param, free_realized_face)
10007 (prepare_face_for_display, clear_face_gcs)
10008 (Finternal_set_font_selection_order, realize_x_face)
10009 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
10010 font-backend mechanism.
10011 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
10012 (load_face_font) [USE_FONT_BACKEND]: Abort.
10013 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
10014 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
10015
10016 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
10017 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
10018 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
10019 nonzero, register all available font drivers. Call
10020 x_default_font_parameter for deciding a font.
10021 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
10022
10023 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
10024 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
10025 (x_set_glyph_string_clipping_exactly)
10026 (x_compute_glyph_string_overhangs)
10027 (x_draw_glyph_string_foreground)
10028 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
10029 (x_free_frame_resources) [USE_FONT_BACKEND]: If
10030 enable_font_backend is nonzero, use font-backend mechanism.
10031 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
10032
10033 2008-02-01 Kenichi Handa <handa@m17n.org>
10034
10035 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
10036 system_eol_type.
10037 (syms_of_coding): Initialize system_eol_type.
10038
10039 * process.c (Fset_process_coding_system): Inherit system's eol
10040 format if necessary.
10041
10042 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10043
10044 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
10045
10046 2008-02-01 Kenichi Handa <handa@m17n.org>
10047
10048 * coding.c (decode_eol): Pay attention to buffer relocation in
10049 del_range_2.
10050 (decode_coding): Call decode_eol before restoring undo_list.
10051
10052 2008-02-01 Kenichi Handa <handa@m17n.org>
10053
10054 * charset.c (Fdefine_charset_internal): Fix setting of
10055 emacs_mule_bytes.
10056
10057 2008-02-01 Kenichi Handa <handa@m17n.org>
10058
10059 * keyboard.c (read_char): Check if C is a character or not before
10060 looking up Vkeyboard_translate_table.
10061
10062 2008-02-01 Kenichi Handa <handa@m17n.org>
10063
10064 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
10065 condition to terminate the loop.
10066
10067 2008-02-01 Kenichi Handa <handa@m17n.org>
10068
10069 * coding.c (produce_composition): Compare charbuf[i] instead of
10070 args[i] against 0.
10071 (Fterminal_coding_system): Use EQ to compare Lisp objects.
10072
10073 2008-02-01 Kenichi Handa <handa@m17n.org>
10074
10075 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
10076 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
10077 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
10078 detect_coding.
10079 (emacs_mule_char): Handle old style (Emacs 20) component character
10080 of a composition.
10081 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
10082 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
10083 composition rule.
10084 (decode_coding_emacs_mule): Handle invalid bytes correctly.
10085
10086 2008-02-01 Kenichi Handa <handa@m17n.org>
10087
10088 * coding.c (encode_coding_ccl): Allocate destination dynamically
10089 when necessary.
10090
10091 2008-02-01 Kenichi Handa <handa@m17n.org>
10092
10093 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
10094 the loop. When quitted, show a proper error message.
10095
10096 2008-02-01 Kenichi Handa <handa@m17n.org>
10097
10098 * xterm.c (x_set_glyph_string_clipping_exactly): Set
10099 src->clip_head and src->clip_tail temporarily instead of src->hl.
10100
10101 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
10102 character sequence.
10103 (Fccl_execute_on_string): Use ASET, not XSET.
10104
10105 2008-02-01 Kenichi Handa <handa@m17n.org>
10106
10107 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
10108
10109 2008-02-01 Kenichi Handa <handa@m17n.org>
10110
10111 * coding.c (decode_coding): Fix the condition of terminating the
10112 decoding loop.
10113
10114 2008-02-01 Kenichi Handa <handa@m17n.org>
10115
10116 * data.c (Faset): On setting a character bigger than 255 in a
10117 unibyte string, signal an error instead of make the string multibyte.
10118
10119 2008-02-01 Kenichi Handa <handa@m17n.org>
10120
10121 * charset.c (map_charset_chars): Fix for ascii-compatible charset
10122 made by a mapping table.
10123
10124 2008-02-01 Kenichi Handa <handa@m17n.org>
10125
10126 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
10127 not.
10128 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
10129 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
10130
10131 * xterm.c (x_draw_composite_glyph_string_foreground): Check
10132 s->face is NULL or not.
10133
10134 2008-02-01 Kenichi Handa <handa@m17n.org>
10135
10136 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
10137 (x_draw_glyph_string): Fix drawing of right_overhang and
10138 left_overhang around/on cursor.
10139
10140 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
10141
10142 2008-02-01 Kenichi Handa <handa@m17n.org>
10143
10144 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
10145
10146 2008-02-01 Kenichi Handa <handa@m17n.org>
10147
10148 * coding.c (Fdefine_coding_system_internal)
10149 (Fdefine_coding_system_alias): Avoid a duplicated element in
10150 Vcoding_system_alist.
10151
10152 2008-02-01 Kenichi Handa <handa@m17n.org>
10153
10154 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
10155
10156 * coding.c (Qcoding_system_define_form): New variable.
10157 (syms_of_coding): Intern and staticpro it.
10158 (Fcoding_system_p): Check Qcoding_system_define_form.
10159 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
10160
10161 * coding.h (CODING_SYSTEM_P): If ID is not available, call
10162 Fcoding_system_p.
10163 (CHECK_CODING_SYSTEM): If ID is not available, call
10164 Fcheck_coding_system.
10165 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
10166 Try also Fcheck_coding_system.
10167
10168 2008-02-01 Kenichi Handa <handa@m17n.org>
10169
10170 * coding.c (code_conversion_restore): GCPRO arg.
10171
10172 2008-02-01 Kenichi Handa <handa@m17n.org>
10173
10174 * character.c (lisp_string_width): Check multibyteness of STRING.
10175
10176 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10177
10178 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
10179 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
10180 (decode_mac_font_name): Use decode_coding_c_string instead of
10181 decode_coding.
10182 (x_load_font): Initialize fontp->fontset to -1. Set
10183 fontp->encoding_type.
10184
10185 2008-02-01 Kenichi Handa <handa@m17n.org>
10186
10187 * search.c (search_buffer): Give up BM search on case-fold-search
10188 if one of a target character has a case-equivalence of different
10189 byte length even if that target charcter is an ASCII.
10190 (simple_search): Fix calculation of byte length of matched text.
10191 (boyer_moore): Fix handling of case-equivalent multibyte characters.
10192
10193 2008-02-01 Kenichi Handa <handa@m17n.org>
10194
10195 * coding.c (decode_coding): Fix handling of invalid bytes.
10196
10197 2008-02-01 Kenichi Handa <handa@m17n.org>
10198
10199 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
10200 Unicode characters.
10201
10202 2008-02-01 Kenichi Handa <handa@m17n.org>
10203
10204 * coding.c (encode_coding_object): If a pre-write-conversion
10205 function makes a new buffer, kill it.
10206
10207 2008-02-01 Kenichi Handa <handa@m17n.org>
10208
10209 * coding.c (QCascii_compatible_p): New variable.
10210 (syms_of_coding): Initialize it.
10211 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
10212 calling string_char.
10213 (record_conversion_result): Add `default:' case.
10214 (coding_charset_list): Delete unused variable `coding_type'.
10215 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
10216 property in the plist of the coding system.
10217 (Fcoding_system_put): Check QCascii_compatible_p.
10218
10219 2008-02-01 Miles Bader <miles@gnu.org>
10220
10221 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
10222 removed calculation of frame `f', as it's now used.
10223
10224 2008-02-01 Kenichi Handa <handa@m17n.org>
10225
10226 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
10227 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
10228 (UNIDATA): New variable.
10229 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
10230 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
10231 $(RUN_TEMACS) unconditionally.
10232
10233 2008-02-01 Kenichi Handa <handa@m17n.org>
10234
10235 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
10236 (admindir): New variable.
10237 ($(lispsource)international/charprop.el): New target.
10238
10239 2008-02-01 Miles Bader <miles@gnu.org>
10240
10241 * character.c (chars-in-region): Remove obsolete function.
10242 (syms_of_character): Remove its initialization.
10243
10244 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
10245
10246 * w32select.c (validate_coding_system)
10247 (setup_windows_coding_system): New functions.
10248 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
10249 setup_windows_coding_system.
10250 (setup_config, Fw32_get_clipboard_data): Use
10251 validate_coding_system.
10252 (Fx_selection_exists): Move call to setup_config to a place
10253 where signals are allowed.
10254
10255 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
10256 (Fcheck_coding_system): Add declarations.
10257
10258 2008-02-01 Kenichi Handa <handa@m17n.org>
10259
10260 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
10261
10262 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10263
10264 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
10265 string as the second argument for x_new_fontset.
10266
10267 2008-02-01 Kenichi Handa <handa@m17n.org>
10268
10269 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
10270 (encode_coding_object): Use safe_call instead of call2.
10271
10272 2008-02-01 Kenichi Handa <handa@m17n.org>
10273
10274 * fontset.c (Fset_fontset_font): Check family element of a given vector.
10275
10276 * Makefile.in (lisp): Include charprop.el.
10277
10278 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10279
10280 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
10281 Not sure if it's unnecessary.
10282
10283 2008-02-01 Steven Tamm <steventamm@mac.com>
10284
10285 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
10286 some possibly unnecessary fontset checking code that crashed
10287 when creating a new frame.
10288
10289 2008-02-01 Kenichi Handa <handa@m17n.org>
10290
10291 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
10292 lookup_face.
10293
10294 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
10295
10296 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
10297
10298 2008-02-01 Kenichi Handa <handa@m17n.org>
10299
10300 * coding.c: Cancel the change done in HEAD on 2008-02-01.
10301 (coding_charset_list): New function.
10302
10303 * coding.h (coding_charset_list): Extern it.
10304
10305 2008-02-01 Kenichi Handa <handa@m17n.org>
10306
10307 * fontset.c (Fset_fontset_font): Call find_font_encoding with
10308 concatenation of family and registry.
10309
10310 2008-02-01 Kenichi Handa <handa@m17n.org>
10311
10312 * character.h (BYTE8_STRING): Fix typo.
10313
10314 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
10315 string to multibyte (sync to HEAD).
10316
10317 * casefiddle.c (casify_region): Handle changes in byte-length
10318 using replace_range_2 (sync to HEAD).
10319
10320 2008-02-01 Andreas Schwab <schwab@suse.de>
10321
10322 * chartab.c (map_char_table): GCPRO table and arg.
10323
10324 2008-02-01 Kenichi Handa <handa@m17n.org>
10325
10326 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
10327 already at limit.
10328
10329 2008-02-01 Kenichi Handa <handa@m17n.org>
10330
10331 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
10332 instead of fast_c_string_match_ignore_case.
10333 (find_font_encoding): Change argument to Lisp_Object. Use
10334 fast_string_match_ignore_case instead of
10335 fast_c_string_match_ignore_case. Change caller.
10336
10337 2008-02-01 Kenichi Handa <handa@m17n.org>
10338
10339 * xdisp.c (get_next_display_element): In unibyte case, decide to
10340 display in octal form by checking a character by
10341 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
10342
10343 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
10344
10345 * character.c (unibyte_has_multibyte_table): New variable.
10346
10347 * character.h (unibyte_has_multibyte_table): Extern it.
10348 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
10349
10350 2008-02-01 Kenichi Handa <handa@m17n.org>
10351
10352 * coding.c (encode_coding_iso_2022): Fix handling of charset
10353 annotation.
10354
10355 2008-02-01 Kenichi Handa <handa@m17n.org>
10356
10357 * coding.c (setup_coding_system): If coding_system is nil, use
10358 Qundecided.
10359 (Fterminal_coding_system): Return nil if terminal coding system is
10360 `undecided'.
10361 (syms_of_coding): Define coding-system `undecided' here. Setup
10362 terminal_coding as `undecided'.
10363
10364 2008-02-01 Kenichi Handa <handa@m17n.org>
10365
10366 * xdisp.c (message_dolog, set_message_1): Call
10367 unibyte_char_to_multibyte with arg type int.
10368
10369 * lread.c (read1): Fix reading of a char-table.
10370
10371 * print.c (print_object): Include sub char-table in circularities
10372 detection.
10373
10374 2008-02-01 Kenichi Handa <handa@m17n.org>
10375
10376 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
10377 Append the found sequences in car of ARGS instead of prepending.
10378
10379 2008-02-01 Kenichi Handa <handa@m17n.org>
10380
10381 * fileio.c (report_file_error): Make a unibyte string from
10382 strerror (errorno).
10383 (Fsubstitute_in_file_name): Fix the arg to
10384 unibyte_char_to_multibyte. It is evaluated twice.
10385
10386 2008-02-01 Kenichi Handa <handa@m17n.org>
10387
10388 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
10389
10390 2008-02-01 Kenichi Handa <handa@m17n.org>
10391
10392 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
10393 BOM is not found.
10394 (detect_coding, detect_coding_system): Optimization for ISO-2022
10395 when no 8-bit data is found.
10396
10397 2008-02-01 Jason Rumney <jasonr@gnu.org>
10398
10399 * w32fns.c (x_to_w32_font): Update to use new coding struct.
10400
10401 2008-02-01 Kenichi Handa <handa@m17n.org>
10402
10403 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
10404 CHARS.
10405
10406 2008-02-01 Steven Tamm <steventamm@mac.com>
10407
10408 * macterm.c (mac_encode_char): Add charset argument and update
10409 to use encoding_type.
10410 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
10411 switch to pure fontset.
10412 (decode_mac_font_name): Temporarily remove decoding.
10413 (x_font_name_to_mac_font_name): Temporarily remove encoding.
10414 (x_load_font): Temporarily remove encoding.
10415
10416 2008-02-01 Kenichi Handa <handa@m17n.org>
10417
10418 * xfaces.c (Fface_font): If frame is not on a window system,
10419 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
10420 refer to face->font.
10421 (split_font_name_into_vector, build_font_name_from_vector)
10422 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
10423 when HAVE_WINDOW_SYSTEM is defined.
10424
10425 2008-02-01 Kenichi Handa <handa@m17n.org>
10426
10427 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
10428 (x_produce_glyphs): Fix setting of members of cmp in case
10429 cmp->glyph_len is zero.
10430
10431 * fontset.c (Fset_fontset_font): Fix docstring.
10432 (Ffontset_info): Make it backward compatible. New arg ALL.
10433
10434 2008-02-01 Kim F. Storm <storm@cua.dk>
10435
10436 * process.c (read_process_output): Grow decoding_buf when needed;
10437 this could cause a crash in allocate_string and compact_small_strings.
10438
10439 2008-02-01 Kenichi Handa <handa@m17n.org>
10440
10441 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
10442
10443 2008-02-01 Kenichi Handa <handa@m17n.org>
10444
10445 * coding.c (setup_coding_system): Set coding->common_flags
10446 correctly for raw-text.
10447 (consume_chars): On encoding unibyte text by raw-text, don't check
10448 multibyte form.
10449 (encode_coding): On encoding by raw-text, never use translation tables.
10450
10451 * fileio.c (e_write): Short cut for the case of no encoding.
10452
10453 2008-02-01 Kenichi Handa <handa@m17n.org>
10454
10455 * coding.c (detect_coding, detect_coding_system): Delete unused
10456 variables.
10457
10458 2008-02-01 Kenichi Handa <handa@m17n.org>
10459
10460 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
10461 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
10462
10463 2008-02-01 Kenichi Handa <handa@m17n.org>
10464
10465 * coding.c (Ffind_coding_systems_region_internal): Include
10466 raw-text and no-conversion in the result.
10467
10468 2008-02-01 Kenichi Handa <handa@m17n.org>
10469
10470 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
10471 (load_font_get_repertory): Delete unnecessary check of ENCODING of
10472 FONT_DEF.
10473 (font_def_arg, add_arg, from_arg, to_arg): New args.
10474 (set_fontset_font): Change argument.
10475 (Fset_fontset_font): Fix for the case that TARGET is a script
10476 name and charset name.
10477 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
10478
10479 2008-02-01 Kenichi Handa <handa@m17n.org>
10480
10481 * fontset.c (fontset_font): Rename from fontset_face. Change return
10482 value.
10483 (face_suitable_for_char_p, face_for_char): Adjust for the change
10484 of fontset_font.
10485 (make_fontset_for_ascii_face): Fix setting of the fontset element
10486 for ASCII.
10487 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
10488 to get a font name.
10489 (Ffontset_info): Adjust for the change of fontset_font.
10490
10491 * coding.c (emacs_mule_char): Check invalid code more rigidly.
10492
10493 * character.h (LEADING_CODE_LATIN_1_MIN)
10494 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
10495
10496 2008-02-01 Kenichi Handa <handa@m17n.org>
10497
10498 * editfns.c (check_translation): New function.
10499 (Ftranslate_region_internal): Handle M:N mapping.
10500
10501 2008-02-01 Kenichi Handa <handa@m17n.org>
10502
10503 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
10504
10505 2008-02-01 Kenichi Handa <handa@m17n.org>
10506
10507 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
10508 goto invalid_code.
10509 (decode_coding_iso_2022): Fix handling of invalid designation.
10510
10511 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
10512 after calling code_conversion_save.
10513
10514 2008-02-01 Kenichi Handa <handa@m17n.org>
10515
10516 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
10517
10518 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
10519
10520 * fontset.c: Include "intervals.h".
10521 (fontset_face): Fix comparing of Lisp_Objects.
10522 (free_face_fontset, new_fontset_from_font_name): Fix
10523 Lisp_Object/int mixup.
10524
10525 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
10526
10527 * coding.c: Add many prototypes for static functions.
10528 (get_translation_table): Allow max_lookup to be NULL.
10529 (decode_coding, Ffind_coding_systems_region_internal)
10530 (Funencodable_char_position, Fcheck_coding_systems_region): Call
10531 get_translation_table with max_lookup NULL.
10532
10533 2008-02-01 Kenichi Handa <handa@m17n.org>
10534
10535 * coding.c (get_translation_table): Declare it as Lisp_Object.
10536 (LOOKUP_TRANSLATION_TABLE): New macro.
10537 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
10538 instead of CHAR_TABLE_REF.
10539
10540 2008-02-01 Kenichi Handa <handa@m17n.org>
10541
10542 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
10543 annotation data format.
10544 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
10545 Change arguments FROM and TO to single argument NCHARS. Change caller.
10546 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
10547 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10548 (decode_coding_ccl, decode_coding_charset): Pay attention to
10549 coding->charbuf_used.
10550 (get_translation): New function.
10551 (produce_chars): New arguments translation_table and last_block.
10552 Translate characters here. Return number of carryover chars.
10553 Change caller.
10554 (produce_composition): New argument pos. Change caller.
10555 Adjust for the change of annotation data format.
10556 (produce_charset, produce_annotation): Likewise.
10557 (decode_coding, encode_coding): Don't call translate_chars.
10558 (consume_chars): New arg translation_table. Change caller.
10559 (translate_chars): Delete.
10560 (syms_of_coding): Make translation-table's number of extra slots 2.
10561
10562 2008-02-01 Kenichi Handa <handa@m17n.org>
10563
10564 * search.c (simple_search): Fix setting this_pos_byte in backward
10565 search.
10566
10567 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
10568 byte sequence.
10569 (detect_coding_ccl): Fix setting of the variable valids.
10570
10571 2008-02-01 Kenichi Handa <handa@m17n.org>
10572
10573 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
10574
10575 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
10576
10577 * editfns.c (Ftranslate_region_internal): Rename from
10578 Ftranslate_region. Accept a char-table in TABLE.
10579 (syms_of_editfns): Defsubr Stranslate_region_internal.
10580
10581 * xfaces.c (set_lface_from_font_name): If a font is specified for
10582 a frame, generate a fontset from the font.
10583 (build_scalable_font_name): If the scalable font is requested for
10584 a specific size, don't change that size.
10585 (try_font_list): Try a scalable font also in the case that a
10586 pattern string is specified.
10587
10588 2008-02-01 Kenichi Handa <handa@m17n.org>
10589
10590 * xfaces.c (Fface_font): New optional arg CHARACTER.
10591
10592 2008-02-01 Kenichi Handa <handa@m17n.org>
10593
10594 * charset.h (CHARSET_OFFSET): New macro.
10595
10596 2008-02-01 Kenichi Handa <handa@m17n.org>
10597
10598 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
10599
10600 * fontset.c (fontset_face): Handle the case that repertory is a
10601 char-table.
10602 (find_font_encoding): Return nil for unknown encoding.
10603 (Fset_fontset_font): Ignore a font of unknown encoding.
10604
10605 2008-02-01 Kenichi Handa <handa@m17n.org>
10606
10607 * keymap.c (describe_vector): Handle default value of a char table.
10608
10609 * fontset.c (fontset_face): Handle fallback fonts correctly.
10610 (Ffontset_info): Return infomation about fallback fonts.
10611
10612 2008-02-01 Kenichi Handa <handa@m17n.org>
10613
10614 * fontset.c (FONTSET_DEFAULT): New macro.
10615 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
10616 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
10617 the case that it is nil.
10618 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
10619 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
10620
10621 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
10622 subset or superset.
10623
10624 2008-02-01 Kenichi Handa <handa@m17n.org>
10625
10626 * emacs.c (main): Call init_charset after syms_of_XXX.
10627
10628 * charset.c (Vcharset_map_directory): Delete.
10629 (Vcharset_map_path): New variable.
10630 (load_charset_map_from_file): Use Vcharset_map_path instead.
10631 (init_charset): Initialize Vcharset_map_path.
10632 (syms_of_charset): Delete declaration of "charset-map-directory",
10633 add declaration of "charset-map-path".
10634
10635 2008-02-01 Kenichi Handa <handa@m17n.org>
10636
10637 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
10638 ASCII only string.
10639
10640 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
10641
10642 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
10643 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
10644
10645 2008-02-01 Kenichi Handa <handa@m17n.org>
10646
10647 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
10648
10649 * coding.c (QCmnemonic, QCdefalut_char)
10650 (QCdecode_translation_table, QCencode_translation_table)
10651 (QCpost_read_conversion, QCpre_write_conversion): New variables.
10652 (get_translation_table): Return a list of translation tables if
10653 necessary.
10654 (decode_coding): Call get_translation_table with ENCODEP 0.
10655 (char_encodable_p): If translation_table is non-nil, always call
10656 translate_char.
10657 (Fdefine_coding_system_internal): Accept list of translation
10658 tables as :encode-translation-table and :decode-translation-table.
10659 (Fcoding_system_put): New function.
10660 (syms_of_coding): Declare new symbols. Defsubr
10661 Scoding_system_put.
10662 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
10663 typically JISX0212.
10664
10665 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
10666 when the charset is superset type.
10667
10668 * character.c (translate_char): Accept list of translation tables.
10669
10670 2008-02-01 Kenichi Handa <handa@m17n.org>
10671
10672 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
10673 (CODING_ATTR_TRANS_TBL): New macro.
10674
10675 * coding.c (get_translation_table): New function.
10676 (translate_chars): Fix the bug of skipping annotation data.
10677 (decode_coding, encode_coding): Utilize get_translation_table.
10678 (char_encodable_p, Funencodable_char_position): Translate char if
10679 necessary.
10680 (Ffind_coding_systems_region_internal)
10681 (Fcheck_coding_systems_region): Setup translation table for encode
10682 in a coding system attribute vector in advance.
10683 (Fdefine_coding_system_internal): Allow a symbol as translation
10684 table. For shift-jis type coding system, allow 4th charset.
10685
10686 2008-02-01 Kenichi Handa <handa@m17n.org>
10687
10688 * coding.c (decode_coding_sjis): Check the first byte rigidly.
10689
10690 * xdisp.c (get_next_display_element): Pass -1 as POS to
10691 FACE_FOR_CHAR if displaying a C-string.
10692
10693 2008-02-01 Kenichi Handa <handa@m17n.org>
10694
10695 * composite.c (get_composition_id): Handle xoff and yoff in a
10696 composition rule.
10697
10698 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
10699 (struct composition): New member lbearing and rbearing.
10700
10701 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
10702 (x_get_glyph_overhangs): Handle a composition glyph.
10703 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
10704
10705 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
10706 composition glyph.
10707
10708 2008-02-01 Kenichi Handa <handa@m17n.org>
10709
10710 * print.c: Include charset.h.
10711 (Vprint_charset_text_property): New variable.
10712 (Qdefault): Extern it.
10713 (PRINT_STRING_NON_CHARSET_FOUND)
10714 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
10715 (print_check_string_result): New variable.
10716 (print_check_string_charset_prop): New function.
10717 (print_prune_charset_plist): New variable.
10718 (print_prune_string_charset): New function.
10719 (print_object): Call print_prune_string_charset if
10720 Vprint_charset_text_property is not t.
10721 (print_interval): Print nothing if interval->plist is nil.
10722 (syms_of_print): Declare Vprint_charset_text_property as a lisp
10723 variable. Init and staticpro print_prune_charset_plist.
10724
10725 2008-02-01 Kenichi Handa <handa@m17n.org>
10726
10727 * fontset.c (new_fontset_from_font_name): Use the specified font
10728 for all characters in the new fontset.
10729
10730 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10731 OBJECT args.
10732
10733 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
10734 OBJECT args for composition too.
10735
10736 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10737 OBJECT args.
10738
10739 2008-02-01 Kenichi Handa <handa@m17n.org>
10740
10741 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
10742
10743 * fontset.c (reorder_font_vector): Adjust for the change of
10744 FONT_DEF format.
10745 (fontset_face): New arg id. Change caller.
10746 (face_for_char): New args pos and object.
10747 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
10748 (fs_query_fontset): Check NAME by Fassoc too.
10749 (Fset_fontset_font): Allow non-XLFD font name.
10750 (Ffontset_info): Adjust for the change of FONT_DEF format.
10751
10752 * fontset.h (face_for_char): Adjust prototype.
10753
10754 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
10755 (append_space, extend_face_to_end_of_line)
10756 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10757 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
10758
10759 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
10760 POS and OBJECT args.
10761
10762 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
10763 POS and OBJECT args.
10764
10765 2008-02-01 Jason Rumney <jasonr@gnu.org>
10766
10767 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
10768 of GlobalAlloc'ed memory.
10769
10770 2008-02-01 Kenichi Handa <handa@m17n.org>
10771
10772 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
10773
10774 * charset.h (charset_table_used): Delete extern.
10775
10776 * charset.c (charset_table_used): Make it static.
10777 (map_charset_chars): Fix args to c_function with.
10778
10779 * chartab.c (map_sub_char_table_for_charset): Fix args to
10780 c_function with.
10781
10782 * coding.h (enum coding_result_code): Delete
10783 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
10784
10785 * coding.c (Qinsufficient_source, Qinconsistent_eol)
10786 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
10787 (Vlast_code_conversion_error): New variables.
10788 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
10789 (ONE_MORE_BYTE): Record error if any instead of signaling an
10790 error. If non-ASCII multibyte char is found, return the negative
10791 value of the code. All callers changed to check it.
10792 (ONE_MORE_BYTE_NO_CHECK): Likewise.
10793 (record_conversion_result): New function. Change all codes setting
10794 coding->result to call this function.
10795 (detect_coding_utf_8, decode_coding_utf_8)
10796 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
10797 Don't use the local variable incomplete.
10798 (emacs_mule_char): Change the second arg to `const'.
10799 (decode_coding): Fix of flushing out unprocessed data.
10800 (make_conversion_work_buffer): Fix making of a work buffer.
10801 (decode_coding_object): Return coding->dst_object.
10802
10803 * fontset.c (set_fontset_font): Fix args.
10804
10805 * lisp.h (CHARACTERBITS): Define as 22.
10806
10807 * process.c (send_process): Be sure to set coding->src_multibyte.
10808
10809 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
10810
10811 2008-02-01 Kenichi Handa <handa@m17n.org>
10812
10813 * xdisp.c (handle_auto_composed_prop): Give limit to
10814 Fnext_single_char_property_change.
10815
10816 2008-02-01 Kenichi Handa <handa@m17n.org>
10817
10818 * composite.c (syms_of_composite): Don't make the composition hash
10819 table weak.
10820
10821 * fontset.c (Fset_fontset_font): Fix docstring.
10822
10823 * lisp.h (detect_coding_system): Adjust prototype.
10824
10825 * fileio.c (kill_workbuf_unwind): Delete this function.
10826 (Finsert_file_contents): Adjust the call of detect_coding_system.
10827 Get conversion_buffer by code_conversion_save. Use the macro
10828 CODING_MAY_REQUIRE_DECODING. After decoding, update
10829 coding_system.
10830
10831 * coding.h (make_conversion_work_buffer): Delete extern.
10832 (code_conversion_save): Extern it.
10833
10834 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
10835 (CODING_GET_INFO): Delete argument eol_type. Change callers.
10836 (decode_coding_utf_8): Don't do eol converion.
10837 (detect_coding_utf_16): Check coding->src_chars, not
10838 coding->src_bytes. Add heuristics for those that have no signature.
10839 (decode_coding_emacs_mule, decode_coding_iso_2022)
10840 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
10841 Don't do eol converion.
10842 (adjust_coding_eol_type): Return a new coding system.
10843 (detect_coding): Don't detect eol. Fix for utf-16 detection.
10844 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
10845 each change.
10846 (decode_coding): Pay attention to undo_list. Do eol conversion for
10847 all types of coding-systems (if necessary).
10848 (Vcode_conversion_work_buf_list): Delete it.
10849 (Vcode_conversion_reused_workbuf): Rename from
10850 Vcode_conversion_reused_work_buf.
10851 (Vcode_conversion_workbuf_name): New variable.
10852 (reused_workbuf_in_use): New variable.
10853 (make_conversion_work_buffer): Delete the arg DEPTH.
10854 (code_conversion_restore): Change argument to cons.
10855 (code_conversion_save): Delete the argument BUFFER. Change callers.
10856 (detect_coding_system): New argument src_chars. Change callers.
10857 Fix for utf-16 detection.
10858 (init_coding_once): Don't use ISO_carriage_return.
10859 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
10860 reused_workbuf_in_use.
10861
10862 2008-02-01 Kenichi Handa <handa@m17n.org>
10863
10864 * keymap.c (store_in_keymap): Pay attention to the case that idx
10865 is a cons specifying a character range.
10866
10867 2008-02-01 Kenichi Handa <handa@m17n.org>
10868
10869 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
10870 HANDLED_RECOMPUTE_PROPS.
10871
10872 * coding.c (Fdefine_coding_system_internal): Fix checking of
10873 ascii compatibility.
10874
10875 2008-02-01 Kenichi Handa <handa@m17n.org>
10876
10877 * charset.c (find_charsets_in_text): Delete unused locale variable.
10878 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
10879
10880 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
10881 Resync charset_list to Vemacs_mule_charset_list.
10882
10883 * keymap.c (store_in_keymap): Pay attention to the case that idx
10884 is a cons specifying a character range.
10885
10886 2008-02-01 Kenichi Handa <handa@m17n.org>
10887
10888 * composite.c (update_compositions): Bind inhibit-read-only, etc
10889 to t before calling remove-list-of-text-properties.
10890
10891 * print.c (print_object): Always print ASCII chars as is.
10892
10893 2008-02-01 Kenichi Handa <handa@m17n.org>
10894
10895 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
10896
10897 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
10898 is a char table.
10899
10900 2008-02-01 Kenichi Handa <handa@m17n.org>
10901
10902 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
10903
10904 2008-02-01 Kenichi Handa <handa@m17n.org>
10905
10906 * xfaces.c (set_lface_from_font_name): Fix for the case that
10907 FONTNAME is not fontset name.
10908
10909 2008-02-01 Kenichi Handa <handa@m17n.org>
10910
10911 * fns.c (base64_encode_1): Fix previous change.
10912
10913 2008-02-01 Kenichi Handa <handa@m17n.org>
10914
10915 * fontset.c (set_fontset_font): New function.
10916 (Fset_fontset_font): If a font is specified for a charset, use
10917 map_charset_chars to store the font spec in a fontset.
10918
10919 2008-02-01 Kenichi Handa <handa@m17n.org>
10920
10921 * fontset.c (fontset_face): Create a fallback fontset on demand.
10922 (make_fontset): Don't create a fallback fontset here.
10923 (free_face_fontset): Free a fallback fontset (if any) too.
10924 (n_auto_fontsets): Delete this variable.
10925 (auto_fontset_alist): New variable.
10926 (new_fontset_from_font_name): Check auto_fontset_alist.
10927 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
10928 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
10929 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
10930 Defsubr Sfontset_list_all.
10931
10932 2008-02-01 Kenichi Handa <handa@m17n.org>
10933
10934 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10935
10936 2008-02-01 Kenichi Handa <handa@m17n.org>
10937
10938 * fontset.c (Fnew_fontset): Check NAME more rigidly.
10939
10940 2008-02-01 Kenichi Handa <handa@m17n.org>
10941
10942 * editfns.c (Fgoto_char): Fix docstring.
10943
10944 2008-02-01 Kenichi Handa <handa@m17n.org>
10945
10946 * insdel.c (insert_from_gap): Adjust intervals correctly.
10947
10948 2008-02-01 Jason Rumney <jasonr@gnu.org>
10949
10950 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
10951 (pfnGetFontUnicodeRanges): New dynamically loaded function.
10952 (w32_initialize): Try to load it.
10953 (x_get_font_repertory): Use it if available.
10954 (w32_encode_char): Add shortcut for unicode output.
10955
10956 * w32fns.c (w32_load_system_font): Default charset to -1.
10957 (x_to_w32_charset): Match all fonts for unicode.
10958 (w32_to_x_charset): New parameter matching. Don't return partial
10959 or wildcard charsets.
10960 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
10961 (w32_codepage_for_font): Return CP_UNICODE for unicode.
10962 (w32_to_x_font): Match charset to real charset.
10963 (enum_font_cb2): Always list unicode versions.
10964
10965 * makefile.w32-in (temacs): Increase EMHEAP.
10966
10967 2008-02-01 Jason Rumney <jasonr@gnu.org>
10968
10969 * w32term.c (w32_encode_char): New charset parameter.
10970 font_info.encoding becomes encoding_type.
10971 (x_get_font_repertory): New function. Warning: stub only!
10972 (x_new_font): Return quickly if font already set.
10973 (x_new_fontset): fontsetname parameter is Lisp_Object.
10974 Use new fs_query_fontset. Try new_fontset_from_font_name.
10975 Use fontset_name for return value.
10976
10977 * w32term.h: Declare x_get_font_repertory.
10978
10979 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
10980 place of find_charset_in_text. Use encode_coding_object in place
10981 of encode_coding.
10982 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
10983 decode_coding.
10984
10985 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
10986 of x_new_fontset.
10987 (w32_load_system_font): Initialize charset as unicode.
10988 font_info.encoding becomes encoding_type.
10989 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
10990 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
10991 (syms_of_w32fns): Set get_font_repertory_func.
10992
10993 * w32console.c: Include character.h. Use terminal_encode_buffer
10994 from term.c.
10995 (write_glyphs): Use new version of encode_terminal_code. Use
10996 encode_coding_object in place of encode_coding.
10997
10998 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
10999 encoding becomes encoding_type.
11000
11001 * term.c (terminal_encode_buffer): Make externally visible.
11002
11003 * makefile.w32-in: Add character.h dependancies.
11004 (character.o, chartab.o): New targets.
11005
11006 2008-02-01 Kenichi Handa <handa@m17n.org>
11007
11008 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
11009 CODING_ID_EOL_TYPE.
11010
11011 2008-02-01 Andreas Schwab <schwab@suse.de>
11012
11013 * coding.c (produce_chars): Revert last change.
11014
11015 2008-02-01 Kenichi Handa <handa@m17n.org>
11016
11017 * charset.h (charset_unicode): Extern it.
11018
11019 * charset.c (string_xstring_p): Check by (C >= 0x100).
11020 (find_charsets_in_text): Change format of the arc CHARSETS. New
11021 arg MULTIBYTE.
11022 (Ffind_charset_region, Ffind_charset_string): Adjust for the
11023 change of find_charsets_in_text.
11024 (Fsplit_char): Fix doc. Never return unknown.
11025
11026 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
11027
11028 * coding.c (Fdefine_coding_system_alias): Update
11029 Vcoding_system_list.
11030
11031 * fontset.c (load_font_get_repertory): Pay attention to the case
11032 that ENCODING of a font is specified by a char-table.
11033
11034 * xterm.c (x_get_font_repertory): Handle the case that the
11035 encoding of font is other than Unicode.
11036
11037 2008-02-01 Kenichi Handa <handa@m17n.org>
11038
11039 * term.c (encode_terminal_code): Don't handle glyph-table. Check
11040 if a character is encodable by the terminal coding system. If
11041 not, produces proper number of `?'s. Update
11042 terminal_encode_buffer and terminal_encode_buf_size if necessary.
11043 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
11044
11045 2008-02-01 Kenichi Handa <handa@m17n.org>
11046
11047 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
11048 variables.
11049 (encode_terminal_code): Change argument. Encode multiple
11050 characters at once. Store the result of encoding in
11051 terminal_encode_buffer.
11052 (write_glyphs, insert_glyphs): Adjust for the change of
11053 encode_terminal_code.
11054 (term_init): Initialize terminal_encode_buffer and
11055 terminal_encode_buf_size.
11056
11057 * coding.c (consume_chars): If coding->src_object is nil, don't
11058 check annotation.
11059
11060 2008-02-01 Kenichi Handa <handa@m17n.org>
11061
11062 * character.c (char_string): Use ASCII_CHAR_P instead of
11063 SINGLE_BYTE_CHAR_P.
11064
11065 2008-02-01 Kenichi Handa <handa@m17n.org>
11066
11067 * xdisp.c (handle_auto_composed_prop): Check if the last
11068 characters of auto-composed region is newly composed with the
11069 following characters.
11070 (handle_composition_prop): Fix checking of point being inside
11071 composition.
11072
11073 2008-02-01 Kenichi Handa <handa@m17n.org>
11074
11075 * fns.c (concat): Don't change multibyteness of the result by
11076 concatenating an 8-bit character.
11077
11078 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
11079 multibyteness of the result when newelt is an 8-bit character.
11080
11081 2008-02-01 Dave Love <fx@gnu.org>
11082
11083 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
11084 EMACS_INT.
11085
11086 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
11087
11088 * xfaces.c (face_numeric_value): Declare dim size_t.
11089 (Finternal_lisp_face_equal_p): Remove unused f.
11090
11091 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
11092 (MATRIX_ROW): Remove unused vars.
11093 (draw_glyphs, x_insert_glyphs, fast_find_position)
11094 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
11095 byte/char counts.
11096
11097 * regex.c (regex_compile): Remove unused var.
11098
11099 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
11100
11101 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11102 (Faccessible_keymaps, where_is_internal): Remove unused vars.
11103
11104 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
11105
11106 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
11107
11108 * fileio.c (Fwrite_region): Remove unused var.
11109
11110 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
11111 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
11112
11113 * composite.c (Fremove_list_of_text_properties): Declare.
11114
11115 * coding.c (inhibit_pre_post_conversion): Remove (unused).
11116 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
11117 (coding_inherit_eol_type): Remove unused attrs.
11118 (detect_coding): Cast arg of detect_eol.
11119
11120 * charset.c (syms_of_charset): Remove unused var p.
11121 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
11122 byte/char counts.
11123
11124 * casetab.c (set_case_table): Remove unused var.
11125
11126 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
11127 unused vars.
11128
11129 2008-02-01 Dave Love <fx@gnu.org>
11130
11131 * xterm.c (x_bitmap_mask): Declare.
11132
11133 2008-02-01 Dave Love <fx@gnu.org>
11134
11135 * xterm.c (x_term_init): Fix type error.
11136
11137 * lisp.h: Add Funibyte_char_to_multibyte.
11138
11139 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
11140 (Fset_coding_system_priority): Doc fix.
11141
11142 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
11143
11144 * indent.c (check_composition): Make start and end EMACS_INT.
11145
11146 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
11147
11148 * xdisp.c (handle_composition_prop, check_point_in_composition):
11149 Make buffer positions EMACS_INT.
11150
11151 * composite.c (find_composition, run_composition_function)
11152 (update_compositions, Ffind_composition_internal): Make buffer
11153 positions EMACS_INT.
11154
11155 * composite.h (find_composition, update_compositions): Make
11156 position args EMACS_INT.
11157
11158 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
11159
11160 * intervals.c (get_property_and_range):
11161 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
11162
11163 * unexalpha.c: Don't include varargs.h.
11164
11165 2008-02-01 Dave Love <fx@gnu.org>
11166
11167 * coding.h (ENCODE_UTF_8): New.
11168
11169 * Makefile.in (gtkutil.o): Depend on coding.h.
11170
11171 * coding.c (Fset_coding_system_priority): Doc fix.
11172
11173 2008-02-01 Kenichi Handa <handa@m17n.org>
11174
11175 * fileio.c (Finsert_file_contents): Call setup_coding_system in
11176 the case of auto saving.
11177
11178 2008-02-01 Andreas Schwab <schwab@suse.de>
11179
11180 * chartab.c (map_char_table, map_char_table_for_charset): Protect
11181 `range' from GC.
11182
11183 2008-02-01 Kenichi Handa <handa@m17n.org>
11184
11185 * coding.c (decode_coding_sjis): Check bytes more rigidly.
11186
11187 2008-02-01 Kenichi Handa <handa@m17n.org>
11188
11189 * fileio.c (choose_write_coding_system): Return a decided coding system.
11190 (Fwrite_region): Set Vlast_coding_system_used to the return value
11191 of choose_write_coding_system.
11192
11193 2008-02-01 Kenichi Handa <handa@m17n.org>
11194
11195 * charset.c (Fset_charset_priority): Pay attention to duplicated
11196 arguments.
11197
11198 * coding.c (QCcategory): New variable.
11199 (syms_of_coding): Defsym it. Set all elements of
11200 Vcoding_category_table and their symbol values.
11201 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
11202 coding-category-XXX, and coding-category-list.
11203 (Fdefine_coding_system_internal): Add category in the plist.
11204
11205 2008-02-01 Kenichi Handa <handa@m17n.org>
11206
11207 * callproc.c (Fcall_process): Handle carryover correctly.
11208
11209 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
11210 (raw_text_coding_system): Check NILP (coding_system).
11211 (coding_inherit_eol_type): Check NILP (coding_system) and
11212 NILP (parent).
11213 (consume_chars): Fix for the case of raw-text.
11214
11215 * process.c (read_process_output): Handle carryover correctly.
11216
11217 2008-02-01 Dave Love <fx@gnu.org>
11218
11219 * regex.c (re_search_2): Fix last change.
11220
11221 2008-02-01 Kenichi Handa <handa@m17n.org>
11222
11223 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
11224 target_multibyte. Even in a unibyte case, return a converted
11225 multibyte char.
11226 (GET_CHAR_AFTER): New macro.
11227 (PATFETCH): Translate via multibyte char.
11228 (HANDLE_UNIBYTE_RANGE): Delete this macro.
11229 (SETUP_MULTIBYTE_RANGE): New macro.
11230 (regex_compile): Setup compiled code so that its multibyteness
11231 matches that of a target. Fix the handling of "[X-YZ]" using
11232 SETUP_MULTIBYTE_RANGE.
11233 (analyse_first) <charset>: For filling fastmap for all multibyte
11234 characters, don't check by BASE_LEADING_CODE_P.
11235 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
11236 the same as RE_MULTIBYTE_P (bufp) now.
11237 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
11238 (TARGET_CHAR_AND_LENGTH): Delete this macro.
11239 (TRANSLATE_VIA_MULTIBYTE): New macro.
11240 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
11241 It is the same as RE_MULTIBYTE_P (bufp) now.
11242 <exactn>: Translate via multibyte.
11243 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
11244 translate it.
11245 <charset, charset_not>: Fetch a character by
11246 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
11247 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
11248 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
11249 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
11250 by GET_CHAR_AFTER.
11251 (bcmp_translate): Likewise.
11252
11253 * search.c (compile_pattern): Check the member target_multibyte,
11254 not the member multibyte of buf.
11255
11256 * lread.c (read1): While reading a string, set force_singlebyte
11257 and force_multibyte correctly.
11258
11259 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
11260 up of unibyte_to_multibyte_table.
11261
11262 2008-02-01 Kenichi Handa <handa@m17n.org>
11263
11264 * coding.c (setup_coding_system): If coding has
11265 post-read-conversion or pre-write-conversion, set
11266 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
11267 respectively.
11268 (decode_coding_gap): Run post-read-conversion if any.
11269
11270 * fileio.c (Finsert_file_contents): Even if we read into a
11271 unibyte buffer, check if we must decode the result or not.
11272
11273 2008-02-01 Kenichi Handa <handa@m17n.org>
11274
11275 * coding.c (make_conversion_work_buffer): Change the work buffer
11276 name to the same one as that of Emacs 21.
11277
11278 2008-02-01 Kenichi Handa <handa@m17n.org>
11279
11280 * coding.h (make_conversion_work_buffer): Adjust prototype.
11281 (code_conversion_restore): Don't extern it.
11282
11283 * coding.c (detected_mask): Delete unused variable.
11284 (decode_coding_iso_2022): Pay attention to the byte sequence of
11285 CTEXT extended segment, and retain those bytes as is.
11286 (decode_coding_ccl): Delete unused variable `valids'.
11287 (setup_coding_system): Delete unused variable `category'.
11288 (consume_chars): Delete unused variable `category'. Make it work
11289 for non-multibyte case.
11290 (make_conversion_work_buffer): Change argument.
11291 (saved_coding): Delete unused variable.
11292 (code_conversion_restore): Don't check saved_coding->destination.
11293 (code_conversion_save): New function.
11294 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
11295 instead of record_unwind_protect.
11296 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
11297 (detect_coding_system): Delete unused variable `mask'.
11298 (Fdefine_coding_system_internal): Delete unused variable id.
11299
11300 * fileio.c (kill_workbuf_unwind): New function.
11301 (Finsert_file_contents): On replacing, call
11302 make_conversion_work_buffer with correct args, and call
11303 record_unwind_protect with the first arg kill_workbuf_unwind.
11304
11305 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
11306
11307 2008-02-01 Kenichi Handa <handa@m17n.org>
11308
11309 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
11310 (fontset_add): Fix for the case that TO is less than TO1.
11311 (Ffontset_info): Don't use fallback fontset on checking the
11312 default fontset.
11313 (dump_fontset): New function for debugging.
11314
11315 * coding.c (Fdefine_coding_system_internal): Fix for the case that
11316 coding_type is Qcharset.
11317
11318 2008-02-01 Kenichi Handa <handa@m17n.org>
11319
11320 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
11321 (map_char_table): Don't inherit the value from the parent on
11322 initializing VAL. Adjust for the above change.
11323
11324 2008-02-01 Kenichi Handa <handa@m17n.org>
11325
11326 * coding.c (Qsignature, Qendian): Delete these variables.
11327 (syms_of_coding): Don't initialize them.
11328 (CATEGORY_MASK_UTF_16_AUTO): New macro.
11329 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
11330 detect_info->found.
11331 (decode_coding_utf_16): Don't detect BOM here.
11332 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
11333 is NOT utf_16_without_bom.
11334 (setup_coding_system): For a coding system of type utf-16, check
11335 if the attribute :endian is Qbig or not (not nil or not), and set
11336 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
11337 (detect_coding): If coding type is utf-16 and BOM detection is
11338 required, detect it.
11339 (Fdefine_coding_system_internal): For a coding system of type
11340 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
11341
11342 2008-02-01 Kenichi Handa <handa@m17n.org>
11343
11344 * coding.c (coding_set_source): Fix for the case that the current
11345 buffer is different from coding->src_object.
11346 (decode_coding_object): Don't use the conversion work buffer if
11347 DST_OBJECT is a buffer.
11348
11349 2008-02-01 Dave Love <fx@gnu.org>
11350
11351 * lread.c (read_emacs_mule_char) [len==2]: Index
11352 emacs_mule_charset correctly.
11353
11354 2008-02-01 Dave Love <fx@gnu.org>
11355
11356 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
11357 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
11358 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
11359 treated specially.)
11360 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
11361 (detected_mask): Remove Big5 bits.
11362
11363 2008-02-01 Kenichi Handa <handa@m17n.org>
11364
11365 The following changes are to make the font rescaling facility
11366 compatible with Emacs 21.
11367
11368 * xfaces.c (Vface_font_rescale_alist): Rename from
11369 Vface_resizing_fonts.
11370 (struct font_name): Rename member resizing_ratio to rescale_ratio.
11371 (font_rescale_ratio): Rename from font_resizing_ratio.
11372 (split_font_name): Set font->rescale_ratio.
11373 (better_font_p): Pay attention to font->rescale_ratio.
11374 (build_scalable_font_name): Likewise. Change RESX, and RESY
11375 fields.
11376 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
11377
11378 2008-02-01 Kenichi Handa <handa@m17n.org>
11379
11380 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
11381 (Qutf_16_le): Remove these variables.
11382 (syms_of_coding): Don't DEFSYM them.
11383 (decode_coding_utf_16): Fix handling of BOM.
11384 (encode_coding_utf_16): Fix handling of BOM.
11385
11386 2008-02-01 Kenichi Handa <handa@m17n.org>
11387
11388 * fileio.c (Finsert_file_contents): On replacing, before decoding
11389 the file into the work buffer, set point of the work buffer to the end.
11390
11391 2008-02-01 Dave Love <fx@gnu.org>
11392
11393 * coding.c (Fcheck_coding_systems_region): Fix type errors.
11394
11395 2008-02-01 Dave Love <fx@gnu.org>
11396
11397 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11398 and fix C types.
11399
11400 2008-02-01 Kenichi Handa <handa@m17n.org>
11401
11402 * xdisp.c (SKIP_GLYPHS): New macro.
11403 (set_cursor_from_row): Pay attention to string display properties.
11404
11405 * category.c (copy_category_entry): Fix for the case that RANGE
11406 is an integer.
11407
11408 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
11409
11410 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
11411
11412 2008-02-01 Kenichi Handa <handa@m17n.org>
11413
11414 * charset.c (Fcharset_id_internal): New function.
11415 (syms_of_charset): Defsubr it.
11416
11417 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
11418 with the last arg charset_list acquired from coding.
11419 (Fdefine_coding_system_internal): For ccl-based coding system, fix
11420 the attribute coding_attr_ccl_valids.
11421
11422 * coding.h (enum define_coding_ccl_arg_index): Set the first
11423 member coding_arg_ccl_decoder to coding_arg_max.
11424
11425 * ccl.h (ccl_driver): Adjust prototype.
11426
11427 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
11428 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
11429 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
11430 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
11431 last arg Qnil.
11432
11433 2008-02-01 Kenichi Handa <handa@m17n.org>
11434
11435 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
11436 call encode_char.
11437
11438 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
11439
11440 2008-02-01 Dave Love <fx@gnu.org>
11441
11442 * composite.c (syms_of_composite): Make composition_hash_table weak.
11443
11444 2008-02-01 Kenichi Handa <handa@m17n.org>
11445
11446 * dispextern.h (check_face_attributes, generate_ascii_font_name)
11447 (font_name_registry): Don't extern them.
11448 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
11449
11450 * fontset.h (Qfontset): Don't extern it.
11451 (new_fontset_from_font_name): Extern it.
11452
11453 * fontset.c: Give 8 extra slots to fontset objects.
11454 (Qfontset_info): New variable.
11455 (syms_of_fontset): Defsym it.
11456 (FONTSET_FALLBACK): New macro.
11457 (fontset_face): Try also the default fontset.
11458 (make_fontset): Realize a fallback fontset from the default fontset.
11459 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
11460 using split_font_name_into_vector and build_font_name_from_vector.
11461 (Fset_fontset_font): Access the elements of font_spec by enum
11462 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
11463 name by using split_font_name_into_vector.
11464 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
11465 generate a proper font name from the fontset name. Update
11466 Vfontset_alias_alist.
11467 (n_auto_fontsets): New variable.
11468 (new_fontset_from_font_name): New function.
11469 (Ffont_info): Store the information about fonts generated from the
11470 default fontset in the first extra slot of the returned char-table.
11471
11472 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
11473 (font_name_registry): Delete function.
11474 (split_font_name_into_vector): New function.
11475 (build_font_name_from_vector): New function.
11476 (font_list): The argument REGISTRY is now a list of registry names.
11477 (choose_face_font): If we are choosing an ASCII font, and ATTRS
11478 specifies an explicit font name, return the name as is. Make a
11479 list of registy names.
11480
11481 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
11482 of x_new_fontset.
11483 (Fx_create_frame): Don't call x_new_fontset here. Just use
11484 x_list_fonts to check the existence of fonts.
11485
11486 * xterm.h (x_new_fontset): Adjust prototype.
11487
11488 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
11489 string. Use new_fontset_from_font_name to create a fontset from a
11490 font name.
11491
11492 2008-02-01 Kenichi Handa <handa@m17n.org>
11493
11494 * syntax.c (Vfind_word_boundary_function_table): New name for
11495 Vnext_word_boundary_function_table.
11496 (find-word-boundary-function-table): New name for
11497 next-word-boundary-function-table.
11498
11499 2008-02-01 Dave Love <fx@gnu.org>
11500
11501 * Makefile.in: Fix some dependencies.
11502
11503 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
11504 set it to nil before returning.
11505
11506 * composite.c (update_compositions): Fix type error.
11507
11508 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
11509
11510 2008-02-01 Kenichi Handa <handa@m17n.org>
11511
11512 * xterm.c (x_new_font): Optimize for the case that the font is
11513 already set for the frame.
11514
11515 2008-02-01 Kenichi Handa <handa@m17n.org>
11516
11517 * chartab.c (char_table_ascii): Check if the char table contents
11518 is sub-char-table or not.
11519 (char_table_set, char_table_set_range): Fix argument to
11520 char_table_ascii.
11521
11522 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
11523 (detect_coding_utf_8, detect_coding_utf_16)
11524 (detect_coding_emacs_mule, detect_coding_iso_2022)
11525 (detect_coding_sjis, detect_coding_big5)
11526 (detect_coding_ccl, detect_coding_charset): Change argument MASK
11527 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
11528 sequence is valid in this coding system. Change callers.
11529 (MAX_ANNOTATION_LENGTH): New macro.
11530 (ADD_ANNOTATION_DATA): New macro.
11531 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
11532 ADD_ANNOTATION_DATA. Change the format of annotation data.
11533 (ADD_CHARSET_DATA): New macro.
11534 (emacs_mule_char): New argument ID. Change callers.
11535 (decode_coding_emacs_mule, decode_coding_iso_2022)
11536 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11537 Produce charset annotation data in coding->charbuf.
11538 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
11539 to charset annotation data in coding->charbuf.
11540 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
11541 coding->common_flags if the coding system is iso-2022 based and
11542 uses designation.
11543 (produce_composition): Adjust for the new annotation data format.
11544 (produce_charset): New function.
11545 (produce_annotation): Handle charset annotation.
11546 (handle_composition_annotation, handle_charset_annotation): New
11547 functions.
11548 (consume_chars): Handle charset annotation. Utilize the above two
11549 functions.
11550 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
11551 buffer, get the deleted text as a string and set
11552 coding->src_object to that string.
11553 (detect_coding, detect_coding_system): Use the new struct
11554 coding_detection_info.
11555
11556 * coding.h (struct coding_detection_info): New structure.
11557 (struct coding_system): Adjust prototype of the member `detector'.
11558 (CODING_ANNOTATE_CHARSET_MASK): New macro.
11559
11560 2008-02-01 Kenichi Handa <handa@m17n.org>
11561
11562 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
11563
11564 2008-02-01 Dave Love <fx@gnu.org>
11565
11566 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
11567 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
11568 to new local and nullify apropos_accumulate before returning.
11569 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
11570
11571 2008-02-01 Kenichi Handa <handa@m17n.org>
11572
11573 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
11574 correctly.
11575
11576 2008-02-01 Dave Love <fx@gnu.org>
11577
11578 * fns.c (Flanginfo): Call synchronize_system_time_locale.
11579
11580 2008-02-01 Kenichi Handa <handa@m17n.org>
11581
11582 The following changes are to make character composition happen
11583 automatically on displaying.
11584
11585 * Makefile.in (lisp, shortlisp): Add composite.elc.
11586
11587 * composite.h (Qauto_composed, Vauto_composition_function)
11588 (Qauto_composition_function): Extern them.
11589
11590 * composite.c (Vcomposition_function_table)
11591 (Qcomposition_function_table): Delete variables.
11592 (Qauto_composed, Vauto_composition_function)
11593 (Qauto_composition_function): New variables.
11594 (run_composition_function): Don't call
11595 compose-chars-after-function.
11596 (update_compositions): Clear `auto-composed' text property.
11597 (compose_chars_in_text): Delete this function.
11598 (syms_of_composite): Staticpro Qauto_composed and
11599 Qauto_composition_function. Declare Vauto_composition_function as
11600 a Lisp variable.
11601
11602 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
11603
11604 * xdisp.c (it_props): Add an entry for Qauto_composed.
11605 (handle_auto_composed_prop): New function.
11606
11607 * xselect.c (selection_data_to_lisp_data): Don't call
11608 compose_chars_in_text.
11609
11610 2008-02-01 Dave Love <fx@gnu.org>
11611
11612 * keyboard.c (read_char): Modify checking around use of
11613 Vkeyboard_translate_table.
11614
11615 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11616 and fix C types.
11617
11618 2008-02-01 Kenichi Handa <handa@m17n.org>
11619
11620 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
11621 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11622 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
11623 the case that the last byte is '\r' correctly.
11624 (decode_coding): Flush out the unprocessed data correctly.
11625 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
11626
11627 2008-02-01 Dave Love <fx@gnu.org>
11628
11629 * xterm.c (XTread_socket): Fix changes for defined keysyms.
11630 Add XK_ISO... case.
11631 (xaw_scroll_callback): Revert last change.
11632
11633 2008-02-01 Kenichi Handa <handa@m17n.org>
11634
11635 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
11636
11637 2008-02-01 Kenichi Handa <handa@m17n.org>
11638
11639 * xfaces.c (Vface_resizing_fonts): New variable.
11640 (struct font_name): New member `resizing_ratio'.
11641 (font_resizing_ratio): New function.
11642 (split_font_name): Set font->resizing_ratio.
11643 (better_font_p): Pay attention to font->resizing_ratio.
11644 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
11645 RESX, and RESY fields.
11646 (try_alternative_families): Try scalable fonts if
11647 Vscalable_fonts_allowed is not Qt.
11648 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
11649
11650 2008-02-01 Dave Love <fx@gnu.org>
11651
11652 * xterm.c (xaw_scroll_callback): Cast correctly.
11653
11654 2008-02-01 Dave Love <fx@gnu.org>
11655
11656 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
11657 (lispy_kana_keys): Comment out.
11658 (make_lispy_event) [XK_kana_A]: Comment out.
11659
11660 * xterm.c (xaw_scroll_callback): Cast call_data.
11661 (XTread_socket): Deal with ASCII keysyms.
11662 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
11663
11664 2008-02-01 Dave Love <fx@gnu.org>
11665
11666 * xterm.c (Vx_keysym_table): New.
11667 (syms_of_xterm): Initialize it.
11668 (XTread_socket): Use it.
11669 From head: Eliminate incorrect optimization that tried to avoid
11670 decoding the output of X*LookupString.
11671 (x_get_font_repertory): Delete charset declaration.
11672
11673 2008-02-01 Kenichi Handa <handa@m17n.org>
11674
11675 * coding.c (detect_coding_charset): If only ASCII bytes are found,
11676 return 0.
11677 (Fdefine_coding_system_internal): Setup
11678 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
11679
11680 2008-02-01 Dave Love <fx@gnu.org>
11681
11682 * coding.c (Fcheck_coding_system): Doc fix.
11683
11684 * editfns.c (Finsert_byte): Return a proper value.
11685
11686 2008-02-01 Kenichi Handa <handa@m17n.org>
11687
11688 * coding.c (decode_coding): Fix args to translate_chars. Pay
11689 attention to Vstandard_translation_table_for_decode.
11690 (encode_coding): Fix args to translate_chars. Pay attention to
11691 Vstandard_translation_table_for_encode.
11692
11693 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
11694 SINGLE_BYTE_CHAR_P.
11695
11696 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
11697 not by SINGLE_BYTE_CHAR_P.
11698
11699 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
11700 SINGLE_BYTE_CHAR_P.
11701
11702 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
11703 SINGLE_BYTE_CHAR_P.
11704
11705 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
11706 by SINGLE_BYTE_CHAR_P.
11707
11708 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
11709 SINGLE_BYTE_CHAR_P.
11710
11711 2008-02-01 Dave Love <fx@gnu.org>
11712
11713 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
11714
11715 2008-02-01 Dave Love <fx@gnu.org>
11716
11717 * fns.c (Flanginfo): Fix typo.
11718
11719 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
11720
11721 2008-02-01 Kenichi Handa <handa@m17n.org>
11722
11723 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
11724 (detect_coding_emacs_mule, detect_coding_iso_2022)
11725 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
11726 incomplete byte sequence. Don't update *mask when correctly detected.
11727 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
11728 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
11729 (detect_coding, detect_coding_system): Adjust for the changes above.
11730
11731 2008-02-01 Kenichi Handa <handa@m17n.org>
11732
11733 * character.c (char_string): Rename from
11734 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
11735 (string_char): Rename from string_char.
11736
11737 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
11738 if C is greater than MAX_3_BYTE_CHAR.
11739 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
11740 string_char instead of string_char_with_unification.
11741
11742 2008-02-01 Dave Love <fx@gnu.org>
11743
11744 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
11745
11746 2008-02-01 Kenichi Handa <handa@m17n.org>
11747
11748 * keymap.c (push_key_description): Pay attention to force_multibyte.
11749
11750 * regex.c (re_search_2): Fix for the case of unibyte buffer.
11751
11752 2008-02-01 Dave Love <fx@gnu.org>
11753
11754 * charset.c (define_charset_internal): Rename `supprementary'.
11755
11756 * Makefile.in (lisp, shortlisp): Remove latin-N.
11757
11758 2008-02-01 Dave Love <fx@gnu.org>
11759
11760 * xfns.c (x_window, x_window): Use use_xim.
11761
11762 * xterm.c (use_xim): Initialize.
11763 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11764 (x_term_init): Maybe set use_xim.
11765
11766 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11767
11768 2008-02-01 Kenichi Handa <handa@m17n.org>
11769
11770 * search.c (search_buffer): Fix case-fold-search of multibyte
11771 characters.
11772 (boyer_moore): Rename the last argument to char_high_bits.
11773
11774 2008-02-01 Kenichi Handa <handa@m17n.org>
11775
11776 * xdisp.c (display_string): Fix for the case of zero width glyph.
11777
11778 * xfns.c (x_set_font): Change the error message of the case that
11779 x_new_fontset returns Qt.
11780
11781 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
11782 (Finternal_set_lisp_face_attribute): Use signal_error for the
11783 error of invalid fontset.
11784
11785 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
11786 fontset, return Qt.
11787
11788 2008-02-01 Dave Love <fx@gnu.org>
11789
11790 * unexelf.c (unexec): Make .got handling not SGI-specific.
11791
11792 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
11793
11794 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
11795
11796 * keyboard.c (read_key_sequence): Fix type error.
11797
11798 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
11799 type error.
11800
11801 * fontset.c (fontset_add): Return Lisp_Object.
11802
11803 2008-02-01 Dave Love <fx@gnu.org>
11804
11805 * charset.h (charset_ordered_list_tick): Declare extern.
11806
11807 2008-02-01 Kenichi Handa <handa@m17n.org>
11808
11809 The following changes (and some of 2008-02-01 changes of mine) are
11810 for handling syntax, category, and case conversion for unibyte
11811 characters by converting them to multibyte on the fly. With these
11812 changes, we don't have to setup syntax and case tables for unibyte
11813 characters in each language environment.
11814
11815 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
11816 multibyte if necessary.
11817
11818 * bytecode.c (Fbyte_code): Likewise.
11819
11820 * character.h (LEADING_CODE_LATIN_1_MIN)
11821 (LEADING_CODE_LATIN_1_MAX): New macros.
11822 (unibyte_to_multibyte_table): Extern it.
11823 (unibyte_char_to_multibyte): New macro.
11824 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
11825 (CHAR_LEADING_CODE): New macro.
11826 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
11827
11828 * character.c (unibyte_to_multibyte_table): New variable.
11829 (unibyte_char_to_multibyte): Move to character.h and define as macro.
11830 (multibyte_char_to_unibyte): If C is an eight-bit character,
11831 convert it to the corresponding byte value.
11832
11833 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
11834 not 1, signals an error. Update the elements of
11835 unibyte_to_multibyte_table.
11836 (init_charset_once): Initialize unibyte_to_multibyte_table.
11837 (syms_of_charset): Define the charset `iso-8859-1'.
11838
11839 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
11840 as is without converting it to unibyte. In a unibyte buffer,
11841 convert C to multibyte before checking the syntax.
11842
11843 * lisp.h (unibyte_char_to_multibyte): Delete extern.
11844
11845 * minibuf.c (Fminibuffer_complete_word): Use the macro
11846 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
11847
11848 * regex.h (struct re_pattern_buffer): New member target_multibyte.
11849
11850 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
11851 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
11852 that is zero, convert an eight-bit char to multibyte.
11853 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
11854 non-emacs case.
11855 (PATFETCH): Convert an eight-bit char to multibyte.
11856 (HANDLE_UNIBYTE_RANGE): New macro.
11857 (regex_compile): Setup the compiled pattern for multibyte chars
11858 even if the given regex string is unibyte. Use PATFETCH_RAW
11859 instead of PATFETCH in many places. To handle `charset'
11860 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
11861 only for ASCII chars.
11862 (analyse_first) <exactn>: Simplify because the compiled pattern
11863 is multibyte.
11864 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
11865 <charset>: Use CHAR_LEADING_CODE to get leading codes.
11866 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
11867 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
11868 multibyte always 1.
11869 (re_search_2): In emacs, set the locale variable multibyte to 1,
11870 otherwise to 0. New local variable target_multibyte. Check it
11871 to decide the multibyteness of STR1 and STR2. If
11872 target_multibyte is zero, convert unibyte chars to multibyte
11873 before translating and checking fastmap.
11874 (TARGET_CHAR_AND_LENGTH): New macro.
11875 (re_match_2_internal): In emacs, set the locale variable multibyte
11876 to 1, otherwise to 0. New local variable target_multibyte. Check
11877 it to decide the multibyteness of STR1 and STR2. Use
11878 TARGET_CHAR_AND_LENGTH to fetch a character from D.
11879 <charset, charset_not>: If multibyte is nonzero, check fastmap
11880 only for ASCII chars. Call bcmp_translate with
11881 target_multibyte, not with multibyte.
11882 <begline>: Declare the local variable C as `unsigned'.
11883 (bcmp_translate): Change the last arg name to target_multibyte.
11884
11885 * search.c (compile_pattern_1): Don't adjust the multibyteness of
11886 the regexp pattern and the matching target. Set cp->buf.multibyte
11887 to the multibyteness of the regexp pattern. Set
11888 cp->but.target_multibyte to the multibyteness of the matching target.
11889 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
11890 FETCH_STRING_CHAR_ADVANCE.
11891 (Freplace_match): Convert unibyte chars to multibyte.
11892
11893 * syntax.c (char_quoted, back_comment, scan_words)
11894 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
11895 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
11896 unibyte chars to multibyte.
11897 (skip_chars): Delete the arg syntaxp, and move the code for
11898 handling syntaxes to skip_syntaxes. Change callers.
11899 Fix the case that the multibyteness of STRING and the current
11900 buffer doesn't match.
11901 (skip_syntaxes): New function.
11902 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
11903 SINGLE_BYTE_CHAR_P.
11904
11905 2008-02-01 Kenichi Handa <handa@m17n.org>
11906
11907 * xfaces.c (QCfontset): New variable.
11908 (LFACE_FONTSET): New macro.
11909 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
11910 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
11911 (Finternal_set_lisp_face_attribute)
11912 (Finternal_get_lisp_face_attribute): Handle QCfontset.
11913 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
11914 check also LFACE_FONTSET_INDEX.
11915 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
11916 attrs[LFACE_FONT_INDEX].
11917 (syms_of_xfaces): Intern and staticpro QCfontset.
11918
11919 * dispextern.h (enum lface_attribute_index): New member
11920 LFACE_FONTSET_INDEX.
11921
11922 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
11923
11924 2008-02-01 Kenichi Handa <handa@m17n.org>
11925
11926 * coding.c (coding_set_destination): Fix coding->destination for
11927 the case converting a region.
11928 (encode_coding_utf_8): Encode eight-bit chars as single byte.
11929 (encode_coding_object): Fix coding->dst_pos and
11930 coding->dst_pos_byte for the case converting a region.
11931
11932 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
11933
11934 * character.h (BYTE8_STRING): New macro.
11935
11936 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
11937
11938 2008-02-01 Kenichi Handa <handa@m17n.org>
11939
11940 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
11941 characters by octal form.
11942
11943 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11944
11945 * buffer.h (_fetch_multibyte_char_len): Delete extern.
11946 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
11947 _fetch_multibyte_char_len.
11948 (FETCH_CHAR_AS_MULTIBYTE): New macro.
11949
11950 * casetab.c (set_canon, set_identity, shuffle): Simplify.
11951
11952 * casefiddle.c (casify_object): Simplify. Handle the case that
11953 the case conversion change the byte length.
11954 (casify_region): Likewise.
11955
11956 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
11957
11958 * character.c (_fetch_multibyte_char_len): Delete this variable.
11959 (syms_of_character): Setup Vprintable_chars.
11960
11961 * editfns.c (Fchar_equal): Fix for the unibyte case.
11962 (Finsert_byte): New function.
11963 (syms_of_editfns): Defsubr it.
11964
11965 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
11966 of direct code 0x3ffff.
11967
11968 * search.c (Freplace_match): Fix for the unibyte case.
11969
11970 2008-02-01 Kenichi Handa <handa@m17n.org>
11971
11972 * lread.c (safe_to_load_p): Fix the logic.
11973
11974 * syntax.c (scan_words): Don't treat characters belonging to
11975 different scripts as constituting a word.
11976
11977 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
11978
11979 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
11980
11981 * emacs.c (main): In the case of --unibyte, instead of aborting on
11982 finding non-empty buffer, make it unibyte.
11983
11984 2008-02-01 Kenichi Handa <handa@m17n.org>
11985
11986 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
11987 to create a fontset.
11988
11989 2008-02-01 Dave Love <fx@gnu.org>
11990
11991 * character.c (Funibyte_char_to_multibyte): Doc fix.
11992
11993 * xfns.c [HAVE_STDLIB_H]: Fix last change.
11994
11995 2008-02-01 Kenichi Handa <handa@m17n.org>
11996
11997 * fontset.c (fontset_add): Make the type `int'.
11998 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
11999
12000 * character.c (unibyte_char_to_multibyte)
12001 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
12002 charset_unibyte, not charset_primary.
12003
12004 * charset.h (charset_unibyte): Extern it instead of charset_primary.
12005
12006 * charset.c (charset_unibyte): Rename from charset_primary.
12007 (Funibyte_charset): Rename from Fprimary_charset.
12008 (Fset_unibyte_charset): Rename from Fset_primary_charset.
12009 (syms_of_charset): Adjust for the above changes.
12010
12011 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12012 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12013 it->multibyte_p is zero.
12014
12015 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
12016 Delete extern.
12017
12018 2008-02-01 Kenichi Handa <handa@m17n.org>
12019
12020 * coding.c (Fdefine_coding_system_internal): Fix category setting
12021 for a coding system of type iso-2022.
12022
12023 2008-02-01 Kenichi Handa <handa@m17n.org>
12024
12025 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
12026
12027 2008-02-01 Kenichi Handa <handa@m17n.org>
12028
12029 * syntax.c (Vnext_word_boundary_function_table): New variable.
12030 (next-word-boundary-function-table): Declare it as a Lisp variable
12031 in syms_of_syntax.
12032 (scan_words): Call functions in Vnext_word_boundary_function_table
12033 if any.
12034
12035 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
12036
12037 * fontset.c (fs_load_font): If fontp->charset is not negative,
12038 return fontp without setting its members.
12039
12040 2008-02-01 Dave Love <fx@gnu.org>
12041
12042 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
12043
12044 * m/sparc.h (HAVE_ALLOCA): Delete.
12045
12046 * s/irix6-5.h: Don't include strings.h.
12047 (bcopy, bzero, bcmp): Don't undef.
12048
12049 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
12050
12051 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
12052 (TIOCSIGSEND): Don't test IRIX6.
12053 (bcopy, bzero, bcmp): Define conditionally.
12054
12055 2008-02-01 Kenichi Handa <handa@m17n.org>
12056
12057 * buffer.c (Qas, Qmake, Qto): New variables.
12058 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
12059 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
12060
12061 * callproc.c (Fcall_process): Don't call insert_1_both directly if
12062 we are inserting a process output into a multibyte buffer.
12063
12064 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
12065 multibyte_char_to_unibyte.
12066
12067 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
12068 by the primary charset, make it eight-bit char.
12069 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
12070
12071 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
12072 (charset_8_bit__control, charset_8_bit_graphic)
12073 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
12074 (define_charset_internal): New function.
12075 (syms_of_charset): Call define_charset_internal for pre-defined
12076 charsets.
12077
12078 * charset.h (charset_8_bit): Extern it.
12079
12080 * coding.c (make_conversion_work_buffer): Adjust for the change
12081 of Fset_buffer_multibyte.
12082 (encode_coding_raw_text): Increment p0 in the loop.
12083
12084 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
12085
12086 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
12087 for the change of Fset_buffer_multibyte.
12088
12089 * fns.c (Fstring_to_multibyte): New function.
12090 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
12091
12092 2008-02-01 Dave Love <fx@gnu.org>
12093
12094 * xfns.c (x_put_x_image): Declare args.
12095
12096 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
12097 (try_font_list): Declare an arg.
12098
12099 * xdisp.c (message2_nolog, set_message): Declare an arg.
12100
12101 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
12102
12103 * syntax.c (scan_sexps_forward): Declare an arg.
12104
12105 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12106 Declare an arg.
12107
12108 * lisp.h (Fnew_fontset): Declare.
12109
12110 * keymap.c (push_key_description): Call CHARACTERP correctly.
12111
12112 * fontset.c (fontset_add): Declare args. Call make_number correctly.
12113 (face_for_char): Delete unused vars.
12114 (Fset_fontset_font): Doc fix. Delete unused vars.
12115
12116 * doc.c (Fsubstitute_command_keys): Delete unused vars.
12117
12118 * composite.c (update_compositions): Declare arg.
12119
12120 * cm.c (calccost, cmgoto): Declare args.
12121
12122 * charset.c: Remove `emacs' conditional. Doc fixes.
12123 (map_char_table_for_charset): Declare.
12124
12125 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
12126
12127 * ccl.c: Remove `emacs' conditional.
12128
12129 2008-02-01 Kenichi Handa <handa@m17n.org>
12130
12131 The following changes are to allow specifying multiple font
12132 patterns for a character range (specified by script or charset).
12133
12134 * Makefile.in (abbrev.o): Depend on syntax.h.
12135 (xfaces.o): Depend on charset.h.
12136
12137 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
12138 SINGLE_BYTE_CHAR_P.
12139
12140 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
12141
12142 * character.h (Vchar_script_table): Extern it.
12143
12144 * character.c (Vscript_alist): Delete.
12145 (Vchar_script_table, Qchar_script_table): New variable.
12146 (syms_of_character): Declare Vchar_script_table as a lisp variable
12147 and initialize it.
12148
12149 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
12150 have property char-table-extra-slots, make no extra slot.
12151
12152 * dispextern.h (struct face): Delete member `charset'.
12153 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
12154 SINGLE_BYTE_CHAR_P.
12155 (choose_face_font, lookup_non_ascii_face, font_name_registry):
12156 Add prototypes.
12157 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
12158 (generate_ascii_font_name): Rename from generate_ascii_font.
12159
12160 * fontset.h (get_font_repertory_func): New prototype.
12161 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
12162 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
12163
12164 * fontset.c (Qprepend, Qappend): New variables.
12165 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
12166 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
12167 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
12168 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
12169 (fontset_ref_and_range, fontset_add, reorder_font_vector)
12170 (load_font_get_repertory): New functions.
12171 (fontset_set): Delete.
12172 (fontset_face): New arg FACE. Return face ID, not face.
12173 Complete re-write to handle new fontset structure. Change caller.
12174 (free_face_fontset): Use ASET istead of AREF (X) = Y.
12175 (face_for_char): Don't call lookup_face.
12176 (make_fontset_for_ascii_face): New arg FACE.
12177 (fs_load_font): New arg CHARSET_ID. Don't check
12178 Vfont_encoding_alist here.
12179 (find_font_encoding): New function.
12180 (list_fontsets): Use STRINGP, not ! NILP.
12181 (accumulate_script_ranges): New function.
12182 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
12183 re-written to handle new fontset structure.
12184 (Ffontset_font): Return a copy of element.
12185 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
12186 docstring of font-encoding-alist.
12187
12188 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
12189 (Fset_fotset_font): Fix arguments to 5.
12190
12191 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
12192
12193 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
12194 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12195 (highlight_trailing_whitespace): Adjust for the change of
12196 lookup_named_face.
12197
12198 * xfaces.c: Include charset.h.
12199 (load_face_font): Delete argument C. Change caller.
12200 (generate_ascii_font_name): Rename from generate_ascii_font.
12201 (font_name_registry): New function.
12202 (cache_face): Store ascii faces before non-ascii faces in buckets.
12203 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
12204 Lookup only ascii faces.
12205 (lookup_non_ascii_face): New function.
12206 (lookup_named_face): Delete argument C. Change caller.
12207 (lookup_derived_face): Delete argument C. Change caller.
12208 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
12209 a string, just call font_list with it.
12210 (choose_face_font): Delete arguments FACE and C. New arg
12211 FONT_SPEC. Change caller.
12212 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
12213 Change caller.
12214 (realize_non_ascii_face): New function.
12215 (realize_x_face): Call load_face_font here.
12216 (realize_tty_face): Delete argument C. Change caller.
12217 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
12218 get a face ID.
12219 (dump_realized_face): Don't print charset of FACE.
12220
12221 * xfns.c (x_set_font): Always call x_new_fontset and
12222 store_frame_parameter.
12223 (Fx_create_frame): Call x_new_fontset, not x_new_font.
12224 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
12225
12226 * xterm.h (x_get_font_repertory): Extern it.
12227
12228 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12229 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12230 it->multibyte_p is zero.
12231 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12232 (x_new_fontset): If FONTSETNAME doesn't match any existing
12233 fontsets, create a new one.
12234 (x_get_font_repertory): New function.
12235
12236 2008-02-01 Kenichi Handa <handa@m17n.org>
12237
12238 * coding.c (Ffind_coding_systems_region_internal): Detect an
12239 ASCII only string correctly.
12240
12241 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
12242 version is 0.
12243
12244 2008-02-01 Kenichi Handa <handa@m17n.org>
12245
12246 * lread.c: Include "coding.h".
12247 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
12248 (load_each_byte, unread_char): New variables.
12249 (readchar_backlog): Delete.
12250 (readchar): Return a character unless load_each_byte is nonzero.
12251 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
12252 cons. If unread_char is not -1, simply return it.
12253 (unreadchar): Handle the case that readcharfun is
12254 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
12255 (read_multibyte): Delete.
12256 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
12257 (read_emacs_mule_char): New functions.
12258 (Fload): Even if the file doesn't have the extension ".elc", if
12259 safe_to_load_p returns a positive version number, assume that the
12260 file contains bytecompiled code. If the version is less than 22,
12261 load the file while decoding multibyte sequences by emacs-mule.
12262 (readevalloop): Don't use readchar_backlog.
12263 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
12264 (Fread_from_string): Pay attention to the case that STREAM is a cons.
12265 (read_escape): Delete the arg BYTEREP.
12266 (read1): Set load_each_byte to 1 temporarily while handling
12267 #@NUMBER. Don't call read_multibyte.
12268 (read_vector): Call Fread with a cons. If readcharfun is
12269 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
12270 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
12271 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
12272 and Qload_force_doc_strings.
12273
12274 2008-02-01 Kenichi Handa <handa@m17n.org>
12275
12276 * xdisp.c (face_before_or_after_it_pos): Call
12277 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12278
12279 2008-02-01 Kenichi Handa <handa@m17n.org>
12280
12281 * character.h (TRAILING_CODE_P): New macro.
12282 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
12283 (string_char_with_unification): Fix prototype.
12284 (Vscript_alist): Extern it.
12285
12286 * character.c (Vscript_alist): New variable.
12287 (string_char_with_unification, str_as_unibyte)
12288 (string_escape_byte8): Add `const' to local variables.
12289 (syms_of_character): Declare script-alist as a Lisp variable.
12290
12291 * charset.h (Vcharset_ordered_list): Extern it.
12292 (charset_ordered_list_tick): Extern it.
12293 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
12294 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
12295 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
12296 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
12297 (Funify_charset): Adjust for the change of Funify_charset.
12298
12299 * charset.c (charset_ordered_list_tick): New variable.
12300 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
12301 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
12302 deunify intead of unify a charset.
12303 (string_xstring_p): Add `const' to local variables.
12304 (find_charsets_in_text): Add `const' to arguments and local variables.
12305 (encode_char): Adjust for the change of Funify_charset. Fix
12306 detecting of invalid code.
12307 (Fset_charset_priority): Increment charset_ordered_list_tick.
12308 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
12309 and TO_CODE.
12310
12311 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
12312 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
12313 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
12314 (decode_coding_ccl, consume_chars)
12315 (Ffind_coding_systems_region_internal)
12316 (Fcheck_coding_systems_region): Add `const' to local variables.
12317
12318 * print.c (print_object): Use octal form for printing the
12319 contents of a bool vector.
12320
12321 2008-02-01 Dave Love <fx@gnu.org>
12322
12323 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
12324 <version == 20>: Refuse to load.
12325
12326 2008-02-01 Dave Love <fx@gnu.org>
12327
12328 * fns.c: Move coding.h.
12329 (Qcodeset, Qdays, Qmonths): New.
12330 (concat): Use CHARACTERP instead of INTEGERP.
12331 (Flocale_codeset): Delete.
12332 (Flanginfo): New function.
12333 (syms_of_fns): Change accordingly.
12334
12335 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
12336
12337 2008-02-01 Dave Love <fx@gnu.org>
12338
12339 * casetab.c (init_casetab_once, init_casetab_once): Fix
12340 CHAR_TABLE_SET call.
12341
12342 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
12343
12344 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
12345
12346 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
12347 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
12348 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
12349
12350 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
12351
12352 * coding.c (ENCODE_DESIGNATION, decode_eol)
12353 (make_conversion_work_buffer, code_conversion_restore)
12354 (Fdefine_coding_system_internal): Convert Lisp types.
12355 (code_conversion_restore): Use EQ, not ==.
12356 (Fencode_coding_string): Fix code_convert_string call.
12357
12358 * coding.h (code_convert_region): Fix prototype.
12359
12360 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
12361
12362 * fontset.c (fontset_ref, fontset_set, fs_load_font)
12363 (Ffontset_info): Convert Lisp types.
12364
12365 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
12366
12367 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
12368
12369 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
12370
12371 * chartab.c: Include "...h", not <...h> in some cases.
12372
12373 * callproc.c (Fcall_process): Remove unused variables.
12374
12375 2008-02-01 Dave Love <fx@gnu.org>
12376
12377 * coding.c (Fset_coding_system_priority): Allow null arg list.
12378
12379 2008-02-01 Dave Love <fx@gnu.org>
12380
12381 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12382 (Fself_insert_and_exit): Use CHARACTERP.
12383
12384 * callproc.c (Fcall_process): Remove unused vars.
12385
12386 * xterm.c (XTread_socket): Add extra dead keysyms.
12387
12388 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
12389
12390 * dispextern.h: Remove prototypes for redraw_frame,
12391 redraw_garbaged_frames.
12392
12393 * cmds.c (Fself_insert_command): Use CHARACTERP.
12394
12395 * chartab.c (make_sub_char_table): Remove unused var.
12396 (Fset_char_table_default, Fmap_char_table): Doc fix.
12397
12398 * keymap.c (access_keymap): Remove generic char code.
12399 (push_key_description): Use CHARACTERP.
12400
12401 2008-02-01 Dave Love <fx@gnu.org>
12402
12403 * charset.c: Doc fixes.
12404 (Funify_charset): Extra checking.
12405
12406 2008-02-01 Dave Love <fx@gnu.org>
12407
12408 * lread.c: Remove some unused variables.
12409 (safe_to_load_p): If safe, return the magic number version byte.
12410 (Fload): Maybe use load-with-code-conversion.
12411
12412 2008-02-01 Kenichi Handa <handa@m17n.org>
12413
12414 * category.c (Fmodify_category_entry): Don't modify the contents
12415 of category_set for characters out of the range. Avoid
12416 unnecessary modification.
12417
12418 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
12419 Vchar_unify_table. The default value of the table is now nil.
12420
12421 * character.c (syms_of_character): Setup Vchar_width_table for
12422 eight-bit-control and raw-byte chars.
12423
12424 * charset.h (enum define_charset_arg_index): Delete
12425 charset_arg_parents and add charset_arg_subset and
12426 charset_arg_superset.
12427 (enum charset_attr_index): Delete charset_parents and add
12428 charset_subset and charset_superset.
12429 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
12430 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
12431 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
12432 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
12433 (CHARSET_SUPERSET): New macros.
12434 (charset_work): Extern it.
12435 (ENCODE_CHAR): Use charset_work.
12436 (CHAR_CHARSET_P): Adjust for the change of encoder format.
12437 (map_charset_chars): Extern it.
12438
12439 * charset.c (load_charset_map): Set the default value of encoder
12440 and deunifier char-tables to nil.
12441 (map_charset_chars): Change argument. Change callers. Use
12442 map_char_table_for_charset instead of map_char_table.
12443 (Fmap_charset_chars): New optional args from_code and to_code.
12444 (Fdefine_charset_internal): Adjust for the change of
12445 `define-charset' (:parents -> :subset or :superset).
12446 (charset_work): New variable.
12447 (encode_char, syms_of_charset): Adjust for the change of
12448 Fdefine_charset_internal.
12449 (Ffind_charset_string): Setup the vector `charsets' correctly.
12450
12451 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
12452 the previous change.
12453 (char_table_ref_and_range): Adjust for the above change.
12454 (map_sub_char_table_for_charset): New function.
12455 (map_char_table_for_charset): New function.
12456
12457 * keymap.c (describe_vector): Handle a char-table directly here.
12458 (describe_char_table): Delete.
12459
12460 * lisp.h (map_charset_chars): Delete.
12461
12462 2008-02-01 Dave Love <fx@gnu.org>
12463
12464 * fns.c (count_combining): Comment out (unused).
12465 (Flocale_codeset): New.
12466 (syms_of_fns): Defsubr it.
12467
12468 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
12469 (size_t): Remove.
12470
12471 2008-02-01 Dave Love <fx@gnu.org>
12472
12473 * Makefile.in (chartab.o): Depend on charset.h.
12474
12475 2008-02-01 Kenichi Handa <handa@m17n.org>
12476
12477 * character.c (syms_of_character): Set the default value of
12478 Vprintable_chars to Qnil.
12479
12480 2008-02-01 Dave Love <fx@gnu.org>
12481
12482 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
12483
12484 2008-02-01 Kenichi Handa <handa@m17n.org>
12485
12486 * charset.c (load_charset_map): Handle the case that from < to
12487 correctly.
12488
12489 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
12490 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
12491 Pay attention to raw-8-bit chars.
12492
12493 2008-02-01 Kenichi Handa <handa@m17n.org>
12494
12495 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
12496 It is not bytecompiled now.
12497
12498 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
12499 (charset_jisx0208): New variables.
12500 (Fdefine_charset_internal): Setup them if appropriate.
12501 (init_charset_once): Initialize them to -1.
12502
12503 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
12504 (charset_jisx0208): Extern them.
12505
12506 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
12507 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
12508 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
12509 (setup_iso_safe_charsets): Fix arguments to Fassq.
12510 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
12511 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
12512 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
12513 (encode_coding_iso_2022): Change the 1st arg to
12514 ENCODE_ISO_CHARACTER to a variable.
12515
12516 2008-02-01 Kenichi Handa <handa@m17n.org>
12517
12518 * charset.h (enum define_charset_arg_index): New enums
12519 charset_arg_min_code and charset_arg_max_code.
12520 (struct charset): New member char_index_offset.
12521
12522 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
12523 Take charset->char_index_offset into account.
12524 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
12525 args[charset_arg_max_code]. Setup charset.char_index_offset.
12526 (syms_of_charset): Fix args to Fdefine_charset_internal.
12527
12528 2008-02-01 Dave Love <fx@gnu.org>
12529
12530 * coding.c (decode_coding_utf_8): Reject overlong sequences.
12531
12532 2008-02-01 Dave Love <fx@gnu.org>
12533
12534 * coding.c: Doc fixes.
12535 (Fcoding_system_aliases): Fix return value.
12536 (Qmac): Remove (duplicated) definition.
12537
12538 2008-02-01 Dave Love <fx@gnu.org>
12539
12540 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
12541 functions.
12542
12543 * character.c (Fstring): Doc fix.
12544
12545 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
12546
12547 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
12548 ids.
12549 (font-encoding-alist): Doc fix.
12550
12551 2008-02-01 Dave Love <fx@gnu.org>
12552
12553 * term.c (costs_set): Declare static, non-initialized for pcc.
12554 (encode_terminal_code): Remove unused var.
12555
12556 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12557 for K&R.
12558
12559 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
12560
12561 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
12562 (suffixes): Move out of make_subsidiaries for K&R.
12563
12564 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
12565
12566 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
12567
12568 2008-02-01 Dave Love <fx@gnu.org>
12569
12570 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
12571
12572 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
12573
12574 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
12575
12576 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
12577
12578 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
12579
12580 2008-02-01 Kenichi Handa <handa@m17n.org>
12581
12582 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
12583 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
12584
12585 2008-02-01 Kenichi Handa <handa@m17n.org>
12586
12587 * coding.c (decode_coding_charset): Adjust for the change of
12588 Fdefine_coding_system_internal.
12589 (Fdefine_coding_system_internal): For a coding system of
12590 `charset' type, store a list of charset IDs in
12591 `charset_attr_charset_valids' element of coding attributes.
12592
12593 2008-02-01 Kenichi Handa <handa@m17n.org>
12594
12595 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
12596 (emacs_mule_char): New arg src. Delete arg `composition'. Change
12597 caller. Handle 2-byte and 3-byte charsets correctly.
12598 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
12599 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
12600 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
12601 (DECODE_EMACS_MULE_21_COMPOSITION): Call
12602 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
12603 sequence.
12604 (decode_coding_emacs_mule): Handle composition correctly. Rewind
12605 `src' and `consumed_chars' correctly before calling emacs_mule_char.
12606 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
12607 and alt&rule composition.
12608 (decode_coding_iso_2022): Handle composition correctly.
12609 (init_coding_once): Setup emacs_mule_bytes for private charsets.
12610
12611 * charset.c (Fdefine_charset_internal): Fix bug for the case of
12612 re-defining a charset. If the charset has :emacs-mule-id, setup
12613 emacs_mule_bytes.
12614 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
12615
12616 2008-02-01 Kenichi Handa <handa@m17n.org>
12617
12618 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
12619 (encode_coding_big5, encode_coding_charset): If coding requires safe
12620 encoding, produce a character specified by
12621 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12622
12623 2008-02-01 Dave Love <fx@gnu.org>
12624
12625 * xterm.c (XSetIMValues): Declare.
12626
12627 * process.c: Conditionally include sys/wait.h, pty.h.
12628
12629 * print.c (print_object): Fix print format for 64-bit systems.
12630
12631 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
12632
12633 * buffer.c (emacs_strerror): Declare.
12634
12635 * fontset.c (Fclear_face_cache): Declare.
12636 (accumulate_font_info): Comment-out (unused).
12637 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
12638 variables.
12639
12640 * character.h (string_escape_byte8): Declare.
12641
12642 * charset.c (load_charset_map, load_charset_map_from_file): Remove
12643 unused vars.
12644 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
12645 (Fmap_charset_chars): Doc fix.
12646
12647 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
12648 (Fset_coding_system_priority, Fset_coding_system_priority)
12649 (Fdefine_coding_system_internal): Doc fix.
12650
12651 2008-02-01 Dave Love <fx@gnu.org>
12652
12653 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
12654
12655 2008-02-01 Kenichi Handa <handa@m17n.org>
12656
12657 * character.c (string_escape_byte8): Make multibyte string with
12658 correct size.
12659
12660 * charset.c (Fmake_char): Delete unnecessary code.
12661
12662 2008-02-01 Kenichi Handa <handa@m17n.org>
12663
12664 * xfns.c (x_encode_text): Allocate coding.destination here, and
12665 call encode_coding_object with dst_object Qnil.
12666
12667 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
12668 multibyte form correctly.
12669
12670 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
12671 against Vfont_encoding_alist.
12672
12673 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
12674 handling of charset list.
12675 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
12676 (decode_coding_object): Move point to coding->dst_pos before
12677 calling post-read-conversion function.
12678 (encode_coding_object): Give correct arguments to
12679 pre-write-conversion. Ignore the return value of
12680 pre-write-conversion function. Pay attention to the case that
12681 pre-write-conversion changes the current buffer. If dst_object is
12682 Qt, even if coding->src_bytes is zero, allocate at least one byte
12683 to coding->destination.
12684
12685 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
12686
12687 * charset.c (Fmake_char): Make it more backward compatible.
12688 (Fmap_charset_chars): Fix docstring.
12689
12690 2008-02-01 Dave Love <fx@gnu.org>
12691
12692 * coding.c: Doc fixes.
12693 (Fdefine_coding_system_alias): Use names, not symbols, in
12694 coding-system-alist.
12695
12696 2008-02-01 Kenichi Handa <handa@m17n.org>
12697
12698 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
12699 of calling free_realized_face.
12700
12701 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
12702
12703 * charset.c (read_hex): Don't treat SPC as a comment starter.
12704 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
12705 (Fdecode_char): Fix typo.
12706
12707 2008-02-01 Kenichi Handa <handa@m17n.org>
12708
12709 * charset.h (struct charset): New member `code_space_mask'.
12710
12711 * coding.c (coding_set_source): Delete the local variable beg_byte.
12712 (encode_coding_charset, Fdefine_coding_system_internal):
12713 Delete the local variable charset.
12714 (Fdefine_coding_system_internal): Setup
12715 attrs[coding_attr_charset_valids] correctly.
12716
12717 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
12718 member to check if CODE is valid or not.
12719 (Fdefine_charset_internal): Initialize `code_space_mask' member.
12720 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
12721 is within the range of charset->min_code and carset->max_code.
12722
12723 2008-02-01 Dave Love <fx@gnu.org>
12724
12725 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
12726
12727 * dispextern.h (generate_ascii_font): Fix return type.
12728
12729 * xfaces.c (generate_ascii_font): Fix arg declaration.
12730
12731 * coding.c (coding_inherit_eol_type)
12732 (Fset_terminal_coding_system_internal)
12733 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
12734
12735 2008-02-01 Kenichi Handa <handa@m17n.org>
12736
12737 * coding.c (decode_coding_charset, encode_coding_charset): Handle
12738 multiple charsets correctly.
12739
12740 2008-02-01 Kenichi Handa <handa@m17n.org>
12741
12742 * search.c (boyer_moore): Fix handling of multibyte character
12743 translation.
12744
12745 * xdisp.c (display_mode_element): When the variable `elt' is
12746 changed, update `this' and `lisp_string'.
12747
12748 2008-02-01 Kenichi Handa <handa@m17n.org>
12749
12750 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
12751
12752 * callproc.c (Fcall_process): Be sure to give the current buffer
12753 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
12754
12755 * charset.c (struct charset_map_entries): New struct.
12756 (load_charset_map): Rename from parse_charset_map. New args
12757 entries and n_entries. Change caller.
12758 (load_charset_map_from_file): Rename from load_charset_map.
12759 Change caller. New arg control_flag. Call load_charset_map at
12760 the tail.
12761 (load_charset_map_from_vector): New function.
12762 (Fdefine_charset_internal): Setup charset.compact_codes_p.
12763 (encode_char): If the charset is compact, change a character index
12764 to a code point.
12765
12766 * coding.c (coding_alloc_by_making_gap): Check the case that the
12767 source and destination are the same correctly.
12768 (decode_coding_raw_text): Set coding->consumed_char and
12769 coding->consumed to 0.
12770 (produce_chars): If coding->chars_at_source is nonzero, update
12771 coding->consumed_char and coding->consumed before calling
12772 alloc_destination.
12773 (Fdefine_coding_system_alias): Register ALIAS in
12774 Vcoding_system_alist.
12775 (syms_of_coding): Define `no-conversion' coding system at the tail.
12776
12777 * fileio.c (Finsert_file_contents): Set coding_system instead of
12778 val. If the current buffer is multibyte, always call
12779 decode_coding_gap.
12780
12781 * xfaces.c (try_font_list): Give higher priority to fontset's
12782 family than face's family.
12783
12784 2008-02-01 Kenichi Handa <handa@m17n.org>
12785
12786 * callproc.c (Fcall_process): Be sure to give the current buffer
12787 to decode_coding_c_string.
12788
12789 * xfaces.c (try_font_list): Give a family specified in a fontset
12790 higher priority than a family specified in a face.
12791
12792 2008-02-01 Kenichi Handa <handa@m17n.org>
12793
12794 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
12795 Fix arguments to insert_from_buffer.
12796
12797 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
12798
12799 2008-02-01 Kenichi Handa <handa@m17n.org>
12800
12801 * coding.c (produce_chars): Set the variable `multibytep' correctly.
12802 (decode_coding_gap): Set coding->dst_multibyte correctly.
12803
12804 2008-02-01 Kenichi Handa <handa@m17n.org>
12805
12806 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
12807 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
12808 (encode_coding_utf_16): Substitute coding->default_char for
12809 non-Unicode characters.
12810 (decode_coding): Don't call record_insert here.
12811 (setup_coding_system): Initialize `surrogate' of
12812 coding->spec.utf_16 to 0.
12813 (EMIT_ONE_BYTE): Fix for multibyte case.
12814
12815 * insdel.c (insert_from_gap): Call record_insert.
12816
12817 2008-02-01 Kenichi Handa <handa@m17n.org>
12818
12819 * casefiddle.c (casify_region): Fix multibyte case.
12820
12821 * character.c (c_string_width): Add return type `int'.
12822 (char_string_with_unification): Delete arg ADVANCED.
12823
12824 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
12825 (CHAR_STRING): Adjust for the change of char_string_with_unification.
12826 (CHAR_STRING_ADVANCE): Make it do-while statement.
12827
12828 * chartab.c (sub_char_table_set_range): Optimize for the case
12829 DEPTH == 3. Add workaround code for a GCC optimization bug.
12830
12831 * charset.c (parse_charset_map): Remove an unused variable.
12832
12833 * coding.c: Delete unused variables.
12834
12835 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
12836 earlier. If inserted is zero and the coding system doesn't
12837 require flushing, don't call decode_coding_gap.
12838
12839 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
12840
12841 2008-02-01 Kenichi Handa <handa@m17n.org>
12842
12843 The following changes are for using Unicode as an internal
12844 character model, and use UTF-8 format for buffer/string
12845 representation.
12846
12847 * .gdbinit (xchartable): Adjust for the change of char table structure.
12848 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
12849
12850 * Makefile.in (obj): Add character.o and chartab.o.
12851 (lisp, shortlisp): Remove utf-8.elc.
12852 (*.o): For many files, change dependency on charset.h to
12853 character.h, and add dependency on character.h.
12854 (character.o, chartab.o): New targets.
12855
12856 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
12857 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
12858 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
12859 of "charset.h".
12860
12861 * dired.c, filelock.c: Include "character.h".
12862
12863 * alloc.c: Include "character.h" instead of "charset.h".
12864 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
12865 (syms_of_alloc): Remove defsubr for Smake_char_table.
12866
12867 * buffer.c: Include "character.h" instead of "charset.h", don't
12868 include "coding.h".
12869 (Fset_buffer_multibyte): Adjust for UTF-8.
12870
12871 * buffer.h: EXFUN Fbuffer_live_p.
12872
12873 * callproc.c: Include "character.h" instead of "charset.h".
12874 (Fcall_process): Big change for the new code-conversion APIs.
12875
12876 * casetab.c: Include "character.h" instead of "charset.h".
12877 (set_canon, set_identity, shuffle): Adjust for the new
12878 map_char_table spec.
12879 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
12880 accessing the char table structure.
12881
12882 * chartab.c: New file that implements char table.
12883
12884 * category.c: Include "character.h".
12885 (copy_category_entry): New function.
12886 (copy_category_table): Call map_char_table and copy_category_entry.
12887 (Fmake_category_table): Initialize all top-level slots.
12888 (char_category_set): New function.
12889 (modify_lower_category_set): Delete.
12890 (Fmodify_category_entry): Call char_table_ref_and_range.
12891
12892 * category.h (CATEGORY_SET): Just call char_category_set.
12893
12894 * ccl.c: Include "character.h".
12895 (Qccl, Qcclp): New variables.
12896 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
12897 it's less than 256.
12898 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
12899 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
12900 and DST type.
12901 (ccl_driver): Change types of argument, adjust code accordingly.
12902 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
12903 ccl_driver.
12904 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
12905
12906 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
12907 New members src_multibyte, dst_multibyte, consumed, and produced.
12908 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
12909 (CODING_SPEC_CCL_PROGRAM): New macro.
12910 (ccl_driver): Update prototype.
12911 (Qccl, Qcclp, Fccl_program_p): Extern them.
12912 (CHECK_CCL_PROGRAM): New macro.
12913
12914 * character.c, character.h, chartab.c: New files.
12915
12916 * charset.c: Mostly re-written. Move character and multibyte sequence
12917 handling codes to character.c.
12918
12919 * charset.h: Mostly re-written. Move character and multibyte sequence
12920 handling codes to character.h.
12921
12922 * coding.c, coding.h: Mostly re-written.
12923
12924 * composite.c: Include "character.h" instead of "charset.h".
12925 (CHAR_WIDTH): Move to character.h.
12926 (HASH_KEY, HASH_VALUE): Delete.
12927
12928 * composite.h (enum composition_method): Change order of enumeration
12929 symbols.
12930
12931 * data.c: Include "character.h" instead of "charset.h".
12932 (Faref): Call CHAR_TABLE_REF for a char table.
12933 (Faset): Call CHAR_TABLE_SET for a char table.
12934
12935 * dispextern.h (free_realized_face, check_face_attribytes)
12936 (generate_ascii_font): Extern them.
12937 (free_realized_multibyte_face): Delete extern.
12938
12939 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
12940 table structure.
12941
12942 * editfns.c: Include "character.h" instead of "charset.h".
12943 (Fchar_to_string): Always call CHAR_STRING.
12944
12945 * emacs.c (main): Call init_charset_once, init_charset,
12946 syms_of_chartab, and syms_of_character.
12947
12948 * fileio.c: Include "character.h" instead of "charset.h".
12949 (Finsert_file_contents): Big change for the new code-conversion API.
12950 (choose_write_coding_system, Fwrite_region): Likewise.
12951 (build_annotations_2): Delete.
12952 (e_write): Big change for the new code-conversion API.
12953
12954 * fns.c: Include "character.h" instead of "charset.h".
12955 (copy_sub_char_table): Move to chartab.c.
12956 (Fcopy_sequence): Call copy_char_table for a char table.
12957 (concat): Delete codes calling count_multibyte.
12958 (string_char_to_byte, string_byte_to_char): Adjust for the new
12959 multibyte form.
12960 (internal_equal): Adjust for the change of char table structure.
12961 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
12962 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
12963 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
12964 (char_table_translate, optimize_sub_char_table)
12965 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
12966 chartab.c.
12967 (char_table_ref_and_index): Delete.
12968 (HASH_KEY, HASH_VALUE): Move to lisp.h.
12969 (Fmd5): Call preferred_coding_system instead of accessing
12970 Vcoding_category_list. Adjust for the new code-conversion API.
12971 (syms_of_fns): Move defsubr for char table related functions to
12972 chartab.c.
12973
12974 * fontset.c: Mostly re-written.
12975
12976 * fontset.h (struct font_info): Change type of the member encoding_type.
12977 (enum FONT_SPEC_INDEX): New enum.
12978 (fontset_font_pattern, fs_load_font): Update prototype.
12979 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
12980
12981 * indent.c: Include "character.h" instead of "charset.h".
12982 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
12983
12984 * insdel.c: Include "character.h" instead of "charset.h".
12985 (copy_text): Don't refer to Vnonascii_translation_table.
12986 (insert_from_gap): New function.
12987
12988 * keyboard.c: Include "character.h" instead of "charset.h".
12989 (command_loop_1): Never call direct_output_forward_char before
12990 a non-ASCII character.
12991 (read_char): If Vkeyboard_translate_table is a char table, always
12992 translate a character.
12993
12994 * keymap.c: Include "character.h".
12995 (store_in_keymap): Handle the case that IDX is a cons.
12996 (Fdefine_key): Handle the case that KEY is a cons and the car part
12997 is also a cons (range).
12998 (push_key_description): Adjust for the new character code.
12999 (describe_vector): Call describe_char_table for a char table.
13000 (describe_char_table): New function.
13001
13002 * keymap.h (describe_char_table): Extern it.
13003
13004 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
13005 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
13006 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
13007 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
13008 Delete.
13009 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
13010 structure.
13011 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
13012 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
13013 (CHARTAB_SIZE_BITS_3): New macros.
13014 (chartab_size): Extern it.
13015 (struct Lisp_Char_Table): Re-design.
13016 (struct Lisp_Sub_Char_Table): New structure.
13017 (HASH_KEY, HASH_VALUE): Move from fns.c.
13018 (CHARACTERBITS): Define as 22.
13019 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
13020 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
13021 (GC_SUB_CHAR_TABLE_P): New macro.
13022 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
13023 (code_convert_string_norecord): Deleted extern.
13024 (init_character_once, syms_of_character, init_charset)
13025 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
13026
13027 * lread.c: Include "character.h".
13028 (read_multibyte): New arg NBYTES.
13029 (read_escape): Change the meaning of returned *BYTEREP.
13030 (to_multibyte): Delete.
13031 (read1): Adjust the handling of char table and string.
13032
13033 * print.c: Include "character.h" instead of "charset.h".
13034 (print_string): Convert 8-bit raw bytes to octal form by
13035 string_escape_byte8.
13036 (print_object): Adjust for the new multibyte form. Print 8-bit
13037 raw bytes always in octal form. Handle sub char table correctly.
13038
13039 * process.c: Include "character.h" instead of "charset.h".
13040 (read_process_output, send_process): Adjust for the new
13041 code-conversion API.
13042
13043 * puresize.h (BASE_PURESIZE): Increase.
13044
13045 * regex.c: Include "character.h" instead of "charset.h".
13046 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
13047 (regex_compile): Accept a range whose starting and ending
13048 character have different leading bytes.
13049 (analyse_first): Adjust for the above change.
13050
13051 * search.c: Include "character.h" instead of "charset.h".
13052 (search_buffer, boyer_moore): Adjust for the new multibyte form.
13053 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
13054
13055 * syntax.c: Include "character.h" instead of "charset.h".
13056 (syntax_parent_lookup): Delete.
13057 (Fmodify_syntax_entry): Accept a cons as CHAR.
13058 (skip_chars): Adjust for the new multibyte form.
13059 (init_syntax_once): Call char_table_set_range instead of directly
13060 accessing the structure of a char table.
13061
13062 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
13063 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
13064 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
13065 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
13066
13067 * term.c: Include "buffer.h" and "character.h".
13068 (encode_terminal_code, write_glyphs): Adjust for the new
13069 code-conversion API.
13070 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
13071
13072 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
13073
13074 * xdisp.c: Include "character.h".
13075 (get_next_display_element): Adjust for the new multibyte form.
13076 (disp_char_vector): Adjust for the new char table structure.
13077 (decode_mode_spec_coding): Adjust for the new structure of
13078 coding system.
13079 (decode_mode_spec): Adjust for the new code-conversion API.
13080
13081 * xfaces.c: Include "character.h" instead of "charset.h".
13082 (load_face_font): Adjust for the change of choose_face_font and
13083 FS_LOAD_FONT.
13084 (generate_ascii_font): New function.
13085 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
13086 (set_font_frame_param): Adjust for the change of choose_face_font.
13087 (free_realized_face): Make it public.
13088 (free_realized_faces_for_fontset): Rename from
13089 free_realized_multibyte_face. Free also faces realized for ASCII.
13090 (choose_face_font): Change arguments. Adjust for the change of
13091 fontset_font_pattern and FS_LOAD_FONT.
13092
13093 * xfns.c: Include "character.h".
13094 (x_encode_text): Adjust for the new code-conversion API.
13095
13096 * xselect.c: Don't include "charset.h".
13097 (selection_data_to_lisp_data): Adjust for the new code conversion API.
13098
13099 * xterm.c: Include "character.h".
13100 (x_encode_char): New argument CHARSET. Change caller.
13101 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
13102 Call ENCODE_CHAR instead of SPLIT_CHAR.
13103 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
13104 CHAR_WIDTH instead of CHARSET_WIDTH.
13105 (XTread_socket): Adjust for the new code-conversion API.
13106 (x_new_font): Adjust for the change of FS_LOAD_FONT.
13107 (x_load_font): Adjust for the change of struct font.
13108
13109 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13110
13111 * xfaces.c (face_at_buffer_position): Remove unused vars.
13112
13113 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13114
13115 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
13116 Fix overflow checking.
13117
13118 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13119
13120 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
13121 Cancel previous change.
13122
13123 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13124
13125 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
13126 ccl->eight_bit_control. Fix check for buffer overflow.
13127 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
13128 (ccl_driver): Initialize extra_bytes to 0.
13129
13130 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13131
13132 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
13133 return it ORed with ctrl_modifier.
13134
13135 2008-01-29 Miles Bader <miles@gnu.org>
13136
13137 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
13138
13139 2008-01-28 Jason Rumney <jasonr@gnu.org>
13140
13141 * w32.c (stat): Don't double check for networked drive.
13142
13143 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
13144
13145 * window.c (run_window_configuration_change_hook): New function.
13146 Code extracted from set_window_buffer. Set the selected frame.
13147 (set_window_buffer): Use it.
13148 * window.h (run_window_configuration_change_hook): Declare.
13149 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
13150
13151 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
13152
13153 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
13154
13155 * Makefile.in: Remove references to unused macros.
13156
13157 2008-01-26 Eli Zaretskii <eliz@gnu.org>
13158
13159 * w32.c (g_b_init_get_sid_sub_authority)
13160 (g_b_init_get_sid_sub_authority_count): New static variables.
13161 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
13162 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
13163 (init_user_info): Use them to retrieve uid and gid.
13164 Use 500/513, the Windows defaults, as Administrator's uid/gid.
13165 (fstat): Use pw_uid and pw_gid from the_passwd structure for
13166 st_uid and st_gid of the file.
13167
13168 2008-01-26 Jason Rumney <jasonr@gnu.org>
13169
13170 * w32.c (logon_network_drive): New function.
13171 (stat): Use it.
13172
13173 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
13174
13175 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
13176 invisible text covered with an ellipsis.
13177
13178 2008-01-25 Richard Stallman <rms@gnu.org>
13179
13180 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
13181 jump back to beginning. Move some other initializations after that.
13182 (Qwindow_text_change_functions, Vwindow_text_change_functions):
13183 New variables.
13184 (syms_of_xdisp): Init them.
13185
13186 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
13187
13188 * buffer.c (reset_buffer_local_variables):
13189 Implement `permanent-local-hook'.
13190 (Qpermanent_local_hook): New variable.
13191 (syms_of_buffer): Init and staticpro it.
13192
13193 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
13194
13195 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
13196
13197 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
13198
13199 * fns.c (Fclrhash): Return TABLE.
13200
13201 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13202
13203 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
13204 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
13205 is set even without positional changes.
13206 (x_scroll_bar_clear): Set bar->redraw_needed_p.
13207
13208 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
13209
13210 2008-01-23 Jason Rumney <jasonr@gnu.org>
13211
13212 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
13213
13214 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
13215 the unicode range available in MULE by locale-coding-system.
13216 Improve dbcs lead byte detection. Set event timestamp and modifiers
13217 earlier.
13218
13219 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13220
13221 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
13222 [MAC_OSX] (init_mac_osx_environment): Initialize it.
13223 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
13224 when used on child processes.
13225
13226 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
13227
13228 * dbusbind.c (Fdbus_method_return_internal): Rename from
13229 Fdbus_method_return.
13230 (Fdbus_unregister_object): Move to dbus.el.
13231 (Fdbus_call_method, Fdbus_method_return_internal)
13232 (Fdbus_send_signal): Improve debug messages.
13233
13234 2008-01-20 Martin Rudalics <rudalics@gmx.at>
13235
13236 * undo.c (undo_inhibit_record_point): New variable.
13237 (syms_of_undo): Initialize it.
13238 (record_point): Don't record point when undo_inhibit_record_point
13239 is set.
13240
13241 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
13242
13243 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
13244
13245 * xdisp.c (Qauto_hscroll_mode): New var.
13246 (syms_of_xdisp): Initialize it.
13247 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
13248 window's buffer.
13249 (hscroll_windows): Don't check automatic_hscrolling_p here.
13250
13251 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
13252 vscroll if we're setting window-buffer to the value it already has.
13253
13254 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
13255
13256 * m/intel386.h: Remove references to XENIX.
13257
13258 2008-01-17 Andreas Schwab <schwab@suse.de>
13259
13260 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
13261 instead of HAVE_X86_64_LIB64_DIR.
13262 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
13263
13264 2008-01-17 Glenn Morris <rgm@gnu.org>
13265
13266 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
13267 to HAVE_X86_64_LIB64_DIR.
13268
13269 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
13270
13271 * s/irix3-3.h:
13272 * s/irix4-0.h:
13273 * s/386-ix.h:
13274 * s/domain.h:
13275 * s/hpux9-x11r4.h:
13276 * s/hpux9shxr4.h: Remove files for systems no longer supported.
13277
13278 * sysdep.c: Remove code containing references to symbols defined
13279 by unsupported systems.
13280
13281 2008-01-16 Glenn Morris <rgm@gnu.org>
13282
13283 * coding.c (select-safe-coding-system-function): Doc fix.
13284
13285 2008-01-15 Glenn Morris <rgm@gnu.org>
13286
13287 * config.in: Revert 2008-01-13 change: this is a generated file.
13288
13289 2008-01-13 Tom Tromey <tromey@redhat.com>
13290
13291 * lisp.h: Fix typo.
13292
13293 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13294
13295 * m/sequent-ptx.h:
13296 * m/sequent.h:
13297 * s/ptx.h:
13298 * s/ptx4-2.h:
13299 * s/ptx4.h: Remove files for systems no longer supported.
13300
13301 * callproc.c (Fcall_process): Fix previous change.
13302
13303 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13304
13305 * unexsunos4.c: Remove file, system not supported anymore.
13306
13307 * m/mips.h:
13308 * m/intel386.h:
13309 * callproc.c:
13310 * config.in:
13311 * ecrt0.c:
13312 * emacs.c:
13313 * fileio.c:
13314 * frame.c:
13315 * getpagesize.h:
13316 * keyboard.c:
13317 * lread.c:
13318 * process.c:
13319 * puresize.h:
13320 * sysdep.c:
13321 * systty.h:
13322 * syswait.h:
13323 * unexec.c:
13324 * xdisp.c:
13325 * alloc.c: Remove code containing references to symbols defined by
13326 unsupported systems.
13327
13328 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
13329
13330 * coding.c (detect_coding_mask): Fix previous change.
13331
13332 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
13333
13334 * coding.c (detect_coding_iso2022): New arg
13335 latin_extra_code_state. Allow Latin extra codes only
13336 when *latin_extra_code_state is nonzero.
13337 (detect_coding_mask): If there is a NULL byte, detect the encoding
13338 as UTF-16 or binary. If Latin extra codes exist, detect the
13339 encoding as ISO-2022 only when there's no other proper encoding is
13340 found.
13341
13342 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13343
13344 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
13345 #ifdef MAC_OS.
13346
13347 2008-01-08 Richard Stallman <rms@gnu.org>
13348
13349 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
13350
13351 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
13352
13353 * keyboard.c (parse_menu_item): Don't enclose key bindings on
13354 menu bar in parentheses.
13355
13356 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
13357
13358 * m/7300.h:
13359 * m/acorn.h:
13360 * m/alliant-2800.h:
13361 * m/alliant.h:
13362 * m/alliant1.h:
13363 * m/alliant4.h:
13364 * m/altos.h:
13365 * m/amdahl.h:
13366 * m/apollo.h:
13367 * m/att3b.h:
13368 * m/aviion-intel.h:
13369 * m/aviion.h:
13370 * m/celerity.h:
13371 * m/clipper.h:
13372 * m/cnvrgnt.h:
13373 * m/convex.h:
13374 * m/cydra5.h:
13375 * m/delta88k.h:
13376 * m/dpx2.h:
13377 * m/dual.h:
13378 * m/elxsi.h:
13379 * m/f301.h:
13380 * m/gould-np1.h:
13381 * m/gould.h:
13382 * m/i860.h:
13383 * m/ibmps2-aix.h:
13384 * m/ibmrt-aix.h:
13385 * m/ibmrt.h:
13386 * m/irist.h:
13387 * m/is386.h:
13388 * m/isi-ov.h:
13389 * m/mega68.h:
13390 * m/mg1.h:
13391 * m/news-r6.h:
13392 * m/news-risc.h:
13393 * m/news.h:
13394 * m/nh3000.h:
13395 * m/nh4000.h:
13396 * m/ns16000.h:
13397 * m/ns32000.h:
13398 * m/nu.h:
13399 * m/orion.h:
13400 * m/orion105.h:
13401 * m/paragon.h:
13402 * m/pfa50.h:
13403 * m/plexus.h:
13404 * m/pyramid.h:
13405 * m/pyrmips.h:
13406 * m/sh3el.h:
13407 * m/sps7.h:
13408 * m/sr2k.h:
13409 * m/stride.h:
13410 * m/sun1.h:
13411 * m/sun2.h:
13412 * m/sun3-68881.h:
13413 * m/sun3-fpa.h:
13414 * m/sun3-soft.h:
13415 * m/sun3.h:
13416 * m/sun386.h:
13417 * m/symmetry.h:
13418 * m/tad68k.h:
13419 * m/tahoe.h:
13420 * m/targon31.h:
13421 * m/tek4300.h:
13422 * m/tekxd88.h:
13423 * m/tower32.h:
13424 * m/tower32v3.h:
13425 * m/ustation.h:
13426 * m/wicat.h:
13427 * m/xps100.h:
13428 * s/cxux.h:
13429 * s/cxux7.h:
13430 * s/dgux.h:
13431 * s/dgux4.h:
13432 * s/dgux5-4-3.h:
13433 * s/dgux5-4r2.h:
13434 * s/esix.h:
13435 * s/esix5r4.h:
13436 * s/hiuxmpp.h:
13437 * s/hiuxwe2.h:
13438 * s/iris3-5.h:
13439 * s/iris3-6.h:
13440 * s/isc2-2.h:
13441 * s/isc3-0.h:
13442 * s/isc4-0.h:
13443 * s/isc4-1.h:
13444 * s/newsos5.h:
13445 * s/newsos6.h:
13446 * s/osf1.h:
13447 * s/osf5-0.h:
13448 * s/riscix1-1.h:
13449 * s/riscix12.h:
13450 * s/sco4.h:
13451 * s/sco5.h:
13452 * s/sunos4-0.h:
13453 * s/sunos4-1.h:
13454 * s/sunos413.h:
13455 * s/sunos4shr.h:
13456 * s/umax.h:
13457 * s/unipl5-2.h:
13458 * s/xenix.h:
13459 * cxux-crt0.s:
13460 * unexapollo.c:
13461 * unexconvex.c:
13462 * unexenix.c:
13463 * unexsni.c: Remove files for systems no longer supported.
13464
13465 * m/intel386.h: Remove references to unsupported systems.
13466
13467 * w32.c (get_emacs_configuration): Remove reference to i860.
13468
13469 * sysdep.c: Remove dead code.
13470
13471 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
13472
13473 * s/rtu.h:
13474 * m/masscomp.h: Remove files. Platform is obsolete.
13475
13476 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
13477
13478 * dbusbind.c (Fdbus_method_return): New function.
13479 (xd_read_message): Add the serial number to the event.
13480 (Fdbus_register_method): Activate the function.
13481
13482 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
13483
13484 * keyboard.c (read_key_sequence): Fix typo.
13485
13486 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
13487
13488 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
13489 (xd_signature, xd_append_arg): Handle element type detection for
13490 empty arrays.
13491 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
13492 SDATA () calls; this must be solved more general.
13493 (Fdbus_register_signal): Use SBYTES instead of strlen.
13494
13495 2008-01-03 Magnus Henoch <magnus@zemdatav>
13496
13497 * dbusbind.c (xd_append_arg): Use unsigned char instead of
13498 unsigned int for byte values (necessary for big-endian platform).
13499 (Fdbus_call_method): Handle the case of no returned arguments.
13500
13501 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
13502
13503 * dbusbind.c (xd_read_message): Use non-static input_event struct.
13504
13505 2007-12-31 Magnus Henoch <mange@freemail.hu>
13506
13507 * dbusbind.c (xd_signature): Signature of variant is just "v".
13508
13509 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
13510
13511 * dbusbind.c: Fix several errors and compiler warnings.
13512 Reported by Tom Tromey <tromey@redhat.com>.
13513 (XD_ERROR, XD_DEBUG_MESSAGE)
13514 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
13515 (xd_append_arg): Part for basic D-Bus types rewritten.
13516 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
13517 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
13518 appropriate.
13519 (xd_read_message): Return Qnil. Don't signal an error; it is not
13520 useful during event reading.
13521 (Fdbus_register_signal): Signal an error if the check for
13522 FUNCTIONP fails.
13523 (Fdbus_register_method): New function. The implementation is not
13524 complete, the call of the function signals an error therefore.
13525 (Fdbus_unregister_object): New function, renamed from
13526 Fdbus_unregister_signal. The initial check signals an error, if
13527 the object is not well formed.
13528
13529 2007-12-30 Richard Stallman <rms@gnu.org>
13530
13531 * textprop.c (get_char_property_and_overlay):
13532 Signal error if POSITION is out of range in a buffer.
13533
13534 2007-12-29 Martin Rudalics <rudalics@gmx.at>
13535
13536 * w32fns.c (Fx_create_frame): Make copy of frame parameters
13537 because the original parameters are in pure storage now.
13538
13539 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13540
13541 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
13542
13543 2007-12-22 Eli Zaretskii <eliz@gnu.org>
13544
13545 * callint.c (syms_of_callint) <command-history>: Add reference to
13546 history-length in the doc string.
13547
13548 2007-12-17 Jason Rumney <jasonr@gnu.org>
13549
13550 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
13551 before passing as wParam.
13552
13553 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
13554
13555 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
13556 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
13557 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
13558 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
13559 as number.
13560 (Fdbus_call_method): Fix docstring.
13561
13562 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
13563
13564 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
13565 New macros.
13566 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
13567 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
13568 Simplify.
13569 (xd_signature): New function.
13570 (xd_append_arg): Compute also signatures. Major rewrite.
13571 (xd_retrieve_arg): Make debug messages friendly.
13572 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
13573 Check for signatures of arguments.
13574
13575 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
13576
13577 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
13578 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
13579 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
13580 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
13581 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
13582 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
13583 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
13584 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
13585 (xd_retrieve_value): Remove. Functionality included in ...
13586 (xd_append_arg): New function.
13587 (Fdbus_call_method, Fdbus_send_signal): Apply it.
13588
13589 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
13590
13591 * dbusbind.c (top): Include <stdio.h>.
13592 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
13593 dbus_message_new_method_call and dbus_message_new_signal.
13594 (Fdbus_register_signal): Rename unique_name to uname.
13595 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
13596 non-existing unique name. Fix typos in matching rule. Return an
13597 object which is useful in Fdbus_unregister_signal.
13598 (Fdbus_unregister_signal): Reimplementation, in order to remove
13599 only the corresponding entry.
13600 (Vdbus_registered_functions_table): Change the order of entries.
13601 Apply these changes in xd_read_message and Fdbus_register_signal.
13602
13603 2007-12-16 Andreas Schwab <schwab@suse.de>
13604
13605 * fileio.c (Finsert_file_contents): Fix overflow check to not
13606 depend on undefined integer overflow.
13607
13608 2007-12-14 Jason Rumney <jasonr@gnu.org>
13609
13610 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
13611 for characters above 127.
13612
13613 2007-12-13 Jason Rumney <jasonr@gnu.org>
13614
13615 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
13616 before dereferencing array.
13617 (lookup_vk_code): Remove zero comparison.
13618
13619 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
13620
13621 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
13622 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
13623 Use `unsigned int' instead of `uint'.
13624 (xd_read_message, Fdbus_register_signal): Split expressions into
13625 multiple lines before operators "&&" and "||", according to the
13626 GNU Coding Standards.
13627
13628 2007-12-14 Eli Zaretskii <eliz@gnu.org>
13629
13630 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
13631
13632 2007-12-12 Juri Linkov <juri@jurta.org>
13633
13634 * buffer.c (Frename_buffer): In interactive spec replace
13635 `read-buffer' with `read-string' that uses `buffer-name-history'
13636 as history, and the current buffer's name as default.
13637
13638 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
13639
13640 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
13641 manipulating the backtrace manually.
13642 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
13643 (struct backtrace, backtrace_list): Remove.
13644 (command_loop_1): Remove dead var `no_direct'.
13645
13646 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
13647 preserve non-built-in buffer-local variables.
13648 (Fkill_all_local_variables): Don't re-create&re-set permanent
13649 buffer-local variables.
13650
13651 2007-12-09 Juri Linkov <juri@jurta.org>
13652
13653 * buffer.c (Frename_buffer): Change interactive spec from "s" to
13654 Lisp code that uses `read-buffer' with current buffer as default.
13655
13656 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
13657
13658 * dbusbind.c (xd_read_message): Generate an event for every
13659 registered handler. There might be several handlers registered
13660 for the same signal.
13661 (Fdbus_register_signal): Don't overwrite a registration for the
13662 same signal. Add a new registration if handlers are different.
13663 (Vdbus_registered_functions_table): Rework doc string.
13664
13665 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
13666
13667 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
13668 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
13669 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
13670 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
13671 Unify argument lists.
13672 (xd_read_message, Fdbus_register_signal): Reorder and extend event
13673 arguments and hash table keys. Use unique name for service.
13674 (Fdbus_unregister_signal): Remove checks.
13675 (Vdbus_registered_functions_table): Fix doc string.
13676
13677 2007-12-05 Magnus Henoch <mange@freemail.hu>
13678
13679 * process.c (make_process): Initialize pty_flag to 0.
13680
13681 2007-12-05 Jason Rumney <jasonr@gnu.org>
13682
13683 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
13684 specified XBMs.
13685
13686 2007-12-05 Richard Stallman <rms@gnu.org>
13687
13688 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
13689
13690 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13691
13692 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
13693 New variable.
13694 (mac_try_close_socket) [MAC_OSX]: New function.
13695 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
13696 Update cfsockets_for_select. Replace invalid CFRunLoop source.
13697
13698 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
13699 Use mac_try_close_socket.
13700
13701 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13702
13703 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
13704 reloc_base.
13705 (copy_dysymtab): Compute relocation base here.
13706 (rebase_reloc_address) [__ppc64__]: New function.
13707 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
13708 changed.
13709
13710 2007-12-05 Jason Rumney <jasonr@gnu.org>
13711
13712 * w32proc.c (sys_spawnve): Quote args with wildcards.
13713
13714 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13715
13716 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
13717 __objc_* sections.
13718 (unrelocate) [_LP64]: Set relocation base to address of data segment.
13719
13720 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
13721
13722 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
13723 Move check for Vdbus_registered_functions_table to
13724 xd_read_queued_messages.
13725 (xd_read_queued_messages): Protect xd_read_message calls by
13726 internal_condition_case_1.
13727
13728 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
13729
13730 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
13731 Qdbus_system_bus and Qdbus_session_bus, respectively.
13732 (Vdbus_intern_symbols): Remove.
13733 (Vdbus_registered_functions_table): New hash table.
13734 (XD_SYMBOL_INTERN_SYMBOL): Remove.
13735 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
13736 Rewrite in order to manage registered functions by hash table
13737 Vdbus_registered_functions_table.
13738
13739 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
13740
13741 * xterm.c: Update URL to Window Manager Specification in comment.
13742
13743 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
13744
13745 * config.in (HAVE_DBUS): Add.
13746
13747 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
13748 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
13749 (obj): Add $(DBUS_OBJ).
13750 (LIBES): Add $(DBUS_LIBS).
13751 (dbusbind.o): New target.
13752
13753 * dbusbind.c: New file.
13754
13755 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
13756
13757 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
13758 (Qdbus_event): New Lisp symbol.
13759 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
13760 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
13761 (keys_of_keyboard): Define dbus-event.
13762
13763 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
13764
13765 2007-12-01 Richard Stallman <rms@gnu.org>
13766
13767 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
13768
13769 2007-11-30 Jason Rumney <jasonr@gnu.org>
13770
13771 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
13772 (w32con_reset_terminal_modes): Clear screen buffer.
13773 (w32_face_attributes): Don't use color indexes that are out of range.
13774 Only reverse the default colors.
13775
13776 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
13777 WINDOWSNT.
13778
13779 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
13780
13781 2007-11-29 Jason Rumney <jasonr@gnu.org>
13782
13783 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
13784 (w32_face_attributes): Use Vtty_defined_color_alist to determine
13785 if the terminal colors are initialized.
13786 (unspecified_fg, unspecified_bg): Remove unused declarations.
13787
13788 2007-11-29 Andreas Schwab <schwab@suse.de>
13789
13790 * keyboard.c (apply_modifiers): Fix typo.
13791
13792 2007-11-29 Richard Stallman <rms@gnu.org>
13793
13794 * keymap.c (Fcurrent_local_map): Doc fix.
13795
13796 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
13797
13798 * s/gnu-kfreebsd.h: New file.
13799
13800 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
13801
13802 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
13803 Don't cast redundantly.
13804
13805 * keyboard.c (KEY_TO_CHAR): New macro.
13806 (parse_modifiers, apply_modifiers): Accept integer arguments.
13807 (read_key_sequence): Use them to unify the "shift->unshift" mapping
13808 for chars and symbol keys.
13809 After doing such remapping, apply function-key-map again.
13810
13811 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
13812
13813 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
13814 compiled anymore.
13815
13816 2007-11-26 Andreas Schwab <schwab@suse.de>
13817
13818 * process.c (list_processes_1): Fix indentation level of the
13819 command column.
13820
13821 2007-11-23 Andreas Schwab <schwab@suse.de>
13822
13823 * editfns.c (Fformat): Handle %c specially since it requires the
13824 argument to be of type int.
13825
13826 2007-11-23 Markus Triska <markus.triska@gmx.at>
13827
13828 * emacs.c (main): Call init_editfns before init_process, since
13829 init_process sets Vprocess_connection_type depending on OS release.
13830
13831 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
13832
13833 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
13834 (find_symbol_value): Use do_symval_forwarding.
13835
13836 * data.c (set_internal): Set the value in the `cons-cell' (for
13837 Buffer_Local_values) not only for frame-local variables.
13838
13839 2007-11-22 Andreas Schwab <schwab@suse.de>
13840
13841 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
13842 values to sprintf.
13843 * keymap.c (Fsingle_key_description): Likewise.
13844 * print.c (print_object): Likewise.
13845
13846 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
13847
13848 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
13849 file for image is nil.
13850
13851 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
13852
13853 * term.c: Include stdarg.h.
13854 (fatal): Implement using varargs.
13855 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
13856
13857 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13858
13859 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
13860 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
13861 Update call to buffer_slot_type_mismatch.
13862 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
13863 (buffer_slot_type_mismatch): Update.
13864 * buffer.c (buffer_local_types): Remove.
13865 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
13866 (defvar_per_buffer): Set the type in the buffer_objfwd.
13867
13868 2007-11-21 Jason Rumney <jasonr@gnu.org>
13869
13870 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
13871 CreateFileMapping returns NULL on failure.
13872
13873 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13874
13875 * search.c (Fset_match_data): Remove the `evaporate' feature.
13876 (unwind_set_match_data): Don't use the `evaporate' feature.
13877
13878 2007-11-21 Jason Rumney <jasonr@gnu.org>
13879
13880 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
13881
13882 * w32console.c (w32con_write_glyphs): Remove unused variables.
13883
13884 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
13885
13886 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
13887
13888 * s/darwin.h (MULTI_KBOARD): Remove.
13889
13890 * macfns.c (x_create_tip_frame, Fx_create_frame)
13891 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
13892
13893 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
13894
13895 * buffer.c (Fbuffer_local_value): Remove redundant test.
13896 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
13897 than in `current-buffer' to match the comment.
13898 Do the swap using swap_in_global_binding.
13899
13900 * data.c (store_symval_forwarding, set_internal):
13901 * eval.c (specbind): Remove dead code.
13902
13903 * coding.c (detect_coding, Fupdate_coding_systems_internal):
13904 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
13905 Since we do not want to see internal Lisp_*fwd objects here.
13906
13907 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
13908
13909 * sysdep.c (init_system_name): Use getaddrinfo if available.
13910
13911 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
13912 (x_scroll_bar_note_movement): start, end, with, height in struct
13913 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
13914
13915 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
13916
13917 * puresize.h (BASE_PURESIZE): Increase to 1190000.
13918
13919 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
13920
13921 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
13922 This undoes Richard's change of 14-Oct-2002.
13923
13924 * alloc.c (allocate_other_vector):
13925 * lisp.h (allocate_other_vector): Remove.
13926
13927 * window.c (struct save_window_data): Move non-lisp data to the end
13928 and make it `int' rather than Lisp_Object.
13929 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
13930 Done wrap/unwrap integer values.
13931 (Fset_window_configuration, compare_window_configurations):
13932 Update use of fields to their new types.
13933
13934 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
13935 Turn integer fields into `int'. Merge x_window_low and x_window_high.
13936 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
13937 (SET_SCROLL_BAR_X_WINDOW): Remove.
13938 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
13939 Access the new x_window field directly.
13940 * xterm.c (x_scroll_bar_create): Use a pseudovector.
13941 Don't wrap/unwrap integers into Lisp_Objects.
13942 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
13943 (x_scroll_bar_report_motion):
13944 Don't wrap/unwrap integers into Lisp_Objects.
13945 (x_term_init): Use SDATA.
13946 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
13947 (x_scroll_bar_set_handle, x_scroll_bar_remove)
13948 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
13949 (x_scroll_bar_report_motion, x_scroll_bar_clear):
13950 * xfns.c (x_set_background_color):
13951 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
13952 Access the new x_window field directly.
13953
13954 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
13955 (allocate_pseudovector): Make non-static.
13956
13957 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
13958 (allocate_pseudovector): Declare.
13959 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
13960
13961 2007-11-15 Andreas Schwab <schwab@suse.de>
13962
13963 * editfns.c (Fformat): Correctly format EMACS_INT values.
13964 Also take precision into account when formatting an integer.
13965
13966 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
13967
13968 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
13969
13970 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
13971 (syms_of_keyboard): Defsubr it.
13972
13973 * data.c (swap_in_global_binding): Fix longstanding bug where
13974 store_symval_forwarding was not called with the right second argument,
13975 thus causing objfwd-ing from being dropped.
13976
13977 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
13978
13979 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
13980 (Fx_display_pixel_height, Fx_display_planes)
13981 (Fx_display_color_cells, Fx_server_max_request_size)
13982 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13983 (Fx_display_visual_class, Fx_display_save_under):
13984 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
13985 (Fx_display_pixel_height, Fx_display_planes)
13986 (Fx_display_color_cells, Fx_server_max_request_size)
13987 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
13988 (Fx_display_mm_height, Fx_display_mm_width)
13989 (Fx_display_backing_store, Fx_display_visual_class)
13990 (Fw32_select_font, Fx_display_save_under):
13991 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
13992 (Fx_display_pixel_height, Fx_display_planes)
13993 (Fx_display_color_cells, Fx_server_max_request_size)
13994 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13995 (Fx_display_save_under): Fix typos in docstrings.
13996
13997 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
13998
13999 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
14000 corresponding to deleted entries; they are an implementation detail.
14001 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
14002 Remove variables.
14003 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
14004 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
14005 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
14006 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
14007 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
14008 (Fw32_define_rgb_color, Fw32_load_color_file)
14009 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
14010 Fix typos in docstrings.
14011 (Fx_server_version): Reflow docstring.
14012 (Fw32_shell_execute): Doc fixes.
14013
14014 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
14015
14016 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
14017 if w32_parse_hot_key returned nil.
14018
14019 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
14020
14021 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
14022
14023 2007-11-09 Jason Rumney <jasonr@gnu.org>
14024
14025 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
14026
14027 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
14028
14029 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
14030 Remove W32_SCROLL_BAR_CLICK_EVENT.
14031
14032 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
14033 Add MULTIMEDIA_KEY_EVENT.
14034
14035 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
14036 (lispy_multimedia_keys) [WINDOWSNT]: New array.
14037 (make_lispy_event) [WINDOWSNT]: Use it to translate
14038 MULTIMEDIA_KEY_EVENT.
14039
14040 * w32term.h (WM_APPCOMMAND): Define if not already.
14041 (GET_APPCOMMAND_LPARAM): Likewise.
14042
14043 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
14044 WM_APPCOMMAND.
14045
14046 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
14047 (syms_of_w32fns): Export and initialize it.
14048 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
14049
14050 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
14051
14052 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
14053 twice.
14054
14055 * xdisp.c (handle_face_prop): Fix last change.
14056
14057 2007-11-09 Richard Stallman <rms@gnu.org>
14058
14059 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
14060 not just for after-strings and before-strings.
14061 Call face_for_overlay_string and pass the overlay to it.
14062 (handle_display_prop): Determine whether property came from an overlay.
14063 Pass OVERLAY arg to handle_single_display_spec.
14064 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
14065 (load_overlay_strings): Fill in it->string_overlays.
14066 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
14067
14068 * xfaces.c (face_for_overlay_string): Function renamed from
14069 face_at_buffer_position_no_overlays, and add arg OVERLAY.
14070
14071 * dispextern.h (struct it): New elt string_overlays.
14072 New elt from_overlay, also in stack.
14073 Rearrange a few elements.
14074 (face_for_overlay_string): Decl renamed from
14075 face_at_buffer_position_no_overlays, and add argument.
14076
14077 2007-11-09 Richard Stallman <rms@gnu.org>
14078
14079 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
14080 to get the base face for an overlay string.
14081
14082 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
14083
14084 * xfaces.c (face_at_buffer_position_no_overlays): New function.
14085
14086 * xdisp.c (handle_stop): Move some code out of loop.
14087
14088 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14089
14090 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
14091 Fix conversion from Lisp object to ATSUFontID.
14092
14093 2007-11-09 Jason Rumney <jasonr@gnu.org>
14094
14095 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
14096
14097 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14098
14099 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
14100 Don't assume regions are aligned to page boundary.
14101 (print_load_command_name): Add LC_UUID if defined.
14102
14103 2007-11-09 Richard Stallman <rms@gnu.org>
14104
14105 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
14106
14107 2007-11-07 Jason Rumney <jasonr@gnu.org>
14108
14109 * s/windows95.h: Remove.
14110
14111 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
14112
14113 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
14114 abort with a message on unhandled store_type values.
14115
14116 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
14117
14118 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
14119 Remove HAVE_X11R5 and HAVE_X11R4.
14120
14121 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14122
14123 * Makefile.in: Remove references to sunfns.c and sunfns.o.
14124
14125 2007-11-01 Johan Bockgård <bojohan@gnu.org>
14126
14127 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
14128 Don't set s->stippled_p here, since it has already been set by
14129 x_set_glyph_string_gc from x_draw_glyph_string.
14130
14131 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14132
14133 * sunfns.c: Remove file.
14134
14135 * m/sun386.h:
14136 * m/sun2.h:
14137 * m/sparc.h: Remove Sun windows code.
14138
14139 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
14140
14141 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
14142 (init_keyboard): Set current_kboard's window-system to nil.
14143 (tty_read_avail_input): Typo.
14144 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
14145
14146 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
14147
14148 * s/usg5-4.h:
14149 * s/usg5-3.h:
14150 * s/ptx.h:
14151 * m/is386.h:
14152 * m/ibmps2-aix.h:
14153 * Makefile.in: Remove all mentions of X10.
14154
14155 * dispnew.c (syms_of_display): Don't mention version 10.
14156
14157 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
14158
14159 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
14160 ($(BLD)/abbrev.$(O)): Remove.
14161
14162 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
14163
14164 Rewrite abbrev.c in Elisp.
14165 * image.c (Qcount): Don't declare as extern.
14166 (syms_of_image): Initialize and staticpro `Qcount'.
14167 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
14168 * emacs.c (main): Don't call syms_of_abbrev.
14169 * Makefile.in (obj): Remove abbrev.o.
14170 (abbrev.o): Remove.
14171 * abbrev.c: Remove.
14172
14173 2007-10-26 Martin Rudalics <rudalics@gmx.at>
14174
14175 * window.c (window_min_size_2): Don't count header-line.
14176
14177 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
14178
14179 * frame.h (struct frame): Move all bit fields after the first bit
14180 field to take advantage of the available space. Group all the
14181 chars together to reduce wasted space due to padding.
14182
14183 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
14184
14185 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
14186
14187 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
14188 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
14189 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
14190 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
14191 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
14192 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
14193 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
14194 (last_marked, mark_object_loop_halt): Make static.
14195
14196 * frame.c (syms_of_frame) <delete-frame-functions>:
14197 Fix typo in docstring.
14198
14199 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
14200
14201 * w32.c (init_environment): Fix tiny memory leak.
14202 (w32_get_resource): Remove unused variable `ok'.
14203
14204 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
14205
14206 Make `window-system' into a keyboard-local variable (rather than
14207 frame-local as done originally by multi-tty).
14208
14209 * keyboard.h (struct kboard): Add Vwindow_system.
14210 * keyboard.c (init_kboard): Set a default for Vwindow_system.
14211 (mark_kboards): Mark Vwindow_system.
14212
14213 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
14214 (init_display): Don't set the obsolete `window-system' frame-param.
14215
14216 * xterm.c (x_term_init):
14217 * w32term.c (w32_create_terminal):
14218 * term.c (init_tty): Set Vwindow_system.
14219 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
14220 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
14221
14222 * xfns.c (Fx_create_frame, x_create_tip_frame):
14223 * w32fns.c (Fx_create_frame, x_create_tip_frame):
14224 * macfns.c (Fx_create_frame):
14225 Don't set the obsolete `window-system' frame-param.
14226
14227 * frame.h (Qwindow_system): Remove.
14228 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
14229 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
14230
14231 2007-10-24 Richard Stallman <rms@gnu.org>
14232
14233 * frame.c (x_figure_window_size): For fullscreen case,
14234 set USPosition | PPosition without clobbering rest of window_prompting.
14235
14236 * keyboard.c (Fcurrent_idle_time): Doc fix.
14237
14238 * print.c (Fwith_output_to_temp_buffer): Doc fix.
14239
14240 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
14241
14242 * process.c (unwind_request_sigio): Only define if __ultrix__.
14243
14244 * callproc.c (child_setup): Remove spurious *.
14245
14246 * lisp.h (Fget_text_property): Declare.
14247 (have_menus_p): Declare it here rather than in sys-dep header files.
14248 * macterm.h (have_menus_p):
14249 * msdos.h (have_menus_p):
14250 * xterm.h (have_menus_p): Remove.
14251
14252 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
14253 (Fmake_variable_frame_local): Just check the variable's const-ness
14254 rather than checking nil or t.
14255
14256 2007-10-22 Jason Rumney <jasonr@gnu.org>
14257
14258 * w32fns.c: Include math.h.
14259 (w32_abort): Declaration moved to nt/config.nt.
14260
14261 * s/ms-w32.h (HAVE_STDLIB_H): Define.
14262 (abort): Redefinition moved to nt/config.nt.
14263
14264 * m/windowsnt.h: Remove.
14265
14266 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
14267
14268 * emacs.c (Fdump_emacs): Fix typo in message.
14269 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
14270 <installation-directory>: Reflow docstring.
14271
14272 2007-10-22 Juri Linkov <juri@jurta.org>
14273
14274 * minibuf.c: Allow minibuffer default to be a list of default values.
14275 With empty input use the first element of this list as returned default.
14276 (string_to_object)
14277 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
14278 (read_minibuf): If defalt is cons, set histstring to its car.
14279 (Fread_string): If default_value is cons, set val to its car.
14280 (Fread_buffer): If def is cons, use its car.
14281 (Fcompleting_read): If defalt is cons, set val to its car.
14282
14283 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
14284
14285 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
14286
14287 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
14288
14289 * doc.c (Fdocumentation): Check for advice in all cases.
14290
14291 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
14292
14293 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
14294
14295 2007-10-19 Richard Stallman <rms@gnu.org>
14296
14297 * doc.c (Fdocumentation): Check for and handle an advised function.
14298
14299 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
14300
14301 * process.c (Fset_process_filter): Doc fix.
14302
14303 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
14304
14305 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
14306 which caused key-translation-map to applied repeatedly (thus breaking
14307 double-mode).
14308
14309 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14310
14311 * xselect.c (x_own_selection, x_handle_selection_clear)
14312 (x_clear_frame_selections):
14313 * w32menu.c (list_of_panes, list_of_items):
14314 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
14315 * textprop.c (validate_plist, interval_has_all_properties)
14316 (interval_has_some_properties, interval_has_some_properties_list)
14317 (add_properties, text_property_list):
14318 * process.c (Fget_buffer_process, list_processes_1, status_notify):
14319 * minibuf.c (Fassoc_string):
14320 * macselect.c (x_own_selection, x_clear_frame_selections)
14321 (Fx_disown_selection_internal):
14322 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
14323 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
14324
14325 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
14326
14327 * process.c: Link to libs for calling res_init() if available.
14328 (Fmake_network_process): Call res_init() before getaddrinfo or
14329 gethostbyname, if possible.
14330
14331 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14332
14333 * lread.c (read1): Set pvectype for char_tables.
14334
14335 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
14336 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
14337 Add type checks.
14338 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
14339
14340 * alloc.c (free_misc): Use XMISCTYPE.
14341 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
14342
14343 2007-10-17 Glenn Morris <rgm@gnu.org>
14344
14345 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
14346 (syms_of_minibuf): Add Qcompletion_ignore_case.
14347 * dired.c (Qcompletion_ignore_case): Change to external.
14348 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
14349 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
14350 (Fread_file_name): Use it rather than intern'ing.
14351
14352 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
14353 (Fread_coding_system): Ignore case of user input.
14354
14355 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14356
14357 * xdisp.c (handle_display_prop): Ignore display specs after
14358 replacing one when string text is being replaced.
14359 (handle_single_display_spec): Pretend as if characters with display
14360 property haven't been consumed only when buffer text is being replaced.
14361
14362 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
14363
14364 * xfns.c (Fx_create_frame, Fx_display_list):
14365 * window.c (window_fixed_size_p, enlarge_window)
14366 (shrink_window_lowest_first):
14367 * macterm.c (init_font_name_table):
14368 * macfns.c (Fx_create_frame, Fx_display_list):
14369 * lread.c (close_load_descs):
14370 * keyboard.c (read_char_x_menu_prompt):
14371 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
14372 * coding.c (code_convert_region_unwind): Test the type of an object
14373 rather than just !NILP before extracting data from it.
14374
14375 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
14376
14377 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
14378 (XMISCANY): New macro.
14379 (XMISCTYPE): Use it.
14380 (struct Lisp_Misc_Any): New type.
14381 (union Lisp_Misc): Use it.
14382 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
14383 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
14384 (find_symbol_value, set_internal, default_value, Fset_default)
14385 (Fmake_variable_buffer_local, Fmake_local_variable)
14386 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
14387 (Flocal_variable_if_set_p, Fvariable_binding_locus):
14388 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
14389 * alloc.c (allocate_buffer): Set the size and tag.
14390 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
14391 Use XMISCANY.
14392 (die): Follow the GNU convention for error messages.
14393 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
14394 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
14395 tag any more.
14396 (set_buffer_internal_1):
14397 * frame.c (store_frame_param):
14398 * eval.c (specbind):
14399 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
14400
14401 * doc.c (Fsnarf_documentation): Simplify.
14402
14403 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
14404
14405 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
14406 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
14407
14408 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
14409
14410 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
14411
14412 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
14413
14414 * eval.c (do_autoload): Don't save autoloads.
14415
14416 * data.c (Ffset): Save autoload of the function being set.
14417
14418 2007-10-07 John Paul Wallington <jpw@pobox.com>
14419
14420 * xfns.c (x_create_tip_frame): Set the `display-type' frame
14421 parameter before setting up faces.
14422
14423 2007-10-13 Eli Zaretskii <eliz@gnu.org>
14424
14425 * ccl.c (Fregister_code_conversion_map):
14426 * keyboard.c (append_tool_bar_item): Reformat last change.
14427
14428 * lisp.h (eabs): Rename from `abs'. All callers changed.
14429
14430 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
14431
14432 * buffer.c (add_overlay_mod_hooklist):
14433 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
14434 * fontset.c (make_fontset):
14435 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
14436 (append_tool_bar_item):
14437 * macmenu.c (grow_menu_items):
14438 * w32menu.c (grow_menu_items):
14439 * xmenu.c (grow_menu_items): Use larger_vector.
14440
14441 2007-10-13 Eli Zaretskii <eliz@gnu.org>
14442
14443 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
14444 selected frame'' on MSDOS).
14445
14446 2007-10-12 Martin Rudalics <rudalics@gmx.at>
14447
14448 * frame.c (Qexplicit_name): New variable.
14449 (x_report_frame_params): Report it in parameter alist.
14450 (syms_of_frame): Intern and staticpro it.
14451
14452 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
14453
14454 * macfns.c (x_create_tip_frame): Set terminal for frame.
14455
14456 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
14457
14458 * frame.c (Qenvironment): Remove.
14459 (syms_of_frame) <Qenvironment>: Don't initialize.
14460 (Fdelete_frame): Don't treat the `environment' param specially.
14461 * frame.h (Qenvironment): Don't declare.
14462 * callproc.c (set_initial_environment): Don't set unused frame param.
14463
14464 * frame.c (Fframe_with_environment): Remove.
14465 (syms_of_frame) <Sframe_with_environment>: Don't declare.
14466
14467 * lisp.h (Fframe_with_environment): Don't declare.
14468
14469 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
14470
14471 * indent.c (indent_tabs_mode, last_known_column)
14472 (last_known_column_modified): Make static.
14473 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
14474
14475 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
14476
14477 * puresize.h (BASE_PURESIZE): Increase to 1170000.
14478
14479 2007-10-09 Jason Rumney <jasonr@gnu.org>
14480
14481 * w32term.c (x_set_window_size): Disable code that attempts to tell
14482 Lisp code about a size change before it actually happens.
14483
14484 2007-10-09 Richard Stallman <rms@gnu.org>
14485
14486 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
14487 return HANDLED_RETURN.
14488
14489 2007-10-08 Martin Rudalics <rudalics@gmx.at>
14490
14491 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
14492 when there's an unread command event.
14493
14494 * frame.c (focus_follows_mouse): Move here from frame.el to allow
14495 window autoselection act appropriately when leaving selected frame.
14496 (syms_of_frame): Initialize focus_follows_mouse.
14497 * frame.h (focus_follows_mouse): Extern it.
14498 * macterm.c (XTread_socket): When focus_follows_mouse is nil
14499 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
14500 * msdos.c (dos_rawgetc): Likewise.
14501 * w32term.c (w32_read_socket): Likewise.
14502 * xterm.c (handle_one_xevent): Likewise.
14503 * xdisp.c (syms_of_xdisp): In doc-string of
14504 mouse-autoselect-window mention focus-follows-mouse.
14505
14506 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14507
14508 * macterm.c (mac_load_query_font): Fix missing return value.
14509 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
14510 Add BLOCK_INPUT.
14511
14512 2007-10-08 Richard Stallman <rms@gnu.org>
14513
14514 * xdisp.c (get_window_cursor_type): Implement documented behavior
14515 for cursor-in-non-selected-windows = t.
14516
14517 2007-10-08 Jason Rumney <jasonr@gnu.org>
14518
14519 * w32.c (w32_get_resource): Always close registry keys.
14520
14521 2007-10-08 Jason Rumney <jasonr@gnu.org>
14522
14523 * makefile.w32-in (LIBS): Add COMCTL32.
14524
14525 * w32fns.c (globals_of_w32fns): Init common controls.
14526
14527 2007-10-08 Richard Stallman <rms@gnu.org>
14528
14529 * image.c (our_memory_buffer): Rename from omfib_buffer.
14530
14531 2007-10-08 Richard Stallman <rms@gnu.org>
14532
14533 * buffer.c (Foverlays_at): Doc fix.
14534
14535 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
14536
14537 * fns.c (Fplist_put): Preserve uneven tail data.
14538
14539 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
14540
14541 * termhooks.h (enum event_kind): Remove trailing comma.
14542
14543 * frame.h (enum): Remove trailing comma.
14544
14545 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14546
14547 * w32proc.c (delete_child): Don't terminate threads of zombies.
14548
14549 2007-10-08 Martin Rudalics <rudalics@gmx.at>
14550
14551 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
14552
14553 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
14554 last-repeatable-command.
14555 (init_kboard): Initialize Vlast_repeatable_command.
14556 (command_loop_1): Set it to real_this_command unless that was
14557 bound to an input event.
14558 (mark_kboards): Mark it.
14559
14560 2007-10-08 Richard Stallman <rms@gnu.org>
14561
14562 * eval.c (condition-case): Doc fix.
14563
14564 2007-10-08 Masatake YAMATO <jet@gyve.org>
14565
14566 * xfaces.c (tty_supports_face_attributes_p): Fix code
14567 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
14568 was copied and not edited.
14569
14570 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
14571
14572 Add new `input-decode-map' keymap and use it for terminal
14573 escape sequences.
14574 * keyboard.h (struct kboard): Add Vinput_decode_map.
14575 Remove Vlocal_key_translation_map.
14576 * keyboard.c (read_key_sequence): Add support for input-decode-map.
14577 (init_kboard): Init input-decode-map.
14578 Replace local-key-translation-map back with key-translation-map.
14579 (syms_of_keyboard): Declare input-decode-map.
14580 Remove local-key-translation-map. Update docstrings.
14581 (mark_kboards): Mark Vinput_decode_map.
14582 Don't mark Vlocal_key_translation_map.
14583 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
14584 Replace local-key-translation-map back with key-translation-map.
14585 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
14586 Bind in input-decode-map rather than function-key-map.
14587
14588 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
14589 This was made redundant by the previous introduction of XSETPVECTYPE.
14590
14591 2007-10-09 Richard Stallman <rms@gnu.org>
14592
14593 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
14594
14595 2007-09-29 Richard Stallman <rms@gnu.org>
14596
14597 * eval.c (internal_condition_case_2, internal_condition_case_1)
14598 (internal_condition_case): Reenable abort if x_catching_errors ()
14599 to see if that really happens and why.
14600
14601 2007-10-06 Andreas Schwab <schwab@suse.de>
14602
14603 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
14604
14605 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
14606
14607 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
14608
14609 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
14610
14611 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
14612
14613 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
14614
14615 * window.h (struct window):
14616 * window.c (struct save_window_data, struct saved_window):
14617 * termhooks.h (struct terminal):
14618 * process.h (struct Lisp_Process):
14619 * frame.h (struct frame):
14620 * buffer.h (struct buffer):
14621 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
14622 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
14623 The size field of (pseudo)vectors is now unsigned.
14624 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
14625
14626 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
14627 Turn `count' into an integer.
14628
14629 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
14630 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
14631 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
14632 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
14633 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
14634
14635 * alloc.c (allocate_pseudovector): New fun.
14636 (ALLOCATE_PSEUDOVECTOR): New macro.
14637 (allocate_window, allocate_terminal, allocate_frame)
14638 (allocate_process): Use it.
14639 (mark_vectorlike): New function.
14640 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
14641 (mark_terminals): Use it.
14642 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
14643 (Fmake_byte_code): Use XSETPVECTYPE.
14644
14645 * frame.c (Fframe_parameters): Minor simplification.
14646
14647 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
14648
14649 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
14650
14651 * buffer.c (Fget_buffer_create, init_buffer_once):
14652 * lread.c (defsubr):
14653 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
14654
14655 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
14656 defined differently in the m/*.h files.
14657 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
14658 (XSETPVECTYPE): New macro.
14659 (XSETPSEUDOVECTOR): Use it.
14660
14661 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
14662 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
14663
14664 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
14665 * lread.c (defvar_per_buffer):
14666 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
14667
14668 * window.c (candidate_window_p): Only consider as visible frames that
14669 are on the same terminal.
14670
14671 * m/ibms390x.h (MARKBIT): Remove unused macro.
14672
14673 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
14674
14675 * lread.c (Fload): Fix typo in docstring.
14676
14677 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
14678
14679 * floatfns.c (Fexpt): Manually check for overflows, so that a power
14680 of a non-zero value can't yield zero.
14681
14682 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
14683
14684 * term.c (term_clear_mouse_face, term_mouse_highlight)
14685 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
14686
14687 * print.c (safe_debug_print): Use XHASH.
14688
14689 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
14690 Lisp elements such as tags.
14691 (XHASH): New macro.
14692 (EQ): Use it.
14693 (SREF, SSET, STRING_COPYIN): Use SDATA.
14694 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
14695
14696 * alloc.c (mark_terminal): Remove left-over declaration.
14697 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
14698 (allocate_vectorlike): Remove type argument. Adjust callers.
14699 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
14700 Only handle the one remaining MEM_TYPE_VECTORLIKE.
14701
14702 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
14703 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
14704 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
14705 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
14706 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
14707 Use them.
14708
14709 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
14710 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
14711 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
14712
14713 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
14714
14715 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
14716 loaded by default.
14717
14718 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
14719
14720 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
14721 on this tty.
14722 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
14723
14724 * term.c (mouse_face_window): Rename from Qmouse_face_window.
14725 Update all users.
14726 (handle_one_term_event): Use Gpm_DrawPointer.
14727 (Fgpm_mouse_start): Rename from Fterm_open_connection.
14728 Signal errors instead of returning nil. Always return nil.
14729 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
14730 Make it a noop if gpm-mouse was not activated.
14731 (syms_of_term): Update names.
14732
14733 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
14734
14735 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
14736 (init_sys_modes): Check that gpm_tty is the current tty.
14737
14738 * alloc.c (allocate_terminal): Set the vector size to only count the
14739 lisp fields. Initialize those to nil.
14740 (mark_object): Don't treat terminals specially.
14741 (mark_terminal): Remove.
14742 (mark_terminals): Use mark_object instead.
14743
14744 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
14745 the GC to the beginning.
14746
14747 * indent.h:
14748 * indent.c: Use EMACS_INT for ints coming from Elisp data.
14749
14750 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
14751
14752 2007-09-25 Jason Rumney <jasonr@gnu.org>
14753
14754 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
14755
14756 * w32console.c (create_w32cons_output): Remove.
14757
14758 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
14759
14760 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
14761 (reset_sys_modes): Use reset_terminal_modes_hook.
14762
14763 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
14764
14765 * eval.c (do_autoload): Don't output any message.
14766
14767 2007-09-24 Juri Linkov <juri@jurta.org>
14768
14769 * emacs.c (standard_args): Change priority of "--no-splash"
14770 from 40 to 3. Add "--no-desktop" with the same priority.
14771
14772 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
14773
14774 * alloc.c (gc_sweep): Check cons cell mark bits word by word
14775 and optimize the case where they are all 1.
14776
14777 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
14778
14779 * lisp.h (abs): Define if not defined.
14780 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
14781 Don't define `abs', since it's defined in lisp.h.
14782
14783 2007-09-22 Eli Zaretskii <eliz@gnu.org>
14784
14785 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
14786 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
14787 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
14788 (init_tty): Use DEV_TTY instead of "/dev/tty".
14789 [WINDOWSNT]: No need to protect from NAME arg being null.
14790
14791 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
14792
14793 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
14794 up the tty state.
14795
14796 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14797
14798 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
14799 (gpm_tty): Change its type.
14800 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
14801 (gpm_tty): Change its type and initialize it.
14802 (Fterm_open_connection): Check the frame is indeed a tty.
14803 Use the new gpm_tty.
14804 (Fterm_close_connection): Use the new gpm_tty.
14805 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
14806 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
14807
14808 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
14809
14810 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
14811 underline_color, to draw strike-through.
14812
14813 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14814
14815 * lisp.h (allocate_terminal): Declare.
14816
14817 * window.c (candidate_window_p): Consider frames that are being placed
14818 by the user as somewhere between visible and iconified.
14819 (window_loop): Prefer windows on the current frame.
14820 (Fselect_window): Move the use of select-frame to the beginning so we
14821 can just delegate all the work (it'll call us back anyway).
14822
14823 * frame.c (Qdisplay_environment_variable):
14824 * frame.h (Qdisplay_environment_variable): Delete.
14825
14826 * .gdbinit (xbacktrace): Print the arg's address rather than the value
14827 of the first arg, since that value may be a union.
14828
14829 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
14830 parameter rather than Qdisplay_environment_variable. If all else
14831 fails, look for DISPLAY in initial-environment.
14832
14833 2007-09-21 Glenn Morris <rgm@gnu.org>
14834
14835 * Makefile.in (emacstool): Remove target.
14836 (lisp, shortlisp): Remove termdev.elc.
14837
14838 2007-09-21 Markus Triska <markus.triska@gmx.at>
14839
14840 * xterm.c (x_delete_display): Compile session management conditionally.
14841
14842 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
14843
14844 * callproc.c (getenv_internal_1): New function.
14845 (getenv_internal): Use it.
14846 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
14847
14848 * terminal.c (get_terminal): Don't accept ints to represent terminals.
14849 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
14850 (Fset_terminal_parameter): Work with dead terminals as well.
14851 (Fmodify_terminal_parameters): Remove.
14852
14853 * terminal.c (get_terminal): Handle terminals.
14854 Make sure the terminal returned is live.
14855 (create_terminal): Use allocate_terminal.
14856 (mark_terminals): Move to alloc.c.
14857 (delete_terminal): Use terminal->name as liveness status.
14858 NULL out fields after freeing their contents.
14859 Don't deallocate the object.
14860 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
14861 rather than an int.
14862 (Fterminal_live_p): Accept non-integer arguments.
14863 (Fterminal_list): Return terminal objects rather than an ints.
14864
14865 * alloc.c (enum mem_type): New member for `terminal' objects.
14866 (allocate_terminal): New function.
14867 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
14868 Handle terminals.
14869 (mark_terminal): New fun.
14870 (mark_terminals): Move from terminal.c.
14871
14872 * term.c (get_tty_terminal): Don't treat output_initial specially.
14873 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
14874 (delete_tty): Use terminal->name as liveness status.
14875
14876 * termhooks.h (struct terminal): Make it into a pseudovector.
14877 Remove `deleted' replaced by checking `name's nullness.
14878
14879 * print.c (print_object): Handle terminals.
14880
14881 * lisp.h (enum pvec_type): New `terminal' pseudovector.
14882 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
14883
14884 * frame.c (make_terminal_frame):
14885 * keyboard.c (tty_read_avail_input):
14886 * w32term.c (x_delete_terminal):
14887 * xfns.c (Fx_create_frame, x_create_tip_frame):
14888 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
14889
14890 2007-09-20 Glenn Morris <rgm@gnu.org>
14891
14892 * process.c (Fmake_network_process): Doc fix.
14893
14894 2007-09-19 Jason Rumney <jasonr@gnu.org>
14895
14896 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
14897
14898 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
14899
14900 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
14901 Fix a C warning regarding variable constness.
14902
14903 * xterm.c (handle_one_xevent): Fix a C warning.
14904
14905 2007-09-18 Jason Rumney <jasonr@gnu.org>
14906
14907 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
14908
14909 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
14910
14911 * gtkutil.c (gdpy_def): New variable.
14912 (xg_initialize): Initialize gdpy_def.
14913 (xg_display_close): If no other display exists, set gdpy_def to a
14914 new connection.
14915
14916 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
14917
14918 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
14919 when we have no file name for the icon.
14920 (xg_tool_bar_expose_callback): Remove.
14921 (xg_create_tool_bar): Don't connect expose signal to
14922 xg_tool_bar_expose_callback.
14923 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
14924
14925 2007-09-16 Andreas Schwab <schwab@suse.de>
14926
14927 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
14928 values instead of zapping them.
14929
14930 2007-09-14 Glenn Morris <rgm@gnu.org>
14931
14932 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
14933 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
14934 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
14935 scope and rename to omfib_buffer for clarity.
14936 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
14937
14938 2007-09-14 Kenichi Handa <handa@m17n.org>
14939
14940 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
14941
14942 2007-09-13 Jason Rumney <jasonr@gnu.org>
14943
14944 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
14945
14946 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
14947
14948 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
14949 (mac_term_init): Call here instead, passing rif.
14950
14951 2007-09-13 Glenn Morris <rgm@gnu.org>
14952
14953 * s/hpux.h: No longer define `static' as nothing.
14954
14955 2007-09-13 Johan Bockgård <bojohan@gnu.org>
14956
14957 * callint.c (Fcall_interactively): Remove unused var `fun'.
14958
14959 2007-09-12 Romain Francoise <romain@orebokech.com>
14960
14961 * window.c (prefer_window_split_horizontally, display_buffer):
14962 Revert 2007-09-08 change.
14963
14964 2007-09-12 Glenn Morris <rgm@gnu.org>
14965
14966 * alloca.c: Remove file.
14967 * Makefile.in (alloca): Do not undef.
14968 (allocaobj, alloca.o): Remove.
14969 (otherobj): Remove allocaobj.
14970 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
14971 * regex.c (C_ALLOCA): Remove all references and code that was only
14972 used when this was defined.
14973 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
14974 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
14975 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
14976
14977 * Makefile.in (SOURCES, unlock, relock): Delete.
14978
14979 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
14980 (menu_grab_callback): All uses changed.
14981
14982 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
14983 (x_reply_selection_request): All uses changed.
14984
14985 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
14986
14987 * lread.c (load_warn_old_style_backquotes): Change message to look
14988 better when it appears in the middle of byte-compiler messages.
14989
14990 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
14991
14992 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
14993
14994 * xterm.c (x_create_terminal): Add comment.
14995
14996 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
14997
14998 2007-09-10 Richard Stallman <rms@gnu.org>
14999
15000 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
15001
15002 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
15003
15004 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
15005 (DEFUN): Document `intspec', use it instead of `prompt'.
15006
15007 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
15008
15009 * data.c (Finteractive_form): If the interactive specification starts
15010 with a `(', use it as a Lisp form.
15011
15012 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
15013 name and file modes.
15014
15015 * callint.c (Fcall_interactively): Comment fixes.
15016
15017 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
15018
15019 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
15020 and compiled functions.
15021
15022 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
15023
15024 * window.c (prefer_window_split_horizontally): New variable.
15025 (display_buffer): Consider splitting window horizontally depending
15026 on prefer_window_split_horizontally.
15027
15028 2007-09-08 Eli Zaretskii <eliz@gnu.org>
15029
15030 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
15031
15032 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15033
15034 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
15035
15036 * frame.c (x_set_frame_parameters): Check number is positive before
15037 using XFASTINT.
15038
15039 * window.c (freeze_window_start): Don't presume selected_window holds
15040 a window object.
15041 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
15042
15043 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
15044
15045 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
15046
15047 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
15048
15049 * window.c (Vsplit_window_preferred_function): New var.
15050 (Fdisplay_buffer): Use it.
15051 (syms_of_window): Export, and initialize it.
15052
15053 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
15054
15055 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
15056
15057 2007-09-06 Glenn Morris <rgm@gnu.org>
15058
15059 * gtkutil.c (menu_grab_callback) <cnt>:
15060 * xselect.c (x_reply_selection_request) <cnt>: Move static
15061 variable to file scope.
15062
15063 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
15064
15065 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
15066 consistent values of selected_frame and selected_window.
15067
15068 2007-09-04 Jason Rumney <jasonr@gnu.org>
15069
15070 * w32console.c (initialize_w32_display): Zero unused hooks.
15071
15072 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15073
15074 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
15075 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
15076
15077 2007-09-04 Jason Rumney <jasonr@gnu.org>
15078
15079 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
15080 in w32console.c. Set up input. Remove XXX comments that have been
15081 confirmed as correct.
15082
15083 * s/ms-w32.h (MULTI_KBOARD): Define.
15084
15085 * w32console.c (one_and_only_w32cons): Remove.
15086 (initialize_w32_display): Take terminal argument.
15087
15088 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
15089 initialize_w32_display.
15090 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
15091
15092 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
15093
15094 * keyboard.c (discard_mouse_events): Discard it.
15095 (make_lispy_event): Translate it to a lisp event.
15096 (lispy_wheel_names): Add wheel-left and right events.
15097 (syms_of_keyboard): Enlarge wheel_syms.
15098
15099 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
15100 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
15101
15102 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
15103
15104 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
15105 from WM_MOUSEHWHEEL.
15106 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
15107
15108 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
15109 terminal.
15110
15111 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
15112 keyboard for the terminal.
15113
15114 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15115
15116 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
15117 (Vresume_tty_hook): Rename from Vresume_tty_functions.
15118 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
15119 and resume-tty-function to resume-tty-hook.
15120 (Fsuspend_tty, Fresume_tty): Use new names.
15121
15122 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
15123
15124 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
15125 if it starts with "n:".
15126
15127 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
15128
15129 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
15130
15131 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
15132
15133 * frame.h:
15134 * frame.c (Qterm_environment_variable): Remove.
15135 (syms_of_frame): Don't init and staticpro it.
15136
15137 * callproc.c (getenv_internal): Remove special case for $TERM.
15138
15139 * callproc.c (Vinitial_environment): New variable.
15140 (set_initial_environment): Initialize it.
15141 (syms_of_callproc): Declare it.
15142 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
15143 TERM under which a process runs is never related to the TERM in which
15144 Emacs is running.
15145
15146 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15147
15148 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
15149 * s/darwin.h: ... do it here.
15150
15151 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
15152
15153 * lisp.h (set_initial_environment): Rename from set_global_environment.
15154
15155 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
15156 removed by mistake on the multi-tty branch.
15157
15158 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
15159 (Fmodify_frame_parameters): Return a value.
15160
15161 * image.c (png_load): Comment-out var only used in commented-out code.
15162
15163 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
15164 before passing it to mark_object.
15165
15166 * xfaces.c (internal_resolve_face_name): Return a value.
15167 (internal_resolve_face_name, resolve_face_name_error): Comment out.
15168
15169 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
15170 (x_icon): Comment-out var only used in commented-out code.
15171
15172 2007-08-29 Romain Francoise <romain@orebokech.com>
15173
15174 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
15175 QUIT hasn't been provided.
15176
15177 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15178
15179 * callproc.c (child_setup, getenv_internal): Use the
15180 display-environment-variable and term-environment-variable frame params.
15181 (set_initial_environment): Initialise Vprocess_environment.
15182
15183 * config.in: Disable multi-keyboard support on a mac.
15184
15185 * frame.c (Qterm_environment_variable)
15186 (Qdisplay_environment_variable): New variables.
15187 (syms_of_frame): Intern and staticpro them.
15188 (Fmake_terminal_frame): Disable output method test.
15189
15190 * frame.h: Declare them here.
15191
15192 * macfns.c (x_set_mouse_color): Get rif from the frame.
15193 (x_set_tool_bar_lines): Don't use updating_frame.
15194 (mac_window): Add 2 new parameters for consistency with other systems.
15195 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
15196 frame parameters following what is done in X11 and w32. Don't use
15197 FRAME_MAC_DISPLAY_INFO.
15198 (Fx_open_connection, start_hourglass): Remove window-system check.
15199 (x_create_tip_frame): Get the keyboard from the terminal.
15200
15201 * macmenu.c: Reorder includes.
15202 (Fx_popup_menu): Use terminal specific mouse_position_hook.
15203
15204 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
15205 terminal parameter.
15206 (x_clear_frame): Add a frame parameter.
15207 (note_mouse_movement): Get rif from the frame.
15208 (mac_term_init): Initialize the terminal.
15209 (mac_initialize): Make static and move terminal initialization ...
15210 (mac_create_terminal): ... to this new function.
15211
15212 * macterm.h (struct mac_display_info): Add terminal.
15213 (mac_initialize): Delete declaration.
15214
15215 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
15216
15217 * sysdep.c: Comment out text after #endif.
15218
15219 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
15220 is defined. Better initialize ttys in windows. Use terminal
15221 specific mouse_position_hook.
15222
15223 * termhooks.h (union display_info): Add mac_display_info.
15224
15225 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
15226 Set the default minibuffer frame, window_system and the rest of the
15227 frame parameters following what is done in X11.
15228
15229 * w32term.c (w32_initialize): Make static.
15230
15231 * xselect.c (x_handle_selection_clear): Only access
15232 terminal->kboard when MULTI_KBOARD is defined.
15233
15234 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
15235 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
15236
15237 2007-08-29 Jason Rumney <jasonr@gnu.org>
15238
15239 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
15240 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
15241
15242 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
15243 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
15244
15245 * keyboard.c (restore_kboard_configuration): Only define when
15246 MULTI_KBOARD defined.
15247
15248 * makefile.w32-in: Update dependancies from Makefile.in.
15249 (OBJ1): Add terminal.$(O)
15250
15251 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
15252 Don't define function body.
15253 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
15254
15255 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
15256
15257 * w32.c (request_sigio, unrequest_sigio): Remove.
15258
15259 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
15260 (w32con_clear_frame, w32con_clear_end_of_line)
15261 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
15262 (w32con_delete_glyphs, w32con_set_terminal_window)
15263 (scroll_line, w32_sys_ring_bell): Add frame arg.
15264 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
15265 Add terminal arg.
15266 (PICK_FRAME): Remove.
15267 (w32con_write_glyphs): Use frame specific terminal coding.
15268 (one_and_only_w32cons): New global variable.
15269 (initialize_w32_display): Use it for storing hooks.
15270 (create_w32cons_output): New function.
15271
15272 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
15273 arg a frame.
15274
15275 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
15276 Set window_system.
15277 (x_set_tool_bar_lines): Don't use updating_frame.
15278 (Fx_create_frame): Set terminal and ref count.
15279 (Fx_open_connection): Remove window-system check.
15280
15281 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
15282
15283 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
15284 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
15285 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
15286 Add frame arg.
15287 (x_delete_terminal, w32_create_terminal): New functions.
15288 (w32_term_init): Create a terminal.
15289 (w32_initialize): Move terminal specific initialization to
15290 w32_create_terminal.
15291
15292 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
15293 (w32_clear_rect, w32_clear_area): Use background from frame.
15294 (w32_display_info): Add terminal.
15295 (w32_sys_ring_bell, x_delete_display): Declare here.
15296
15297 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
15298
15299 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
15300
15301 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
15302
15303 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
15304 Fix get_named_tty calls for the controlling tty.
15305
15306 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
15307
15308 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
15309
15310 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
15311
15312 * term.c (tty_insert_glyphs): Add missing first parameter.
15313
15314 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
15315
15316 * buffer.c (Fbuffer_list, Fbury_buffer):
15317 Take frame->buried_buffer_list into account.
15318
15319 * cm.c (current_tty): New variable, for cmputc().
15320 (cmputc): Use it.
15321 (cmcheckmagic): Add tty parameter, look up terminal streams there.
15322 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
15323 (cmgoto): Add tty parameter. Pass it on to calccost().
15324 Use emacs_tputs() instead of tputs().
15325
15326 * cm.h (emacs_tputs): New macro to set current_tty, and then call
15327 tputs().
15328 (current_tty): New variable, for cmputc().
15329 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
15330
15331 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
15332 (internal_condition_case, internal_condition_case_1)
15333 (internal_condition_case_2): Don't abort when x_catching_errors.
15334
15335 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
15336 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
15337 prevent crashes caused by bogus longjmps in read_char.
15338
15339 * keymap.h (Fset_keymap_parent): Add EXFUN.
15340
15341 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
15342 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15343 Remove redundant definition.
15344
15345 * macfns.c (x_set_mouse_color, x_make_gc):
15346 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15347
15348 * w32term.c (x_free_frame_resources):
15349 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15350 (w32_initialize): Use the accessor macros for terminal characteristics.
15351
15352 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
15353 Use the accessor macros for terminal characteristics.
15354 * msdos.c (internal_terminal_init): Use the accessor macros for
15355 terminal characteristics.
15356 (ScreenVisualBell, internal_terminal_init):
15357 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15358
15359 * termopts.h (no_redraw_on_reenter): Declare.
15360
15361 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
15362 (mark_terminals, mark_ttys): Declare.
15363 (Fgarbage_collect): Call them.
15364 (mark_object): Mark buried_buffer_list.
15365
15366 * prefix-args.c: Include stdlib.h for exit.
15367
15368 * syssignal.h: Add comment.
15369
15370 * indent.c: Include stdio.h.
15371
15372 * window.h (Vinitial_window_system): Declare.
15373 (Vwindow_system): Delete declaration.
15374
15375 * fontset.c (Finternal_char_font): Use FRAME_RIF.
15376
15377 * image.c (lookup_image): Don't initialize `c' until the xasserts
15378 have been run.
15379
15380 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
15381 FRAME_FOREGROUND_PIXEL.
15382
15383 * print.c (print_preprocess): Don't lose print_depth levels while
15384 iterating.
15385
15386 * widget.c (update_from_various_frame_slots):
15387 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15388
15389 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
15390 frames.
15391 (window_internal_height): Remove bogus make_number call.
15392 (init_window_once): Call make_terminal_frame with two zero parameters.
15393
15394 * fileio.c (Fread_file_name): Update comment.
15395
15396 * callint.c (Fcall_interactively):
15397 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
15398 Make sure it is correctly unwound.
15399
15400 * xsmfns.c (x_session_close): New function.
15401
15402 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
15403 Delete declarations.
15404
15405 * xterm.h: Remove declaration for x_fully_uncatch_errors.
15406 (x_output): Remove background_pixel and foreground_pixel fields.
15407 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
15408 (x_delete_device, x_session_close): Declare.
15409
15410 * lread.c: Include setjmp.h. Update declaration of `read_char'.
15411 (read_filtered_event): Call `read_char' with a local
15412 `wrong_kboard_jmpbuf'.
15413
15414 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
15415 Don't call single_kboard_state. Use FRAME_RIF.
15416
15417 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
15418 systems.
15419
15420 * lisp.h (set_process_environment): Rename to `set_global_environment'.
15421 (Fframe_with_environment, Fset_input_meta_mode)
15422 (Fset_quit_char): EXFUN.
15423 (x_create_device, tty_output, terminal, tty_display_info): Declare.
15424 (init_sys_modes, reset_sys_modes): Update prototypes.
15425 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
15426
15427 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
15428 Vlocal_key_translation_map, and Vkeyboard_translate_table.
15429 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
15430 Delete declarations.
15431 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
15432 (temporarily_switch_to_single_kboard, tty_read_avail_input):
15433 New declarations.
15434
15435 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
15436 already does that during init_display(). Call syms_of_keymap
15437 before syms_of_keyboard. Call `syms_of_terminal'.
15438 Call set_initial_environment, not set_process_environment.
15439 (shut_down_emacs): Call reset_all_sys_modes() instead of
15440 reset_sys_modes().
15441
15442 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
15443 (internal_resolve_face_name, resolve_face_name_error): New functions.
15444 (resolve_face_name): Protect against loops and errors thrown by Fget.
15445 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
15446 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
15447
15448 * scroll.c: Replace CURTTY() with local variables throughout the
15449 file (where applicable).
15450 (calculate_scrolling, calculate_direct_scrolling)
15451 (scrolling_1, scroll_cost): Use the accessor macros for terminal
15452 characteristics.
15453
15454 * keymap.c (Vfunction_key_map): Remove.
15455 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
15456 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
15457 (Vkey_translation_map): Remove.
15458 (syms_of_keymap): Remove DEFVAR for key-translation-map.
15459 (Fdescribe_buffer_bindings)
15460 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
15461 Update for terminal-local key-translation-map.
15462
15463 * Makefile.in (callproc.o): Update dependencies.
15464 (lisp, shortlisp): Add termdev.elc.
15465 (obj): Add terminal.o.
15466 (terminal.o): Add dependencies.
15467 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
15468 (data.o, fns.o): Add termhooks.h dependency.
15469 (SOME_MACHINE_LISP): Add dnd.elc.
15470 (minibuf.o): Fix typo.
15471 Update dependencies.
15472
15473 * data.c (do_symval_forwarding, store_symval_forwarding)
15474 (find_symbol_value): Use the selected frame's keyboard, not
15475 current_kboard.
15476
15477 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
15478 Vwindow_system.
15479
15480 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
15481 Fmenu_bar_open.
15482 (syms_of_xmenu): Update defsubr.
15483 (mouse_position_for_popup, Fx_popup_menu)
15484 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
15485 (set_frame_menubar, free_frame_menubar)
15486 (create_and_show_popup_menu, xmenu_show)
15487 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
15488 an X frame.
15489
15490 * xselect.c (x_own_selection): Abort if not an X frame.
15491 (some_frame_on_display): Check if it is an X frame.
15492 (x_handle_selection_clear): Deal with MULTI_KBOARD.
15493
15494 * coding.c: Include frame.h and termhooks.h.
15495 (terminal_coding, keyboard_coding): Delete.
15496 (Fset_terminal_coding_system_internal)
15497 (Fset_keyboard_coding_system_internal)
15498 (Fkeyboard_coding_system)
15499 (Fterminal_coding_system): Add a terminal parameter.
15500 Get terminal_coding from the terminal.
15501 (init_coding_once): Don't call setup_coding_system here.
15502
15503 * dispextern.h (set_scroll_region, turn_off_insert)
15504 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
15505 (tty_clear_end_of_line, tty_setup_colors)
15506 (delete_tty, updating_frame)
15507 (produce_special_glyphs, produce_glyphs, write_glyphs)
15508 (insert_glyphs): Remove.
15509 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
15510 (tty_turn_off_highlight, get_tty_size): Add declaration.
15511 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
15512
15513 * frame.h (enum output_method): Add output_initial.
15514 (struct x_output): Delete.
15515 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15516 Access foreground_pixel and background_pixel directly from the frame.
15517 (tty_display): Delete.
15518 (struct frame): Add buried_buffer_list, foreground_pixel,
15519 background_pixel and terminal. Delete kboard.
15520 (union output_data): Add tty.
15521 (FRAME_KBOARD): Get the kboard from the terminal.
15522 (FRAME_INITIAL_P): New macro.
15523 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
15524 (Qterm_environment_variable, Qdisplay_environment_variable)
15525 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
15526 New declarations.
15527
15528 * termchar.h (tty_output, tty_display_info): New structures.
15529 (tty_list): Declare.
15530 (FRAME_TTY, CURTTY): New macros.
15531 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
15532 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
15533 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
15534 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
15535
15536 * callproc.c: Include frame.h and termhooks.h, for terminal
15537 parameters.
15538 (add_env): New function.
15539 (child_setup): Use it.
15540 (child_setup, getenv_internal): Handle the new Vprocess_environment.
15541 (getenv_internal): Fix get_terminal_param call.
15542 (Fgetenv_internal, egetenv): Update doc.
15543 (syms_of_callproc): Initialize Vprocess_environment to nil.
15544 Register and initialize them. Remove obsolete defvars. Update doc
15545 strings.
15546 (child_setup): Handle Vlocal_environment_variables.
15547 (getenv_internal): Add terminal parameter.
15548 Handle Vlocal_environment_variables.
15549 (Fgetenv_internal): Add terminal parameter.
15550 (child_setup, getenv_internal, Fgetenv_internal): Store the local
15551 environment in a frame (not terminal) parameter. Update doc strings.
15552 (set_initial_environment): Rename from set_global_environment.
15553 Store Emacs environment in initial frame parameter.
15554
15555 * xdisp.c (redisplay_internal): Update references to
15556 `previous_terminal_frame'.
15557 (display_mode_line, Fformat_mode_line): Replace calls to
15558 `push_frame_kboard' with `push_kboard'.
15559 (get_glyph_string_clip_rects): Add extra parentheses and
15560 braces to prevent compiler warnings.
15561 (calc_pixel_width_or_height): Add xassert to check that the
15562 frame is alive. Don't call `lookup_image' on a termcap frame.
15563 (message2_nolog, message3_nolog, redisplay_internal)
15564 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
15565 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
15566 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
15567 (Fx_display_pixel_width, Fx_display_pixel_height)
15568 (Fx_display_planes, Fx_display_color_cells)
15569 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
15570 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
15571 (Fx_display_backing_store, Fx_display_visual_class)
15572 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
15573 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
15574
15575 * xfns.c (x_set_foreground_color x_set_background_color)
15576 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
15577 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15578 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
15579 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
15580 terminal that is being deleted.
15581 (Fx_create_frame): Use `store_frame_param' to set `window-system'
15582 frame parameter, and make sure it overrides any user-supplied setting.
15583 (Fx_close_connection, Fx_synchronize): Unify argument names with
15584 the rest of the DEFUNs.
15585
15586 * dispnew.c (Fsend_string_to_terminal): Update call to
15587 `get_tty_terminal'.
15588 (Fredraw_frame, Fsend_string_to_terminal)
15589 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
15590 FRAME_TERMCAP_P and FRAME_TTY.
15591 (window_change_signal): Don't believe width/height values that are
15592 impossibly small.
15593 (Vinitial_window_system): Rename from Vwindow_system.
15594 (termscript, Wcm, rif): Delete.
15595
15596 * termhooks.h (struct terminal): New struct containing the
15597 previously global text display hooks and new members NAME,
15598 DELETED and PARAM_ALIST.
15599 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
15600 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
15601 (FRAME_RIF): New macros.
15602 (get_terminal_param, get_device): New declarations.
15603 (termscript): Delete declaration.
15604
15605 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
15606 (XTflash, x_free_frame_resources, x_scroll_bar_create)
15607 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
15608 FRAME_FOREGROUND_PIXEL.
15609 (x_fully_uncatch_errors): Disable definition.
15610 (x_scroll_bar_expose): Fix reference to foreground pixel.
15611 (XTread_socket): Disable loop on all X displays.
15612 (x_delete_terminal): Don't set terminal->deleted and let
15613 delete_terminal delete the frames on the terminal.
15614 (x_delete_display): Doc update to reflect changes in
15615 delete_terminal.
15616 (x_display_info) <terminal>: Move member earlier in the struct.
15617 (deleting_tty): Remove old variable.
15618 (Fsuspend_tty): Call clear_tty_hooks.
15619 (Fresume_tty, init_tty): Call set_tty_hooks.
15620 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
15621 errors on X frames.
15622 (x_catch_errors_unwind): Abort if x_error_message is NULL.
15623 (handle_one_xevent): Initialize `f' to NULL.
15624 (x_delete_terminal, x_create_terminal): New functions.
15625 (XTset_terminal_modes, XTreset_terminal_modes)
15626 (XTread_socket, x_connection_closed, x_term_init)
15627 (x_term_init, x_delete_display): Add terminal parameter.
15628 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
15629 X connections.
15630
15631 * frame.c: Include termchar.h.
15632 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
15633 (Qwindow_system, Qenvironment, Qterm_environment_variable)
15634 (Qdisplay_environment_variable): New vars.
15635 (Fframep): Deal with output_initial.
15636 (Fframe-live-p): Doc fix.
15637 (Fwindow-system): New function.
15638 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
15639 (make_terminal_frame): Don't create frames on a terminal that is
15640 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15641 (store_frame_param): Check for found_for_frame before calling XFRAME.
15642 (Fmake_terminal_frame): Handle NULL tty names correctly.
15643 (syms_of_frame): Enhance doc string of `default-frame-alist'.
15644 (Fdelete_frame): Remove unused variable `count'. Don't allow other
15645 frames to refer to a deleted frame in their 'environment parameter.
15646 (Fframe_with_environment): New function.
15647 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
15648 (get_future_frame_param): New function.
15649 (Fmake_terminal_frame): Use it.
15650 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
15651
15652 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
15653 * sysdep.c (reset_sys_modes): Update for renames.
15654
15655 * keyboard.c (tty_read_avail_input): New function.
15656 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
15657 (syms_of_keyboard): Defsubr them.
15658 (Fset_input_meta_mode, Fset_quit_char): New functions.
15659 (Fset_input_mode): Split to above functions.
15660 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
15661 parameter. Use it in call to `read_char'.
15662 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
15663 Set wrong_kboard_jmpbuf correctly in recursive calls.
15664 Use current_kboard to access Vkeyboard_translate_table.
15665 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
15666 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
15667 Update longjmp invocations. Remember the original current_kboard,
15668 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
15669 changes it. Comment out unnecessary calls to
15670 `record_single_kboard_state' and `any_kboard_state'.
15671 Update recursive calls.
15672 (wrong_kboard_jmpbuf): Remove global variable.
15673 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
15674 Handle deleted interrupted_kboards correctly; that is a legal
15675 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
15676 and read_char calls. Abort if interrupted_kboard died in read_char.
15677 (any_kboard_state, single_kboard_state)
15678 (push_frame_kboard): Remove function.
15679 (pop_kboard): Switch out of single_kboard mode if the kboard has
15680 been deleted. Remove unused variable. Help debugging by not
15681 changing current_kboard unnecessarily. Set current_kboard to the
15682 kboard of the selected frame when the stored kboard object has
15683 been deleted before pop_kboard.
15684 (temporarily_switch_to_single_kboard): Change first parameter to a
15685 frame pointer. Throw an error when caller wants to change kboards
15686 while in single_kboard mode. Don't push_kboard if we weren't in
15687 single kboard state. Don't pop_kboard if we popped into any
15688 kboard state.
15689 (restore_kboard_configuration): Abort if pop_kboard changed the
15690 kboard in single_kboard mode. Call pop_kboard only after setting
15691 up single_kboard mode.
15692 (Frecursive_edit): Switch to single_kboard mode only in nested
15693 command loops.
15694 (cmd_error, command_loop, command_loop_1, timer_check):
15695 Comment out unnecessary call to `any_kboard_state' and
15696 `record_single_kboard_state'.
15697 (delete_kboard): Exit single_kboard mode if we have just deleted
15698 that kboard. Use FRAME_KBOARD.
15699 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
15700 `fatal_error_signal'.
15701 (record_single_kboard_state): Don't push_kboard if we weren't in
15702 single kboard state. Don't pop_kboard if we popped into any
15703 kboard state.
15704 (push_frame_kboard): Rename to push_kboard.
15705 (kbd_buffer_get_event): Use FRAME_TERMINAL.
15706 (read_avail_input): Read input from all terminals.
15707 (mark_kboards): Also mark Vkeyboard_translate_table.
15708 (kbd_buffer_store_event_hold): Simplify condition.
15709 (read_key_sequence): Reinitialize fkey and keytran at each replay.
15710 (Vkeyboard_translate_table): Move to struct kboard.
15711 (init_kboard): Initialize Vkeyboard_translate_table.
15712 (syms_of_keyboard): Use DEFVAR_KBOARD to define
15713 Vkeyboard_translate_table. Update doc strings. Update docs of
15714 local-function-key-map and function-key-map.
15715
15716 * terminal.c: New file.
15717
15718 * term.c: Include errno.h.
15719 (Vring_bell_function, device_list, initial_device)
15720 (next_device_id, ring_bell, update_begin, update_end)
15721 (set_terminal_window, cursor_to, raw_cursor_to)
15722 (clear_to_end, clear_frame, clear_end_of_line)
15723 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
15724 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
15725 (syms_of_term): Move their initialization to terminal.c.
15726 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
15727 (Ftty_display_color_cells)
15728 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
15729 (clear_tty_hooks, set_tty_hooks)
15730 (init_tty, maybe_fatal): New functions.
15731 (Ftty_type): Return nil if terminal is not on a tty instead of
15732 throwing an error. Doc update.
15733 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
15734 Doc update. Initialize new subrs and variables.
15735 (delete_tty): Use terminal->deleted.
15736 (tty_set_terminal_modes): Rename from set_terminal_modes.
15737 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
15738 (set_scroll_region): Rename to `tty_set_scroll_region'.
15739 (turn_on_insert): Rename to `tty_turn_on_insert'.
15740 (turn_off_insert): Rename to `tty_turn_off_insert'.
15741 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
15742 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
15743 (toggle_highligh): Rename to `tty_toggle_highlight'.
15744 (background_highlight): Rename to `tty_background_highlight'.
15745 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
15746 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
15747 (tty_set_scroll_region, tty_background_highlight)
15748 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
15749 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
15750 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
15751 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
15752 Add static modifier.
15753 (tty_reset_terminal_modes, tty_set_terminal_window)
15754 (tty_set_scroll_region, tty_background_highlight)
15755 (tty_highlight_if_desired, tty_cursor_to)
15756 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
15757 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
15758 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
15759 renames.
15760
15761 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
15762
15763 * keyboard.c: Qrtl is new.
15764 (parse_tool_bar_item): Handle :rtl keyword.
15765 (syms_of_keyboard): Intern :rtl keyword.
15766
15767 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
15768
15769 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
15770 so no Lisp code is executed.
15771 (file_for_image, find_rtl_image): New functions.
15772 (xg_get_image_for_pixmap): Use file_for_image.
15773 (update_frame_tool_bar): If direction is RTL, use RTL image if
15774 defined. Use Gtk stock images if defined.
15775
15776 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15777
15778 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
15779 for nonexistent or zero-width glyph in composition glyph.
15780
15781 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
15782
15783 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
15784
15785 * xdisp.c (Finvisible_p): New function.
15786 (syms_of_xdisp): defsubr it.
15787
15788 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
15789
15790 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
15791 Doc fixes.
15792
15793 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15794
15795 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
15796
15797 2007-08-24 Martin Rudalics <rudalics@gmx.at>
15798
15799 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
15800 whether decoding has modified buffer contents.
15801
15802 2007-08-24 Jason Rumney <jasonr@gnu.org>
15803
15804 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
15805 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
15806 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
15807 (init_svg_functions) [HAVE_NTGUI]: New function.
15808 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
15809 (svg_load_image): Use them.
15810 (svg_load_image) [HAVE_NTGUI]: Implement background.
15811
15812 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15813
15814 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
15815 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
15816 (LIBX): Remove @RSVG_LIBS@.
15817 (LIBES): Add $(RSVG_LIBS).
15818
15819 * image.c (svg_load_image): Blend with specified background if exists.
15820 Use IMAGE_BACKGROUND. Add Mac OS Support.
15821
15822 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
15823 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
15824 Remove macros.
15825 [MAC_OSX] (socket_callback): Do nothing.
15826 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
15827 ReceiveNextEvent.
15828 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
15829 socket_callback.
15830 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
15831
15832 2007-08-22 Glenn Morris <rgm@gnu.org>
15833
15834 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
15835
15836 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
15837
15838 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
15839
15840 * image.c: Add support for SVG images. Some additional comments
15841 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
15842 (svg_image_p): New function to test for SVG image.
15843 (svg_load): New function to load SVG image.
15844 (svg_load_image): New function, helper for svg_load.
15845 (Qsvg): New Lisp_object.
15846 (svg_keyword_index): New enum.
15847 (svg_format): New static `image_keyword' struct.
15848 (svg_type): New static `image_type' struct.
15849 (librsvg/rsvg.h): Include it.
15850
15851 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
15852
15853 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
15854
15855 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
15856
15857 * lread.c (Qold_style_backquotes): New var.
15858 (syms_of_lread): Init and staticpro it.
15859 (load_warn_old_style_backquotes): New fun.
15860 (Fload): Use them to warn about old style backquotes.
15861 (end_of_file_error, Fload): Remove unused vars.
15862
15863 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
15864
15865 * lread.c (Vold_style_backquotes): New var.
15866 (syms_of_lread): Init and export it to Elisp.
15867 (read1): Set it when we find an old-style (back)quote.
15868
15869 2007-08-22 Jason Rumney <jasonr@gnu.org>
15870
15871 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
15872
15873 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
15874
15875 * puresize.h (BASE_PURESIZE): Increase to 1140000.
15876
15877 2007-08-19 Richard Stallman <rms@gnu.org>
15878
15879 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
15880
15881 2007-08-19 Andreas Schwab <schwab@suse.de>
15882
15883 * alloc.c (pure): Round PURESIZE up.
15884
15885 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
15886
15887 * xterm.c (handle_one_xevent): Remove check that mouse click is in
15888 active frame.
15889
15890 2007-08-16 Richard Stallman <rms@gnu.org>
15891
15892 * eval.c (Fcommandp): Add parens to clarify.
15893
15894 * minibuf.c (Fall_completions): Use enum for type of table.
15895
15896 * emacs.c (USAGE2): Improve text.
15897
15898 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
15899
15900 * term.c (tty_default_color_capabilities): Declare static
15901 variables in file scope, to avoid HPUX compiler problem.
15902
15903 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
15904
15905 * gtkutil.c (update_frame_tool_bar): Use -1 as index
15906 to gtk_toolbar_insert.
15907
15908 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
15909
15910 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
15911
15912 * insdel.c (reset_var_on_error): New fun.
15913 (signal_before_change, signal_after_change):
15914 Use it to reset (after|before)-change-functions to nil in case of error.
15915 Bind inhibit-modification-hooks to t.
15916 Don't bind (after|before)-change-functions to nil while they run.
15917
15918 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15919
15920 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
15921 filling pixmap with stippled background.
15922
15923 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15924
15925 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
15926 Don't use invisible frame as parent window for repositioning.
15927
15928 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
15929
15930 * print.c (new_backquote_output): Rename from old_backquote_output.
15931 (print): Inverse its logic (according to its name) so as to match the
15932 behavior of new_backquote_flag in lread.c.
15933
15934 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15935
15936 * gmalloc.c (posix_memalign): New function.
15937
15938 * macterm.c (frame_highlight, frame_unhighlight): Don't call
15939 ActivateControl/DeactivateControl here.
15940 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
15941 frame-notice-user-settings is non-nil.
15942 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
15943 for kEventParamFMFontStyle.
15944 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
15945 mac_pass_command_to_system and mac_pass_control_to_system here.
15946 (XTread_socket): Call ActivateControl/DeactivateControl here.
15947 (XTread_socket) [TARGET_API_MAC_CARBON]:
15948 Check mac_pass_command_to_system and mac_pass_control_to_system here.
15949 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
15950 for window repositioning.
15951
15952 2007-08-08 Glenn Morris <rgm@gnu.org>
15953
15954 * Replace `iff' in doc-strings and comments.
15955
15956 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
15957
15958 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
15959
15960 2007-08-07 Martin Rudalics <rudalics@gmx.at>
15961
15962 * fileio.c (Finsert_file_contents): Run format-decode and
15963 after_insert_file_functions on entire buffer when REPLACE is
15964 non-nil and inhibit modification_hooks and point_motion_hooks.
15965 For consistency, run after_insert_file_functions iff something
15966 got inserted. Move signal_after_change and update_compositions
15967 after code running after_insert_file_functions. Make sure that
15968 undo_list doesn't record intermediate steps of the decoding process.
15969
15970 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15971
15972 * emacs.c (main)
15973 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
15974 Call malloc_enable_thread on interactive startup.
15975
15976 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
15977 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
15978 [USE_PTHREAD]: Conditionalize with it.
15979 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
15980 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
15981 New functions.
15982
15983 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
15984
15985 * xdisp.c (redisplay_window): When restoring original buffer
15986 position, make sure it is still valid.
15987
15988 * image.c (png_load): Ignore png-supplied background color.
15989
15990 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15991
15992 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
15993 Use kCFAbsoluteTimeIntervalSince1970.
15994
15995 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
15996 New variable.
15997 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
15998 event loop should be quit.
15999 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
16000 Quit dialog event loop if quit_dialog_event_loop is set.
16001
16002 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
16003 (Selection): New typedef. Use instead of ScrapRef.
16004 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
16005 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
16006 (mac_clear_selection): Rename from clear_scrap.
16007 (get_flavor_type_from_symbol): New argument SEL and subsume function of
16008 scrap_has_target_type. All uses changed.
16009 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
16010 (mac_selection_has_target_p): New functions.
16011 (mac_put_selection_value): Rename from put_scrap_string.
16012 (mac_get_selection_value): Rename from get_scrap_string.
16013 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
16014 (put_scrap_private_timestamp, scrap_has_target_type)
16015 (get_scrap_private_timestamp): Remove functions.
16016 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
16017 (x_own_selection, x_get_local_selection):
16018 Use mac_valid_selection_value_p.
16019 (x_own_selection): Don't use put_scrap_private_timestamp.
16020 Record OWNERSHIP-INFO into Vselection_alist instead.
16021 (x_get_local_selection): Don't check type if request is local.
16022 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
16023 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
16024
16025 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
16026
16027 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
16028 add comment explaining why.
16029
16030 2007-08-03 Richard Stallman <rms@gnu.org>
16031
16032 * fileio.c (Fvisited_file_modtime): Use make_time.
16033
16034 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
16035
16036 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
16037 build.
16038
16039 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
16040
16041 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
16042
16043 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
16044
16045 * puresize.h (BASE_PURESIZE): Increase to 1130000.
16046
16047 2007-07-30 Richard Stallman <rms@gnu.org>
16048
16049 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
16050
16051 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
16052
16053 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
16054
16055 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
16056
16057 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
16058 remote default-directory.
16059
16060 * buffer.c (mode-line-format): Update doc string.
16061
16062 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16063
16064 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
16065 scroll bar gap.
16066 (x_scroll_bar_create): Set bar->fringe_extended_p.
16067 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
16068 on frame edge. Check fringe background extension. Don't clear
16069 extended fringe background area.
16070
16071 * w32term.h (struct scroll_bar): New member fringe_extended_p.
16072 (w32_fill_area): Enclose multiple statements with do ... while (0).
16073
16074 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
16075 Extend fringe background to scroll bar gap.
16076 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
16077 Set bar->fringe_extended_p.
16078 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16079 Put leftmost/rightmost scroll bars on frame edge. Check fringe
16080 background extension. Don't clear extended fringe background area.
16081
16082 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16083 New member fringe_extended_p.
16084
16085 2007-07-25 Glenn Morris <rgm@gnu.org>
16086
16087 * Relicense all FSF files to GPLv3 or later.
16088
16089 * COPYING: Switch to GPLv3.
16090
16091 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
16092
16093 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
16094
16095 * data.c (Finteractive_form): Check for the presence of an
16096 `interactive-form' symbol property more thoroughly.
16097
16098 * data.c (Finteractive_form): Use an `interactive-form' property if
16099 present, analogous to the function-documentation property.
16100
16101 2007-07-24 Jason Rumney <jasonr@gnu.org>
16102
16103 * w32fns.c (x_real_positions): Get real position from OS instead of
16104 calculating it.
16105
16106 2007-07-23 Jason Rumney <jasonr@gnu.org>
16107
16108 * filelock.c (current_lock_owner): Allow for @ sign in username.
16109
16110 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
16111
16112 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
16113 remote default-directory.
16114
16115 * buffer.c (mode-line-format): Describe above case in doc string.
16116
16117 2007-07-20 Eli Zaretskii <eliz@gnu.org>
16118
16119 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
16120 Define if not defined.
16121
16122 2007-07-18 Jason Rumney <jasonr@gnu.org>
16123
16124 * w32proc.c (w32_executable_type): Handle 64 bit executables.
16125
16126 2007-07-18 Richard Stallman <rms@gnu.org>
16127
16128 * data.c (Fsetq_default): Doc fix.
16129
16130 * eval.c (Fsetq): Doc fix.
16131
16132 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
16133
16134 * coding.c (Ffind_operation_coding_system):
16135 * eval.c (For, Fand): Doc fixes.
16136 Reported by Johan Bockgård.
16137
16138 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
16139
16140 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
16141
16142 * xterm.h: Declare x_ewmh_activate_frame.
16143
16144 * xterm.c (x_ewmh_activate_frame): New function.
16145 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
16146
16147 2007-07-17 Martin Rudalics <rudalics@gmx.at>
16148
16149 * window.c (Fdisplay_buffer): If largest or LRU window is the
16150 only window, split it even if it is not eligible for splitting.
16151 This restores the original behavior broken by the 2007-07-15
16152 change.
16153
16154 2007-07-17 Glenn Morris <rgm@gnu.org>
16155
16156 * abbrev.c (abbrev_check_chars): New function.
16157 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16158 Call abbrev_check_chars to check abbrev characters are word
16159 constituents. Doc fix.
16160
16161 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
16162
16163 * process.c (Fstart_process, Fmake_network_process)
16164 (read_process_output): Fix up last changes.
16165
16166 2007-07-16 Eli Zaretskii <eliz@gnu.org>
16167
16168 * makefile.w32-in (clean): Don't delete *~.
16169
16170 2007-07-16 Andreas Schwab <schwab@suse.de>
16171
16172 * window.c (Fdisplay_buffer): Use NILP.
16173 (Fset_window_scroll_bars): Likewise.
16174
16175 2007-07-15 Martin Rudalics <rudalics@gmx.at>
16176
16177 * window.c (window_min_size_2): New function.
16178 (window_min_size_1, size_window, Fdisplay_buffer)
16179 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
16180 windows without mode- or header-lines when window-min-height is
16181 too small.
16182 (size_window): Reset nodelete_p after testing it, following an
16183 earlier note by Kim F. Storm.
16184 (display_buffer): Do not set split_height_threshold to twice the
16185 value of window_min_height to avoid changing the value of a
16186 customizable variable. Rather explicitly check whether the
16187 height of the window that shall be splitted is at least as large
16188 as split_height_threshold.
16189 (Fwindow_full_width_p): New defun.
16190 (syms_of_window): Defsubr it.
16191
16192 * window.h: Add EXFUN for Fwindow_full_width_p.
16193
16194 2007-07-14 Jason Rumney <jasonr@gnu.org>
16195
16196 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
16197
16198 2007-07-14 Richard Stallman <rms@gnu.org>
16199
16200 * eval.c (maybe_call_debugger): New function.
16201 (find_handler_clause): Use maybe_call_debugger.
16202 Call it when the handler says `debug'.
16203 Eliminate DEBUGGER_VALUE_PTR.
16204 (Fsignal): Eliminate debugger_value.
16205 (Qdebug): New variable.
16206 (syms_of_eval): Initialize it.
16207
16208 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
16209
16210 * eval.c (Fprogn):
16211 * keyboard.c (Ftrack_mouse):
16212 * print.c (Fwith_output_to_temp_buffer):
16213 * window.c (Fsave_window_excursion): Doc fix.
16214
16215 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
16216
16217 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
16218
16219 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
16220
16221 * process.h (struct Lisp_Process): Turn slots infd, outfd,
16222 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
16223 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
16224 read_output_delay, and read_output_skip from Lisp_Objects to ints.
16225 Remove unused encoding_carryover.
16226 * process.c: Adjust all functions accordingly.
16227
16228 2007-07-12 Richard Stallman <rms@gnu.org>
16229
16230 * term.c: Include unistd.h only if HAVE_UNISTD_H.
16231
16232 2007-07-11 Jason Rumney <jasonr@gnu.org>
16233
16234 * makefile.w32-in (LIBS): Include OLE32.
16235
16236 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
16237 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
16238
16239 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
16240
16241 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
16242 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
16243 from a Lisp_Object into a bare pointer.
16244 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16245 Adjust the code correspondingly.
16246
16247 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
16248
16249 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
16250 (term_show_mouse_face): Remove unused var `j'.
16251 (handle_one_term_event): Remove unused vars `i' and `j'.
16252 Don't cast return value of ttyname since it's not necessary.
16253
16254 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
16255
16256 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
16257 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
16258
16259 * fns.c (map_char_table): Use an array of int for `indices' rather than
16260 an array of Lisp_Objects (which are only ever integers anyway).
16261 (Fmap_char_table): Update caller.
16262 * lisp.h: Update prototype.
16263 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
16264 * fontset.c (Ffontset_info):
16265 * casetab.c (set_case_table): Update callers.
16266
16267 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
16268
16269 * keymap.c (struct accessible_keymaps_data)
16270 (struct where_is_internal_data): New structures.
16271 (accessible_keymaps_1, where_is_internal_1): Use them to change
16272 interface to adhere to the one used by map_keymap.
16273 (Faccessible_keymaps, where_is_internal): Use map_keymap.
16274 (accessible_keymaps_char_table, where_is_internal_2): Remove.
16275
16276 * keymap.h (map_keymap_function_t): More informative prototype.
16277
16278 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
16279
16280 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
16281 (looking_at_1): Don't change search_regs and last_thing_searched
16282 if `inhibit-changing-match-data' is non-nil.
16283 (string_match_1, search_buffer, set_search_regs): Likewise.
16284 (syms_of_search): Add Lisp level definition for
16285 `inhibit-changing-match-data' and set it to nil.
16286 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
16287 start and end of the match, instead of using values in search_regs.
16288
16289 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
16290
16291 * minibuf.c (Fcompleting_read): New value `confirm-only'
16292 for `require-match'.
16293
16294 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
16295
16296 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
16297 part of the 2007-06-27 change to syms_of_fileio.
16298
16299 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16300
16301 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
16302 Check WINDOWP before using XWINDOW. Consolidate return statements.
16303
16304 2007-06-27 Richard Stallman <rms@gnu.org>
16305
16306 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
16307
16308 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
16309
16310 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
16311
16312 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16313
16314 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
16315 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
16316 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
16317 (_free_internal, memalign): Use them.
16318 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
16319 Initialize to PTHREAD_MUTEX_INITIALIZER.
16320 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
16321 (morecore_nolock): Rename from morecore. All uses changed.
16322 Use only nolock versions of internal allocation functions.
16323 (_malloc_internal_nolock, _realloc_internal_nolock)
16324 (_free_internal_nolock): New functions created from
16325 _malloc_internal, _realloc_internal, and _free_internal.
16326 (_malloc_internal, _realloc_internal, _free_internal): Use them.
16327 Copy hook value to automatic variable before its use.
16328 (memalign): Copy hook value to automatic variable before its use.
16329
16330 2007-06-26 Kenichi Handa <handa@m17n.org>
16331
16332 * coding.c (Ffind_operation_coding_system): Docstring improved.
16333 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
16334
16335 2007-06-25 David Kastrup <dak@gnu.org>
16336
16337 * keymap.c (Fcurrent_active_maps): Add `position' argument.
16338 (Fwhere_is_internal): Adjust call to `current-active-maps' to
16339 cater for additional parameter.
16340
16341 * keymap.h: Adjust number of parameters to `current-active-maps'.
16342
16343 * doc.c (Fsubstitute_command_keys): Adjust call of
16344 `current-active-maps'.
16345
16346 2007-06-25 David Kastrup <dak@gnu.org>
16347
16348 * callint.c (Fcall_interactively): Make the parsing of interactive
16349 specs somewhat more readable.
16350
16351 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16352
16353 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
16354 to scroll bar gap also when bitmap fills fringe. Draw only foreground
16355 if extended background has already been filled.
16356
16357 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16358
16359 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
16360 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
16361
16362 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
16363 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
16364 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
16365 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
16366 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
16367 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
16368 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
16369 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
16370 Run timers during dialog popup.
16371 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
16372
16373 2007-06-21 Jason Rumney <jasonr@gnu.org>
16374
16375 * image.c (convert_mono_to_color_image): Swap fore and background.
16376
16377 2007-06-20 Jason Rumney <jasonr@gnu.org>
16378
16379 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
16380 (w32_free_bdf_font): Unmap memory not handle.
16381
16382 2007-06-20 Sam Steingold <sds@gnu.org>
16383
16384 * gmalloc.c (__morecore): Fix the declaration to comply with the
16385 definition.
16386
16387 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
16388
16389 * w32term.c (w32_delete_display): Remove leftover declaration.
16390 (w32_define_cursor, w32_initialize): Make static.
16391
16392 * w32.c (_wsa_errlist): Fix typo in error message.
16393 (init_environment): Ignore any environment variable from the
16394 registry having a null value.
16395
16396 2007-06-20 Glenn Morris <rgm@gnu.org>
16397
16398 * Makefile.in (LIBGIF): Default to -lgif.
16399
16400 2007-06-17 Jason Rumney <jasonr@gnu.org>
16401
16402 * w32menu.c (add_menu_item): Don't use multibyte string functions on
16403 unicode strings.
16404
16405 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
16406
16407 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
16408 Fix typo in docstring.
16409
16410 2007-06-16 Eli Zaretskii <eliz@gnu.org>
16411
16412 * w32menu.c (add_menu_item): Escape `&' characters in menu items
16413 and their keybindings.
16414
16415 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
16416
16417 * composite.c (update_compositions): Fix last fix.
16418
16419 2007-06-14 Jason Rumney <jasonr@gnu.org>
16420
16421 * w32.c (get_process_times_fn): New function pointer.
16422 (globals_of_w32): Intialize it if present in kernel32.dll.
16423 (w32_get_internal_run_time): New function.
16424
16425 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
16426
16427 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
16428
16429 * composite.c (update_compositions): Check the validness of
16430 compositions.
16431
16432 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16433
16434 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
16435 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
16436
16437 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
16438 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
16439
16440 * macgui.h (USE_MAC_TOOLBAR): New define.
16441
16442 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16443 Return immediately unless popup is activated.
16444
16445 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
16446 background to scroll bar gap.
16447 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
16448 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
16449 scroll bars on frame edge. Check fringe background extension.
16450 Don't clear extended fringe background area.
16451 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
16452 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
16453 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
16454 [USE_MAC_TOOLBAR]: New macros.
16455 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
16456 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
16457 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
16458 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
16459 [USE_MAC_TOOLBAR]: New functions.
16460 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
16461 manually if previous repositioning has failed.
16462 (mac_handle_keyboard_event): Use precomputed event kind.
16463 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
16464 as tool bar item click. Handle mouse movement over tool bar items.
16465
16466 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
16467 toolbar_win_gravity.
16468 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
16469 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
16470 Add externs.
16471
16472 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
16473 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
16474
16475 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
16476
16477 * image.c (search_image_cache): Remove unused variable.
16478
16479 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
16480
16481 * xfns.c, xmenu.c: Link to xaw3d if available.
16482
16483 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16484
16485 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
16486 frame_foreground and frame_background.
16487
16488 * image.c (lookup_image): Save frame foreground and background colors.
16489 (search_image_cache): Check if saved and current frame colors match.
16490
16491 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
16492
16493 * regex.c (regex_compile): Remove the `regnum' counter.
16494 Use bufp->re_nsub instead. Add support for \(?N:RE\).
16495
16496 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
16497
16498 * term.c: Include intervals.h to declare Fget_text_property.
16499
16500 2007-06-10 Jason Rumney <jasonr@gnu.org>
16501
16502 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
16503
16504 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
16505
16506 * callint.c (Fcall_interactively):
16507 * editfns.c (Fdelete_and_extract_region):
16508 * fileio.c (Fread_file_name):
16509 * fns.c (Fmapconcat):
16510 * keyboard.c (cmd_error_internal):
16511 * keymap.c (Fkey_description):
16512 * lread.c (openp):
16513 * minibuf.c (read_minibuf):
16514 * search.c (wordify):
16515 * sunfns.c (sel_read):
16516 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
16517 * xfns.c (x_default_scroll_bar_color_parameter):
16518 * xmenu.c (menu_help_callback):
16519 * xselect.c (Fx_get_atom_name):
16520 * xterm.c (x_term_init): Use empty_unibyte_string.
16521
16522 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
16523
16524 * alloc.c (init_strings): Initialize canonical empty strings.
16525 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
16526 canonical empty string when the requested size is 0.
16527
16528 * emacs.c (empty_unibyte_string): Rename from empty_string.
16529 (empty_multibyte_string): New canonical empty string.
16530 (syms_of_emacs): Don't initialize empty_string.
16531
16532 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
16533 string, if appropriate.
16534 (empty_unibyte_string, empty_multibyte_string): New externs.
16535 (empty_string): Remove extern.
16536
16537 * lread.c (syms_of_lread): Use empty_unibyte_string.
16538
16539 2007-06-07 Jason Rumney <jasonr@gnu.org>
16540
16541 * s/ms-w32.h: Don't define HAVE_TZNAME.
16542
16543 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
16544
16545 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16546
16547 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
16548
16549 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
16550 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
16551
16552 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16553 Don't call next handler.
16554 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
16555 Remove argument. Install handler to application.
16556 (set_frame_menubar): Don't change deep_p.
16557 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
16558 FRAME_OUTER_TO_INNER_DIFF_Y.
16559 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
16560 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
16561 [HAVE_DIALOGS]: New macros.
16562 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
16563 Use them.
16564 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
16565
16566 * macselect.c [MAC_OSX] (install_service_handler): Rename from
16567 init_service_handler. All callers changed. Return OSStatus value.
16568
16569 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
16570 All callers changed so as not to call SetPortWindowPort.
16571 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
16572 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
16573 mac_draw_string_common.
16574 (mac_draw_image_string_qd): Likewise.
16575 (mac_draw_string_common): Use them. Add INLINE.
16576 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
16577 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
16578 GetGlobalMouse.
16579 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
16580 and FRAME_OUTER_TO_INNER_DIFF_Y.
16581 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
16582 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
16583 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
16584 repositioning window to mac_handle_window_event.
16585 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
16586 saving window location to mac_handle_window_event
16587 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
16588 (install_menu_target_item_handler): Remove argument in extern.
16589 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
16590 Also accept command events.
16591 (do_keystroke): New function created from XTread_socket.
16592 (init_command_handler): Remove functions.
16593 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
16594 and save window location by kEventWindowShowing and kEventWindowHiding
16595 handlers here. Don't call next handler for window state change and
16596 focus events.
16597 (mac_handle_application_event, mac_handle_keyboard_event)
16598 [TARGET_API_MAC_CARBON]: New functions.
16599 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
16600 kEventWindowShowing and kEventWindowHiding events. Move installation
16601 of mouse, font, text input and menu target item handlers to
16602 install_application_handler.
16603 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
16604 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16605 New function.
16606 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16607 Register it.
16608 (XTread_socket) [TARGET_API_MAC_CARBON]:
16609 Consolidate SendEventToEventTarget calls.
16610 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
16611 Move application activation handler to mac_handle_application_event.
16612 Move keyboard handler to mac_handle_keyboard_event.
16613 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
16614 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
16615 init_command_handler. Call install_application_handler.
16616
16617 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
16618 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
16619
16620 2007-06-07 Glenn Morris <rgm@gnu.org>
16621
16622 * emacs.c (main): Use `emacs-copyright' in --version output.
16623
16624 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
16625
16626 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
16627
16628 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16629
16630 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
16631
16632 * macgui.h: Replace WindowPtr with WindowRef.
16633
16634 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16635 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16636 Replace ControlHandle with ControlRef.
16637 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
16638
16639 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16640 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16641 Replace ControlHandle with ControlRef.
16642 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
16643 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
16644
16645 * macterm.h (struct scroll_bar): Rename member control_handle_low
16646 and control_handle_high to control_ref_low and control_ref_high.
16647 All uses changed.
16648 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
16649 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
16650 respectively. All uses changed.
16651 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
16652 (install_window_handler, remove_window_handler): Replace WindowPtr
16653 with WindowRef in externs.
16654
16655 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
16656
16657 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
16658
16659 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
16660
16661 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
16662
16663 * frame.c (Fmouse_position, Fmouse_pixel_position):
16664 Condition on HAVE_GPM too.
16665
16666 * term.c (term_mouse_highlight): Remove unused variables.
16667 (Fterm_open_connection): Set gpm_zerobased to 1.
16668 (term_mouse_movement, term_mouse_click, handle_one_term_event):
16669 Use zero based co-ordinates.
16670 (handle_one_term_event): Report a drag as mouse movement too.
16671
16672 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
16673
16674 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
16675
16676 * image.c (search_image_cache): New function. Require background
16677 color match if background color is unspecified in the image spec.
16678 (uncache_image, lookup_image): Use it.
16679
16680 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
16681
16682 * window.c (Fshrink_window): Reflow docstring.
16683
16684 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
16685
16686 * Version 22.1 released.
16687
16688 2007-06-01 Richard Stallman <rms@gnu.org>
16689
16690 * xfns.c (x_encode_text): Add GCPRO.
16691
16692 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16693
16694 * xfns.c (x_set_name_internal): Save encoded name before
16695 x_encode_text in case string data is relocated.
16696
16697 2007-05-31 Richard Stallman <rms@gnu.org>
16698
16699 * buffer.c (syms_of_buffer): Doc fix.
16700
16701 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
16702
16703 * sysdep.c (init_sys_modes): Add rather than replace with
16704 O_NONBLOCK.
16705
16706 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
16707 term_mouse_moveto.
16708
16709 * termhooks.h (term_mouse_moveto): New extern.
16710
16711 * term.c (mouse_face_window): Rename...
16712 (Qmouse_face_window): ...to this.
16713 (term_show_mouse_face, term_clear_mouse_face)
16714 (term_mouse_highlight): Use Qmouse_face_window.
16715 (term_mouse_moveto): New function.
16716 (term_mouse_position): Make it work.
16717 (syms_of_term): Uncomment assignment to mouse_position_hook.
16718 Staticpro Qmouse_face_window.
16719
16720 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16721
16722 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
16723 around current_column call.
16724
16725 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
16726
16727 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
16728 * xdisp.c (next_element_from_buffer):
16729 * window.c (delete_window):
16730 * term.c (term_mouse_highlight):
16731 * msdos.c (getdefdir):
16732 * macterm.c (mac_create_bitmap_from_bitmap_data)
16733 (init_font_name_table):
16734 * fns.c (Fsxhash):
16735 * data.c (Fmake_local_variable):
16736 * ccl.c (ccl_driver): Likewise.
16737
16738 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16739
16740 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
16741 Call mac_wakeup_from_rne on window size change.
16742
16743 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
16744
16745 * image.c (uncache_image): Fix typo.
16746
16747 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
16748
16749 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
16750
16751 2007-05-22 Richard Stallman <rms@gnu.org>
16752
16753 * xterm.c (x_connection_closed): Remove NO_RETURN.
16754
16755 2007-05-22 Martin Rudalics <rudalics@gmx.at>
16756
16757 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
16758
16759 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
16760
16761 * image.c (uncache_image): New function.
16762 (Fimage_refresh): New function.
16763
16764 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
16765
16766 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
16767
16768 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
16769
16770 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
16771 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
16772
16773 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
16774
16775 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
16776 conditional on [HAVE_GPM_H].
16777
16778 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
16779
16780 * syntax.c (skip_chars): Update syntax-table only after we checked that
16781 the new location is valid.
16782
16783 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16784
16785 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
16786 mac_get_window_bounds.
16787
16788 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
16789
16790 * Makefile.in (LIBGPM): Allow it to be set from configure.
16791 If set then link Emacs with it.
16792
16793 * config.in: Regenerate.
16794
16795 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
16796 New externs.
16797
16798 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
16799 Include gpm.h.
16800 (handle_one_term_event, term_gpm): New externs.
16801
16802 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
16803 and allow it to be interrupted by SIGIO.
16804
16805 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
16806 (wait_reading_process_output): Wait on gpm_fd too.
16807 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
16808 (add_gpm_wait_descriptor_called_flag): New variable.
16809 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
16810
16811 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
16812 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
16813 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
16814 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
16815 (make_lispy_event): Add case GPM_CLICK_EVENT.
16816 (read_avail_input): Handle mouse input.
16817
16818 * term.c (write_glyphs_with_face): New function.
16819 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
16820 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
16821 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
16822 (mouse_face_face_id, term_gpm, pos_x, pos_y)
16823 (last_mouse_x, last_mouse_y): New variables.
16824 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
16825 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
16826 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
16827 (Fterm_close_connection): New functions.
16828 (term_init): Initialise mouse_face_window.
16829
16830 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
16831
16832 * xdisp.c (redisplay_window): If first window line is a
16833 continuation line, recompute the new window start instead of
16834 recentering.
16835
16836 2007-05-18 Glenn Morris <rgm@gnu.org>
16837
16838 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
16839 Suggested by Alfred M. Szmidt <ams@gnu.org>.
16840
16841 2007-05-17 Glenn Morris <rgm@gnu.org>
16842
16843 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
16844
16845 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16846
16847 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
16848 dead key repeat and up events.
16849
16850 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
16851
16852 * image.c (pbm_load): Check image size for monochrome pbm.
16853
16854 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
16855
16856 * xterm.c (XTread_socket): Revert last change.
16857
16858 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
16859
16860 * image.c (pbm_load): Correctly check image size for greyscale pbm.
16861
16862 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
16863
16864 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16865
16866 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
16867 mixup (YAILOM).
16868
16869 2007-05-07 Andreas Schwab <schwab@suse.de>
16870
16871 * keymap.c (Flookup_key): Fix typo in last change.
16872
16873 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16874
16875 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
16876 mapping for unibyte strings.
16877
16878 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16879
16880 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
16881 (Fx_popup_dialog) [MAC_OSX]: Likewise.
16882
16883 2007-04-29 Richard Stallman <rms@gnu.org>
16884
16885 * insdel.c (replace_range): For undo, record insertion first.
16886
16887 2007-04-29 Andreas Schwab <schwab@suse.de>
16888
16889 * lisp.h (VECSIZE): Use OFFSETOF.
16890
16891 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16892
16893 * xdisp.c (try_window_reusing_current_matrix): Fix number of
16894 disabled lines.
16895
16896 2007-04-28 Richard Stallman <rms@gnu.org>
16897
16898 * lread.c (read_escape): In a string, \s is always space.
16899
16900 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
16901
16902 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
16903
16904 * gtkutil.c (xg_update_menubar, create_menus): Create empty
16905 submenu for menu bar items.
16906
16907 See ChangeLog.10 for earlier changes.
16908
16909 ;; Local Variables:
16910 ;; coding: utf-8
16911 ;; add-log-time-zone-rule: t
16912 ;; bug-reference-url-format: "http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=%s"
16913 ;; End:
16914
16915 Copyright (C) 2007, 2008 Free Software Foundation, Inc.
16916
16917 This file is part of GNU Emacs.
16918
16919 GNU Emacs is free software: you can redistribute it and/or modify
16920 it under the terms of the GNU General Public License as published by
16921 the Free Software Foundation, either version 3 of the License, or
16922 (at your option) any later version.
16923
16924 GNU Emacs is distributed in the hope that it will be useful,
16925 but WITHOUT ANY WARRANTY; without even the implied warranty of
16926 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16927 GNU General Public License for more details.
16928
16929 You should have received a copy of the GNU General Public License
16930 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
16931
16932 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40