Fix setting of composition-function-table.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
f9c34147
JR
12009-01-01 Jason Rumney <jasonr@gnu.org>
2
3 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
4 Don't block input, as per earlier xterm.c changes.
5
f5497e45
AR
62008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
7
8 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
9 (ns_appkit_version_int): New function.
10 (x-server-version): Use ns_appkit_version_int and follow 21+
11 convention of returning 3 integers.
12
c19cab20
KH
132008-12-30 Kenichi Handa <handa@m17n.org>
14
15 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
16 (CHAR_SURROGATE_PAIR_P): New macro.
17
18 * font.h (struct font_driver): New member get_variation_glyphs.
19
20 * font.c (font_range): Don't require a font for a variation
21 selector.
22 (Ffont_variation_glyphs): New function.
23 (syms_of_font): Defsubr it.
24
25 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
26 ftfont_variation_glyphs.
27 (setup_otf_gstring): New function.
28 (ftfont_drive_otf): Use it.
29 (ftfont_shape_by_flt): Handle variation selector.
30 (ftfont_variation_glyphs): New function.
31
28cd591f
MR
322008-12-30 Martin Rudalics <rudalics@gmx.at>
33
34 * frame.c (Vemacs_iconified): Remove.
35
7f714baf
JR
362008-12-30 Jason Rumney <jasonr@gnu.org>
37
38 * frame.c (store_frame_param, x_get_arg): Enable newer code on
f9c34147 39 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 40
9d2d22ab
CY
412008-12-30 Chong Yidong <cyd@stupidchicken.com>
42
43 * indent.c (Fvertical_motion): Don't advance iterator if we have
44 reseated to the desired position.
45
46 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
47 checking for pos match.
48
545312c2
KH
492008-12-30 Kenichi Handa <handa@m17n.org>
50
1ede3eb6
KH
51 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
52 just get the low 8-bit of the code.
53
545312c2
KH
54 * font.c (font_intern_prop): Validate str as multibyte.
55
bd7bbf29
DN
562008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
57
31e0750e
DN
58 * dispextern.h (struct face): Move lface and hash from the middle
59 of bitfields.
60
bd7bbf29
DN
61 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
62
b5672e7c
DN
632008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
64
65 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
66 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
67 instead of intervals.h.
68
d704470f
AS
692008-12-26 Andreas Schwab <schwab@suse.de>
70
71 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
72 cons.
73
54b33868
MR
742008-12-26 Martin Rudalics <rudalics@gmx.at>
75
76 * textprop.c (Qminibuffer_prompt): New variable.
77 (syms_of_textprop): Initialize it.
78 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
79 in minibuffer-prompt face. (Bug#1662)
80
40b615d6
JR
812008-12-25 Jason Rumney <jasonr@gnu.org>
82
83 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
84
baae5c2d
JR
852008-12-24 Jason Rumney <jasonr@gnu.org>
86
87 * ralloc.c (r_alloc_reset_variable): New function.
88
89 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
85f967f9 90 record of what points where. (Bug#716)
baae5c2d 91
a9051c88
DN
922008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
93
94 * minibuf.c (read_minibuf): Follow the non-interactive case when
95 running as a daemon, before detaching.
96
8b146312
AS
972008-12-22 Andreas Schwab <schwab@suse.de>
98
99 * buffer.c (init_buffer): Use realloc instead of xrealloc.
100 * gtkutil.c (free_widget_value): Use xfree instead of free.
101
56f2de10
MR
1022008-12-22 Martin Rudalics <rudalics@gmx.at>
103
104 * frame.c (delete_frame): New function derived from
105 Fdelete_frame to handle Qnoelisp value for FORCE argument.
106 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
107 (Fdelete_frame): Call delete_frame. Remove line from doc-string
108 saying that FORCE non-nil doesn't run `delete-frame-functions'.
109 * frame.h: Extern delete_frame.
110 * window.c (window_loop):
111 * terminal.c (delete_terminal):
112 * xterm.c (x_connection_closed):
113 * xfns.c (Fx_hide_tip):
114 * w32fns.c (Fx_hide_tip): Call delete_frame instead of
115 Fdelete_frame.
116
1fc200d6
JR
1172008-12-21 Jason Rumney <jasonr@gnu.org>
118
119 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
120 when character maps to .notdef character.
121
5e252df2
SM
1222008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
123
124 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
125
99b72cc4
JR
1262008-12-20 Jason Rumney <jasonr@gnu.org>
127
128 * frame.c (Fmake_terminal_frame): Raise an error when called from
85f967f9 129 a graphical frame on Windows. (Bug#1325)
99b72cc4 130
acc49a52
JD
1312008-12-20 Jan Djärv <jan.h.d@swipnet.se>
132
133 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
134
6ea15123
CY
1352008-12-20 Chong Yidong <cyd@stupidchicken.com>
136
137 * minibuf.c (Fread_buffer): Doc fix.
138
b2dab6c8
JR
1392008-12-20 Jason Rumney <jasonr@gnu.org>
140
54ea0c87 141 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
85f967f9 142 server name in UNC paths. (Bug#719)
54ea0c87 143
b2dab6c8 144 * coding.c (decode_coding): Clear chars_at_source flag when using
85f967f9 145 charbuf. (Bug#1035)
b2dab6c8 146
6d1921be
DN
1472008-12-19 Daniel Engeler <engeler@gmail.com>
148
149 * sysdep.c (serial_configure): Fix typo.
150
53934c98
DN
1512008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
152
153 * sysdep.c: Include alloca.h.
f4f634e8
DN
154 (system_process_attributes): Add implementation for Solaris.
155
156 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 157
06e111a6
DN
1582008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
159
160 Reorganize implementation of Flist_system_processes and
161 Fsystem_process_attributes. No functional changes.
162 * process.c: Don't #include pwd.h, grp.h and limits.h.
163 (Flist_system_processes): Just call list_system_processes.
164 (Fsystem_process_attributes): Just call system_process_attributes.
165 (procfs_list_system_processes, time_from_jiffies)
166 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
167 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
168
169 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
170 (list_system_processes): Rename from
171 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
172 Provide a do nothing implementation.
173 (system_process_attributes): Rename from
174 procfs_list_system_processes.
175 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
176 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
177
178 * w32.c (list_system_processes): Rename from
179 w32_list_system_processes.
180 (system_process_attributes): Rename from
181 w32_system_process_attributes.
182
183 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
184
185 * process.h (w32_list_system_processes)
186 (w32_system_process_attributes): Remove.
187 (list_system_processes, system_process_attributes): New
188 prototypes.
189
6a705b23
KH
1902008-12-19 Kenichi Handa <handa@m17n.org>
191
192 * xfont.c (xfont_decode_coding_xlfd): New function.
193 (xfont_encode_coding_xlfd): New function.
194 (xfont_list_pattern): Decode XLFD by iso-8859-1.
195 (xfont_list): Decode and encode XLFD by iso-8859-1.
196 (xfont_match): Likewise.
197 (xfont_list_family): Likewise.
198 (xfont_open): Likewise.
199
200 * ftfont.c (ftfont_open): Genarate a multibyte string if given
201 names are utf-8.
202
203 * xftfont.c (xftfont_open): Genarate a multibyte string if given
204 names are utf-8.
205
5a130941
JD
2062008-12-18 Jan Djärv <jan.h.d@swipnet.se>
207
208 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
209 changed.
bfd20325
JD
210 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
211 clicked on a detached tool bar button.
5a130941 212
fd95644b
DN
2132008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
214
215 * emacs.c (main): Print and error and exit when no data is read
216 from the pipe.
217
e6eee6ae
JR
2182008-12-17 Jason Rumney <jasonr@gnu.org>
219
220 * w32font.c (w32font_has_char): Always return -1.
221
a35dd56b
KH
2222008-12-16 Kenichi Handa <handa@m17n.org>
223
224 * font.c (font_open_entity): Fix previous change.
225
0e3635c2
DN
2262008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
227
228 * process.c: Include <limits.h>.
229
d4835507 2302008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
231
232 * font.c (font_update_drivers): Fix mistake in reconstructing the
233 driver list.
234
2352008-12-16 Chong Yidong <cyd@stupidchicken.com>
236
237 * font.c (font_clear_cache): Fix format of font cache data.
238
e2cbc401
CY
2392008-12-15 Chong Yidong <cyd@stupidchicken.com>
240
241 * xftfont.c (xftfont_open): Free Xft font pattern if
242 XftFontOpenPattern fails.
243
244 * xterm.c (x_free_frame_resources): Remove extraneous call to
245 free_frame_faces.
246
b131d535
CY
2472008-12-13 Chong Yidong <cyd@stupidchicken.com>
248
249 * xterm.c (x_delete_display): Move xim_close_dpy call to
250 x_delete_terminal.
251 (x_delete_terminal): Call xim_close_dpy.
252
e6df5336
JR
2532008-12-13 Jason Rumney <jasonr@gnu.org>
254
255 * w32font.c (intern_font_name): New function.
256 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
257 (w32font_open_internal, Fx_select_font): Decode font name.
258 (fill_in_logfont, list_all_matching_fonts): Encode font name.
259
260 * w32font.h (intern_font_name): Declare new function.
261
262 * w32uniscribe.c (add_opentype_font_name_to_list):
263 Use intern_font_name.
264
20d68145
CY
2652008-12-13 Chong Yidong <cyd@stupidchicken.com>
266
9f2554de
CY
267 * frame.c (Fdelete_frame): Call free_font_driver_list.
268
3d9bec9a
CY
269 * font.c (free_font_driver_list): Implement missing function.
270
20d68145
CY
271 * w32term.c (w32_term_init): Don't initialize the image cache
272 here; it will be done in init_frame_faces.
273
274 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
275 (struct x_display_info): Remove unused member null_pixel. New
276 member xim_callback_data.
277
278 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
279 (xim_initialize): Save pointer to callback function data.
280 (xim_close_dpy): Free callback function data. Call XCloseIM,
281 reverting 2008-11-04 change by David Smith.
282 (x_term_init): Don't initialize the image cache here; it will be
283 done in init_frame_faces. Remove ancient "null_pixel" cruft.
284 (x_delete_display): Free x_dnd_atoms member.
285
96f9306b
KH
2862008-12-13 Kenichi Handa <handa@m17n.org>
287
288 * font.c (font_rescale_ratio): Moved from xfaces.c. Argument
289 type changed. Handle a font-spec too.
290 (font_score): Check Vface_font_rescale_alist.
291 (font_open_entity): Likewise.
292
293 * xfaces.c (font_rescale_ratio): Moved to font.c.
294
8d5b4964
CY
2952008-12-13 Chong Yidong <cyd@stupidchicken.com>
296
297 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
298
e6df5336
JR
2992008-12-12 Jason Rumney <jasonr@gnu.org>
300
301 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
302 Vwindow_system_version to the real w32 major version.
303
97c6058a
DN
3042008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
305
306 * term.c (init_tty): Move setting the terminal name before the
307 potential user: maybe_fatal.
308
ec4e88d7
CY
3092008-12-11 Chong Yidong <cyd@stupidchicken.com>
310
d4835507
JB
311 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
312 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 313
b4233ec9
JR
3142008-12-11 Jason Rumney <jasonr@gnu.org>
315
8ec71e23 316 * w32font.c (fill_in_logfont): Don't assume symbol script means
85f967f9 317 SYMBOL_CHARSET. (Bug#547)
8ec71e23 318
b4233ec9 319 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
e3021fe7 320 size for surrogates. (Bug#1096, bug#872)
b4233ec9 321
011a0143
JB
3222008-12-11 Juanma Barranquero <lekktu@gmail.com>
323
324 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
325
3c309f34
JB
3262008-12-11 Juanma Barranquero <lekktu@gmail.com>
327
328 * process.c (Fsystem_process_attributes, syms_of_process):
329 Fix typo in name of Ssystem_process_attributes.
330 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
331
fedc6ab5
JB
3322008-12-11 Juanma Barranquero <lekktu@gmail.com>
333
334 * syntax.c (Fmodify_syntax_entry): Doc fix.
335
ba3de0e8
JB
3362008-12-10 Juanma Barranquero <lekktu@gmail.com>
337
338 * font.c (Ffont_spec): Move usage to end of docstring.
339
174f1c74
JR
3402008-12-10 Jason Rumney <jasonr@gnu.org>
341
342 * w32font.c (Qcham): New symbol.
343 (font_supported_scripts): Add cham, and comments for other new
344 scripts in bitfield from OpenType spec.
9d32f818
JR
345 (add_font_entity_to_list): Limit unicode-sip fonts to those that
346 contain characters beyond the bmp.
174f1c74 347
7b649478
KH
3482008-12-10 Kenichi Handa <handa@m17n.org>
349
350 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 351 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
352 Qunicode_sip.
353
2133e2d1
JB
3542008-12-10 Juanma Barranquero <lekktu@gmail.com>
355
356 * coding.c (QCdefault_char): Rename from QCdefalut_char.
357 (Fcoding_system_put): Use QCdefault_char.
358 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
359
9af886ee
CY
3602008-12-09 Chong Yidong <cyd@stupidchicken.com>
361
74d819eb
CY
362 * xftfont.c (syms_of_xftfont): Fix typo.
363
4ccfa1c0 364 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 365
7c19d3ae
DN
3662008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
367
368 * emacs.c (main): Close daemon_pipe on exec.
369
567826bb
CY
3702008-12-08 Chong Yidong <cyd@stupidchicken.com>
371
372 * termchar.h (struct tty): New members termcap_term_buffer and
373 termcap_strings_buffer.
374
375 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 376 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
377 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
378 All callers changed.
379 (init_tty): Store termcap data and string buffers in new struct
380 tty members termcap_term_buffer and termcap_strings_buffer.
381 (delete_tty): Free them.
4ccfa1c0 382 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 383
aa96c42b
SZ
3842008-12-07 Seiji Zenitani <zenitani@mac.com>
385
386 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 387 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 388
b7e1d896
CY
3892008-12-06 Chong Yidong <cyd@stupidchicken.com>
390
391 * coding.c (make_conversion_work_buffer): Disable buffer
392 modification hooks in the work buffer.
393
b5ec91a5
EZ
3942008-12-05 Eli Zaretskii <eliz@gnu.org>
395
396 * process.c (procfs_system_process_attributes): If `nread' has a
397 negative value, assign zero to it.
398
a5d2a52b
CY
3992008-12-05 Chong Yidong <cyd@stupidchicken.com>
400
68c5540b 401 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 402
7bf1bb21
KH
4032008-12-05 Kenichi Handa <handa@m17n.org>
404
405 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
406 second character is a combining character.
407
2fdc7d00
EZ
4082008-12-05 Eli Zaretskii <eliz@gnu.org>
409
410 * process.c (procfs_system_process_attributes): Don't use cmd,
411 cmdsize, and q without initializing them first.
412
bf6bfba8
JR
4132008-12-04 Jason Rumney <jasonr@gnu.org>
414
415 * w32font.c (w32font_draw): Initialize orig_clip before getting
416 it, and delete it when finished.
417
a3b1a468
DN
4182008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
419
420 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
421 case when running as a daemon before detaching.
422
8b8be8eb
JB
4232008-12-03 Juanma Barranquero <lekktu@gmail.com>
424
805f2638 425 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 426
b1bde622
KH
4272008-12-03 Kenichi Handa <handa@m17n.org>
428
e500c47d
KH
429 * font.c (font_at): Set `multibyte' at first.
430
ca516334
KH
431 * coding.c (decode_coding_charset): Check type of an element of
432 vector VALIDS.
7bf1bb21 433 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 434
4ccfa1c0 435 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
436 (font_for_char): Likewise.
437
1e5ecd37
CY
4382008-12-03 Chong Yidong <cyd@stupidchicken.com>
439
d5b01609 440 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
441 (font_update_lface): Handle fonts with corrupted size specs,
442 i.e. non-int and non-float.
d5b01609 443
11e3a6e4 444 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 445 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 446 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 447
ab06788b
CY
448 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
449
1e5ecd37 450 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 451 underline_minimum_offset for underline position.
1e5ecd37 452
63c125ab
DN
4532008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
454
455 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
456
457 * character.c (c_string_width): Specify the type for LEN.
458
3a8406e1
KH
4592008-12-03 Kenichi Handa <handa@m17n.org>
460
4ccfa1c0 461 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 462 (decode_coding_utf_8): Likewise.
4ccfa1c0 463 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 464 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 465
651df7d9
CY
4662008-12-02 Chong Yidong <cyd@stupidchicken.com>
467
468 * keyboard.c (make_lispy_position): Only use PT if the selected
469 window is current.
470
1f625c6c
AS
4712008-12-02 Andreas Schwab <schwab@suse.de>
472
f7741ce9
AS
473 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
474
1f625c6c
AS
475 * doprnt.c (doprnt1): Fix size of charbuf.
476
92bc2678
CY
4772008-12-02 Chong Yidong <cyd@stupidchicken.com>
478
479 * keyboard.c (timer_check): Revert last change.
480
93b9e8cc
JB
4812008-12-02 Juanma Barranquero <lekktu@gmail.com>
482
483 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
484
fd7a37d5
JB
4852008-12-01 Juanma Barranquero <lekktu@gmail.com>
486
487 * makefile.w32-in: Update dependencies.
488 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
489
c115043b
AS
4902008-12-01 Andreas Schwab <schwab@suse.de>
491
492 * font.c (register_font_driver): Use xmalloc.
493 (font_put_frame_data): Likewise.
494
f5668d2a
CY
4952008-12-01 Chong Yidong <cyd@stupidchicken.com>
496
860d96be
CY
497 * xfaces.c (realize_x_face): Make abort condition clearer.
498
f5668d2a
CY
499 * gtkutil.c (update_frame_tool_bar): Initialize variable.
500
379c17e7
CY
5012008-11-30 Chong Yidong <cyd@stupidchicken.com>
502
503 * keyboard.c (timer_check): After a timer runs, ensure that the
504 selected window's buffer is current.
505
35f36d65
JB
5062008-11-30 Juanma Barranquero <lekktu@gmail.com>
507
f952c61c
JB
508 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
509 It was accidentally restored by the Unicode merge.
510
35f36d65
JB
511 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
512
b23077df
JB
5132008-11-29 Juanma Barranquero <lekktu@gmail.com>
514
515 * w32proc.c: Include "coding.h".
516 (Fw32_short_file_name): Encode filename passed to Windows API.
517 (Fw32_long_file_name): Encode filename passed to Windows API and
518 decode back the result. (Bug#1433)
519
b8ebe9dd
KH
5202008-11-29 Kenichi Handa <handa@m17n.org>
521
8cc53f96
KH
522 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
523 not before accessing it.
524
b8ebe9dd
KH
525 * charset.c (Fdefine_charset_internal): After calculating
526 min_char, max_char, and fastmap, copy the charset structure again.
527 (encode_char): Fix the previous change.
528
59bc82c0
SZ
5292008-11-28 Seiji Zenitani <zenitani@mac.com>
530
531 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
532
533 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
534
535 * nsterm.m (x_set_frame_alpha): New function.
536
32247e3d
EZ
5372008-11-27 Eli Zaretskii <eliz@gnu.org>
538
539 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
540
b003e5ff
JB
5412008-11-27 Juanma Barranquero <lekktu@gmail.com>
542
543 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
544 pointer to check_face_name.
545
708550f5
KH
5462008-11-27 Kenichi Handa <handa@m17n.org>
547
548 * category.h (SET_CATEGORY_SET): Call set_category_set.
549 (set_category_set): Extern it.
550
551 * category.c (hash_get_category_set): New function.
552 (Fmodify_category_entry): Adjusted for the change of
553 char_table_ref_and_range. Call hash_get_category_set to get a
554 category set to store in the table.
555
556 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
557 Funify_charset.
558
2ae37cf0 559 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
560 (DECODE_CHAR): Check if the decoder vector is ready.
561 (ENCODE_CHAR): Check if the encoder char-table is ready.
562 (maybe_unify_char): Extern it.
563
564 * charset.c (Vchar_unified_charset_table): Delete it.
565 (inhibit_load_charset_map): New variable.
566 (temp_charset_work): New variable.
567 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
568 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
569 New macros.
570 (load_charset_map): Meaning of control_flag changed. If
571 inhibit_load_charset_map is nonzero, setup a table in
572 temp_charset_work.
573 (load_charset): New argument control_flag.
574 (map_charset_for_dump): New function.
575 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
576 map_charset_for_dump.
577 (Fdefine_charset_internal): If the charset method is MAP, load
578 mapping tables by calling load_charset.
579 (Funify_charset): Don't load a mapping table but directly set
580 Vchar_unify_table.
581 (maybe_unify_char): New function.
582 (decode_char): Don't handle the deleted method MAP_DEFERRED.
583 Handle the case of inhibit_load_charset_map being nonzero.
584 (encode_char): Don't handle the deleted method MAP_DEFERRED.
585 Handle the case of inhibit_load_charset_map being nonzero.
586 (Fclear_charset_maps): Just free temp_charset_work.
587 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
588 variable.
589
590 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
591 change of char_table_ref_and_range.
592 (char_table_ref_and_range): Change the meaning of argument FROM
593 and TO. Now the caller must provide initial values for *FROM
594 and *TO.
595
596 * fontset.c (fontset_add): Adjusted for the change of
597 char_table_ref_and_range.
598 (fontset_get_font_group): Likewise.
599 (Ffontset_info): Likewise.
600
601 * keymap.c (describe_vector): Adjusted for the change of
602 char_table_ref_and_range. For char-table, put boundary between
603 non-ASCII and 8-bit characters.
604
605 * print.c (print_object): For bool-vector, delete unnecessary
606 check of ASCII_BYTE_P.
607
9196133b
JR
6082008-11-26 Jason Rumney <jasonr@gnu.org>
609
610 * w32font.c (w32font_open_internal): Don't include external
85f967f9 611 leading in font height. (Bug#879)
9196133b 612
9f688acf
GM
6132008-11-26 Glenn Morris <rgm@gnu.org>
614
615 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
616 redefinition with ifdef. (Bug#1383)
617
90d19aff
AR
6182008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
619
620 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
621
4ccfa1c0 6222008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
623
624 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
625 New EmacsView methods.
626 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
627 Fixes bug #1048,1357,1414.
628
6292008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
630
631 Fix bug #1362.
632 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
633 is not an indexed color.
634 * nsterm.m (free_indexed_color): Add argument checking.
635 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
636
e7d5ecb3
CY
6372008-11-24 Chong Yidong <cyd@stupidchicken.com>
638
639 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
640 Document confirm-after-completion value for
641 minibuffer-completion-confirm.
642
c285743c
JR
6432008-11-24 Jason Rumney <jasonr@gnu.org>
644
645 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
646 warning.
647
b0857706
JR
6482008-11-23 Jason Rumney <jasonr@gnu.org>
649
650 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
651 restored before returning.
652
653 * w32font.c (check_face_name): New function.
654 (add_font_entity_to_list): Use it to filter out common substituted
85f967f9 655 fonts. (Bug#642)
b0857706 656
ee50ff07
MR
6572008-11-22 Martin Rudalics <rudalics@gmx.at>
658
659 * buffer.c (Fswitch_to_buffer): Reword and mention new option
660 confirm-nonexistent-file-or-buffer in doc-string.
661
b8ff72fa
SM
6622008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
663
664 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
665 Fix copy/paste typo. Add checks.
666
cee53ed4
KH
6672008-11-21 Kenichi Handa <handa@m17n.org>
668
669 * coding.c (detect_coding_iso_2022): Reject invalid composition
670 sequence.
671 (DECODE_COMPOSITION_START): If the current source is the last
672 block, and the current composition doesn't end, regard this
673 sequence as invalid.
674 (decode_coding_iso_2022): Handle invalid composition sequence.
675
f6ef1e65
MR
6762008-11-20 Martin Rudalics <rudalics@gmx.at>
677
678 * window.c (coordinates_in_window): Don't return
679 ON_VERTICAL_BORDER for the rightmost position of a mode/header
680 line when the window is not the rightmost one. (Bug#1372)
681
e08b1705
MR
6822008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
683
684 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
685
ad98e89f
EZ
6862008-11-15 Eli Zaretskii <eliz@gnu.org>
687
688 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
689 and bright_bg if noninteractive is non-zero.
690
fb098a4b
CY
6912008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
692
693 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
694 x_draw_glyph_string_background.
695
696 * w32term.c (x_draw_glyph_string): Likewise.
697
ce952b6e
CY
6982008-11-15 Chong Yidong <cyd@stupidchicken.com>
699
700 * xterm.c (x_draw_glyph_string): Stop drawing the background of
701 the next glyph string once past the overhang width.
702
703 * nsterm.m (ns_draw_glyph_string): Likewise.
704
705 * w32term.c (x_draw_glyph_string): Likewise.
706
26ea7079
CY
7072008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
708
709 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
710 double file close.
711
1c33c906
MR
7122008-11-14 Martin Rudalics <rudalics@gmx.at>
713
714 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
715 dedicated status of window before attempting to display another
716 buffer in it.
717
8fc29035
JB
7182008-11-14 Juanma Barranquero <lekktu@gmail.com>
719
720 * msdos.c (Fmsdos_long_file_names):
721 (syms_of_msdos) <dos-unsupported-char-glyph>:
722 * dosfns.c (Fint86): Fix typos in docstrings.
723
55fb4286
EZ
7242008-11-14 Eli Zaretskii <eliz@gnu.org>
725
726 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
727
3fda0315
KY
7282008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
729
730 * puresize.h (BASE_PURESIZE): Increase to 1260000.
731
7e849c17
CY
7322008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
733
734 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
735
736 * frame.h: Negative alpha means "don't touch".
737
738 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
739
740 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
741
b9fd67bd
DN
7422008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
743
744 * hftctl.c:
745 * chpdef.h:
746 * acldef.h: Remove files used only for systems no longer supported.
747
748 * Makefile.in: Fix .o alphabetical ordering.
749 (hftctl.o): Remove dependency, file removed.
750 (keymap.o, print.o): Depend on charset.h.
751
d5998e03
KH
7522008-11-10 Kenichi Handa <handa@m17n.org>
753
2ae37cf0 754 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 755
be70e183
CY
7562008-11-08 Chong Yidong <cyd@stupidchicken.com>
757
758 * dired.c (file_name_completion): If completion_ignore_case is
759 enabled, ignore case when checking completion-regexp-list.
760
7cf94eac
EZ
7612008-11-08 Eli Zaretskii <eliz@gnu.org>
762
763 * vm-limit.c (get_lim_data): Fix last change.
764
ee107a89
KH
7652008-11-08 Kenichi Handa <handa@m17n.org>
766
767 * character.c (Fget_byte): New function.
768 (syms_of_character): Defsubr Fget_byte.
769
5fd15622
CY
7702008-11-07 Chong Yidong <cyd@stupidchicken.com>
771
772 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
773 cursor position is valid after scrolling.
774
13d62fad
JB
7752008-11-06 Juanma Barranquero <lekktu@gmail.com>
776
777 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
778
a1dd2936
GM
7792008-11-06 Glenn Morris <rgm@gnu.org>
780
781 * xterm.c (handle_one_xevent): Don't let popup menus cause
782 mouse-autoselect-window related window switching. (Bug#1261)
783
860cd236
CY
7842008-11-04 David Smith <davidsmith@acm.org> (tiny change)
785
786 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
787
653a3150
AS
7882008-11-04 Andreas Schwab <schwab@suse.de>
789
790 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
791
870f5cac
CY
7922008-11-03 Chong Yidong <cyd@stupidchicken.com>
793
794 * xfns.c (Fx_wm_set_size_hint): New function.
795
1e02f3cb
MR
7962008-11-03 Martin Rudalics <rudalics@gmx.at>
797
798 * textprop.c (Fprevious_single_char_property_change): Return 0
799 when there's no change in a string. (Bug#1301)
800
e630dfc6
MR
8012008-11-02 Martin Rudalics <rudalics@gmx.at>
802
803 * frame.c (do_switch_frame): New argument NORECORD passed to
804 Fselect_window.
805 (Fselect_frame): New argument NORECORD passed to
806 do_switch_frame.
807 (Fset_frame_selected_window): New argument NORECORD passed to
808 Fselect_frame.
809 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
810 in call of do_switch_frame.
811 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
812 Handle NORECORD argument in call of Fselect_frame.
813 * lisp.h (do_switch_frame, Fselect_frame)
814 (Fset_frame_selected_window): Adjust declarations.
815 * window.c (select_frame_norecord): New function.
816 (run_window_configuration_change_hook): Use it and call
817 Fselect_frame with NORECORD set.
818 (Fselect_window): Pass NORECORD to Fselect_frame.
819 (Fset_window_configuration): Handle NORECORD argument in call of
820 do_switch_frame.
821 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
822 Fset_frame_selected_window.
823 * keyboard.c (command_loop_1): Handle NORECORD in call of
824 Fselect_frame (currently ifdefd).
825
9020b223
GM
8262008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
827
828 * emacs.c (USAGE2): Untabify.
829
793ffee8
SM
8302008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
831
832 * composite.c (fill_gstring_header): Fix copy/paste typo.
833
ab6d1131
MR
8342008-10-31 Martin Rudalics <rudalics@gmx.at>
835
836 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
837 (Fother_window): Rename argument and rewrite doc-string.
838 (select_window_norecord): Fix return value. (Bug#1276)
839
601a9cf1
JB
8402008-10-30 Juanma Barranquero <lekktu@gmail.com>
841
842 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
843 new frames overriding foreground for tooltips. Based on similar patch
844 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
845
813b0652
CY
8462008-10-29 Chong Yidong <cyd@stupidchicken.com>
847
848 * emacs.c (Fdaemon_initialized): Initialize nfd.
849
4414f58f
MR
8502008-10-29 Martin Rudalics <rudalics@gmx.at>
851
852 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
853 (Fwindow_text_height): Clarify doc-strings.
854 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
855 doc-string of window-scroll-functions.
856
ecdcaa09
RS
8572008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
858
859 * category.c (syms_of_category): Fix typo in docstring.
860
23fe745a
JB
8612008-10-28 Juanma Barranquero <lekktu@gmail.com>
862
863 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
864 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
865 Fix typos in docstrings.
866
ff808935
DN
8672008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
868
869 * emacs.c (daemon_pipe): Make non-static.
870 (IS_DAEMON): Move definition ...
871 * lisp.h (IS_DAEMON): ... here.
872 (daemon_pipe): Declare.
873 (is_daemon): Remove.
874 * dispnew.c (init_display): Use IS_DAEMON.
875
fc012771
SM
8762008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
877
878 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
879 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
880
881 * emacs.c (is_daemon): Remove.
882 (main): Don't set is_daemon.
883 (IS_DAEMON): New macro.
884 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 885 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
886 parent exits.
887 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
888
d8bdbe6f
CY
8892008-10-27 Chong Yidong <cyd@stupidchicken.com>
890
d1a072bf
CY
891 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
892 over-sized glyph, draw it with the default glyph width.
893
e2e325aa
CY
894 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
895 glyph, draw it with the default glyph width.
896
897 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
898 glyph, draw it with the default glyph width.
899
d8bdbe6f
CY
900 * xdisp.c (try_scrolling): When computing the distance from the
901 scroll margin to PT, try moving some distance past the window
902 bottom before giving up.
903
7bfac547
MR
9042008-10-27 Martin Rudalics <rudalics@gmx.at>
905
906 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
907 (Fset_window_buffer): Explain in doc-string that a window can be
908 "strongly" dedicated to its buffer.
909
4ff029f6
DN
9102008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
911
912 * emacs.c (daemon_name): New variable.
913 (main): Deal with --daemon=SERVER_NAME.
914 (Fdaemonp): Return a name if one was passed to --daemon.
915
5790ef40
DN
9162008-10-26 Romain Francoise <romain@orebokech.com>
917
f9bd0df9 918 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
919 (main): Create a pipe before forking, make the parent exit only after
920 the child has closed its end of the pipe. Move closing the
921 descriptors ...
922 (Fdaemon_initialized): ... here. New function.
923
f5385255
SM
9242008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
925
4d632321
SM
926 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
927 the previous unoptimized table.
928
f5385255
SM
929 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
930 the distinction between non-nil and non-t value of `dedicated'.
931
6c56a0f3
CY
9322008-10-25 Chong Yidong <cyd@stupidchicken.com>
933
934 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 935 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 936
fec89261
MR
9372008-10-25 Martin Rudalics <rudalics@gmx.at>
938
939 * window.c (Fget_buffer_window, Fdelete_windows_on)
940 (Freplace_buffer_in_windows): Make buffer argument optional and
941 rename to buffer_or_name.
942
34fcddd0
CY
9432008-10-24 Chong Yidong <cyd@stupidchicken.com>
944
f5385255
SM
945 * xdisp.c (handle_single_display_spec, handle_display_prop):
946 Undo 2005-05-16 change.
34fcddd0
CY
947 (handle_stop): Pop iterator if it's loaded with an empty string.
948 (get_overlay_strings_1): Don't save iterator if it's loaded with
949 an empty string (bug#1201).
950
064766f2
KH
9512008-10-24 Kenichi Handa <handa@m17n.org>
952
953 * ftfont.c (ftfont_otf_features): Fix previous change.
954 (ftfont_otf_capability): Check FeatureList.FeatureCount before
955 calling ftfont_otf_features.
956
f9bd0df9 9572008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
958
959 * font.c (font_match_p): Fix for the case that a vector of
960 characters is in script-representative-chars.
961
1dae9197
MA
9622008-10-24 Michael Albinus <michael.albinus@gmx.de>
963
964 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 965 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
966 (xd_read_queued_messages): Catch Qdbus_error from the macros.
967 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
968 macro. (Bug#1186).
969
f9bd0df9 9702008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
971
972 * s/sol2-10.h: New file.
973
878a4584
JB
9742008-10-23 Juanma Barranquero <lekktu@gmail.com>
975
976 * xdisp.c (fill_glyph_string): Fix typo in source (though the
977 poor beast has survived 9+ years and the jump from xterm.c!).
978
cd265ca6
MR
9792008-10-23 Martin Rudalics <rudalics@gmx.at>
980
981 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
982 Reword doc-string.
f5385255 983 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 984
472a4dc9
JB
9852008-10-23 Juanma Barranquero <lekktu@gmail.com>
986
987 * character.c (syms_of_character) <script-representative-chars>:
988 <unicode-category-table>: Doc fixes.
989
159bd5a2
NF
9902008-10-23 Noah Friedman <friedman@splode.com>
991
992 * coding.c (make_conversion_work_buffer): Check that
993 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
994 Fget_buffer_create.
995
49f9c344
KH
9962008-10-23 Kenichi Handa <handa@m17n.org>
997
998 * font.c (font_add_log): Check the values of extra properties.
999
12bb3111
MR
10002008-10-22 Martin Rudalics <rudalics@gmx.at>
1001
1002 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1003 Reword doc-string.
1004 (Fset_window_parameter): Use NILP.
1005 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 1006 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 1007
bbeb4e99
JB
10082008-10-22 Juanma Barranquero <lekktu@gmail.com>
1009
1010 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
1011
10122008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
1013
1014 * nsfns.m (ns_appkit_version): New function.
1015 (x-server-version): Use it.
1016 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
1017 (x-server-vendor): Don't check_ns().
1018
1019 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
1020
a9b555d3
JB
10212008-10-22 Juanma Barranquero <lekktu@gmail.com>
1022
1023 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
1024 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
1025
4626499f
KH
10262008-10-22 Kenichi Handa <handa@m17n.org>
1027
e3681952
KH
1028 * syntax.c (scan_words): Call word_boundary_p instead of comparing
1029 scripts.
1030
4626499f
KH
1031 * category.c (word_boundary_p): Check scripts instead of charset.
1032 Handle nil value in word-separating-categories and
1033 word-combining-categories.
1034 (syms_of_category): Fix docstrings of word-separating-categories
1035 and word-combining-categories.
1036
1560f91a
EZ
10372008-10-21 Eli Zaretskii <eliz@gnu.org>
1038
1039 * coding.c (Fencode_coding_region, Fdecode_coding_region)
1040 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
1041
f4668441
MR
10422008-10-21 Martin Rudalics <rudalics@gmx.at>
1043
1044 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
1045 Rename arg "buffer" to "buffer_or_name".
1046 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
1047 it optional.
1048 (no_switch_window): Remove since the return value is not used.
a9b555d3 1049 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
1050 Consider window as dedicated when Fwindow_dedicated_p returns a
1051 non-nil value.
1052 * lisp.h: Remove prototype for no_switch_window.
1053
fd75ddb2
JD
10542008-10-21 Jan Djärv <jan.h.d@swipnet.se>
1055
1056 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 1057 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 1058
07295713
KH
10592008-10-21 Kenichi Handa <handa@m17n.org>
1060
1061 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
1062 check Vlatin_extra_code_table.
1063
712adc82
EZ
10642008-10-20 Eli Zaretskii <eliz@gnu.org>
1065
1066 * fileio.c (Fset_file_modes): Doc fix.
1067
f549eb0b
MA
10682008-10-19 Michael Albinus <michael.albinus@gmx.de>
1069
1070 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
1071 in arrays.
1072
aac0c6e3
MR
10732008-10-19 Martin Rudalics <rudalics@gmx.at>
1074
1075 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1076 Mention kill-buffer in doc-string.
1077 (Fset_window_buffer): Reinsert tem check removed in last commit.
1078 (Fenlarge_window, Fshrink_window): Have argument names and
1079 doc-string follow Elisp manual more closely.
1080
10812008-10-18 Eli Zaretskii <eliz@gnu.org>
1082
1083 * fileio.c (Fset_file_modes): Doc fix.
1084
10852008-10-18 Martin Rudalics <rudalics@gmx.at>
1086
1087 * window.c (Fwindow_width, Fset_window_start)
1088 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
1089 (Fdelete_windows_on, Freplace_buffer_in_windows):
1090 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
1091 (Fwindow_dedicated_p): Make window argument optional.
1092 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
1093 (Fset_window_buffer): Respect any non-nil dedicated value for
1094 window. Rename "buffer" argument to "buffer_or_name".
1095
10962008-10-18 Ulrich Mueller <ulm@gentoo.org>
1097
1098 * m/sh3.h: New file, machine description for SuperH.
1099
11002008-10-17 Martin Rudalics <rudalics@gmx.at>
1101
1102 * window.c (Fsplit_window): Rename arg horflag to horizontal.
1103
11042008-10-17 Kenichi Handa <handa@m17n.org>
1105
1106 * ftfont.c (ftfont_otf_features): Fix indexing
1107 gsub_gpos->FeatureList.Feature. Check the validity of indices.
1108
11092008-10-16 Magnus Henoch <mange@freemail.hu>
1110
1111 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
1112 (Fdbus_call_method_asynchronously): Ditto.
1113 This change makes C-h f display the argument list.
1114
11152008-10-16 Chong Yidong <cyd@stupidchicken.com>
1116
1117 * fileio.c (Fexpand_file_name): Doc fix.
1118
1119 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
1120 of :foreground and :background equivalent to unspecified (20.x
1121 compatibility).
1122
11232008-10-15 Eli Zaretskii <eliz@gnu.org>
1124
1125 * buffer.c (syms_of_buffer): Doc fix.
1126
11272008-10-14 Kenichi Handa <handa@m17n.org>
1128
1129 * font.c (font_clear_prop): When clearing font width, clear the
1130 average width field too.
1131
11322008-10-12 Andreas Schwab <schwab@suse.de>
1133
1134 * ftfont.c (ftfont_shape_by_flt): Make static.
1135 * ftfont.h (ftfont_shape_by_flt): Don't declare.
1136
1137 * font.c: Don't include <m17n-flt.h>.
1138
11392008-10-10 Eli Zaretskii <eliz@gnu.org>
1140
1141 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
1142
11432008-10-09 Eli Zaretskii <eliz@gnu.org>
1144
1145 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
1146 away code.
1147
11482008-10-09 Chong Yidong <cyd@stupidchicken.com>
1149
1150 * dispnew.c (update_text_area): Avoid looping due to large glyph
1151 overhangs (bug#1070).
1152
11532008-10-09 Kenichi Handa <handa@m17n.org>
1154
1155 * fontset.c (face_for_char): If face->fontset is negative, just
1156 return ascii_face.
1157
f5385255
SM
1158 * font.c (font_delete_unmatched): Fix previous change.
1159 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
1160
11612008-10-09 Martin Rudalics <rudalics@gmx.at>
1162
1163 * frame.c (Fraise_frame): On text-only terminals select frame in
1164 order to make it visible. (Bug#1061)
1165
11662008-10-08 Chong Yidong <cyd@stupidchicken.com>
1167
1168 * fontset.c (fontset_find_font): Check frame validity.
1169
11702008-10-07 Chong Yidong <cyd@stupidchicken.com>
1171
a9b555d3 1172 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
1173 (xg_display_close): Allow Emacs to close all displays (bug#985).
1174
11752008-10-06 Andreas Schwab <schwab@suse.de>
1176
f5385255 1177 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
1178
11792008-10-06 Chong Yidong <cyd@stupidchicken.com>
1180
f5385255 1181 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 1182
a9b555d3 1183 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
1184
1185 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
1186 during initialization.
1187
11882008-10-04 Eli Zaretskii <eliz@gnu.org>
1189
1190 * xdisp.c (redisplay_internal): If frame switched, redisplay the
1191 whole thing on MSDOS frames as well as on a TTY.
1192
1193 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
1194 well as for TTY.
1195 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
1196 well as on a TTY.
1197
1198 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
1199 as well as for TTY.
1200
1201 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
1202
1203 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
1204 MSDOS frames as well.
1205
12062008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1207
1208 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
1209 correct arguments.
1210 * menu.c (find_and_return_menu_selection) Add cast.
1211
12122008-10-03 Glenn Morris <rgm@gnu.org>
1213
1214 * emacs.c (USAGE1): Add --daemon.
1215
12162008-10-02 Eli Zaretskii <eliz@gnu.org>
1217
1218 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
1219 100, so it's in percents as advertised.
1220
12212008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1222
1223 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
1224 (ns_output.current_cursor, ns_output.desired_cursor)
1225 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
1226 (FRAME_NEW_CURSOR_COLOR): Remove.
1227
1228 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 1229 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
1230 enumeration (HOLLOW_BOX_CURSOR, etc.).
1231
1232 * nsterm.m (ns_frame_rehighlight): Remove commented code.
1233 (draw_window_cursor): Simplify code.
f5385255
SM
1234 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
1235 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 1236 updates manually.
a9b555d3
JB
1237 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
1238 Use core Emacs cursor types.
aac0c6e3 1239
b8ff72fa 1240 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
1241
12422008-10-02 Martin Rudalics <rudalics@gmx.at>
1243
1244 * process.c (Faccept_process_output): Fix doc-string.
1245
12462008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1247
1248 * gmalloc.c (__sbrk): Also define for uClibc.
1249
1250 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
1251 for uClibc.
1252
12532008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1254
1255 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
1256 styles.
1257 (nsfont_open): Reenable the cache.
1258
12592008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1260
1261 * font.c (font_matching_entity): Reflect ATTRS in font selection.
1262 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
1263
12642008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
1265
1266 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
1267 a suspended terminal.
1268
12692008-09-30 Michael Albinus <michael.albinus@gmx.de>
1270
1271 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
1272
12732008-09-30 Eli Zaretskii <eliz@gnu.org>
1274
1275 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
1276
12772008-09-30 Chong Yidong <cyd@stupidchicken.com>
1278
1279 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
1280 in a continued line coincides with a line beginning.
1281
12822008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1283
1284 * nsfont.m (nsfont_trait_distance): Fix bug.
1285 (nsfont_list): Return a list rather than a vector (syncs with Handa
1286 changes of 2008-05-14).
1287 (nsfont_open): Improve logging.
1288
12892008-09-29 Andreas Schwab <schwab@suse.de>
1290
1291 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1292
12932008-09-28 Martin Rudalics <rudalics@gmx.at>
1294
1295 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
1296 name as char-resolve-modifiers.
1297 Reported by: Markus Triska <markus.triska@gmx.at>
1298
12992008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
1300
1301 * dispnew.c (init_display): Return earlier when running as a daemon.
1302
13032008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1304
1305 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
1306
13072008-09-27 Eli Zaretskii <eliz@gnu.org>
1308
1309 * composite.c (Fcomposition_get_gstring)
1310 (Fcompose_region_internal, Fcompose_string_internal)
1311 (Ffind_composition_internal): Doc fix.
1312 (syms_of_composite) <compose-chars-after-function>: Doc fix.
1313 (syms_of_composite) <auto-composition-function>: Doc fix.
1314 (syms_of_composite) <composition-function-table>: Doc fix.
1315
13162008-09-25 Chong Yidong <cyd@stupidchicken.com>
1317
1318 * search.c (wordify): New argument for lax word-ends.
1319 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
1320
13212008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
1322
1323 * lisp.h (is_daemon): Declare.
1324 * dispnew.c (init_display): Do not try to initialize the terminal
1325 when running as a daemon.
1326
13272008-09-22 Chong Yidong <cyd@stupidchicken.com>
1328
1329 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
1330 x_display_pixel_height.
1331
13322008-09-22 Martin Rudalics <rudalics@gmx.at>
1333
1334 * undo.c (record_point): Don't call Fundo_boundary for first
1335 change. (Bug#731)
1336
13372008-09-22 Juanma Barranquero <lekktu@gmail.com>
1338
1339 * emacs.c (Fdaemonp): Doc fix.
1340
13412008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
1342
1343 * emacs.c (main): Place #ifdef in the proper place.
1344
13452008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
1346
1347 * emacs.c (standard_args): Add --daemon.
1348 (main): Disconnect from the terminal when --daemon is passed.
1349 (is_daemon): New variable.
1350 (Fdaemonp): New function.
1351 (syms_of_emacs): Defsubr it.
1352
13532008-09-20 Chong Yidong <cyd@stupidchicken.com>
1354
1355 * xdisp.c (get_next_display_element): Handle string display
1356 correctly when checking for the end of a box run.
1357
13582008-09-20 Glenn Morris <rgm@gnu.org>
1359
1360 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
1361 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
1362 (Frename_file): Avoid copying to trash if a rename involves
1363 a delete. (Bug#964).
1364
13652008-09-20 Eli Zaretskii <eliz@gnu.org>
1366
1367 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
1368 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
1369 frames as well as termcap frames.
1370 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
1371 get_named_tty.
1372
13732008-09-19 Eli Zaretskii <eliz@gnu.org>
1374
1375 * process.c (procfs_system_process_attributes): Fix cmdline in
1376 case /proc/PID/cmdline is empty.
1377
1378 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
1379 x_display_pixel_height.
1380
13812008-09-19 Juanma Barranquero <lekktu@gmail.com>
1382
1383 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
1384
1385 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
1386 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
1387
13882008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
1389
1390 * dispextern.h (struct it): Move line_wrap away from the middle of
1391 bitfields. Move voffset in struct iterator_stack_entry after the
1392 bitfields. Move tab_width near after another short.
1393
13942008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
1395
1396 * frame.h (struct frame): Move alpha from the middle of bitfields.
1397
1398 * window.h (struct window): Move frozen_window_start_p after the
1399 rest of the bitfields to reduce padding.
1400
14012008-09-18 Chong Yidong <cyd@stupidchicken.com>
1402
1403 * xterm.h (x_display_info): Remove `height' and `width' members.
1404
1405 * nsterm.h (ns_display_info): Remove `height' and `width' members.
1406
1407 * w32term.h (w32_display_info): Remove `height', `width',
1408 `height_in', and `width_in' members.
1409
b8ff72fa
SM
1410 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1411 New functions.
aac0c6e3
MR
1412 (x_calc_absolute_position): Use them.
1413 (x_term_init): Omit removed `height' and `width' members.
1414
b8ff72fa
SM
1415 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1416 New functions.
aac0c6e3
MR
1417 (w32_read_socket, x_calc_absolute_position): Use them.
1418 (w32_initialize_display_info, w32_term_init): Omit removed members
1419 of w32_display_info.
1420
b8ff72fa
SM
1421 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
1422 New functions.
1423 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 1424
b8ff72fa
SM
1425 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1426 New functions.
aac0c6e3
MR
1427 (x_calc_absolute_position): Use them.
1428 (x_term_init): Omit removed `height' and `width' members.
1429
1430 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
1431 (compute_tip_xy):
1432 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
1433 * xmenu.c (menu_position_func): Use x_display_pixel_height and
1434 x_display_pixel_width.
1435
14362008-09-18 Kenichi Handa <handa@m17n.org>
1437
1438 * composite.c (fill_gstring_header): Don't check FROM and TO here.
1439 (composition_compute_stop_pos): Fix handling of static composition.
1440 (Fcomposition_get_gstring): Check FROM and TO at first.
1441
14422008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1443
1444 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Oject
1445 mixup (YAILOM).
1446
14472008-09-17 Chong Yidong <cyd@stupidchicken.com>
1448
1449 * indent.c (Fvertical_motion): Use position reported by iterator
1450 instead of PT for determining screen motion (bug#943).
1451
14522008-09-17 Romain Francoise <romain@orebokech.com>
1453
1454 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
1455
14562008-09-17 Kenichi Handa <handa@m17n.org>
1457
1458 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
1459
1460 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
1461 if necessary.
1462
14632008-09-16 Kenichi Handa <handa@m17n.org>
1464
1465 * coding.c (make_conversion_work_buffer): Avoid calling
1466 Fget_buffer_create if it is not necessary.
1467
14682008-09-15 Martin Rudalics <rudalics@gmx.at>
1469
1470 * window.c (Fselect_window): Don't update window_select_count and
1471 use_time when norecord is not nil.
1472
14732008-09-14 Kenichi Handa <handa@m17n.org>
1474
1475 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
1476 specpdl_ptr.
1477
14782008-09-12 Kenichi Handa <handa@m17n.org>
1479
1480 * indent.c (scan_for_column): Don't handle automatic composition
1481 if the current buffer is not associated with a window.
1482
1483 * composite.c (composition_reseat_it): If the current buffer is
1484 not associated with a window, ignore the automatic composition.
1485 (find_automatic_composition): Likewise.
1486
14872008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1488
1489 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
1490 (Fgpm_mouse_stop): Use it.
1491 * termhooks.h (close_gpm): Declare.
1492 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
1493 connection if Gpm_GetEvent fails.
1494
1495 * window.c (set_window_buffer): Always preserve current-buffer.
1496
14972008-09-12 Glenn Morris <rgm@gnu.org>
1498
1499 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
1500
15012008-09-11 Glenn Morris <rgm@gnu.org>
1502
1503 * charset.c (charset-map-path): Doc fix.
1504
15052008-09-10 Kenichi Handa <handa@m17n.org>
1506
1507 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
1508
1509 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
1510 compose a grapheme cluster with the preceding base glyph.
1511
1512 * composite.c (composition_compute_stop_pos): Fix previous change.
1513 Reset cmp_it->id to -1 at first.
1514
15152008-09-10 Glenn Morris <rgm@gnu.org>
1516
1517 * Makefile.in (character.o, chartab.o): Fix config.h typo.
1518
15192008-09-09 Chong Yidong <cyd@stupidchicken.com>
1520
1521 * keyboard.c (read_key_sequence): Reapply translation maps when
1522 switching keyboards.
1523
15242008-09-09 Kenichi Handa <handa@m17n.org>
1525
1526 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
1527 characters.
1528
1529 * composite.c (FORWARD_CHAR): Fix calculation
1530 of (POSITION).pos_byte.
1531 (composition_compute_stop_pos): Limit the search of composition to
1532 at most 500 characters ahead. If we reach the limit or find a
1533 newline, set cmp_it->ch to -2 and return 0.
1534 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
1535
15362008-09-08 Kenichi Handa <handa@m17n.org>
1537
1538 * indent.c (Fvertical_motion): Be sure to set
1539 it_overshoot_expected if it.cmp_it.id is non-negative.
1540
15412008-09-07 Andreas Schwab <schwab@suse.de>
1542
1543 * callproc.c (Fcall_process): Don't hold references to string data
1544 across garbage collection. Move initialisation of new_argv down
1545 to avoid compiler bug.
1546
15472008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1548
1549 * process.c (Fsystem_process_attributes): Doc fix.
1550
15512008-09-07 Chong Yidong <cyd@stupidchicken.com>
1552
1553 * callproc.c (Fcall_process): Canonicalize current directory name.
1554
1555 * xdisp.c (move_it_to): When moving by vpos, ensure that the
1556 iterator advances to the next line if the current line ends in a
1557 continued tab.
1558
15592008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
1560
1561 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
1562 member to point to cmp_from.
1563
1564 * xdisp.c: Doc fix for references to gidx data member.
1565
15662008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1567
1568 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
1569
15702008-09-07 Kenichi Handa <handa@m17n.org>
1571
1572 * composite.c (FORWARD_CHAR): Check STOP after
1573 incrementing (POSITION).pos.
1574
15752008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1576
1577 * process.c (Fsystem_process_attributes): Doc fix.
1578
15792008-09-06 Chong Yidong <cyd@stupidchicken.com>
1580
1581 * keyboard.c (Ftop_level): Doc fix.
1582
15832008-09-06 Eli Zaretskii <eliz@gnu.org>
1584
1585 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
1586 minibuffer, don't let lower part of menu invade the echo area.
1587
1588 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
1589 "char *q" to access menu text and advance through it. Revert the
1590 change that displayed ">" instead of ASCII character 0x10.
1591
15922008-09-05 Eli Zaretskii <eliz@gnu.org>
1593
1594 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
1595 toggle boxes and radio buttons on MS-DOS as well.
1596
15972008-09-05 Kenichi Handa <handa@m17n.org>
1598
1599 * composite.c (autocmp_chars): Check lookback count.
1600 (composition_compute_stop_pos): Set cmp_it->lookback.
1601 (composition_reseat_it): Check lookback count.
1602 (struct position_record): New struct.
1603 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
1604 (find_automatic_composition): New function.
1605 (composition_adjust_point): Use find_automatic_composition.
1606
1607 * dispextern.h (struct composition_it): New member lookback.
1608
16092008-09-02 Chong Yidong <cyd@stupidchicken.com>
1610
1611 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
1612 if moving by a single line.
1613
16142008-09-02 Andreas Schwab <schwab@suse.de>
1615
1616 * xterm.c (x_delete_display): Fix merge error.
1617
1618 * fileio.c (Fexpand_file_name): Remove unused variables.
1619
16202008-09-02 Eli Zaretskii <eliz@gnu.org>
1621
1622 * fileio.c (Fexpand_file_name): Copy argument `name' into local
1623 storage on all platforms, not just on DOS_NT.
1624
16252008-09-02 Jason Rumney <jasonr@gnu.org>
1626
b8ff72fa
SM
1627 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
1628 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
1629
16302008-09-01 Chong Yidong <cyd@stupidchicken.com>
1631
1632 * xfaces.c (Finternal_set_alternative_font_family_alist)
1633 (Finternal_set_alternative_font_registry_alist): Properly copy
1634 entire alist structure.
1635
16362008-09-01 Kenichi Handa <handa@m17n.org>
1637
1638 * ftfont.c (ftfont_spec_pattern): Don't create a charset of the
1639 representative chars of the script is a vector.
1640 (ftfont_list): Handle the case the representative chars of the
1641 script is a vector.
1642
1643 * character.c (syms_of_character): Docstring of
1644 script-representative-chars fixed.
1645
16462008-08-31 Eli Zaretskii <eliz@gnu.org>
1647
1648 * msdos.c (BUILD_CHAR_GLYPH): New macro.
1649 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
1650 the menu. Allocate larger buffer for `text', to account for
1651 possible ^C characters.
1652
16532008-08-31 Martin Rudalics <rudalics@gmx.at>
1654
1655 * xdisp.c (prepare_menu_bars): Don't call
1656 Vwindow_size_change_functions with arg Qt.
1657
16582008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
1659
1660 * font.h (font_range):
1661 * fileio.c (report_file_error):
1662 * composite.c (composition_update_it): Yet another int/Lisp_Oject mixup.
1663
16642008-08-30 Glenn Morris <rgm@gnu.org>
1665
1666 * data.c (Fmake_variable_frame_local): Doc fix.
1667
1668 * frame.c (Fmodify_frame_parameters): Doc fix.
1669
16702008-08-30 Eli Zaretskii <eliz@gnu.org>
1671
1672 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
1673 needed by GetTokenInformation.
1674 (w32_system_process_attributes): Check return values of all system
1675 APIs.
1676
1677 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
1678 only when the state changes.
1679 (IT_update_begin, IT_update_end): Add termscript trace.
1680
1681 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
1682 clipboard is unavailable. Set dst to NULL if it doesn't point to
1683 malloc'ed data.
1684 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
1685 passing random values to xfree.
1686
1687 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 1688 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
1689
16902008-08-29 Jason Rumney <jasonr@gnu.org>
1691
1692 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
1693
16942008-08-29 Eli Zaretskii <eliz@gnu.org>
1695
1696 * composite.c (fill_gstring_body): Avoid compiler warnings.
1697
1698 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
1699 LGLYPH_SET_CODE to avoid compiler warnings.
1700
2ae37cf0 1701 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
1702
1703 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
1704
1705 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
1706 LGLYPH_SET_CODE.
1707
17082008-08-29 Kenichi Handa <handa@m17n.org>
1709
1710 * fileio.c (report_file_error): Don't downcase the first character
1711 of errstring if it is still unibyte.
1712
17132008-08-29 Kenichi Handa <handa@m17n.org>
1714
1715 These changes are to re-implement the automatic composition so
1716 that it doesn't use text properties.
1717
1718 * Makefile.in (ftfont.o): Depend on composite.h.
1719 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
1720
1721 * character.h (Vunicode_category_table): Extern it.
1722
1723 * character.c (Vunicode_category_table): New variable.
1724 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
1725
1726 * chartab.c (optimize_sub_char_table): Perform more greedy
1727 optimization.
1728
b8ff72fa
SM
1729 * composite.h (enum composition_method):
1730 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
1731 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
1732 (Vcomposition_function_table): Extern it.
1733 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
1734 (composition_gstring_put_cache, composition_gstring_from_id)
1735 (composition_gstring_p, composition_gstring_width)
1736 (composition_compute_stop_pos, composition_reseat_it)
1737 (composition_update_it, composition_adjust_point): Extern them.
1738 (Fcomposition_get_gstring): EXFUN it.
1739
1740 * composite.c: Include window.h, frame.h, dispextern.h font.h.
1741 (Vcomposition_function_table)
1742 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
1743 (gstring_hash_table, gstring_work, gstring_work_headers):
1744 New variables.
aac0c6e3
MR
1745 (gstring_lookup_cache, composition_gstring_put_cache)
1746 (composition_gstring_from_id, composition_gstring_p)
1747 (composition_gstring_width, fill_gstring_header)
1748 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
1749 (composition_reseat_it, composition_update_it)
b8ff72fa 1750 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
1751 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
1752 and gstring_work_headers. DEFVAR_LISP composition-function-table.
1753 Defsubr compostion_get_gstring.
1754
1755 * dispextern.h (struct glyph): New union u.cmp. Delete the member
1756 cmp_id.
1757 (struct glyph_string): Delete the member gidx. New members
1758 cmp_id, cmp_from, and cmp_to.
1759 (enum it_method): Delete GET_FROM_COMPOSITION.
1760 (struct composition_it): New struct.
1761 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
1762 Delete c, len, cmp_id, cmp_len in u.comp.
1763
1764 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 1765 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 1766 (enum lglyph_indices): Likewise.
b8ff72fa 1767 (font_range): Adjust extern.
aac0c6e3
MR
1768 (font_fill_lglyph_metrics): Extern it.
1769
1770 * font.c (QCf): New variable.
1771 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1772 (font_prepare_composition): Delete this function.
1773 (font_range): Type and arguments changed.
1774 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
1775 (font_fill_lglyph_metrics): New function.
b8ff72fa 1776 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 1777 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
1778 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
1779 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
1780
1781 * fontset.h (font_for_char): Extern it.
1782
1783 * fontset.c (font_for_char): New function.
1784
1785 * ftfont.c: Include composite.h.
1786 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 1787 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
1788
1789 * indent.c: Include composite.h and dispextern.h.
1790 (check_composition): Delete this function.
1791 (scan_for_column): Handle composition by
1792 composition_compute_stop_pos, composition_reseat_it, and
1793 composition_update_it.
1794 (compute_motion): Likewise.
1795 (Fvertical_motion): Fix checking of composition.
1796
1797 * keyboard.c (adjust_point_for_property): Check composition by
1798 composition_adjust_point.
1799
b8ff72fa 1800 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
1801 struct glyph_string.
1802
b8ff72fa
SM
1803 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
1804 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
1805 struct glyph.
1806 (produce_composite_glyph): Likewise.
1807
b8ff72fa
SM
1808 * w32term.c (x_draw_composite_glyph_string_foreground):
1809 Adjust for the change of struct glyph_string.
aac0c6e3
MR
1810 (x_draw_glyph_string): Likewise.
1811
1812 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
1813 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1814
1815 * xdisp.c: Include font.h.
1816 (it_props): Delete the entry for Qauto_composed.
1817 (init_iterator): Initialize it->cmp_it.id to -1.
1818 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 1819 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
1820 (handle_auto_composed_prop): Delete it.
1821 (handle_composition_prop): Handle only static composition.
1822 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
1823 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 1824 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
1825 (pop_it): Likewise.
1826 (get_next_element): Delete next_element_from_composition.
1827 (CHAR_COMPOSED_P): New macro.
1828 (get_next_display_element): For automatic composition, get a face
1829 from the font in the glyph-string.
1830 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 1831 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
1832 (next_element_from_string): Check if the character at the current
1833 position is composed by CHAR_COMPOSED_P.
1834 (next_element_from_buffer): Likewise.
b8ff72fa 1835 (next_element_from_composition): Adjust for the change of struct
aac0c6e3 1836 it. Update it->cmp_it.
b8ff72fa
SM
1837 (dump_glyph): Adjust for the change of struct glyph.
1838 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
1839 it and struct glyph. Don't handle automatic composition here.
1840 (fill_gstring_glyph_string): New function.
1841 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 1842 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
1843 (BUILD_GSTRING_GLYPH_STRING): New macro.
1844 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
1845 automatic composition.
b8ff72fa 1846 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 1847 struct glyph.
b8ff72fa 1848 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 1849
b8ff72fa 1850 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
1851 the change of struct glyph_string.
1852 (x_draw_glyph_string): Likewise.
1853
18542008-08-29 Glenn Morris <rgm@gnu.org>
1855
1856 * buffer.c (word-wrap): Doc fix.
1857 * xdisp.c (truncate-partial-width-windows): Doc fix.
1858 Increase default to 50.
1859
18602008-08-29 Chong Yidong <cyd@stupidchicken.com>
1861
1862 * xdisp.c (update_tool_bar_unwind): New function.
1863 (update_tool_bar): Temporarily set selected frame before building
1864 tool-bar items.
1865
18662008-08-28 Michael Albinus <michael.albinus@gmx.de>
1867
1868 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
1869 snprintf, respectively.
1870 (xd_append_arg): Convert strings with Fstring_make_unibyte.
1871
18722008-08-28 Chong Yidong <cyd@stupidchicken.com>
1873
1874 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
1875 LDFLAGS to GNUstep CC invocation.
1876
18772008-08-27 Chong Yidong <cyd@stupidchicken.com>
1878
1879 * indent.c (Fvertical_motion): Revert last change. Handle the
1880 general case where we are moving forward, and PT spans multiple
1881 screen lines.
1882
1883 * eval.c (find_handler_clause): Temporarily increase
1884 max-lisp-eval-depth while printing the backtrace buffer, to
1885 guarantee that help-mode code can run.
1886
18872008-08-27 Eli Zaretskii <eliz@gnu.org>
1888
1889 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
1890 colors under -rv.
1891 (IT_set_frame_parameters): Don't swap foreground and background
1892 colors if `(reverse . t)' is present in the frame properties.
1893 (internal_terminal_init): Call init_frame_faces only for the
1894 initial frame.
1895
18962008-08-27 Andreas Schwab <schwab@suse.de>
1897
1898 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
1899
19002008-08-27 Andreas Schwab <schwab@suse.de>
1901
1902 * search.c (search_buffer): Set char_base to zero only at the end.
1903
19042008-08-27 Kenichi Handa <handa@m17n.org>
1905
b8ff72fa 1906 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
1907
19082008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
1909
1910 * xterm.c (x_term_init): Temporarily hide the partially
1911 initialized terminal while calling vendor-specific-keysyms.
1912
19132008-08-26 Eli Zaretskii <eliz@gnu.org>
1914
1915 * msdos.c (internal_terminal_init): Most initializations done only
1916 once, especially initial_screen_colors[] and termscript open.
1917
19182008-08-26 Chong Yidong <cyd@stupidchicken.com>
1919
1920 * eval.c (Fcondition_case): Doc fix.
1921
1922 * widgetprv.h (EmacsFramePart): Change font member to the new font
1923 struct.
1924
1925 * widget.c: Include character.h and font.h for XSETFONT.
1926 (setup_frame_gcs): Compute X font id from font struct, just once.
1927
19282008-08-26 Eli Zaretskii <eliz@gnu.org>
1929
1930 * term.c (get_named_tty): Fix last change.
1931
19322008-08-26 Chong Yidong <cyd@stupidchicken.com>
1933
1934 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 1935 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
1936
19372008-08-25 Eli Zaretskii <eliz@gnu.org>
1938
1939 * frame.c (do_switch_frame): Mark previously displayed frame as
1940 obscured for FRAME_MSDOS_P frames as well.
1941
19422008-08-24 Eli Zaretskii <eliz@gnu.org>
1943
1944 * frame.c (make_terminal_frame): Initialize f->terminal,
1945 f->terminal->reference_count, and scroll bars on MS-DOS as well.
1946 Set the top frame to newly created frame.
1947 (Fmake_terminal_frame): Reuse the_only_display_info.
1948
1949 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
1950 estimating available memory.
1951
b97439ce 19522008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
1953
1954 * nsterm.m (ns_draw_window_cursor): Don't call
1955 NSDisableScreenUpdates and NSEnableScreenUpdates on
1956 non-NS_IMPL_COCOA systems.
1957
19582008-08-23 Andreas Schwab <schwab@suse.de>
1959
1960 * process.c (procfs_system_process_attributes): Fix use of
1961 uninitialized variables.
1962
19632008-08-23 Eli Zaretskii <eliz@gnu.org>
1964
1965 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
1966
1967 * dispnew.c (init_display): Remove MS-DOS specific conditions for
1968 calling tty-set-up-initial-frame-faces.
1969
b8ff72fa
SM
1970 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
1971 Allow MSDOS frames along with X frames.
aac0c6e3
MR
1972
1973 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
1974 addition to output_termcap.
1975
1976 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
1977
1978 * termchar.h (FRAME_TTY): Support output_msdos_raw.
1979 (struct tty_display_info) [MSDOS]: Add fields related to mouse
1980 highlight.
1981
1982 * process.c [!subprocesses]: Define QCname.
1983 (syms_of_process): Intern and staticpro it.
1984
1985 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
1986 Adjust for changes in encoding/decoding routines.
1987 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
1988 encode_coding and decode_coding.
1989
b8ff72fa 1990 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
1991
1992 * dosfns.c: Include frame.h before termhooks.h.
1993 (dos_cleanup): Use CURTTY ()->termscript instead of a global
1994 variable termscript.
1995
1996 * s/msdos.h (USER_FULL_NAME): Define.
1997 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
1998
1999 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
2000 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
2001 pw->pw_gecos.
2002
2003 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
2004 SELECTED_FRAME as additional (1st) argument.
2005 (tty_read_avail_input): Handle output_msdos_raw in
2006 addition to output_termcap.
2007
2008 * msdos.c: Include frame.h before termhooks.h.
2009 (mouse_on, mouse_off, mouse_moveto, mouse_init)
2010 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
2011 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
2012 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
2013 (IT_set_terminal_modes, IT_reset_terminal_modes)
2014 (IT_set_frame_parameters): Use tty->termscript instead of a global
2015 variable termscript.
2016 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
2017 global variable terminal_coding. Don't refer to
2018 Vnonascii_translation_table.
2019 (internal_terminal_init): Set Vwindow_system in current_kboard.
2020 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
2021 Announce date and time of session start, if termscript is open.
2022 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
2023 term.c:init_tty). Open termscript only of not already open.
2024 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
2025 here instead of dos_ttraw. Don't initialize display if this is an
2026 initial tty. Don't set FRAME_FONT.
2027 (Vwindow_system_version): Bump to 23.
2028 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
2029 is available, set up mouse_position_hook.
2030 (dos_ttraw, IT_set_terminal_modes): If called with initial
2031 terminal, do nothing.
2032 (IT_set_frame_parameters): Handle the Qtty_type frame
2033 parameter by calling internal_terminal_init.
2034 (dos_set_window_size, show_mouse_face)
2035 (clear_mouse_face, IT_note_mode_line_highlight)
2036 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
2037 (dos_rawgetc): Use tty_display_info instead of x_display_info.
2038 (initialize_msdos_display): New function.
2039 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
2040 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
2041 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
2042 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 2043 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
2044 (request_sigio, unrequest_sigio): Don't define, now defined on
2045 sysdep.c.
2046 (IT_write_glyphs): Rewrite to use encode_terminal_code.
2047
2048 * term.c [MSDOS]: Include msdos.h.
2049 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
2050 conditional to DOS_NT. Allow only one call to this function in a
2051 session. Don't allocate a new struct tty_display_info; instead,
2052 reuse the_only_display_info. Call get_tty_size to get screen
2053 dimensions. Call init_baud_rate to set bad_rate.
2054 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
2055 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 2056 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
2057 (get_tty_terminal, get_named_tty, Ftty_type)
2058 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
2059 output_termcap.
b8ff72fa
SM
2060 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
2061 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 2062 only when subprocesses are supported.
aac0c6e3
MR
2063
2064 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
2065 f->output_data.x.
2066 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
2067 terminal devices.
2068
5582fbc7 2069 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
2070 x_output.
2071 (FRAME_FONT): Use output_data.tty.
2072 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
2073 (struct x_display_info): Rename from display_info. Update all users in
2074 msdos.c.
aac0c6e3 2075 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 2076 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
2077 (dos_ttraw): Update prototype.
2078
2079 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
2080 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
2081
20822008-08-23 Jason Rumney <jasonr@gnu.org>
2083
2084 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
2085 (fn_TIFFSetDirectory): New library function used.
2086 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
2087 (tiff_load): Use :index to select among multiple images. Set count
2088 property when multiple images exist.
2089 (gif_format): Use :index, not :image.
2090
20912008-08-23 Chong Yidong <cyd@stupidchicken.com>
2092
2093 * xdisp.c (try_scrolling): Check INT_MAX instead of
2094 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
2095 to obtain INT_MAX.
2096
20972008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
2098
2099 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
2100
21012008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
2102
2103 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
2104 GNUstep library location.
2105
21062008-08-21 Chong Yidong <cyd@stupidchicken.com>
2107
2108 * xfaces.c (x_update_menu_appearance): Check validity of menu font
2109 before using it.
2110
2111 * puresize.h (BASE_PURESIZE): Increase to 1250000.
2112
21132008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2114
2115 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
2116 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
2117 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
2118 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
2119 (EmacsApp-cursor_blink_handler): Remove declaration.
2120 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
2121 match 01 Feb 2008 changes in xterm.c.
2122 (ns_read_socket): Add cast to avoid warning.
2123 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
2124 GNUstep.
2125
21262008-08-20 Chong Yidong <cyd@stupidchicken.com>
2127
2128 * xselect.c (x_get_foreign_selection): Return nil if desired
2129 selection could not be obtained, instead of signalling an error.
2130
21312008-08-20 David Reitter <david.reitter@gmail.com>
2132
2133 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
2134 * nsterm.m: Remove ns-specific code for cursor blinking.
2135 (ns_draw_window_cursor): Clear cursor properly rather than
2136 redrawing the area. Respect width of bar cursors.
2137 These changes enable the use of generic blink-cursor-mode and
2138 generic cursor types in NS and support smooth cursor movements (do
2139 not blink off after command).
2140 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
2141 Nextstep, too.
2142
21432008-08-19 Kenichi Handa <handa@m17n.org>
2144
2145 * font.c (Vfont_log_deferred): New variable.
2146 (font_add_log): Check Vfont_log_deferred.
2147 (font_deferred_log): New function.
2148
2149 * font.h (font_deferred_log): Extern it.
2150
2151 * fontset.c (reorder_font_vector): Use encoding charset of fonts
2152 for sorting.
2153 (face_for_char): Use deferred log.
2154
21552008-08-18 Kenichi Handa <handa@m17n.org>
2156
2157 * fontset.c (face_for_char): Add font log.
2158
2159 * font.c (font_add_log): Add the font properties :script, :lang,
2160 and :otf in the log.
2161
21622008-08-17 Chong Yidong <cyd@stupidchicken.com>
2163
2164 * xdisp.c: Remove dead code.
2165 (handle_invisible_prop, next_overlay_string): Defer call to
2166 setup_for_ellipsis.
2167 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
2168
21692008-08-15 Chong Yidong <cyd@stupidchicken.com>
2170
2171 * xfaces.c (lookup_derived_face): Properly handle possible zero
2172 return value of get_lface_attributes.
2173 (merge_faces): Don't tell lookup_derived_face to signal an error
2174 if face is not found.
2175
2176 * dired.c (Fdirectory_files): Doc fix.
2177
2178 * process.c (make_process): Initialize kill_without_query struct
2179 member.
2180
21812008-08-15 Eli Zaretskii <eliz@gnu.org>
2182
2183 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
2184 Alternative calculation of totphys for Visual Studio 6.
2185
2186 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
2187
2188 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
2189 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
2190 All users changed.
2191 (stat): Only root directory passed to GetDriveType. Allow RAM
2192 disk as well as local fixed disk when w32-get-true-file-attributes
2193 is set to `local'.
2194 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
2195 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
2196 (w32_cached_id, w32_add_to_cache): New functions.
2197 (get_name_and_id): Look account names in the cache before calling
2198 lookup_account_sid.
2199 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
2200 New initialization flags.
2201 (globals_of_w32): Initialize them to zero.
2202 (w32_system_process_attributes): Use w32_cached_id and
2203 w32_add_to_cache.
2204
22052008-08-14 Lawrence Mitchell <wence@gmx.li>
2206
2207 * lread.c (Fread_char, Fread_char_exclusive): If no character
2208 event is read before timeout is reached, return nil, rather than
2209 converting to a number.
2210
22112008-08-14 Chong Yidong <cyd@stupidchicken.com>
2212
2213 * fns.c (use_dialog_box): Doc fix.
2214
2215 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
2216 on OS X.
2217
22182008-08-13 Chong Yidong <cyd@stupidchicken.com>
2219
2220 * frame.c (Qns_parse_geometry): New var.
2221 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
2222
22232008-08-11 Chong Yidong <cyd@stupidchicken.com>
2224
2225 * xdisp.c (x_produce_glyphs): Handle the case when font has no
2226 space character in calculating tabs.
2227
22282008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
2229
2230 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
2231
22322008-08-10 Glenn Morris <rgm@gnu.org>
2233
2234 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
2235 silence gcc "limited range of data type" warnings in some
2236 make_fixnum_or_float calls.
2237
22382008-08-09 Eli Zaretskii <eliz@gnu.org>
2239
2240 * w32.c (w32_system_process_attributes): If the process does not
2241 exist, return nil.
2242
2243 * w32.c: Include thelp32.h, psapi.h and coding.h.
2244 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
2245 declarations.
2246 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
2247 (Process32Next_Proc): New typedefs.
2248 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
2249 (g_b_init_process32_next, g_b_init_open_thread_token)
2250 (g_b_init_impersonate_self, g_b_init_revert_to_self)
2251 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
2252 (g_b_init_get_process_working_set_size)
2253 (g_b_init_global_memory_status_ex): New static variables.
2254 (globals_of_w32): Initialize them.
2255 (create_toolhelp32_snapshot, process32_first, process32_next)
2256 (open_thread_token, impersonate_self, revert_to_self)
2257 (get_process_memory_info, get_process_working_set_size)
2258 (global_memory_status, global_memory_status_ex): New wrapper
2259 functions.
2260 (w32_list_system_processes, w32_system_process_attributes)
2261 (enable_privilege, restore_privilege, ltime, process_times):
2262 New functions.
2263 (convert_time_raw): New function.
2264 (convert_time): Remove conversion of FILETIME into time in 100
2265 nsec units, call convert_time_raw instead.
2266
2267 * process.h (w32_list_system_processes, w32_system_process_attributes):
2268 Add prototypes.
2269 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
2270 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
2271 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
2272 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
2273
2274 * process.c (Fsystem_process_attributes): Doc fix.
2275
22762008-08-08 Chong Yidong <cyd@stupidchicken.com>
2277
2278 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
2279 a continued multi-char glyph; if so, advance to the actual glyph.
2280
22812008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2282
2283 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
2284
2285 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
2286 (.m.o): Use it.
2287 * config.in: Regenerate.
2288
22892008-08-07 Chong Yidong <cyd@stupidchicken.com>
2290
2291 * xdisp.c (redisplay_window): Revert last change.
2292 (try_window): Check bottom scroll margin too.
2293
22942008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2295
2296 * config.in: Regenerate.
2297
2298 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
2299 -list-load-path-shadows'.
2300 (nsgui.h): Reduce number of things depending on it.
2301
23022008-08-06 Chong Yidong <cyd@stupidchicken.com>
2303
2304 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
2305 instead of window-end which does the wrong thing at eob.
2306 (try_cursor_movement): Minor optimization.
2307 (redisplay_window): If scroll margin is defined, don't assume
2308 window doesn't need scrolling.
2309
23102008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2311
2312 * config.in: Regenerate.
2313
2314 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
2315 (mostlyclean): Don't delete *.d under NS.
2316
2317 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
2318
23192008-08-06 Kenichi Handa <handa@m17n.org>
2320
2321 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
2322
23232008-08-06 Andreas Schwab <schwab@suse.de>
2324
2325 * config.in: Regenerate.
2326
23272008-08-05 Chong Yidong <cyd@stupidchicken.com>
2328
2329 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
2330 forcing a window start.
2331
2332 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
2333 (auto_save_1): Update modtime when auto-save-list-file-name is on.
2334
23352008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2336
2337 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
2338 argument.
2339
23402008-08-05 Juanma Barranquero <lekktu@gmail.com>
2341
2342 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
2343 <scroll-down-aggressively, before-change-functions>:
2344 <after-change-functions>: Reflow docstrings.
2345
23462008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2347 Ken Raeburn <raeburn@gnu.org>
2348
2349 Dock menu customization, based on a patch by Ken Raeburn, plus some
2350 other fixes.
2351 * nsmenu.m (dockMenu): New variable.
2352 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
2353
2354 * nsterm.h (dockMenu): Declare.
2355
2356 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
2357 (ns_term_init): Initialize dockMenu.
2358 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
2359 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
2360 left.
2361
2362 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
2363
23642008-08-04 Chong Yidong <cyd@stupidchicken.com>
2365
2366 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
2367
2368 * config.in: Regenerate.
2369
23702008-08-04 Seiji Zenitani <zenitani@mac.com>
2371
2372 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
2373
23742008-08-04 Chong Yidong <cyd@stupidchicken.com>
2375
2376 * nsterm.h (find_and_call_menu_selection): Fix prototype.
2377
23782008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2379
2380 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
2381
2382 * keyboard.h: Comment an #endif.
2383
2384 * lisp.h (have_menus_p): Adjust comment.
2385
2386 * menu.c (find_and_return_menu_selection): Fix comparison with
2387 client_data.
2388
2389 * nsmenu.m (popup_activated_flag): New variable.
2390 (popup_activated): New function.
2391 (menu-or-popup-active-p): New exported lisp definition.
2392 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
2393 when popup done.
2394 (ns_popup_dialog): Set popup_activated_flag.
2395
2396 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
2397 version for GNUstep (handled by conditional typedef in nsterm.m).
2398 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
2399 in rgb.txt).
2400
2401 * process.c (init_process): Use DARWIN_OS, not DARWIN.
2402
2403 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
2404
2405 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
2406
2407 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
2408 shortcircuit if popup_activated like GTK and X toolkit.
2409
2410 * m/inter386.h: Change DARWIN to DARWIN_OS.
2411
2412 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
2413 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
2414 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
2415 comment on NO_SOCK_SIGIO.
2416
24172008-08-03 Chong Yidong <cyd@stupidchicken.com>
2418
2419 * nsterm.m (windowDidResize): Remove stopModal call.
2420
24212008-08-03 Andreas Schwab <schwab@suse.de>
2422
2423 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
2424 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
2425
24262008-08-02 Chong Yidong <cyd@stupidchicken.com>
2427
2428 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
2429 Don't use uninitialized pointer variable when using getrlimit.
2430
24312008-08-02 Jason Rumney <jasonr@gnu.org>
2432
2433 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
2434
24352008-08-02 Eli Zaretskii <eliz@gnu.org>
2436
2437 * alloc.c (NSTATICS): Bump to 0x640.
2438
2439 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
2440
2441 * lisp.h: Add prototype for directory_files_internal.
2442
2443 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
2444 New functions.
2445 (syms_of_process): Defsubr them. Add initializations for various
2446 Q* symbols used in procfs_system_process_attributes.
2447 (procfs_list_system_processes, procfs_system_process_attributes)
2448 [HAVE_PROCFS]: New functions.
2449 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
2450 (procfs_get_total_memory): New functions.
2451
24522008-08-01 Juanma Barranquero <lekktu@gmail.com>
2453
2454 * xfaces.c (Fx_load_color_file): Fix previous change;
2455 it is #ifdef WINDOWSNT, not WINDOWS_NT.
2456
24572008-08-01 Michael Albinus <michael.albinus@gmx.de>
2458
2459 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
2460
24612008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2462
2463 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
2464
24652008-08-01 Chong Yidong <cyd@stupidchicken.com>
2466
2467 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
2468
2469 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
2470 define NSApplicationDelegateReplySuccess.
2471 (EmacsView -converstationIdentifier): Use long instead of
2472 NSInteger for GNUstep, since it doesn't have NSInteger.
2473
2474 * xmenu.c: Revert last change.
2475
2476 * keyboard.h: Fix last change.
2477
24782008-08-01 Juanma Barranquero <lekktu@gmail.com>
2479
2480 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
2481 on Windows.
2482
24832008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2484
2485 Warning clearing and clean-up in NS port.
2486 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
2487 Add prototypes.
2488 * nsgui.h (FACE_DEFAULT): Remove, unused.
2489 (XGCValues): Change colors to unsigned long.
2490 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
2491 nsterm.m.
2492 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
2493 (ns_list_fonts): Remove, unused.
2494 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
2495 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
2496 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
2497 (nsfont_draw): Compare face colors to 0, not nil.
2498 * nsmenu.m (struct widget_value): Drop unneeded declaration.
2499 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
2500 (-addSubmenuWithTitle:): Use NSMenuItem class.
2501 (ns_popup_menu): Use NO, not NULL, for enabled setting.
2502 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
2503 (ns_clip_to_row): Make gc arg a BOOL.
2504 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
2505 ns_clip_to_row() call.
2506 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
2507 used). Cast FRAME_FONT assignments.
2508 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
2509 (ns_string_to_lispmod): Change arg to const char.
2510 (ns_term_init): Use NSMenuItem class.
2511 (EmacsApp -openFile:): Move to different section of file.
2512 (EmacsApp -application:openFiles:): Don't return a value, call
2513 -replyToOpenOrPrint:.
2514 (EmacsView -keyDown:): Fix up cast.
2515 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
2516 (EmacsView -menuDown:): Cast tag in call to
2517 find_and_call_menu_selection().
2518 (ns_list_fonts): Remove, unused.
2519 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
2520 (ns_fontname_to_xlfd): Make static.
2521 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
2522 Remove prototypes (now in keyboard.h).
2523 (next_menubar_widget_id): Remove, unused.
2524 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
2525 Remove prototypes (now in keyboard.h).
2526 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
2527
25282008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
2529
2530 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
2531 (floatfns.o): Depend on syssignal.h.
2532 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
2533
2534 * systty.h: Fix previous change that removed BSD_TERMIOS.
2535 Add comments to #ifdefs.
2536
25372008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2538
2539 * w32fns.c (w32-load-color-file): Remove.
2540 (x-open-connection): Use renamed Fx_load_color_file.
2541 * xfaces.c (x-load-color-file): Add.
2542 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
2543 Emacs.clr.
2544 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
2545
25462008-07-31 Michael Albinus <michael.albinus@gmx.de>
2547
2548 * dbusbind.c (Fdbus_call_method_asynchronously)
2549 (Fdbus_method_error_internal): New defuns.
2550 (xd_read_message): Handle also reply messages.
2551 (Vdbus_registered_functions_table): Extend docstring.
2552
25532008-07-31 Juanma Barranquero <lekktu@gmail.com>
2554
2555 * keyboard.c (gobble_input): Fix previous change.
2556
25572008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2558
2559 * bitmaps/README:
2560 * xfns.c:
2561 * termcap.c:
2562 * term.c:
2563 * syswait.h:
2564 * systty.h:
2565 * systime.h:
2566 * syssignal.h:
2567 * sysdep.c:
2568 * process.h:
2569 * process.c:
2570 * print.c:
2571 * ndir.h:
2572 * lread.c:
2573 * keyboard.c:
2574 * getpagesize.h:
2575 * floatfns.c:
2576 * fileio.c:
2577 * emacs.c:
2578 * doc.c:
2579 * dispnew.c:
2580 * dired.c:
2581 * data.c:
2582 * callproc.c:
2583 * buffer.c:
2584 * README:
2585 * Makefile.in:
2586 * s/template.h:
2587 * s/msdos.h:
2588 * m/vax.h: Remove VMS support.
2589 * s/vms.h:
2590 * vlimit.h:
2591 * uaf.h:
2592 * temacs.opt:
2593 * param.h:
2594 * ioctl.h: Remove file.
2595
25962008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2597
2598 * s/ms-w32.h (MULTI_KBOARD): Remove.
2599 * xterm.c:
2600 * xselect.c:
2601 * xfns.c:
2602 * window.c:
2603 * w32term.c:
2604 * w32fns.c:
2605 * terminal.c:
2606 * termhooks.h:
2607 * term.c:
2608 * sysdep.c:
2609 * keyboard.h:
2610 * keyboard.c:
2611 * frame.h:
2612 * frame.c:
2613 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
2614 * config.in: Regenerate.
2615
26162008-07-30 Jason Rumney <jasonr@gnu.org>
2617
2618 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
2619
2620 * w32font.c (w32font_encode_char): Leave as unicode if in range.
2621 (w32font_open_internal): Get unicode version of textmetrics.
2622 Don't enable or disable glyph indices here.
2623 (w32font_open): Disable use of glyph indices.
2624
2625 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
2626
26272008-07-30 Chong Yidong <cyd@stupidchicken.com>
2628
2629 * minibuf.c (Vread_buffer_function): Doc fix.
2630
26312008-07-30 John Paul Wallington <jpw@pobox.com>
2632
2633 * minibuf.c (read_buffer_completion_ignore_case): New var.
2634 (Fread_buffer): Use it.
2635
26362008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
2637
2638 * systty.h (sensemode): Remove empty #if. Remove reference to
2639 BSD_TERMIOS, unused.
2640
2641 * sysdep.c: Remove reference to DGUX.
2642 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
2643
2644 * config.in: Regenerate.
2645
26462008-07-30 Jason Rumney <jasonr@gnu.org>
2647
2648 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
2649
26502008-07-29 Jason Rumney <jasonr@gnu.org>
2651
2652 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
2653 is populated.
2654 (uniscribe_encode_char): Always use uniscribe.
2655 Avoid using context if cache is populated.
2656
26572008-07-29 Jan Djärv <jan.h.d@swipnet.se>
2658
2659 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
2660 open menu.
2661
2662 * gtkutil.c (menu_nav_ended): Remove.
2663 (create_menus): Remove signal connect for menu_nav_ended.
2664
26652008-07-28 Chong Yidong <cyd@stupidchicken.com>
2666
2667 * xdisp.c (redisplay_window): Check return value of
2668 compute_window_start_on_continuation_line before forcing a window
2669 start.
2670
26712008-07-28 Jason Rumney <jasonr@gnu.org>
2672
2673 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
2674
2675 * w32term.c (w32_enable_unicode_output, cleartype_active):
2676 Remove obsolete display options.
2677 (x_draw_glyph_string_background): Don't use old cleartype_active
2678 workaround.
2679 (w32_initialize): Remove cleartype_active initialization.
2680 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
2681
26822008-07-28 Andreas Schwab <schwab@suse.de>
2683
2684 * lisp.h (init_weak_hash_tables, syms_of_font)
2685 (xd_read_queued_messages, syms_of_dbusbind): Declare.
2686 (remove_hash_entry): Don't declare.
2687 * eval.c (maybe_call_debugger): Make static and move before use.
2688 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
2689 * xdisp.c: Include "gtkutil.h" if USE_GTK.
2690 * xterm.h (x_set_frame_alpha): Declare.
2691
26922008-07-28 Jan Djärv <jan.h.d@swipnet.se>
2693
2694 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
2695 (create_menus): Connect selection-done to menu_nav_ended.
2696
26972008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2698
2699 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
2700 Set Vx_resource_name to a fallback. Replace read of 'buffered'
2701 parameter with read of 'alpha' one.
2702 (Qns_frame_parameter): Remove.
5582fbc7 2703 * nsselect.m (selection-coding-system)
aac0c6e3
MR
2704 (next-selection-coding-system, Vselection_coding_system)
2705 (Vnext_selection_coding_system): Drop.
2706
27072008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2708
2709 * nsfns.m (do-applescript, do_applescript): Rename to
2710 ns-do-applescript, ns_do_applescript, and move within file.
2711
27122008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2713
2714 Remove support for Mac Carbon.
2715 * mactoolbox.c:
2716 * macterm.h:
2717 * macterm.c:
2718 * macselect.c:
2719 * macmenu.c:
2720 * macgui.h:
2721 * macfns.c:
2722 * mac.c: Remove file.
2723 * s/darwin.h:
2724 * m/intel386.h:
2725 * xfaces.c:
2726 * xdisp.c:
2727 * window.c:
2728 * tparam.c:
2729 * termhooks.h:
2730 * termcap.c:
2731 * term.c:
2732 * syssignal.h:
2733 * sysselect.h:
2734 * sysdep.c:
2735 * process.c:
2736 * lread.c:
2737 * lisp.h:
2738 * keyboard.c:
2739 * image.c:
2740 * fringe.c:
2741 * frame.h:
2742 * frame.c:
2743 * fontset.c:
2744 * font.h:
2745 * font.c:
2746 * fns.c:
2747 * fileio.c:
2748 * emacs.c:
2749 * dispnew.c:
2750 * dispextern.h:
2751 * config.in:
2752 * atimer.c:
2ae37cf0 2753 * Makefile.in: Remove code for Carbon.
aac0c6e3 2754
f0131492 27552008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
2756
2757 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
2758
27592008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2760
2761 * macterm.h (kCGBitmapByteOrder32Host): New define for
2762 non-universal SDKs.
2763
2764 * image.c (mac_create_cg_image_from_image, image_load_image_io)
2765 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2766
2767 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
2768 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2769
27702008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
2771
2772 * w32inevt.c: Include dispextern.h.
2773
27742008-07-26 Andreas Schwab <schwab@suse.de>
2775
2776 * print.c (print_object): Fix off-by-one in last change.
2777
27782008-07-25 Juanma Barranquero <lekktu@gmail.com>
2779
2780 * term.c (syms_of_term): Don't initialize default_orig_pair,
2781 default_set_foreground and default_set_background on Windows.
2782
27832008-07-25 Jason Rumney <jasonr@gnu.org>
2784
2785 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
2786 ScriptItemize. Clean up return value checking. Remove unused
2787 variables.
2788 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
2789 shaping engine.
2790
2791 * w32font.c (w32font_has_char): Handle the case where we can't
2792 determine the script for a character.
2793
27942008-07-25 Chong Yidong <cyd@stupidchicken.com>
2795
2796 * term.c (syms_of_term): Initialize default_orig_pair,
2797 default_set_foreground, and default_set_background.
2798
2799 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
2800 clash (bug#86).
2801 (getloadavg): Callers changed.
2802
2803 * image.c (svg_load_image): Fix last change.
2804 (svg_load_image): Use rsvg_handle_get_dimensions to check that
2805 image size is valid. Use g_object_unref instead of deprecated
2806 rsvg_handle_free to free rsvg handle.
2807 (x_from_xcolors): Don't initialize pixmap (silence compiler).
2808
28092008-07-25 Jason Rumney <jasonr@gnu.org>
2810
2811 * w32font.c (w32font_encode_char): Encode characters outside BMP as
2812 surrogates before looking up glyph index.
2813 (w32font_text_extents): Encode as surrogates if falling back to
2814 functions that need UTF-16 wide chars.
2815
2816 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
2817 BMP as surrogates before looking up glyph index.
2818
28192008-07-25 Chong Yidong <cyd@stupidchicken.com>
2820
2821 * image.c (svg_load_image): Check for failure in return value of
2822 rsvg_handle_get_pixbuf. Free rsvg handle when done.
2823
28242008-07-25 Jason Rumney <jasonr@gnu.org>
2825
2826 * w32font.c (Fx_select_font): Reverse sense of second arg.
2827
28282008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
2829
2830 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
2831 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
2832
2833 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
2834 (PURESIZE): Use it.
2835
28362008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
2837
2838 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
2839 * m/alpha.h (TEXT_END):
2840 * m/ibmrs6000.h (TEXT_END):
2841 * m/macppc.h (TEXT_END):
2842 * s/darwin.h (TEXT_END):
2843 * s/msdos.h (TEXT_END): Remove, unused.
2844 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
2845 * s/cygwin.h: Remove comment.
2846
2847 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
2848 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
2849 * m/intel386.h (DOT_GLOBAL_START):
2850 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
2851 (USG): Remove, file not used on USG platforms.
2852
2853 * Makefile.in (HAVE_X11): Remove empty #else.
2854
28552008-07-24 Andreas Schwab <schwab@suse.de>
2856
2857 * fileio.c (Finsert_file_contents): Properly adjust undo list
2858 after format conversion.
2859
28602008-07-24 Jan Djärv <jan.h.d@swipnet.se>
2861
2862 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
2863 (menu_nav_ended): Remove.
2864 (create_menus): Remove signal connect for menu_nav_ended.
2865 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
2866 create_menus.
2867 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
2868
28692008-07-23 Jason Rumney <jasonr@gnu.org>
2870
2871 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
2872 with opened font.
2873 (w32font_open): Set font type to gdi.
2874
2875 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
2876
28772008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
2878
2879 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
2880 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
2881 defines it.
2882 * unexec.c (ADDR_CORRECT): Define unconditionally.
2883
2884 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
2885
2886 * unexec.c: Remove code depending on !COFF and USG, the file is
2887 not used for such systems.
2888
2889 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
2890 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
2891 (LD_SWITCH_SYSTEM_1): Remove, update users.
2892
2893 * s/darwin.h (DATA_END):
2894 * m/intel386.h (DATA_END):
2895 * m/ibmrs6000.h (DATA_END):
2896 * m/alpha.h (DATA_END): Remove, unused.
2897
2898 * config.in: Regenerate.
2899 * s/ms-w32.h (subprocesses): Define unconditionally.
2900 * s/template.h (subprocesses): Update comment.
2901 * s/vms.h (subprocesses):
2902 * s/usg5-4.h (subprocesses):
2903 * s/hpux10-20.h (subprocesses):
2904 * s/gnu-linux.h (subprocesses):
2905 * s/cygwin.h (subprocesses):
2906 * s/bsd-common.h (subprocesses):
2907 * s/aix4-2.h (subprocesses):
2908 * s/darwin.h (subprocesses): Do not define, defined by default now.
2909
2910 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
2911 Remove all references.
2912 (temacs): Add GNUstep specific ld flags.
2913
2914 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
2915 similarly to what X does.
2916
29172008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2918
2919 * nsfns.m (x-list-fonts): Remove.
2920 (syms_of_nsfns): Drop the x-list-fonts declaration.
2921 * nsterm.m: Get rid of remaining "//" comments.
2922
29232008-07-22 Chong Yidong <cyd@stupidchicken.com>
2924
2925 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
2926
2927 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
2928 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
2929 (Fns_own_selection_internal, Fx_disown_selection_internal)
2930 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
2931
2932 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
2933 ... */' style of docstrings. Doc fixes.
2934
29352008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2936
2937 * terminfo.c (UP, BC, PC): Undo previous change.
2938
2939 * nsfns.m: Rename ns prefixed functions/variables to the
2940 corresponding x versions. Update references.
2941
29422008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
2943
2944 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
2945
29462008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2947
2948 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
2949 Remove forwarding functions.
2950 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
2951 non-static.
2952 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
2953 non-static.
2954 (ns_frame_parm_handlers): Use the new names.
2955 (syms_of_nsfns): Move to the end of file.
2956
2957 * nsterm.m (syms_of_nsterm): Move to the end of file.
2958
2959 * dispnew.c (init_display): Remove code for X10.
2960
29612008-07-22 Jason Rumney <jasonr@gnu.org>
2962
2963 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
2964 bare drive.
2965
29662008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2967
2968 * nsterm.m (syms_of_nsterm): Remove debugging println.
2969
29702008-07-22 David Reitter <david.reitter@gmail.com>
2971
2972 * nsfns.m (do_applescript, F_do_applescript): NS version of the
2973 Carbon implementation of the same functionality: execute arbitrary
2974 AppleScript code.
2975
29762008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2977
2978 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
2979 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
2980 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2981 (Fx_display_mm_height, Fx_display_mm_width)
2982 (Fx_display_backing_store, Fx_display_visual_class)
2983 (Fx_display_save_under, Fx_open_connection)
2984 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
2985 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
2986 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
2987 (Fx_display_pixel_width, Fx_display_pixel_height)
2988 (Fx_display_usable_bounds, Fx_display_planes)
2989 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
2990 ... */' style of docstrings.
2991
29922008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
2993
2994 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
2995 on this platform.
2996 (mips):
2997 * m/iris4d.h (mips): Do not define.
2998 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
2999
3000 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
3001
3002 * image.c:
3003 * nsfns.m:
3004 * nsselect.m:
3005 * nsterm.h:
3006 * nsterm.m: Rename ns prefixed functions/variables to the
3007 corresponding x versions. Update references.
3008
3009 * m/ibms390x.h (NO_REMAP): Do not undefine.
3010
3011 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
3012
30132008-07-21 Chong Yidong <cyd@stupidchicken.com>
3014
3015 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
3016 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
3017 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
3018 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
3019 (Fns_display_mm_height, Fns_display_mm_width)
3020 (Fns_display_backing_store, Fns_display_visual_class)
3021 (Fns_display_save_under, Fns_open_connection)
3022 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
3023 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
3024 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
3025 (Fns_display_pixel_width, Fns_display_pixel_height)
3026 (Fns_display_usable_bounds, Fx_display_planes)
3027 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
3028
30292008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
3030
3031 * print.c (print_object): Check print_depth before searching for
3032 circularities.
3033
30342008-07-21 Michael Albinus <michael.albinus@gmx.de>
3035
3036 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
3037 only sprintf.
3038
30392008-07-21 Kenichi Handa <handa@m17n.org>
3040
3041 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
3042
30432008-07-20 Andreas Schwab <schwab@suse.de>
3044
3045 * syntax.c (find_start_pos, find_start_value)
3046 (find_start_value_byte, find_start_begv, find_defun_start)
3047 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
3048
30492008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3050
3051 * s/sol2-3.h: Insert contents of s/sol2.h.
3052 (LD_SWITCH_SYSTEM): Remove redundant definition.
3053 * s/sol2.h: Remove, unused.
3054
30552008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3056
3057 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
3058
30592008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3060
3061 * Makefile.in (ns_appdir): Fix typo in find command.
3062
30632008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3064
3065 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
3066
3067 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
3068 added not supported anymore.
3069
3070 * s/usg5-4-2.h (LIBS_SYSTEM):
3071 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
3072
3073 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3074 * s/lynxos.h (GETPGRP_NO_ARG):
3075 * s/hpux10-20.h (NO_SIOCTL_H):
3076 * s/gnu.h (GETPGRP_NO_ARG):
3077 * s/gnu-linux.h (NO_SIOCTL_H):
3078 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3079 * s/cygwin.h (GETPGRP_NO_ARG):
3080 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
3081 (C_DEBUG_SWITCH): Remove duplicate definition.
3082
3083 * m/ibms390.h: Remove boilerplate comments.
3084
3085 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
3086
3087 * process.c (HAVE_SERIAL): Consolidate ifdefs.
3088 (wait_reading_process_output): Remove code for SunOS, platform not
3089 supported anymore. Use SOLARIS2 instead of sun.
3090
30912008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3092
3093 * font.c (font_open_by_name): Under NS, default lface height to zero.
3094 (font_open_for_lface): Under NS, set size based on frame fontsize.
3095 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
3096 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
3097
30982008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3099
3100 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
3101 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
3102 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
3103 YES/NO.
3104 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
3105 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
3106 * Makefile.in (clean): Clear out build destination dir.
3107
31082008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3109
3110 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
3111 xterm, xselect.
3112 * lisp.h: Remove declaration of hash_remove.
3113 * nsgui.h: Remove redefinitions of hash_remove.
3114 * fns.c (hash_remove): Rename to hash_remove_from_table.
3115
31162008-07-19 Seiji Zenitani <zenitani@mac.com>
3117
3118 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
3119 strdup() the family UTF8String before modifying it.
3120
31212008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3122
3123 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
3124 NS_FACE_BACKGROUND with 0 instead of nil.
3125 * nsfont.m (nsfont_draw): Same.
3126
31272008-07-19 Chong Yidong <cyd@stupidchicken.com>
3128
3129 * nsfns.m (ns_set_background_color): Fix crash.
3130
31312008-07-18 Chong Yidong <cyd@stupidchicken.com>
3132
3133 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
3134
31352008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
3136
3137 * puresize.h (BASE_PURESIZE): Increase to 1240000.
3138
31392008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3140
3141 * gtkutil.c: Include <config.h> instead of "config.h".
3142
3143 * lisp.h (Foverlay_buffer): Add EXFUN.
3144
3145 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
3146 child process to complete child_setup. Undo 2005-09-21 change.
3147
3148 * s/darwin.h: Mention setsid after vfork.
3149
31502008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3151
3152 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
3153 Depend on macgui.h.
3154
3155 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
3156 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
3157
3158 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
3159 and f19.
3160 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
3161
3162 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
3163 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
3164 Remove enumerators.
3165
3166 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
3167 Check if FACE_FROM_ID returns NULL.
3168
31692008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
3170
3171 * w32inevt.c (change_frame_size): Remove extern declaration.
3172 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
3173 change_frame_size.
3174
31752008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3176
3177 * getloadavg.c: Revert last change (2008-07-15).
3178
31792008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3180
3181 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
3182 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
3183 from configure.
3184
31852008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
3186
3187 * s/sol2.h:
3188 * s/sol2-4.h: Reorganize conditionals.
3189
3190 * ecrt0.c: Remove code depending on m68000, not used anymore.
3191
3192 * fns.c (hash_remove): Make static.
3193 * lisp.h (hash_remove): Don't prototype.
3194
3195 * m/ibmrs6000.h:
3196 * m/ibms390x.h:
3197 * m/macppc.h: Remove boilerplate comments.
3198
3199 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
3200 Solaris, which does not need them.
3201
3202 * m/vax.h: Remove comments about unsupported systems.
3203
3204 * s/darwin.h: Reorganize ifdefs.
3205
32062008-07-17 Andreas Schwab <schwab@suse.de>
3207
3208 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
3209
32102008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
3211
3212 Use SDATA. Follow coding convention of placing operators at
3213 beginning of next line rather than end of previous line, and placing
3214 spaces around infix operators.
3215
3216 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
3217 in case it was defined already.
3218 USE @GNUSTEP_MAKEFILES@ rather than envvars.
3219 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
3220 ns_default.
3221 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
3222 Lisp_Objects.
3223 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
3224 (ns_defined_color, ns_color_to_lisp): Declare.
3225 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
3226 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
3227 it's accepted even with USE_LISP_UNION_TYPE.
3228 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
3229 (update_frame_tool_bar): Remove apparently obsolete tests for
3230 non-integerness of f->tool_bar_lines.
3231 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
3232 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
3233 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
3234 (nsfont_open): Don't confuse NULL for Qnil.
3235 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
3236 * menu.h (find_and_call_menu_selection):
3237 * menu.c (find_and_call_menu_selection): Use just int for vector size.
3238 (find_and_return_menu_selection): Always return something.
3239 * frame.h: Include dispextern.h for Display_Info.
3240 (display_x_get_resource): Declare.
3241
32422008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
3243
3244 * syntax.c: Remove stdio.h include accidentally introduced in
3245 Emacs.app commit.
3246 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
3247 NS_IMPL_COCOA.
3248 * keyboard.c (handle_async_input, input_available_signal): Remove
3249 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
3250
32512008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3252
3253 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
3254 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
3255 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
3256 Use SDATA.
3257
3258 * keymap.c: Remove all NS-specific code.
3259 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
3260 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
3261 where_is_preferred_modifier, return a different value depending on how
3262 preferred is the binding.
3263 (where_is_internal): Adjust accordingly.
3264 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
3265 Adjust to new preferred_sequence_p.
3266 (syms_of_keymap): Declare `where-is-preferred-modifier'.
3267 * keyboard.c (parse_solitary_modifier): Not static any more.
3268 * keyboard.h (parse_solitary_modifier): Declare.
3269
32702008-07-16 Andreas Schwab <schwab@suse.de>
3271
3272 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
3273 of easymenu.
3274
32752008-07-16 Chong Yidong <cyd@stupidchicken.com>
3276
3277 * xdisp.c (move_it_in_display_line): Account for word wrap, so
3278 that we don't move off the line.
3279
32802008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3281
3282 * keyboard.c (Qsuper): Remove.
3283 (parse_menu_item): Don't call where_is_internal specially for NS.
3284
32852008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3286
3287 * s/gnu-linux.h: Remove boilerplate comments.
3288
3289 * m/alpha.h (__ELF__): Consolidate conditions.
3290
3291 * m/m68k.h (linux): Use GNU_LINUX instead.
3292 Remove boilerplate comments.
3293
3294 * m/intel386.h: Undo refactoring from previous change.
3295 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
3296 too, remove dead code.
3297 (linux): Use GNU_LINUX instead.
3298
32992008-07-16 Jason Rumney <jasonr@gnu.org>
3300
3301 * w32gui.h: Repeat 26 June changes lost by last change.
3302
33032008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3304
3305 * systty.h: Remove code for Aix on 386, unsupported platform.
3306
3307 * s/ms-w32.h: Remove boilerplate comments.
3308 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
3309
3310 * s/gnu-linux.h (TERM): Remove support.
3311 (HAVE_SYSVIPC): Remove, unused.
3312 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
3313 for this system.
3314
3315 * process.c: Remove support for IRIS, unused.
3316 Remove support for TERM, not relevant anymore.
3317
3318 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
3319 used with the definition.
3320
3321 * s/aix4-2.h (static): Do not undef.
3322
3323 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
3324 only used on Aix.
3325 (HAVE_SYSVIPC): Remove, unused.
3326
3327 * m/hp800.h (CANNOT_DUMP): Do not undef.
3328
3329 * m/alpha.h: Fix comment.
3330
3331 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
3332 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
3333 used by this configuration.
3334 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
3335 * unexec.c: Remove code depending on HPUX and
3336 USG_SHARED_LIBRARIES, not used with this file. Remove code
3337 depending on IRIS, unused. Remove if 0-ed code.
3338
3339 * s/template.h: Remove comments about static.
3340
3341 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
3342 Remove if 0-ed code.
3343 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
3344 were the same as the default.
3345 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
3346 Remove boilerplate comments.
3347 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
3348 (HAVE_SYSVIPC): Remove, unused.
3349 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
3350
3351 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3352 Remove boilerplate comments.
3353 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3354 Remove boilerplate comments.
3355 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3356 Remove boilerplate comments.
3357 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
3358
3359 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
3360 USG systems which do not use DATA_SEG_BITS.
3361 Refactor code. Remove boilerplate comments.
3362
3363 * m/ibms390.h:
3364 * m/m68k.h:
3365 * s/bsd-common.h:
3366 * s/cygwin.h:
3367 * s/darwin.h:
3368 * s/freebsd.h:
3369 * s/gnu.h:
3370 * s/msdos.h: Remove boilerplate comments.
3371
3372 * m/iris4d.h: Remove boilerplate comments and code for systems that
3373 do not use this file.
3374 (IRIS_4D): Remove, unused.
3375
3376 * m/mips.h: Remove boilerplate comments and code for systems that
3377 do not use this file.
3378 (SIGN_EXTEND_CHAR):
3379 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
3380 * unexmips.c: Remove file, unused.
3381
3382 * editfns.c (Fuser_full_name): Replace the only use of
3383 USER_FULL_NAME with its value.
3384 * config.in: Regenerate.
3385
33862008-07-16 David Reitter <david.reitter@gmail.com>
3387
3388 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
3389 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
3390
33912008-07-16 Glenn Morris <rgm@gnu.org>
3392
3393 * emacs.c (system-type): Doc fix.
3394
33952008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
3396
3397 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
3398 If the cache doesn't work, let's fix it, rather than work around it.
3399
34002008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3401
3402 * Makefile.in: Correct additions for nsfont.o in last commit.
3403 * nsfont.m: New file (forgot last commit).
3404
34052008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3406
3407 * callproc.c (set_initial_environment): Initialize
3408 Vprocess_environment under CANNOT_DUMP (fixes crash when
3409 batch-compiling for bootstrap).
3410
34112008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3412 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3413
3414 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
3415 fix crash due to different init order.
3416
34172008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3418
3419 Changes and additions for NeXTstep windowing system (Cocoa and
3420 GNUstep) support.
3421
3422 * Makefile.in:
3423 * config.in: Support defines and build commands for NS port.
3424 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
3425 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
3426 * dispextern.h: Include nsgui.h and add needed typedefs under NS
3427 windowing.
3428 (struct face): Add synth_ital field.
3429 * dispnew.c: Include nsterm.h when compiling under NS windowing.
3430 (init_display): Initialize Vinitial_window_system to "ns" when so
3431 compiled.
3432 * emacs.c: Include GSConfig.h when compiling under GNUstep.
3433 (display_arg): Use under NS.
3434 (main): Under NS, allocate autorelease pool and handle command line
3435 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
3436 (standard_args): Add NS-specific args.
3437 (shut_down_emacs): Shut down NS terminal if compiled under NS.
3438 * font.c (DEFAULT_ENCODING): New variable.
3439 (font_find_for_lface): Use it.
3440 (syms_of_font): Load syms_of_nsfont under NS.
3441 * font.h: Declare nsfont_driver when compiled under NS.
3442 * fontset.c: When compiling under NS, include nsterm.h.
3443 (fontset_from_font): Autoconstruct fontset under NS.
3444 * frame.c (various): Under NS, include nsterm.h, add Qns window system
3445 symbol, document and use it.
3446 (do_switch_frame): When for_deletion under Cocoa, add
3447 Fraise_frame(Qnil).
3448 (x_set_frame_parameters): Ensure font attribute changes are picked up.
3449 (x_get_arg): Allow "yes" and "no" as boolean values.
3450 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
3451 Qright under Cocoa.
3452 (focus-follows-mouse): Default to 0 under NS.
3453 * frame.h (enum output_method): Add output_ns.
3454 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
3455 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
3456 (FRAME_WINDOW_P): NS-specific definition.
3457 * fringe.c (max_used_fringe_bitmap): Make public.
3458 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
3459 (getloadavg): Use NeXT code under descendant OS's.
3460 * image.c (includes and header section, x_create_bitmap_from_data)
3461 (x_create_bitmap_from_file, free_bitmap_record, image_background)
3462 (image_background_transparent, x_clear_image_1)
3463 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3464 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
3465 (x_to_xcolors, x_from_xcolors, x_disable_image)
3466 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
3467 other GUIs, including XPM support using code originally written for
3468 Carbon GUI.
3469 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
3470 using NS API.
3471 (image_ascent): Use font metrics macros instead of direct struct field
3472 access.
3473 * keyboard.c (includes): Add nsterm.h when compiling under NS.
3474 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
3475 Also, handle NS as GTK for menu bar purposes.
3476 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
3477 toolkit where they differ.
3478 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
3479 use cachelist, still needed under NS.
3480 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
3481 (struct widget_value): Define it here for menu.c.
3482 * keymap.c (includes): Include modifier internals.
3483 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
3484 NS.
3485 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
3486 support for preferring sequences using certain modifiers, specified by
3487 the FIRSTONLY argument.
3488 * lisp.h (hash_remove): Rename to avoid name clash when compiling
3489 under NS GNUstep implementation.
3490 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
3491 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
3492 * menu.c: Include nsterm.h under NS.
3493 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
3494 (free_menubar_widget_tree_value, update_submenu_strings)
3495 (find_and_call_menu_selection): Treat NS as X and NT.
3496 (find_and_return_menu_selection): New function, used for popup menus.
3497 * nsgui.h:
3498 * nsterm.h:
3499 * nsfns.m:
3500 * nsimage.m:
3501 * nsmenu.m:
3502 * nsselect.m:
3503 * nsterm.m: New files.
3504 * process.c (wait_reading_process_output): Under NS, call ns_select()
3505 instead of plain select().
3506 * syntax.c (char_quoted): Under NS, avoid a crash when called near
3507 beginning of buffer.
3508 * sysselect.h (init_process): Rename when compiling under Cocoa to
3509 avoid name conflict.
3510 * termhooks.h (display_info): Add ns_display_info to union.
3511 * terminal.c (Fterminal_live_p): Add ns to terminal types.
3512 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
3513 COCOA environment.
3514 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
3515 unexec() signature. (Note, this will dump, but the resulting file
3516 crashes; unexosx is used instead; keeping around for reference and
3517 possible aid in getting dump working under GNUstep.)
3518 * w32gui.h (button_type, widget_value): Remove definitions (now in
3519 keyboard.h).
3520 * window.c: Include nsterm.h when compiling under NS.
3521 * xdisp.c (includes): Include nsterm.h when compiling under NS.
3522 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
3523 other GUI windowing systems.
3524 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
3525 GTK.
3526 (x_consider_frame_title): Under NS, set icon type and frame
3527 modified-state indicator; use ns_set_name_as_filename() when using
3528 formatted title.
3529 (update_window_cursor): Make public when compiling under NS.
3530 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
3531 (hourglass_atimer, Vhourglass_delay
3532 * xfaces.c (header section, init_frame_faces, clear_font_table)
3533 (defined_color, unload_color, x_face_list_fonts)
3534 (prepare_face_for_display): Add NS support parallel to other GUIs.
3535 Emulate GCs like other non-X GUIs.
3536 (split_font_name): Don't lowercase font name under NS.
3537 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
3538 under NS.
3539 * s/darwin.h: Add support for compilation under NS.
3540
35412008-07-15 Jason Rumney <jasonr@gnu.org>
3542
3543 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
3544 (w32_show_hourglass): Rename from show_hourglass.
3545 (w32_hide_hourglass): Rename from hide_hourglass.
3546 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
3547 (Vhourglass_delay): Declare extern.
3548 (hourglass_started): Remove.
3549
3550 * xdisp.c (Vhourglass_delay): Remove static.
3551 (hourglass_started, start_hourglass, cancel_hourglass):
3552 Don't include these versions on WINDOWSNT.
3553
35542008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3555
3556 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
3557 variables (formerly in xfns.c).
3558 (show_hourglass, hide_hourglass): New prototypes (same).
3559 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
3560 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
3561 in xfns.c).
3562 (syms_of_xdisp): Declare/initialize display-hourglass,
3563 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
3564 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
3565 formerly in xfns.c.
3566 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3567 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3568 (start_hourglass, cancel_hourglass): Remove.
3569 (show_hourglass, hide_hourglass): Remove prototypes and static
3570 modifiers.
3571 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
3572 hourglass_atimer, hourglass_shown_p declaration/initialization.
3573 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3574 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3575 (start_hourglass, cancel_hourglass): Remove.
3576 (show_hourglass, hide_hourglass): Remove prototypes and static
3577 modifiers.
3578 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
3579 hourglass_atimer, hourglass_shown_p declaration/initialization.
3580 * w32fns.c (display_hourglass_p, Vhourglass_delay)
3581 (DEFAULT_HOURGLASS_DELAY): Remove.
3582 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
3583 hourglass_shown_p declaration/initialization.
3584
35852008-07-14 Jason Rumney <jasonr@gnu.org>
3586
3587 * w32fns.c (w32_get_arg): Remove wrapper function.
3588 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
3589 directly.
3590 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
3591
35922008-07-14 Kenichi Handa <handa@m17n.org>
3593
3594 * xfont.c (xfont_open): Add workaround for X's bug.
3595
35962008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
3597
3598 * fontset.c: Include <stdio.h> unconditionally.
3599
36002008-07-13 Michael Albinus <michael.albinus@gmx.de>
3601
3602 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
3603 for filtering.
3604
36052008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
3606
3607 * s/vms.h: Use __GNUC__ instead of _GNUC_.
3608
3609 * m/macppc.h:
3610 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
3611
3612 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
3613 (SPECIAL_EMACS_INT):
3614 * m/ia64.h (SPECIAL_EMACS_INT):
3615 * m/amdx86-64.h (SPECIAL_EMACS_INT):
3616 * s/gnu.h (NLIST_STRUCT):
3617 * s/aix4-2.h (X11R5_INHIBIT_I18N):
3618 * s/gnu-linux.h (LINUX):
3619 * s/msdos.h (HAVE_FACES):
3620 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
3621
3622 * systty.h:
3623 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
3624 anymore.
3625
36262008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
3627
3628 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
3629 always defined as int.
3630
3631 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
3632 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
3633 * s/gnu-linux.h (HAVE_WAIT_HEADER):
3634 * s/freebsd.h (HAVE_WAIT_HEADER):
3635 * s/bsd-common.h (HAVE_UNION_WAIT):
3636 * s/aix4-2.h (HAVE_WAIT_HEADER):
3637 * m/mips.h (HAVE_UNION_WAIT):
3638 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
3639 (COFF, static): Do not define, they are undefined later in the file.
3640
3641 * process.c (update_status): Don't use a union.
3642 (status_convert):
3643 (sigchld_handler): Use int instead of WAITTYPE.
3644
36452008-07-12 Chong Yidong <cyd@stupidchicken.com>
3646
3647 * indent.c (Fvertical_motion): Restore hscroll before moving to
3648 goal column.
3649
36502008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3651
3652 * lisp.h: Remove left over code.
3653
36542008-07-11 Andreas Schwab <schwab@suse.de>
3655
3656 * lisp.h: Fix logic in last change.
3657
3658 * menu.h: New file.
3659 * menu.c: Include it.
3660 * xmenu.c: Likewise.
3661 * Makefile.in: Update dependencies.
3662
36632008-07-11 Kenichi Handa <handa@m17n.org>
3664
3665 * fontset.c (fontset_from_font): Cancel the previous change.
3666
36672008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3668
3669 * lisp.h:
3670 * w32heap.c:
3671 * emacs.c:
3672 * alloc.c: Replace all references of NO_UNION_TYPE with
3673 USE_LISP_UNION_TYPE.
3674
3675 * m/xtensa.h (NO_UNION_TYPE):
3676 * m/vax.h (NO_UNION_TYPE):
3677 * m/template.h (NO_UNION_TYPE):
3678 * m/sparc.h (NO_UNION_TYPE):
3679 * m/mips.h (NO_UNION_TYPE):
3680 * m/macppc.h (NO_UNION_TYPE):
3681 * m/m68k.h (NO_UNION_TYPE):
3682 * m/iris4d.h (NO_UNION_TYPE):
3683 * m/intel386.h (NO_UNION_TYPE):
3684 * m/ibms390x.h (NO_UNION_TYPE):
3685 * m/ibms390.h (NO_UNION_TYPE):
3686 * m/ibmrs6000.h (NO_UNION_TYPE):
3687 * m/ia64.h (NO_UNION_TYPE):
3688 * m/hp800.h (NO_UNION_TYPE):
3689 * m/arm.h (NO_UNION_TYPE):
3690 * m/amdx86-64.h (NO_UNION_TYPE):
3691 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
3692 defining it the same.
3693
36942008-07-10 Chong Yidong <cyd@stupidchicken.com>
3695
3696 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
3697
36982008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3699
3700 * fileio.c:
3701 * sysdep.c
3702 * systty.h:
3703 * m/ibmrs6000.h:
3704 * m/iris4d.h:
3705 * s/aix4-2.h:
3706 * s/freebsd.h:
3707 * s/gnu-linux.h:
3708 * s/hpux10-20.h:
3709 * s/hpux11.h:
3710 * s/netbsd.h:
3711 * s/sol2-3.h:
3712 * s/sol2-4.h:
3713 * s/sol2.h:
3714 * s/usg5-4.h:
3715 * s/vms.h: Remove references to unused variables.
3716
37172008-07-10 Andreas Schwab <schwab@suse.de>
3718
3719 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
3720 pattern before matching the generic family.
3721
37222008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3723
3724 * unexec.c:
3725 * s/vms.h:
3726 * s/usg5-4-2.h:
3727 * s/sol2-5.h:
3728 * s/freebsd.h:
3729 * s/darwin.h: Remove dead code.
3730
3731 * m/template.h:
3732 * m/sparc.h:
3733 * m/mips.h:
3734 * m/m68k.h:
3735 * m/iris4d.h:
3736 * m/intel386.h:
3737 * m/ibms390x.h:
3738 * m/ibms390.h:
3739 * m/ia64.h:
3740 * m/hp800.h:
3741 * m/arm.h:
3742 * m/amdx86-64.h: Remove dead code and references to unused
3743 and compiler defined symbols.
3744
3745 * unexmips.c:
3746 * unexelf.c: Remove references to desupported systems.
3747
3748 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
3749
3750 * m/powermac.h: Remove boilerplate comments.
3751 (NO_REMAP): Remove unused definition.
3752
3753 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
3754 define them.
3755
37562008-07-10 Kenichi Handa <handa@m17n.org>
3757
3758 * xfont.c (xfont_open): Log the reason of failure.
3759
37602008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
3761
3762 * fontset.c (fontset_get_font_group):
3763 * font.c (font_check_otf): Specify argument types.
3764
37652008-07-09 Kenichi Handa <handa@m17n.org>
3766
3767 * coding.c (detect_coding_utf_8): Set detect_info->found only when
3768 non-ASCII char is found.
3769
3770 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
3771 (reorder_font_vector): Change the arg preferred_family to font.
3772 Prefer the spec matching with font.
3773 (fontset_get_font_group): New function.
3774 (fontset_find_font): Change the format of an element of a realized
3775 fontset. Use fontset_get_font_group.
3776 (fontset_font): Try the current fontset, the default fontset, the
3777 fallbacks of the current fontset, and the fallbacks of the default
3778 fontset in this order.
3779 (face_for_char): Delete the shortcut to use the current font.
3780 (fontset_from_font): Don't set fonts for Latin in the fontset.
3781
3782 * font.h (font_make_object, font_match_p): Adjust prototypes.
3783
3784 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
3785
3786 * font.c (font_make_object): New arg entity and pixelsize.
3787 (font_check_otf_features, font_check_otf): New functions.
3788 (font_match_p): Check :lang, :script, and :otf properties.
3789
3790 * xfont.c (xfont_open): Adjust it for the change of
3791 font_make_object.
3792 (xfont_text_extents): Fix initial setting of metrics.
3793
3794 * ftfont.c (struct ftfont_info): New member index, delete member
3795 fc_charset_idx. Make the member order compatible with struct
3796 xftfont_info.
3797 (fc_charset_table): Change charset names to registry names.
3798 (ftfont_pattern_entity): Delete the args registry and
3799 fc_charset_idx. Change the value of :font-entity property
3800 to (FONTNAME . INDEX). Always set :registry property to
3801 `iso10646-1'.
3802 (struct ftfont_cache_data): New struct.
3803 (ftfont_lookup_cache): New arg for_face.
3804 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
3805 (ftfont_driver): Set the member otf_capability.
3806 (ftfont_get_charset): Adjust it for the change of
3807 fc_charset_table.
3808 (OTF_TAG_SYM): New macro.
3809 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
3810 for the change of fc_charset_table.
3811 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
3812 ftfont_pattern_entity. Add FC_INDEX to objset.
3813 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
3814 and ftfont_pattern_entity.
3815 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
3816 font_make_object, struct ftfont_info.
3817 (ftfont_has_char): Use ftfont_get_fc_charset.
3818 (ftfont_otf_features, ftfont_otf_capability): New functions.
3819 (ftfont_shape): Use ftfont_get_otf.
3820 (ftfont_text_extents): Fix initial setting of metrics.
3821
3822 * xftfont.c (struct xftfont_info): New member ft_size. Make the
3823 member order compatible with struct ftfont_info.
3824 (xftfont_open): Add FC_CHARSET to the pattern. Set
3825 xftfont_info->ft_size. Don't unlock the face. Check BDF
3826 properties if appropriate.
3827 (xftfont_close): Unlock the face.
3828 (xftfont_anchor_point, xftfont_shape): Deleted.
3829 (syms_of_xftfont): Don't set members anchor_point and shape of
3830 xftfont_driver.
3831
3832 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
3833 font_make_object.
3834
3835 * w32font.c (w32font_open): Adjust it for the change of
3836 font_make_object.
3837 (w32font_open_internal): Don't set properties of font_object here.
3838
38392008-07-08 Chong Yidong <cyd@stupidchicken.com>
3840
3841 * macfns.c (x_create_tip_frame):
3842 * w32fns.c (x_create_tip_frame):
3843 * xfns.c (x_create_tip_frame): Pass parameter argument to
3844 face-set-after-frame-default.
3845
3846 * xfaces.c (Finternal_merge_in_global_face): Save merged
3847 attributes for the default face back into the face vector.
3848
38492008-07-08 Andreas Schwab <schwab@suse.de>
3850
3851 * fontset.h: Declare fontset_from_font. Don't declare
3852 new_fontset_from_font and fontset_from_font_name.
3853 * xterm.c: Include "fontset.h".
3854 * Makefile.in (xterm.o): Update dependencies.
3855
38562008-07-08 Glenn Morris <rgm@gnu.org>
3857
3858 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
3859 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
3860
38612008-07-07 Chong Yidong <cyd@stupidchicken.com>
3862
3863 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
3864 (x_set_frame_parameters): Don't bind it.
3865
38662008-07-07 Juanma Barranquero <lekktu@gmail.com>
3867
3868 * w32fns.c (map_w32_filename): Declare extern.
3869
38702008-07-07 Jason Rumney <jasonr@gnu.org>
3871
3872 * w32term.c (WS_EX_LAYERED): Define if not already.
3873
38742008-07-06 Chong Yidong <cyd@stupidchicken.com>
3875
3876 * xfaces.c (set_font_frame_param): Don't try to set the font
3877 parameter if it is still unspecified in the lface.
3878
38792008-07-05 Chong Yidong <cyd@stupidchicken.com>
3880
3881 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
3882 face if it didn't already exist.
3883
3884 * xdisp.c (try_window_id): Give up if word-wrapping is on.
3885
38862008-07-05 Andreas Schwab <schwab@suse.de>
3887
3888 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
3889
38902008-07-05 Chong Yidong <cyd@stupidchicken.com>
3891
3892 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
3893 word-wrapping.
3894 (IT_DISPLAYING_WHITESPACE): New macro.
3895 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
3896 when word-wrapping. Simplify word-wrapping logic. Use correct
3897 pixel positions when saving copies of the iterator.
3898 (display_line): Use proper wrap point if the last character on a
3899 line was preceded by whitespace.
3900
39012008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
3902
3903 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
3904
39052008-07-04 Kenichi Handa <handa@m17n.org>
3906
3907 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
3908
3909 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
3910
39112008-07-02 Jason Rumney <jasonr@gnu.org>
3912
3913 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 3914 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
3915
3916 * xdisp.c (next_element_from_display_vector): Move assignment out
3917 of if statement.
3918
39192008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
3920
3921 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
3922
3923 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
3924 (syms_of_fileio): Initialize and export them.
3925 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
3926
3927 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
3928 (Fsystem_move_file_to_trash): New function.
3929 (syms_of_w32fns): Export it to lisp.
3930
39312008-07-01 Jason Rumney <jasonr@gnu.org>
3932
3933 * w32font.c (w32font_text_extents): Don't count overhang as part
3934 of width.
3935
39362008-06-30 Miles Bader <miles@gnu.org>
3937
3938 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
3939 Add `avoid_cursor_p' field.
3940
3941 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
3942 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
3943 (append_glyph, append_composite_glyph, produce_image_glyph)
3944 (append_stretch_glyph): Initialize avoid_cursor_p.
3945 (get_it_property): Rename from `get_line_height_property'.
3946 (x_produce_glyphs): Use get_it_property.
3947 (handle_line_prefix, push_display_prop): New functions.
3948 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
3949 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
3950 New variables.
3951 (syms_of_xdisp): Initialize them.
3952
39532008-06-30 Kenichi Handa <handa@m17n.org>
3954
3955 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
3956 XftDefaultSubstitute (they are called in XftFontMatch).
3957 (xftfont_open): Fix args to ftfont_font_format.
3958
3959 * ftfont.c (fc_charset_table): New member lang.
3960 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 3961 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
3962 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
3963 (ftfont_open): Fix args to ftfont_font_format.
3964 (ftfont_font_format): New arg filename.
3965
39662008-06-30 Chong Yidong <cyd@stupidchicken.com>
3967
3968 * xfaces.c (Finternal_merge_in_global_face): If default face was
3969 modified, realize it again. Update the font face attribute.
3970
39712008-06-29 Jason Rumney <jasonr@gnu.org>
3972
3973 * w32term.c (x_set_frame_alpha): Fix logic.
3974
39752008-06-29 Kenichi Handa <handa@m17n.org>
3976
3977 * fontset.c (Finternal_char_font): Return font-object instead of
3978 font-name.
3979
3980 * composite.c (get_composition_id): Fix the width calculation for TAB.
3981
39822008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
3983
3984 * indent.c (Fvertical_motion): Properly handle float column arg.
3985
39862008-06-28 Jason Rumney <jasonr@gnu.org>
3987
3988 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
3989 (pfnSetLayeredWindowAttributes): New function pointer.
3990 (w32_initialize): Initialize it when supported.
3991 (x_set_frame_alpha): New function.
3992
3993 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
3994 (w32_frame_parm_handlers): Set alpha handler.
3995
3996 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
3997
39982008-06-27 Jason Rumney <jasonr@gnu.org>
3999
4000 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
4001 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
4002 (w32_to_x_charset, x_to_w32_charset)
4003 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4004 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4005 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4006 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4007 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4008 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4009 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
4010 (Qw32_charset_unicode): Remove.
4011 (syms_of_w32fns): Update for above changes.
4012
4013 * w32font.c (w32_to_x_charset, x_to_w32_charset)
4014 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
4015 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
4016 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
4017 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
4018 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
4019 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
4020 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
4021 (syms_of_w32font): Update for above changes.
4022
40232008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
4024
4025 * s/usg5-4.h: Fix previous change: keep the correct branch of a
4026 removed #if.
4027 (USG_SHARED_LIBRARIES): Remove duplicate definition.
4028
40292008-06-26 Juanma Barranquero <lekktu@gmail.com>
4030 Eli Zaretskii <eliz@gnu.org>
4031
4032 * makefile.w32-in (LOCAL_FLAGS):
4033 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
4034
4035 * sysdep.c (_spawnlp, _getpid):
4036 Declare with explicit _cdecl instead of _CRTAPI1.
4037
4038 * editfns.c (Fget_internal_run_time):
4039 Check for WINDOWSNT with #ifdef, not #if.
4040
40412008-06-26 Jason Rumney <jasonr@gnu.org>
4042
4043 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
4044
4045 * w32term.c (x_draw_glyph_string_foreground)
4046 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
4047 Use FONT_HANDLE macro.
4048 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
4049
4050 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4051 (uniscribe_encode_char): Use FONT_HANDLE macro.
4052
4053 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
4054 (w32font_text_extents): Use precast w32_font.
4055 (w32font_close): Free cached metrics.
4056 (w32font_open_internal): Allocate space for name on stack.
4057
40582008-06-26 Chong Yidong <cyd@stupidchicken.com>
4059
4060 * xdisp.c (extend_face_to_end_of_line): Fix last change.
4061
40622008-06-26 Jason Rumney <jasonr@gnu.org>
4063
4064 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
4065 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
4066
40672008-06-26 Juanma Barranquero <lekktu@gmail.com>
4068
4069 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
4070
40712008-06-26 Jason Rumney <jasonr@gnu.org>
4072
4073 * w32bdf.c, w32bdf.h: Remove obsolete files.
4074
4075 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
4076
4077 * w32gui.h: Don't include w32bdf.h.
4078 (XCharStruct, enum w32_char_font_type, W32FontStruct):
4079 Remove obsolete font support.
4080
4081 * w32font.h (struct w32font_info): Remove compat_w32_font.
4082 Add hfont member.
4083 (FONT_COMPAT): Remove obsolete macro.
4084
4085 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
4086 (w32font_encode_char, w32font_text_extents): Use new hfont member.
4087 (w32font_open_internal): Remove compat code. Set new hfont member.
4088 (Fx_select_font): Use new hfont member.
4089
4090 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4091 (uniscribe_encode_char): Use new hfont member.
4092
4093 * w32term.c (x_draw_glyph_string_foreground)
4094 (x_draw_composite_glyph_string_foreground): Use new hfont member.
4095 (x_draw_glyph_string): Use metrics in w32font_info.
4096
40972008-06-26 Kenichi Handa <handa@m17n.org>
4098
4099 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
4100
41012008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
4102
4103 * unexnext.c:
4104 * m/ews4800.h:
4105 * m/hp9000s300.h:
4106 * m/ibm370aix.h:
4107 * m/mips-siemens.h:
4108 * m/ncr386.h:
4109 * m/next.h:
4110 * m/pmax.h:
4111 * m/powerpcle.h:
4112 * m/tandem-s2.h:
4113 * s/386bsd.h:
4114 * s/bsd386.h:
4115 * s/bsd4-1.h:
4116 * s/bsd4-2.h:
4117 * s/bsdos2-1.h:
4118 * s/bsdos2.h:
4119 * s/bsdos3.h:
4120 * s/bsdos4.h:
4121 * s/nextstep.h:
4122 * s/ultrix4-3.h:
4123 * s/usg5-0.h:
4124 * s/usg5-2-2.h:
4125 * s/usg5-2.h:
4126 * s/usg5-4-3.h:
4127 * s/ux4800.h:
4128 * s/uxpds.h:
4129 * s/uxpv.h: Remove support for obsolete systems.
4130 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
4131 Remove, insert contents in s/hpux-10.20.h.
4132 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
4133 Remove, insert contents in s/aix4-2.h.
4134 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
4135 * s/bsd4-3.h: Rename to ...
4136 * s/bsd-common.h: ... this.
4137 * data.c:
4138 * doc.c:
4139 * ecrt0.c:
4140 * emacs.c:
4141 * fileio.c:
4142 * floatfns.c:
4143 * keyboard.c:
4144 * mem-limits.h:
4145 * print.c:
4146 * process.c:
4147 * sysdep.c:
4148 * syssignal.h:
4149 * systty.h:
4150 * syswait.h:
4151 * term.c:
4152 * unexec.c:
4153 * unexelf.c:
4154 * unexhp9k800.c:
4155 * m/hp800.h:
4156 * m/ibmrs6000.h:
4157 * m/mips.h:
4158 * m/vax.h:
4159 * s/darwin.h:
4160 * s/freebsd.h:
4161 * s/gnu.h:
4162 * s/ms-w32.h:
4163 * s/msdos.h:
4164 * s/netbsd.h:
4165 * s/template.h: Remove references to obsolete variables.
4166
4167 * Makefile.in: Add dependencies for all unexec files.
4168 (admindir): Remove unused variable.
4169 (UNEXEC_SRC): Remove references.
4170
41712008-06-25 Chong Yidong <cyd@stupidchicken.com>
4172
4173 * xfns.c (x_default_font_parameter): If Xft is available, first
4174 try Monospace-12 for the default font.
4175
41762008-06-25 Jason Rumney <jasonr@gnu.org>
4177
4178 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
4179
41802008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
4181
4182 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
4183
4184 * buffer.c (syms_of_buffer): Remove default-word-wrap.
4185
41862008-06-25 Juanma Barranquero <lekktu@gmail.com>
4187
4188 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
4189 <scroll-conservatively>: Fix typo in docstring.
4190
4191 * xselect.c (Fx_send_client_event): Doc fix.
4192
41932008-06-25 Kenichi Handa <handa@m17n.org>
4194
4195 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
4196
4197 * font.c (font_parse_fcname): Remove unused variables.
4198 (font_sort_entites): Delete the arg SPEC. Caller changed.
4199 Fix for the case of ! best_only.
4200 (font_delete_unmatched): Check DPI and AVGWIDTH too.
4201
4202 * lisp.h (Fstring_to_unibyte): EXFUN it.
4203
4204 * character.h (str_to_unibyte): Extern it.
4205
4206 * character.c (str_to_unibyte): New function.
4207
4208 * fns.c (Fstring_to_unibyte): New function.
4209 (syms_of_fns): Defsubr it.
4210
42112008-06-24 Kenichi Handa <handa@m17n.org>
4212
4213 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
4214 DPI too.
4215 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
4216
42172008-06-24 Andreas Schwab <schwab@suse.de>
4218
4219 * Makefile.in (${lispsource}loaddefs.el): Rename from
4220 ../lisp/loaddefs.el.
4221 (bootstrap-clean): Do what distclean does but don't remove
4222 Makefile.
4223 (distclean): Depend on bootstrap-clean and remove Makefile.
4224
42252008-06-24 Chong Yidong <cyd@stupidchicken.com>
4226
4227 * buffer.h (struct buffer): New member word_wrap.
4228
4229 * buffer.c (syms_of_buffer): New variables default-word-wrap and
4230 word-wrap.
4231 (init_buffer_once): Initialize them.
4232
4233 * dispextern.h (struct it): Replace bool truncate_lines_p with a
4234 line_wrap enum possessing three possible values.
4235
4236 * termopts.h: Replace truncate_partial_width_windows with
4237 Vtruncate_partial_width_windows.
4238
4239 * dispnew.c (direct_output_for_insert): Avoid direct output when
4240 inserting a space with word wrap on.
4241
4242 * indent.c (compute_motion): Obey integer values of
4243 truncate-partial-width-windows.
4244
4245 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
4246 replacing truncate_partial_width_windows.
4247 (init_iterator): If Vtruncate_partial_width_windows is an integer,
4248 truncate only if the window width is below that integer.
4249 (start_display, resize_mini_window, produce_stretch_glyph)
4250 (display_string, move_it_in_display_line_to): Use line_wrap.
4251 (back_to_previous_visible_line_start, reseat_1): Reset
4252 string_from_display_prop_p.
4253 (display_line): Extend default face to end of line when wrapping.
4254
42552008-06-24 Kim F. Storm <storm@cua.dk>
4256
4257 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
4258 to wrap continued lines at word boundaries.
4259
42602008-06-24 Jason Rumney <jasonr@gnu.org>
4261
4262 * font.c (Ffont_face_attributes): Multiply pixel size before point
4263 conversion to avoid multiplying rounding error.
4264
42652008-06-23 Jason Rumney <jasonr@gnu.org>
4266
4267 * w32term.c (x_draw_glyph_string_background)
4268 (x_draw_glyph_string): Remove old bdf font code.
4269
4270 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
4271
42722008-06-22 Kenichi Handa <handa@m17n.org>
4273
4274 * font.c (font_find_for_lface): Try the adstyle specified in
4275 the property of LFACE_FONT of LFACE (if any).
4276
42772008-06-21 Seiji Zenitani <zenitani@mac.com>
4278 Ryo Yoshitake <ryo@shiftmode.net>
4279
4280 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
4281
42822008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
4283
4284 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
4285 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
4286 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
4287 (witness-emacs): Remove.
4288 (lisp, shortlisp): Move loaddefs.el earlier.
4289 (mostlyclean): Forget about witness-emacs.
4290
42912008-06-22 Glenn Morris <rgm@gnu.org>
4292
4293 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
4294 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
4295
42962008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4297
4298 * Makefile.in (PRECOMP): Remove.
4299 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
4300 (witness-emacs): Run `compile-first'.
4301 (.el.elc): Use the new compile-onefile target.
4302
43032008-06-21 Kenichi Handa <handa@m17n.org>
4304
4305 * xftfont.c (xftfont_open): Handle QCembolden only when
4306 FC_EMBOLDEN is defined.
4307
43082008-06-21 Andreas Schwab <schwab@suse.de>
4309
4310 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
4311 (.el.elc): Likewise.
4312
43132008-06-21 Miles Bader <miles@gnu.org>
4314
4315 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
4316 build dir, not the lisp source dir.
4317
43182008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4319
4320 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
4321 (bootstrapclean): Remove.
4322 (.el.elc): New rule.
4323 (PRECOMP): New var.
4324 (../lisp/subdirs.el): Remove.
4325 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
4326 (witness-emacs): New target.
4327 (mostlyclean): Remove witness-emacs as well.
4328 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
4329 Add witness-emacs dependency.
4330
43312008-06-20 Chong Yidong <cyd@stupidchicken.com>
4332
4333 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
4334 defined by the font.
4335
43362008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4337
4338 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
4339 (bootstrap-clean): New target that keeps TAGS around.
4340 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
4341 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
4342
43432008-06-20 Jason Rumney <jasonr@gnu.org>
4344
4345 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
4346 Remove obsolete font code.
4347
4348 * w32font.c (font_matches_spec): Use csb bitfield from font signature
4349 to determine language support.
4350
43512008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4352
4353 * sysdep.c (cfsetspeed): New fun extracted from the code.
4354 (cfmakeraw): Move before first use.
4355
43562008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
4357
4358 * sysdep.c (cfmakeraw): Provide fallback implementation.
4359 (serial_configure): Provide fallback implementation of cfsetspeed.
4360
43612008-06-20 Kenichi Handa <handa@m17n.org>
4362
4363 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
4364 the pattern.
4365
4366 * fontset.c (fontset_from_font): Copy font_spec before changing
4367 the elements.
4368
4369 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
4370
43712008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4372
4373 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
4374 for explicit `font' parameters.
4375
4376 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
4377
43782008-06-19 Kenichi Handa <handa@m17n.org>
4379
4380 * frame.c: Include <ctype.h>.
4381 (x_set_font_backend): Allow spacing characters in the X resource
4382 for FontBackend.
4383
43842008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
4385
4386 * w32fns.c, xfns.c (Qfont_param): New var.
4387 (syms_of_w32fns): Initialize it.
4388 (x_default_font_parameter): Record explicit `font' into
4389 `font-parameter'.
4390
43912008-06-18 Kenichi Handa <handa@m17n.org>
4392
4393 * font.c (font_parse_xlfd): Fix previous change.
4394 (font_parse_fcname): Don't use :fc-unknown-spec.
4395 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
4396 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
4397 (font_add_log): Prepend the driver name to the resulting fonts.
4398
4399 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
4400 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
4401 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
4402
4403 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
4404 (QCembolden): New variables.
4405 (syms_of_xftfont): DEFSYM them.
4406 (xftfont_open): Call XftFontMatch. Don't trust the result of
4407 XftTextExtents8 if the pixel_size is less than 5.
4408
44092008-06-18 Andreas Schwab <schwab@suse.de>
4410
4411 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
4412 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
4413
44142008-06-18 Jason Rumney <jasonr@gnu.org>
4415
4416 * w32font.c (w32font_list, w32font_match): Add logging.
4417
4418 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
4419
44202008-06-17 Chong Yidong <cyd@stupidchicken.com>
4421
4422 * font.c (font_parse_fcname): Store divider characters for
4423 unknown-spec list. For known key symbols, intern using correct
4424 symbol name.
4425
44262008-06-17 Kenichi Handa <handa@m17n.org>
4427
4428 * xfaces.c (realize_default_face): If the frame is not on window
4429 system, set the fontset of face to nil.
4430
44312008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4432
4433 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
4434
44352008-06-16 Juanma Barranquero <lekktu@gmail.com>
4436
4437 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
4438 (build_font_name_from_vector): Delete externs.
4439
4440 * xfaces.c (struct font_name): Don't declare.
4441
44422008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4443
4444 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
4445
44462008-06-16 Chong Yidong <cyd@stupidchicken.com>
4447
4448 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
4449
44502008-06-16 Juanma Barranquero <lekktu@gmail.com>
4451
4452 * font.c (Ffont_spec): Fix usage in docstring.
4453 (Ffont_face_attributes): Doc fix.
4454
44552008-06-16 Andreas Schwab <schwab@suse.de>
4456
4457 * font.c (Ffont_face_attributes): Fix definition.
4458
44592008-06-16 Jason Rumney <jasonr@gnu.org>
4460
4461 * font.h (font_style_symbolic_from_value): Remove.
4462
4463 * font.c (font_style_symbolic_from_value): Remove.
4464 (font_style_symbolic): Revert to pre 2008-06-13 version.
4465
4466 * w32font.c (w32_to_fc_weight): New function.
4467 (w32font_full_name, logfont_to_fcname): Use it.
4468
44692008-06-16 Kenichi Handa <handa@m17n.org>
4470
4471 * font.c (font_check_object): Delete it.
4472 (font_clear_cache): Check if a font-object is alive.
4473 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
4474 font-object to nil.
4475 (font_close_object): Don't check FONT_CLOSE_OBJECT.
4476 (font_at): Don't call font_check_object.
4477 (Ffont_get): Return a symbol for :weight, :slant, and :width.
4478
44792008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
4480
4481 * puresize.h (BASE_PURESIZE): Increase to 1230000.
4482
44832008-06-16 Chong Yidong <cyd@stupidchicken.com>
4484
4485 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
4486
44872008-06-15 Chong Yidong <cyd@stupidchicken.com>
4488
4489 * font.c (font_parse_fcname): Only one decimal point.
4490 (font_unparse_fcname): Handle data in family and foundry indices
4491 as symbols, not strings.
4492 (font_unparse_gtkname, Ffont_face_attributes): New functions.
4493
4494 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
4495
4496 * font.h (font_unparse_gtkname): Add prototype.
4497
44982008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4499
4500 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
4501
45022008-06-15 Andreas Schwab <schwab@suse.de>
4503
4504 * font.c (font_update_drivers): Fix crash when no drivers match.
4505
45062008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
4507
4508 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
4509 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
4510
45112008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
4512
4513 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
4514
45152008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4516
4517 * process.c (Fserial_process_configure, Fprocess_send_eof):
4518 Use EQ to compare Lisp_Objects.
4519
45202008-06-13 Jason Rumney <jasonr@gnu.org>
4521
4522 * w32fns.c (Fw32_select_font): Remove old font API function.
4523
4524 * w32font.c (logfont_to_fcname): New function.
4525 (Fx_select_font): New font dialog function compatible with
4526 GTK/fontconfig version.
4527
4528 * font.c (font_style_symbolic_from_value): New function.
4529 (font_style_symbolic): Use it.
4530
4531 * font.h (font_style_symbolic_from_value): Declare new function.
4532
45332008-06-13 Juanma Barranquero <lekktu@gmail.com>
4534
4535 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
4536 <font-width-table>: Fix typos in docstrings.
4537
45382008-06-13 Daniel Engeler <engeler@gmail.com>
4539
4540 These changes add serial port access.
4541 * process.c: Add HAVE_SERIAL.
4542 (Fdelete_process, Fprocess_status, Fset_process_buffer)
4543 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
4544 (list_processes_1, select_wrapper, Fstop_process)
4545 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
4546 (status_notify): Modify to handle serial processes.
4547 [HAVE_SERIAL] (Fserial_process_configure)
4548 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
4549 New functions.
4550 * process.h (struct Lisp_Process): Add `type'.
4551 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
4552 New functions.
4553 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
4554 serial ports.
4555 (serial_open, serial_configure) New functions.
4556 * w32.h: Add FILE_SERIAL.
4557 (struct _child_process): Add ovl_read, ovl_write.
4558
45592008-06-13 Kenichi Handa <handa@m17n.org>
4560
4561 * dispextern.h (enum lface_attribute_index): New member
4562 LFACE_FOUNDRY_INDEX.
4563
4564 * font.c (font_score): Delete arg alternate_families. Check only
4565 weight, slant, width, and size. Ignore the difference of alias
4566 style symbols.
4567 (font_sort_entites): Adjust for the above change. Reflect the
4568 order of font-driver to scores.
4569 (font_list_entities): Don't check alternate_familes here.
4570 (font_clear_prop): Handle foundry.
4571 (font_update_lface): Don't parse "foundry-family" form here.
4572 Handle FONT_FOUNDRY_INDEX.
4573 (font_find_for_lface): Likewise. Handle alternate families here.
4574 If registry is nil, try iso8859-1 and ascii-0.
4575 (font_open_for_lface): Pay attention to size in ENTITY.
4576 (font_open_by_name): Simplify by calling font_load_for_lface.
4577 (free_font_driver_list): Delete it.
4578 (font_update_drivers): Preserve the order of backends.
4579 (syms_of_font): Setting of sort_shift_bits adjusted for the change
4580 of font_score and font_sort_entites.
4581 (font_update_sort_order): Likewise.
4582
4583 * xfaces.c (LFACE_FOUNDRY): New macro.
4584 (check_lface_attrs): Check foundry.
4585 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
4586 (merge_face_vectors): Check foundry.
4587 (merge_face_ref): Likewise.
4588 (Finternal_set_lisp_face_attribute): Likewise.
4589 (x_update_menu_appearance): Likewise.
4590 (Finternal_get_lisp_face_attribute): Likewise.
4591 (lface_hash): Likewise.
4592 (lface_same_font_attributes_p): Likewise.
4593 (x_supports_face_attributes_p): Likewise.
4594 (tty_supports_face_attributes_p): Likewise.
4595 (Finternal_set_alternative_font_family_alist): Intern strings.
4596 (Finternal_set_alternative_font_registry_alist): Downcase strings.
4597 (realize_default_face): Set LFACE_FOUNDRY (lface).
4598
4599 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
4600 font-driver at first.
4601
4602 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
4603
46042008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4605
4606 * lread.c (Fload): Use xfree, not free on saved_doc_string.
4607
46082008-06-12 Jim Meyering <meyering@redhat.com>
4609
4610 Make unexec_free handle NULL the same way free does.
4611 * unexmacosx.c (unexec_free): Ignore a NULL argument.
4612
46132008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
4614
4615 * character.h (CHAR_TO_BYTE_SAFE): New macro.
4616 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
4617 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
4618 (WEAK_ALIAS): Simplify.
4619 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
4620 when searching a unibyte buffer.
4621
46222008-06-12 Chong Yidong <cyd@stupidchicken.com>
4623
4624 * xfns.c (Fx_select_font): Rename from x-font-dialog.
4625
46262008-06-12 Juanma Barranquero <lekktu@gmail.com>
4627
4628 * w32font.c: Include ctype.h.
4629
46302008-06-11 Jason Rumney <jasonr@gnu.org>
4631
4632 * w32font.c (w32font_encode_char): Detect missing glyphs that are
4633 misreported as space.
4634 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
4635 as aliases for registry iso10646-1.
4636
46372008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
4638
4639 * buffer.c (clone_per_buffer_values): Skip `name'.
4640
46412008-06-11 Chong Yidong <cyd@stupidchicken.com>
4642
4643 * font.c (font_parse_fcname): Fix last change; accept decimal
4644 points in font size.
4645
46462008-06-10 Jason Rumney <jasonr@gnu.org>
4647
4648 * w32uniscribe.c (add_opentype_font_name_to_list):
4649 Skip non unicode fonts.
4650
46512008-06-10 Chong Yidong <cyd@stupidchicken.com>
4652
4653 * xfns.c (Fx_font_dialog): New function.
4654
4655 * gtkutil.c (xg_dialog_response_cb): Rename from
4656 xg_file_response_callback.
4657 (pop_down_dialog): Rename from pop_down_file_dialog.
4658 (xg_get_file_name): Callers changed.
4659 (xg_get_font_name): New function.
4660
4661 * gtkutil.h (xg_get_font_name): Insert prototype.
4662
46632008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4664
4665 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
4666 x_underline_minimum_display_offset.
4667 (syms_of_xdisp): Declare it here rather than in xterm.c.
4668 * dispextern.h (underline_minimum_offset): Declare it.
4669 * w32term.c (x_draw_glyph_string): Use it.
4670 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
4671 (syms_of_xterm): Don't declare it any more.
4672 (x_draw_glyph_string): Adjust to the new name.
4673
46742008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
4675
4676 * xterm.c (x_underline_minimum_display_offset): New var.
4677 (x_draw_glyph_string): Use it.
4678 (syms_of_xterm): Declare it.
4679
46802008-06-10 Chong Yidong <cyd@stupidchicken.com>
4681
4682 * font.c (font_parse_fcname): Accept GTK-style font names too.
4683
46842008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4685
4686 * dired.c (file_name_completion): Don't return t if the match is exact
4687 but with different capitalization.
4688 * minibuf.c (Ftry_completion): Simplify.
4689
4690 * window.c (Vwindow_point_insertion_type): New var.
4691 (set_window_buffer): Use it.
4692 (syms_of_window): Init and export it to Lisp.
4693
46942008-06-10 Kenichi Handa <handa@m17n.org>
4695
4696 * font.h (font_intern_prop): Prototype adjusted.
4697
4698 * font.c (font_intern_prop): New arg force_symbol.
4699 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
4700 Adjust for the change of font_intern_prop.
4701
4702 * ftfont.c (ftfont_pattern_entity):
4703 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
4704 (w32_registry):
4705 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
4706 the change of font_intern_prop.
4707
47082008-06-09 Juanma Barranquero <lekktu@gmail.com>
4709
4710 * w32menu.c (digest_single_submenu): Declare extern.
4711
47122008-06-09 Jason Rumney <jasonr@gnu.org>
4713
4714 * w32term.c (x_make_frame_visible): Use alternate restore flags.
4715
4716 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
4717 (parse_single_submenu): Remove.
4718 (digest_single_submenu): Remove.
4719 (syms_of_w32menu): Don't initialise variables that have moved
4720 to menu.c.
4721 (set_frame_menubar): Sync with version in xmenu.c.
4722 (w32_menu_show): Sync with xmenu_show in xmenu.c.
4723
4724 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
4725 Make static again.
4726
47272008-06-09 Jason Rumney <jasonr@gnu.org>
4728
4729 Changes to w32 files related to the move of common menu code
4730 to menu.c on 2008-06-08 by Chong Yidong.
4731
4732 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
4733 defs to w32gui.h.
4734 (single_keymap_panes, push_menu_item, push_menu_pane):
4735 Make globally visible.
4736
4737 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
4738 (local_free, malloc_widget_value, free_widget_value)
4739 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
4740 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
4741 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
4742 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
4743 (menu_items, menu_items_allocated, menu_items_used)
4744 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
4745 (init_menu_items, finish_menu_items, discard_menu_items)
4746 (grow_menu_items, push_submenu_start, push_submenu_end)
4747 (push_left_right_boundary, push_menu_pane, push_menu_item)
4748 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
4749 (free_menubar_widget_tree_value, parse_single_submenu)
4750 (update_submenu_strings): Remove functions.
4751 (xmalloc_widget_value): Remove and declare extern.
4752
4753 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
4754 (OBJ1): Build it.
4755
4756 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
4757 (local_heap, local_alloc, local_free, malloc_widget_value)
4758 (free_widget_value): Define here.
4759
47602008-06-09 Kenichi Handa <handa@m17n.org>
4761
4762 * font.h (Qascii_0): Extern it.
4763
4764 * font.c (Qascii_0): New variable.
4765 (syms_of_font): DEFSYM it.
4766 (font_open_by_name): If the registry "iso8859-1" fails, try also
4767 "ascii-0".
4768
4769 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
4770
47712008-06-08 Kenichi Handa <handa@m17n.org>
4772
4773 * .gdbinit (xfont): New command.
4774
47752008-06-08 Andreas Schwab <schwab@suse.de>
4776
4777 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
4778 * Makefile.in (menu.o): Update dependencies.
4779
4780 * Makefile.in (obj): Always add menu.o.
4781 * emacs.c (main): Always call syms_of_menu.
4782 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
4783
47842008-06-08 Chong Yidong <cyd@stupidchicken.com>
4785
4786 * Makefile.in: Compile menu.c.
4787
4788 * lisp.h: Declare syms_of_menu.
4789
4790 * emacs.c (main): Call syms_of_menu.
4791
4792 * keyboard.h: Relocate platform-independent menu definitions from
4793 xmenu.c.
4794
4795 * menu.c: New file. Relocate platform-independent menu
4796 definitions from xmenu.c. Suggested by Adrian Robert.
4797
4798 * xmenu.c: Remove platform-independent menu definitions.
4799 (menu_items menu_items_inuse, menu_items_allocated)
4800 (menu_items_used, menu_items_n_panes)
4801 (menu_items_submenu_depth): Move to keyboard.h.
4802 (init_menu_items, finish_menu_items, unuse_menu_items)
4803 (discard_menu_items, restore_menu_items, save_menu_items)
4804 (grow_menu_items, push_submenu_start, push_submenu_end)
4805 (push_left_right_boundary, push_menu_pane, push_menu_item)
4806 (keymap_panes, single_keymap_panes, single_menu_item)
4807 (list_of_panes, list_of_items, find_and_call_menu_selection)
4808 (xmalloc_widget_value, free_menubar_widget_value_tree)
4809 (parse_single_submenu, digest_single_submenu)
4810 (update_submenu_strings): Move to menu.c.
4811
48122008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
4813
4814 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
4815
48162008-06-06 Miles Bader <miles@gnu.org>
4817
4818 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
4819 face, not frame default.
4820
48212008-06-05 Martin Rudalics <rudalics@gmx.at>
4822
4823 * window.c (pop_up_windows, pop_up_frames)
4824 (display_buffer_reuse_frames, Vpop_up_frame_function)
4825 (Vdisplay_buffer_function, Veven_window_heights)
4826 (Vspecial_display_buffer_names, Vspecial_display_regexps)
4827 (Vspecial_display_function, Vsame_window_buffer_names)
4828 (Vsame_window_regexps, split_height_threshold)
4829 (Vsplit_window_preferred_function): Move those vars to window.el.
4830 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
4831 (Fdisplay_buffer): Move those functions to window.el.
4832 (syms_of_window): Remove corresponding declarations.
4833 (display_buffer): New function.
4834 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
4835 * dispnew.c (Flast_nonminibuf_frame): New function.
4836 * buffer.c (Fpop_to_buffer): Move to window.el.
4837
48382008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4839
4840 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
4841
48422008-06-05 Kenichi Handa <handa@m17n.org>
4843
4844 * coding.c (detect_coding): Fix previous change.
4845 (detect_coding_system): Likewise.
4846
48472008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4848
4849 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
4850
4851 * keymap.c (Vminibuffer_local_filename_must_match_map):
4852 Rename from Vminibuffer_local_must_match_filename_map.
4853 (syms_of_keymap):
4854 * minibuf.c (Fcompleting_read): Adjust accordingly.
4855 * commands.h: Rename declaration as well.
4856
48572008-06-05 Kenichi Handa <handa@m17n.org>
4858
4859 * font.c (Ffont_spec): Don't use font_parse_family_registry for
4860 family name.
4861 (Ffont_put): Likewise.
4862
4863 * fontset.c (fontset_find_font): Call font_open_for_lface with the
4864 current font-spec.
4865
4866 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
4867 is unspecified.
4868
4869 * xfaces.c (realize_x_face): If the font-related face attributes
4870 are the same as those of default face, realize a new fontset from
4871 default->fontset.
4872 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
4873
48742008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4875
4876 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
4877 (move_it_in_display_line): New wrapper.
4878
4879 * window.c (window_scroll_pixel_based_preserve_x)
4880 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
4881 (window_scroll_pixel_based, window_scroll_line_based):
4882 Use them to preserve column positions.
4883 (syms_of_window): Initialize them.
4884
4885 * indent.c (Fvertical_motion): Extend first arg to allow passing an
4886 (HPOS . VPOS) pair.
4887
4888 * dispextern.h (move_it_in_display_line): Declare.
4889
48902008-06-05 Juanma Barranquero <lekktu@gmail.com>
4891
4892 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
4893 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
4894 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
4895
48962008-06-04 Juanma Barranquero <lekktu@gmail.com>
4897
4898 * window.c (Fset_window_parameter): Doc fix.
4899 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
4900
49012008-06-04 Joakim Verona <joakim@verona.se>
4902
4903 * window.h (struct window): Add new member window_parameters.
4904
4905 * window.c (Fwindow_parameters, Fwindow_parameter)
4906 (Fset_window_parameter): New defuns.
4907 (syms_of_window): Defsubr the new defuns.
4908 (make_window): Initialize window_parameters to nil.
4909
49102008-06-04 John Paul Wallington <jpw@pobox.com>
4911
4912 * eval.c (Fdefmacro): Doc fix.
4913
49142008-06-04 Kenichi Handa <handa@m17n.org>
4915
4916 * coding.c (detect_coding): Fix handling of coding->head_ascii.
4917 Be sure to call setup_coding_system when we find a proper coding system.
4918 (detect_coding_system): Fix handling of coding->head_ascii.
4919
49202008-06-03 Andreas Schwab <schwab@suse.de>
4921
4922 * font.c (font_prop_validate_spacing): Fix last change.
4923
49242008-06-03 Kenichi Handa <handa@m17n.org>
4925
4926 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
4927 (font_parse_fcname): Fix handling of unknown key.
4928
4929 * xfont.c (xfont_list): Try an alias.
4930
4931 * charset.c (char_charset): Return NULL if the arg charset_list is
4932 specified and C doesn't belong to any of them.
4933
49342008-06-02 Chip Coldwell <coldwell@redhat.com>
4935
4936 * font.c (font_pixel_size): Don't take cdr of an integer.
4937
49382008-06-02 Jim Meyering <meyering@redhat.com>
4939
4940 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
4941 * alloc.c (xfree): Return right away for a NULL arg.
4942 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
4943 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
4944 * mac.c (create_apple_event_from_event_ref): Likewise.
4945 (create_apple_event_from_drag_ref, cfstring_create_normalized):
4946 Likewise.
4947 * doprnt.c (doprnt1): Likewise.
4948 * frame.c (frame): Likewise.
4949 * keyboard.c (wipe_kboard): Likewise.
4950 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
4951 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
4952 * term.c (tty_default_color_capabilities, maybe_fatal)
4953 (delete_tty): Likewise.
4954 * w16select.c (string): Likewise.
4955 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
4956 * w32bdf.c (w32_free_bdf_font): Likewise.
4957 * w32fns.c (w32_unload_font): Likewise.
4958 * w32font.c (w32font_close): Likewise.
4959 * window.c (size_window): Likewise.
4960 * xselect.c (receive_incremental_selection): Likewise.
4961 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
4962 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
4963 * w32.c (stat): Likewise.
4964
4965 Remove useless if-before-free tests.
4966 * editfns.c (Fset_time_zone_rule): Likewise.
4967 * lread.c (nosuffix): Likewise.
4968 * ralloc.c (get_bloc): Likewise.
4969 * regex.c (reg_free): Likewise.
4970 * xftfont.c (xftfont_open, xftfont_close): Likewise.
4971 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
4972 * xsmfns.c (smc_save_yourself_CB): Likewise.
4973
49742008-06-02 Kenichi Handa <handa@m17n.org>
4975
4976 * font.c (font_find_for_lface): Handle float font size.
4977 (font_open_for_lface): Likewise.
4978
4979 * xfaces.c (x_supports_face_attributes_p): Check face->font before
4980 comparing the properties.
4981
49822008-06-01 Jason Rumney <jasonr@gnu.org>
4983
4984 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
4985 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
4986 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
4987 Don't add empty script list.
4988 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
4989
49902008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
4991
4992 * Makefile.in (dot, dotdot): Remove, update users.
4993 ".." has been used elsewhere in the file for a long time.
4994 (LIBXT_STATIC): Remove conditional based on unused variable.
4995
49962008-06-01 Miles Bader <miles@gnu.org>
4997
4998 * xfaces.c (Vface_remapping_alist): New variable.
4999 (syms_of_xfaces): Initialize it.
5000 (enum named_merge_point_kind): New type.
5001 (struct named_merge_point): Add `named_merge_point_kind' field.
5002 (push_named_merge_point): Make cycle detection respect different
5003 named-merge-point kinds.
5004 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
5005 Remove face-name alias resolution.
5006 (lface_from_face_name): New definition using
5007 `lface_from_face_name_no_resolve'.
5008 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
5009 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
5010 (get_lface_attributes): New definition that layers face-remapping on
5011 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
5012 (lookup_basic_face): New function.
5013 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
5014 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
5015 `get_lface_attributes'.
5016 (face_at_buffer_position): Use `lookup_basic_face' to lookup
5017 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
5018 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
5019
5020 * xdisp.c (init_iterator): Pass base_face_id through
5021 `lookup_basic_face' when we actually use it as a face-id.
5022 (handle_single_display_prop): Use `lookup_basic_face' to lookup
5023 DEFAULT_FACE_ID.
5024
5025 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
5026 lookup the initial face-id.
5027
5028 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
5029
50302008-06-01 Juanma Barranquero <lekktu@gmail.com>
5031
5032 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
5033 (Fremove_text_properties): Fix typos in docstrings.
5034
50352008-05-31 Kenichi Handa <handa@m17n.org>
5036
5037 * font.c (font_list_entities): Fix the car part of data to be
5038 stored in the cache.
5039
5040 * ftfont.c (ftfont_font_format): Don't use strcasestr.
5041
50422008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5043
5044 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
5045 Add a `test' argument so another predicate than `equal' can be used.
5046 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
5047 (map_char_table): Remove unused vars `c' and `i'.
5048 * lisp.h (Foptimize_char_table): Adjust declaration.
5049 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
5050
50512008-05-30 Kenichi Handa <handa@m17n.org>
5052
5053 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
5054 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
5055 defined.
5056
50572008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5058
5059 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5060 (Fmake_variable_frame_local): Disallow mixing buffer-local and
5061 frame-local settings for the same variable.
5062
50632008-05-30 Kenichi Handa <handa@m17n.org>
5064
5065 * fontset.c (Ffont_info): Move to font.c.
5066 (syms_of_fontset): Delete defsubr of Sfont_info.
5067
5068 * font.c (font_style_to_value, font_score): Delete casting of the
5069 args to xstcasecmp.
5070 (register_font_driver): Increment num_font_drivers only when
5071 registering the driver globally.
5072 (Ffont_info): Move from fontset.c. Handle a font object too.
5073 (syms_of_font): Defsubr Sfont_info.
5074
50752008-05-29 Kenichi Handa <handa@m17n.org>
5076
5077 * coding.h (enum define_coding_utf8_arg_index): New enum.
5078 (enum coding_attr_index): Change coding_attr_utf_16_bom to
5079 coding_attr_utf_bom.
5080 (enum utf_bom_type): Rename from utf_16_bom_type.
5081 (struct utf_16_spec): Adjust for the above change.
5082 (struct coding_system): Add utf_8_bom in `spec' union.
5083
5084 * coding.c (CODING_UTF_8_BOM): New macro.
5085 (enum coding_category): Delete coding_category_utf_8, add
5086 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
5087 coding_category_utf_8_sig.
5088 (CATEGORY_MASK_UTF_8): Delete it.
5089 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
5090 (CATEGORY_MASK_UTF_8_SIG): New macros.
5091 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
5092 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
5093 CATEGORY_MASK_UTF_8_SIG.
5094 (CATEGORY_MASK_UTF_8): New macro.
5095 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
5096 (detect_coding_utf_8): Check BOM.
5097 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
5098 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
5099 (encode_coding_utf_16): Likewise.
5100 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
5101 (detect_coding, detect_coding_system): Handle utf-8-auto.
5102 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
5103 (syms_of_coding): Fix setting up of Vcoding_category_table.
5104
51052008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
5106
5107 * process.c (Faccept_process_output): If `millisec' is non-nil,
5108 `seconds' default to 0.
5109 (wait_reading_process_output): Also return non-nil if we read output
5110 from a non-running process.
5111
51122008-05-29 Jason Rumney <jasonr@gnu.org>
5113
5114 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
5115 `raster' specified.
5116 (add_font_entity_to_list): Allow non-opentype truetype fonts back
5117 in the uniscribe backend, but disallow any font that has no
5118 unicode subrange support.
5119
51202008-05-29 Juanma Barranquero <lekktu@gmail.com>
5121
5122 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
5123 Fix typos in docstrings.
5124
51252008-05-29 Kenichi Handa <handa@m17n.org>
5126
5127 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
5128 (Fx_family_fonts): Set frame correctly.
5129
51302008-05-28 Jason Rumney <jasonr@gnu.org>
5131
5132 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
5133
51342008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5135
5136 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
5137 calling build_annotations.
5138
51392008-05-28 Juanma Barranquero <lekktu@gmail.com>
5140
5141 * coding.c (Fdecode_coding_region, Fencode_coding_region)
5142 (Fencode_coding_string):
5143 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
5144 <latin-extra-code-table>: Fix typos in docstrings.
5145 (syms_of_coding) <coding-system-alist>: Doc fix.
5146 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
5147
51482008-05-28 Kenichi Handa <handa@m17n.org>
5149
5150 * fontset.c (Ffont_info): Don't call font_close_object.
5151
5152 * font.c (font_parse_family_registry): Use Ffont_put to validate
5153 foundry and family.
5154 (font_delete_unmatched): Don't check spacing.
5155 (font_list_entities): Add spacing to the spec to list fonts.
5156
5157 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
5158 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
5159
5160 * coding.c (encode_coding_raw_text): Fix previous change.
5161 (encode_coding_object): When the dst_object is a buffer and is
5162 different from src_object, move gap to PT.
5163
51642008-05-27 Chong Yidong <cyd@stupidchicken.com>
5165
5166 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
5167
51682008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5169
5170 * coding.c (encode_coding_raw_text): Set coding->produced_char for
5171 all branches. Compute it differently.
5172
5173 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
5174
51752008-05-27 Juanma Barranquero <lekktu@gmail.com>
5176
5177 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
5178 into "else if () ... else ...".
5179
51802008-05-27 Jason Rumney <jasonr@gnu.org>
5181
5182 * w32font.c (w32font_open_internal): Determine if glyph indices
5183 are likely to work here.
5184
51852008-05-27 Chong Yidong <cyd@stupidchicken.com>
5186
5187 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
5188 draw overlap glyphs with appropriate highlighting.
5189
51902008-05-27 Kenichi Handa <handa@m17n.org>
5191
5192 * xfont.c (xfont_open): Fix calculation of font->average_width.
5193
51942008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5195
5196 * casefiddle.c (casify_object): Try to guess better whether the
5197 argument is a byte or a char.
5198
51992008-05-26 Andreas Schwab <schwab@suse.de>
5200
5201 * xselect.c (x_reply_selection_request): Properly handle format == 32.
5202 Always send multiples of format size.
5203
5204 * xterm.c (x_set_frame_alpha): Fix type mismatch.
5205
52062008-05-26 Jason Rumney <jasonr@gnu.org>
5207
5208 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
5209 (compute_metrics): Don't set failure if we just cleared the cache.
5210 (w32_weight_table): Remove unused variable.
5211 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
5212 backwards compatibility.
5213
52142008-05-25 Kenichi Handa <handa@m17n.org>
5215
5216 * w32term.c (x_draw_glyph_string):
5217 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
5218
5219 * xfaces.c: Delete unused function prototypes.
5220 (xstrlwr, font_frame): Delete them.
5221 (clear_face_cache): Delete unused variable.
5222
5223 * xftfont.c (xftfont_open): Delete unused variable.
5224 If underline_thickness is not 1, adjust underline_position.
5225
5226 * ftxfont.c (ftxfont_open): Delete unused variable.
5227
5228 * fontset.c (face_for_char): Optimize for the case of no charset
5229 property.
5230
5231 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
5232 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
5233 (otf_open, font_otf_capability, generate_otf_features)
5234 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
5235 Comment out by surrounding "#if 0" and "#endif" for the moment.
5236 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
5237 (syms_of_font): Codes for accessing above commented out.
5238
52392008-05-24 Eli Zaretskii <eliz@gnu.org>
5240
5241 * w32proc.c: Include dispextern.h.
5242
5243 * w32.c: Include dispextern.h.
5244
52452008-05-23 Juanma Barranquero <lekktu@gmail.com>
5246
5247 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
5248 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
5249 Fix typos in docstrings.
5250
52512008-05-23 Jason Rumney <jasonr@gnu.org>
5252
5253 * xsmfns.c: Remove includes that are already included by config.h.
5254
52552008-05-23 Kenichi Handa <handa@m17n.org>
5256
5257 * charset.c (Qemacs, charset_emacs): New variables.
5258 (char_charset): Fix for non-Unicode characters.
5259 (syms_of_charset): Define charset_emacs.
5260
5261 * w32term.c (x_draw_glyph_string): Be sure to update
5262 s->underline_thickness and s->underline_position. Be sure to draw
5263 underline within the current line area.
5264
5265 * xterm.c (x_draw_glyph_string): Be sure to update
5266 s->underline_thickness and s->underline_position. Be sure to draw
5267 underline within the current line area.
5268
5269 * fontset.c: Delete unused variables and add casting for char *
5270 throughout the file.
5271 (fontset_font): Try the fallback fonts of the current fontset
5272 before consulting the default fontset.
5273
5274 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
5275
5276 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
5277
52782008-05-22 Jason Rumney <jasonr@gnu.org>
5279
5280 * font.c: Don't include strings.h.
5281
5282 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
5283
5284 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
5285 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
5286 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
5287 to call xstrcasecmp.
5288
5289 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
5290
5291 * fontset.c (fs_query_fontset): Use xstrcasecmp.
5292
5293 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
5294
5295 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
5296
52972008-05-22 Kenichi Handa <handa@m17n.org>
5298
5299 * puresize.h (BASE_PURESIZE): Increase to 1220000.
5300
5301 * font.c (font_prop_validate_style): Adjust for the format
5302 change of font_style_table.
5303
5304 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
5305 two args.
5306
5307 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
5308 two args.
5309
53102008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
5311
5312 * minibuf.c (keys_of_minibuf): Delete.
5313 * lisp.h (keys_of_minibuf): Delete.
5314 * emacs.c (main): Don't call keys_of_minibuf.
5315
53162008-05-22 Kenichi Handa <handa@m17n.org>
5317
5318 * ftfont.c (ftfont_resolve_generic_family): Rename from
5319 ftfont_list_generic_family. Return a single family for each
5320 generic family.
5321 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
5322 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
5323 Call font_add_log.
5324 (ftfont_match): Call font_add_log.
5325
5326 * font.h (Ffont_xlfd_name): EXFUN adjusted.
5327 (FONT_DEBUG): Define it.
5328 (font_add_log): Extern it.
5329 (font_assert): Rename from xassert.
5330
5331 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
5332 (xfont_list_family): Call font_add_log.
5333 (xfont_match): Likewise.
5334 (memq_no_quit): Delete.
5335
5336 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
5337 call of Ffont_xlfd_name.
5338
5339 * xfaces.c (struct table_entry, slant_table, weight_table)
5340 (swidth_table): Move to font.c.
5341
5342 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
5343 xassert are changed to font_assert. Delete many unused variables.
5344 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
5345 New variables.
5346 (struct table_entry): Move from xfaces.c and modified.
5347 (weight_table, slant_table, width_table): Move from xfaces.c and
5348 contents adjusted for the change of struct table_entry.
5349 (font_style_to_value, font_style_symbolic): Adjust for the
5350 format change of font_style_table.
5351 (font_parse_family_registry): Don't overwrite existing foundry and
5352 family of font_spec.
5353 (font_score): Fix calculation of diff for sizes.
5354 (font_sort_entites): Call font_add_log.
5355 (font_delete_unmatched): Return a newly created list.
5356 (font_list_entities): Fix previous change. Call font_add_log.
5357 (font_matching_entity, font_open_entity, font_close_entity):
5358 Call font_add_log.
5359 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
5360 (Finternal_set_font_style_table): Delete.
5361 (BUILD_STYLE_TABLE): New macro.
5362 (build_style_table): New function.
5363 (Vfont_log, font_log_env_checked): New variables.
5364 (font_add_log): New function.
5365 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
5366 Declare Lisp variables "font-weight-table", "font-slant-table",
5367 "font-width-table", and "font-log". Initialize font_style_table.
5368
53692008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
5370
5371 * xterm.c (x_set_frame_alpha): Move declarations before statements.
5372
53732008-05-21 Seiji Zenitani <zenitani@mac.com>
5374 Ryo Yoshitake <ryo@shiftmode.net>
5375
5376 * frame.c (Qalpha): Add a new frame parameter `alpha'.
5377 (Vframe_alpha_lower_limit): New variable.
5378 (x_set_alpha): New function.
5379
5380 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
5381
5382 * xfns.c (x-create-frame, Qalpha):
5383 Initialize the frame parameter `alpha'.
5384 * xterm.c (OPAQUE, OPACITY): New.
5385 (x_set_frame_alpha): New function.
5386 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
5387
5388 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
5389 * w32fns.c (w32_frame_parm_handlers): Likewise.
5390
53912008-05-20 Jason Rumney <jasonr@gnu.org>
5392
5393 * w32font.c (add_font_entity_to_list): Don't add non-opentype
5394 truetype fonts to opentype list.
5395
53962008-05-20 Juanma Barranquero <lekktu@gmail.com>
5397
5398 * fontset.c (Ffontset_info): Doc fix.
5399 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
5400 <ignore-relative-composition>: Fix typos in docstrings.
5401
5402 * font.c (syms-of-font) <font-encoding-alist>:
5403 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
5404 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
5405 (Ffont_otf_alternates): Doc fixes.
5406
54072008-05-20 Kenichi Handa <handa@m17n.org>
5408
5409 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
5410 font.h through out the file.
5411 (FONT_DRIVERS): Rename from FONTOBJ.
5412 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
5413 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
5414
5415 * emacs.c (main): Call syms_of_font unconditionally.
5416
5417 * font.h (find_font_encoding): Extern it.
5418
5419 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
5420 fontset.c.
5421 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
5422 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
5423 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
5424 only when HAVE_WINDOW_SYSTEM is defined.
5425 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
5426 when HAVE_WINDOW_SYSTEM is defined.
5427
5428 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
5429 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
5430
5431 * xfaces.c: Include font.h unconditionally.
5432 (merge_face_ref, merge_face_vectors)
5433 (Finternal_set_lisp_face_attribute): Cancel the previous change.
5434
54352008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
5436
5437 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
5438 indirect_variable.
5439 * eval.c (lisp_indirect_variable): New fun.
5440 (Fuser_variable_p): Use it.
5441
54422008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5443
5444 * lisp.h (indirect_variable):
5445 * data.c (indirect_variable, let_shadows_buffer_binding_p):
5446 Use Lisp_Symbol pointers rather than Lisp_Object.
5447 Adjust callers.
5448 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
5449 To this end, change calling-convention.
5450
5451 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
5452 if some non-hidden buffers are selected by string&pred.
5453
54542008-05-19 Chong Yidong <cyd@stupidchicken.com>
5455
5456 * process.c (wait_reading_process_output): Always check status
5457 when in batch mode.
5458
54592008-05-19 Kenichi Handa <handa@m17n.org>
5460
5461 * font.c (font_list_entities): Fix handling of cache.
5462 (font_matching_entity): Likewise.
5463
5464 * ftfont.c (cs_iso8859_1): Delete.
5465 (ft_face_cache): New variable.
5466 (struct ftfont_info): New member fc_charset_idx.
5467 (ftfont_build_basic_charsets): Delete.
5468 (fc_charset_table): New variable.
5469 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
5470 . FC_CHARSET_IDX) as :font-entity property in the font entity.
5471 Callers changed.
5472 (ftfont_lookup_cache, ftfont_get_charset): New functions.
5473 (ftfont_spec_pattern): New argument fc_charset_idx.
5474 Check registry more rigidly. Change callers.
5475 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
5476 change of :font-entity property of the font.
5477
5478 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
5479 property of the font.
5480
54812008-05-18 Juanma Barranquero <lekktu@gmail.com>
5482
5483 * coding.c (Fcoding_system_p): Rename argument to match docstring.
5484 (Funencodable_char_position, Fcheck_coding_systems_region)
5485 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
5486 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
5487 (Ffind_operation_coding_system, Fset_coding_system_priority)
5488 (Fcoding_system_eol_type): Doc fixes.
5489
54902008-05-17 Glenn Morris <rgm@gnu.org>
5491
5492 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
5493
54942008-05-16 Eli Zaretskii <eliz@gnu.org>
5495
5496 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
5497 and st_gid.
5498
5499 * frame.c (Fdelete_frame): Don't call font_update_drivers if
5500 HAVE_WINDOW_SYSTEM is not defined.
5501
5502 * xfaces.c (merge_face_ref, merge_face_vectors)
5503 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
5504 HAVE_WINDOW_SYSTEM is defined.
5505 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
5506
55072008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
5508
5509 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
5510
55112008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5512
5513 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
5514
55152008-05-15 Kenichi Handa <handa@m17n.org>
5516
5517 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
5518 preference.
5519
55202008-05-15 Glenn Morris <rgm@gnu.org>
5521
5522 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
5523
55242008-05-15 Chong Yidong <cyd@stupidchicken.com>
5525
5526 * fns.c (init_fns): Don't initialize weak_hash_tables here.
5527 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
5528
5529 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
5530
55312008-05-15 Kenichi Handa <handa@m17n.org>
5532
5533 * ftfont.c (ftfont_list): Downcase family name to check generic
5534 families.
5535
5536 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
5537 font-spec for QCfont value.
5538
5539 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
5540 buffer. Check the return value of it.
5541
55422008-05-14 Jason Rumney <jasonr@gnu.org>
5543
5544 * w32term.c (w32_get_glyph_overhangs): Remove.
5545 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
5546
55472008-05-14 Kenichi Handa <handa@m17n.org>
5548
5549 * font.c (font_prop_validate): Make nil a valid value.
5550 (font_clear_cache): Check if the cached vector of entities is nil
5551 or not.
5552
55532008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5554
5555 * emacs.c (main_thread): Conditionalize on
5556 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5557 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
5558
5559 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
5560 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
5561 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5562
55632008-05-14 Kenichi Handa <handa@m17n.org>
5564
5565 * coding.c (detect_coding_iso_2022): Ignore a coding category that
5566 has no corresponding coding system.
5567
55682008-05-14 Jason Rumney <jasonr@gnu.org>
5569
5570 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
5571
5572 * w32font.h (w32font_open_internal): Update declaration.
5573
5574 * w32font.c (w32font_open_internal): Change last argument from
5575 w32font_info struct to font object. Fill in font object from
5576 font_entity. Get Outline metrics if possible. Use them to
5577 calculate underline position and thickness. Use xlfd name as name
5578 property. Don't set codepage.
5579 (w32font_open): Pass font_object to w32font_open_internal. Don't
5580 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
5581 (w32font_draw): Use s->font.
5582 (clear_cached_metrics): Don't clear non-existent blocks.
5583
5584 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
5585 font was not found.
5586 (x_draw_glyph_string): Use underline position and thickness from font.
5587
5588 * w32uniscribe.c (uniscribe_open): Pass font_object to
5589 w32font_open_internal.
5590
55912008-05-14 Kenichi Handa <handa@m17n.org>
5592
5593 These changes are to delete all legacy font-handling codes, and
5594 make Emacs use only font-backends.
5595
5596 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
5597 (frame.o, image.o, print.o): Depend on $(FONTSRC).
5598
5599 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
5600
5601 * charset.h (Vcharset_non_preferred_head)
5602 (Vcurrent_iso639_language): Extern them.
5603
5604 * charset.c (Vcharset_non_preferred_head): New variable.
5605 (Vcurrent_iso639_language): New variable.
5606 (syms_of_charset): Declare it as a Lisp variable.
5607 (char_charset): Don't check non preferred charsets. As a last
5608 resort, return charset_unicode.
5609 (Fset_charset_priority): Update Vcharset_non_preferred_head.
5610
5611 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
5612 conditionals. Don't check enable_font_backend. Delete all codes
5613 used only when USE_FONT_BACKEND is not defined.
5614
5615 * dispextern.h (struct glyph_string): Change type of `font' to
5616 `struct font *'.
5617 (struct glyph_string): New member underline_position and
5618 underline_thickness.
5619 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
5620 (struct face): Change type of `font' to `struct font *'. Remove
5621 members `font_name', `font_info_id'.
5622 (per_char_metric, encode_char): Delete externs.
5623 (calc_pixel_width_or_height): Adjust the prototype.
5624
5625 * emacs.c (enable_font_backend): Delete extern.
5626 (main): Don't set enable_font_backend. Don't check the command
5627 line argument "-disable-font-backend".
5628
5629 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
5630 (enum font_property_index): New members FONT_DPI_INDEX,
5631 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
5632 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
5633 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
5634 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
5635 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
5636 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
5637 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
5638 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
5639 (struct font_spec, struct font_entity): New structs.
5640 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
5641 (struct font): Many members from old "struct font_info" moved to
5642 here. Members font and entity deleted.
5643 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
5644 the new font-related objects.
5645 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
5646 (CHECK_FONT_GET_OBJECT): Likewise.
5647 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
5648 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
5649 (struct font_driver): New members case_sensitive anc check. Type
5650 of the member list and open changed.
5651 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
5652 (font_symbolic_width, font_find_object, font_get_spec)
5653 (font_set_lface_from_name): Delete extern.
5654 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
5655
5656 * font.c: Include <strings.h>.
5657 (enable_font_backend): Delete it.
5658 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
5659 (CHECK_VALIDATE_FONT_SPEC): Delete it.
5660 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
5661 (null_string): Delete it.
5662 (null_vector): Make it static.
5663 (font_family_alist): Delete it.
5664 (Qnormal): Extern it.
5665 (QCextra, QClanguage): Delete it.
5666 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
5667 (font_make_spec, font_make_entity, font_make_object)
5668 (font_intern_prop): Renamed from intern_downcase. Don't downcase
5669 the string. Callers changed.
5670 (font_pixel_size): Adjusted for the format change of font-related
5671 objects.
5672 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
5673 (font_style_to_value, font_style_symbolic): New function.
5674 (build_font_family_alist): Delete it.
5675 (font_registry_charsets): Use Fassoc_string instead of
5676 assq_no_quit.
5677 (font_prop_validate_symbol): Don't return null_string.
5678 (font_prop_validate_style): Adjusted for the change of
5679 style-related values in a font vector.
5680 (font_property_table): Delete entries for QClanguage and
5681 QCantialias, add entries for QCavgwidth.
5682 (get_font_prop_index): Delete the 2nd argument FROM.
5683 (font_prop_validate): Arguments changed.
5684 (font_put_extra): Adjusted for the change of font-related objects.
5685 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
5686 (font_parse_fcname, font_unparse_fcname)
5687 (font_prepare_composition): Likewise.
5688 (font_parse_family_registry): Renamed from font_merge_old_spec.
5689 (otf_open): Delete the 1st arg entity.
5690 (font_otf_capability): Adjusted for the above change.
5691 (font_score): New arg alternate_families. Adjusted for the change
5692 of font-related objects.
5693 (font_sort_entites): New arg best_only.
5694 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
5695 Delete them.
5696 (font_match_p): Check alternate families.
5697 (font_find_object): Delete it.
5698 (font_check_object): New function.
5699 (font_clear_cache): Adjusted for the change of font-related objects.
5700 (font_delete_unmatched): New arg.
5701 (font_list_entities): Call font_driver->list with a spec that
5702 doesn't specify style-related properties.
5703 (font_matching_entity): Arguments changed. Caller changed.
5704 (font_open_entity): Adjusted for the change of font-related objects.
5705 (font_close_object, font_has_char, font_encode_char)
5706 (font_get_name, font_get_spec): Likewise.
5707 (font_spec_from_name, font_clear_prop, font_update_lface):
5708 New functions.
5709 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
5710 (font_prepare_for_face, font_done_for_face, font_open_by_name)
5711 (font_at): Adjusted for the change of font-related objects.
5712 (font_range): New function.
5713 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
5714 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
5715 (Fcopy_font_spec, Fmerge_font_spec): New function.
5716 (Ffont_family_list): Renamed from list-families.
5717 (Finternal_set_font_style_table): Arguments changed.
5718 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
5719 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
5720 change of font-related objects.
5721 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
5722
5723 * fontset.h (struct font_info): Delete it. Most members go to
5724 struct font.
5725 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
5726 (enum FONT_SPEC_INDEX): Delete it.
5727 (font_info, list_fonts_func, load_font_func, query_font_func)
5728 (set_frame_fontset_func, find_ccl_program_func)
5729 (get_font_repertory_func, new_fontset_from_font_name): Delete
5730 externs.
5731 (fontset_from_font_name): Extern it.
5732 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
5733 (FONT_INFO_FROM_FACE): Deleted.
5734 (face_for_font): Adjust prototype.
5735
5736 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
5737 conditionals. Don't check enable_font_backend. Delete all codes
5738 used only when USE_FONT_BACKEND is not defined.
5739 (get_font_info_func, list_font_func, load_font_func)
5740 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
5741 (get_font_repertory_func): Delete them.
5742 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
5743 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
5744 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
5745 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
5746 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
5747 (fontset_compare_rfontdef): New function.
5748 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
5749 rfont-defs by qsort. Adjusted for the change of font-group vector.
5750 (load_font_get_repertory): Deleted.
5751 (fontset_find_font): Use new macros to ref/set elements of
5752 font-def and rfont-def.
5753 (fontset_font): Fix the timing of remembering that no font for C.
5754 (free_face_fontset): Do nothing if the face has no fontset.
5755 (face_suitable_for_char_p): Use new macros to ref/set elements of
5756 rfont-def.
5757 (face_for_char): Likewise. Call face_for_char with font_object.
5758 (fs_load_font): Delete. Delete #pragma surrounding it.
5759 (fs_query_fontset): Use strcasecmp instead of strcmp.
5760 (generate_ascii_font_name): Adjusted for the format change of
5761 font-spec.
5762 (Fset_fontset_font): Likewise. Use new macros to set elements of
5763 font-def.
5764 (Fnew_fontset): Use font_unparse_xlfd to generate
5765 FONTSET_ASCII (fontset).
5766 (new_fontset_from_font_name): Deleted.
5767 (fontset_from_font): Renamed from new_fontset_from_font. Check if
5768 a fontset is already created for the font. FIx updating of
5769 Vfontset_alias_alist.
5770 (fontset_ascii_font): Deleted.
5771 (Ffont_info): Adjusted for the format change of font-spec.
5772 (Finternal_char_font): Likewise.
5773 (Ffontset_info): Likewise.
5774 (syms_of_fontset): Don't check load_font_func.
5775
5776 * fns.c (internal_equal): Handle PREV_FONT.
5777
5778 * frame.h: Delete USE_FONT_BACKEND conditional.
5779
5780 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
5781 conditionals. Don't check enable_font_backend. Delete all codes
5782 used only when USE_FONT_BACKEND is not defined.
5783 (x_set_font): Call x_new_font, not x_new_fontset2.
5784 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
5785 already set for the frame.
5786
5787 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
5788 a font-entity by font_make_entity. Use font_intern_prop instead
5789 of intern_downcase. Use FONT_SET_STYLE to set a style-related
5790 font property. If a font is scalable, set avgwidth property to 0.
5791 Set font-entity property by font_put_extra.
5792 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
5793 (ffont_driver): Adjusted for the change of struct font_driver.
5794 (ftfont_spec_pattern): New function.
5795 (ftfont_list): Return a list, not vector.
5796 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
5797 (ftfont_list_family): Don't downcase names.
5798 (ftfont_free_entity): Deleted.
5799 (ftfont_open): Return a font-object. Adjusted for the change of
5800 struct font. Get underline_thickness and underline_position from
5801 font property. Don't update dpyinfo->smallest_font_height and
5802 dpyinfo->smallest_char_width.
5803 (ftfont_close): Don't free `struct font'.
5804 (ftfont_has_char): Adjusted for the format change of font-entity.
5805 (ftfont_encode_char, ftfont_text_extents): Likewise.
5806
5807 * ftxfont.c (ftxfont_list): Return a list, not vector.
5808 (ftxfont_open): Return a font-object. Adjusted for the change of
5809 struct font. Get underline_thickness and underline_position from
5810 font property. Don't update dpyinfo->smallest_font_height and
5811 dpyinfo->smallest_char_width.
5812 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
5813 (ftxfont_draw): Adjusted for the change of struct font.
5814
5815 * image.c (image_ascent): Don't include "charset.h". Include
5816 "character.h" and "font.h".
5817
5818 * lisp.h (enum pvec_type): New member PREV_FONT.
5819 (Fassoc_string): EXFUN it.
5820
5821 * print.c: Include font.h.
5822 (print_object): Handle font-related objects.
5823
5824 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
5825 conditionals. Don't check enable_font_backend. Delete all codes
5826 used only when USE_FONT_BACKEND is not defined.
5827 (handle_auto_composed_prop): Do nothing if it->f is not on a
5828 window system. Check how many following characters can be
5829 displayed by the same font.
5830 (calc_pixel_width_or_height): Type of the 4th arg is changed to
5831 'struct font *'.
5832 (get_char_face_and_encoding): Assign the whole encoding task to
5833 the `encode-char' method of a font driver.
5834 (fill_composite_glyph_string): Adjusted for the change of `struct
5835 face' and `struct glyph_string'.
5836 (fill_glyph_string): Likewise.
5837 (get_per_char_metric): Arguments changed.
5838 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
5839 and `struct glyph_string'.
5840 (produce_stretch_glyph, calc_line_height_property)
5841 (x_produce_glyphs): Likewise.
5842
5843 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
5844 conditionals. Don't check enable_font_backend. Delete all codes
5845 used only when USE_FONT_BACKEND is not defined. Use
5846 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
5847 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
5848 (Qp): Extern them.
5849 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
5850 Deleted.
5851 (struct font_name): Deleted.
5852 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
5853 (compare_fonts_by_sort_order): New function.
5854 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
5855 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
5856 Deleted.
5857 (Fx_family_fonts): Use font_list_entities, and sort fonts by
5858 compare_fonts_by_sort_order.
5859 (Fx_font_family_list): Call Ffont_family_list.
5860 (face_numeric_value, face_numeric_weight, face_numeric_slant)
5861 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
5862 (face_symbolic_slant, face_symbolic_swidth)
5863 (split_font_name_into_vector, build_font_name_from_vector)
5864 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
5865 (font_rescale_ratio, split_font_name, build_font_name)
5866 (free_font_names, sort_fonts, x_face_list_fonts)
5867 (face_font_available_p, sorted_font_list, cmp_font_names)
5868 (font_list_1, concat_font_list, font_list, remove_duplicates):
5869 Deleted.
5870 (Fx_list_fonts): Use Ffont_list.
5871 (LFACE_AVGWIDTH): Deleted.
5872 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
5873 by FONTP.
5874 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
5875 (set_lface_from_font_name): Delete it.
5876 (set_lface_from_font): Renamed from
5877 set_lface_from_font_and_fontset. Caller changed. Don't set
5878 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
5879 for face.
5880 (merge_face_vectors): Copy font-spec if necessary.
5881 Clear properties of the font-spec if necessary.
5882 (merge_face_ref): Clear properties of the font-spec if necessary.
5883 (Finternal_set_lisp_face_attribute): Likewise.
5884 (set_font_frame_param): Use font_load_for_lface to load a
5885 font-object, and call Fmodify_frame_parameters with it.
5886 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
5887 font name by Ffont_xlfd_name.
5888 (Finternal_lisp_face_attribute_values): Don't check QCweight,
5889 QCslant, and QCwidth.
5890 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
5891 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
5892 Compare fonts by EQ.
5893 (lookup_non_ascii_face): Deleted.
5894 (face_for_font): The 2nd argument changed.
5895 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
5896 Check atomic font properties by case insensitive.
5897 (realize_non_ascii_face): Set face->overstrike correctly.
5898 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
5899 (dump_realized_face): Get font name from
5900 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
5901
5902 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
5903 conditionals. Don't check enable_font_backend. Delete all codes
5904 used only when USE_FONT_BACKEND is not defined.
5905 (xic_create_xfontset): Original code deleted and renamed from
5906 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
5907 (x_make_gc): Don't set GCFont in GCs.
5908 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
5909 opened by "fixed".
5910 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
5911 find_ccl_program_func, query_font_func, set_frame_fontset_func,
5912 get_font_repertory_func.
5913
5914 * xfont.c: Include <stdlib.h> and "ccl.h".
5915 (struct xfont_info): New structure.
5916 (xfont_query_font): Deleted.
5917 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
5918 moved from xterm.c.
5919 (xfont_driver): Adjusted for the change of struct font_driver.
5920 (compare_font_names): New function.
5921 (xfont_list_pattern): Sort font names case insensitively. Make
5922 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
5923 (xfont_list): Return a list, not vector.
5924 (xfont_match): If the font doesn't have QCname property, generate
5925 a name from the other font properties.
5926 (xfont_open): Return a font-object. Adjusted for the change of
5927 struct font. Get underline_thickness and underline_position from
5928 font property. Don't update dpyinfo->smallest_font_height and
5929 dpyinfo->smallest_char_width.
5930 (xfont_close): Don't free struct font.
5931 (xfont_prepare_face): Adjusted for the change of struct font.
5932 (xfont_done_face): Deleted.
5933 (xfont_has_char): Adjusted for the change of struct font.
5934 (xfont_encode_char, xfont_draw): Likewise.
5935 (xfont_check): New function.
5936
5937 * xftfont.c (xftfont_list): Adjusted for the change of `list'
5938 callback function.
5939 (xftfont_match): Adjusted for the format change of font-entity.
5940 (xftfont_open): Adjusted for the format change of font-entity and
5941 font-object. Adjusted for the change of struct font. Return a
5942 font-object. Don't update dpyinfo->smallest_font_height and
5943 dpyinfo->smallest_char_width.
5944 (xftfont_close): Block input while calling XftFontClose.
5945 (xftfont_prepare_face): Don't block input while calling
5946 xftfont_get_colors. Adjusted for the change of struct font.
5947 (xftfont_shape): Return value of error case fixed.
5948
5949 * xrdb.c (x_load_resources): Don't setup a fontset resource.
5950
5951 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
5952 conditionals.
5953 (FONT_WIDTH): Return (f)->max_width.
5954 (struct x_display_info): Delete member `font'.
5955 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
5956 (x_find_ccl_program, x_get_font_repertory): Delete externs.
5957 (struct x_output): Change type of `font' to `struct font *'.
5958
5959 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
5960 conditionals. Don't check enable_font_backend. Delete all codes
5961 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
5962 (x_per_char_metric, x_encode_char): Deleted.
5963 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
5964 (x_compute_glyph_string_overhangs): Adjusted for the change of
5965 `struct face'.
5966 (x_draw_glyph_string_foreground)
5967 (x_draw_composite_glyph_string_foreground): Likewise.
5968 (x_draw_glyph_string): Likewise. Use font->underline_position and
5969 font->underline_thickness.
5970 (x_new_font): Renamed from x_new_fontset2.
5971 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
5972 (x_check_font): Call `check' method of a font driver.
5973 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
5974 (x_query_font, x_get_font_repertory): Deleted.
5975 (x_find_ccl_program): Renamed and moved to xfont.c.
5976 (x_redisplay_interface): Adjusted for the change of `struct
5977 redisplay_interface'.
5978
5979 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
5980 conditionals. Don't check enable_font_backend. Delete all codes
5981 used only when USE_FONT_BACKEND is not defined. Surround non-used
5982 code by "#ifdef OLD_FONT" and "endif".
5983 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
5984
5985 * w32font.h (struct w32font_info): New member.
5986 (FONT_COMPAT): New macro.
5987 (w32font_open_internal): Prototype adjusted.
5988
5989 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
5990 OLD_FONT" and "endif".
5991
5992 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
5993 conditionals. Don't check enable_font_backend. Delete all codes
5994 used only when USE_FONT_BACKEND is not defined.
5995 (w32font_open): Return a font-object. Make a font-object by
5996 font_make_object. Adjusted for the change of struct w32font_info.
5997 (w32font_close): Don't free struct font. Adjusted for the change
5998 of struct w32font_info.
5999 (w32font_encode_char, w32font_text_extents, w32font_draw):
6000 Adjusted for the change of struct w32font_info.
6001 (w32font_draw): Likewise.
6002 (w32font_list_internal): Return a list, not vector.
6003 (w32font_open_internal): Change the 4th arg to font-object.
6004 Adjusted for the change of struct w32font_info and font-object format.
6005 (add_font_name_to_list): Don't downcase names.
6006 (w32_enumfont_pattern_entity): Make a font-entity by
6007 font_make_entity. Adjusted for the format change of font-entity.
6008 Use FONT_SET_STYLE to set a style-related font property. If a
6009 font is scalable, set avgwidth property to 0. Set font-entity
6010 property by font_put_extra.
6011 (font_matches_spec): Adjusted for the format change of font-entity.
6012 (w32_weight_table, w32_decode_weight): New variables.
6013 (w32_encode_weight): New function.
6014 (fill_in_logfont): Adjusted for the format change of font-spec.
6015 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
6016 weight value.
6017 (w32font_driver): Adjusted for the change of struct font_driver.
6018
6019 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
6020 conditionals. Don't check enable_font_backend. Surround non-used
6021 code by "#ifdef OLD_FONT" and "endif".
6022 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
6023 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
6024
6025 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
6026 conditionals. Don't check enable_font_backend. Delete all codes
6027 used only when USE_FONT_BACKEND is not defined. Surround non-used
6028 code by "#ifdef OLD_FONT" and "endif".
6029
6030 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
6031 (uniscribe_open): Return value changed to font-object.
6032 Adjusted for the format change of font-object.
6033 (uniscribe_otf_capability): Adjusted for the change of struct font.
6034 (add_opentype_font_name_to_list): Don't downcase names.
6035 (uniscribe_font_driver): Adjusted for the change of struct
6036 font_driver.
6037
60382008-05-13 Chong Yidong <cyd@stupidchicken.com>
6039
6040 * dispnew.c (update_frame_1): Check if tty output is still valid
6041 before flushing it.
6042
60432008-05-13 Jan Djärv <jan.h.d@swipnet.se>
6044
6045 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
6046 to Gtk+ menus.
6047
60482008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
6049
6050 * dired.c (file_name_completion): Tweak the code so as to always do it
6051 in a single pass. Tighten the scope of some variables.
6052
6053 * dired.c (Qdefault_directory): New var.
6054 (file_name_completion): Use it instead of Fexpand_file_name.
6055 (syms_of_dired): Initialize it.
6056
60572008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
6058
6059 * fileio.c (double_dollars): Remove dead code.
6060
60612008-05-10 Eli Zaretskii <eliz@gnu.org>
6062
6063 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
6064 Mention w32-get-true-file-attributes in doc string.
6065
6066 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
6067
60682008-05-09 Glenn Morris <rgm@gnu.org>
6069
6070 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
6071 2008-04-23.
6072
60732008-05-09 Eli Zaretskii <eliz@gnu.org>
6074
6075 Support for reporting owner and group of each file on MS-Windows:
6076 * dired.c (stat_uname, stat_gname): New functions, with special
6077 implementation for w32.
6078 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
6079
6080 * w32.c: Rename the_passwd_* to dflt_passwd_*.
6081 (dflt_group_name): New static variable.
6082 (dflt_group): Rename from the_group.
6083 (init_user_info): Init dflt_group fields. Get user's group name
6084 from LookupAccountSid.
6085 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
6086 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
6087 New initialization states.
6088 (globals_of_w32): Initialize them to zero. Initialize the default
6089 group name to "None".
6090 (GetFileSecurity_Name): New global var, the name of the function
6091 to call for GetFileSecurity.
6092 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
6093 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
6094 (get_file_security, get_security_descriptor_owner)
6095 (get_security_descriptor_group, is_valid_sid)
6096 (get_file_security_desc, get_rid, get_name_and_id)
6097 (get_file_owner_and_group): New functions.
6098 (stat): Use get_file_security_desc and get_file_owner_and_group to
6099 report the owner and primary group of each file. Don't ignore the
6100 high 32 bits of file's size, now that st_size is 64-bit wide.
6101 Fix test when to get true file attributes.
6102 (init_user_info): Use get_rid instead of equivalent inline code.
6103 (fstat): Don't ignore the high 32 bits of file's size.
6104
61052008-05-09 Chong Yidong <cyd@stupidchicken.com>
6106
6107 * image.c (png_load): Use correct bit-depth for setting background
6108 color.
6109
61102008-05-08 Eli Zaretskii <eliz@gnu.org>
6111
6112 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
6113 epa-hook.elc.
6114
61152008-05-08 Juanma Barranquero <lekktu@gmail.com>
6116
6117 * font.c (Ffont_match_p): Don't use `iff' in docstring.
6118
61192008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
6120
6121 * macfns.c (Fx_create_frame): Make a copy of frame parameters
6122 because the original parameters are in pure storage now.
6123 (mac_window): Remove unused params. Update callers.
6124
61252008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6126
6127 * lread.c (substitute_object_recurse): Use lower-level primitives.
6128 Don't signal errors when traversing sub-char-tables.
6129 Don't loop over all the possible characters when traversing char-tables.
6130
6131 * print.c (print_preprocess): Add sub-char-tables to the print-table,
6132 just like we do in print.c.
6133
61342008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
6135
6136 * minibuf.c (Ftry_completion): Remove code left over from when we used
6137 scmp instead of Fcompare_strings.
6138
61392008-05-04 Juanma Barranquero <lekktu@gmail.com>
6140
6141 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
6142
61432008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6144
6145 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
6146 Create bitmap context in native byte order.
6147
6148 * macterm.c (XDrawLine)
6149 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
6150 context in native byte order.
6151
61522008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6153
6154 * config.in: Regenerate.
6155
6156 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
6157 New definitions for Image I/O support.
6158 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6159 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
6160 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6161 (mac_data_provider_release_data, image_load_image_io)
6162 [USE_MAC_IMAGE_IO]: New functions.
6163 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
6164 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
6165 (init_image_func_pointer) [MAC_OSX]: Remove function.
6166 (image_load_quartz2d) [MAC_OSX]: Check availability of
6167 CGImageCreateWithPNGDataProvider at compile time.
6168 Use lowercase `false' for boolean constant.
6169 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
6170 Use image_load_image_io.
6171 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
6172 Don't check MyCGImageCreateWithPNGDataProvider.
6173 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
6174 Don't call init_image_func_pointer.
6175
6176 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
6177
6178 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
6179 Make variable non-static.
6180 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6181 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6182
6183 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
6184 (RED_FROM_ULONG): Mask off higher bits.
6185 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
6186
6187 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
6188 Include AvailabilityMacros.h.
6189 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
6190 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
6191
61922008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
6193
6194 * chartab.c (Fset_char_table_range): If range is t, really set all
6195 chars to that value.
6196
61972008-05-03 Eli Zaretskii <eliz@gnu.org>
6198
6199 * dired.c (Ffile_attributes): Don't allow the device number become
6200 negative.
6201
62022008-05-02 Daiki Ueno <ueno@unixuser.org>
6203
6204 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
6205
62062008-05-02 Juri Linkov <juri@jurta.org>
6207
6208 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
6209 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
6210 DEFAULT argument as a list of default values in docstrings.
6211
62122008-05-01 Chong Yidong <cyd@stupidchicken.com>
6213
6214 * puresize.h (BASE_PURESIZE): Increase to 1210000.
6215
62162008-05-01 Martin Rudalics <rudalics@gmx.at>
6217
6218 * dispnew.c (change_frame_size_1): Preserve small windows when
6219 shrinking frames by calling set_window_height|width with third
6220 arg 2.
6221
6222 * window.h (struct window): Replace field too_small_ok by field
6223 resize_proportionally.
6224
6225 * window.c (make_window): Initialize resize_proportionally.
6226 (enlarge_window): Temporarily set resize_proportionally to make
6227 sure that shrink_windows does scale the window proportionally.
6228 (shrink_windows): When window has resize_proportionally set try
6229 to shrink it proportionally by stealing from other windows.
6230 (struct saved_window, Fset_window_configuration)
6231 (compare_window_configurations): Handle resize_proportionally.
6232 (WINDOW_TOTAL_SIZE): New macro.
6233 (window_min_size, shrink_windows, size_window): Use it.
6234 (check_min_window_sizes): Remove. Invalid values of
6235 window-min-height|width are handled by window_min_size_2 now.
6236 (size_window, Fsplit_window, enlarge_window)
6237 (adjust_window_trailing_edge, grow_mini_window): Don't call
6238 check_min_window_sizes.
6239 (window_min_size_2, window_min_size_1, window_min_size):
6240 New argument safe_p for retrieving "safe" minimum sizes.
6241 (Fdisplay_buffer, Fsplit_window, enlarge_window)
6242 (adjust_window_trailing_edge, grow_mini_window):
6243 Adjust arguments of window_min_size... functions.
6244 (shrink_windows): Argument min_size removed. New argument
6245 safe_p allows shrinking windows to their safe minimum sizes.
6246 Calculate minimum size and decide whether a window shall be
6247 deleted for each window individually.
6248 (size_window): When nodelete_p equals 2, tell shrink_windows to
6249 delete windows only if their new minimum size is no more safe.
6250 (shrink_window_lowest_first): Call window_min_size_1 to make
6251 sure to preserve modeline of bottom-most window when resizing
6252 the minibuffer.
6253 (Fset_window_configuration, Fcurrent_window_configuration)
6254 (compare_window_configurations): Do not handle
6255 window-min-height|width any more.
6256 (syms_of_window): Clarify window-min-height|width doc-strings.
6257
62582008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
6259
6260 * dired.c (file_name_completion): Fix up the encoding/decoding issue
6261 some more. Copy some of the code from Ftry_completions.
6262 Remove special case code that dates back to initial revision when the
6263 slash was only added when necessary and that can't trigger nowadays.
6264
62652008-04-27 Kenichi Handa <handa@m17n.org>
6266
6267 * font.c (font_prop_validate): Signal `error' instead of `font'.
6268
62692008-04-29 Jason Rumney <jasonr@gnu.org>
6270
6271 * w32fns.c (Fw32_battery_status): New defun.
6272 (syms_of_w32fns): Defsubr it.
6273
62742008-04-28 Andreas Schwab <schwab@suse.de>
6275
6276 * dired.c (file_name_completion): Fix another mixing of encoded
6277 and decoded names.
6278
62792008-04-28 Juanma Barranquero <lekktu@gmail.com>
6280
6281 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
6282
62832008-04-27 Juanma Barranquero <lekktu@gmail.com>
6284
6285 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
6286
62872008-04-27 Andreas Schwab <schwab@suse.de>
6288
6289 * dired.c (file_name_completion): Fix inappropriate mixing of
6290 encoded and decoded names.
6291
6292 * xterm.c (XTread_socket): Fix use of uninitialized variable.
6293
6294 * puresize.h (BASE_PURESIZE): Increase to 1200000.
6295
62962008-04-26 Eli Zaretskii <eliz@gnu.org>
6297
6298 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
6299 2008-03-31, it's not needed anymore with `struct stat' definition
6300 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
6301 for the same reasons.
6302
63032008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
6304
6305 * m/sparc.h: Additional redefinitions for GNU/Linux.
6306
63072008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6308
6309 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
6310 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
6311 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
6312 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
6313 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6314 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
6315 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6316 Likewise.
6317
6318 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
6319 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
6320 (mac_ax_number_of_characters): Add externs.
6321 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6322 [USE_MAC_TSM]: Likewise.
6323 (mac_handle_text_input_event) [MAC_OSX]:
6324 Handle kEventTextInputOffsetToPos for no active input area case.
6325 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6326 (mac_handle_document_access_event)
6327 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
6328 (install_application_handler) [MAC_OSX]: Register handlers for
6329 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6330 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6331 Register mac_handle_document_access_event.
6332
6333 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
6334 Make functions non-static.
6335
63362008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
6337
6338 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
6339 (read_file_name_completion_ignore_case, insert_default_directory)
6340 (Qdefault_directory): Move to minibuffer.el.
6341 (Fread_file_name): Call the new `read-file-name' instead.
6342
63432008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6344
6345 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
6346 Make function non-static.
6347 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
6348 Remove function.
6349 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6350 Move to mactoolbox.c.
6351 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
6352
6353 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
6354 (mac_rect_make): New macro.
6355
6356 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
6357 instead of float.
6358 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6359 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
6360 (XSetBackground) [USE_CG_DRAWING]: Likewise.
6361 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
6362 CGRectMake.
6363 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6364 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
6365 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
6366 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6367 instead of WindowRef in argument type.
6368 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
6369 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
6370 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
6371 instead of DISPLAY. All uses changed.
6372 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
6373 (x_calc_absolute_position): Simplify so as not to use
6374 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
6375
6376 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6377 instead of WindowRef in argument type.
6378 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
6379 [TARGET_API_MAC_CARBON]: Remove externs.
6380 (create_apple_event, mac_event_parameters_to_lisp)
6381 [TARGET_API_MAC_CARBON]: Add externs.
6382
6383 * mactoolbox.c (Vmac_ts_script_language_on_focus)
6384 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
6385 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
6386 is clicked.
6387 (x_activate_menubar): Remove extern for saved_menu_event_location.
6388 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6389 Move from mac.c.
6390
63912008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6392
6393 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
6394 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
6395
63962008-04-23 Jason Rumney <jasonr@gnu.org>
6397
6398 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
6399 attributes only for local files.
6400
6401 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
6402 default to Qlocal.
6403
64042008-04-22 Juri Linkov <juri@jurta.org>
6405
6406 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
6407 read-buffer-to-switch instead of using the letter "B".
6408
64092008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
6410
6411 * fileio.c (Qdefault_directory): New variable.
6412 (Fread_file_name): Use it to pass `dir' to the completion functions.
6413
64142008-04-20 Chong Yidong <cyd@stupidchicken.com>
6415
6416 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
6417
64182008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
6419
6420 * keyboard.c (Vpre_help_message): Remove.
6421 (show_help_echo): Remove default C code.
6422
6423 * dired.c (directory_files_internal, file_name_completion):
6424 Only call ENCODE_FILE if the string is indeed decoded.
6425
64262008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6427
6428 * Makefile.in (TOOLKIT_DEFINES): Remove.
6429 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
6430
64312008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6432
6433 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
6434 (mactoolbox.o): New target.
6435
6436 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
6437 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
6438
6439 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
6440 Use mac_set_frame_window_background instead of XSetWindowBackground.
6441 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
6442 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
6443 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
6444 instead of SetWindowTitleWithCFString.
6445 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
6446 Move function to mactoolbox.c.
6447 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
6448 Use mac_set_window_modified instead of SetWindowModified.
6449 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
6450 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
6451 (Fx_focus_frame): Use mac_front_non_floating_window instead of
6452 FrontNonFloatingWindow. Use mac_activate_window instead of
6453 ActivateWindow. Use mac_active_non_floating_window instead of
6454 ActiveNonFloatingWindow.
6455 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
6456 Use mac_show_hourglass and mac_hide_hourglass.
6457 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
6458 instead of GetGlobalMouse.
6459 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
6460 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
6461 Use mac_bring_window_to_front instead of BringToFront.
6462 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
6463 mactoolbox.c.
6464 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
6465 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
6466 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
6467 mactoolbox.c.
6468
6469 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
6470 (XtPointer): Move typedef from macmenu.c.
6471 (enum button_type): Move enum from macmenu.c.
6472 (widget_value): Move typedef from macmenu.c.
6473 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
6474 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6475 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6476 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6477 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6478 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6479 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6480 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
6481 (Selection): Move typedef from macselect.c.
6482 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
6483 macterm.c.
6484 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
6485 (mac_is_window_collapsed, mac_bring_window_to_front)
6486 (mac_send_window_behind, mac_hide_window, mac_show_window)
6487 (mac_collapse_window, mac_front_non_floating_window)
6488 (mac_active_non_floating_window, mac_activate_window)
6489 (mac_move_window_structure, mac_move_window, mac_size_window)
6490 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
6491
6492 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
6493 (enum mac_menu_kind): Move enum to mactoolbox.c.
6494 (min_menu_id): Move variable to mactoolbox.c.
6495 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
6496 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
6497 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
6498 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
6499 [TARGET_API_MAC_CARBON]: Likewise.
6500 (XtPointer): Move typedef to macgui.h.
6501 (enum button_type): Move enum to macgui.h.
6502 (widget_value): Move typedef to macgui.h.
6503 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6504 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6505 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6506 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6507 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6508 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6509 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
6510 (popup_activated_flag): Make variable non-static.
6511 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
6512 (add_menu_item, fill_menu, dispose_menus):
6513 Move functions to mactoolbox.c.
6514 (restore_show_help_function, menu_target_item_handler)
6515 (install_menu_target_item_handler, mac_handle_dialog_event)
6516 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
6517 [TARGET_API_MAC_CARBON]: Likewise.
6518 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
6519 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6520 (find_and_call_menu_selection, name_is_separator): Make function
6521 non-static.
6522 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
6523 to mactoolbox.c.
6524 (set_frame_menubar): Don't call install_menu_quit_handler.
6525 (menu_item_selection): New variable.
6526 (mac_menu_show): Use create_and_show_popup_menu.
6527 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
6528 selection but set variable menu_item_selection. All uses changed.
6529 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
6530 Call install_menu_quit_handler. Move to mactoolbox.c.
6531
6532 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
6533 (Selection): Move typedef to macgui.h.
6534 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
6535 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
6536 Make variables non-static.
6537 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6538 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
6539 Make functions non-static.
6540 (Vmac_service_selection) [MAC_OSX]: Likewise.
6541 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
6542 (mac_valid_selection_target_p, mac_clear_selection)
6543 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6544 (mac_put_selection_value, mac_selection_has_target_p)
6545 (mac_get_selection_value, mac_get_selection_target_list)
6546 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
6547 Move functions to mactoolbox.c.
6548 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
6549 Likewise.
6550 (copy_scrap_flavor_data, mac_handle_service_event)
6551 (install_service_handler) [MAC_OSX]: Likewise.
6552 (syms_of_macselect) <Vmac_dnd_known_types>:
6553 Use mac_dnd_default_known_types.
6554
6555 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
6556 Move to mactoolbox.c.
6557 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
6558 (Fx_selection_owner_p): Add EXFUN.
6559 (install_window_handler, remove_window_handler, XSetWindowBackground):
6560 Remove externs.
6561 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
6562 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
6563 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
6564 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
6565 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
6566 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
6567 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
6568 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
6569 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
6570 (create_and_show_popup_menu, mac_get_selection_from_symbol)
6571 (mac_valid_selection_target_p, mac_clear_selection)
6572 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6573 (mac_put_selection_value, mac_selection_has_target_p)
6574 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
6575 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
6576 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
6577 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6578 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
6579 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6580 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
6581 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6582 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6583
6584 * mactoolbox.c: New file.
6585
65862008-04-18 Jason Rumney <jasonr@gnu.org>
6587
6588 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
6589
65902008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6591
6592 * character.c (Fmultibyte_char_to_unibyte):
6593 Return latin1 chars unchanged.
6594
6595 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
6596 relocated if it points to `name'.
6597
65982008-04-17 Kenichi Handa <handa@m17n.org>
6599
6600 * data.c (Faset): Allow setting a multibyte character in an
6601 ASCII-only unibyte string.
6602
6603 * lisp.h (STRING_SET_MULTIBYTE): New macro.
6604
66052008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
6606
6607 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
6608 done in config.h.
6609
66102008-04-16 Juanma Barranquero <lekktu@gmail.com>
6611
6612 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
6613 (Fchar_direction): Add usage in the docstring.
6614
66152008-04-15 Chong Yidong <cyd@stupidchicken.com>
6616
6617 * keyboard.c (read_key_sequence): Remove always-true checks.
6618
66192008-04-14 Jason Rumney <jasonr@gnu.org>
6620
6621 * w32font.c (w32font_open_internal): Set max_bounds.descent in
6622 compatibility struct, for better underline positioning.
6623
66242008-04-13 David Hansen <david.hansen@gmx.net>
6625
6626 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
6627 string.
6628
66292008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
6630
6631 * m/hp800.h (XUINT, XSET): Remove.
6632
66332008-04-12 Juanma Barranquero <lekktu@gmail.com>
6634
6635 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
6636 previous change.
6637
66382008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
6639
6640 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
6641 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
6642
66432008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6644
6645 * keymap.h (map_keymap_canonical): Declare.
6646 * xmenu.c (single_keymap_panes): Use it.
6647
66482008-04-11 Glenn Morris <rgm@gnu.org>
6649
6650 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
6651 set the target's value to that of the alias.
6652
66532008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6654
6655 * term.c (set_tty_color_mode): Left over typo.
6656
66572008-04-10 Michael Albinus <michael.albinus@gmx.de>
6658
6659 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
6660 only after check for file name handler functions. Signal, when
6661 native functionality is not supported.
6662 (syms_of_fileio): Declare it unconditionally.
6663
66642008-04-10 Jason Rumney <jasonr@gnu.org>
6665
6666 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
6667 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
6668
6669 * w32.c (logon_network_drive): Also logon to remote drives that
6670 are mapped to drive letters.
6671
66722008-04-10 Glenn Morris <rgm@gnu.org>
6673
6674 * xdisp.c (truncate-partial-width-windows): Doc fix.
6675
66762008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
6677
6678 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
6679 Move functions to minibuffer.el.
6680 (syms_of_fileio): Don't declare them.
6681
66822008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6683
6684 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
6685 (syms_of_minibuf): Remove its initialization.
6686
6687 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
6688
66892008-04-09 Juanma Barranquero <lekktu@gmail.com>
6690
6691 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
6692
66932008-04-09 Jason Rumney <jasonr@gnu.org>
6694
6695 * makefile.w32-in (distclean): Delete makefile too.
6696 (maintainer-clean): New target.
6697
6698 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
6699
6700 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
6701 for new font backend and composite cases.
6702
67032008-04-09 Jan Djärv <jan.h.d@swipnet.se>
6704
6705 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
6706 Most of the code moved to run_timers.
6707 (do_pending_atimers): Call run_timers.
6708 (run_timers): New function.
6709
6710 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
6711 run atimers.
6712
6713 * process.c (wait_reading_process_output): The same as above.
6714
67152008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6716
6717 * minibuf.c (last_exact_completion): Remove variable.
6718 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
6719 (complete_and_exit_1, complete_and_exit_2)
6720 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
6721 (Fdisplay_completion_list, display_completion_list_1)
6722 (Fminibuffer_completion_help, Fself_insert_and_exit)
6723 (Fexit_minibuffer, Fminibuffer_message): Move functions to
6724 minibuffer.el.
6725 (syms_of_minibuf): Remove corresponding initializations.
6726
6727 * keyboard.c (Qdeactivate_mark): New var.
6728 (command_loop_1): Use it to call `deactivate-mark'.
6729 (syms_of_keyboard): Initialize it.
6730
6731 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
6732 to another frame.
6733 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
6734 Don't call set_tty_color_mode.
6735 (store_frame_param): Reset previous_frame rather than call
6736 set_tty_color_mode.
6737 * term.c (set_tty_color_mode): Rewrite.
6738 * dispextern.h (set_tty_color_mode): New type.
6739 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
6740
67412008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
6742
6743 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
6744 for generic chars, which do not exist any more in emacs-unicode.
6745
67462008-04-08 Michael Albinus <michael.albinus@gmx.de>
6747
6748 * coding.c (detect_coding_emacs_mule)
6749 (Ffind_operation_coding_system): Fix typo.
6750
67512008-04-08 Jason Rumney <jasonr@gnu.org>
6752
6753 * w32uniscribe.c (SNAME): Extract only symbol name.
6754
6755 * w32font.h (struct w32_metric_cache): New struct.
6756 (w32font_info): Use it.
6757 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
6758 (CACHE_BLOCKSIZE): New constants.
6759
6760 * w32font.c (Qja, Qko, Qzh): New symbols.
6761 (syms_of_w32font): Initialise them.
6762 (font_matches_spec): Use them to filter by language.
6763 (recompute_cached_metrics): Remove function.
6764 (compute_metrics, clear_cached_metrics): New functions.
6765 (w32font_encode_char): Use them to manage metric cache.
6766 (w32font_text_extents): Cache metrics for all glyphs on demand.
6767 Delay converting glyph indices to WORD until needed.
6768 (w32font_open_internal): Initialize metric cache to empty.
6769 (registry_to_w32_charset): Charset should always be a symbol.
6770 (fill_in_logfont, list_all_matching_fonts): Family should
6771 always be a symbol.
6772
67732008-04-06 Jason Rumney <jasonr@gnu.org>
6774
6775 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
6776 Give up if glyph indices not supported. Use uniscribe obtained
6777 ABC widths for individual metrics. Map glyph clusters back to
6778 characters using fClusterStart flag. Return number of glyphs
6779 produced, not chars processed.
6780 (uniscribe_shape): Map char at FROM to current glyph.
6781
67822008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6783
6784 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
6785 Use SetMenuItemHierarchicalMenu.
6786
67872008-04-05 Jason Rumney <jasonr@gnu.org>
6788
6789 * image.c (pbm_load): Allow color values up to 65535.
6790 Throw an error if max_color_idx is outside the supported range.
6791 Report an error when image size is invalid.
6792 Read two bytes at a time when raw images have max_color_idx above 255.
6793
67942008-04-05 Eli Zaretskii <eliz@gnu.org>
6795
6796 * w32.c (readdir): If FindFirstFile/FindNextFile return in
6797 cFileName a file name that includes `?' characters, use the 8+3
6798 alias in cAlternateFileName instead.
6799
68002008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
6801
6802 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
6803 append "CCL: Quitted" when the CCL program is quitted.
6804 (setup_ccl_program): Initialize ccl->quit_silently to zero.
6805
6806 * ccl.h (struct ccl_program): New member quit_silently.
6807
68082008-04-05 Chong Yidong <cyd@stupidchicken.com>
6809
6810 * search.c (compile_pattern_1): Treat non-nil and non-string of
6811 search-spaces-regexp as nil.
6812
6813 * minibuf.c (Fassoc_string): Tweak docstring.
6814
68152008-04-05 Eli Zaretskii <eliz@gnu.org>
6816
6817 * dired.c (Ffile_attributes): Support inode numbers wider than 32
6818 bits. Remove ugly WINDOWSNT-specific kludge introduced on
6819 2008-03-14 to force inode be positive.
6820
6821 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
6822 _S_* ones, since we now use our own sys/stat.h.
6823 (stat, fstat): Don't mangle the inode number.
6824 (init_user_info): Don't restrict UID and GID to 0-60000 range.
6825
68262008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
6827
6828 * frame.h (struct frame): Give one more bit to `visible' since we use
6829 values larger than 1 to indicate obscured frames on ttys.
6830
6831 * keymap.c (Qkeymap_canonicalize): New var.
6832 (Fmap_keymap_internal): New fun.
6833 (describe_map): Use keymap-canonicalize.
6834
6835 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
6836 (Fundo_boundary): Set them.
6837 (syms_of_undo): Initialize them.
6838 (record_point): Use them instead of last_point_position*.
6839 (last_undo_buffer): Change type.
6840
68412008-04-04 Jason Rumney <jasonr@gnu.org>
6842
6843 * w32font.c (w32font_text_extents): Use font's ascent and descent.
6844 (recompute_cached_metrics): Don't set ascent and descent per char.
6845
6846 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
6847 (uniscribe_check_otf): Add GC protection before consing.
6848 Rearrange loop for counting features.
6849
68502008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
6851
6852 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
6853 buffer with byte-size of source buffer.
6854
68552008-04-03 Chong Yidong <cyd@stupidchicken.com>
6856
6857 * callint.c (Fcall_interactively): Handle temporary region even
6858 when shift-select-mode is off.
6859
68602008-04-03 Jason Rumney <jasonr@gnu.org>
6861
6862 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
6863
68642008-04-03 Kenichi Handa <handa@m17n.org>
6865
6866 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
6867 (CATEGORY_MASK_UTF_16): Likewise.
6868 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
6869 binary file.
6870 (detect_coding): Add null-byte detection for a binary file.
6871 (detect_coding_system): Likewise.
6872
68732008-04-03 Jason Rumney <jasonr@gnu.org>
6874
6875 * w32uniscribe.c: New file.
6876
6877 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
6878
6879 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
6880
6881 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
6882 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
6883 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
6884 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
6885 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
6886 (Qphonetic): New symbols.
6887 (syms_of_w32font): Initialize them.
6888 (font_supported_scripts): Use them.
6889 (w32font_list_family): List all charsets.
6890 (w32font_text_extents, recompute_cached_metrics): Fix metric
6891 calculations.
6892 (w32_enumfont_pattern_entity): Make full_type a DWORD.
6893 Give opentype fonts their own format.
6894 (font_matches_spec): New arguments backend and logfont.
6895 Handle :otf spec for uniscribe backend.
6896 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
6897 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
6898
6899 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
6900 font backend.
6901 (globals_of_w32fns): Initialize uniscribe font backend.
6902
6903 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
6904 dependencies.
6905 (w32uniscribe.$(O)): New file to build.
6906 (FONT_OBJ): Include w32uniscribe.$(O).
6907 (LIBS): Add uniscribe libraries.
6908
6909 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
6910
69112008-04-02 Chong Yidong <cyd@stupidchicken.com>
6912
6913 * callint.c (Vshift_select_mode): New var.
6914 (Finteractive): Document new ^ spec.
6915 (Fcall_interactively): Call handle-shift-selection if the ^ spec
6916 is present.
6917
6918 * keyboard.c (Vthis_command_keys_shift_translated): New var.
6919 (command_loop_1): Avoid running the direct display versions of
6920 forward-char and backward-char if shift-selection may occur.
6921 (read_key_sequence): Set Vthis_command_keys_shift_translated if
6922 shift-translation takes place.
6923
6924 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
6925 avoid clobbering by define-minor-mode.
6926
6927 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
6928 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
6929
6930 * syntax.c (Fforward_word): Add ^ interactive spec.
6931
6932 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
6933 (Fscroll_right): Add ^ interactive spec.
6934
69352008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
6936
6937 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
6938
6939 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
6940
6941 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
6942
69432008-03-31 Juri Linkov <juri@jurta.org>
6944
6945 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
6946
69472008-03-30 Jan Djärv <jan.h.d@swipnet.se>
6948
6949 * gtkutil.c (xg_set_geometry): Fix indentation.
6950 (xg_resize_outer_widget): Remove.
6951 (x_wm_size_hint_off): Fix indentation.
6952 (xg_frame_set_char_size): Call flush_and_sync after
6953 gtk_window_resize.
6954 (x_wm_set_size_hint): Pass NULL as geometry window to
6955 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
6956 Add menu bar and tool bar height to base height.
6957 (xg_update_frame_menubar, free_frame_menubar)
6958 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
6959 (update_frame_tool_bar, free_frame_tool_bar):
6960 Change xg_resize_outer_widget to xg_frame_set_char_size.
6961
69622008-03-30 Michael Albinus <michael.albinus@gmx.de>
6963
6964 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
6965 (Fdbus_call_method): New parameter TIMEOUT.
6966 (dbus-send-signal): Optimize UNGCPRO call.
6967
69682008-03-29 Juri Linkov <juri@jurta.org>
6969
6970 * window.c (Fdisplay_buffer): Move call to
6971 Vsplit_window_preferred_function out of conditions that check
6972 if window is eligible for vertical splitting.
6973 When Vsplit_window_preferred_function is non-nil, call it and use
6974 its non-nil return value as window. Otherwise, continue doing
6975 vertical splitting using Fsplit_window with arg horflag=nil.
6976 (syms_of_window) <Vsplit_window_preferred_function>: Change the
6977 default value from `split-window' to nil.
6978
69792008-03-29 Juri Linkov <juri@jurta.org>
6980
6981 * callint.c (Fcall_interactively): Revert 2008-03-16 change
6982 for interactive code letters 'b' and 'B'.
6983
69842008-03-29 Eli Zaretskii <eliz@gnu.org>
6985
6986 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
6987 multibyte string.
6988
69892008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
6990
6991 * keyboard.c (pending_funcalls): New var.
6992 (timer_check): Run it.
6993 (syms_of_keyboard): Initialize it.
6994 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
6995 (Vdelete_terminal_functions): New vars.
6996 (syms_of_terminal): Initialize them.
6997 (Fdelete_terminal): Run delete-terminal-functions.
6998 * xdisp.c (safe_eval): Rewrite.
6999 (safe_call2): New fun.
7000 * frame.c (Qdelete_frame_functions): New var.
7001 (syms_of_frame): Initialize it.
7002 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
7003 * lisp.h (safe_call2, pending_funcalls): Declare.
7004
70052008-03-28 Andreas Schwab <schwab@suse.de>
7006
7007 * indent.c (Fmove_to_column): Move declaration before statements.
7008
70092008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
7010
7011 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
7012 (struct frame): Use bit fields for boolean vars.
7013
7014 * process.c (server_accept_connection): Simplify naming.
7015 (emacs_get_tty_pgrp): Use SDATA.
7016
7017 * coding.c (decode_coding_object): Fix last change.
7018
70192008-03-27 Jason Rumney <jasonr@gnu.org>
7020
7021 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
7022
70232008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
7024
7025 * charset.c (Fdefine_charset_internal): Change the way of
7026 registering charsets in Vcharset_order_list.
7027 (syms_of_charset): Make the charset `eight-bit' supplementary.
7028
70292008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
7030
7031 * regex.c (EXTEND_BUFFER): Change order of pointer addition
7032 operations, to avoid having the difference between pointers
7033 overflow.
7034
70352008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
7036
7037 * indent.c (check_display_width): New fun.
7038 (scan_for_column): Use it.
7039
7040 * data.c (syms_of_data): Mark most-positive-fixnum and
7041 most-negative-fixnum as constants.
7042
7043 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
7044
7045 * indent.c (scan_for_column): Extract from current_column_1.
7046 Merge with the same code from Fmove_to_column.
7047 (current_column_1, Fmove_to_column): Use it.
7048
70492008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
7050
7051 * keymap.c (map_keymap_internal): New fun.
7052 (map_keymap): Use it.
7053 (Fmap_keymap_internal): New fun.
7054 (Fmap_keymap): Remove left-out test from before make_save_value.
7055
7056 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
7057
7058 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
7059 Use XCAR/XCDR.
7060
7061 * process.h (struct Lisp_Process): Remove filter_multibyte.
7062 * process.c (QCfilter_multibyte): Remove.
7063 (setup_process_coding_systems): Don't use filter_multibyte.
7064 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
7065 (read_process_output): Don't adjust multibyteness to filter_multibyte.
7066 (Fset_process_filter_multibyte): Change the coding-system to
7067 approximate the previous behavior.
7068 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
7069 coding-system.
7070
7071 * coding.c (decode_coding_object): When not decoding into a buffer,
7072 obey the coding system's preference of (uni|multi)byte.
7073
70742008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
7075
7076 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
7077 every char is changed and has a different byte-length.
7078 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
7079 Fix int -> EMACS_INT.
7080
70812008-03-23 David Hansen <david.hansen@gmx.net>
7082
7083 * dbusbind.c (xd_read_message): Remove extra copying of message
7084 strings. Check for NULL `interface' or `member'.
7085
70862008-03-22 Eli Zaretskii <eliz@gnu.org>
7087
7088 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7089 cFileName a file name that includes `?' characters, use the 8+3
7090 alias in cAlternateFileName instead.
7091
70922008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
7093
7094 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
7095
70962008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7097
7098 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
7099 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
7100 work on current_buffer only instead (that was already the case
7101 for some of the code anyway).
7102 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
7103 (temp_set_point, temp_set_point_both): Use EMACS_INT.
7104 (SET_PT, SET_PT_BOTH): Adjust.
7105 * intervals.h (set_point, temp_set_point, set_point_both)
7106 (temp_set_point_both): Remove redundant declarations.
7107
71082008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7109
7110 * fileio.c (Finsert_file_contents):
7111 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
7112 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
7113 when buffer != current_buffer anyway.
7114
71152008-03-20 Andreas Schwab <schwab@suse.de>
7116
7117 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
7118 as default.
7119
71202008-03-19 Jason Rumney <jasonr@gnu.org>
7121
7122 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
7123 (syms_of_w32fns): Initialize them.
7124 (HOURGLASS_ID): New constant.
7125 (x_window_to_frame): Don't check hourglass_window.
7126 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
7127 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
7128 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
7129 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
7130 Only change the cursor if hourglass is not active.
7131 (Fx_create_frame): Initialize frame's current_cursor.
7132 (hourglass_atimer): Remove.
7133 (hourglass_started): New function.
7134 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
7135 (show_hourglass): Adapt to w32, changing argument to frame.
7136
7137 * w32term.h (struct w32_output): Remove hourglass_window.
7138 Add current_cursor.
7139
7140 * eval.c (call_debugger, Fsignal):
7141 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
7142 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
7143 (Fexecute_extended_command, cancel_hourglass_unwind):
7144 * minibuf.c (read_minibuf):
7145 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
7146
71472008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
7148
7149 * window.c (run_funs): New fun.
7150 (run_window_configuration_change_hook): Use it to run the buffer-local
7151 and the global part of the hook.
7152
7153 * xdisp.c (format_mode_line_unwind_data): Add window argument.
7154 (unwind_format_mode_line): Restore selected window.
7155 (x_consider_frame_title, Fformat_mode_line): Set selected window.
7156
71572008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7158
7159 * editfns.c (Fchar_equal): Check they are valid characters.
7160
7161 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
7162
71632008-03-17 Andreas Schwab <schwab@suse.de>
7164
7165 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
7166 against a charset.
7167
7168 * lisp.h (Fbuffer_list): Declare.
7169
71702008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 7171
aac0c6e3
MR
7172 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
7173 handlebox_widget is != 0.
7174
71752008-03-16 Juri Linkov <juri@jurta.org>
7176
7177 * callint.c (Fcall_interactively): For interactive code letters
7178 'b' and 'B' put the buffer list into the list of default "future"
7179 values of the minibuffer.
7180
71812008-03-16 Andreas Schwab <schwab@suse.de>
7182
7183 * keyboard.c (read_key_sequence): Fix downcasing of letters with
7184 modifiers.
7185
7186 * regex.c (re_match_2_internal): Correct matching of a charset
7187 against latin-1 characters.
7188
71892008-03-16 Kenichi Handa <handa@m17n.org>
7190
7191 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
7192 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
7193 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
7194 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
7195 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
7196 CHAR_STRING_ADVANCE.
7197 (produce_chars): Fix for the case that the source and the
7198 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
7199 instead of CHAR_STRING_ADVANCE.
7200 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
7201 STRING_CHAR_ADVANCE.
7202
72032008-03-15 Andreas Schwab <schwab@suse.de>
7204
7205 * regex.c (re_match_2_internal): Correct matching of eight bit
7206 characters in unibyte strings.
7207
72082008-03-15 Martin Rudalics <rudalics@gmx.at>
7209
7210 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
7211 at end of range when it coincides with the end of the buffer.
7212
72132008-03-14 Eli Zaretskii <eliz@gnu.org>
7214
7215 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
7216
7217 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
7218
72192008-03-14 Jason Rumney <jasonr@gnu.org>
7220
7221 * editfns.c (initial_tz): New variable.
7222 (syms_of_editfns): Initialize it.
7223 (Fset_time_zone_rule): Set it when first called.
7224 Use it when TZSTRING is nil.
7225
7226 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
7227 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
7228 (monitor_from_point_fn, get_monitor_info_fn): New globals.
7229 (globals_of_w32fns): Initialize them.
7230 (compute_tip_xy): Use them to position tooltips.
7231
72322008-03-14 Glenn Morris <rgm@gnu.org>
7233
7234 * emacs.c (main): Revert previous change.
7235 (standard_args): Revert -internal-script back to -scriptload,
7236 and remove the long-option form.
7237
72382008-03-13 Glenn Morris <rgm@gnu.org>
7239
7240 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
7241 Remove option -enable-font-backend.
7242
72432008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
7244
7245 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
7246
72472008-03-11 Jan Djärv <jan.h.d@swipnet.se>
7248
7249 * xterm.c (x_connection_closed): For GTK: If this is the last
7250 terminal just exit without closing the display.
7251
72522008-03-11 Jason Rumney <jasonr@gnu.org>
7253
7254 * w32font.c (w32font_full_name): Use floor to round.
7255
f0131492 72562008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
7257
7258 * sound.c (alsa_configure): Declare vol at beginning of block.
7259
7260 * fontset.c (Ffontset_info): Remove extra semicolon.
7261
72622008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
7263
7264 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
7265 size of resulting string.
7266
72672008-03-10 Jason Rumney <jasonr@gnu.org>
7268
7269 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
7270
72712008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7272
7273 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
7274 Don't pretend as if characters with display property haven't been
7275 consumed for string-replacing-string case.
7276
72772008-03-08 Kim F. Storm <storm@cua.dk>
7278
7279 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
7280 (get_next_display_element, next_element_from_string)
7281 (next_element_from_ellipsis, next_element_from_buffer): Use it.
7282
72832008-03-08 Andreas Schwab <schwab@suse.de>
7284
7285 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
7286
72872008-03-06 Jason Rumney <jasonr@gnu.org>
7288
7289 * w32font.c (w32_registry): Take font_type argument. Use ANSI
7290 when charset not specified. Only translate ANSI to unicode when
7291 font_type is truetype.
7292 (w32font_coverage_ok): New function.
7293 (add_font_entity_to_list): Use it to filter unsuitable fonts.
7294
72952008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
7296
7297 * lread.c (Fread_char): Resolve modifiers.
7298 (Fread_char_exclusive): Likewise.
7299
7300 * character.c (char_resolve_modifier_mask): New function.
7301 (char_string): Use char_resolve_modifier_mask.
7302 (Fchar_resolve_modifiers): New function.
7303 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
7304 function.
7305
73062008-03-04 Jason Rumney <jasonr@gnu.org>
7307
7308 * makefile.w32-in: Always include w32font.c in the build.
7309 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
7310
73112008-03-04 Andreas Schwab <schwab@suse.de>
7312
7313 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
7314 (versionclean): Likewise.
7315
73162008-03-04 Juanma Barranquero <lekktu@gmail.com>
7317
7318 * .cvsignore: Add oo.
7319
73202008-03-03 Andreas Schwab <schwab@suse.de>
7321
7322 * coding.c (decode_coding_object): Inhibit gap shrinking while
7323 decoding in place.
7324
73252008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
7326
7327 * w32term.c: Remove unused include "gnu.h".
7328 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
7329
7330 * gnu.h: Rename to ...
7331 * emacs-icon.h: ... this.
7332 * xterm.c: Use emacs-icon.h instead of gnu.h.
7333 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
7334
73352008-03-03 Juanma Barranquero <lekktu@gmail.com>
7336
7337 * w32font.c: Include math.h.
7338
73392008-03-03 Jason Rumney <jasonr@gnu.org>
7340
7341 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
7342 Compute options separately.
7343 (w32font_open_internal): Set glyph_idx before caching metrics.
7344
7345 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
7346 Define if system headers don't.
7347 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
7348 (w32font_encode_char): Don't declare here.
7349
7350 * w32font.c (Quniscribe, QCformat): New symbols.
7351 (syms_of_w32font): Define them.
7352 (w32font_has_char): Indicate uncertainty.
7353 (w32font_encode_char): Encode as glyph point. Make static.
7354 (recompute_cached_metrics): New function.
7355 (w32font_open_internal): Use it. Set font to use glyph points
7356 initially. Set format based on type of font.
7357 (w32font_text_extents, w32font_draw): Optionally use glyph points.
7358 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
7359 on it. Set format based on information available here.
7360 (add_font_entity_to_list): Identify backend based on opentype_only.
7361
73622008-03-02 Andreas Schwab <schwab@suse.de>
7363
7364 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
7365
7366 * coding.c (decode_coding_big5, produce_chars):
7367 Fix typos in last change.
7368
73692008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
7370
7371 * gnu.h: New icon.
7372
73732008-03-02 Kenichi Handa <handa@m17n.org>
7374
7375 * coding.c (decode_coding_utf_8): When eol-type of CODING is
7376 `dos', don't decode '\r' if that is the last in the source.
7377 (decode_coding_utf_16, decode_coding_emacs_mule)
7378 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7379 (decode_coding_raw_text, decode_coding_charset): Likewise.
7380 (produce_chars): Don't decode EOL here. Use EMACS_INT.
7381
73822008-03-01 Jason Rumney <jasonr@gnu.org>
7383
7384 * w32font.c (w32font_full_name): Report point size for scalable fonts.
7385
73862008-03-01 Kim F. Storm <storm@cua.dk>
7387
7388 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
7389
73902008-03-01 Jason Rumney <jasonr@gnu.org>
7391
7392 * w32font.c (w32font_full_name): New function.
7393 (w32font_open_internal): Use it.
7394
73952008-03-01 Kim F. Storm <storm@cua.dk>
7396
7397 * dispnew.c (line_draw_cost): Fix invalid glyph check.
7398
73992008-03-01 Jason Rumney <jasonr@gnu.org>
7400
7401 * font.c (font_unparse_fcname): Increase len when style is a symbol.
7402
74032008-03-01 Jan Djärv <jan.h.d@swipnet.se>
7404
7405 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
7406 xg_frame_resized when the event is for the edit widget.
7407
7408 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
7409
7410 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
7411 set_char_size.
7412 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
7413 operations on widgets here. Just set frame size if needed.
7414 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
7415 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
7416 (x_wm_set_size_hint): Set size hints on the edit widget only, not
7417 the whole frame.
7418 (xg_create_tool_bar): Move attachment of the tool bar to
7419 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
7420 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
7421
74222008-03-01 Jason Rumney <jasonr@gnu.org>
7423
7424 * w32fns.c (w32_msg_pump): Disable debug code.
7425
74262008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7427
7428 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
7429
74302008-02-29 Chong Yidong <cyd@stupidchicken.com>
7431
7432 * xdisp.c (next_overlay_string): Don't set
7433 overlay_strings_at_end_processed_p if we're currently reading from
7434 a display string.
7435
74362008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
7437
7438 * xdisp.c (get_overlay_strings_1): Fix typo.
7439
74402008-02-29 Chong Yidong <cyd@stupidchicken.com>
7441
7442 * xdisp.c (get_overlay_strings_1): Add missing argument type.
7443
74442008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
7445
7446 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
7447
7448 * xdisp.c (display_mode_element): Cancel the previous change.
7449 (decode_mode_spec): Likewise.
7450 (handle_auto_composed_prop): Don't make composition if it->string
7451 is a string.
7452
74532008-02-27 Kim F. Storm <storm@cua.dk>
7454
7455 * lisp.h (GLYPH): Change type from int to struct with separate char
7456 and face_id members.
7457 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
7458 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
7459 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
7460 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
7461 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
7462 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
7463 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
7464 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
7465 handle new Lisp glyph code encoding, either an integer or a cons.
7466
7467 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
7468 (GLYPH_ALIAS): Delete.
7469 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
7470 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
7471 (GLYPH_FROM_CHAR): Replace macro by ...
7472 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
7473
7474 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
7475 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
7476 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
7477 (GLYPH_INVALID_P): New macro.
7478 (spec_glyph_lookup_face): Update prototype.
7479
7480 * dispnew.c (line_draw_cost): Adapt to new glyph type.
7481 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
7482 new glyph code encoding.
7483 (spec_glyph_lookup_face): No return value; update passed glyph instead.
7484 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
7485
7486 * xdisp.c (get_next_display_element, next_element_from_display_vector):
7487 Adapt to new glyph type and new glyph code encoding.
7488
7489 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
7490
7491 * indent.c (current_column, current_column_1, Fmove_to_column)
7492 (compute_motion): Adapt to new glyph code encoding.
7493
7494 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
7495
74962008-02-27 Chong Yidong <cyd@stupidchicken.com>
7497
7498 * process.c (wait_reading_process_output): Check for window
7499 changes caused by timers.
7500 Suggested by Johan Bockgård.
7501
75022008-02-27 Glenn Morris <rgm@gnu.org>
7503
7504 * emacs.c (USAGE1): Add `--disable-font-backend'.
7505
75062008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
7507
7508 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
7509 is made to the buffer.
7510
75112008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
7512
7513 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
7514 (face_at_string_position):
7515 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
7516 (face_at_string_position):
7517 * xdisp.c (display_string, next_overlay_change):
7518 * buffer.h (overlays_at):
7519 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
7520 Update callers.
7521
75222008-02-26 Chong Yidong <cyd@stupidchicken.com>
7523
7524 * editfns.c (Fformat): Doc fix.
7525
75262008-02-26 Juanma Barranquero <lekktu@gmail.com>
7527
7528 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
7529 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
7530 (Ffont_otf_alternates, Fquery_font): Doc fixes.
7531
75322008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7533
7534 * buffer.c (Fbuffer_swap_text): New function.
7535 (syms_of_buffer): Defsubr it.
7536
75372008-02-25 Chong Yidong <cyd@stupidchicken.com>
7538
7539 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
7540
75412008-02-25 Jason Rumney <jasonr@gnu.org>
7542
7543 * w32font.c (w32font_draw): Draw one character at a time when padding.
7544
75452008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7546
7547 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
7548 Handle a nil arg. Use run_window_configuration_change_hook.
7549 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
7550 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
7551 Use run_window_configuration_change_hook.
7552
75532008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7554
7555 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
7556 1-pixel width.
7557
75582008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7559
7560 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
7561 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
7562 if the glyph in the font is zero pixel with.
7563
7564 * dispextern.h (struct glyph_string): New member padding_p.
7565
7566 * w32font.c (w32font_draw): Pay attention to s->padding_p.
7567
7568 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
7569
7570 * xfont.c (xfont_draw): Pay attention to s->padding_p.
7571
7572 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
7573
7574 * font.c: If the font driver doesn't have `shape' function, return Qnil.
7575
75762008-02-25 Jason Rumney <jasonr@gnu.org>
7577
7578 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
7579
75802008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
7581
7582 Allow fine-grained image-cache flushing.
7583 * dispextern.h (struct image): Add `dependencies' field.
7584 (clear_image_caches): Change arg to Lisp_Object.
7585 * image.c (make_image): Initialize `dependencies' field.
7586 (clear_image_cache): Change arg to allow fine-grained flushing.
7587 Perform the flush even if image-cache-eviction-delay is nil.
7588 (clear_image_caches): Change arg to Lisp_Object.
7589 (Fclear_image_cache): Expand meaning of the argument.
7590 (mark_image): Mark `dependencies' field.
7591 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
7592 (lface_hash): Use XHASH rather than XFASTINT.
7593 (face_at_buffer_position): Fix int -> EMACS_INT position.
7594 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
7595 (select_frame_for_redisplay): Remove code duplication.
7596 (redisplay_internal): Adapt arg to call to clear_image_caches.
7597
75982008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
7599
7600 * s/vms4-0.h:
7601 * s/vms4-2.h:
7602 * s/vms4-4.h:
7603 * s/vms5-5.h: Remove, unused.
7604
7605 * s/irix5-2.h:
7606 * s/irix6-0.h:
7607 * s/riscos5.h:
7608 * s/mach-bsd4-3.h:
7609 * m/mips4.h: Remove files for obsolete systems.
7610
7611 * Makefile.in:
7612 * filelock.c:
7613 * unexmips.c:
7614 * m/hp9000s300.h:
7615 * m/iris4d.h:
7616 * s/aix3-1.h:
7617 * s/hpux.h:
7618 * s/msdos.h:
7619 * s/usg5-0.h:
7620 * s/usg5-2-2.h:
7621 * s/usg5-2.h:
7622 * s/usg5-3.h: Remove references to obsolete variables.
7623
7624 * s/irix5-0.h: Remove, move all the contents ...
7625 * s/irix6-5.h: ... here. Simplify.
7626 * config.in: Regenerate.
7627
76282008-02-24 Jason Rumney <jasonr@gnu.org>
7629
7630 * w32term.c (x_draw_glyph_string_background): Clear the background
7631 manually when cleartype is in use.
7632 (x_draw_glyph_string_foreground): Draw text transparently when
7633 cleartype is in use.
7634
7635 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
7636 a font into it unless we have to.
7637
76382008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7639
7640 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
7641 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 7642
aac0c6e3
MR
76432008-02-18 Jason Rumney <jasonr@gnu.org>
7644
7645 * w32fns.c (Fw32_shell_execute): Encode parameters.
7646
76472008-02-09 Eli Zaretskii <eliz@gnu.org>
7648
7649 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
7650
76512008-02-05 Juanma Barranquero <lekktu@gmail.com>
7652
7653 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
7654
76552008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
7656
7657 * xterm.c (x_set_offset): Don't change the gravity if
7658 CHANGE_GRAVITY is -1.
7659
76602008-02-23 Chong Yidong <cyd@stupidchicken.com>
7661
7662 * fileio.c (auto_save_error_occurred): New var.
7663 (auto_save_error): Set it.
7664 (Fdo_auto_save): Don't overwrite the error message if an auto-save
7665 error occurred.
7666
76672008-02-23 Eli Zaretskii <eliz@gnu.org>
7668
7669 * w32.c (globals_of_w32): Add initializations for
7670 g_b_init_get_sid_sub_authority and
7671 g_b_init_get_sid_sub_authority_count.
7672
76732008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
7674
7675 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
7676 (font_parse_xlfd): Use them for sanity check.
7677 (Finternal_set_font_style_table): Make sure the table is bijective.
7678
7679 Consolidate the image_cache to the terminal struct.
7680 * termhooks.h (P_): Remove redundant def.
7681 (struct terminal): New field `image_cache'.
7682 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
7683 of FRAME_X_IMAGE_CACHE.
7684 * xterm.h (struct x_display_info): Remove image_cache field.
7685 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7686 * w32term.h (struct w32_display_info): Remove image_cache field.
7687 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7688 * macterm.h (struct mac_display_info): Remove image_cache field.
7689 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7690 * xterm.c (x_term_init):
7691 * w32term.c (w32_term_init):
7692 * macterm.c (mac_term_init): Set the image_cache in the terminal.
7693 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
7694 Remove declarations.
7695 (clear_image_caches, mark_image_cache): New declarations.
7696 * xfaces.c (clear_face_cache):
7697 * xdisp.c (redisplay_internal): Use clear_image_caches.
7698 * image.c (clear_image_cache): Don't check that a frame is on
7699 a window-system before checking if it shares the same cache.
7700 (clear_image_caches): New function.
7701 (Fclear_image_cache): Use it.
7702 (mark_image): Move from allo.c.
7703 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
7704 * alloc.c (mark_image, mark_image_cache): Move to image.c.
7705 (mark_object): Don't call mark_image_cache for frames.
7706 (mark_terminals): Call mark_image_cache.
7707
7708 * lisp.h (Fdelete_terminal): Declare.
7709
7710 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
7711 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
7712 wrong_type_argument.
7713
77142008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
7715
7716 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
7717 malayalam.el, and tamil.el. Add sinhala.el.
7718
77192008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
7720
7721 * xterm.c (x_connection_closed): Consolidate identical tests.
7722 (x_delete_terminal): Don't crash if called via x_connection_closed.
7723
77242008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
7725
7726 * xdisp.c (decode_mode_spec): New arg string.
7727 (display_mode_element): Adjust for the above change.
7728
77292008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7730
7731 * callint.c (Fcall_interactively): Use AREF.
7732
77332008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
7734
7735 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
7736
77372008-02-18 Jan Djärv <jan.h.d@swipnet.se>
7738
7739 * xfns.c (Fx_show_tip): Set string to " " if empty.
7740
77412008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
7742
7743 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
7744 with Qt.
7745
77462008-02-17 Kenichi Handa <handa@m17n.org>
7747
7748 * ftfont.c (ftfont_shape): Return Lispy number.
7749
7750 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
7751 for GCs.
7752 (Finternal_set_font_selection_order): Call font_update_sort_order
7753 only when enable_font_backend is set.
7754 (realize_x_face): Set face->font_info to that of default face only
7755 when enable_font_backend is set.
7756
7757 * xdisp.c (handle_composition_prop): Set it->c to the fist
7758 character of the composed region.
7759 (fill_composite_glyph_string): Set base_face->font_info to
7760 s->font_info. Get a face for ascii from base_face->ascii_face.
7761 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
7762 with a face already decided.
7763 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
7764 non-negative.
7765 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
7766 call font_prepare_composition unconditionally.
7767
7768 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
7769
7770 * xterm.h (struct x_display_info): New member font.
7771
7772 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
7773 (x_set_mouse_face_gc, x_new_font): Likewise.
7774 (x_term_init): Setup display_info->font.
7775 (x_delete_terminal): Free display_info->font.
7776
7777 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
7778
7779 * ftxfont.c (ftxfont_default_fid): Delete it.
7780 (ftxfont_open): Set xfont->fid to 0.
7781 (ftxfont_end_for_frame): Clear data specific to the frame and the
7782 font-driver.
7783
7784 * xftfont.c (xftfont_default_fid): Delete it.
7785 (xftfont_open): Set xfont->fid to 0.
7786
7787 * fontset.c (FONTSET_OBJLIST): New macro.
7788 (fontset_find_font): Update font-object list of the fontset.
7789 (free_realized_fontset): New function.
7790 (free_face_fontset): Call free_realized_fontset.
7791 (Ffont_info): Call font_close_object only when enable_font_backend
7792 is set.
7793
7794 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
7795 [HAVE_NTGUI]: Include w32term.h.
7796 [MAC_OS]: Include macterm.ch.
7797 (font_otf_ValueRecord): Use make_number.
7798 (font_finish_cache): Fix handling of reference count.
7799 (font_clear_cache): Update num_fonts.
7800 (font_open_entity): Update smallest_char_width and
7801 smallest_font_height of the frame.
7802 (font_close_object): Update num_fonts.
7803 (Fclear_font_cache): Fix finding the target cache data.
7804
78052008-02-16 Glenn Morris <rgm@gnu.org>
7806
7807 * fontset.c (Finternal_char_font): Fix compilation warning.
7808
78092008-02-16 Eli Zaretskii <eliz@gnu.org>
7810
7811 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
7812 instead of char arrays. Enlarge the size of array passed to
7813 get_token_information.
7814
7815 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
7816 warnings.
7817
78182008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
7819
7820 * .gdbinit: Don't set `args', it breaks gdb --args.
7821
78222008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
7823
7824 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
7825 within a narrowed buffer.
7826
78272008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
7828
7829 * coding.c (decode_coding_object, encode_coding_object):
7830 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
7831
78322008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
7833
7834 * coding.c (coding_set_destination): Use BEG_BYTE rather than
7835 hardcoding 1.
7836 (detect_coding_system):
7837 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
7838 (string_char_to_byte, string_byte_to_char, insert_from_gap):
7839 * insdel.c (insert_from_gap):
7840 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
7841 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
7842 (string_to_multibyte):
7843 * character.c (chars_in_text, multibyte_chars_in_text):
7844 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
7845
7846 * character.h (FETCH_STRING_CHAR_ADVANCE)
7847 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
7848 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
7849 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
7850
7851 * casefiddle.c (casify_region): Only call after-change and composition
7852 functions on the part of the region that was changed.
7853
7854 * keyboard.c (read_avail_input):
7855 * frame.c (Fdelete_frame): Call Fdelete_terminal.
7856
78572008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7858
7859 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
7860 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
7861
78622008-02-11 Juanma Barranquero <lekktu@gmail.com>
7863
7864 * w32menu.c (push_submenu_start, push_submenu_end)
7865 (push_left_right_boundary, push_menu_pane, push_menu_item):
7866 * keyboard.c (read_key_sequence): Don't pass args with side effects
7867 to AREF, it fails when compiling with -DENABLE_CHECKING.
7868
78692008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
7870
7871 * Makefile.in (${lispsource}international/charprop.el):
7872 Delete this target.
7873
7874 * search.c (boyer_moore): Fix incorrect synching of the trunk and
7875 emacs-unicode-2.
7876
78772008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7878
7879 * terminal.c (Fdelete_terminal): Clean up the `force' path.
7880
78812008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7882
7883 * frame.c (Qnoelisp): New symbol.
7884 (syms_of_frame): Initialize it.
7885 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
7886 harmless Elisp code, from a strong `force' from x_connection_closed.
7887 * frame.h (Qnoelisp): Declare.
7888 * xterm.c (x_connection_closed): Pass `noelisp'.
7889
7890 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
7891 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
7892 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
7893 rather than `int' for the type of `type'.
7894
78952008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
7896
7897 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
7898
7899 * Makefile.in (GNUC): Remove support for gcc-1.x.
7900
79012008-02-10 Richard Stallman <rms@gnu.org>
7902
7903 * lisp.h (ASET): Use AREF, not ASLOT.
7904
79052008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7906
7907 * lisp.h (ASET): Check bounds.
7908
79092008-02-10 Glenn Morris <rgm@gnu.org>
7910
7911 * buffer.c (mode-name): Doc fix.
7912
79132008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7914
7915 * Makefile.in:
7916 * emacs.c:
7917 * gmalloc.c:
7918 * keyboard.c:
7919 * lisp.h:
7920 * m/ibm370aix.h:
7921 * process.c:
7922 * regex.c:
7923 * s/hpux.h:
7924 * sysdep.c:
7925 * sysselect.h:
7926 * systty.h:
7927 * unexec.c:
7928 * w32term.c:
7929 * xsmfns.c:
7930 * xterm.c: Remove code that deals with obsolete variables.
7931
7932 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
7933
7934 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
7935 nothing else needs it anymore.
7936
79372008-02-09 Eli Zaretskii <eliz@gnu.org>
7938
7939 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
7940 instead of unibyte_char_to_multibyte.
7941
79422008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7943
7944 * s/gnu-linux.h: Remove commented out code.
7945
7946 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
7947
7948 * Makefile.in: Update what RMS says about using autoconf.
7949 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
7950 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
7951 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
7952 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
7953
79542008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
7955
7956 * keymap.c (Fkey_description): Move side effect outside of macro call.
7957
7958 * xfaces.c (Finternal_make_lisp_face):
7959 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
7960
7961 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
7962 (syms_of_fontset): Use ASET.
7963
7964 * fns.c (concat): Move side effect outside of macro call.
7965 (hash_clear): Use ASET.
7966
79672008-02-08 Richard Stallman <rms@gnu.org>
7968
7969 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
7970 If FORCE, and frame has a surrogate minibuffer for another frame,
7971 delete the other frame first.
7972
79732008-02-07 Timo Savola <timo.savola@iki.fi>
7974
7975 * xterm.c (x_detect_focus_change): Handle embed client message.
7976 (handle_one_xevent): Ditto.
7977 (handle_one_xevent): If embedded and we get a button press/release,
7978 request focus.
7979 (xembed_set_info, xembed_send_message): New functions.
7980 (x_make_frame_visible): Call xembed_set_info if embedded.
7981 (x_make_frame_invisible): Call xembed_set_info if embedded.
7982 (x_term_init): Initialize Xatom_XEMBED.
7983 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
7984 (x_iconify_frame): Ditto.
7985
7986 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
7987 (enum xembed_info, enum xembed_message, enum xembed_focus)
7988 (enum xembed_modifier, enum xembed_accelerator): New.
7989 (xembed_set_info, xembed_send_message): Declare.
7990 (FRAME_X_EMBEDDED_P): New.
7991
7992 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
7993 gtk_plug_new.
7994
7995 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
7996 window ID of a frame.
7997 (x_window): Reparent frame if embedded.
7998 (Fx_create_frame): Don't set border width if embedded.
7999
8000 * emacs.c (USAGE3): Add --parent-id.
8001 (standard_args): Ditto.
8002
80032008-02-07 Jan Djärv <jan.h.d@swipnet.se>
8004
8005 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
8006
80072008-02-07 Jim Meyering <meyering@redhat.com>
8008
8009 Use "do...while (0)", not "if (1)...else" in macro definitions.
8010 The latter provokes a warning from gcc about the empty else, when
8011 followed by ";". Also, without that trailing semicolon, it would
8012 silently swallow up any following statement.
8013 * syntax.h (SETUP_SYNTAX_TABLE)
8014 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
8015 * buffer.h (DECODE_POSITION): Likewise.
8016 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
8017 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
8018 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
8019 (FETCH_CHAR_ADVANCE): Likewise.
8020 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
8021
80222008-02-07 Jim Meyering <meyering@redhat.com>
8023
8024 * lread.c [lint]: Don't include <sys/inode.h>.
8025
80262008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
8027
8028 * xselect.c (x_handle_dnd_message):
8029 * xmenu.c (digest_single_submenu, xmenu_show):
8030 * xdisp.c (with_echo_area_buffer_unwind_data)
8031 (format_mode_line_unwind_data, unwind_format_mode_line)
8032 (display_menu_bar):
8033 * eval.c (Ffetch_bytecode):
8034 * doc.c (store_function_docstring):
8035 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
8036 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
8037 * buffer.c (add_overlay_mod_hooklist): Use ASET.
8038
80392008-02-07 Kenichi Handa <handa@m17n.org>
8040
8041 * ftxfont.c (ftxfont_open): Don't set
8042 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
8043
8044 * ftfont.c (ftfont_open): Fix previous change.
8045
80462008-02-06 Jason Rumney <jasonr@gnu.org>
8047
8048 * w32font.c (w32font_text_extents): Fill in lbearing metric.
8049 Use cached metrics for ASCII characters.
8050 (w32font_open_internal): Don't set font's owning_frame.
8051 Cache metrics for ASCII characters.
8052
8053 * w32font.h (struct w32font_info): Add ascii_metrics.
8054 Remove owning_frame.
8055
80562008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
8057
8058 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
8059 to negative value.
8060
8061 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
8062
8063 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
8064
8065 * charset.c (syms_of_charset): Set QCtest and Qeq.
8066
80672008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
8068
8069 * process.c (Fstart_process):
8070 * callproc.c (Fcall_process): Handle the case where
8071 Funhandled_file_name_directory returns nil.
8072
8073 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
8074 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
8075 * font.c (check_gstring): Use them and AREF to access the vector before
8076 we know it's really a gstring.
8077 (Ffont_shape_text): Fix typo.
8078 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
8079
8080 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
8081 Declare.
8082
8083 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
8084
80852008-02-05 Jason Rumney <jasonr@gnu.org>
8086
8087 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
8088 Set smallest_font_height and smallest_char_width in display info.
8089
80902008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
8091
8092 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
8093
80942008-02-05 Miles Bader <miles@gnu.org>
8095
8096 * xfaces.c (get_lface_attributes, merge_named_face)
8097 (lookup_named_face, lookup_derived_face, realize_named_face):
8098 Revert 2008-02-01 change by cyd@stupidchicken.com.
8099
81002008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
8101
8102 * fontset.c (Ffontset_info): Handle the case of inhibitting the
8103 fallback fonts.
8104 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
8105
81062008-02-04 Jason Rumney <jasonr@gnu.org>
8107
8108 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
8109 set full_name.
8110 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
8111
81122008-02-03 Jason Rumney <jasonr@gnu.org>
8113
8114 * makefile.w32-in (OBJ1): Include font.o here.
8115 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
8116
81172008-02-02 Jason Rumney <jasonr@gnu.org>
8118
8119 * makefile.w32-in (temacs): Bump EMHEAP to 21.
8120
81212008-02-01 Jason Rumney <jasonr@gnu.org>
8122
8123 * s/cygwin.h: Define VIRT_ADDR_VARIES.
8124
8125 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
8126
81272008-02-01 Andreas Schwab <schwab@suse.de>
8128
8129 * Makefile.in (shortlisp, lisp): Update for rename of
8130 ../lisp/language/myanmar.el.
8131
81322008-02-01 Chong Yidong <cyd@stupidchicken.com>
8133
8134 * xfaces.c (get_lface_attributes): Delete function.
8135 (merge_named_face, lookup_named_face, lookup_derived_face)
8136 (realize_named_face): Call lface_from_face_name directly, and use
8137 the fact that merge_face_vectors does not alter its FROM argument.
8138
81392008-02-01 Jason Rumney <jasonr@gnu.org>
8140
8141 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
8142 input in the default locale. Handle non-Unicode multibyte input.
8143
81442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8145
8146 * fontset.c (reorder_font_vector): Exclude nil elements from the
8147 font group. Don't try multiple fonts.
8148 (fontset_font): Adjust for the above change.
8149 (Finternal_char_font): Return nil if the found font doesn't
8150 contain the character ch.
8151
8152 * Makefile.in (lisp, shortlisp): Add cham.el.
8153
81542008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8155
8156 * font.h (FONTP): Make it return 1 also for a font-object.
8157
8158 * .gdbinit (xfontset): New function.
8159
8160 * font.c (font_find_for_lface): Check if the character C is
8161 supported or not only for the first font.
8162
8163 * fontset.c (reorder_font_vector): Fix typo.
8164 (fontset_find_font): Don't add a font-spec specifying a script.
8165 Use 0 (not Qt) for the indication of empty font-group. Change the
8166 format of RFONT-DEF. Return Qt if no font in the font-group
8167 support the character.
8168 (fontset_font): Adjust for the above change. If no font was
8169 found the character, remember that.
8170 (face_for_char): Adjust for the change of RFONT-DEF.
8171 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
8172 no font for the target.
8173 (Finternal_char_font): Adjust for the change of RFONT-DEF.
8174
81752008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8176
8177 * font.c (font_load_for_face): Handle the case that the font in
8178 face->lface is a string.
8179
81802008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8181
8182 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
8183
81842008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8185
8186 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
8187 Fix previous change. If the frame is not on a window system,
8188 signal an error.
8189
81902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8191
8192 * coding.c (decode_coding_object, encode_coding_object): Adjust
8193 marker positions after conversion.
8194
8195 * lisp.h (struct Lisp_Marker): New member need_adjustment.
8196
81972008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8198
8199 * font.c (font_find_for_lface): Fix the handling of the return
8200 value of font_has_char.
8201 (Ffont_shape_text): Fix previous change.
8202
8203 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
8204 (fontset_ref_and_range): Delete it.
8205 (fontset_find_font): Call char_table_ref_and_range instead of
8206 FONTSET_REF_AND_RANGE.
8207 (make_fontset): Don't setup font groups of Latin here.
8208 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
8209 (new_fontset_from_font): Make the specified font the default for
8210 all Latin characters.
8211
82122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8213
8214 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
8215 is on a window system before accessing the fontset of the frame.
8216
82172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8218
8219 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
8220
8221 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
8222 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
8223
8224 * font.c (Ffont_shape_text): If the font driver doesn't have a
8225 shaper function, make zero-width glyphs to have at least one-pixel
8226 width. Fix setting of `to' field of glyphs.
8227
82282008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8229
8230 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
8231 glyphs.
8232
8233 * font.h (struct font_driver): Improve docstring of member `shape'.
8234
82352008-02-01 Kenichi Handa <handa@m17n.org>
8236
8237 * composite.c (syms_of_composite): Fix docstring of
8238 auto-composition-function.
8239
8240 * font.h (LGLYPH_SIZE): New macro.
8241
8242 * font.c (Ffont_fill_gstring): Stop filling when a character not
8243 supported by the font is found.
8244 (Ffont_shape_text): When a shape callback function returns nil,
8245 try at most two more times with larger gstring.
8246 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
8247
8248 * xdisp.c (handle_auto_composed_prop): Change the argument to
8249 auto-composition-function.
8250
8251 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
8252 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
8253 Lispy glyph and store it in the lgstring.
8254
8255 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
8256
8257 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
8258
82592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8260
8261 * font.c (Ffont_shape_text): Avoid unnecessary composition.
8262
8263 * fontset.c (Vfont_encoding_charset_alist): New variable.
8264 (syms_of_fontset): DEFVAR it.
8265 (reorder_font_vector, fontset_find_font): Optimize for the case of
8266 no need of reordering.
8267 (face_for_char): Map the charset property by
8268 Vfont_encoding_charset_alist.
8269
82702008-02-01 Jason Rumney <jasonr@gnu.org>
8271
8272 * w32font.c (logfonts_match): Don't check adstyle here.
8273 (font_matches_spec): Check here against physical font instead.
8274 (add_font_entity_to_list): Avoid some substitutions.
8275
8276 * font.c (font_parse_fcname): Default weight and slant to normal.
8277 (font_score): Prefer normal fonts if weight or slant unspecified.
8278 (font_score) [WINDOWSNT]: Scale weight difference down to closer
8279 match freetype scores.
8280
82812008-02-01 Jason Rumney <jasonr@gnu.org>
8282
8283 * w32font.c (w32font_text_extents): Don't use the frame stored in the
8284 font, as it may have been deleted.
8285 (w32_enumfont_pattern_entity): Map generic family to adstyle using
8286 most common hyphenless variation.
8287 (logfonts_match): Check generic family.
8288 (font_matches_spec): Don't check generic family here.
8289 (fill_in_logfont): Set generic family based on adstyle.
8290
8291 * w32font.h (w32font_get_cache): Update declaration.
8292
82932008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8294
8295 * ftfont.c (ftfont_get_cache): Adjust the argument type.
8296
8297 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
8298 If none of the new drivers are available, call font_update_drivers
8299 with the old drivers.
8300
8301 * w32font.c (w32font_get_cache): Adjust the argument type.
8302
8303 * xfont.c (xfont_get_cache): Adjust the argument type.
8304
8305 * font.h (struct font_driver): Change argument type of get_cache.
8306
8307 * xftfont.c (xftfont_start_for_frame): Delete prototype.
8308
8309 * font.c (Ffont_get): Fix arguments to Fassoc.
8310 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
8311 (font_clear_cache): New function.
8312 (font_list_entities, font_matching_entity): Use font_get_cache.
8313 (font_update_drivers): Call font_clear_cache when finishing a driver.
8314
8315 * fontset.c (fontset_find_font): Fix previous change.
8316
83172008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8318
8319 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
8320 dpyinfo->font_table.
8321 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
8322 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
8323
8324 * font.c (font_at): Handle the case that the arg C is negative.
8325 Handle the unibyte case.
8326 (Ffont_at): Call font_at with the arg C -1.
8327
8328 * xdisp.c (handle_auto_composed_prop): Don't get a character at
8329 the position here, and call font_at with the arg C -1.
8330 Don't check the range of the existing composition at the point.
8331
83322008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8333
8334 * fontset.c (fontset_add): New args charset_id and family.
8335 Change caller.
8336 (load_font_get_repertory, fontset_find_font): Assume that
8337 font_spec is always a font-spec object.
8338 (Fset_fontset_font): Always store a font-spec object in a fontset.
8339
8340 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
8341 instead of get_property_and_range.
8342
83432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8344
8345 * xftfont.c (struct xftfont_info): Delete the member ft_face.
8346 (xftfont_open): Don't keep locking face.
8347 (xftfont_close): Don't unlock face.
8348 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
8349
8350 * fontset.c (fontset_find_font): Don't prefer a font of
8351 supplementary charset.
8352
83532008-02-01 Kenichi Handa <handa@m17n.org>
8354
8355 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
8356 script, langsys_tag to langsys, new member script.
8357 (OTF_TAG_STR): Terminate by '\0'.
8358 (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the
8359 listing to the script specified in that property. Fix arg to
8360 OTF_check_features.
8361
83622008-02-01 Jason Rumney <jasonr@gnu.org>
8363
8364 * w32font.h: New file.
8365
8366 * w32font.c: Include it.
8367 (struct w32font_info): Add owning_frame field. Move to w32font.h.
8368 (w32font_open): Set owning_frame.
8369 (w32font_text_extents): Use owning_frame.
8370 (struct font_callback_data): Add opentype_only field.
8371 (add_font_entity_to_list): Use it to filter fonts.
8372 Don't check against full name.
8373 (w32font_list_internal): New function.
8374 (w32font_list): Use it.
8375 (w32font_match_internal): New function.
8376 (w32font_match): Use it.
8377 (w32font_open_internal): New function.
8378 (w32font_open): Use it.
8379 (w32font_get_cache, w32font_close, w32font_has_char)
8380 (w32font_encode_char, w32font_text_extents, w32font_draw):
8381 Make non-static.
8382
8383 * makefile.w32-in (w32font.o): Depend on w32font.h.
8384
83852008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8386
8387 * charset.c (Fdefine_charset_internal): Record a supplementary
8388 charset at the tail of Vcharset_order_list.
8389
8390 * font.c (Ffont_shape_text): Fix the return value.
8391
8392 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
8393
8394 * xdisp.c (handle_auto_composed_prop): Fix previous change.
8395
83962008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8397
8398 * ftfont.c (struct OpenTypeSpec): New struct.
8399 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
8400 (ftfont_get_open_type_spec): New function.
8401 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
8402
8403 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
8404
84052008-02-01 Jason Rumney <jasonr@gnu.org>
8406
8407 * w32font.c (add_font_entity_to_list): Compare only the beginning
8408 of full name.
8409
84102008-02-01 Kenichi Handa <handa@m17n.org>
8411
8412 * xdisp.c (handle_auto_composed_prop): Simplify the code.
8413 Never return HANDLED_RECOMPUTE_PROPS.
8414
84152008-02-01 Kenichi Handa <handa@m17n.org>
8416
8417 * font.c (font_gstring_produce): Delete it.
8418
8419 * composite.h (COMPOSITION_METHOD):
8420 Handle COMPOSITION_WITH_GLYPH_STRING.
8421
84222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8423
8424 * xfont.c (Qx): Delete.
8425 (syms_of_xfont): Don't initialize Qx.
8426
8427 * composite.h (enum composition_method):
8428 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
8429
84302008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8431
8432 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
8433 (choose_face_font): Accept new form of font-spec.
8434
8435 * frame.h (font_driver_list): Declare it unconditionally.
8436 (struct frame): Define members font_driver_list and font_data_list
8437 unconditionally.
8438
8439 * fontset.c: Include "font.h" unconditionally.
8440 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
8441 (Fset_fontset_font): Accept a font-spec object.
8442
8443 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
8444 PIXEL_SIZE part a wild card.
8445
8446 * dispextern.h (struct glyph_string): Define members clip and
8447 num_clips unconditionally.
8448 (struct face): Define members font_info and extra unconditionally.
8449
8450 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
8451 ftfont_info only when HAVE_LIBOTF is defined.
8452
84532008-02-01 Andreas Schwab <schwab@suse.de>
8454
8455 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
8456 and end.
8457
84582008-02-01 Jason Rumney <jasonr@gnu.org>
8459
8460 * w32font.c (w32font_driver): Add new fields.
8461
84622008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8463
8464 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
8465 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
8466 (LIBES): Add @M17N_FLT_CFLAGS@.
8467
8468 * composite.c (compose_text): Don't treat the new style
8469 composition specially.
8470
8471 * emacs.c (main): Call syms_of_font unconditionally.
8472
8473 * font.h (FONT_ENTITY_NOT_LOADABLE)
8474 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
8475 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
8476 (struct font_driver): New member shape.
8477 (font_registry_charsets): Extern it.
8478 (font_find_for_lface, font_prepare_composition): Adjust prototype.
8479 (font_otf_capability, font_drive_otf): Delete their externs.
8480
8481 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
8482 (font_charset_alist, font_registry_charsets): Move from xfont.c
8483 and rename.
8484 (font_prop_validate_otf): New function.
8485 (font_property_table): Register it for QCotf.
8486 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
8487 (font_drive_otf): Delete.
8488 (font_prepare_composition): New arg F. Adjust for the change of
8489 lispy gstring.
8490 (font_find_for_lface): New arg C.
8491 (font_load_for_face): Adjust for the change of font_find_for_lface.
8492 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
8493 lispy gstring.
8494 (Ffont_shape_text): New function.
8495 (Fopen_font): If the font size is not given, use 12-pixel.
8496 (Ffont_at): New arg STRING.
8497 (syms_of_font): Initalize font_charset_alist.
8498 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
8499 conditionally.
8500
8501 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
8502 fonts of the same font-spec. Change the format of RFONT-DEF.
8503 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
8504 Adjust for the change of RFONT-DEF.
8505 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
8506
8507 * ftfont.h: New file.
8508
8509 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
8510 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8511 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8512 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
8513 font_otf_capability and font_drive_otf, set ftfont_shape.
8514 (ftfont_list): Adjust for the change of :otf property value.
8515 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
8516 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
8517 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
8518 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8519 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
8520 (otf_gstring, gstring, m17n_flt_initialized): New variables.
8521
8522 * w32term.c (x_draw_composite_glyph_string_foreground):
8523 Adjust for the change of lispy gstring.
8524
8525 * xdisp.c (handle_composition_prop): Adjust for the change of
8526 lispy gstring. Call a function for auto-composition with the
8527 third arg it->window.
8528 (fill_composite_glyph_string): Adjust for the change of lispy string.
8529 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
8530
8531 * xfaces.c (set_font_frame_param): Adjust for the change of
8532 font_find_for_lface.
8533
8534 * xfont.c (x_font_charset_alist): Move to font.c and rename.
8535 (xfont_registry_charsets): Likewise. Change caller.
8536 (syms_of_xfont): Don't handle x_font_charset_alist.
8537
8538 * xftfont.c: Include "ftfont.h".
8539 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8540 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8541 (xftfont_close) [HAVE_LIBOTF]: Close otf.
8542 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8543 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
8544 Set xftfont_driver.shape to xftfont_shape.
8545
8546 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8547 the change of lispy gstring.
8548
85492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8550
8551 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
8552
85532008-02-01 Jason Rumney <jasonr@gnu.org>
8554
8555 * w32font.c (w32font_draw): Fill background manually.
8556
85572008-02-01 Jason Rumney <jasonr@gnu.org>
8558
8559 * font.c (Qfontp): Remove unused symbol.
8560 (QCantialias): New symbol.
8561 (syms_of_font): Define it.
8562 (font_property_table): Set a validator for QCantialias.
8563
8564 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
8565 Define if not already.
8566 (QCfamily): Share with xfaces.c.
8567 (Qstandard, Qsubpixel, Qnatural): New symbols.
8568 (syms_of_w32font): Define them. Don't define QCfamily here.
8569 (w32_antialias_type, lispy_antialias_type): New functions.
8570 (w32_enumfont_pattern_entity): New arg requested_font.
8571 Set antialias parameter if non-default was requested.
8572 (fill_in_logfont): Fill in lfQuality if :antialias specified.
8573
85742008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8575
8576 * lread.c (read1): Undo the previous change.
8577
85782008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
8579
8580 * frame.c (Fdelete_frame): Call font_update_drivers only when
8581 USE_FONT_BACKEND is defined.
8582
85832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8584
8585 * font.h (struct font_bitmap): New member bits_per_pixel.
8586 (struct font_driver): New members start_for_frame and end_for_frame.
8587 (struct font_data_list): New struct.
8588 (font_put_frame_data, font_get_frame_data): Extern them.
8589
8590 * frame.h (struct frame): New member font_data_list.
8591
8592 * font.c (font_update_drivers): Call driver->start_for_frame and
8593 driver->end_for_frame at proper timings.
8594 (font_put_frame_data, font_get_frame_data): New functions.
8595 (Ffont_spec): Add usage in the docstring.
8596
8597 * frame.c (make_frame): Initialize f->font_data_list to NULL.
8598 (Fdelete_frame): Call font_update_drivers.
8599
8600 * xftfont.c (struct xftface_info): Delete the member xft_draw.
8601 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
8602 (xftfont_get_xft_draw): New function.
8603 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
8604 (xftfont_end_for_frame): New function.
8605 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
8606
8607 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
8608 Change argument. Cache GCs in the per-frame data.
8609 (struct ftxfont_frame_data): New struct.
8610 (ftxfont_draw_bitmap): New arg gc_fore and flush.
8611 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
8612 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
8613 (ftxfont_end_for_frame): New function.
8614 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
8615
8616 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
8617
86182008-02-01 Kenichi Handa <handa@m17n.org>
8619
8620 * xselect.c (Vselection_coding_system)
8621 (Vnext_selection_coding_system): Delete them.
8622 (syms_of_xselect): Don't declare selection-coding-system and
8623 next-selection-coding-system. They are declared in select.el.
8624
86252008-02-01 Jason Rumney <jasonr@gnu.org>
8626
8627 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
8628
8629 * w32fns.c: Include imm.h.
8630 (get_composition_string_fn, get_ime_context_fn): New optional
8631 system functions.
8632 (globals_of_w32fns): Load them from imm32.dll.
8633 (ignore_ime_char): New flag.
8634 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
8635 WM_IME_ENDCOMPOSITION messages.
8636
8637 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
8638 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
8639
86402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8641
8642 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
8643 (READCHAR_REPORT_MULTIBYTE): New macro.
8644 (readchar): New 2nd arg MULTIBYTE.
8645 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
8646 Make symbol's name multibyte according to the multibyteness of the
8647 source.
8648
86492008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8650
8651 * xfaces.c (face_for_overlay_string): Call lookup_face with
8652 correct arguments (fix of synching with the trunk).
8653
86542008-02-01 Kenichi Handa <handa@m17n.org>
8655
8656 * font.c (font_prop_validate_symbol, font_prop_validate_style)
8657 (font_prop_validate_non_neg, font_prop_validate_spacing):
8658 Delete argument prop_index.
8659 (font_property_table): Change arguments to validater. Change Callers.
8660 (font_lispy_object): Delete.
8661 (font_at): Use font_find_object instead fo font_lispy_object.
8662
86632008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8664
8665 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
8666 and file names.
8667
86682008-02-01 Jason Rumney <jasonr@gnu.org>
8669
8670 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
8671 (font_matches_spec): Remove debug output.
8672 (add_font_entity_to_list): Avoid using substituted fonts.
8673
86742008-02-01 Jason Rumney <jasonr@gnu.org>
8675
8676 * doc.c (Fsnarf_documentation):
8677 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
8678
86792008-02-01 Miles Bader <miles@gnu.org>
8680
8681 * dispextern.h (struct glyph_row): Only define "clip" field if
8682 HAVE_WINDOW_SYSTEM is defined.
8683
86842008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8685
8686 Fix up multi-tty merge.
8687
8688 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
8689 and indentation.
8690
8691 * xfaces.c (free_realized_face, clear_face_gcs):
8692 Include font_done_for_face in the input_blocked section, just in case.
8693
8694 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
8695 (get_char_face_and_encoding): Undo last change and remove the *other*
8696 duplicate definition (i.e. keep the one that's better scoped and that
8697 includes code for the font-backend).
8698
8699 * terminal.c (create_terminal): Default keyboard_coding to
8700 `no-conversion' and terminal_coding to `undecided'.
8701
8702 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
8703
8704 * fontset.c (free_realized_fontsets): Check that the table entry does
8705 contain a fontset before trying to compare it to `base'.
8706
8707 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
8708 syms_of_charset, and syms_of_coding earlier because init_window_once
8709 now needs Vcoding_system_hash_table to be setup.
8710
8711 * coding.h (default_buffer_file_coding): Remove.
8712
8713 * coding.c (default_buffer_file_coding): Remove.
8714 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
8715 than ->symbol, and use the terminal-local coding system.
8716 (syms_of_coding): Don't setup the coding-systems that are not
8717 terminal-local.
8718 (Fdefine_coding_system_internal): Use XCAR/XCDR.
8719
8720 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
8721 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
8722
8723 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
8724 in chartab.c and were re-added here by mistake.
8725 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
8726
8727 * doc.c (Fsnarf_documentation):
8728 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
8729 src to etc.
8730
8731 * ChangeLog.10: Add mistakenly removed entry.
8732
87332008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
8734
8735 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
8736
87372008-02-01 Miles Bader <miles@gnu.org>
8738
8739 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
8740 Add extra args to FACE_FOR_CHAR.
8741
87422008-02-01 Kenichi Handa <handa@m17n.org>
8743
8744 * keymap.c (where_is_internal_1): If key is a cons, store the copy
8745 in sequence.
8746
8747 * chartab.c (map_sub_char_table, map_char_table): If the range
8748 contains just one character, call the function with that character
8749 even if the depth is not 3.
8750
87512008-02-01 Jason Rumney <jasonr@gnu.org>
8752
8753 * w32font.c (w32font_text_extents): Calculate metrics for the
8754 whole string.
8755
87562008-02-01 Jason Rumney <jasonr@gnu.org>
8757
8758 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
8759
87602008-02-01 Jason Rumney <jasonr@gnu.org>
8761
8762 * w32term.c (x_set_glyph_string_clipping): Use
8763 get_glyph_string_clip_rects.
8764 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8765 Adjust for the change of struct glyph_string.
8766
8767 * w32font.c (w32font_draw): Do clipping here.
8768
87692008-02-01 Kenichi Handa <handa@m17n.org>
8770
8771 * xftfont.c (xftfont_draw): Adjust for the change of struct
8772 glyph_string.
8773
8774 * xterm.c (x_set_glyph_string_clipping): Use
8775 get_glyph_string_clip_rects.
8776 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8777 Adjust for the change of struct glyph_string.
8778
8779 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
8780 the resulting clip(s}.
8781 (expose_overlaps): Add arg r. Change callers. Set it to
8782 row->clip temporarily.
8783 (expose_window): Redraw rows overlapping the exposed area.
8784
8785 * dispextern.h (struct glyph_row): New member clip.
8786 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
8787 clip_height, new member clip, and num_clips.
8788
87892008-02-01 Kenichi Handa <handa@m17n.org>
8790
8791 * data.c (Fchar_or_string_p): Fix docstring.
8792
87932008-02-01 Kenichi Handa <handa@m17n.org>
8794
8795 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
8796 create a temporary XftDraw object.
8797
87982008-02-01 Kenichi Handa <handa@m17n.org>
8799
8800 * font.c (Ffontp): Fix docstring.
8801
8802 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
8803 strong evidence of ISO-2022.
8804
88052008-02-01 Kenichi Handa <handa@m17n.org>
8806
8807 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
8808 SYNTAX_ENTRY_FOLLOW_PARENT.
8809
88102008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8811
8812 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
8813 its type.
8814 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
8815 Update to the new type of weak_hash_tables and next_weak.
8816
8817 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
8818 a plain C pointer to Lisp_Hash_Table.
8819
8820 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
8821 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
8822 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
8823 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
8824 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
8825 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
8826 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
8827 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
8828 (GC_EQ): Remove since they've been identical to their non-GC_
8829 alter-egos ever since the markbit was eradicated.
8830
8831 * alloc.c:
8832 * buffer.c:
8833 * buffer.h:
8834 * data.c:
8835 * fileio.c:
8836 * filelock.c:
8837 * fns.c:
8838 * frame.h:
8839 * lisp.h:
8840 * macterm.c:
8841 * print.c:
8842 * process.c:
8843 * w32fns.c:
8844 * w32menu.c:
8845 * w32term.c:
8846 * xfns.c:
8847 * xmenu.c:
8848 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
8849
88502008-02-01 Kenichi Handa <handa@m17n.org>
8851
8852 * chartab.c (map_sub_char_table): Make it work for the top-level
8853 char-table. Fix handling of parent char-table.
8854 (map_char_table): Adjust for the above change.
8855
88562008-02-01 Jason Rumney <jasonr@gnu.org>
8857
8858 * w32font.c (Qgdi): Rename from Qw32.
8859
88602008-02-01 Jason Rumney <jasonr@gnu.org>
8861
8862 * w32bdf.c (get_quoted_string): Make function static.
8863
88642008-02-01 Kenichi Handa <handa@m17n.org>
8865
8866 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
8867 bigger ascent and descent than those of the font, use them as
8868 font's ascent and descent.
8869
88702008-02-01 Kenichi Handa <handa@m17n.org>
8871
8872 * Makefile.in (${lispsource}international/charprop.el): Move this
8873 target within "#ifdef HAVE_UNIDATA" and "#endif".
8874
88752008-02-01 Kenichi Handa <handa@m17n.org>
8876
8877 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
8878 (shortlisp): Add ../lisp/language/tai-viet.el.
8879
88802008-02-01 Ulrich Mueller <ulm@gentoo.org>
8881
8882 * Makefile.in (${lispsource}international/charprop.el): Depend on
8883 temacs${EXEEXT}.
8884
88852008-02-01 Jason Rumney <jasonr@gnu.org>
8886
8887 * w32font.c (w32font_close): Delete the GDI font object.
8888
8889 * w32menu.c: Include character.h.
8890
8891 * w32proc.c: Likewise.
8892
8893 * w32select.c: Likewise.
8894
8895 * makefile.w32-in (w32proc.o): Depend on character.h.
8896
88972008-02-01 Jason Rumney <jasonr@gnu.org>
8898
8899 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
8900
8901 * w32menu.c (syms_of_w32menu): Likewise.
8902
8903 * w32proc.c (syms_of_ntproc): Likewise.
8904
8905 * w32select.c (syms_of_w32select): Likewise.
8906
8907 * w32term.c (syms_of_w32term): Likewise.
8908
89092008-02-01 Jason Rumney <jasonr@gnu.org>
8910
8911 * w32font.c (w32font_draw): Delete brush after using it.
8912
89132008-02-01 Jason Rumney <jasonr@gnu.org>
8914
8915 * w32font.c (w32font_open): Don't set font_idx.
8916 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
8917 to font settings.
8918 (w32font_draw): Fill background explicitly.
8919
89202008-02-01 Jason Rumney <jasonr@gnu.org>
8921
8922 * w32term.c (w32_initialize): Don't call w32font_initialize.
8923
8924 * w32font.c (w32font_info): Remove subranges.
8925 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
8926 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
8927 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
8928 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
8929 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
8930 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
8931 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
8932 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
8933 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
8934 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
8935 New symbols.
8936 (font_callback_data): New struct.
8937 (w32font_list, w32font_match): Use it.
8938 (w32font_open): Don't populate subranges.
8939 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
8940 (w32font_encode_char): Always return unicode code-point as-is.
8941 (w32font_text_extents): Supply a transformation matrix to
8942 GetGlyphOutline. Never look up by glyph index. Avoid looping
8943 twice. Use unicode version of GetTexExtentPoint32 instead of
8944 glyph index version.
8945 (set_fonts_frame): Remove.
8946 (w32_enumfont_pattern_entity): Add frame parameter, use it to
8947 set frame parameter. Use backward compatible fake foundries.
8948 Save generic family in extra slot under QCfamily. Make width slot
8949 constant. Save QCspacing value. Save list of scripts instead of
8950 binary subranges.
8951 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
8952 (add_font_entity_to_list): Use font_callback_data struct. Filter
8953 unwanted fonts.
8954 (add_one_font_entity_to_list): Use font_callback_data struct.
8955 (w32_registry): Default to iso10646_1.
8956 (fill_in_logfont): Use dpi from extra slot. Don't bother with
8957 string font registries. Don't fill in font name if it is a generic
8958 family name, fill family instead. Use spacing, family and script
8959 extra info to fill pitch, family and charset fields.
8960 (list_all_matching_fonts): Use font_callback_data struct.
8961 (unicode_range_for_char): Remove.
8962 (font_supported_scripts): New function.
8963 (w32font_initialize): Remove.
8964 (syms_of_w32font): Update which symbols are defined.
8965
89662008-02-01 Jason Rumney <jasonr@gnu.org>
8967
8968 * font.c (font_pixel_size): Reverse assq_no_quit args.
8969
8970 * w32term.h (FONT_WIDTH): Report max width, not average.
8971 (FONT_MAX_WIDTH): Remove.
8972 (FONT_AVG_WIDTH): New macro.
8973
8974 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
8975 redefinition of FONT_WIDTH.
8976
8977 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
8978 (w32_cache_char_metrics): Use FONT_WIDTH.
8979
8980 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
8981
89822008-02-01 Jason Rumney <jasonr@gnu.org>
8983
8984 * w32font.c (w32font_open): Make lfHeight negative.
8985
8986 * w32fns.c (x_default_font_parameter): Use new style font name.
8987 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
8988
89892008-02-01 Jason Rumney <jasonr@gnu.org>
8990
8991 * w32font.c (QCsubranges): New symbol.
8992 (w32font_open, w32font_has_char): Get subranges from subproperty
8993 of extra.
8994 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
8995 (syms_of_w32font): Define :subranges symbol.
8996
8997 * font.c (font_put_extra): Expose externally.
8998
8999 * font.h (font_put_extra): Move declaration from font.c.
9000
9001 * font.c (Ffont_get): Use font driver to determine otf capability.
9002 (adjust_anchor): Check if driver defines anchor_point before using.
9003
9004 * w32font.c (w32font_open): Handle size, height and pixel_size better.
9005 (w32font_draw): Use options.
9006 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
9007 Fix detection of truetype fonts.
9008 (registry_to_w32_charset): Handle charsets other than iso8859-1
9009 expressed as lisp symbols.
9010 (w32_registry): Express charset as lisp symbol.
9011 (fill_in_logfont): Reverse pixel and point height logic.
9012 Don't set width here. Set quality to default.
9013
9014 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
9015 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
9016
9017 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9018 Remove redundant loop and allocation.
9019
9020 * makefile.w32-in (font.o, w32font.o): New objects.
9021 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
9022 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
9023
9024 * xdisp.c (fill_composite_glyph_string): Make the first arg to
9025 STORE_XCHARB a valid l-value.
9026
9027 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
9028 calculations for non-Truetype fonts.
9029 (x_draw_glyph_string): Sync with xterm.c.
9030 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
9031 Remove redundant code.
9032 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
9033
9034 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
9035 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
9036
9037 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
9038 (x_to_w32_charset, w32_to_x_charset): Expose externally.
9039
9040 * w32font.c: New file for w32 font backend.
9041
90422008-02-01 Kenichi Handa <handa@m17n.org>
9043
9044 * term.c: Don't include "buffer.h" twice.
9045
90462008-02-01 Kenichi Handa <handa@m17n.org>
9047
9048 * character.c (Funibyte_string): New function.
9049 (syms_of_character): Defsubr it.
9050
90512008-02-01 Jason Rumney <jasonr@gnu.org>
9052
9053 * w32term.c [USE_FONT_BACKEND]:
9054 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
9055 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
9056 (x_draw_glyph_string, x_draw_glyph_string_foreground)
9057 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
9058 (x_free_frame_resources): Sync with xterm.c.
9059
90602008-02-01 Andreas Schwab <schwab@suse.de>
9061
9062 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
9063 char-table size.
9064
90652008-02-01 Kenichi Handa <handa@m17n.org>
9066
9067 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
9068
90692008-02-01 Kenichi Handa <handa@m17n.org>
9070
9071 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
9072 font_otf_gpos, add font_drive_otf.
9073
9074 * fontset.c (fontset_find_font): Pay attention to font size
9075 specified for a font.
9076 (reorder_font_vector): Check contents of font_def.
9077
9078 * font.c (struct otf_list): Delete it.
9079 (otf_list): Make it a lisp variable.
9080 (otf_open): Use lispy otf_list.
9081 (generate_otf_features): Rename from parse_gsub_gpos_spec.
9082 (check_otf_features): New function.
9083 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9084 New functions.
9085 (font_drive_otf): New function merging font_otf_gsub and
9086 font_otf_gpos.
9087 (font_open_for_lface): New arg spec. Change argument order.
9088 (font_load_for_face): Adjust for the change of font_open_for_lface.
9089 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
9090 Ffont_otf_gpos.
9091 (syms_of_font): Staticpro otf_list. Delete defsubr of
9092 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
9093
9094 * xfaces.c (set_font_frame_param): Adjust for the change of
9095 font_open_for_lface.
9096
9097 * font.h (font_open_for_lface): Adjust prototype.
9098 (struct font_driver): Delete members otf_gsub and otf_gpos, add
9099 member otf_drive.
9100 (font_otf_gsub, font_otf_gpos): Delete externs.
9101 (font_drive_otf): Extern it.
9102
91032008-02-01 Kenichi Handa <handa@m17n.org>
9104
9105 * font.c (font_at): If the window W is not on a window system,
9106 return Qnil.
9107
9108 * coding.c (produce_chars, encode_coding): Don't call
9109 insert_from_gap if no characters to produce.
9110
91112008-02-01 Kenichi Handa <handa@m17n.org>
9112
9113 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
9114 Fclear_face_cache.
9115
9116 * xfaces.c (face_for_font): Check also face->font==font->font.font.
9117
91182008-02-01 Miles Bader <miles@gnu.org>
9119
9120 * emacs.c (main): Change default value of `enable_font_backend' to 1.
9121 Parse "--disable-font-backend" option.
9122 (standard_args): Add "--disable-font-backend" option.
9123
91242008-02-01 Kenichi Handa <handa@m17n.org>
9125
9126 * fontset.c (fontset_find_font): New function.
9127 (fontset_font): Use fontset_find_font.
9128 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
9129 Register the specified font for all Latin characters.
9130 (new_fontset_from_font): Register the specified font for all Latin
9131 characters.
9132 (dump_fontset): For a realized fontset, include the base fontset
9133 name in the returned vector.
9134
91352008-02-01 Kenichi Handa <handa@m17n.org>
9136
9137 * character.h (CHAR_STRING): Cast C to unsigned on calling
9138 char_string.
9139
9140 * character.c (char_string): Type of arg C changed to unsigned.
9141 Signal an error if C is an invalid character code.
9142
9143 * editfns.c (general_insert_function, Fchar_to_string):
9144 Use CHARACTERP, not INTEGERP.
9145
91462008-02-01 Kenichi Handa <handa@m17n.org>
9147
9148 * character.h (MIN_MULTIBYTE_LEADING_CODE)
9149 (MAX_MULTIBYTE_LEADING_CODE): New macros.
9150
9151 * regex.c (analyse_first): Fix for multibyte characters in "case
9152 charset:" and "case categoryspec:".
9153
91542008-02-01 Andreas Schwab <schwab@suse.de>
9155
9156 * Makefile.in (LIBES): Move standard libraries to the end.
9157
91582008-02-01 Kenichi Handa <handa@m17n.org>
9159
9160 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
9161 nonzero, don't shrink the buffer nextb.
9162
9163 * buffer.h (struct buffer_text): New member inhibit_shrinking.
9164
9165 * coding.c (coding_alloc_by_making_gap): New arg offset.
9166 (alloc_destination): Call coding_alloc_by_making_gap with the arg
9167 offset.
9168 (decode_coding_iso_2022): Update coding->safe_charsets.
9169 (decode_coding_gap): Temporarily set
9170 current_buffer->text->inhibit_shrinking to 1.
9171
91722008-02-01 Kenichi Handa <handa@m17n.org>
9173
9174 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
9175 indexing into elements of s->cmp and s->char2b.
9176
91772008-02-01 Juanma Barranquero <lekktu@gmail.com>
9178
9179 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
9180
91812008-02-01 Kenichi Handa <handa@m17n.org>
9182
9183 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
9184 target_multibyte instead of multibyte.
9185 (re_match_2_internal): Call bcmp_translate with target_multibyte.
9186 (bcmp_translate): Change the argument name from multibyte to
9187 target_multibyte.
9188
91892008-02-01 Kenichi Handa <handa@m17n.org>
9190
9191 These changes are to compile a regexp into a pattern that can be
9192 used both for multibyte and unibyte targets.
9193
9194 * Makefile.in (search.o): Depend on charset.h.
9195
9196 * character.c (multibyte_char_to_unibyte_safe): New function.
9197
9198 * search.c: Include "charset.h".
9199 (compile_pattern_1): Delete argument multibyte. Don't set
9200 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
9201 (compile_pattern): Don't compare cp->buf.target_multibyte.
9202 Compare cp->buf.charset_unibyte.
9203 (compile_pattern): Set cp->buf.target_multibyte.
9204
9205 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
9206
9207 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
9208
9209 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
9210 multibyte. Change callers.
9211 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
9212 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
9213 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
9214 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
9215 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
9216 (regex_compile): Make the compiled pattern usable both for
9217 multibyte and unibyte targets.
9218 (analyse_first): Make the fastmap usable both for multibyte and
9219 unibyte targets.
9220 (TRANSLATE_VIA_MULTIBYTE): Delete.
9221 (re_match_2_internal): Pay attention to the case that the
9222 multibyteness of bufp and target may be different.
9223
92242008-02-01 Kenichi Handa <handa@m17n.org>
9225
9226 * xdisp.c (x_produce_glyphs): When a font is not found, make the
9227 empty box occupy at least one column width.
9228
92292008-02-01 Miles Bader <miles@gnu.org>
9230
9231 * Makefile.in: Remove redundant HAVE_XFT clause.
9232
92332008-02-01 Kenichi Handa <handa@m17n.org>
9234
9235 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
9236
92372008-02-01 Kenichi Handa <handa@m17n.org>
9238
9239 * fontset.c (Finternal_char_font): Fix for the case of POSITION
9240 being nil.
9241
92422008-02-01 Kenichi Handa <handa@m17n.org>
9243
9244 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
9245
92462008-02-01 Kenichi Handa <handa@m17n.org>
9247
9248 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
9249
92502008-02-01 Kenichi Handa <handa@m17n.org>
9251
9252 * search.c (simple_search): Fix previous change.
9253
92542008-02-01 Kenichi Handa <handa@m17n.org>
9255
9256 * xftfont.c (ftfont_font_format): Extern declaration.
9257
9258 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
9259
9260 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
9261 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
9262
9263 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
9264 (ftfont_font_format): Fix previous change.
9265
9266 * font.h (Ffont_xlfd_name): EXFUN it.
9267
9268 * font.c (font_parse_xlfd): Fix the array size of `f'.
9269 (register_font_driver): Use EQ to compare driver->type.
9270
9271 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
9272 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
9273 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
9274
92752008-02-01 Kenichi Handa <handa@m17n.org>
9276
9277 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
9278 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
9279
92802008-02-01 Kenichi Handa <handa@m17n.org>
9281
9282 * xfont.c (xfont_open): Set font->format.
9283
9284 * xftfont.c (xftfont_open): Set font->format.
9285
9286 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
9287 (ftfont_list): Include FC_FONTFORMAT in FcObject.
9288 (ftfont_open): Set font->format.
9289 (ftfont_font_format): New function.
9290
9291 * font.h (struct font): New member format.
9292
9293 * font.c (Qopentype): New variable.
9294 (syms_of_font): Defsym it.
9295 (Fquery_font): Change the format of the last element of the return
9296 value.
9297
92982008-02-01 Kenichi Handa <handa@m17n.org>
9299
9300 * xfns.c (xic_create_xfontset): Try the default fontset name as a
9301 last resort.
9302
93032008-02-01 Kenichi Handa <handa@m17n.org>
9304
9305 * coding.c (detect_coding_charset): Fix detection of multi-byte
9306 charset.
9307
93082008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
9309
9310 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
9311
93122008-02-01 Kenichi Handa <handa@m17n.org>
9313
9314 * xdisp.c (get_next_display_element): Set it->face_id for the
9315 first component of a composition.
9316 (x_produce_glyphs): Check if the font is changed or not for composition.
9317
93182008-02-01 Kenichi Handa <handa@m17n.org>
9319
9320 * fontset.c (Qlatin): New variable.
9321 (syms_of_fontset): Define it as a lisp symbol.
9322 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
9323
93242008-02-01 Kenichi Handa <handa@m17n.org>
9325
9326 * font.c (font_unparse_fcname): Pay attention to the case that
9327 some of font property is a null string.
9328
93292008-02-01 Kenichi Handa <handa@m17n.org>
9330
9331 * term.c: Include "composite.h".
9332 (encode_terminal_code): Output all components of composition.
9333 Check the size of encode_terminal_src.
9334 (produce_glyphs): For composition, call produce_composite_glyph.
9335 (append_composite_glyph, produce_composite_glyph): New functions.
9336
9337 * xdisp.c (x_produce_glyphs): In handling composition, if a font
9338 is not found, get font_info from the current ascii face.
9339
93402008-02-01 Kenichi Handa <handa@m17n.org>
9341
9342 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
9343 buffer-file-name to Qnil before calling insert_from_buffer.
9344
9345 * font.c (font_unparse_fcname): Pay attention to the case that
9346 foundry is a null string.
9347
93482008-02-01 Kenichi Handa <handa@m17n.org>
9349
9350 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
9351
9352 * font.c (Qunicode_sip): New variable.
9353 (syms_of_font): Declare it as a Lisp symbol.
9354
9355 * font.h (Qunicode_sip): Extern it.
9356
93572008-02-01 Kenichi Handa <handa@m17n.org>
9358
9359 * composite.c (get_composition_id): Pay attention to TAB component.
9360
9361 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
9362 TAB. Adjust for the change of s->char2b which always points to
9363 the first element of allocated memory.
9364
9365 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
9366
9367 * xdisp.c (handle_composition_prop): Set it->c to the first
9368 non-TAB component.
9369 (fill_composite_glyph_string): Change argument.
9370 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
9371 (x_produce_glyphs): Fix handling of left/right padding.
9372
93732008-02-01 Kenichi Handa <handa@m17n.org>
9374
9375 * coding.c (detect_coding_system): Fix for handling off
9376 inhibit_iso_escape_detection. Fix for the case that no coding
9377 system is defined for a specific coding category.
9378
93792008-02-01 Kenichi Handa <handa@m17n.org>
9380
9381 * font.c (font_matching_entity): Delete unused local var.
9382
9383 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
9384 opening a font.
9385
9386 * fileio.c (Finsert_file_contents): On recovering a file, assume
9387 Unix-like eol.
9388 (choose_write_coding_system): On auto-saving a file, force
9389 Unix-like eol.
9390
9391 * coding.c (setup_coding_system): Fix setting of
9392 coding->common_flags based on eol_type.
9393 (coding_inherit_eol_type): If PARENT is not nil, be sure to
9394 inherit from it.
9395
93962008-02-01 Kenichi Handa <handa@m17n.org>
9397
9398 * alloc.c (NSTATICS): Increas to 0x600.
9399
94002008-02-01 Kenichi Handa <handa@m17n.org>
9401
9402 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
9403 (ftfont_list): Don't check :name property.
9404 (ftfont_match): New function.
9405 (ftfont_pattern_entity): If the pattern doesn't contain
9406 FC_SPACING, don't assume FC_MONO.
9407
9408 * font.h (struct font_driver): New member `match'.
9409 (font_update_drivers): Adjust prototype.
9410
9411 * font.c (font_parse_fcname, font_parse_name): Don't change :name
9412 property of FONT.
9413 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
9414 them unconditionally.
9415 (font_matching_entity): New function.
9416 (font_open_by_name): Try font_matching_entity if exact match is
9417 not found.
9418 (font_update_drivers): Delete the arg FONT. Return a list of
9419 actually used backends. Don't free faces, font caches here.
9420 Don't store data in frame parameters. Don't call x_set_font.
9421 (Ffont_spec): Store :name property as is.
9422 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
9423 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
9424 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
9425 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
9426 Call font->driver->otf_gsub instead of font_otf_gsub.
9427
9428 * frame.c (x_set_font_backend): Do more works that were done in
9429 font_update_drivers before.
9430
9431 * xfont.c (xfont_match): New function.
9432 (xfont_driver): Set xfont_driver.match to xfont_match.
9433 (xfont_draw): Set font in GC if necessary.
9434
9435 * ftxfont.c (ftxfont_match): New function.
9436 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
9437
9438 * xftfont.c (xftfont_match): New function.
9439 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
9440
94412008-02-01 Kenichi Handa <handa@m17n.org>
9442
9443 * font.h (struct font): New member scalable.
9444 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
9445 (font_otf_gsub): Adjust prototype.
9446
9447 * font.c (font_otf_capability): Fix handling of the default langsys.
9448 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
9449 Check the contents of SPEC.
9450 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
9451 (check_gstring): New function.
9452 (REPLACEMENT_CHARACTER): New macro.
9453 (font_otf_gsub): New arg alternate_subst. Be sure to set all
9454 glyph codes of GSTRING.
9455 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
9456 (font_prepare_composition): Set cmp->glyph_len.
9457 (font_open_entity): Set font->scalable.
9458 (Ffont_get): Handle :otf property.
9459 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
9460 functions.
9461 (Fquery_font): Use font->font.full_name.
9462 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
9463 Sfont_otf_alternates.
9464
9465 * ftfont.c (ftfont_open): Set font->font.full_name and
9466 font->font.name properly. Fix calculation of font->font.height
9467 and font->min_width.
9468
9469 * ftxfont.c (ftxfont_create_gcs): New function.
9470 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
9471 (ftxfont_draw_backgrond): Fix filling region.
9472 (ftxfont_default_fid): New function.
9473 (ftxfont_open): Set xfont->fid to the return value of
9474 ftxfont_default_fid.
9475 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
9476 (ftxfont_done_face): Free only GCs that are created by
9477 ftxfont_create_gcs.
9478 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
9479
9480 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
9481 Clip to src->width, etc (not src->clip_XXX).
9482
9483 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
9484 FontBackend frame parameter.
9485
94862008-02-01 Kenichi Handa <handa@m17n.org>
9487
9488 * font.h (struct font_driver_list): New member `on'.
9489 (Fclear_font_cache): EXFUN it.
9490 (font_update_drivers): Extern it.
9491
9492 * font.c (font_unparse_fcname): Fix typo (swidth->width).
9493 (font_list_entities): Check driver_list->on.
9494 (register_font_driver): Initalize `on' member to 0.
9495 (font_update_drivers): New function.
9496 (Fclear_font_cache): Check driver_list->on.
9497
9498 * frame.h (Qfont_backend): Extern it.
9499 (x_set_font_backend): Extern it.
9500
9501 * frame.c (Qfont_backend): New variable.
9502 (frame_parms): New element for font-backend.
9503 (x_set_font_backend): New function.
9504
9505 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
9506 FontBackend frame parameter.
9507 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
9508 x_set_font_backend.
9509
9510 * xfont.c (xfont_list): Don't try listing by :name property if the
9511 name is not for XLFD.
9512
95132008-02-01 Kenichi Handa <handa@m17n.org>
9514
9515 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
9516 (LGLYPH_SET_TO): New macros.
9517 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
9518 element of G is vector or not.
9519 (font_at): Extern it.
9520
9521 * font.c: Include window.h.
9522 (font_lispy_object): New function.
9523 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
9524 end of valid glyph.
9525 (font_close_object): Fix getting (struct font *).
9526 (font_at): New function.
9527 (Ffont_get): If FONT is a font-object, get entity from it.
9528 (Ffont_make_gstring): Initialize elements of glyphs with nil.
9529 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
9530 range check.
9531 (Ffont_at): New function.
9532 (syms_of_font): Defsubr Sfont_at.
9533
9534 * xdisp.c (it_props): Move the entry for Qauto_composed to just
9535 before the entry for Qcomposition.
9536 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
9537 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
9538 the font in gstring.
9539 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
9540 LGLYPH_FORM (g) to detect the end of valid glyph.
9541 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
9542 we are composing with gstring.
9543
9544 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
9545 Check if adjustment is vector or not.
9546
9547 * Makefile.in (font.o): Make it depends on window.h.
9548
95492008-02-01 Kenichi Handa <handa@m17n.org>
9550
9551 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
9552 adjustment is vector or not.
9553
95542008-02-01 Miles Bader <miles@gnu.org>
9555
9556 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
9557
95582008-02-01 Kenichi Handa <handa@m17n.org>
9559
9560 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
9561 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
9562 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
9563
9564 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
9565 (DEVICE_DELTA): Fix typo.
9566 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
9567 LGLYPH format.
9568
9569 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9570 the change of LGLYPH format.
9571
95722008-02-01 Kenichi Handa <handa@m17n.org>
9573
9574 * ftfont.c (ftfont_list): Fix typo.
9575 (ftfont_build_basic_charsets): Don't include letters with diacritics.
9576
95772008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9578
9579 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
9580
9581 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
9582 xftface_info is non-NULL.
9583
95842008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9585
9586 * ftfont.c (ftfont_list): Move misplaced #endif.
9587
95882008-02-01 Kenichi Handa <handa@m17n.org>
9589
9590 * ftfont.c (ftfont_list): Pay attention to the case that
9591 FC_CAPABILITY is not defined.
9592
95932008-02-01 Kenichi Handa <handa@m17n.org>
9594
9595 * xftfont.c (xftfont_open): Set charset related members to -1.
9596
9597 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
9598 QCname.
9599 (ftfont_open): Set charset related members to -1.
9600
9601 * fontset.c (Votf_script_alist): New variable.
9602 (syms_of_fontset): Initialize it.
9603 (fontset_font): Delete unused variable.
9604
9605 * fontset.h (Votf_script_alist): Extern it.
9606
9607 * font.c (font_find_for_lface): Optimize code.
9608
9609 * font.h (font_close_object, font_merge_old_spec): Extern them.
9610
96112008-02-01 Kenichi Handa <handa@m17n.org>
9612
9613 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
9614 (syms_of_font): Initialize them.
9615 (font_pixel_size): Allow float value in dpi.
9616 (font_prop_validate_type): Delete.
9617 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
9618 Change caller.
9619 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
9620 (font_prop_validate_extra): Delete.
9621 (font_prop_validate_spacing): New function.
9622 (font_property_table): Add elements for all known properties.
9623 (get_font_prop_index): Rename from check_font_prop_name. New
9624 argument FROM. Change caller.
9625 (font_prop_validate): Validate all known properties.
9626 (font_put_extra): Delete argument force. Change caller.
9627 (font_expand_wildcards): Make it static. Fix the way of shrinking
9628 the possible range.
9629 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
9630 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
9631 Change caller.
9632 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
9633 (font_parse_fcname): Delete argument merge. Fix parsing of point
9634 size. Don't validate properties values here. Change caller.
9635 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
9636 (font_open_by_name): Delete unused variable.
9637 (Ffont_spec): Likewise. Validate property values.
9638 (Ffont_match_p): New function.
9639
9640 * font.h (QCscalable): Extern it.
9641 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
9642
9643 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
9644
9645 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
9646 (xfont_list_pattern): New function.
9647 (xfont_list): Use xfont_list_pattern.
9648
96492008-02-01 Kenichi Handa <handa@m17n.org>
9650
9651 * font.h (Flist_fonts): EXFUN it.
9652
96532008-02-01 Jason Rumney <jasonr@gnu.org>
9654
9655 * w32term.c (w32_initialize): Add back smoothing_type and
9656 smoothing_enabled definitions.
9657
96582008-02-01 Kenichi Handa <handa@m17n.org>
9659
9660 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
9661 s->face->font on determining underline position.
9662
96632008-02-01 Kenichi Handa <handa@m17n.org>
9664
9665 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
9666 (font_has_char): Accept font-object too.
9667 (font_find_for_lface): Try at first with a size specified in face.
9668
96692008-02-01 Kenichi Handa <handa@m17n.org>
9670
9671 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
9672 font_open_by_name.
9673
96742008-02-01 Kenichi Handa <handa@m17n.org>
9675
9676 * font.h (QCspacing, QCdpi): Extern them.
9677 (enum font_spacing): New enum.
9678 (FONT_PIXEL_SIZE_QUANTUM): New macro.
9679
9680 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
9681 (QCspacing, QCdpi): New variables.
9682 (syms_of_font): Initialize them.
9683 (font_pixel_size): New function.
9684 (font_put_extra): New function.
9685 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
9686 in FONT_EXTRA.
9687 (font_parse_fcname): Handle enumerated values (e.g. bold).
9688 Fix handling font size. Add QCname property that contains only
9689 unknown properties.
9690 (font_score): Change argument. Change caller. Pay attention to
9691 FONT_PIXEL_SIZE_QUANTUM.
9692 (font_sort_entites, font_list_entities, font_find_for_lface)
9693 (font_open_for_lface, font_open_by_name): Fix handling of font size.
9694 (Ffont_spec): Add QCname property that contains only unknown properties.
9695
9696 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
9697 include weight in listing pattern, instead check weight of each
9698 listed font. Don't include scalable in pattern. Pay attention to
9699 FONT_PIXEL_SIZE_QUANTUM.
9700
97012008-02-01 Kenichi Handa <handa@m17n.org>
9702
9703 * font.c (font_parse_fcname): Fix parsing of point-size.
9704 (font_unparse_fcname): Produce symbolic names for style properties.
9705 (font_list_entities): Handle float size correctly.
9706 (font_open_by_name): Prefer `normal' property values if the name
9707 doesn't specify them.
9708
9709 * fontset.c (Finternal_char_font): Use font_get_name, not
9710 Ffont_xlfd_name.
9711
9712 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
9713 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
9714 pattern. Don't force scalable.
9715
9716 * xftfont.c (xftfont_open): For generating a name, start from
9717 96-byte buffer.
9718
97192008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9720
9721 * frame.h (x_new_fontset2): Fix prototype.
9722
97232008-02-01 Kenichi Handa <handa@m17n.org>
9724
9725 * font.h (struct font_driver): Delete member parse_name.
9726 (font_match_p, font_get_spec, font_parse_fcname)
9727 (font_unparse_fcname): Extern them.
9728 (font_get_name): Adjust prototype.
9729
9730 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
9731 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
9732 (font_expand_wildcards): Fix handling ENCODING field. Avoid
9733 unnecessary checks for weight, slant, and swidth.
9734 (font_parse_fcname): New function.
9735 (font_unparse_fcname): New function.
9736 (font_parse_name): New function.
9737 (font_match_p): New function.
9738 (font_get_name): Change return value to Lisp string.
9739 (font_get_spec): New function.
9740 (Qunspecified, Qignore_defface): Don't extern them.
9741 (font_find_for_lface): Assume that LFACE is fully specified.
9742 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
9743 object, use it for FACE.
9744 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
9745 driver->parse_name.
9746 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
9747
9748 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
9749 prototype.
9750
9751 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
9752 argument F. Don't call Fnew_fontset. Instead, directly call
9753 make_fontset.
9754
9755 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
9756
9757 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
9758 of x_new_fontset2.
9759
9760 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
9761 (Qsans__serif): New variables.
9762 (ftfont_generic_family_list): New variable.
9763 (syms_of_ftfont): Initialize the above variables.
9764 (ftfont_pattern_entity): Delete argument NAME.
9765 (ftfont_list_generic_family): New function.
9766 (ftfont_parse_name): Delete this function.
9767 (ftfont_list): Try generic family only when FcFontList found no font.
9768 (ftfont_list_family): Fix args to FcObjectSetBuild.
9769
9770 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
9771 object in attrs[LFACE_FONT_INDEX].
9772 (set_lface_from_font_name): Cancel all changes for font-backend.
9773 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
9774 function.
9775 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
9776 font object in QCfont attribute.
9777 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
9778 (realize_default_face) [USE_FONT_BACKEND]: Call
9779 set_lface_from_font_and_fontset.
9780
9781 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
9782 "fixed", and signal error here if no suitable font was found.
9783
9784 * xfont.c (xfont_parse_name): Delete this function.
9785
9786 * xftfont.c (xftfont_open): Change coding style of error
9787 handling. Generate fontconfig's fontname pattern.
9788
9789 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
9790 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
9791
9792 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
9793 Both args FONTSET and FONT_OBJECT must be existing ones.
9794
97952008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9796
9797 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
9798
97992008-02-01 Kenichi Handa <handa@m17n.org>
9800
9801 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
9802
9803 * font.h (struct font): Fix typo.
9804
9805 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
9806 XLFD_XXX_INDEX.
9807 (enum xlfd_field_mask): New enum.
9808 (intern_font_field): Changed argument. Change caller. If digits
9809 are followed by non-digits, return a symbol.
9810 (font_expand_wildcards): New function.
9811 (font_parse_xlfd): Fix wildcard handling.
9812 (Ffont_spec): If :name is specified, reflect the info in the other
9813 properties.
9814
9815 * ftfont.c (ftfont_pattern_entity): Fix typo.
9816 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
9817 locale.
9818
98192008-02-01 Kenichi Handa <handa@m17n.org>
9820
9821 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
9822
9823 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
9824 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
9825 registry doesn't specify encoding part.
9826 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
9827 (font_open_by_name): At first try parsing the name.
9828 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
9829 as Lisp symbols.
9830
9831 * fontset.c (reorder_font_vector): Pay attention to the case that
9832 the 3rd element of font_def is nil.
9833 (fontset_font): For the default fontset, append one more fontset
9834 elements for a script-based font specification. Don't add script
9835 attribute on finding a font.
9836 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
9837 font name.
9838 (fontset_ascii_font): If a font can't be opened, return nil.
9839
9840 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
9841 (ftfont_pattern_entity): New function.
9842 (ftfont_get_cache): Assume that freetype_font_cache is already
9843 initialized.
9844 (ftfont_list): Handle the case that a file is specified in font
9845 name. Use ftfont_pattern_entity to generate entities.
9846 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
9847 (syms_of_ftfont): Initialize freetype_font_cache.
9848
9849 * xftfont.c (xftfont_open): Make the font name fontconfig's
9850 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
9851 (xftfont_close): Free font->font.name if not NULL.
9852
9853 * xfont.c (xfont_list): If script is specified for a font, return
9854 null_vector.
9855 (xfont_list_family): Declare argument type.
9856
9857 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
9858 name, set LFACE_FONT (lface) to nil.
9859
9860 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
9861 return Qnil.
9862
98632008-02-01 Kenichi Handa <handa@m17n.org>
9864
9865 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
9866 (standard_args): Add "-enable-font-backend".
9867
98682008-02-01 Kenichi Handa <handa@m17n.org>
9869
9870 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
9871 (struct xftdraw_list, xftdraw_list): Delete them.
9872 (register_xftdraw, check_xftdraw): Delete them.
9873 (xftfont_prepare_face): Don't call register_xftdraw.
9874 (xftfont_done_face): Don't call check_xftdraw.
9875 (xftfont_draw): Get background color only when with_background is
9876 nonzero.
9877
9878 * xfont.c (xfont_encode_char): Fix calculation of char2b.
9879
98802008-02-01 Kenichi Handa <handa@m17n.org>
9881
9882 These changes are for the new font handling codes.
9883
9884 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
9885 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
9886 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
9887 (FONTSRC, FONTOBJ): New variables.
9888 (obj): Add $(FONTOBJ).
9889 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
9890 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
9891 @LIBOTF_LIBS@.
9892 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
9893 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
9894
9895 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
9896
9897 * character.h (Vscript_representative_chars): Extern it.
9898
9899 * character.c (Vscript_representative_chars): New variable.
9900 (syms_of_character): Declare it as a Lisp variable.
9901
9902 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
9903 enable_font_backend is nonzero, accept the composition method
9904 COMPOSITION_WITH_GLYPH_STRING.
9905
9906 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
9907 enumeration COMPOSITION_WITH_GLYPH_STRING.
9908
9909 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
9910 members clip_x, clip_y, clip_width, and clip_height.
9911 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
9912
9913 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
9914 --enable-font-backend. Call syms_of_font.
9915
9916 * fns.c (assoc_no_quit): New function.
9917
9918 * fontset.h (FONT_INFO_FROM_FACE): New macro.
9919 (face_for_font, new_fontset_from_font)
9920 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
9921
9922 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
9923 (fontset_font, fontset_ascii, face_for_char)
9924 (make_fontset_for_ascii_face, Ffont_info)
9925 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
9926 is nonzero, use font-backend mechanism.
9927 (find_font_encoding): Make it non-static.
9928 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
9929 New functions.
9930
9931 * frame.h (struct frame): New members resx and resy.
9932 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
9933 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
9934
9935 * frame.c [USE_FONT_BACKEND]: Include "font.h".
9936 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
9937
9938 * lisp.h (assoc_no_quit): Extern it.
9939
9940 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
9941 Through out the file, use FONT_INFO_FROM_FACE instead of
9942 FONT_INFO_FROM_ID, use get_per_char_metric instead of
9943 rif->per_char_metric.
9944 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
9945 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
9946 (get_glyph_face_and_encoding, fill_composite_glyph_string)
9947 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
9948 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
9949 nonzero, use font-backend mechanism.
9950 (get_per_char_metric): New function.
9951
9952 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
9953 (set_lface_from_font_name)
9954 (set_font_frame_param, free_realized_face)
9955 (prepare_face_for_display, clear_face_gcs)
9956 (Finternal_set_font_selection_order, realize_x_face)
9957 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
9958 font-backend mechanism.
9959 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
9960 (load_face_font) [USE_FONT_BACKEND]: Abort.
9961 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
9962 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
9963
9964 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
9965 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
9966 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
9967 nonzero, register all available font drivers. Call
9968 x_default_font_parameter for deciding a font.
9969 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
9970
9971 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
9972 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
9973 (x_set_glyph_string_clipping_exactly)
9974 (x_compute_glyph_string_overhangs)
9975 (x_draw_glyph_string_foreground)
9976 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
9977 (x_free_frame_resources) [USE_FONT_BACKEND]: If
9978 enable_font_backend is nonzero, use font-backend mechanism.
9979 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
9980
99812008-02-01 Kenichi Handa <handa@m17n.org>
9982
9983 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
9984 system_eol_type.
9985 (syms_of_coding): Initialize system_eol_type.
9986
9987 * process.c (Fset_process_coding_system): Inherit system's eol
9988 format if necessary.
9989
99902008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9991
9992 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
9993
99942008-02-01 Kenichi Handa <handa@m17n.org>
9995
9996 * coding.c (decode_eol): Pay attention to buffer relocation in
9997 del_range_2.
9998 (decode_coding): Call decode_eol before restoring undo_list.
9999
100002008-02-01 Kenichi Handa <handa@m17n.org>
10001
10002 * charset.c (Fdefine_charset_internal): Fix setting of
10003 emacs_mule_bytes.
10004
100052008-02-01 Kenichi Handa <handa@m17n.org>
10006
10007 * keyboard.c (read_char): Check if C is a character or not before
10008 looking up Vkeyboard_translate_table.
10009
100102008-02-01 Kenichi Handa <handa@m17n.org>
10011
10012 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
10013 condition to terminate the loop.
10014
100152008-02-01 Kenichi Handa <handa@m17n.org>
10016
10017 * coding.c (produce_composition): Compare charbuf[i] instead of
10018 args[i] against 0.
10019 (Fterminal_coding_system): Use EQ to compare Lisp objects.
10020
100212008-02-01 Kenichi Handa <handa@m17n.org>
10022
10023 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
10024 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
10025 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
10026 detect_coding.
10027 (emacs_mule_char): Handle old style (Emacs 20) component character
10028 of a composition.
10029 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
10030 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
10031 composition rule.
10032 (decode_coding_emacs_mule): Handle invalid bytes correctly.
10033
100342008-02-01 Kenichi Handa <handa@m17n.org>
10035
10036 * coding.c (encode_coding_ccl): Allocate destination dynamically
10037 when necessary.
10038
100392008-02-01 Kenichi Handa <handa@m17n.org>
10040
10041 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
10042 the loop. When quitted, show a proper error message.
10043
100442008-02-01 Kenichi Handa <handa@m17n.org>
10045
10046 * xterm.c (x_set_glyph_string_clipping_exactly): Set
10047 src->clip_head and src->clip_tail temporarily instead of src->hl.
10048
10049 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
10050 character sequence.
10051 (Fccl_execute_on_string): Use ASET, not XSET.
10052
100532008-02-01 Kenichi Handa <handa@m17n.org>
10054
10055 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
10056
100572008-02-01 Kenichi Handa <handa@m17n.org>
10058
10059 * coding.c (decode_coding): Fix the condition of terminating the
10060 decoding loop.
10061
100622008-02-01 Kenichi Handa <handa@m17n.org>
10063
10064 * data.c (Faset): On setting a character bigger than 255 in a
10065 unibyte string, signal an error instead of make the string multibyte.
10066
100672008-02-01 Kenichi Handa <handa@m17n.org>
10068
10069 * charset.c (map_charset_chars): Fix for ascii-compatible charset
10070 made by a mapping table.
10071
100722008-02-01 Kenichi Handa <handa@m17n.org>
10073
10074 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
10075 not.
10076 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
10077 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
10078
10079 * xterm.c (x_draw_composite_glyph_string_foreground): Check
10080 s->face is NULL or not.
10081
100822008-02-01 Kenichi Handa <handa@m17n.org>
10083
10084 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
10085 (x_draw_glyph_string): Fix drawing of right_overhang and
10086 left_overhang around/on cursor.
10087
10088 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
10089
100902008-02-01 Kenichi Handa <handa@m17n.org>
10091
10092 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
10093
100942008-02-01 Kenichi Handa <handa@m17n.org>
10095
10096 * coding.c (Fdefine_coding_system_internal)
10097 (Fdefine_coding_system_alias): Avoid a duplicated element in
10098 Vcoding_system_alist.
10099
101002008-02-01 Kenichi Handa <handa@m17n.org>
10101
10102 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
10103
10104 * coding.c (Qcoding_system_define_form): New variable.
10105 (syms_of_coding): Intern and staticpro it.
10106 (Fcoding_system_p): Check Qcoding_system_define_form.
10107 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
10108
10109 * coding.h (CODING_SYSTEM_P): If ID is not available, call
10110 Fcoding_system_p.
10111 (CHECK_CODING_SYSTEM): If ID is not available, call
10112 Fcheck_coding_system.
10113 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
10114 Try also Fcheck_coding_system.
10115
101162008-02-01 Kenichi Handa <handa@m17n.org>
10117
10118 * coding.c (code_conversion_restore): GCPRO arg.
10119
101202008-02-01 Kenichi Handa <handa@m17n.org>
10121
10122 * character.c (lisp_string_width): Check multibyteness of STRING.
10123
101242008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10125
10126 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
10127 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
10128 (decode_mac_font_name): Use decode_coding_c_string instead of
10129 decode_coding.
10130 (x_load_font): Initialize fontp->fontset to -1. Set
10131 fontp->encoding_type.
10132
101332008-02-01 Kenichi Handa <handa@m17n.org>
10134
10135 * search.c (search_buffer): Give up BM search on case-fold-search
10136 if one of a target character has a case-equivalence of different
10137 byte length even if that target charcter is an ASCII.
10138 (simple_search): Fix calculation of byte length of matched text.
10139 (boyer_moore): Fix handling of case-equivalent multibyte characters.
10140
101412008-02-01 Kenichi Handa <handa@m17n.org>
10142
10143 * coding.c (decode_coding): Fix handling of invalid bytes.
10144
101452008-02-01 Kenichi Handa <handa@m17n.org>
10146
10147 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
10148 Unicode characters.
10149
101502008-02-01 Kenichi Handa <handa@m17n.org>
10151
10152 * coding.c (encode_coding_object): If a pre-write-conversion
10153 function makes a new buffer, kill it.
10154
101552008-02-01 Kenichi Handa <handa@m17n.org>
10156
10157 * coding.c (QCascii_compatible_p): New variable.
10158 (syms_of_coding): Initialize it.
10159 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
10160 calling string_char.
10161 (record_conversion_result): Add `default:' case.
10162 (coding_charset_list): Delete unused variable `coding_type'.
10163 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
10164 property in the plist of the coding system.
10165 (Fcoding_system_put): Check QCascii_compatible_p.
10166
101672008-02-01 Miles Bader <miles@gnu.org>
10168
10169 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
10170 removed calculation of frame `f', as it's now used.
10171
101722008-02-01 Kenichi Handa <handa@m17n.org>
10173
10174 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
10175 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
10176 (UNIDATA): New variable.
10177 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
10178 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
10179 $(RUN_TEMACS) unconditionally.
10180
101812008-02-01 Kenichi Handa <handa@m17n.org>
10182
10183 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
10184 (admindir): New variable.
10185 ($(lispsource)international/charprop.el): New target.
10186
101872008-02-01 Miles Bader <miles@gnu.org>
10188
10189 * character.c (chars-in-region): Remove obsolete function.
10190 (syms_of_character): Remove its initialization.
10191
101922008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
10193
10194 * w32select.c (validate_coding_system)
10195 (setup_windows_coding_system): New functions.
10196 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
10197 setup_windows_coding_system.
10198 (setup_config, Fw32_get_clipboard_data): Use
10199 validate_coding_system.
10200 (Fx_selection_exists): Move call to setup_config to a place
10201 where signals are allowed.
10202
10203 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
10204 (Fcheck_coding_system): Add declarations.
10205
102062008-02-01 Kenichi Handa <handa@m17n.org>
10207
10208 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
10209
102102008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10211
10212 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
10213 string as the second argument for x_new_fontset.
10214
102152008-02-01 Kenichi Handa <handa@m17n.org>
10216
10217 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
10218 (encode_coding_object): Use safe_call instead of call2.
10219
102202008-02-01 Kenichi Handa <handa@m17n.org>
10221
10222 * fontset.c (Fset_fontset_font): Check family element of a given vector.
10223
10224 * Makefile.in (lisp): Include charprop.el.
10225
102262008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10227
10228 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
10229 Not sure if it's unnecessary.
10230
102312008-02-01 Steven Tamm <steventamm@mac.com>
10232
10233 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
10234 some possibly unnecessary fontset checking code that crashed
10235 when creating a new frame.
10236
102372008-02-01 Kenichi Handa <handa@m17n.org>
10238
10239 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
10240 lookup_face.
10241
10242 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
10243
10244 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
10245
102462008-02-01 Kenichi Handa <handa@m17n.org>
10247
10248 * coding.c: Cancel the change done in HEAD on 2008-02-01.
10249 (coding_charset_list): New function.
10250
10251 * coding.h (coding_charset_list): Extern it.
10252
102532008-02-01 Kenichi Handa <handa@m17n.org>
10254
10255 * fontset.c (Fset_fontset_font): Call find_font_encoding with
10256 concatenation of family and registry.
10257
102582008-02-01 Kenichi Handa <handa@m17n.org>
10259
10260 * character.h (BYTE8_STRING): Fix typo.
10261
10262 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
10263 string to multibyte (sync to HEAD).
10264
10265 * casefiddle.c (casify_region): Handle changes in byte-length
10266 using replace_range_2 (sync to HEAD).
10267
102682008-02-01 Andreas Schwab <schwab@suse.de>
10269
10270 * chartab.c (map_char_table): GCPRO table and arg.
10271
102722008-02-01 Kenichi Handa <handa@m17n.org>
10273
10274 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
10275 already at limit.
10276
102772008-02-01 Kenichi Handa <handa@m17n.org>
10278
10279 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
10280 instead of fast_c_string_match_ignore_case.
10281 (find_font_encoding): Change argument to Lisp_Object. Use
10282 fast_string_match_ignore_case instead of
10283 fast_c_string_match_ignore_case. Change caller.
10284
102852008-02-01 Kenichi Handa <handa@m17n.org>
10286
10287 * xdisp.c (get_next_display_element): In unibyte case, decide to
10288 display in octal form by checking a character by
10289 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
10290
10291 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
10292
10293 * character.c (unibyte_has_multibyte_table): New variable.
10294
10295 * character.h (unibyte_has_multibyte_table): Extern it.
10296 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
10297
102982008-02-01 Kenichi Handa <handa@m17n.org>
10299
10300 * coding.c (encode_coding_iso_2022): Fix handling of charset
10301 annotation.
10302
103032008-02-01 Kenichi Handa <handa@m17n.org>
10304
10305 * coding.c (setup_coding_system): If coding_system is nil, use
10306 Qundecided.
10307 (Fterminal_coding_system): Return nil if terminal coding system is
10308 `undecided'.
10309 (syms_of_coding): Define coding-system `undecided' here. Setup
10310 terminal_coding as `undecided'.
10311
103122008-02-01 Kenichi Handa <handa@m17n.org>
10313
10314 * xdisp.c (message_dolog, set_message_1): Call
10315 unibyte_char_to_multibyte with arg type int.
10316
10317 * lread.c (read1): Fix reading of a char-table.
10318
10319 * print.c (print_object): Include sub char-table in circularities
10320 detection.
10321
103222008-02-01 Kenichi Handa <handa@m17n.org>
10323
10324 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
10325 Append the found sequences in car of ARGS instead of prepending.
10326
103272008-02-01 Kenichi Handa <handa@m17n.org>
10328
10329 * fileio.c (report_file_error): Make a unibyte string from
10330 strerror (errorno).
10331 (Fsubstitute_in_file_name): Fix the arg to
10332 unibyte_char_to_multibyte. It is evaluated twice.
10333
103342008-02-01 Kenichi Handa <handa@m17n.org>
10335
10336 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
10337
103382008-02-01 Kenichi Handa <handa@m17n.org>
10339
10340 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
10341 BOM is not found.
10342 (detect_coding, detect_coding_system): Optimization for ISO-2022
10343 when no 8-bit data is found.
10344
103452008-02-01 Jason Rumney <jasonr@gnu.org>
10346
10347 * w32fns.c (x_to_w32_font): Update to use new coding struct.
10348
103492008-02-01 Kenichi Handa <handa@m17n.org>
10350
10351 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
10352 CHARS.
10353
103542008-02-01 Steven Tamm <steventamm@mac.com>
10355
10356 * macterm.c (mac_encode_char): Add charset argument and update
10357 to use encoding_type.
10358 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
10359 switch to pure fontset.
10360 (decode_mac_font_name): Temporarily remove decoding.
10361 (x_font_name_to_mac_font_name): Temporarily remove encoding.
10362 (x_load_font): Temporarily remove encoding.
10363
103642008-02-01 Kenichi Handa <handa@m17n.org>
10365
10366 * xfaces.c (Fface_font): If frame is not on a window system,
10367 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
10368 refer to face->font.
10369 (split_font_name_into_vector, build_font_name_from_vector)
10370 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
10371 when HAVE_WINDOW_SYSTEM is defined.
10372
103732008-02-01 Kenichi Handa <handa@m17n.org>
10374
10375 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
10376 (x_produce_glyphs): Fix setting of members of cmp in case
10377 cmp->glyph_len is zero.
10378
10379 * fontset.c (Fset_fontset_font): Fix docstring.
10380 (Ffontset_info): Make it backward compatible. New arg ALL.
10381
103822008-02-01 Kim F. Storm <storm@cua.dk>
10383
10384 * process.c (read_process_output): Grow decoding_buf when needed;
10385 this could cause a crash in allocate_string and compact_small_strings.
10386
103872008-02-01 Kenichi Handa <handa@m17n.org>
10388
10389 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
10390
103912008-02-01 Kenichi Handa <handa@m17n.org>
10392
10393 * coding.c (setup_coding_system): Set coding->common_flags
10394 correctly for raw-text.
10395 (consume_chars): On encoding unibyte text by raw-text, don't check
10396 multibyte form.
10397 (encode_coding): On encoding by raw-text, never use translation tables.
10398
10399 * fileio.c (e_write): Short cut for the case of no encoding.
10400
104012008-02-01 Kenichi Handa <handa@m17n.org>
10402
10403 * coding.c (detect_coding, detect_coding_system): Delete unused
10404 variables.
10405
104062008-02-01 Kenichi Handa <handa@m17n.org>
10407
10408 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
10409 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
10410
104112008-02-01 Kenichi Handa <handa@m17n.org>
10412
10413 * coding.c (Ffind_coding_systems_region_internal): Include
10414 raw-text and no-conversion in the result.
10415
104162008-02-01 Kenichi Handa <handa@m17n.org>
10417
10418 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
10419 (load_font_get_repertory): Delete unnecessary check of ENCODING of
10420 FONT_DEF.
10421 (font_def_arg, add_arg, from_arg, to_arg): New args.
10422 (set_fontset_font): Change argument.
10423 (Fset_fontset_font): Fix for the case that TARGET is a script
10424 name and charset name.
10425 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
10426
104272008-02-01 Kenichi Handa <handa@m17n.org>
10428
10429 * fontset.c (fontset_font): Rename from fontset_face. Change return
10430 value.
10431 (face_suitable_for_char_p, face_for_char): Adjust for the change
10432 of fontset_font.
10433 (make_fontset_for_ascii_face): Fix setting of the fontset element
10434 for ASCII.
10435 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
10436 to get a font name.
10437 (Ffontset_info): Adjust for the change of fontset_font.
10438
10439 * coding.c (emacs_mule_char): Check invalid code more rigidly.
10440
10441 * character.h (LEADING_CODE_LATIN_1_MIN)
10442 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
10443
104442008-02-01 Kenichi Handa <handa@m17n.org>
10445
10446 * editfns.c (check_translation): New function.
10447 (Ftranslate_region_internal): Handle M:N mapping.
10448
104492008-02-01 Kenichi Handa <handa@m17n.org>
10450
10451 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
10452
104532008-02-01 Kenichi Handa <handa@m17n.org>
10454
10455 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
10456 goto invalid_code.
10457 (decode_coding_iso_2022): Fix handling of invalid designation.
10458
10459 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
10460 after calling code_conversion_save.
10461
104622008-02-01 Kenichi Handa <handa@m17n.org>
10463
10464 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
10465
10466 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
10467
10468 * fontset.c: Include "intervals.h".
10469 (fontset_face): Fix comparing of Lisp_Objects.
10470 (free_face_fontset, new_fontset_from_font_name): Fix
10471 Lisp_Object/int mixup.
10472
10473 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
10474
10475 * coding.c: Add many prototypes for static functions.
10476 (get_translation_table): Allow max_lookup to be NULL.
10477 (decode_coding, Ffind_coding_systems_region_internal)
10478 (Funencodable_char_position, Fcheck_coding_systems_region): Call
10479 get_translation_table with max_lookup NULL.
10480
104812008-02-01 Kenichi Handa <handa@m17n.org>
10482
10483 * coding.c (get_translation_table): Declare it as Lisp_Object.
10484 (LOOKUP_TRANSLATION_TABLE): New macro.
10485 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
10486 instead of CHAR_TABLE_REF.
10487
104882008-02-01 Kenichi Handa <handa@m17n.org>
10489
10490 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
10491 annotation data format.
10492 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
10493 Change arguments FROM and TO to single argument NCHARS. Change caller.
10494 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
10495 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10496 (decode_coding_ccl, decode_coding_charset): Pay attention to
10497 coding->charbuf_used.
10498 (get_translation): New function.
10499 (produce_chars): New arguments translation_table and last_block.
10500 Translate characters here. Return number of carryover chars.
10501 Change caller.
10502 (produce_composition): New argument pos. Change caller.
10503 Adjust for the change of annotation data format.
10504 (produce_charset, produce_annotation): Likewise.
10505 (decode_coding, encode_coding): Don't call translate_chars.
10506 (consume_chars): New arg translation_table. Change caller.
10507 (translate_chars): Delete.
10508 (syms_of_coding): Make translation-table's number of extra slots 2.
10509
105102008-02-01 Kenichi Handa <handa@m17n.org>
10511
10512 * search.c (simple_search): Fix setting this_pos_byte in backward
10513 search.
10514
10515 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
10516 byte sequence.
10517 (detect_coding_ccl): Fix setting of the variable valids.
10518
105192008-02-01 Kenichi Handa <handa@m17n.org>
10520
10521 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
10522
10523 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
10524
10525 * editfns.c (Ftranslate_region_internal): Rename from
10526 Ftranslate_region. Accept a char-table in TABLE.
10527 (syms_of_editfns): Defsubr Stranslate_region_internal.
10528
10529 * xfaces.c (set_lface_from_font_name): If a font is specified for
10530 a frame, generate a fontset from the font.
10531 (build_scalable_font_name): If the scalable font is requested for
10532 a specific size, don't change that size.
10533 (try_font_list): Try a scalable font also in the case that a
10534 pattern string is specified.
10535
105362008-02-01 Kenichi Handa <handa@m17n.org>
10537
10538 * xfaces.c (Fface_font): New optional arg CHARACTER.
10539
105402008-02-01 Kenichi Handa <handa@m17n.org>
10541
10542 * charset.h (CHARSET_OFFSET): New macro.
10543
105442008-02-01 Kenichi Handa <handa@m17n.org>
10545
10546 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
10547
10548 * fontset.c (fontset_face): Handle the case that repertory is a
10549 char-table.
10550 (find_font_encoding): Return nil for unknown encoding.
10551 (Fset_fontset_font): Ignore a font of unknown encoding.
10552
105532008-02-01 Kenichi Handa <handa@m17n.org>
10554
10555 * keymap.c (describe_vector): Handle default value of a char table.
10556
10557 * fontset.c (fontset_face): Handle fallback fonts correctly.
10558 (Ffontset_info): Return infomation about fallback fonts.
10559
105602008-02-01 Kenichi Handa <handa@m17n.org>
10561
10562 * fontset.c (FONTSET_DEFAULT): New macro.
10563 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
10564 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
10565 the case that it is nil.
10566 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
10567 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
10568
10569 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
10570 subset or superset.
10571
105722008-02-01 Kenichi Handa <handa@m17n.org>
10573
10574 * emacs.c (main): Call init_charset after syms_of_XXX.
10575
10576 * charset.c (Vcharset_map_directory): Delete.
10577 (Vcharset_map_path): New variable.
10578 (load_charset_map_from_file): Use Vcharset_map_path instead.
10579 (init_charset): Initialize Vcharset_map_path.
10580 (syms_of_charset): Delete declaration of "charset-map-directory",
10581 add declaration of "charset-map-path".
10582
105832008-02-01 Kenichi Handa <handa@m17n.org>
10584
10585 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
10586 ASCII only string.
10587
10588 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
10589
10590 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
10591 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
10592
105932008-02-01 Kenichi Handa <handa@m17n.org>
10594
10595 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
10596
10597 * coding.c (QCmnemonic, QCdefalut_char)
10598 (QCdecode_translation_table, QCencode_translation_table)
10599 (QCpost_read_conversion, QCpre_write_conversion): New variables.
10600 (get_translation_table): Return a list of translation tables if
10601 necessary.
10602 (decode_coding): Call get_translation_table with ENCODEP 0.
10603 (char_encodable_p): If translation_table is non-nil, always call
10604 translate_char.
10605 (Fdefine_coding_system_internal): Accept list of translation
10606 tables as :encode-translation-table and :decode-translation-table.
10607 (Fcoding_system_put): New function.
10608 (syms_of_coding): Declare new symbols. Defsubr
10609 Scoding_system_put.
10610 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
10611 typically JISX0212.
10612
10613 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
10614 when the charset is superset type.
10615
10616 * character.c (translate_char): Accept list of translation tables.
10617
106182008-02-01 Kenichi Handa <handa@m17n.org>
10619
10620 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
10621 (CODING_ATTR_TRANS_TBL): New macro.
10622
10623 * coding.c (get_translation_table): New function.
10624 (translate_chars): Fix the bug of skipping annotation data.
10625 (decode_coding, encode_coding): Utilize get_translation_table.
10626 (char_encodable_p, Funencodable_char_position): Translate char if
10627 necessary.
10628 (Ffind_coding_systems_region_internal)
10629 (Fcheck_coding_systems_region): Setup translation table for encode
10630 in a coding system attribute vector in advance.
10631 (Fdefine_coding_system_internal): Allow a symbol as translation
10632 table. For shift-jis type coding system, allow 4th charset.
10633
106342008-02-01 Kenichi Handa <handa@m17n.org>
10635
10636 * coding.c (decode_coding_sjis): Check the first byte rigidly.
10637
10638 * xdisp.c (get_next_display_element): Pass -1 as POS to
10639 FACE_FOR_CHAR if displaying a C-string.
10640
106412008-02-01 Kenichi Handa <handa@m17n.org>
10642
10643 * composite.c (get_composition_id): Handle xoff and yoff in a
10644 composition rule.
10645
10646 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
10647 (struct composition): New member lbearing and rbearing.
10648
10649 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
10650 (x_get_glyph_overhangs): Handle a composition glyph.
10651 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
10652
10653 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
10654 composition glyph.
10655
106562008-02-01 Kenichi Handa <handa@m17n.org>
10657
10658 * print.c: Include charset.h.
10659 (Vprint_charset_text_property): New variable.
10660 (Qdefault): Extern it.
10661 (PRINT_STRING_NON_CHARSET_FOUND)
10662 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
10663 (print_check_string_result): New variable.
10664 (print_check_string_charset_prop): New function.
10665 (print_prune_charset_plist): New variable.
10666 (print_prune_string_charset): New function.
10667 (print_object): Call print_prune_string_charset if
10668 Vprint_charset_text_property is not t.
10669 (print_interval): Print nothing if interval->plist is nil.
10670 (syms_of_print): Declare Vprint_charset_text_property as a lisp
10671 variable. Init and staticpro print_prune_charset_plist.
10672
106732008-02-01 Kenichi Handa <handa@m17n.org>
10674
10675 * fontset.c (new_fontset_from_font_name): Use the specified font
10676 for all characters in the new fontset.
10677
10678 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10679 OBJECT args.
10680
10681 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
10682 OBJECT args for composition too.
10683
10684 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10685 OBJECT args.
10686
106872008-02-01 Kenichi Handa <handa@m17n.org>
10688
10689 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
10690
10691 * fontset.c (reorder_font_vector): Adjust for the change of
10692 FONT_DEF format.
10693 (fontset_face): New arg id. Change caller.
10694 (face_for_char): New args pos and object.
10695 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
10696 (fs_query_fontset): Check NAME by Fassoc too.
10697 (Fset_fontset_font): Allow non-XLFD font name.
10698 (Ffontset_info): Adjust for the change of FONT_DEF format.
10699
10700 * fontset.h (face_for_char): Adjust prototype.
10701
10702 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
10703 (append_space, extend_face_to_end_of_line)
10704 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10705 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
10706
10707 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
10708 POS and OBJECT args.
10709
10710 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
10711 POS and OBJECT args.
10712
107132008-02-01 Jason Rumney <jasonr@gnu.org>
10714
10715 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
10716 of GlobalAlloc'ed memory.
10717
107182008-02-01 Kenichi Handa <handa@m17n.org>
10719
10720 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
10721
10722 * charset.h (charset_table_used): Delete extern.
10723
10724 * charset.c (charset_table_used): Make it static.
10725 (map_charset_chars): Fix args to c_function with.
10726
10727 * chartab.c (map_sub_char_table_for_charset): Fix args to
10728 c_function with.
10729
10730 * coding.h (enum coding_result_code): Delete
10731 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
10732
10733 * coding.c (Qinsufficient_source, Qinconsistent_eol)
10734 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
10735 (Vlast_code_conversion_error): New variables.
10736 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
10737 (ONE_MORE_BYTE): Record error if any instead of signaling an
10738 error. If non-ASCII multibyte char is found, return the negative
10739 value of the code. All callers changed to check it.
10740 (ONE_MORE_BYTE_NO_CHECK): Likewise.
10741 (record_conversion_result): New function. Change all codes setting
10742 coding->result to call this function.
10743 (detect_coding_utf_8, decode_coding_utf_8)
10744 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
10745 Don't use the local variable incomplete.
10746 (emacs_mule_char): Change the second arg to `const'.
10747 (decode_coding): Fix of flushing out unprocessed data.
10748 (make_conversion_work_buffer): Fix making of a work buffer.
10749 (decode_coding_object): Return coding->dst_object.
10750
10751 * fontset.c (set_fontset_font): Fix args.
10752
10753 * lisp.h (CHARACTERBITS): Define as 22.
10754
10755 * process.c (send_process): Be sure to set coding->src_multibyte.
10756
10757 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
10758
107592008-02-01 Kenichi Handa <handa@m17n.org>
10760
10761 * xdisp.c (handle_auto_composed_prop): Give limit to
10762 Fnext_single_char_property_change.
10763
107642008-02-01 Kenichi Handa <handa@m17n.org>
10765
10766 * composite.c (syms_of_composite): Don't make the composition hash
10767 table weak.
10768
10769 * fontset.c (Fset_fontset_font): Fix docstring.
10770
10771 * lisp.h (detect_coding_system): Adjust prototype.
10772
10773 * fileio.c (kill_workbuf_unwind): Delete this function.
10774 (Finsert_file_contents): Adjust the call of detect_coding_system.
10775 Get conversion_buffer by code_conversion_save. Use the macro
10776 CODING_MAY_REQUIRE_DECODING. After decoding, update
10777 coding_system.
10778
10779 * coding.h (make_conversion_work_buffer): Delete extern.
10780 (code_conversion_save): Extern it.
10781
10782 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
10783 (CODING_GET_INFO): Delete argument eol_type. Change callers.
10784 (decode_coding_utf_8): Don't do eol converion.
10785 (detect_coding_utf_16): Check coding->src_chars, not
10786 coding->src_bytes. Add heuristics for those that have no signature.
10787 (decode_coding_emacs_mule, decode_coding_iso_2022)
10788 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
10789 Don't do eol converion.
10790 (adjust_coding_eol_type): Return a new coding system.
10791 (detect_coding): Don't detect eol. Fix for utf-16 detection.
10792 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
10793 each change.
10794 (decode_coding): Pay attention to undo_list. Do eol conversion for
10795 all types of coding-systems (if necessary).
10796 (Vcode_conversion_work_buf_list): Delete it.
10797 (Vcode_conversion_reused_workbuf): Rename from
10798 Vcode_conversion_reused_work_buf.
10799 (Vcode_conversion_workbuf_name): New variable.
10800 (reused_workbuf_in_use): New variable.
10801 (make_conversion_work_buffer): Delete the arg DEPTH.
10802 (code_conversion_restore): Change argument to cons.
10803 (code_conversion_save): Delete the argument BUFFER. Change callers.
10804 (detect_coding_system): New argument src_chars. Change callers.
10805 Fix for utf-16 detection.
10806 (init_coding_once): Don't use ISO_carriage_return.
10807 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
10808 reused_workbuf_in_use.
10809
108102008-02-01 Kenichi Handa <handa@m17n.org>
10811
10812 * keymap.c (store_in_keymap): Pay attention to the case that idx
10813 is a cons specifying a character range.
10814
108152008-02-01 Kenichi Handa <handa@m17n.org>
10816
10817 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
10818 HANDLED_RECOMPUTE_PROPS.
10819
10820 * coding.c (Fdefine_coding_system_internal): Fix checking of
10821 ascii compatibility.
10822
108232008-02-01 Kenichi Handa <handa@m17n.org>
10824
10825 * charset.c (find_charsets_in_text): Delete unused locale variable.
10826 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
10827
10828 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
10829 Resync charset_list to Vemacs_mule_charset_list.
10830
10831 * keymap.c (store_in_keymap): Pay attention to the case that idx
10832 is a cons specifying a character range.
10833
108342008-02-01 Kenichi Handa <handa@m17n.org>
10835
10836 * composite.c (update_compositions): Bind inhibit-read-only, etc
10837 to t before calling remove-list-of-text-properties.
10838
10839 * print.c (print_object): Always print ASCII chars as is.
10840
108412008-02-01 Kenichi Handa <handa@m17n.org>
10842
10843 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
10844
10845 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
10846 is a char table.
10847
108482008-02-01 Kenichi Handa <handa@m17n.org>
10849
10850 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
10851
108522008-02-01 Kenichi Handa <handa@m17n.org>
10853
10854 * xfaces.c (set_lface_from_font_name): Fix for the case that
10855 FONTNAME is not fontset name.
10856
108572008-02-01 Kenichi Handa <handa@m17n.org>
10858
10859 * fns.c (base64_encode_1): Fix previous change.
10860
108612008-02-01 Kenichi Handa <handa@m17n.org>
10862
10863 * fontset.c (set_fontset_font): New function.
10864 (Fset_fontset_font): If a font is specified for a charset, use
10865 map_charset_chars to store the font spec in a fontset.
10866
108672008-02-01 Kenichi Handa <handa@m17n.org>
10868
10869 * fontset.c (fontset_face): Create a fallback fontset on demand.
10870 (make_fontset): Don't create a fallback fontset here.
10871 (free_face_fontset): Free a fallback fontset (if any) too.
10872 (n_auto_fontsets): Delete this variable.
10873 (auto_fontset_alist): New variable.
10874 (new_fontset_from_font_name): Check auto_fontset_alist.
10875 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
10876 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
10877 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
10878 Defsubr Sfontset_list_all.
10879
108802008-02-01 Kenichi Handa <handa@m17n.org>
10881
10882 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10883
108842008-02-01 Kenichi Handa <handa@m17n.org>
10885
10886 * fontset.c (Fnew_fontset): Check NAME more rigidly.
10887
108882008-02-01 Kenichi Handa <handa@m17n.org>
10889
10890 * editfns.c (Fgoto_char): Fix docstring.
10891
108922008-02-01 Kenichi Handa <handa@m17n.org>
10893
10894 * insdel.c (insert_from_gap): Adjust intervals correctly.
10895
108962008-02-01 Jason Rumney <jasonr@gnu.org>
10897
10898 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
10899 (pfnGetFontUnicodeRanges): New dynamically loaded function.
10900 (w32_initialize): Try to load it.
10901 (x_get_font_repertory): Use it if available.
10902 (w32_encode_char): Add shortcut for unicode output.
10903
10904 * w32fns.c (w32_load_system_font): Default charset to -1.
10905 (x_to_w32_charset): Match all fonts for unicode.
10906 (w32_to_x_charset): New parameter matching. Don't return partial
10907 or wildcard charsets.
10908 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
10909 (w32_codepage_for_font): Return CP_UNICODE for unicode.
10910 (w32_to_x_font): Match charset to real charset.
10911 (enum_font_cb2): Always list unicode versions.
10912
10913 * makefile.w32-in (temacs): Increase EMHEAP.
10914
109152008-02-01 Jason Rumney <jasonr@gnu.org>
10916
10917 * w32term.c (w32_encode_char): New charset parameter.
10918 font_info.encoding becomes encoding_type.
10919 (x_get_font_repertory): New function. Warning: stub only!
10920 (x_new_font): Return quickly if font already set.
10921 (x_new_fontset): fontsetname parameter is Lisp_Object.
10922 Use new fs_query_fontset. Try new_fontset_from_font_name.
10923 Use fontset_name for return value.
10924
10925 * w32term.h: Declare x_get_font_repertory.
10926
10927 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
10928 place of find_charset_in_text. Use encode_coding_object in place
10929 of encode_coding.
10930 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
10931 decode_coding.
10932
10933 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
10934 of x_new_fontset.
10935 (w32_load_system_font): Initialize charset as unicode.
10936 font_info.encoding becomes encoding_type.
10937 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
10938 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
10939 (syms_of_w32fns): Set get_font_repertory_func.
10940
10941 * w32console.c: Include character.h. Use terminal_encode_buffer
10942 from term.c.
10943 (write_glyphs): Use new version of encode_terminal_code. Use
10944 encode_coding_object in place of encode_coding.
10945
10946 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
10947 encoding becomes encoding_type.
10948
10949 * term.c (terminal_encode_buffer): Make externally visible.
10950
10951 * makefile.w32-in: Add character.h dependancies.
10952 (character.o, chartab.o): New targets.
10953
109542008-02-01 Kenichi Handa <handa@m17n.org>
10955
10956 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
10957 CODING_ID_EOL_TYPE.
10958
109592008-02-01 Andreas Schwab <schwab@suse.de>
10960
10961 * coding.c (produce_chars): Revert last change.
10962
109632008-02-01 Kenichi Handa <handa@m17n.org>
10964
10965 * charset.h (charset_unicode): Extern it.
10966
10967 * charset.c (string_xstring_p): Check by (C >= 0x100).
10968 (find_charsets_in_text): Change format of the arc CHARSETS. New
10969 arg MULTIBYTE.
10970 (Ffind_charset_region, Ffind_charset_string): Adjust for the
10971 change of find_charsets_in_text.
10972 (Fsplit_char): Fix doc. Never return unknown.
10973
10974 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
10975
10976 * coding.c (Fdefine_coding_system_alias): Update
10977 Vcoding_system_list.
10978
10979 * fontset.c (load_font_get_repertory): Pay attention to the case
10980 that ENCODING of a font is specified by a char-table.
10981
10982 * xterm.c (x_get_font_repertory): Handle the case that the
10983 encoding of font is other than Unicode.
10984
109852008-02-01 Kenichi Handa <handa@m17n.org>
10986
10987 * term.c (encode_terminal_code): Don't handle glyph-table. Check
10988 if a character is encodable by the terminal coding system. If
10989 not, produces proper number of `?'s. Update
10990 terminal_encode_buffer and terminal_encode_buf_size if necessary.
10991 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
10992
109932008-02-01 Kenichi Handa <handa@m17n.org>
10994
10995 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
10996 variables.
10997 (encode_terminal_code): Change argument. Encode multiple
10998 characters at once. Store the result of encoding in
10999 terminal_encode_buffer.
11000 (write_glyphs, insert_glyphs): Adjust for the change of
11001 encode_terminal_code.
11002 (term_init): Initialize terminal_encode_buffer and
11003 terminal_encode_buf_size.
11004
11005 * coding.c (consume_chars): If coding->src_object is nil, don't
11006 check annotation.
11007
110082008-02-01 Kenichi Handa <handa@m17n.org>
11009
11010 * character.c (char_string): Use ASCII_CHAR_P instead of
11011 SINGLE_BYTE_CHAR_P.
11012
110132008-02-01 Kenichi Handa <handa@m17n.org>
11014
11015 * xdisp.c (handle_auto_composed_prop): Check if the last
11016 characters of auto-composed region is newly composed with the
11017 following characters.
11018 (handle_composition_prop): Fix checking of point being inside
11019 composition.
11020
110212008-02-01 Kenichi Handa <handa@m17n.org>
11022
11023 * fns.c (concat): Don't change multibyteness of the result by
11024 concatenating an 8-bit character.
11025
11026 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
11027 multibyteness of the result when newelt is an 8-bit character.
11028
110292008-02-01 Dave Love <fx@gnu.org>
11030
11031 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
11032 EMACS_INT.
11033
11034 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
11035
11036 * xfaces.c (face_numeric_value): Declare dim size_t.
11037 (Finternal_lisp_face_equal_p): Remove unused f.
11038
11039 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
11040 (MATRIX_ROW): Remove unused vars.
11041 (draw_glyphs, x_insert_glyphs, fast_find_position)
11042 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
11043 byte/char counts.
11044
11045 * regex.c (regex_compile): Remove unused var.
11046
11047 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
11048
11049 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11050 (Faccessible_keymaps, where_is_internal): Remove unused vars.
11051
11052 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
11053
11054 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
11055
11056 * fileio.c (Fwrite_region): Remove unused var.
11057
11058 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
11059 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
11060
11061 * composite.c (Fremove_list_of_text_properties): Declare.
11062
11063 * coding.c (inhibit_pre_post_conversion): Remove (unused).
11064 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
11065 (coding_inherit_eol_type): Remove unused attrs.
11066 (detect_coding): Cast arg of detect_eol.
11067
11068 * charset.c (syms_of_charset): Remove unused var p.
11069 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
11070 byte/char counts.
11071
11072 * casetab.c (set_case_table): Remove unused var.
11073
11074 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
11075 unused vars.
11076
110772008-02-01 Dave Love <fx@gnu.org>
11078
11079 * xterm.c (x_bitmap_mask): Declare.
11080
110812008-02-01 Dave Love <fx@gnu.org>
11082
11083 * xterm.c (x_term_init): Fix type error.
11084
11085 * lisp.h: Add Funibyte_char_to_multibyte.
11086
11087 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
11088 (Fset_coding_system_priority): Doc fix.
11089
11090 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
11091
11092 * indent.c (check_composition): Make start and end EMACS_INT.
11093
11094 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
11095
11096 * xdisp.c (handle_composition_prop, check_point_in_composition):
11097 Make buffer positions EMACS_INT.
11098
11099 * composite.c (find_composition, run_composition_function)
11100 (update_compositions, Ffind_composition_internal): Make buffer
11101 positions EMACS_INT.
11102
11103 * composite.h (find_composition, update_compositions): Make
11104 position args EMACS_INT.
11105
11106 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
11107
11108 * intervals.c (get_property_and_range):
11109 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
11110
11111 * unexalpha.c: Don't include varargs.h.
11112
111132008-02-01 Dave Love <fx@gnu.org>
11114
11115 * coding.h (ENCODE_UTF_8): New.
11116
11117 * Makefile.in (gtkutil.o): Depend on coding.h.
11118
11119 * coding.c (Fset_coding_system_priority): Doc fix.
11120
111212008-02-01 Kenichi Handa <handa@m17n.org>
11122
11123 * fileio.c (Finsert_file_contents): Call setup_coding_system in
11124 the case of auto saving.
11125
111262008-02-01 Andreas Schwab <schwab@suse.de>
11127
11128 * chartab.c (map_char_table, map_char_table_for_charset): Protect
11129 `range' from GC.
11130
111312008-02-01 Kenichi Handa <handa@m17n.org>
11132
11133 * coding.c (decode_coding_sjis): Check bytes more rigidly.
11134
111352008-02-01 Kenichi Handa <handa@m17n.org>
11136
11137 * fileio.c (choose_write_coding_system): Return a decided coding system.
11138 (Fwrite_region): Set Vlast_coding_system_used to the return value
11139 of choose_write_coding_system.
11140
111412008-02-01 Kenichi Handa <handa@m17n.org>
11142
11143 * charset.c (Fset_charset_priority): Pay attention to duplicated
11144 arguments.
11145
11146 * coding.c (QCcategory): New variable.
11147 (syms_of_coding): Defsym it. Set all elements of
11148 Vcoding_category_table and their symbol values.
11149 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
11150 coding-category-XXX, and coding-category-list.
11151 (Fdefine_coding_system_internal): Add category in the plist.
11152
111532008-02-01 Kenichi Handa <handa@m17n.org>
11154
11155 * callproc.c (Fcall_process): Handle carryover correctly.
11156
11157 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
11158 (raw_text_coding_system): Check NILP (coding_system).
11159 (coding_inherit_eol_type): Check NILP (coding_system) and
11160 NILP (parent).
11161 (consume_chars): Fix for the case of raw-text.
11162
11163 * process.c (read_process_output): Handle carryover correctly.
11164
111652008-02-01 Dave Love <fx@gnu.org>
11166
11167 * regex.c (re_search_2): Fix last change.
11168
111692008-02-01 Kenichi Handa <handa@m17n.org>
11170
11171 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
11172 target_multibyte. Even in a unibyte case, return a converted
11173 multibyte char.
11174 (GET_CHAR_AFTER): New macro.
11175 (PATFETCH): Translate via multibyte char.
11176 (HANDLE_UNIBYTE_RANGE): Delete this macro.
11177 (SETUP_MULTIBYTE_RANGE): New macro.
11178 (regex_compile): Setup compiled code so that its multibyteness
11179 matches that of a target. Fix the handling of "[X-YZ]" using
11180 SETUP_MULTIBYTE_RANGE.
11181 (analyse_first) <charset>: For filling fastmap for all multibyte
11182 characters, don't check by BASE_LEADING_CODE_P.
11183 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
11184 the same as RE_MULTIBYTE_P (bufp) now.
11185 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
11186 (TARGET_CHAR_AND_LENGTH): Delete this macro.
11187 (TRANSLATE_VIA_MULTIBYTE): New macro.
11188 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
11189 It is the same as RE_MULTIBYTE_P (bufp) now.
11190 <exactn>: Translate via multibyte.
11191 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
11192 translate it.
11193 <charset, charset_not>: Fetch a character by
11194 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
11195 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
11196 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
11197 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
11198 by GET_CHAR_AFTER.
11199 (bcmp_translate): Likewise.
11200
11201 * search.c (compile_pattern): Check the member target_multibyte,
11202 not the member multibyte of buf.
11203
11204 * lread.c (read1): While reading a string, set force_singlebyte
11205 and force_multibyte correctly.
11206
11207 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
11208 up of unibyte_to_multibyte_table.
11209
112102008-02-01 Kenichi Handa <handa@m17n.org>
11211
11212 * coding.c (setup_coding_system): If coding has
11213 post-read-conversion or pre-write-conversion, set
11214 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
11215 respectively.
11216 (decode_coding_gap): Run post-read-conversion if any.
11217
11218 * fileio.c (Finsert_file_contents): Even if we read into a
11219 unibyte buffer, check if we must decode the result or not.
11220
112212008-02-01 Kenichi Handa <handa@m17n.org>
11222
11223 * coding.c (make_conversion_work_buffer): Change the work buffer
11224 name to the same one as that of Emacs 21.
11225
112262008-02-01 Kenichi Handa <handa@m17n.org>
11227
11228 * coding.h (make_conversion_work_buffer): Adjust prototype.
11229 (code_conversion_restore): Don't extern it.
11230
11231 * coding.c (detected_mask): Delete unused variable.
11232 (decode_coding_iso_2022): Pay attention to the byte sequence of
11233 CTEXT extended segment, and retain those bytes as is.
11234 (decode_coding_ccl): Delete unused variable `valids'.
11235 (setup_coding_system): Delete unused variable `category'.
11236 (consume_chars): Delete unused variable `category'. Make it work
11237 for non-multibyte case.
11238 (make_conversion_work_buffer): Change argument.
11239 (saved_coding): Delete unused variable.
11240 (code_conversion_restore): Don't check saved_coding->destination.
11241 (code_conversion_save): New function.
11242 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
11243 instead of record_unwind_protect.
11244 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
11245 (detect_coding_system): Delete unused variable `mask'.
11246 (Fdefine_coding_system_internal): Delete unused variable id.
11247
11248 * fileio.c (kill_workbuf_unwind): New function.
11249 (Finsert_file_contents): On replacing, call
11250 make_conversion_work_buffer with correct args, and call
11251 record_unwind_protect with the first arg kill_workbuf_unwind.
11252
11253 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
11254
112552008-02-01 Kenichi Handa <handa@m17n.org>
11256
11257 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
11258 (fontset_add): Fix for the case that TO is less than TO1.
11259 (Ffontset_info): Don't use fallback fontset on checking the
11260 default fontset.
11261 (dump_fontset): New function for debugging.
11262
11263 * coding.c (Fdefine_coding_system_internal): Fix for the case that
11264 coding_type is Qcharset.
11265
112662008-02-01 Kenichi Handa <handa@m17n.org>
11267
11268 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
11269 (map_char_table): Don't inherit the value from the parent on
11270 initializing VAL. Adjust for the above change.
11271
112722008-02-01 Kenichi Handa <handa@m17n.org>
11273
11274 * coding.c (Qsignature, Qendian): Delete these variables.
11275 (syms_of_coding): Don't initialize them.
11276 (CATEGORY_MASK_UTF_16_AUTO): New macro.
11277 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
11278 detect_info->found.
11279 (decode_coding_utf_16): Don't detect BOM here.
11280 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
11281 is NOT utf_16_without_bom.
11282 (setup_coding_system): For a coding system of type utf-16, check
11283 if the attribute :endian is Qbig or not (not nil or not), and set
11284 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
11285 (detect_coding): If coding type is utf-16 and BOM detection is
11286 required, detect it.
11287 (Fdefine_coding_system_internal): For a coding system of type
11288 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
11289
112902008-02-01 Kenichi Handa <handa@m17n.org>
11291
11292 * coding.c (coding_set_source): Fix for the case that the current
11293 buffer is different from coding->src_object.
11294 (decode_coding_object): Don't use the conversion work buffer if
11295 DST_OBJECT is a buffer.
11296
112972008-02-01 Dave Love <fx@gnu.org>
11298
11299 * lread.c (read_emacs_mule_char) [len==2]: Index
11300 emacs_mule_charset correctly.
11301
113022008-02-01 Dave Love <fx@gnu.org>
11303
11304 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
11305 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
11306 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
11307 treated specially.)
11308 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
11309 (detected_mask): Remove Big5 bits.
11310
113112008-02-01 Kenichi Handa <handa@m17n.org>
11312
11313 The following changes are to make the font rescaling facility
11314 compatible with Emacs 21.
11315
11316 * xfaces.c (Vface_font_rescale_alist): Rename from
11317 Vface_resizing_fonts.
11318 (struct font_name): Rename member resizing_ratio to rescale_ratio.
11319 (font_rescale_ratio): Rename from font_resizing_ratio.
11320 (split_font_name): Set font->rescale_ratio.
11321 (better_font_p): Pay attention to font->rescale_ratio.
11322 (build_scalable_font_name): Likewise. Change RESX, and RESY
11323 fields.
11324 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
11325
113262008-02-01 Kenichi Handa <handa@m17n.org>
11327
11328 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
11329 (Qutf_16_le): Remove these variables.
11330 (syms_of_coding): Don't DEFSYM them.
11331 (decode_coding_utf_16): Fix handling of BOM.
11332 (encode_coding_utf_16): Fix handling of BOM.
11333
113342008-02-01 Kenichi Handa <handa@m17n.org>
11335
11336 * fileio.c (Finsert_file_contents): On replacing, before decoding
11337 the file into the work buffer, set point of the work buffer to the end.
11338
113392008-02-01 Dave Love <fx@gnu.org>
11340
11341 * coding.c (Fcheck_coding_systems_region): Fix type errors.
11342
113432008-02-01 Dave Love <fx@gnu.org>
11344
11345 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11346 and fix C types.
11347
113482008-02-01 Kenichi Handa <handa@m17n.org>
11349
11350 * xdisp.c (SKIP_GLYPHS): New macro.
11351 (set_cursor_from_row): Pay attention to string display properties.
11352
11353 * category.c (copy_category_entry): Fix for the case that RANGE
11354 is an integer.
11355
11356 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
11357
11358 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
11359
113602008-02-01 Kenichi Handa <handa@m17n.org>
11361
11362 * charset.c (Fcharset_id_internal): New function.
11363 (syms_of_charset): Defsubr it.
11364
11365 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
11366 with the last arg charset_list acquired from coding.
11367 (Fdefine_coding_system_internal): For ccl-based coding system, fix
11368 the attribute coding_attr_ccl_valids.
11369
11370 * coding.h (enum define_coding_ccl_arg_index): Set the first
11371 member coding_arg_ccl_decoder to coding_arg_max.
11372
11373 * ccl.h (ccl_driver): Adjust prototype.
11374
11375 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
11376 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 11377 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
11378 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
11379 last arg Qnil.
11380
113812008-02-01 Kenichi Handa <handa@m17n.org>
11382
11383 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
11384 call encode_char.
11385
11386 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
11387
113882008-02-01 Dave Love <fx@gnu.org>
11389
11390 * composite.c (syms_of_composite): Make composition_hash_table weak.
11391
113922008-02-01 Kenichi Handa <handa@m17n.org>
11393
11394 * dispextern.h (check_face_attributes, generate_ascii_font_name)
11395 (font_name_registry): Don't extern them.
11396 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
11397
11398 * fontset.h (Qfontset): Don't extern it.
11399 (new_fontset_from_font_name): Extern it.
11400
11401 * fontset.c: Give 8 extra slots to fontset objects.
11402 (Qfontset_info): New variable.
11403 (syms_of_fontset): Defsym it.
11404 (FONTSET_FALLBACK): New macro.
11405 (fontset_face): Try also the default fontset.
11406 (make_fontset): Realize a fallback fontset from the default fontset.
11407 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
11408 using split_font_name_into_vector and build_font_name_from_vector.
11409 (Fset_fontset_font): Access the elements of font_spec by enum
11410 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
11411 name by using split_font_name_into_vector.
11412 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
11413 generate a proper font name from the fontset name. Update
11414 Vfontset_alias_alist.
11415 (n_auto_fontsets): New variable.
11416 (new_fontset_from_font_name): New function.
11417 (Ffont_info): Store the information about fonts generated from the
11418 default fontset in the first extra slot of the returned char-table.
11419
11420 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
11421 (font_name_registry): Delete function.
11422 (split_font_name_into_vector): New function.
11423 (build_font_name_from_vector): New function.
11424 (font_list): The argument REGISTRY is now a list of registry names.
11425 (choose_face_font): If we are choosing an ASCII font, and ATTRS
11426 specifies an explicit font name, return the name as is. Make a
11427 list of registy names.
11428
11429 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
11430 of x_new_fontset.
11431 (Fx_create_frame): Don't call x_new_fontset here. Just use
11432 x_list_fonts to check the existence of fonts.
11433
11434 * xterm.h (x_new_fontset): Adjust prototype.
11435
11436 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
11437 string. Use new_fontset_from_font_name to create a fontset from a
11438 font name.
11439
114402008-02-01 Kenichi Handa <handa@m17n.org>
11441
11442 * syntax.c (Vfind_word_boundary_function_table): New name for
11443 Vnext_word_boundary_function_table.
11444 (find-word-boundary-function-table): New name for
11445 next-word-boundary-function-table.
11446
114472008-02-01 Dave Love <fx@gnu.org>
11448
11449 * Makefile.in: Fix some dependencies.
11450
11451 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
11452 set it to nil before returning.
11453
11454 * composite.c (update_compositions): Fix type error.
11455
11456 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
11457
114582008-02-01 Kenichi Handa <handa@m17n.org>
11459
11460 * xterm.c (x_new_font): Optimize for the case that the font is
11461 already set for the frame.
11462
114632008-02-01 Kenichi Handa <handa@m17n.org>
11464
11465 * chartab.c (char_table_ascii): Check if the char table contents
11466 is sub-char-table or not.
11467 (char_table_set, char_table_set_range): Fix argument to
11468 char_table_ascii.
11469
11470 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
11471 (detect_coding_utf_8, detect_coding_utf_16)
11472 (detect_coding_emacs_mule, detect_coding_iso_2022)
11473 (detect_coding_sjis, detect_coding_big5)
11474 (detect_coding_ccl, detect_coding_charset): Change argument MASK
11475 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
11476 sequence is valid in this coding system. Change callers.
11477 (MAX_ANNOTATION_LENGTH): New macro.
11478 (ADD_ANNOTATION_DATA): New macro.
11479 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
11480 ADD_ANNOTATION_DATA. Change the format of annotation data.
11481 (ADD_CHARSET_DATA): New macro.
11482 (emacs_mule_char): New argument ID. Change callers.
11483 (decode_coding_emacs_mule, decode_coding_iso_2022)
11484 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11485 Produce charset annotation data in coding->charbuf.
11486 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
11487 to charset annotation data in coding->charbuf.
11488 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
11489 coding->common_flags if the coding system is iso-2022 based and
11490 uses designation.
11491 (produce_composition): Adjust for the new annotation data format.
11492 (produce_charset): New function.
11493 (produce_annotation): Handle charset annotation.
11494 (handle_composition_annotation, handle_charset_annotation): New
11495 functions.
11496 (consume_chars): Handle charset annotation. Utilize the above two
11497 functions.
11498 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
11499 buffer, get the deleted text as a string and set
11500 coding->src_object to that string.
11501 (detect_coding, detect_coding_system): Use the new struct
11502 coding_detection_info.
11503
11504 * coding.h (struct coding_detection_info): New structure.
11505 (struct coding_system): Adjust prototype of the member `detector'.
11506 (CODING_ANNOTATE_CHARSET_MASK): New macro.
11507
115082008-02-01 Kenichi Handa <handa@m17n.org>
11509
11510 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
11511
115122008-02-01 Dave Love <fx@gnu.org>
11513
11514 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
11515 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
11516 to new local and nullify apropos_accumulate before returning.
11517 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
11518
115192008-02-01 Kenichi Handa <handa@m17n.org>
11520
11521 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
11522 correctly.
e3eea1fc 11523
aac0c6e3
MR
115242008-02-01 Dave Love <fx@gnu.org>
11525
11526 * fns.c (Flanginfo): Call synchronize_system_time_locale.
11527
115282008-02-01 Kenichi Handa <handa@m17n.org>
11529
11530 The following changes are to make character composition happen
11531 automatically on displaying.
11532
11533 * Makefile.in (lisp, shortlisp): Add composite.elc.
11534
11535 * composite.h (Qauto_composed, Vauto_composition_function)
11536 (Qauto_composition_function): Extern them.
11537
11538 * composite.c (Vcomposition_function_table)
11539 (Qcomposition_function_table): Delete variables.
11540 (Qauto_composed, Vauto_composition_function)
11541 (Qauto_composition_function): New variables.
11542 (run_composition_function): Don't call
11543 compose-chars-after-function.
11544 (update_compositions): Clear `auto-composed' text property.
11545 (compose_chars_in_text): Delete this function.
11546 (syms_of_composite): Staticpro Qauto_composed and
11547 Qauto_composition_function. Declare Vauto_composition_function as
11548 a Lisp variable.
11549
11550 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
11551
11552 * xdisp.c (it_props): Add an entry for Qauto_composed.
11553 (handle_auto_composed_prop): New function.
11554
11555 * xselect.c (selection_data_to_lisp_data): Don't call
11556 compose_chars_in_text.
11557
115582008-02-01 Dave Love <fx@gnu.org>
11559
11560 * keyboard.c (read_char): Modify checking around use of
11561 Vkeyboard_translate_table.
11562
11563 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11564 and fix C types.
11565
115662008-02-01 Kenichi Handa <handa@m17n.org>
11567
11568 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
11569 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11570 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
11571 the case that the last byte is '\r' correctly.
11572 (decode_coding): Flush out the unprocessed data correctly.
11573 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
11574
115752008-02-01 Dave Love <fx@gnu.org>
11576
11577 * xterm.c (XTread_socket): Fix changes for defined keysyms.
11578 Add XK_ISO... case.
11579 (xaw_scroll_callback): Revert last change.
11580
115812008-02-01 Kenichi Handa <handa@m17n.org>
11582
11583 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
11584
115852008-02-01 Kenichi Handa <handa@m17n.org>
11586
11587 * xfaces.c (Vface_resizing_fonts): New variable.
11588 (struct font_name): New member `resizing_ratio'.
11589 (font_resizing_ratio): New function.
11590 (split_font_name): Set font->resizing_ratio.
11591 (better_font_p): Pay attention to font->resizing_ratio.
11592 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
11593 RESX, and RESY fields.
11594 (try_alternative_families): Try scalable fonts if
11595 Vscalable_fonts_allowed is not Qt.
11596 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
11597
115982008-02-01 Dave Love <fx@gnu.org>
11599
11600 * xterm.c (xaw_scroll_callback): Cast correctly.
11601
116022008-02-01 Dave Love <fx@gnu.org>
11603
11604 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
11605 (lispy_kana_keys): Comment out.
11606 (make_lispy_event) [XK_kana_A]: Comment out.
11607
11608 * xterm.c (xaw_scroll_callback): Cast call_data.
11609 (XTread_socket): Deal with ASCII keysyms.
11610 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
11611
116122008-02-01 Dave Love <fx@gnu.org>
11613
11614 * xterm.c (Vx_keysym_table): New.
11615 (syms_of_xterm): Initialize it.
11616 (XTread_socket): Use it.
11617 From head: Eliminate incorrect optimization that tried to avoid
11618 decoding the output of X*LookupString.
11619 (x_get_font_repertory): Delete charset declaration.
11620
116212008-02-01 Kenichi Handa <handa@m17n.org>
11622
11623 * coding.c (detect_coding_charset): If only ASCII bytes are found,
11624 return 0.
11625 (Fdefine_coding_system_internal): Setup
11626 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
11627
116282008-02-01 Dave Love <fx@gnu.org>
11629
11630 * coding.c (Fcheck_coding_system): Doc fix.
11631
11632 * editfns.c (Finsert_byte): Return a proper value.
11633
116342008-02-01 Kenichi Handa <handa@m17n.org>
11635
11636 * coding.c (decode_coding): Fix args to translate_chars. Pay
11637 attention to Vstandard_translation_table_for_decode.
11638 (encode_coding): Fix args to translate_chars. Pay attention to
11639 Vstandard_translation_table_for_encode.
11640
11641 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
11642 SINGLE_BYTE_CHAR_P.
11643
11644 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
11645 not by SINGLE_BYTE_CHAR_P.
11646
11647 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
11648 SINGLE_BYTE_CHAR_P.
11649
11650 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
11651 SINGLE_BYTE_CHAR_P.
11652
11653 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
11654 by SINGLE_BYTE_CHAR_P.
11655
11656 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
11657 SINGLE_BYTE_CHAR_P.
11658
116592008-02-01 Dave Love <fx@gnu.org>
11660
11661 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
11662
116632008-02-01 Dave Love <fx@gnu.org>
11664
11665 * fns.c (Flanginfo): Fix typo.
11666
11667 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
11668
116692008-02-01 Kenichi Handa <handa@m17n.org>
11670
11671 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
11672 (detect_coding_emacs_mule, detect_coding_iso_2022)
11673 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
11674 incomplete byte sequence. Don't update *mask when correctly detected.
11675 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
11676 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
11677 (detect_coding, detect_coding_system): Adjust for the changes above.
11678
116792008-02-01 Kenichi Handa <handa@m17n.org>
11680
11681 * character.c (char_string): Rename from
11682 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
11683 (string_char): Rename from string_char.
11684
11685 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
11686 if C is greater than MAX_3_BYTE_CHAR.
11687 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
11688 string_char instead of string_char_with_unification.
11689
116902008-02-01 Dave Love <fx@gnu.org>
11691
11692 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
11693
116942008-02-01 Kenichi Handa <handa@m17n.org>
11695
11696 * keymap.c (push_key_description): Pay attention to force_multibyte.
11697
11698 * regex.c (re_search_2): Fix for the case of unibyte buffer.
11699
117002008-02-01 Dave Love <fx@gnu.org>
11701
11702 * charset.c (define_charset_internal): Rename `supprementary'.
11703
11704 * Makefile.in (lisp, shortlisp): Remove latin-N.
11705
117062008-02-01 Dave Love <fx@gnu.org>
11707
11708 * xfns.c (x_window, x_window): Use use_xim.
11709
11710 * xterm.c (use_xim): Initialize.
11711 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11712 (x_term_init): Maybe set use_xim.
11713
11714 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11715
117162008-02-01 Kenichi Handa <handa@m17n.org>
11717
11718 * search.c (search_buffer): Fix case-fold-search of multibyte
11719 characters.
11720 (boyer_moore): Rename the last argument to char_high_bits.
11721
117222008-02-01 Kenichi Handa <handa@m17n.org>
11723
11724 * xdisp.c (display_string): Fix for the case of zero width glyph.
11725
11726 * xfns.c (x_set_font): Change the error message of the case that
11727 x_new_fontset returns Qt.
11728
11729 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
11730 (Finternal_set_lisp_face_attribute): Use signal_error for the
11731 error of invalid fontset.
11732
11733 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
11734 fontset, return Qt.
11735
117362008-02-01 Dave Love <fx@gnu.org>
11737
11738 * unexelf.c (unexec): Make .got handling not SGI-specific.
11739
11740 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
11741
11742 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
11743
11744 * keyboard.c (read_key_sequence): Fix type error.
11745
11746 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
11747 type error.
11748
11749 * fontset.c (fontset_add): Return Lisp_Object.
11750
117512008-02-01 Dave Love <fx@gnu.org>
11752
11753 * charset.h (charset_ordered_list_tick): Declare extern.
11754
117552008-02-01 Kenichi Handa <handa@m17n.org>
11756
11757 The following changes (and some of 2008-02-01 changes of mine) are
11758 for handling syntax, category, and case conversion for unibyte
11759 characters by converting them to multibyte on the fly. With these
11760 changes, we don't have to setup syntax and case tables for unibyte
11761 characters in each language environment.
11762
11763 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
11764 multibyte if necessary.
11765
11766 * bytecode.c (Fbyte_code): Likewise.
11767
11768 * character.h (LEADING_CODE_LATIN_1_MIN)
11769 (LEADING_CODE_LATIN_1_MAX): New macros.
11770 (unibyte_to_multibyte_table): Extern it.
11771 (unibyte_char_to_multibyte): New macro.
11772 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
11773 (CHAR_LEADING_CODE): New macro.
11774 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
11775
11776 * character.c (unibyte_to_multibyte_table): New variable.
11777 (unibyte_char_to_multibyte): Move to character.h and define as macro.
11778 (multibyte_char_to_unibyte): If C is an eight-bit character,
11779 convert it to the corresponding byte value.
11780
11781 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
11782 not 1, signals an error. Update the elements of
11783 unibyte_to_multibyte_table.
11784 (init_charset_once): Initialize unibyte_to_multibyte_table.
11785 (syms_of_charset): Define the charset `iso-8859-1'.
11786
11787 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
11788 as is without converting it to unibyte. In a unibyte buffer,
11789 convert C to multibyte before checking the syntax.
11790
11791 * lisp.h (unibyte_char_to_multibyte): Delete extern.
11792
11793 * minibuf.c (Fminibuffer_complete_word): Use the macro
11794 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
11795
11796 * regex.h (struct re_pattern_buffer): New member target_multibyte.
11797
11798 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
11799 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
11800 that is zero, convert an eight-bit char to multibyte.
11801 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
11802 non-emacs case.
11803 (PATFETCH): Convert an eight-bit char to multibyte.
11804 (HANDLE_UNIBYTE_RANGE): New macro.
11805 (regex_compile): Setup the compiled pattern for multibyte chars
11806 even if the given regex string is unibyte. Use PATFETCH_RAW
11807 instead of PATFETCH in many places. To handle `charset'
11808 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
11809 only for ASCII chars.
11810 (analyse_first) <exactn>: Simplify because the compiled pattern
11811 is multibyte.
11812 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
11813 <charset>: Use CHAR_LEADING_CODE to get leading codes.
11814 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
11815 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
11816 multibyte always 1.
11817 (re_search_2): In emacs, set the locale variable multibyte to 1,
11818 otherwise to 0. New local variable target_multibyte. Check it
11819 to decide the multibyteness of STR1 and STR2. If
11820 target_multibyte is zero, convert unibyte chars to multibyte
11821 before translating and checking fastmap.
11822 (TARGET_CHAR_AND_LENGTH): New macro.
11823 (re_match_2_internal): In emacs, set the locale variable multibyte
11824 to 1, otherwise to 0. New local variable target_multibyte. Check
11825 it to decide the multibyteness of STR1 and STR2. Use
11826 TARGET_CHAR_AND_LENGTH to fetch a character from D.
11827 <charset, charset_not>: If multibyte is nonzero, check fastmap
11828 only for ASCII chars. Call bcmp_translate with
11829 target_multibyte, not with multibyte.
11830 <begline>: Declare the local variable C as `unsigned'.
11831 (bcmp_translate): Change the last arg name to target_multibyte.
11832
11833 * search.c (compile_pattern_1): Don't adjust the multibyteness of
11834 the regexp pattern and the matching target. Set cp->buf.multibyte
11835 to the multibyteness of the regexp pattern. Set
11836 cp->but.target_multibyte to the multibyteness of the matching target.
11837 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
11838 FETCH_STRING_CHAR_ADVANCE.
11839 (Freplace_match): Convert unibyte chars to multibyte.
11840
11841 * syntax.c (char_quoted, back_comment, scan_words)
11842 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
11843 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
11844 unibyte chars to multibyte.
11845 (skip_chars): Delete the arg syntaxp, and move the code for
11846 handling syntaxes to skip_syntaxes. Change callers.
11847 Fix the case that the multibyteness of STRING and the current
11848 buffer doesn't match.
11849 (skip_syntaxes): New function.
11850 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
11851 SINGLE_BYTE_CHAR_P.
11852
118532008-02-01 Kenichi Handa <handa@m17n.org>
11854
11855 * xfaces.c (QCfontset): New variable.
11856 (LFACE_FONTSET): New macro.
11857 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
11858 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
11859 (Finternal_set_lisp_face_attribute)
11860 (Finternal_get_lisp_face_attribute): Handle QCfontset.
11861 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
11862 check also LFACE_FONTSET_INDEX.
11863 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
11864 attrs[LFACE_FONT_INDEX].
11865 (syms_of_xfaces): Intern and staticpro QCfontset.
11866
11867 * dispextern.h (enum lface_attribute_index): New member
11868 LFACE_FONTSET_INDEX.
11869
11870 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
11871
118722008-02-01 Kenichi Handa <handa@m17n.org>
11873
11874 * coding.c (coding_set_destination): Fix coding->destination for
11875 the case converting a region.
11876 (encode_coding_utf_8): Encode eight-bit chars as single byte.
11877 (encode_coding_object): Fix coding->dst_pos and
11878 coding->dst_pos_byte for the case converting a region.
11879
11880 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
11881
11882 * character.h (BYTE8_STRING): New macro.
11883
11884 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
11885
118862008-02-01 Kenichi Handa <handa@m17n.org>
11887
11888 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
11889 characters by octal form.
11890
11891 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11892
11893 * buffer.h (_fetch_multibyte_char_len): Delete extern.
11894 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
11895 _fetch_multibyte_char_len.
11896 (FETCH_CHAR_AS_MULTIBYTE): New macro.
11897
11898 * casetab.c (set_canon, set_identity, shuffle): Simplify.
11899
11900 * casefiddle.c (casify_object): Simplify. Handle the case that
11901 the case conversion change the byte length.
11902 (casify_region): Likewise.
11903
11904 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
11905
11906 * character.c (_fetch_multibyte_char_len): Delete this variable.
11907 (syms_of_character): Setup Vprintable_chars.
11908
11909 * editfns.c (Fchar_equal): Fix for the unibyte case.
11910 (Finsert_byte): New function.
11911 (syms_of_editfns): Defsubr it.
11912
11913 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
11914 of direct code 0x3ffff.
11915
11916 * search.c (Freplace_match): Fix for the unibyte case.
11917
119182008-02-01 Kenichi Handa <handa@m17n.org>
11919
11920 * lread.c (safe_to_load_p): Fix the logic.
11921
11922 * syntax.c (scan_words): Don't treat characters belonging to
11923 different scripts as constituting a word.
11924
11925 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
11926
11927 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
11928
11929 * emacs.c (main): In the case of --unibyte, instead of aborting on
11930 finding non-empty buffer, make it unibyte.
11931
119322008-02-01 Kenichi Handa <handa@m17n.org>
11933
11934 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
11935 to create a fontset.
11936
119372008-02-01 Dave Love <fx@gnu.org>
11938
11939 * character.c (Funibyte_char_to_multibyte): Doc fix.
11940
11941 * xfns.c [HAVE_STDLIB_H]: Fix last change.
11942
119432008-02-01 Kenichi Handa <handa@m17n.org>
11944
11945 * fontset.c (fontset_add): Make the type `int'.
11946 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
11947
11948 * character.c (unibyte_char_to_multibyte)
11949 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
11950 charset_unibyte, not charset_primary.
11951
11952 * charset.h (charset_unibyte): Extern it instead of charset_primary.
11953
11954 * charset.c (charset_unibyte): Rename from charset_primary.
11955 (Funibyte_charset): Rename from Fprimary_charset.
11956 (Fset_unibyte_charset): Rename from Fset_primary_charset.
11957 (syms_of_charset): Adjust for the above changes.
11958
11959 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
11960 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
11961 it->multibyte_p is zero.
11962
11963 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
11964 Delete extern.
11965
119662008-02-01 Kenichi Handa <handa@m17n.org>
11967
11968 * coding.c (Fdefine_coding_system_internal): Fix category setting
11969 for a coding system of type iso-2022.
11970
119712008-02-01 Kenichi Handa <handa@m17n.org>
11972
11973 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
11974
119752008-02-01 Kenichi Handa <handa@m17n.org>
11976
11977 * syntax.c (Vnext_word_boundary_function_table): New variable.
11978 (next-word-boundary-function-table): Declare it as a Lisp variable
11979 in syms_of_syntax.
11980 (scan_words): Call functions in Vnext_word_boundary_function_table
11981 if any.
11982
11983 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
11984
11985 * fontset.c (fs_load_font): If fontp->charset is not negative,
11986 return fontp without setting its members.
11987
119882008-02-01 Dave Love <fx@gnu.org>
11989
11990 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
11991
11992 * m/sparc.h (HAVE_ALLOCA): Delete.
11993
11994 * s/irix6-5.h: Don't include strings.h.
11995 (bcopy, bzero, bcmp): Don't undef.
11996
11997 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
11998
11999 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
12000 (TIOCSIGSEND): Don't test IRIX6.
12001 (bcopy, bzero, bcmp): Define conditionally.
12002
120032008-02-01 Kenichi Handa <handa@m17n.org>
12004
12005 * buffer.c (Qas, Qmake, Qto): New variables.
12006 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
12007 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
12008
12009 * callproc.c (Fcall_process): Don't call insert_1_both directly if
12010 we are inserting a process output into a multibyte buffer.
12011
12012 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
12013 multibyte_char_to_unibyte.
12014
12015 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
12016 by the primary charset, make it eight-bit char.
12017 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
12018
12019 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
12020 (charset_8_bit__control, charset_8_bit_graphic)
12021 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
12022 (define_charset_internal): New function.
12023 (syms_of_charset): Call define_charset_internal for pre-defined
12024 charsets.
12025
12026 * charset.h (charset_8_bit): Extern it.
12027
12028 * coding.c (make_conversion_work_buffer): Adjust for the change
12029 of Fset_buffer_multibyte.
12030 (encode_coding_raw_text): Increment p0 in the loop.
12031
12032 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
12033
12034 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
12035 for the change of Fset_buffer_multibyte.
12036
12037 * fns.c (Fstring_to_multibyte): New function.
12038 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
12039
120402008-02-01 Dave Love <fx@gnu.org>
12041
12042 * xfns.c (x_put_x_image): Declare args.
12043
12044 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
12045 (try_font_list): Declare an arg.
12046
12047 * xdisp.c (message2_nolog, set_message): Declare an arg.
12048
12049 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
12050
12051 * syntax.c (scan_sexps_forward): Declare an arg.
12052
12053 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12054 Declare an arg.
12055
12056 * lisp.h (Fnew_fontset): Declare.
12057
12058 * keymap.c (push_key_description): Call CHARACTERP correctly.
12059
12060 * fontset.c (fontset_add): Declare args. Call make_number correctly.
12061 (face_for_char): Delete unused vars.
12062 (Fset_fontset_font): Doc fix. Delete unused vars.
12063
12064 * doc.c (Fsubstitute_command_keys): Delete unused vars.
12065
12066 * composite.c (update_compositions): Declare arg.
12067
12068 * cm.c (calccost, cmgoto): Declare args.
12069
12070 * charset.c: Remove `emacs' conditional. Doc fixes.
12071 (map_char_table_for_charset): Declare.
12072
12073 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
12074
12075 * ccl.c: Remove `emacs' conditional.
12076
120772008-02-01 Kenichi Handa <handa@m17n.org>
12078
12079 The following changes are to allow specifying multiple font
12080 patterns for a character range (specified by script or charset).
12081
12082 * Makefile.in (abbrev.o): Depend on syntax.h.
12083 (xfaces.o): Depend on charset.h.
12084
12085 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
12086 SINGLE_BYTE_CHAR_P.
12087
12088 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
12089
12090 * character.h (Vchar_script_table): Extern it.
12091
12092 * character.c (Vscript_alist): Delete.
12093 (Vchar_script_table, Qchar_script_table): New variable.
12094 (syms_of_character): Declare Vchar_script_table as a lisp variable
12095 and initialize it.
12096
12097 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
12098 have property char-table-extra-slots, make no extra slot.
12099
12100 * dispextern.h (struct face): Delete member `charset'.
12101 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
12102 SINGLE_BYTE_CHAR_P.
12103 (choose_face_font, lookup_non_ascii_face, font_name_registry):
12104 Add prototypes.
12105 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
12106 (generate_ascii_font_name): Rename from generate_ascii_font.
12107
12108 * fontset.h (get_font_repertory_func): New prototype.
12109 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
12110 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
12111
12112 * fontset.c (Qprepend, Qappend): New variables.
12113 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
12114 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
12115 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
12116 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
12117 (fontset_ref_and_range, fontset_add, reorder_font_vector)
12118 (load_font_get_repertory): New functions.
12119 (fontset_set): Delete.
12120 (fontset_face): New arg FACE. Return face ID, not face.
12121 Complete re-write to handle new fontset structure. Change caller.
12122 (free_face_fontset): Use ASET istead of AREF (X) = Y.
12123 (face_for_char): Don't call lookup_face.
12124 (make_fontset_for_ascii_face): New arg FACE.
12125 (fs_load_font): New arg CHARSET_ID. Don't check
12126 Vfont_encoding_alist here.
12127 (find_font_encoding): New function.
12128 (list_fontsets): Use STRINGP, not ! NILP.
12129 (accumulate_script_ranges): New function.
12130 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
12131 re-written to handle new fontset structure.
12132 (Ffontset_font): Return a copy of element.
12133 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
12134 docstring of font-encoding-alist.
12135
12136 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
12137 (Fset_fotset_font): Fix arguments to 5.
12138
12139 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
12140
12141 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
12142 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12143 (highlight_trailing_whitespace): Adjust for the change of
12144 lookup_named_face.
12145
12146 * xfaces.c: Include charset.h.
12147 (load_face_font): Delete argument C. Change caller.
12148 (generate_ascii_font_name): Rename from generate_ascii_font.
12149 (font_name_registry): New function.
12150 (cache_face): Store ascii faces before non-ascii faces in buckets.
12151 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
12152 Lookup only ascii faces.
12153 (lookup_non_ascii_face): New function.
12154 (lookup_named_face): Delete argument C. Change caller.
12155 (lookup_derived_face): Delete argument C. Change caller.
12156 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
12157 a string, just call font_list with it.
12158 (choose_face_font): Delete arguments FACE and C. New arg
12159 FONT_SPEC. Change caller.
12160 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
12161 Change caller.
12162 (realize_non_ascii_face): New function.
12163 (realize_x_face): Call load_face_font here.
12164 (realize_tty_face): Delete argument C. Change caller.
12165 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
12166 get a face ID.
12167 (dump_realized_face): Don't print charset of FACE.
12168
12169 * xfns.c (x_set_font): Always call x_new_fontset and
12170 store_frame_parameter.
12171 (Fx_create_frame): Call x_new_fontset, not x_new_font.
12172 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
12173
12174 * xterm.h (x_get_font_repertory): Extern it.
12175
12176 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12177 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12178 it->multibyte_p is zero.
12179 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12180 (x_new_fontset): If FONTSETNAME doesn't match any existing
12181 fontsets, create a new one.
12182 (x_get_font_repertory): New function.
12183
121842008-02-01 Kenichi Handa <handa@m17n.org>
12185
12186 * coding.c (Ffind_coding_systems_region_internal): Detect an
12187 ASCII only string correctly.
12188
12189 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
12190 version is 0.
12191
121922008-02-01 Kenichi Handa <handa@m17n.org>
12193
12194 * lread.c: Include "coding.h".
12195 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
12196 (load_each_byte, unread_char): New variables.
12197 (readchar_backlog): Delete.
12198 (readchar): Return a character unless load_each_byte is nonzero.
12199 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
12200 cons. If unread_char is not -1, simply return it.
12201 (unreadchar): Handle the case that readcharfun is
12202 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
12203 (read_multibyte): Delete.
12204 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
12205 (read_emacs_mule_char): New functions.
12206 (Fload): Even if the file doesn't have the extension ".elc", if
12207 safe_to_load_p returns a positive version number, assume that the
12208 file contains bytecompiled code. If the version is less than 22,
12209 load the file while decoding multibyte sequences by emacs-mule.
12210 (readevalloop): Don't use readchar_backlog.
12211 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
12212 (Fread_from_string): Pay attention to the case that STREAM is a cons.
12213 (read_escape): Delete the arg BYTEREP.
12214 (read1): Set load_each_byte to 1 temporarily while handling
12215 #@NUMBER. Don't call read_multibyte.
12216 (read_vector): Call Fread with a cons. If readcharfun is
12217 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
12218 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
12219 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
12220 and Qload_force_doc_strings.
12221
122222008-02-01 Kenichi Handa <handa@m17n.org>
12223
12224 * xdisp.c (face_before_or_after_it_pos): Call
12225 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12226
122272008-02-01 Kenichi Handa <handa@m17n.org>
12228
12229 * character.h (TRAILING_CODE_P): New macro.
12230 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
12231 (string_char_with_unification): Fix prototype.
12232 (Vscript_alist): Extern it.
12233
12234 * character.c (Vscript_alist): New variable.
12235 (string_char_with_unification, str_as_unibyte)
12236 (string_escape_byte8): Add `const' to local variables.
12237 (syms_of_character): Declare script-alist as a Lisp variable.
12238
12239 * charset.h (Vcharset_ordered_list): Extern it.
12240 (charset_ordered_list_tick): Extern it.
12241 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
12242 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
12243 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
12244 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
12245 (Funify_charset): Adjust for the change of Funify_charset.
12246
12247 * charset.c (charset_ordered_list_tick): New variable.
12248 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
12249 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
12250 deunify intead of unify a charset.
12251 (string_xstring_p): Add `const' to local variables.
12252 (find_charsets_in_text): Add `const' to arguments and local variables.
12253 (encode_char): Adjust for the change of Funify_charset. Fix
12254 detecting of invalid code.
12255 (Fset_charset_priority): Increment charset_ordered_list_tick.
12256 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
12257 and TO_CODE.
12258
12259 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
12260 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
12261 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
12262 (decode_coding_ccl, consume_chars)
12263 (Ffind_coding_systems_region_internal)
12264 (Fcheck_coding_systems_region): Add `const' to local variables.
12265
12266 * print.c (print_object): Use octal form for printing the
12267 contents of a bool vector.
12268
122692008-02-01 Dave Love <fx@gnu.org>
12270
12271 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
12272 <version == 20>: Refuse to load.
12273
122742008-02-01 Dave Love <fx@gnu.org>
12275
12276 * fns.c: Move coding.h.
12277 (Qcodeset, Qdays, Qmonths): New.
12278 (concat): Use CHARACTERP instead of INTEGERP.
12279 (Flocale_codeset): Delete.
12280 (Flanginfo): New function.
12281 (syms_of_fns): Change accordingly.
12282
12283 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
12284
122852008-02-01 Dave Love <fx@gnu.org>
12286
12287 * casetab.c (init_casetab_once, init_casetab_once): Fix
12288 CHAR_TABLE_SET call.
12289
12290 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
12291
12292 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
12293
12294 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
12295 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
12296 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
12297
12298 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
12299
12300 * coding.c (ENCODE_DESIGNATION, decode_eol)
12301 (make_conversion_work_buffer, code_conversion_restore)
12302 (Fdefine_coding_system_internal): Convert Lisp types.
12303 (code_conversion_restore): Use EQ, not ==.
12304 (Fencode_coding_string): Fix code_convert_string call.
12305
12306 * coding.h (code_convert_region): Fix prototype.
12307
12308 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
12309
12310 * fontset.c (fontset_ref, fontset_set, fs_load_font)
12311 (Ffontset_info): Convert Lisp types.
12312
12313 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
12314
12315 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
12316
12317 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
12318
12319 * chartab.c: Include "...h", not <...h> in some cases.
12320
12321 * callproc.c (Fcall_process): Remove unused variables.
12322
123232008-02-01 Dave Love <fx@gnu.org>
12324
12325 * coding.c (Fset_coding_system_priority): Allow null arg list.
12326
123272008-02-01 Dave Love <fx@gnu.org>
12328
12329 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12330 (Fself_insert_and_exit): Use CHARACTERP.
12331
12332 * callproc.c (Fcall_process): Remove unused vars.
12333
12334 * xterm.c (XTread_socket): Add extra dead keysyms.
12335
12336 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
12337
12338 * dispextern.h: Remove prototypes for redraw_frame,
12339 redraw_garbaged_frames.
12340
12341 * cmds.c (Fself_insert_command): Use CHARACTERP.
12342
12343 * chartab.c (make_sub_char_table): Remove unused var.
12344 (Fset_char_table_default, Fmap_char_table): Doc fix.
12345
12346 * keymap.c (access_keymap): Remove generic char code.
12347 (push_key_description): Use CHARACTERP.
12348
123492008-02-01 Dave Love <fx@gnu.org>
12350
12351 * charset.c: Doc fixes.
12352 (Funify_charset): Extra checking.
12353
123542008-02-01 Dave Love <fx@gnu.org>
12355
12356 * lread.c: Remove some unused variables.
12357 (safe_to_load_p): If safe, return the magic number version byte.
12358 (Fload): Maybe use load-with-code-conversion.
12359
123602008-02-01 Kenichi Handa <handa@m17n.org>
12361
12362 * category.c (Fmodify_category_entry): Don't modify the contents
12363 of category_set for characters out of the range. Avoid
12364 unnecessary modification.
12365
12366 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
12367 Vchar_unify_table. The default value of the table is now nil.
12368
12369 * character.c (syms_of_character): Setup Vchar_width_table for
12370 eight-bit-control and raw-byte chars.
12371
12372 * charset.h (enum define_charset_arg_index): Delete
12373 charset_arg_parents and add charset_arg_subset and
12374 charset_arg_superset.
12375 (enum charset_attr_index): Delete charset_parents and add
12376 charset_subset and charset_superset.
12377 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
12378 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
12379 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
12380 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
12381 (CHARSET_SUPERSET): New macros.
12382 (charset_work): Extern it.
12383 (ENCODE_CHAR): Use charset_work.
12384 (CHAR_CHARSET_P): Adjust for the change of encoder format.
12385 (map_charset_chars): Extern it.
12386
12387 * charset.c (load_charset_map): Set the default value of encoder
12388 and deunifier char-tables to nil.
12389 (map_charset_chars): Change argument. Change callers. Use
12390 map_char_table_for_charset instead of map_char_table.
12391 (Fmap_charset_chars): New optional args from_code and to_code.
12392 (Fdefine_charset_internal): Adjust for the change of
12393 `define-charset' (:parents -> :subset or :superset).
12394 (charset_work): New variable.
12395 (encode_char, syms_of_charset): Adjust for the change of
12396 Fdefine_charset_internal.
12397 (Ffind_charset_string): Setup the vector `charsets' correctly.
12398
12399 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
12400 the previous change.
12401 (char_table_ref_and_range): Adjust for the above change.
12402 (map_sub_char_table_for_charset): New function.
12403 (map_char_table_for_charset): New function.
12404
12405 * keymap.c (describe_vector): Handle a char-table directly here.
12406 (describe_char_table): Delete.
12407
12408 * lisp.h (map_charset_chars): Delete.
12409
124102008-02-01 Dave Love <fx@gnu.org>
12411
12412 * fns.c (count_combining): Comment out (unused).
12413 (Flocale_codeset): New.
12414 (syms_of_fns): Defsubr it.
12415
12416 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
12417 (size_t): Remove.
12418
124192008-02-01 Dave Love <fx@gnu.org>
12420
12421 * Makefile.in (chartab.o): Depend on charset.h.
12422
124232008-02-01 Kenichi Handa <handa@m17n.org>
12424
12425 * character.c (syms_of_character): Set the default value of
12426 Vprintable_chars to Qnil.
12427
124282008-02-01 Dave Love <fx@gnu.org>
12429
12430 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
12431
124322008-02-01 Kenichi Handa <handa@m17n.org>
12433
12434 * charset.c (load_charset_map): Handle the case that from < to
12435 correctly.
12436
12437 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
12438 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
12439 Pay attention to raw-8-bit chars.
12440
124412008-02-01 Kenichi Handa <handa@m17n.org>
12442
12443 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
12444 It is not bytecompiled now.
12445
12446 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
12447 (charset_jisx0208): New variables.
12448 (Fdefine_charset_internal): Setup them if appropriate.
12449 (init_charset_once): Initialize them to -1.
12450
12451 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
12452 (charset_jisx0208): Extern them.
12453
12454 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
12455 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
12456 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
12457 (setup_iso_safe_charsets): Fix arguments to Fassq.
12458 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
12459 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
12460 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
12461 (encode_coding_iso_2022): Change the 1st arg to
12462 ENCODE_ISO_CHARACTER to a variable.
12463
124642008-02-01 Kenichi Handa <handa@m17n.org>
12465
12466 * charset.h (enum define_charset_arg_index): New enums
12467 charset_arg_min_code and charset_arg_max_code.
12468 (struct charset): New member char_index_offset.
12469
12470 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
12471 Take charset->char_index_offset into account.
12472 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
12473 args[charset_arg_max_code]. Setup charset.char_index_offset.
12474 (syms_of_charset): Fix args to Fdefine_charset_internal.
12475
124762008-02-01 Dave Love <fx@gnu.org>
12477
12478 * coding.c (decode_coding_utf_8): Reject overlong sequences.
12479
124802008-02-01 Dave Love <fx@gnu.org>
12481
12482 * coding.c: Doc fixes.
12483 (Fcoding_system_aliases): Fix return value.
12484 (Qmac): Remove (duplicated) definition.
12485
124862008-02-01 Dave Love <fx@gnu.org>
12487
12488 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
12489 functions.
12490
12491 * character.c (Fstring): Doc fix.
12492
12493 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
12494
12495 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
12496 ids.
12497 (font-encoding-alist): Doc fix.
12498
124992008-02-01 Dave Love <fx@gnu.org>
12500
12501 * term.c (costs_set): Declare static, non-initialized for pcc.
12502 (encode_terminal_code): Remove unused var.
12503
12504 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12505 for K&R.
12506
12507 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
12508
12509 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
12510 (suffixes): Move out of make_subsidiaries for K&R.
12511
12512 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
12513
12514 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
12515
125162008-02-01 Dave Love <fx@gnu.org>
12517
12518 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
12519
12520 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
12521
125222008-02-01 Yong Lu <lyongu@asia-infonet.com>
12523
12524 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
12525
12526 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
12527
125282008-02-01 Kenichi Handa <handa@m17n.org>
12529
12530 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
12531 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
12532
125332008-02-01 Kenichi Handa <handa@m17n.org>
12534
12535 * coding.c (decode_coding_charset): Adjust for the change of
12536 Fdefine_coding_system_internal.
12537 (Fdefine_coding_system_internal): For a coding system of
12538 `charset' type, store a list of charset IDs in
12539 `charset_attr_charset_valids' element of coding attributes.
12540
125412008-02-01 Kenichi Handa <handa@m17n.org>
12542
12543 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
12544 (emacs_mule_char): New arg src. Delete arg `composition'. Change
12545 caller. Handle 2-byte and 3-byte charsets correctly.
12546 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
12547 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
12548 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
12549 (DECODE_EMACS_MULE_21_COMPOSITION): Call
12550 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
12551 sequence.
12552 (decode_coding_emacs_mule): Handle composition correctly. Rewind
12553 `src' and `consumed_chars' correctly before calling emacs_mule_char.
12554 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
12555 and alt&rule composition.
12556 (decode_coding_iso_2022): Handle composition correctly.
12557 (init_coding_once): Setup emacs_mule_bytes for private charsets.
12558
12559 * charset.c (Fdefine_charset_internal): Fix bug for the case of
12560 re-defining a charset. If the charset has :emacs-mule-id, setup
12561 emacs_mule_bytes.
12562 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
12563
125642008-02-01 Kenichi Handa <handa@m17n.org>
12565
12566 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
12567 (encode_coding_big5, encode_coding_charset): If coding requires safe
12568 encoding, produce a character specified by
12569 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12570
125712008-02-01 Dave Love <fx@gnu.org>
12572
12573 * xterm.c (XSetIMValues): Declare.
12574
12575 * process.c: Conditionally include sys/wait.h, pty.h.
12576
12577 * print.c (print_object): Fix print format for 64-bit systems.
12578
12579 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
12580
12581 * buffer.c (emacs_strerror): Declare.
12582
12583 * fontset.c (Fclear_face_cache): Declare.
12584 (accumulate_font_info): Comment-out (unused).
12585 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
12586 variables.
12587
12588 * character.h (string_escape_byte8): Declare.
12589
12590 * charset.c (load_charset_map, load_charset_map_from_file): Remove
12591 unused vars.
12592 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
12593 (Fmap_charset_chars): Doc fix.
12594
12595 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
12596 (Fset_coding_system_priority, Fset_coding_system_priority)
12597 (Fdefine_coding_system_internal): Doc fix.
12598
125992008-02-01 Dave Love <fx@gnu.org>
12600
12601 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
12602
126032008-02-01 Kenichi Handa <handa@m17n.org>
12604
12605 * character.c (string_escape_byte8): Make multibyte string with
12606 correct size.
12607
12608 * charset.c (Fmake_char): Delete unnecessary code.
12609
126102008-02-01 Kenichi Handa <handa@m17n.org>
12611
12612 * xfns.c (x_encode_text): Allocate coding.destination here, and
12613 call encode_coding_object with dst_object Qnil.
12614
12615 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
12616 multibyte form correctly.
12617
12618 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
12619 against Vfont_encoding_alist.
12620
12621 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
12622 handling of charset list.
12623 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
12624 (decode_coding_object): Move point to coding->dst_pos before
12625 calling post-read-conversion function.
12626 (encode_coding_object): Give correct arguments to
12627 pre-write-conversion. Ignore the return value of
12628 pre-write-conversion function. Pay attention to the case that
12629 pre-write-conversion changes the current buffer. If dst_object is
12630 Qt, even if coding->src_bytes is zero, allocate at least one byte
12631 to coding->destination.
12632
12633 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
12634
12635 * charset.c (Fmake_char): Make it more backward compatible.
12636 (Fmap_charset_chars): Fix docstring.
12637
126382008-02-01 Dave Love <fx@gnu.org>
12639
12640 * coding.c: Doc fixes.
12641 (Fdefine_coding_system_alias): Use names, not symbols, in
12642 coding-system-alist.
12643
126442008-02-01 Kenichi Handa <handa@m17n.org>
12645
12646 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
12647 of calling free_realized_face.
12648
126492008-02-01 Yong Lu <lyongu@asia-infonet.com>
12650
12651 * charset.c (read_hex): Don't treat SPC as a comment starter.
12652 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
12653 (Fdecode_char): Fix typo.
12654
126552008-02-01 Kenichi Handa <handa@m17n.org>
12656
12657 * charset.h (struct charset): New member `code_space_mask'.
12658
12659 * coding.c (coding_set_source): Delete the local variable beg_byte.
12660 (encode_coding_charset, Fdefine_coding_system_internal):
12661 Delete the local variable charset.
12662 (Fdefine_coding_system_internal): Setup
12663 attrs[coding_attr_charset_valids] correctly.
12664
12665 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
12666 member to check if CODE is valid or not.
12667 (Fdefine_charset_internal): Initialize `code_space_mask' member.
12668 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
12669 is within the range of charset->min_code and carset->max_code.
12670
126712008-02-01 Dave Love <fx@gnu.org>
12672
12673 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
12674
12675 * dispextern.h (generate_ascii_font): Fix return type.
12676
12677 * xfaces.c (generate_ascii_font): Fix arg declaration.
12678
12679 * coding.c (coding_inherit_eol_type)
12680 (Fset_terminal_coding_system_internal)
12681 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
12682
126832008-02-01 Kenichi Handa <handa@m17n.org>
12684
12685 * coding.c (decode_coding_charset, encode_coding_charset): Handle
12686 multiple charsets correctly.
12687
126882008-02-01 Kenichi Handa <handa@m17n.org>
12689
12690 * search.c (boyer_moore): Fix handling of multibyte character
12691 translation.
12692
12693 * xdisp.c (display_mode_element): When the variable `elt' is
12694 changed, update `this' and `lisp_string'.
12695
126962008-02-01 Kenichi Handa <handa@m17n.org>
12697
12698 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
12699
12700 * callproc.c (Fcall_process): Be sure to give the current buffer
12701 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
12702
12703 * charset.c (struct charset_map_entries): New struct.
12704 (load_charset_map): Rename from parse_charset_map. New args
12705 entries and n_entries. Change caller.
12706 (load_charset_map_from_file): Rename from load_charset_map.
12707 Change caller. New arg control_flag. Call load_charset_map at
12708 the tail.
12709 (load_charset_map_from_vector): New function.
12710 (Fdefine_charset_internal): Setup charset.compact_codes_p.
12711 (encode_char): If the charset is compact, change a character index
12712 to a code point.
12713
12714 * coding.c (coding_alloc_by_making_gap): Check the case that the
12715 source and destination are the same correctly.
12716 (decode_coding_raw_text): Set coding->consumed_char and
12717 coding->consumed to 0.
12718 (produce_chars): If coding->chars_at_source is nonzero, update
12719 coding->consumed_char and coding->consumed before calling
12720 alloc_destination.
12721 (Fdefine_coding_system_alias): Register ALIAS in
12722 Vcoding_system_alist.
12723 (syms_of_coding): Define `no-conversion' coding system at the tail.
12724
12725 * fileio.c (Finsert_file_contents): Set coding_system instead of
12726 val. If the current buffer is multibyte, always call
12727 decode_coding_gap.
12728
12729 * xfaces.c (try_font_list): Give higher priority to fontset's
12730 family than face's family.
12731
127322008-02-01 Kenichi Handa <handa@m17n.org>
12733
12734 * callproc.c (Fcall_process): Be sure to give the current buffer
12735 to decode_coding_c_string.
12736
12737 * xfaces.c (try_font_list): Give a family specified in a fontset
12738 higher priority than a family specified in a face.
12739
127402008-02-01 Kenichi Handa <handa@m17n.org>
12741
12742 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
12743 Fix arguments to insert_from_buffer.
12744
12745 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
12746
127472008-02-01 Kenichi Handa <handa@m17n.org>
12748
12749 * coding.c (produce_chars): Set the variable `multibytep' correctly.
12750 (decode_coding_gap): Set coding->dst_multibyte correctly.
12751
127522008-02-01 Kenichi Handa <handa@m17n.org>
12753
12754 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
12755 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
12756 (encode_coding_utf_16): Substitute coding->default_char for
12757 non-Unicode characters.
12758 (decode_coding): Don't call record_insert here.
12759 (setup_coding_system): Initialize `surrogate' of
12760 coding->spec.utf_16 to 0.
12761 (EMIT_ONE_BYTE): Fix for multibyte case.
12762
12763 * insdel.c (insert_from_gap): Call record_insert.
12764
127652008-02-01 Kenichi Handa <handa@m17n.org>
12766
12767 * casefiddle.c (casify_region): Fix multibyte case.
12768
12769 * character.c (c_string_width): Add return type `int'.
12770 (char_string_with_unification): Delete arg ADVANCED.
12771
12772 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
12773 (CHAR_STRING): Adjust for the change of char_string_with_unification.
12774 (CHAR_STRING_ADVANCE): Make it do-while statement.
12775
12776 * chartab.c (sub_char_table_set_range): Optimize for the case
12777 DEPTH == 3. Add workaround code for a GCC optimization bug.
12778
12779 * charset.c (parse_charset_map): Remove an unused variable.
12780
12781 * coding.c: Delete unused variables.
12782
12783 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
12784 earlier. If inserted is zero and the coding system doesn't
12785 require flushing, don't call decode_coding_gap.
12786
12787 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
12788
127892008-02-01 Kenichi Handa <handa@m17n.org>
12790
12791 The following changes are for using Unicode as an internal
12792 character model, and use UTF-8 format for buffer/string
12793 representation.
12794
12795 * .gdbinit (xchartable): Adjust for the change of char table structure.
12796 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
12797
12798 * Makefile.in (obj): Add character.o and chartab.o.
12799 (lisp, shortlisp): Remove utf-8.elc.
12800 (*.o): For many files, change dependency on charset.h to
12801 character.h, and add dependency on character.h.
12802 (character.o, chartab.o): New targets.
12803
12804 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
12805 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
12806 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
12807 of "charset.h".
12808
12809 * dired.c, filelock.c: Include "character.h".
12810
12811 * alloc.c: Include "character.h" instead of "charset.h".
12812 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
12813 (syms_of_alloc): Remove defsubr for Smake_char_table.
12814
12815 * buffer.c: Include "character.h" instead of "charset.h", don't
12816 include "coding.h".
12817 (Fset_buffer_multibyte): Adjust for UTF-8.
12818
12819 * buffer.h: EXFUN Fbuffer_live_p.
12820
12821 * callproc.c: Include "character.h" instead of "charset.h".
12822 (Fcall_process): Big change for the new code-conversion APIs.
12823
12824 * casetab.c: Include "character.h" instead of "charset.h".
12825 (set_canon, set_identity, shuffle): Adjust for the new
12826 map_char_table spec.
12827 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
12828 accessing the char table structure.
12829
12830 * chartab.c: New file that implements char table.
12831
12832 * category.c: Include "character.h".
12833 (copy_category_entry): New function.
12834 (copy_category_table): Call map_char_table and copy_category_entry.
12835 (Fmake_category_table): Initialize all top-level slots.
12836 (char_category_set): New function.
12837 (modify_lower_category_set): Delete.
12838 (Fmodify_category_entry): Call char_table_ref_and_range.
12839
12840 * category.h (CATEGORY_SET): Just call char_category_set.
12841
12842 * ccl.c: Include "character.h".
12843 (Qccl, Qcclp): New variables.
12844 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
12845 it's less than 256.
12846 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
12847 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
12848 and DST type.
12849 (ccl_driver): Change types of argument, adjust code accordingly.
12850 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
12851 ccl_driver.
12852 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
12853
12854 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
12855 New members src_multibyte, dst_multibyte, consumed, and produced.
12856 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
12857 (CODING_SPEC_CCL_PROGRAM): New macro.
12858 (ccl_driver): Update prototype.
12859 (Qccl, Qcclp, Fccl_program_p): Extern them.
12860 (CHECK_CCL_PROGRAM): New macro.
12861
12862 * character.c, character.h, chartab.c: New files.
12863
12864 * charset.c: Mostly re-written. Move character and multibyte sequence
12865 handling codes to character.c.
12866
12867 * charset.h: Mostly re-written. Move character and multibyte sequence
12868 handling codes to character.h.
12869
12870 * coding.c, coding.h: Mostly re-written.
12871
12872 * composite.c: Include "character.h" instead of "charset.h".
12873 (CHAR_WIDTH): Move to character.h.
12874 (HASH_KEY, HASH_VALUE): Delete.
12875
12876 * composite.h (enum composition_method): Change order of enumeration
12877 symbols.
12878
12879 * data.c: Include "character.h" instead of "charset.h".
12880 (Faref): Call CHAR_TABLE_REF for a char table.
12881 (Faset): Call CHAR_TABLE_SET for a char table.
12882
12883 * dispextern.h (free_realized_face, check_face_attribytes)
12884 (generate_ascii_font): Extern them.
12885 (free_realized_multibyte_face): Delete extern.
12886
12887 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
12888 table structure.
12889
12890 * editfns.c: Include "character.h" instead of "charset.h".
12891 (Fchar_to_string): Always call CHAR_STRING.
12892
12893 * emacs.c (main): Call init_charset_once, init_charset,
12894 syms_of_chartab, and syms_of_character.
12895
12896 * fileio.c: Include "character.h" instead of "charset.h".
12897 (Finsert_file_contents): Big change for the new code-conversion API.
12898 (choose_write_coding_system, Fwrite_region): Likewise.
12899 (build_annotations_2): Delete.
12900 (e_write): Big change for the new code-conversion API.
12901
12902 * fns.c: Include "character.h" instead of "charset.h".
12903 (copy_sub_char_table): Move to chartab.c.
12904 (Fcopy_sequence): Call copy_char_table for a char table.
12905 (concat): Delete codes calling count_multibyte.
12906 (string_char_to_byte, string_byte_to_char): Adjust for the new
12907 multibyte form.
12908 (internal_equal): Adjust for the change of char table structure.
12909 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
12910 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
12911 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
12912 (char_table_translate, optimize_sub_char_table)
12913 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
12914 chartab.c.
12915 (char_table_ref_and_index): Delete.
12916 (HASH_KEY, HASH_VALUE): Move to lisp.h.
12917 (Fmd5): Call preferred_coding_system instead of accessing
12918 Vcoding_category_list. Adjust for the new code-conversion API.
12919 (syms_of_fns): Move defsubr for char table related functions to
12920 chartab.c.
12921
12922 * fontset.c: Mostly re-written.
12923
12924 * fontset.h (struct font_info): Change type of the member encoding_type.
12925 (enum FONT_SPEC_INDEX): New enum.
12926 (fontset_font_pattern, fs_load_font): Update prototype.
12927 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
12928
12929 * indent.c: Include "character.h" instead of "charset.h".
12930 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
12931
12932 * insdel.c: Include "character.h" instead of "charset.h".
12933 (copy_text): Don't refer to Vnonascii_translation_table.
12934 (insert_from_gap): New function.
12935
12936 * keyboard.c: Include "character.h" instead of "charset.h".
12937 (command_loop_1): Never call direct_output_forward_char before
12938 a non-ASCII character.
12939 (read_char): If Vkeyboard_translate_table is a char table, always
12940 translate a character.
12941
12942 * keymap.c: Include "character.h".
12943 (store_in_keymap): Handle the case that IDX is a cons.
12944 (Fdefine_key): Handle the case that KEY is a cons and the car part
12945 is also a cons (range).
12946 (push_key_description): Adjust for the new character code.
12947 (describe_vector): Call describe_char_table for a char table.
12948 (describe_char_table): New function.
12949
12950 * keymap.h (describe_char_table): Extern it.
12951
12952 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
12953 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
12954 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
12955 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
12956 Delete.
12957 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
12958 structure.
12959 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
12960 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
12961 (CHARTAB_SIZE_BITS_3): New macros.
12962 (chartab_size): Extern it.
12963 (struct Lisp_Char_Table): Re-design.
12964 (struct Lisp_Sub_Char_Table): New structure.
12965 (HASH_KEY, HASH_VALUE): Move from fns.c.
12966 (CHARACTERBITS): Define as 22.
12967 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
12968 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
12969 (GC_SUB_CHAR_TABLE_P): New macro.
12970 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
12971 (code_convert_string_norecord): Deleted extern.
12972 (init_character_once, syms_of_character, init_charset)
12973 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
12974
12975 * lread.c: Include "character.h".
12976 (read_multibyte): New arg NBYTES.
12977 (read_escape): Change the meaning of returned *BYTEREP.
12978 (to_multibyte): Delete.
12979 (read1): Adjust the handling of char table and string.
12980
12981 * print.c: Include "character.h" instead of "charset.h".
12982 (print_string): Convert 8-bit raw bytes to octal form by
12983 string_escape_byte8.
12984 (print_object): Adjust for the new multibyte form. Print 8-bit
12985 raw bytes always in octal form. Handle sub char table correctly.
12986
12987 * process.c: Include "character.h" instead of "charset.h".
12988 (read_process_output, send_process): Adjust for the new
12989 code-conversion API.
12990
12991 * puresize.h (BASE_PURESIZE): Increase.
12992
12993 * regex.c: Include "character.h" instead of "charset.h".
12994 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
12995 (regex_compile): Accept a range whose starting and ending
12996 character have different leading bytes.
12997 (analyse_first): Adjust for the above change.
12998
12999 * search.c: Include "character.h" instead of "charset.h".
13000 (search_buffer, boyer_moore): Adjust for the new multibyte form.
13001 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
13002
13003 * syntax.c: Include "character.h" instead of "charset.h".
13004 (syntax_parent_lookup): Delete.
13005 (Fmodify_syntax_entry): Accept a cons as CHAR.
13006 (skip_chars): Adjust for the new multibyte form.
13007 (init_syntax_once): Call char_table_set_range instead of directly
13008 accessing the structure of a char table.
13009
13010 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
13011 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
13012 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
13013 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
13014
13015 * term.c: Include "buffer.h" and "character.h".
13016 (encode_terminal_code, write_glyphs): Adjust for the new
13017 code-conversion API.
13018 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
13019
13020 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
13021
13022 * xdisp.c: Include "character.h".
13023 (get_next_display_element): Adjust for the new multibyte form.
13024 (disp_char_vector): Adjust for the new char table structure.
13025 (decode_mode_spec_coding): Adjust for the new structure of
13026 coding system.
13027 (decode_mode_spec): Adjust for the new code-conversion API.
13028
13029 * xfaces.c: Include "character.h" instead of "charset.h".
13030 (load_face_font): Adjust for the change of choose_face_font and
13031 FS_LOAD_FONT.
13032 (generate_ascii_font): New function.
13033 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
13034 (set_font_frame_param): Adjust for the change of choose_face_font.
13035 (free_realized_face): Make it public.
13036 (free_realized_faces_for_fontset): Rename from
13037 free_realized_multibyte_face. Free also faces realized for ASCII.
13038 (choose_face_font): Change arguments. Adjust for the change of
13039 fontset_font_pattern and FS_LOAD_FONT.
13040
13041 * xfns.c: Include "character.h".
13042 (x_encode_text): Adjust for the new code-conversion API.
13043
13044 * xselect.c: Don't include "charset.h".
13045 (selection_data_to_lisp_data): Adjust for the new code conversion API.
13046
13047 * xterm.c: Include "character.h".
13048 (x_encode_char): New argument CHARSET. Change caller.
13049 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
13050 Call ENCODE_CHAR instead of SPLIT_CHAR.
13051 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
13052 CHAR_WIDTH instead of CHARSET_WIDTH.
13053 (XTread_socket): Adjust for the new code-conversion API.
13054 (x_new_font): Adjust for the change of FS_LOAD_FONT.
13055 (x_load_font): Adjust for the change of struct font.
13056
130572008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13058
13059 * xfaces.c (face_at_buffer_position): Remove unused vars.
13060
130612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13062
13063 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
13064 Fix overflow checking.
13065
130662008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13067
13068 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
13069 Cancel previous change.
13070
130712008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13072
13073 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
13074 ccl->eight_bit_control. Fix check for buffer overflow.
13075 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
13076 (ccl_driver): Initialize extra_bytes to 0.
13077
130782008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13079
13080 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
13081 return it ORed with ctrl_modifier.
13082
130832008-01-29 Miles Bader <miles@gnu.org>
13084
13085 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
13086
130872008-01-28 Jason Rumney <jasonr@gnu.org>
13088
13089 * w32.c (stat): Don't double check for networked drive.
13090
130912008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
13092
13093 * window.c (run_window_configuration_change_hook): New function.
13094 Code extracted from set_window_buffer. Set the selected frame.
13095 (set_window_buffer): Use it.
13096 * window.h (run_window_configuration_change_hook): Declare.
13097 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
13098
13099 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
13100
131012008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
13102
13103 * Makefile.in: Remove references to unused macros.
13104
131052008-01-26 Eli Zaretskii <eliz@gnu.org>
13106
13107 * w32.c (g_b_init_get_sid_sub_authority)
13108 (g_b_init_get_sid_sub_authority_count): New static variables.
13109 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
13110 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
13111 (init_user_info): Use them to retrieve uid and gid.
13112 Use 500/513, the Windows defaults, as Administrator's uid/gid.
13113 (fstat): Use pw_uid and pw_gid from the_passwd structure for
13114 st_uid and st_gid of the file.
13115
131162008-01-26 Jason Rumney <jasonr@gnu.org>
13117
13118 * w32.c (logon_network_drive): New function.
13119 (stat): Use it.
13120
131212008-01-26 Chong Yidong <cyd@stupidchicken.com>
13122
13123 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
13124 invisible text covered with an ellipsis.
13125
131262008-01-25 Richard Stallman <rms@gnu.org>
13127
13128 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
13129 jump back to beginning. Move some other initializations after that.
13130 (Qwindow_text_change_functions, Vwindow_text_change_functions):
13131 New variables.
13132 (syms_of_xdisp): Init them.
13133
13134 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
13135
13136 * buffer.c (reset_buffer_local_variables):
13137 Implement `permanent-local-hook'.
13138 (Qpermanent_local_hook): New variable.
13139 (syms_of_buffer): Init and staticpro it.
13140
131412008-01-25 Michael Albinus <michael.albinus@gmx.de>
13142
13143 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
13144
131452008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
13146
13147 * fns.c (Fclrhash): Return TABLE.
13148
131492008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13150
13151 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
13152 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
13153 is set even without positional changes.
13154 (x_scroll_bar_clear): Set bar->redraw_needed_p.
13155
13156 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
13157
131582008-01-23 Jason Rumney <jasonr@gnu.org>
13159
13160 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
13161
13162 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
13163 the unicode range available in MULE by locale-coding-system.
13164 Improve dbcs lead byte detection. Set event timestamp and modifiers
13165 earlier.
13166
131672008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13168
13169 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
13170 [MAC_OSX] (init_mac_osx_environment): Initialize it.
13171 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
13172 when used on child processes.
13173
131742008-01-21 Michael Albinus <michael.albinus@gmx.de>
13175
13176 * dbusbind.c (Fdbus_method_return_internal): Rename from
13177 Fdbus_method_return.
13178 (Fdbus_unregister_object): Move to dbus.el.
13179 (Fdbus_call_method, Fdbus_method_return_internal)
13180 (Fdbus_send_signal): Improve debug messages.
13181
131822008-01-20 Martin Rudalics <rudalics@gmx.at>
13183
13184 * undo.c (undo_inhibit_record_point): New variable.
13185 (syms_of_undo): Initialize it.
13186 (record_point): Don't record point when undo_inhibit_record_point
13187 is set.
13188
131892008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
13190
13191 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
13192
13193 * xdisp.c (Qauto_hscroll_mode): New var.
13194 (syms_of_xdisp): Initialize it.
13195 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
13196 window's buffer.
13197 (hscroll_windows): Don't check automatic_hscrolling_p here.
13198
13199 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
13200 vscroll if we're setting window-buffer to the value it already has.
13201
132022008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
13203
13204 * m/intel386.h: Remove references to XENIX.
13205
132062008-01-17 Andreas Schwab <schwab@suse.de>
13207
13208 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
13209 instead of HAVE_X86_64_LIB64_DIR.
13210 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
13211
132122008-01-17 Glenn Morris <rgm@gnu.org>
13213
13214 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
13215 to HAVE_X86_64_LIB64_DIR.
13216
132172008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
13218
13219 * s/irix3-3.h:
13220 * s/irix4-0.h:
13221 * s/386-ix.h:
13222 * s/domain.h:
13223 * s/hpux9-x11r4.h:
13224 * s/hpux9shxr4.h: Remove files for systems no longer supported.
13225
13226 * sysdep.c: Remove code containing references to symbols defined
13227 by unsupported systems.
13228
132292008-01-16 Glenn Morris <rgm@gnu.org>
13230
13231 * coding.c (select-safe-coding-system-function): Doc fix.
13232
132332008-01-15 Glenn Morris <rgm@gnu.org>
13234
13235 * config.in: Revert 2008-01-13 change: this is a generated file.
13236
132372008-01-13 Tom Tromey <tromey@redhat.com>
13238
13239 * lisp.h: Fix typo.
13240
132412008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13242
13243 * m/sequent-ptx.h:
13244 * m/sequent.h:
13245 * s/ptx.h:
13246 * s/ptx4-2.h:
13247 * s/ptx4.h: Remove files for systems no longer supported.
13248
13249 * callproc.c (Fcall_process): Fix previous change.
13250
132512008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13252
13253 * unexsunos4.c: Remove file, system not supported anymore.
13254
13255 * m/mips.h:
13256 * m/intel386.h:
13257 * callproc.c:
13258 * config.in:
13259 * ecrt0.c:
13260 * emacs.c:
13261 * fileio.c:
13262 * frame.c:
13263 * getpagesize.h:
13264 * keyboard.c:
13265 * lread.c:
13266 * process.c:
13267 * puresize.h:
13268 * sysdep.c:
13269 * systty.h:
13270 * syswait.h:
13271 * unexec.c:
13272 * xdisp.c:
13273 * alloc.c: Remove code containing references to symbols defined by
13274 unsupported systems.
13275
132762008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
13277
13278 * coding.c (detect_coding_mask): Fix previous change.
13279
132802008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
13281
13282 * coding.c (detect_coding_iso2022): New arg
13283 latin_extra_code_state. Allow Latin extra codes only
13284 when *latin_extra_code_state is nonzero.
13285 (detect_coding_mask): If there is a NULL byte, detect the encoding
13286 as UTF-16 or binary. If Latin extra codes exist, detect the
13287 encoding as ISO-2022 only when there's no other proper encoding is
13288 found.
13289
132902008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13291
13292 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
13293 #ifdef MAC_OS.
13294
132952008-01-08 Richard Stallman <rms@gnu.org>
13296
13297 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
13298
132992008-01-06 Nick Roberts <nickrob@snap.net.nz>
13300
13301 * keyboard.c (parse_menu_item): Don't enclose key bindings on
13302 menu bar in parentheses.
13303
133042008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
13305
13306 * m/7300.h:
13307 * m/acorn.h:
13308 * m/alliant-2800.h:
13309 * m/alliant.h:
13310 * m/alliant1.h:
13311 * m/alliant4.h:
13312 * m/altos.h:
13313 * m/amdahl.h:
13314 * m/apollo.h:
13315 * m/att3b.h:
13316 * m/aviion-intel.h:
13317 * m/aviion.h:
13318 * m/celerity.h:
13319 * m/clipper.h:
13320 * m/cnvrgnt.h:
13321 * m/convex.h:
13322 * m/cydra5.h:
13323 * m/delta88k.h:
13324 * m/dpx2.h:
13325 * m/dual.h:
13326 * m/elxsi.h:
13327 * m/f301.h:
13328 * m/gould-np1.h:
13329 * m/gould.h:
13330 * m/i860.h:
13331 * m/ibmps2-aix.h:
13332 * m/ibmrt-aix.h:
13333 * m/ibmrt.h:
13334 * m/irist.h:
13335 * m/is386.h:
13336 * m/isi-ov.h:
13337 * m/mega68.h:
13338 * m/mg1.h:
13339 * m/news-r6.h:
13340 * m/news-risc.h:
13341 * m/news.h:
13342 * m/nh3000.h:
13343 * m/nh4000.h:
13344 * m/ns16000.h:
13345 * m/ns32000.h:
13346 * m/nu.h:
13347 * m/orion.h:
13348 * m/orion105.h:
13349 * m/paragon.h:
13350 * m/pfa50.h:
13351 * m/plexus.h:
13352 * m/pyramid.h:
13353 * m/pyrmips.h:
13354 * m/sh3el.h:
13355 * m/sps7.h:
13356 * m/sr2k.h:
13357 * m/stride.h:
13358 * m/sun1.h:
13359 * m/sun2.h:
13360 * m/sun3-68881.h:
13361 * m/sun3-fpa.h:
13362 * m/sun3-soft.h:
13363 * m/sun3.h:
13364 * m/sun386.h:
13365 * m/symmetry.h:
13366 * m/tad68k.h:
13367 * m/tahoe.h:
13368 * m/targon31.h:
13369 * m/tek4300.h:
13370 * m/tekxd88.h:
13371 * m/tower32.h:
13372 * m/tower32v3.h:
13373 * m/ustation.h:
13374 * m/wicat.h:
13375 * m/xps100.h:
13376 * s/cxux.h:
13377 * s/cxux7.h:
13378 * s/dgux.h:
13379 * s/dgux4.h:
13380 * s/dgux5-4-3.h:
13381 * s/dgux5-4r2.h:
13382 * s/esix.h:
13383 * s/esix5r4.h:
13384 * s/hiuxmpp.h:
13385 * s/hiuxwe2.h:
13386 * s/iris3-5.h:
13387 * s/iris3-6.h:
13388 * s/isc2-2.h:
13389 * s/isc3-0.h:
13390 * s/isc4-0.h:
13391 * s/isc4-1.h:
13392 * s/newsos5.h:
13393 * s/newsos6.h:
13394 * s/osf1.h:
13395 * s/osf5-0.h:
13396 * s/riscix1-1.h:
13397 * s/riscix12.h:
13398 * s/sco4.h:
13399 * s/sco5.h:
13400 * s/sunos4-0.h:
13401 * s/sunos4-1.h:
13402 * s/sunos413.h:
13403 * s/sunos4shr.h:
13404 * s/umax.h:
13405 * s/unipl5-2.h:
13406 * s/xenix.h:
13407 * cxux-crt0.s:
13408 * unexapollo.c:
13409 * unexconvex.c:
13410 * unexenix.c:
13411 * unexsni.c: Remove files for systems no longer supported.
13412
13413 * m/intel386.h: Remove references to unsupported systems.
13414
13415 * w32.c (get_emacs_configuration): Remove reference to i860.
13416
13417 * sysdep.c: Remove dead code.
13418
134192008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
13420
13421 * s/rtu.h:
13422 * m/masscomp.h: Remove files. Platform is obsolete.
13423
134242008-01-04 Michael Albinus <michael.albinus@gmx.de>
13425
13426 * dbusbind.c (Fdbus_method_return): New function.
13427 (xd_read_message): Add the serial number to the event.
13428 (Fdbus_register_method): Activate the function.
13429
134302008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
13431
13432 * keyboard.c (read_key_sequence): Fix typo.
13433
134342008-01-03 Michael Albinus <michael.albinus@gmx.de>
13435
13436 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
13437 (xd_signature, xd_append_arg): Handle element type detection for
13438 empty arrays.
13439 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
13440 SDATA () calls; this must be solved more general.
13441 (Fdbus_register_signal): Use SBYTES instead of strlen.
13442
134432008-01-03 Magnus Henoch <magnus@zemdatav>
13444
13445 * dbusbind.c (xd_append_arg): Use unsigned char instead of
13446 unsigned int for byte values (necessary for big-endian platform).
13447 (Fdbus_call_method): Handle the case of no returned arguments.
13448
134492007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
13450
13451 * dbusbind.c (xd_read_message): Use non-static input_event struct.
13452
134532007-12-31 Magnus Henoch <mange@freemail.hu>
13454
13455 * dbusbind.c (xd_signature): Signature of variant is just "v".
13456
134572007-12-30 Michael Albinus <michael.albinus@gmx.de>
13458
13459 * dbusbind.c: Fix several errors and compiler warnings.
13460 Reported by Tom Tromey <tromey@redhat.com>.
13461 (XD_ERROR, XD_DEBUG_MESSAGE)
13462 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
13463 (xd_append_arg): Part for basic D-Bus types rewritten.
13464 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
13465 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
13466 appropriate.
13467 (xd_read_message): Return Qnil. Don't signal an error; it is not
13468 useful during event reading.
13469 (Fdbus_register_signal): Signal an error if the check for
13470 FUNCTIONP fails.
13471 (Fdbus_register_method): New function. The implementation is not
13472 complete, the call of the function signals an error therefore.
13473 (Fdbus_unregister_object): New function, renamed from
13474 Fdbus_unregister_signal. The initial check signals an error, if
13475 the object is not well formed.
13476
134772007-12-30 Richard Stallman <rms@gnu.org>
13478
13479 * textprop.c (get_char_property_and_overlay):
13480 Signal error if POSITION is out of range in a buffer.
13481
134822007-12-29 Martin Rudalics <rudalics@gmx.at>
13483
13484 * w32fns.c (Fx_create_frame): Make copy of frame parameters
13485 because the original parameters are in pure storage now.
13486
134872007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13488
13489 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
13490
134912007-12-22 Eli Zaretskii <eliz@gnu.org>
13492
13493 * callint.c (syms_of_callint) <command-history>: Add reference to
13494 history-length in the doc string.
13495
134962007-12-17 Jason Rumney <jasonr@gnu.org>
13497
13498 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
13499 before passing as wParam.
13500
135012007-12-22 Michael Albinus <michael.albinus@gmx.de>
13502
13503 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
13504 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
13505 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
13506 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
13507 as number.
13508 (Fdbus_call_method): Fix docstring.
13509
135102007-12-21 Michael Albinus <michael.albinus@gmx.de>
13511
13512 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
13513 New macros.
13514 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
13515 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
13516 Simplify.
13517 (xd_signature): New function.
13518 (xd_append_arg): Compute also signatures. Major rewrite.
13519 (xd_retrieve_arg): Make debug messages friendly.
13520 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
13521 Check for signatures of arguments.
13522
135232007-12-19 Michael Albinus <michael.albinus@gmx.de>
13524
13525 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
13526 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
13527 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
13528 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
13529 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
13530 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
13531 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
13532 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
13533 (xd_retrieve_value): Remove. Functionality included in ...
13534 (xd_append_arg): New function.
13535 (Fdbus_call_method, Fdbus_send_signal): Apply it.
13536
135372007-12-16 Michael Albinus <michael.albinus@gmx.de>
13538
13539 * dbusbind.c (top): Include <stdio.h>.
13540 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
13541 dbus_message_new_method_call and dbus_message_new_signal.
13542 (Fdbus_register_signal): Rename unique_name to uname.
13543 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
13544 non-existing unique name. Fix typos in matching rule. Return an
13545 object which is useful in Fdbus_unregister_signal.
13546 (Fdbus_unregister_signal): Reimplementation, in order to remove
13547 only the corresponding entry.
13548 (Vdbus_registered_functions_table): Change the order of entries.
13549 Apply these changes in xd_read_message and Fdbus_register_signal.
13550
135512007-12-16 Andreas Schwab <schwab@suse.de>
13552
13553 * fileio.c (Finsert_file_contents): Fix overflow check to not
13554 depend on undefined integer overflow.
13555
135562007-12-14 Jason Rumney <jasonr@gnu.org>
13557
13558 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
13559 for characters above 127.
13560
135612007-12-13 Jason Rumney <jasonr@gnu.org>
13562
13563 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
13564 before dereferencing array.
13565 (lookup_vk_code): Remove zero comparison.
13566
135672007-12-14 Michael Albinus <michael.albinus@gmx.de>
13568
13569 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
13570 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
13571 Use `unsigned int' instead of `uint'.
13572 (xd_read_message, Fdbus_register_signal): Split expressions into
13573 multiple lines before operators "&&" and "||", according to the
13574 GNU Coding Standards.
13575
135762007-12-14 Eli Zaretskii <eliz@gnu.org>
13577
13578 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
13579
135802007-12-12 Juri Linkov <juri@jurta.org>
13581
13582 * buffer.c (Frename_buffer): In interactive spec replace
13583 `read-buffer' with `read-string' that uses `buffer-name-history'
13584 as history, and the current buffer's name as default.
13585
135862007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
13587
13588 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
13589 manipulating the backtrace manually.
13590 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
13591 (struct backtrace, backtrace_list): Remove.
13592 (command_loop_1): Remove dead var `no_direct'.
13593
13594 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
13595 preserve non-built-in buffer-local variables.
13596 (Fkill_all_local_variables): Don't re-create&re-set permanent
13597 buffer-local variables.
13598
135992007-12-09 Juri Linkov <juri@jurta.org>
13600
13601 * buffer.c (Frename_buffer): Change interactive spec from "s" to
13602 Lisp code that uses `read-buffer' with current buffer as default.
13603
136042007-12-08 Michael Albinus <michael.albinus@gmx.de>
13605
13606 * dbusbind.c (xd_read_message): Generate an event for every
13607 registered handler. There might be several handlers registered
13608 for the same signal.
13609 (Fdbus_register_signal): Don't overwrite a registration for the
13610 same signal. Add a new registration if handlers are different.
13611 (Vdbus_registered_functions_table): Rework doc string.
13612
136132007-12-07 Michael Albinus <michael.albinus@gmx.de>
13614
13615 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
13616 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
13617 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
13618 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
13619 Unify argument lists.
13620 (xd_read_message, Fdbus_register_signal): Reorder and extend event
13621 arguments and hash table keys. Use unique name for service.
13622 (Fdbus_unregister_signal): Remove checks.
13623 (Vdbus_registered_functions_table): Fix doc string.
13624
136252007-12-05 Magnus Henoch <mange@freemail.hu>
13626
13627 * process.c (make_process): Initialize pty_flag to 0.
13628
136292007-12-05 Jason Rumney <jasonr@gnu.org>
13630
13631 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
13632 specified XBMs.
13633
136342007-12-05 Richard Stallman <rms@gnu.org>
13635
13636 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
13637
136382007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13639
13640 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
13641 New variable.
13642 (mac_try_close_socket) [MAC_OSX]: New function.
13643 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
13644 Update cfsockets_for_select. Replace invalid CFRunLoop source.
13645
13646 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
13647 Use mac_try_close_socket.
13648
136492007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13650
13651 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
13652 reloc_base.
13653 (copy_dysymtab): Compute relocation base here.
13654 (rebase_reloc_address) [__ppc64__]: New function.
13655 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
13656 changed.
13657
136582007-12-05 Jason Rumney <jasonr@gnu.org>
13659
13660 * w32proc.c (sys_spawnve): Quote args with wildcards.
13661
136622007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13663
13664 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
13665 __objc_* sections.
13666 (unrelocate) [_LP64]: Set relocation base to address of data segment.
13667
136682007-12-05 Michael Albinus <michael.albinus@gmx.de>
13669
13670 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
13671 Move check for Vdbus_registered_functions_table to
13672 xd_read_queued_messages.
13673 (xd_read_queued_messages): Protect xd_read_message calls by
13674 internal_condition_case_1.
13675
136762007-12-04 Michael Albinus <michael.albinus@gmx.de>
13677
13678 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
13679 Qdbus_system_bus and Qdbus_session_bus, respectively.
13680 (Vdbus_intern_symbols): Remove.
13681 (Vdbus_registered_functions_table): New hash table.
13682 (XD_SYMBOL_INTERN_SYMBOL): Remove.
13683 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
13684 Rewrite in order to manage registered functions by hash table
13685 Vdbus_registered_functions_table.
13686
136872007-12-03 Jan Djärv <jan.h.d@swipnet.se>
13688
13689 * xterm.c: Update URL to Window Manager Specification in comment.
13690
136912007-12-02 Michael Albinus <michael.albinus@gmx.de>
13692
13693 * config.in (HAVE_DBUS): Add.
13694
13695 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
13696 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
13697 (obj): Add $(DBUS_OBJ).
13698 (LIBES): Add $(DBUS_LIBS).
13699 (dbusbind.o): New target.
13700
13701 * dbusbind.c: New file.
13702
13703 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
13704
13705 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
13706 (Qdbus_event): New Lisp symbol.
13707 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
13708 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 13709 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
13710
13711 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
13712
137132007-12-01 Richard Stallman <rms@gnu.org>
13714
13715 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
13716
137172007-11-30 Jason Rumney <jasonr@gnu.org>
13718
13719 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
13720 (w32con_reset_terminal_modes): Clear screen buffer.
13721 (w32_face_attributes): Don't use color indexes that are out of range.
13722 Only reverse the default colors.
13723
13724 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
13725 WINDOWSNT.
13726
13727 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
13728
137292007-11-29 Jason Rumney <jasonr@gnu.org>
13730
13731 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
13732 (w32_face_attributes): Use Vtty_defined_color_alist to determine
13733 if the terminal colors are initialized.
13734 (unspecified_fg, unspecified_bg): Remove unused declarations.
13735
137362007-11-29 Andreas Schwab <schwab@suse.de>
13737
13738 * keyboard.c (apply_modifiers): Fix typo.
13739
137402007-11-29 Richard Stallman <rms@gnu.org>
13741
13742 * keymap.c (Fcurrent_local_map): Doc fix.
13743
137442007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
13745
13746 * s/gnu-kfreebsd.h: New file.
13747
137482007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
13749
13750 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
13751 Don't cast redundantly.
13752
13753 * keyboard.c (KEY_TO_CHAR): New macro.
13754 (parse_modifiers, apply_modifiers): Accept integer arguments.
13755 (read_key_sequence): Use them to unify the "shift->unshift" mapping
13756 for chars and symbol keys.
13757 After doing such remapping, apply function-key-map again.
13758
137592007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
13760
13761 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
13762 compiled anymore.
13763
137642007-11-26 Andreas Schwab <schwab@suse.de>
13765
13766 * process.c (list_processes_1): Fix indentation level of the
13767 command column.
13768
137692007-11-23 Andreas Schwab <schwab@suse.de>
13770
13771 * editfns.c (Fformat): Handle %c specially since it requires the
13772 argument to be of type int.
13773
137742007-11-23 Markus Triska <markus.triska@gmx.at>
13775
13776 * emacs.c (main): Call init_editfns before init_process, since
13777 init_process sets Vprocess_connection_type depending on OS release.
13778
137792007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
13780
13781 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
13782 (find_symbol_value): Use do_symval_forwarding.
13783
13784 * data.c (set_internal): Set the value in the `cons-cell' (for
13785 Buffer_Local_values) not only for frame-local variables.
13786
137872007-11-22 Andreas Schwab <schwab@suse.de>
13788
13789 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
13790 values to sprintf.
13791 * keymap.c (Fsingle_key_description): Likewise.
13792 * print.c (print_object): Likewise.
13793
137942007-11-22 Jan Djärv <jan.h.d@swipnet.se>
13795
13796 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
13797 file for image is nil.
13798
137992007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
13800
13801 * term.c: Include stdarg.h.
13802 (fatal): Implement using varargs.
13803 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
13804
138052007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13806
13807 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
13808 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
13809 Update call to buffer_slot_type_mismatch.
13810 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
13811 (buffer_slot_type_mismatch): Update.
13812 * buffer.c (buffer_local_types): Remove.
13813 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
13814 (defvar_per_buffer): Set the type in the buffer_objfwd.
13815
138162007-11-21 Jason Rumney <jasonr@gnu.org>
13817
13818 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
13819 CreateFileMapping returns NULL on failure.
13820
138212007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13822
13823 * search.c (Fset_match_data): Remove the `evaporate' feature.
13824 (unwind_set_match_data): Don't use the `evaporate' feature.
13825
138262007-11-21 Jason Rumney <jasonr@gnu.org>
13827
13828 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
13829
13830 * w32console.c (w32con_write_glyphs): Remove unused variables.
13831
138322007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
13833
13834 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
13835
13836 * s/darwin.h (MULTI_KBOARD): Remove.
13837
13838 * macfns.c (x_create_tip_frame, Fx_create_frame)
13839 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
13840
138412007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
13842
13843 * buffer.c (Fbuffer_local_value): Remove redundant test.
13844 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
13845 than in `current-buffer' to match the comment.
13846 Do the swap using swap_in_global_binding.
13847
13848 * data.c (store_symval_forwarding, set_internal):
13849 * eval.c (specbind): Remove dead code.
13850
13851 * coding.c (detect_coding, Fupdate_coding_systems_internal):
13852 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
13853 Since we do not want to see internal Lisp_*fwd objects here.
13854
138552007-11-18 Jan Djärv <jan.h.d@swipnet.se>
13856
13857 * sysdep.c (init_system_name): Use getaddrinfo if available.
13858
13859 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
13860 (x_scroll_bar_note_movement): start, end, with, height in struct
13861 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
13862
138632007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
13864
13865 * puresize.h (BASE_PURESIZE): Increase to 1190000.
13866
138672007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
13868
13869 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
13870 This undoes Richard's change of 14-Oct-2002.
13871
13872 * alloc.c (allocate_other_vector):
13873 * lisp.h (allocate_other_vector): Remove.
13874
13875 * window.c (struct save_window_data): Move non-lisp data to the end
13876 and make it `int' rather than Lisp_Object.
13877 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
13878 Done wrap/unwrap integer values.
13879 (Fset_window_configuration, compare_window_configurations):
13880 Update use of fields to their new types.
13881
13882 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
13883 Turn integer fields into `int'. Merge x_window_low and x_window_high.
13884 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
13885 (SET_SCROLL_BAR_X_WINDOW): Remove.
13886 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
13887 Access the new x_window field directly.
13888 * xterm.c (x_scroll_bar_create): Use a pseudovector.
13889 Don't wrap/unwrap integers into Lisp_Objects.
13890 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
13891 (x_scroll_bar_report_motion):
13892 Don't wrap/unwrap integers into Lisp_Objects.
13893 (x_term_init): Use SDATA.
13894 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
13895 (x_scroll_bar_set_handle, x_scroll_bar_remove)
13896 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
13897 (x_scroll_bar_report_motion, x_scroll_bar_clear):
13898 * xfns.c (x_set_background_color):
13899 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
13900 Access the new x_window field directly.
13901
13902 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
13903 (allocate_pseudovector): Make non-static.
13904
13905 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
13906 (allocate_pseudovector): Declare.
13907 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
13908
139092007-11-15 Andreas Schwab <schwab@suse.de>
13910
13911 * editfns.c (Fformat): Correctly format EMACS_INT values.
13912 Also take precision into account when formatting an integer.
13913
13914 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
13915
139162007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
13917
13918 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
13919 (syms_of_keyboard): Defsubr it.
13920
13921 * data.c (swap_in_global_binding): Fix longstanding bug where
13922 store_symval_forwarding was not called with the right second argument,
13923 thus causing objfwd-ing from being dropped.
13924
139252007-11-14 Juanma Barranquero <lekktu@gmail.com>
13926
13927 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
13928 (Fx_display_pixel_height, Fx_display_planes)
13929 (Fx_display_color_cells, Fx_server_max_request_size)
13930 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13931 (Fx_display_visual_class, Fx_display_save_under):
13932 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
13933 (Fx_display_pixel_height, Fx_display_planes)
13934 (Fx_display_color_cells, Fx_server_max_request_size)
13935 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
13936 (Fx_display_mm_height, Fx_display_mm_width)
13937 (Fx_display_backing_store, Fx_display_visual_class)
13938 (Fw32_select_font, Fx_display_save_under):
13939 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
13940 (Fx_display_pixel_height, Fx_display_planes)
13941 (Fx_display_color_cells, Fx_server_max_request_size)
13942 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13943 (Fx_display_save_under): Fix typos in docstrings.
13944
139452007-11-14 Juanma Barranquero <lekktu@gmail.com>
13946
13947 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
13948 corresponding to deleted entries; they are an implementation detail.
13949 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
13950 Remove variables.
13951 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
13952 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
13953 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
13954 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
13955 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
13956 (Fw32_define_rgb_color, Fw32_load_color_file)
13957 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
13958 Fix typos in docstrings.
13959 (Fx_server_version): Reflow docstring.
13960 (Fw32_shell_execute): Doc fixes.
13961
139622007-11-13 Juanma Barranquero <lekktu@gmail.com>
13963
13964 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
13965 if w32_parse_hot_key returned nil.
13966
139672007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
13968
13969 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
13970
139712007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 13972
aac0c6e3
MR
13973 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
13974
13975 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
13976
13977 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
13978 Remove W32_SCROLL_BAR_CLICK_EVENT.
13979
13980 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
13981 Add MULTIMEDIA_KEY_EVENT.
13982
13983 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
13984 (lispy_multimedia_keys) [WINDOWSNT]: New array.
13985 (make_lispy_event) [WINDOWSNT]: Use it to translate
13986 MULTIMEDIA_KEY_EVENT.
13987
13988 * w32term.h (WM_APPCOMMAND): Define if not already.
13989 (GET_APPCOMMAND_LPARAM): Likewise.
13990
13991 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
13992 WM_APPCOMMAND.
13993
13994 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
13995 (syms_of_w32fns): Export and initialize it.
13996 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
13997
139982007-11-09 Chong Yidong <cyd@stupidchicken.com>
13999
14000 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
14001 twice.
14002
14003 * xdisp.c (handle_face_prop): Fix last change.
14004
140052007-11-09 Richard Stallman <rms@gnu.org>
14006
14007 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
14008 not just for after-strings and before-strings.
14009 Call face_for_overlay_string and pass the overlay to it.
14010 (handle_display_prop): Determine whether property came from an overlay.
14011 Pass OVERLAY arg to handle_single_display_spec.
14012 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
14013 (load_overlay_strings): Fill in it->string_overlays.
14014 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
14015
14016 * xfaces.c (face_for_overlay_string): Function renamed from
14017 face_at_buffer_position_no_overlays, and add arg OVERLAY.
14018
14019 * dispextern.h (struct it): New elt string_overlays.
14020 New elt from_overlay, also in stack.
14021 Rearrange a few elements.
14022 (face_for_overlay_string): Decl renamed from
14023 face_at_buffer_position_no_overlays, and add argument.
14024
140252007-11-09 Richard Stallman <rms@gnu.org>
14026
14027 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
14028 to get the base face for an overlay string.
14029
14030 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
14031
14032 * xfaces.c (face_at_buffer_position_no_overlays): New function.
14033
14034 * xdisp.c (handle_stop): Move some code out of loop.
14035
140362007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14037
14038 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
14039 Fix conversion from Lisp object to ATSUFontID.
14040
140412007-11-09 Jason Rumney <jasonr@gnu.org>
14042
14043 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
14044
140452007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14046
14047 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
14048 Don't assume regions are aligned to page boundary.
14049 (print_load_command_name): Add LC_UUID if defined.
14050
140512007-11-09 Richard Stallman <rms@gnu.org>
14052
14053 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
14054
140552007-11-07 Jason Rumney <jasonr@gnu.org>
14056
14057 * s/windows95.h: Remove.
14058
140592007-11-06 Jan Djärv <jan.h.d@swipnet.se>
14060
14061 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
14062 abort with a message on unhandled store_type values.
14063
140642007-11-01 Jan Djärv <jan.h.d@swipnet.se>
14065
14066 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
14067 Remove HAVE_X11R5 and HAVE_X11R4.
14068
140692007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14070
14071 * Makefile.in: Remove references to sunfns.c and sunfns.o.
14072
140732007-11-01 Johan Bockgård <bojohan@gnu.org>
14074
14075 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
14076 Don't set s->stippled_p here, since it has already been set by
14077 x_set_glyph_string_gc from x_draw_glyph_string.
14078
140792007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14080
14081 * sunfns.c: Remove file.
14082
14083 * m/sun386.h:
14084 * m/sun2.h:
14085 * m/sparc.h: Remove Sun windows code.
14086
140872007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
14088
14089 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
14090 (init_keyboard): Set current_kboard's window-system to nil.
14091 (tty_read_avail_input): Typo.
14092 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
14093
140942007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
14095
14096 * s/usg5-4.h:
14097 * s/usg5-3.h:
14098 * s/ptx.h:
14099 * m/is386.h:
14100 * m/ibmps2-aix.h:
14101 * Makefile.in: Remove all mentions of X10.
14102
14103 * dispnew.c (syms_of_display): Don't mention version 10.
14104
141052007-10-28 Juanma Barranquero <lekktu@gmail.com>
14106
14107 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
14108 ($(BLD)/abbrev.$(O)): Remove.
14109
141102007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
14111
14112 Rewrite abbrev.c in Elisp.
14113 * image.c (Qcount): Don't declare as extern.
14114 (syms_of_image): Initialize and staticpro `Qcount'.
14115 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
14116 * emacs.c (main): Don't call syms_of_abbrev.
14117 * Makefile.in (obj): Remove abbrev.o.
14118 (abbrev.o): Remove.
14119 * abbrev.c: Remove.
14120
141212007-10-26 Martin Rudalics <rudalics@gmx.at>
14122
14123 * window.c (window_min_size_2): Don't count header-line.
14124
141252007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
14126
14127 * frame.h (struct frame): Move all bit fields after the first bit
14128 field to take advantage of the available space. Group all the
14129 chars together to reduce wasted space due to padding.
14130
141312007-10-26 Juanma Barranquero <lekktu@gmail.com>
14132
14133 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
14134
14135 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
14136 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
14137 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
14138 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
14139 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
14140 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
14141 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
14142 (last_marked, mark_object_loop_halt): Make static.
14143
14144 * frame.c (syms_of_frame) <delete-frame-functions>:
14145 Fix typo in docstring.
14146
141472007-10-25 Juanma Barranquero <lekktu@gmail.com>
14148
14149 * w32.c (init_environment): Fix tiny memory leak.
14150 (w32_get_resource): Remove unused variable `ok'.
14151
141522007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
14153
14154 Make `window-system' into a keyboard-local variable (rather than
14155 frame-local as done originally by multi-tty).
14156
14157 * keyboard.h (struct kboard): Add Vwindow_system.
14158 * keyboard.c (init_kboard): Set a default for Vwindow_system.
14159 (mark_kboards): Mark Vwindow_system.
14160
14161 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
14162 (init_display): Don't set the obsolete `window-system' frame-param.
14163
14164 * xterm.c (x_term_init):
14165 * w32term.c (w32_create_terminal):
14166 * term.c (init_tty): Set Vwindow_system.
14167 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
14168 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
14169
14170 * xfns.c (Fx_create_frame, x_create_tip_frame):
14171 * w32fns.c (Fx_create_frame, x_create_tip_frame):
14172 * macfns.c (Fx_create_frame):
14173 Don't set the obsolete `window-system' frame-param.
14174
14175 * frame.h (Qwindow_system): Remove.
14176 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
14177 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
14178
141792007-10-24 Richard Stallman <rms@gnu.org>
14180
14181 * frame.c (x_figure_window_size): For fullscreen case,
14182 set USPosition | PPosition without clobbering rest of window_prompting.
14183
14184 * keyboard.c (Fcurrent_idle_time): Doc fix.
14185
14186 * print.c (Fwith_output_to_temp_buffer): Doc fix.
14187
141882007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
14189
14190 * process.c (unwind_request_sigio): Only define if __ultrix__.
14191
14192 * callproc.c (child_setup): Remove spurious *.
14193
14194 * lisp.h (Fget_text_property): Declare.
14195 (have_menus_p): Declare it here rather than in sys-dep header files.
14196 * macterm.h (have_menus_p):
14197 * msdos.h (have_menus_p):
14198 * xterm.h (have_menus_p): Remove.
14199
14200 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
14201 (Fmake_variable_frame_local): Just check the variable's const-ness
14202 rather than checking nil or t.
14203
142042007-10-22 Jason Rumney <jasonr@gnu.org>
14205
14206 * w32fns.c: Include math.h.
14207 (w32_abort): Declaration moved to nt/config.nt.
14208
14209 * s/ms-w32.h (HAVE_STDLIB_H): Define.
14210 (abort): Redefinition moved to nt/config.nt.
14211
14212 * m/windowsnt.h: Remove.
14213
142142007-10-22 Juanma Barranquero <lekktu@gmail.com>
14215
14216 * emacs.c (Fdump_emacs): Fix typo in message.
14217 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
14218 <installation-directory>: Reflow docstring.
14219
142202007-10-22 Juri Linkov <juri@jurta.org>
14221
14222 * minibuf.c: Allow minibuffer default to be a list of default values.
14223 With empty input use the first element of this list as returned default.
14224 (string_to_object)
14225 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
14226 (read_minibuf): If defalt is cons, set histstring to its car.
14227 (Fread_string): If default_value is cons, set val to its car.
14228 (Fread_buffer): If def is cons, use its car.
14229 (Fcompleting_read): If defalt is cons, set val to its car.
14230
142312007-10-21 Michael Albinus <michael.albinus@gmx.de>
14232
14233 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
14234
142352007-10-20 Juanma Barranquero <lekktu@gmail.com>
14236
14237 * doc.c (Fdocumentation): Check for advice in all cases.
14238
142392007-10-19 Chong Yidong <cyd@stupidchicken.com>
14240
14241 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
14242
142432007-10-19 Richard Stallman <rms@gnu.org>
14244
14245 * doc.c (Fdocumentation): Check for and handle an advised function.
14246
142472007-10-19 Juanma Barranquero <lekktu@gmail.com>
14248
14249 * process.c (Fset_process_filter): Doc fix.
14250
142512007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
14252
14253 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
14254 which caused key-translation-map to applied repeatedly (thus breaking
14255 double-mode).
14256
142572007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14258
14259 * xselect.c (x_own_selection, x_handle_selection_clear)
14260 (x_clear_frame_selections):
14261 * w32menu.c (list_of_panes, list_of_items):
14262 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
14263 * textprop.c (validate_plist, interval_has_all_properties)
14264 (interval_has_some_properties, interval_has_some_properties_list)
14265 (add_properties, text_property_list):
14266 * process.c (Fget_buffer_process, list_processes_1, status_notify):
14267 * minibuf.c (Fassoc_string):
14268 * macselect.c (x_own_selection, x_clear_frame_selections)
14269 (Fx_disown_selection_internal):
14270 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
14271 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
14272
142732007-10-17 Chong Yidong <cyd@stupidchicken.com>
14274
14275 * process.c: Link to libs for calling res_init() if available.
14276 (Fmake_network_process): Call res_init() before getaddrinfo or
14277 gethostbyname, if possible.
14278
142792007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14280
14281 * lread.c (read1): Set pvectype for char_tables.
14282
14283 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
14284 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
14285 Add type checks.
14286 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
14287
14288 * alloc.c (free_misc): Use XMISCTYPE.
14289 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
14290
142912007-10-17 Glenn Morris <rgm@gnu.org>
14292
14293 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
14294 (syms_of_minibuf): Add Qcompletion_ignore_case.
14295 * dired.c (Qcompletion_ignore_case): Change to external.
14296 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
14297 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
14298 (Fread_file_name): Use it rather than intern'ing.
14299
14300 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
14301 (Fread_coding_system): Ignore case of user input.
14302
143032007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14304
14305 * xdisp.c (handle_display_prop): Ignore display specs after
14306 replacing one when string text is being replaced.
14307 (handle_single_display_spec): Pretend as if characters with display
14308 property haven't been consumed only when buffer text is being replaced.
14309
143102007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
14311
14312 * xfns.c (Fx_create_frame, Fx_display_list):
14313 * window.c (window_fixed_size_p, enlarge_window)
14314 (shrink_window_lowest_first):
14315 * macterm.c (init_font_name_table):
14316 * macfns.c (Fx_create_frame, Fx_display_list):
14317 * lread.c (close_load_descs):
14318 * keyboard.c (read_char_x_menu_prompt):
14319 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
14320 * coding.c (code_convert_region_unwind): Test the type of an object
14321 rather than just !NILP before extracting data from it.
14322
14323 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
14324
14325 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
14326 (XMISCANY): New macro.
14327 (XMISCTYPE): Use it.
14328 (struct Lisp_Misc_Any): New type.
14329 (union Lisp_Misc): Use it.
14330 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
14331 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
14332 (find_symbol_value, set_internal, default_value, Fset_default)
14333 (Fmake_variable_buffer_local, Fmake_local_variable)
14334 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
14335 (Flocal_variable_if_set_p, Fvariable_binding_locus):
14336 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
14337 * alloc.c (allocate_buffer): Set the size and tag.
14338 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
14339 Use XMISCANY.
14340 (die): Follow the GNU convention for error messages.
14341 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
14342 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
14343 tag any more.
14344 (set_buffer_internal_1):
14345 * frame.c (store_frame_param):
14346 * eval.c (specbind):
14347 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
14348
14349 * doc.c (Fsnarf_documentation): Simplify.
14350
143512007-10-14 Juanma Barranquero <lekktu@gmail.com>
14352
14353 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
14354 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
14355
143562007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
14357
14358 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
14359
143602007-10-14 Juanma Barranquero <lekktu@gmail.com>
14361
14362 * eval.c (do_autoload): Don't save autoloads.
14363
14364 * data.c (Ffset): Save autoload of the function being set.
14365
143662007-10-07 John Paul Wallington <jpw@pobox.com>
14367
14368 * xfns.c (x_create_tip_frame): Set the `display-type' frame
14369 parameter before setting up faces.
14370
143712007-10-13 Eli Zaretskii <eliz@gnu.org>
14372
14373 * ccl.c (Fregister_code_conversion_map):
14374 * keyboard.c (append_tool_bar_item): Reformat last change.
14375
14376 * lisp.h (eabs): Rename from `abs'. All callers changed.
14377
143782007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
14379
14380 * buffer.c (add_overlay_mod_hooklist):
14381 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
14382 * fontset.c (make_fontset):
14383 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
14384 (append_tool_bar_item):
14385 * macmenu.c (grow_menu_items):
14386 * w32menu.c (grow_menu_items):
14387 * xmenu.c (grow_menu_items): Use larger_vector.
14388
143892007-10-13 Eli Zaretskii <eliz@gnu.org>
14390
14391 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
14392 selected frame'' on MSDOS).
14393
143942007-10-12 Martin Rudalics <rudalics@gmx.at>
14395
14396 * frame.c (Qexplicit_name): New variable.
14397 (x_report_frame_params): Report it in parameter alist.
14398 (syms_of_frame): Intern and staticpro it.
14399
144002007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
14401
14402 * macfns.c (x_create_tip_frame): Set terminal for frame.
14403
144042007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
14405
14406 * frame.c (Qenvironment): Remove.
14407 (syms_of_frame) <Qenvironment>: Don't initialize.
14408 (Fdelete_frame): Don't treat the `environment' param specially.
14409 * frame.h (Qenvironment): Don't declare.
14410 * callproc.c (set_initial_environment): Don't set unused frame param.
14411
14412 * frame.c (Fframe_with_environment): Remove.
14413 (syms_of_frame) <Sframe_with_environment>: Don't declare.
14414
14415 * lisp.h (Fframe_with_environment): Don't declare.
14416
144172007-10-10 Juanma Barranquero <lekktu@gmail.com>
14418
14419 * indent.c (indent_tabs_mode, last_known_column)
14420 (last_known_column_modified): Make static.
14421 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
14422
144232007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
14424
14425 * puresize.h (BASE_PURESIZE): Increase to 1170000.
14426
144272007-10-09 Jason Rumney <jasonr@gnu.org>
14428
14429 * w32term.c (x_set_window_size): Disable code that attempts to tell
14430 Lisp code about a size change before it actually happens.
14431
144322007-10-09 Richard Stallman <rms@gnu.org>
14433
14434 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
14435 return HANDLED_RETURN.
14436
144372007-10-08 Martin Rudalics <rudalics@gmx.at>
14438
14439 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
14440 when there's an unread command event.
14441
14442 * frame.c (focus_follows_mouse): Move here from frame.el to allow
14443 window autoselection act appropriately when leaving selected frame.
14444 (syms_of_frame): Initialize focus_follows_mouse.
14445 * frame.h (focus_follows_mouse): Extern it.
14446 * macterm.c (XTread_socket): When focus_follows_mouse is nil
14447 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
14448 * msdos.c (dos_rawgetc): Likewise.
14449 * w32term.c (w32_read_socket): Likewise.
14450 * xterm.c (handle_one_xevent): Likewise.
14451 * xdisp.c (syms_of_xdisp): In doc-string of
14452 mouse-autoselect-window mention focus-follows-mouse.
14453
144542007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14455
14456 * macterm.c (mac_load_query_font): Fix missing return value.
14457 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
14458 Add BLOCK_INPUT.
14459
144602007-10-08 Richard Stallman <rms@gnu.org>
14461
14462 * xdisp.c (get_window_cursor_type): Implement documented behavior
14463 for cursor-in-non-selected-windows = t.
14464
144652007-10-08 Jason Rumney <jasonr@gnu.org>
14466
14467 * w32.c (w32_get_resource): Always close registry keys.
14468
144692007-10-08 Jason Rumney <jasonr@gnu.org>
14470
14471 * makefile.w32-in (LIBS): Add COMCTL32.
14472
14473 * w32fns.c (globals_of_w32fns): Init common controls.
14474
144752007-10-08 Richard Stallman <rms@gnu.org>
14476
14477 * image.c (our_memory_buffer): Rename from omfib_buffer.
14478
144792007-10-08 Richard Stallman <rms@gnu.org>
14480
14481 * buffer.c (Foverlays_at): Doc fix.
14482
144832007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
14484
14485 * fns.c (Fplist_put): Preserve uneven tail data.
14486
144872007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
14488
14489 * termhooks.h (enum event_kind): Remove trailing comma.
14490
14491 * frame.h (enum): Remove trailing comma.
14492
144932007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14494
14495 * w32proc.c (delete_child): Don't terminate threads of zombies.
14496
144972007-10-08 Martin Rudalics <rudalics@gmx.at>
14498
14499 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
14500
14501 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
14502 last-repeatable-command.
14503 (init_kboard): Initialize Vlast_repeatable_command.
14504 (command_loop_1): Set it to real_this_command unless that was
14505 bound to an input event.
14506 (mark_kboards): Mark it.
14507
145082007-10-08 Richard Stallman <rms@gnu.org>
14509
14510 * eval.c (condition-case): Doc fix.
14511
145122007-10-08 Masatake YAMATO <jet@gyve.org>
14513
14514 * xfaces.c (tty_supports_face_attributes_p): Fix code
14515 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
14516 was copied and not edited.
14517
145182007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
14519
14520 Add new `input-decode-map' keymap and use it for terminal
14521 escape sequences.
14522 * keyboard.h (struct kboard): Add Vinput_decode_map.
14523 Remove Vlocal_key_translation_map.
14524 * keyboard.c (read_key_sequence): Add support for input-decode-map.
14525 (init_kboard): Init input-decode-map.
14526 Replace local-key-translation-map back with key-translation-map.
14527 (syms_of_keyboard): Declare input-decode-map.
14528 Remove local-key-translation-map. Update docstrings.
14529 (mark_kboards): Mark Vinput_decode_map.
14530 Don't mark Vlocal_key_translation_map.
14531 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
14532 Replace local-key-translation-map back with key-translation-map.
14533 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
14534 Bind in input-decode-map rather than function-key-map.
14535
14536 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
14537 This was made redundant by the previous introduction of XSETPVECTYPE.
14538
145392007-10-09 Richard Stallman <rms@gnu.org>
14540
14541 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
14542
145432007-09-29 Richard Stallman <rms@gnu.org>
14544
14545 * eval.c (internal_condition_case_2, internal_condition_case_1)
14546 (internal_condition_case): Reenable abort if x_catching_errors ()
14547 to see if that really happens and why.
14548
145492007-10-06 Andreas Schwab <schwab@suse.de>
14550
14551 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
14552
145532007-10-04 Juanma Barranquero <lekktu@gmail.com>
14554
14555 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
14556
145572007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
14558
14559 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
14560
145612007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
14562
14563 * window.h (struct window):
14564 * window.c (struct save_window_data, struct saved_window):
14565 * termhooks.h (struct terminal):
14566 * process.h (struct Lisp_Process):
14567 * frame.h (struct frame):
14568 * buffer.h (struct buffer):
14569 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
14570 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
14571 The size field of (pseudo)vectors is now unsigned.
14572 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
14573
14574 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
14575 Turn `count' into an integer.
14576
14577 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
14578 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
14579 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
14580 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
14581 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
14582
14583 * alloc.c (allocate_pseudovector): New fun.
14584 (ALLOCATE_PSEUDOVECTOR): New macro.
14585 (allocate_window, allocate_terminal, allocate_frame)
14586 (allocate_process): Use it.
14587 (mark_vectorlike): New function.
14588 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
14589 (mark_terminals): Use it.
14590 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
14591 (Fmake_byte_code): Use XSETPVECTYPE.
14592
14593 * frame.c (Fframe_parameters): Minor simplification.
14594
14595 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
14596
14597 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
14598
14599 * buffer.c (Fget_buffer_create, init_buffer_once):
14600 * lread.c (defsubr):
14601 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
14602
14603 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
14604 defined differently in the m/*.h files.
14605 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
14606 (XSETPVECTYPE): New macro.
14607 (XSETPSEUDOVECTOR): Use it.
14608
14609 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
14610 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
14611
14612 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
14613 * lread.c (defvar_per_buffer):
14614 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
14615
14616 * window.c (candidate_window_p): Only consider as visible frames that
14617 are on the same terminal.
14618
14619 * m/ibms390x.h (MARKBIT): Remove unused macro.
14620
146212007-10-01 Juanma Barranquero <lekktu@gmail.com>
14622
14623 * lread.c (Fload): Fix typo in docstring.
14624
146252007-10-01 Michaël Cadilhac <michael@cadilhac.name>
14626
14627 * floatfns.c (Fexpt): Manually check for overflows, so that a power
14628 of a non-zero value can't yield zero.
14629
146302007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
14631
14632 * term.c (term_clear_mouse_face, term_mouse_highlight)
14633 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
14634
14635 * print.c (safe_debug_print): Use XHASH.
14636
14637 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
14638 Lisp elements such as tags.
14639 (XHASH): New macro.
14640 (EQ): Use it.
14641 (SREF, SSET, STRING_COPYIN): Use SDATA.
14642 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
14643
14644 * alloc.c (mark_terminal): Remove left-over declaration.
14645 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
14646 (allocate_vectorlike): Remove type argument. Adjust callers.
14647 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
14648 Only handle the one remaining MEM_TYPE_VECTORLIKE.
14649
14650 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
14651 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
14652 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
14653 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
14654 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
14655 Use them.
14656
14657 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
14658 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
14659 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
14660
146612007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
14662
14663 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
14664 loaded by default.
14665
146662007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
14667
14668 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
14669 on this tty.
14670 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
14671
14672 * term.c (mouse_face_window): Rename from Qmouse_face_window.
14673 Update all users.
14674 (handle_one_term_event): Use Gpm_DrawPointer.
14675 (Fgpm_mouse_start): Rename from Fterm_open_connection.
14676 Signal errors instead of returning nil. Always return nil.
14677 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
14678 Make it a noop if gpm-mouse was not activated.
14679 (syms_of_term): Update names.
14680
146812007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
14682
14683 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
14684 (init_sys_modes): Check that gpm_tty is the current tty.
14685
14686 * alloc.c (allocate_terminal): Set the vector size to only count the
14687 lisp fields. Initialize those to nil.
14688 (mark_object): Don't treat terminals specially.
14689 (mark_terminal): Remove.
14690 (mark_terminals): Use mark_object instead.
14691
14692 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
14693 the GC to the beginning.
14694
14695 * indent.h:
14696 * indent.c: Use EMACS_INT for ints coming from Elisp data.
14697
14698 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
14699
147002007-09-25 Jason Rumney <jasonr@gnu.org>
14701
14702 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
14703
14704 * w32console.c (create_w32cons_output): Remove.
14705
14706 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
14707
14708 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
14709 (reset_sys_modes): Use reset_terminal_modes_hook.
14710
147112007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
14712
14713 * eval.c (do_autoload): Don't output any message.
14714
147152007-09-24 Juri Linkov <juri@jurta.org>
14716
14717 * emacs.c (standard_args): Change priority of "--no-splash"
14718 from 40 to 3. Add "--no-desktop" with the same priority.
14719
147202007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
14721
14722 * alloc.c (gc_sweep): Check cons cell mark bits word by word
14723 and optimize the case where they are all 1.
14724
147252007-09-23 Johannes Weiner <hannes@saeurebad.de>
14726
14727 * lisp.h (abs): Define if not defined.
14728 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
14729 Don't define `abs', since it's defined in lisp.h.
14730
147312007-09-22 Eli Zaretskii <eliz@gnu.org>
14732
14733 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
14734 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
14735 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
14736 (init_tty): Use DEV_TTY instead of "/dev/tty".
14737 [WINDOWSNT]: No need to protect from NAME arg being null.
14738
147392007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
14740
14741 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
14742 up the tty state.
14743
147442007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14745
14746 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
14747 (gpm_tty): Change its type.
14748 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
14749 (gpm_tty): Change its type and initialize it.
14750 (Fterm_open_connection): Check the frame is indeed a tty.
14751 Use the new gpm_tty.
14752 (Fterm_close_connection): Use the new gpm_tty.
14753 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
14754 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
14755
147562007-09-21 Juanma Barranquero <lekktu@gmail.com>
14757
14758 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
14759 underline_color, to draw strike-through.
14760
147612007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14762
14763 * lisp.h (allocate_terminal): Declare.
14764
14765 * window.c (candidate_window_p): Consider frames that are being placed
14766 by the user as somewhere between visible and iconified.
14767 (window_loop): Prefer windows on the current frame.
14768 (Fselect_window): Move the use of select-frame to the beginning so we
14769 can just delegate all the work (it'll call us back anyway).
14770
14771 * frame.c (Qdisplay_environment_variable):
14772 * frame.h (Qdisplay_environment_variable): Delete.
14773
14774 * .gdbinit (xbacktrace): Print the arg's address rather than the value
14775 of the first arg, since that value may be a union.
14776
14777 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
14778 parameter rather than Qdisplay_environment_variable. If all else
14779 fails, look for DISPLAY in initial-environment.
14780
147812007-09-21 Glenn Morris <rgm@gnu.org>
14782
14783 * Makefile.in (emacstool): Remove target.
14784 (lisp, shortlisp): Remove termdev.elc.
14785
147862007-09-21 Markus Triska <markus.triska@gmx.at>
14787
14788 * xterm.c (x_delete_display): Compile session management conditionally.
14789
147902007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
14791
14792 * callproc.c (getenv_internal_1): New function.
14793 (getenv_internal): Use it.
14794 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
14795
14796 * terminal.c (get_terminal): Don't accept ints to represent terminals.
14797 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
14798 (Fset_terminal_parameter): Work with dead terminals as well.
14799 (Fmodify_terminal_parameters): Remove.
14800
14801 * terminal.c (get_terminal): Handle terminals.
14802 Make sure the terminal returned is live.
14803 (create_terminal): Use allocate_terminal.
14804 (mark_terminals): Move to alloc.c.
14805 (delete_terminal): Use terminal->name as liveness status.
14806 NULL out fields after freeing their contents.
14807 Don't deallocate the object.
14808 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
14809 rather than an int.
14810 (Fterminal_live_p): Accept non-integer arguments.
14811 (Fterminal_list): Return terminal objects rather than an ints.
14812
14813 * alloc.c (enum mem_type): New member for `terminal' objects.
14814 (allocate_terminal): New function.
14815 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
14816 Handle terminals.
14817 (mark_terminal): New fun.
14818 (mark_terminals): Move from terminal.c.
14819
14820 * term.c (get_tty_terminal): Don't treat output_initial specially.
14821 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
14822 (delete_tty): Use terminal->name as liveness status.
14823
14824 * termhooks.h (struct terminal): Make it into a pseudovector.
14825 Remove `deleted' replaced by checking `name's nullness.
14826
14827 * print.c (print_object): Handle terminals.
14828
14829 * lisp.h (enum pvec_type): New `terminal' pseudovector.
14830 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
14831
14832 * frame.c (make_terminal_frame):
14833 * keyboard.c (tty_read_avail_input):
14834 * w32term.c (x_delete_terminal):
14835 * xfns.c (Fx_create_frame, x_create_tip_frame):
14836 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
14837
148382007-09-20 Glenn Morris <rgm@gnu.org>
14839
14840 * process.c (Fmake_network_process): Doc fix.
14841
148422007-09-19 Jason Rumney <jasonr@gnu.org>
14843
14844 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
14845
148462007-09-19 Michaël Cadilhac <michael@cadilhac.name>
14847
14848 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
14849 Fix a C warning regarding variable constness.
14850
14851 * xterm.c (handle_one_xevent): Fix a C warning.
14852
148532007-09-18 Jason Rumney <jasonr@gnu.org>
14854
14855 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
14856
148572007-09-17 Jan Djärv <jan.h.d@swipnet.se>
14858
14859 * gtkutil.c (gdpy_def): New variable.
14860 (xg_initialize): Initialize gdpy_def.
14861 (xg_display_close): If no other display exists, set gdpy_def to a
14862 new connection.
14863
148642007-09-16 Jan Djärv <jan.h.d@swipnet.se>
14865
14866 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
14867 when we have no file name for the icon.
14868 (xg_tool_bar_expose_callback): Remove.
14869 (xg_create_tool_bar): Don't connect expose signal to
14870 xg_tool_bar_expose_callback.
14871 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
14872
148732007-09-16 Andreas Schwab <schwab@suse.de>
14874
14875 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
14876 values instead of zapping them.
14877
148782007-09-14 Glenn Morris <rgm@gnu.org>
14879
14880 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
14881 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
14882 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
14883 scope and rename to omfib_buffer for clarity.
14884 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
14885
148862007-09-14 Kenichi Handa <handa@m17n.org>
14887
14888 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
14889
148902007-09-13 Jason Rumney <jasonr@gnu.org>
14891
14892 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
14893
14894 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
14895
14896 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
14897 (mac_term_init): Call here instead, passing rif.
14898
148992007-09-13 Glenn Morris <rgm@gnu.org>
14900
14901 * s/hpux.h: No longer define `static' as nothing.
14902
149032007-09-13 Johan Bockgård <bojohan@gnu.org>
14904
14905 * callint.c (Fcall_interactively): Remove unused var `fun'.
14906
149072007-09-12 Romain Francoise <romain@orebokech.com>
14908
14909 * window.c (prefer_window_split_horizontally, display_buffer):
14910 Revert 2007-09-08 change.
14911
149122007-09-12 Glenn Morris <rgm@gnu.org>
14913
14914 * alloca.c: Remove file.
14915 * Makefile.in (alloca): Do not undef.
14916 (allocaobj, alloca.o): Remove.
14917 (otherobj): Remove allocaobj.
14918 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
14919 * regex.c (C_ALLOCA): Remove all references and code that was only
14920 used when this was defined.
14921 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
14922 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
14923 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
14924
14925 * Makefile.in (SOURCES, unlock, relock): Delete.
14926
14927 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
14928 (menu_grab_callback): All uses changed.
14929
14930 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
14931 (x_reply_selection_request): All uses changed.
14932
149332007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
14934
14935 * lread.c (load_warn_old_style_backquotes): Change message to look
14936 better when it appears in the middle of byte-compiler messages.
14937
149382007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
14939
14940 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
14941
14942 * xterm.c (x_create_terminal): Add comment.
14943
14944 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
14945
149462007-09-10 Richard Stallman <rms@gnu.org>
14947
14948 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
14949
149502007-09-10 Michaël Cadilhac <michael@cadilhac.name>
14951
14952 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
14953 (DEFUN): Document `intspec', use it instead of `prompt'.
14954
14955 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
14956
14957 * data.c (Finteractive_form): If the interactive specification starts
14958 with a `(', use it as a Lisp form.
14959
14960 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
14961 name and file modes.
14962
14963 * callint.c (Fcall_interactively): Comment fixes.
14964
149652007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
14966
14967 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
14968 and compiled functions.
14969
149702007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
14971
14972 * window.c (prefer_window_split_horizontally): New variable.
14973 (display_buffer): Consider splitting window horizontally depending
14974 on prefer_window_split_horizontally.
14975
149762007-09-08 Eli Zaretskii <eliz@gnu.org>
14977
14978 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
14979
149802007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
14981
14982 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
14983
14984 * frame.c (x_set_frame_parameters): Check number is positive before
14985 using XFASTINT.
14986
14987 * window.c (freeze_window_start): Don't presume selected_window holds
14988 a window object.
14989 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
14990
149912007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
14992
14993 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
14994
149952007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
14996
14997 * window.c (Vsplit_window_preferred_function): New var.
14998 (Fdisplay_buffer): Use it.
14999 (syms_of_window): Export, and initialize it.
15000
150012007-09-06 Pixel <pixel@mandriva.com> (tiny change)
15002
15003 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
15004
150052007-09-06 Glenn Morris <rgm@gnu.org>
15006
15007 * gtkutil.c (menu_grab_callback) <cnt>:
15008 * xselect.c (x_reply_selection_request) <cnt>: Move static
15009 variable to file scope.
15010
150112007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
15012
15013 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
15014 consistent values of selected_frame and selected_window.
15015
150162007-09-04 Jason Rumney <jasonr@gnu.org>
15017
15018 * w32console.c (initialize_w32_display): Zero unused hooks.
15019
150202007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15021
15022 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
15023 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
15024
150252007-09-04 Jason Rumney <jasonr@gnu.org>
15026
15027 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
15028 in w32console.c. Set up input. Remove XXX comments that have been
15029 confirmed as correct.
15030
15031 * s/ms-w32.h (MULTI_KBOARD): Define.
15032
15033 * w32console.c (one_and_only_w32cons): Remove.
15034 (initialize_w32_display): Take terminal argument.
15035
15036 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
15037 initialize_w32_display.
15038 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
15039
15040 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
15041
15042 * keyboard.c (discard_mouse_events): Discard it.
15043 (make_lispy_event): Translate it to a lisp event.
15044 (lispy_wheel_names): Add wheel-left and right events.
15045 (syms_of_keyboard): Enlarge wheel_syms.
15046
15047 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
15048 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
15049
15050 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
15051
15052 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
15053 from WM_MOUSEHWHEEL.
15054 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
15055
15056 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
15057 terminal.
15058
15059 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
15060 keyboard for the terminal.
15061
150622007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15063
15064 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
15065 (Vresume_tty_hook): Rename from Vresume_tty_functions.
15066 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
15067 and resume-tty-function to resume-tty-hook.
15068 (Fsuspend_tty, Fresume_tty): Use new names.
15069
150702007-09-02 Jan Djärv <jan.h.d@swipnet.se>
15071
15072 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
15073 if it starts with "n:".
15074
150752007-08-31 Jan Djärv <jan.h.d@swipnet.se>
15076
15077 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
15078
150792007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
15080
15081 * frame.h:
15082 * frame.c (Qterm_environment_variable): Remove.
15083 (syms_of_frame): Don't init and staticpro it.
15084
15085 * callproc.c (getenv_internal): Remove special case for $TERM.
15086
15087 * callproc.c (Vinitial_environment): New variable.
15088 (set_initial_environment): Initialize it.
15089 (syms_of_callproc): Declare it.
15090 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
15091 TERM under which a process runs is never related to the TERM in which
15092 Emacs is running.
15093
150942007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15095
15096 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
15097 * s/darwin.h: ... do it here.
15098
150992007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
15100
15101 * lisp.h (set_initial_environment): Rename from set_global_environment.
15102
15103 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
15104 removed by mistake on the multi-tty branch.
15105
15106 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
15107 (Fmodify_frame_parameters): Return a value.
15108
15109 * image.c (png_load): Comment-out var only used in commented-out code.
15110
15111 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
15112 before passing it to mark_object.
15113
15114 * xfaces.c (internal_resolve_face_name): Return a value.
15115 (internal_resolve_face_name, resolve_face_name_error): Comment out.
15116
15117 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
15118 (x_icon): Comment-out var only used in commented-out code.
15119
151202007-08-29 Romain Francoise <romain@orebokech.com>
15121
15122 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
15123 QUIT hasn't been provided.
15124
151252007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15126
15127 * callproc.c (child_setup, getenv_internal): Use the
15128 display-environment-variable and term-environment-variable frame params.
15129 (set_initial_environment): Initialise Vprocess_environment.
15130
15131 * config.in: Disable multi-keyboard support on a mac.
15132
15133 * frame.c (Qterm_environment_variable)
15134 (Qdisplay_environment_variable): New variables.
15135 (syms_of_frame): Intern and staticpro them.
15136 (Fmake_terminal_frame): Disable output method test.
15137
15138 * frame.h: Declare them here.
15139
15140 * macfns.c (x_set_mouse_color): Get rif from the frame.
15141 (x_set_tool_bar_lines): Don't use updating_frame.
15142 (mac_window): Add 2 new parameters for consistency with other systems.
15143 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
15144 frame parameters following what is done in X11 and w32. Don't use
15145 FRAME_MAC_DISPLAY_INFO.
15146 (Fx_open_connection, start_hourglass): Remove window-system check.
15147 (x_create_tip_frame): Get the keyboard from the terminal.
15148
15149 * macmenu.c: Reorder includes.
15150 (Fx_popup_menu): Use terminal specific mouse_position_hook.
15151
15152 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
15153 terminal parameter.
15154 (x_clear_frame): Add a frame parameter.
15155 (note_mouse_movement): Get rif from the frame.
15156 (mac_term_init): Initialize the terminal.
15157 (mac_initialize): Make static and move terminal initialization ...
15158 (mac_create_terminal): ... to this new function.
15159
15160 * macterm.h (struct mac_display_info): Add terminal.
15161 (mac_initialize): Delete declaration.
15162
15163 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
15164
15165 * sysdep.c: Comment out text after #endif.
15166
15167 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
15168 is defined. Better initialize ttys in windows. Use terminal
15169 specific mouse_position_hook.
15170
15171 * termhooks.h (union display_info): Add mac_display_info.
15172
15173 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
15174 Set the default minibuffer frame, window_system and the rest of the
15175 frame parameters following what is done in X11.
15176
15177 * w32term.c (w32_initialize): Make static.
15178
15179 * xselect.c (x_handle_selection_clear): Only access
15180 terminal->kboard when MULTI_KBOARD is defined.
15181
15182 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
15183 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
15184
151852007-08-29 Jason Rumney <jasonr@gnu.org>
15186
15187 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
15188 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
15189
15190 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
15191 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
15192
15193 * keyboard.c (restore_kboard_configuration): Only define when
15194 MULTI_KBOARD defined.
15195
15196 * makefile.w32-in: Update dependancies from Makefile.in.
15197 (OBJ1): Add terminal.$(O)
15198
15199 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
15200 Don't define function body.
15201 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
15202
15203 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
15204
15205 * w32.c (request_sigio, unrequest_sigio): Remove.
15206
15207 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
15208 (w32con_clear_frame, w32con_clear_end_of_line)
15209 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
15210 (w32con_delete_glyphs, w32con_set_terminal_window)
15211 (scroll_line, w32_sys_ring_bell): Add frame arg.
15212 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
15213 Add terminal arg.
15214 (PICK_FRAME): Remove.
15215 (w32con_write_glyphs): Use frame specific terminal coding.
15216 (one_and_only_w32cons): New global variable.
15217 (initialize_w32_display): Use it for storing hooks.
15218 (create_w32cons_output): New function.
15219
15220 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
15221 arg a frame.
15222
15223 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
15224 Set window_system.
15225 (x_set_tool_bar_lines): Don't use updating_frame.
15226 (Fx_create_frame): Set terminal and ref count.
15227 (Fx_open_connection): Remove window-system check.
15228
15229 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
15230
15231 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
15232 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
15233 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
15234 Add frame arg.
15235 (x_delete_terminal, w32_create_terminal): New functions.
15236 (w32_term_init): Create a terminal.
15237 (w32_initialize): Move terminal specific initialization to
15238 w32_create_terminal.
15239
15240 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
15241 (w32_clear_rect, w32_clear_area): Use background from frame.
15242 (w32_display_info): Add terminal.
15243 (w32_sys_ring_bell, x_delete_display): Declare here.
15244
15245 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
15246
15247 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
15248
152492007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
15250
15251 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
15252 Fix get_named_tty calls for the controlling tty.
15253
152542007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
15255
15256 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
15257
152582007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
15259
15260 * term.c (tty_insert_glyphs): Add missing first parameter.
15261
152622007-08-29 Károly Lőrentey <karoly@lorentey.hu>
15263
15264 * buffer.c (Fbuffer_list, Fbury_buffer):
15265 Take frame->buried_buffer_list into account.
15266
15267 * cm.c (current_tty): New variable, for cmputc().
15268 (cmputc): Use it.
15269 (cmcheckmagic): Add tty parameter, look up terminal streams there.
15270 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
15271 (cmgoto): Add tty parameter. Pass it on to calccost().
15272 Use emacs_tputs() instead of tputs().
15273
15274 * cm.h (emacs_tputs): New macro to set current_tty, and then call
15275 tputs().
15276 (current_tty): New variable, for cmputc().
15277 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
15278
15279 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
15280 (internal_condition_case, internal_condition_case_1)
15281 (internal_condition_case_2): Don't abort when x_catching_errors.
15282
15283 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
15284 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
15285 prevent crashes caused by bogus longjmps in read_char.
15286
15287 * keymap.h (Fset_keymap_parent): Add EXFUN.
15288
15289 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
15290 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15291 Remove redundant definition.
15292
15293 * macfns.c (x_set_mouse_color, x_make_gc):
15294 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15295
15296 * w32term.c (x_free_frame_resources):
15297 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15298 (w32_initialize): Use the accessor macros for terminal characteristics.
15299
15300 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
15301 Use the accessor macros for terminal characteristics.
15302 * msdos.c (internal_terminal_init): Use the accessor macros for
15303 terminal characteristics.
15304 (ScreenVisualBell, internal_terminal_init):
15305 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15306
15307 * termopts.h (no_redraw_on_reenter): Declare.
15308
15309 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
15310 (mark_terminals, mark_ttys): Declare.
15311 (Fgarbage_collect): Call them.
15312 (mark_object): Mark buried_buffer_list.
15313
15314 * prefix-args.c: Include stdlib.h for exit.
15315
15316 * syssignal.h: Add comment.
15317
15318 * indent.c: Include stdio.h.
15319
15320 * window.h (Vinitial_window_system): Declare.
15321 (Vwindow_system): Delete declaration.
15322
15323 * fontset.c (Finternal_char_font): Use FRAME_RIF.
15324
15325 * image.c (lookup_image): Don't initialize `c' until the xasserts
15326 have been run.
15327
15328 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
15329 FRAME_FOREGROUND_PIXEL.
15330
15331 * print.c (print_preprocess): Don't lose print_depth levels while
15332 iterating.
15333
15334 * widget.c (update_from_various_frame_slots):
15335 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15336
15337 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
15338 frames.
15339 (window_internal_height): Remove bogus make_number call.
15340 (init_window_once): Call make_terminal_frame with two zero parameters.
15341
15342 * fileio.c (Fread_file_name): Update comment.
15343
15344 * callint.c (Fcall_interactively):
15345 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
15346 Make sure it is correctly unwound.
15347
15348 * xsmfns.c (x_session_close): New function.
15349
15350 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
15351 Delete declarations.
15352
15353 * xterm.h: Remove declaration for x_fully_uncatch_errors.
15354 (x_output): Remove background_pixel and foreground_pixel fields.
15355 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
15356 (x_delete_device, x_session_close): Declare.
15357
15358 * lread.c: Include setjmp.h. Update declaration of `read_char'.
15359 (read_filtered_event): Call `read_char' with a local
15360 `wrong_kboard_jmpbuf'.
15361
15362 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
15363 Don't call single_kboard_state. Use FRAME_RIF.
15364
15365 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
15366 systems.
15367
15368 * lisp.h (set_process_environment): Rename to `set_global_environment'.
15369 (Fframe_with_environment, Fset_input_meta_mode)
15370 (Fset_quit_char): EXFUN.
15371 (x_create_device, tty_output, terminal, tty_display_info): Declare.
15372 (init_sys_modes, reset_sys_modes): Update prototypes.
15373 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
15374
15375 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
15376 Vlocal_key_translation_map, and Vkeyboard_translate_table.
15377 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
15378 Delete declarations.
15379 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
15380 (temporarily_switch_to_single_kboard, tty_read_avail_input):
15381 New declarations.
15382
15383 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
15384 already does that during init_display(). Call syms_of_keymap
15385 before syms_of_keyboard. Call `syms_of_terminal'.
15386 Call set_initial_environment, not set_process_environment.
15387 (shut_down_emacs): Call reset_all_sys_modes() instead of
15388 reset_sys_modes().
15389
15390 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
15391 (internal_resolve_face_name, resolve_face_name_error): New functions.
15392 (resolve_face_name): Protect against loops and errors thrown by Fget.
15393 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
15394 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
15395
15396 * scroll.c: Replace CURTTY() with local variables throughout the
15397 file (where applicable).
15398 (calculate_scrolling, calculate_direct_scrolling)
15399 (scrolling_1, scroll_cost): Use the accessor macros for terminal
15400 characteristics.
15401
15402 * keymap.c (Vfunction_key_map): Remove.
15403 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
15404 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
15405 (Vkey_translation_map): Remove.
15406 (syms_of_keymap): Remove DEFVAR for key-translation-map.
15407 (Fdescribe_buffer_bindings)
15408 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
15409 Update for terminal-local key-translation-map.
15410
15411 * Makefile.in (callproc.o): Update dependencies.
15412 (lisp, shortlisp): Add termdev.elc.
15413 (obj): Add terminal.o.
15414 (terminal.o): Add dependencies.
15415 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
15416 (data.o, fns.o): Add termhooks.h dependency.
15417 (SOME_MACHINE_LISP): Add dnd.elc.
15418 (minibuf.o): Fix typo.
15419 Update dependencies.
15420
15421 * data.c (do_symval_forwarding, store_symval_forwarding)
15422 (find_symbol_value): Use the selected frame's keyboard, not
15423 current_kboard.
15424
15425 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
15426 Vwindow_system.
15427
15428 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
15429 Fmenu_bar_open.
15430 (syms_of_xmenu): Update defsubr.
15431 (mouse_position_for_popup, Fx_popup_menu)
15432 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
15433 (set_frame_menubar, free_frame_menubar)
b97439ce 15434 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
15435 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
15436 an X frame.
15437
15438 * xselect.c (x_own_selection): Abort if not an X frame.
15439 (some_frame_on_display): Check if it is an X frame.
15440 (x_handle_selection_clear): Deal with MULTI_KBOARD.
15441
15442 * coding.c: Include frame.h and termhooks.h.
15443 (terminal_coding, keyboard_coding): Delete.
15444 (Fset_terminal_coding_system_internal)
15445 (Fset_keyboard_coding_system_internal)
15446 (Fkeyboard_coding_system)
15447 (Fterminal_coding_system): Add a terminal parameter.
15448 Get terminal_coding from the terminal.
15449 (init_coding_once): Don't call setup_coding_system here.
15450
15451 * dispextern.h (set_scroll_region, turn_off_insert)
15452 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
15453 (tty_clear_end_of_line, tty_setup_colors)
15454 (delete_tty, updating_frame)
15455 (produce_special_glyphs, produce_glyphs, write_glyphs)
15456 (insert_glyphs): Remove.
15457 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
15458 (tty_turn_off_highlight, get_tty_size): Add declaration.
15459 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
15460
15461 * frame.h (enum output_method): Add output_initial.
15462 (struct x_output): Delete.
15463 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15464 Access foreground_pixel and background_pixel directly from the frame.
15465 (tty_display): Delete.
15466 (struct frame): Add buried_buffer_list, foreground_pixel,
15467 background_pixel and terminal. Delete kboard.
15468 (union output_data): Add tty.
15469 (FRAME_KBOARD): Get the kboard from the terminal.
15470 (FRAME_INITIAL_P): New macro.
15471 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
15472 (Qterm_environment_variable, Qdisplay_environment_variable)
15473 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
15474 New declarations.
15475
15476 * termchar.h (tty_output, tty_display_info): New structures.
15477 (tty_list): Declare.
15478 (FRAME_TTY, CURTTY): New macros.
15479 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
15480 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
15481 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
15482 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
15483
15484 * callproc.c: Include frame.h and termhooks.h, for terminal
15485 parameters.
15486 (add_env): New function.
15487 (child_setup): Use it.
15488 (child_setup, getenv_internal): Handle the new Vprocess_environment.
15489 (getenv_internal): Fix get_terminal_param call.
15490 (Fgetenv_internal, egetenv): Update doc.
15491 (syms_of_callproc): Initialize Vprocess_environment to nil.
15492 Register and initialize them. Remove obsolete defvars. Update doc
15493 strings.
15494 (child_setup): Handle Vlocal_environment_variables.
15495 (getenv_internal): Add terminal parameter.
15496 Handle Vlocal_environment_variables.
15497 (Fgetenv_internal): Add terminal parameter.
15498 (child_setup, getenv_internal, Fgetenv_internal): Store the local
15499 environment in a frame (not terminal) parameter. Update doc strings.
15500 (set_initial_environment): Rename from set_global_environment.
15501 Store Emacs environment in initial frame parameter.
15502
15503 * xdisp.c (redisplay_internal): Update references to
15504 `previous_terminal_frame'.
15505 (display_mode_line, Fformat_mode_line): Replace calls to
15506 `push_frame_kboard' with `push_kboard'.
15507 (get_glyph_string_clip_rects): Add extra parentheses and
15508 braces to prevent compiler warnings.
15509 (calc_pixel_width_or_height): Add xassert to check that the
15510 frame is alive. Don't call `lookup_image' on a termcap frame.
15511 (message2_nolog, message3_nolog, redisplay_internal)
15512 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
15513 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
15514 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
15515 (Fx_display_pixel_width, Fx_display_pixel_height)
15516 (Fx_display_planes, Fx_display_color_cells)
15517 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
15518 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
15519 (Fx_display_backing_store, Fx_display_visual_class)
15520 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
15521 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
15522
15523 * xfns.c (x_set_foreground_color x_set_background_color)
15524 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
15525 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15526 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
15527 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
15528 terminal that is being deleted.
15529 (Fx_create_frame): Use `store_frame_param' to set `window-system'
15530 frame parameter, and make sure it overrides any user-supplied setting.
15531 (Fx_close_connection, Fx_synchronize): Unify argument names with
15532 the rest of the DEFUNs.
15533
15534 * dispnew.c (Fsend_string_to_terminal): Update call to
15535 `get_tty_terminal'.
15536 (Fredraw_frame, Fsend_string_to_terminal)
15537 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
15538 FRAME_TERMCAP_P and FRAME_TTY.
15539 (window_change_signal): Don't believe width/height values that are
15540 impossibly small.
15541 (Vinitial_window_system): Rename from Vwindow_system.
15542 (termscript, Wcm, rif): Delete.
15543
15544 * termhooks.h (struct terminal): New struct containing the
15545 previously global text display hooks and new members NAME,
15546 DELETED and PARAM_ALIST.
15547 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
15548 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
15549 (FRAME_RIF): New macros.
15550 (get_terminal_param, get_device): New declarations.
15551 (termscript): Delete declaration.
15552
15553 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
15554 (XTflash, x_free_frame_resources, x_scroll_bar_create)
15555 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
15556 FRAME_FOREGROUND_PIXEL.
15557 (x_fully_uncatch_errors): Disable definition.
15558 (x_scroll_bar_expose): Fix reference to foreground pixel.
15559 (XTread_socket): Disable loop on all X displays.
15560 (x_delete_terminal): Don't set terminal->deleted and let
15561 delete_terminal delete the frames on the terminal.
15562 (x_delete_display): Doc update to reflect changes in
15563 delete_terminal.
15564 (x_display_info) <terminal>: Move member earlier in the struct.
15565 (deleting_tty): Remove old variable.
15566 (Fsuspend_tty): Call clear_tty_hooks.
15567 (Fresume_tty, init_tty): Call set_tty_hooks.
15568 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
15569 errors on X frames.
15570 (x_catch_errors_unwind): Abort if x_error_message is NULL.
15571 (handle_one_xevent): Initialize `f' to NULL.
15572 (x_delete_terminal, x_create_terminal): New functions.
15573 (XTset_terminal_modes, XTreset_terminal_modes)
15574 (XTread_socket, x_connection_closed, x_term_init)
15575 (x_term_init, x_delete_display): Add terminal parameter.
15576 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
15577 X connections.
15578
15579 * frame.c: Include termchar.h.
15580 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
15581 (Qwindow_system, Qenvironment, Qterm_environment_variable)
15582 (Qdisplay_environment_variable): New vars.
15583 (Fframep): Deal with output_initial.
15584 (Fframe-live-p): Doc fix.
15585 (Fwindow-system): New function.
15586 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
15587 (make_terminal_frame): Don't create frames on a terminal that is
15588 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15589 (store_frame_param): Check for found_for_frame before calling XFRAME.
15590 (Fmake_terminal_frame): Handle NULL tty names correctly.
15591 (syms_of_frame): Enhance doc string of `default-frame-alist'.
15592 (Fdelete_frame): Remove unused variable `count'. Don't allow other
15593 frames to refer to a deleted frame in their 'environment parameter.
15594 (Fframe_with_environment): New function.
15595 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
15596 (get_future_frame_param): New function.
15597 (Fmake_terminal_frame): Use it.
15598 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
15599
15600 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
15601 * sysdep.c (reset_sys_modes): Update for renames.
15602
15603 * keyboard.c (tty_read_avail_input): New function.
15604 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
15605 (syms_of_keyboard): Defsubr them.
15606 (Fset_input_meta_mode, Fset_quit_char): New functions.
15607 (Fset_input_mode): Split to above functions.
15608 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
15609 parameter. Use it in call to `read_char'.
15610 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
15611 Set wrong_kboard_jmpbuf correctly in recursive calls.
15612 Use current_kboard to access Vkeyboard_translate_table.
15613 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
15614 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
15615 Update longjmp invocations. Remember the original current_kboard,
15616 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
15617 changes it. Comment out unnecessary calls to
15618 `record_single_kboard_state' and `any_kboard_state'.
15619 Update recursive calls.
15620 (wrong_kboard_jmpbuf): Remove global variable.
15621 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
15622 Handle deleted interrupted_kboards correctly; that is a legal
15623 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
15624 and read_char calls. Abort if interrupted_kboard died in read_char.
15625 (any_kboard_state, single_kboard_state)
15626 (push_frame_kboard): Remove function.
15627 (pop_kboard): Switch out of single_kboard mode if the kboard has
15628 been deleted. Remove unused variable. Help debugging by not
15629 changing current_kboard unnecessarily. Set current_kboard to the
15630 kboard of the selected frame when the stored kboard object has
15631 been deleted before pop_kboard.
15632 (temporarily_switch_to_single_kboard): Change first parameter to a
15633 frame pointer. Throw an error when caller wants to change kboards
15634 while in single_kboard mode. Don't push_kboard if we weren't in
15635 single kboard state. Don't pop_kboard if we popped into any
15636 kboard state.
15637 (restore_kboard_configuration): Abort if pop_kboard changed the
15638 kboard in single_kboard mode. Call pop_kboard only after setting
15639 up single_kboard mode.
15640 (Frecursive_edit): Switch to single_kboard mode only in nested
15641 command loops.
15642 (cmd_error, command_loop, command_loop_1, timer_check):
15643 Comment out unnecessary call to `any_kboard_state' and
15644 `record_single_kboard_state'.
15645 (delete_kboard): Exit single_kboard mode if we have just deleted
15646 that kboard. Use FRAME_KBOARD.
15647 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
15648 `fatal_error_signal'.
15649 (record_single_kboard_state): Don't push_kboard if we weren't in
15650 single kboard state. Don't pop_kboard if we popped into any
15651 kboard state.
15652 (push_frame_kboard): Rename to push_kboard.
15653 (kbd_buffer_get_event): Use FRAME_TERMINAL.
15654 (read_avail_input): Read input from all terminals.
15655 (mark_kboards): Also mark Vkeyboard_translate_table.
15656 (kbd_buffer_store_event_hold): Simplify condition.
15657 (read_key_sequence): Reinitialize fkey and keytran at each replay.
15658 (Vkeyboard_translate_table): Move to struct kboard.
15659 (init_kboard): Initialize Vkeyboard_translate_table.
15660 (syms_of_keyboard): Use DEFVAR_KBOARD to define
15661 Vkeyboard_translate_table. Update doc strings. Update docs of
15662 local-function-key-map and function-key-map.
15663
15664 * terminal.c: New file.
15665
15666 * term.c: Include errno.h.
15667 (Vring_bell_function, device_list, initial_device)
15668 (next_device_id, ring_bell, update_begin, update_end)
15669 (set_terminal_window, cursor_to, raw_cursor_to)
15670 (clear_to_end, clear_frame, clear_end_of_line)
15671 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
15672 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
15673 (syms_of_term): Move their initialization to terminal.c.
15674 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
15675 (Ftty_display_color_cells)
15676 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
15677 (clear_tty_hooks, set_tty_hooks)
15678 (init_tty, maybe_fatal): New functions.
15679 (Ftty_type): Return nil if terminal is not on a tty instead of
15680 throwing an error. Doc update.
15681 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
15682 Doc update. Initialize new subrs and variables.
15683 (delete_tty): Use terminal->deleted.
15684 (tty_set_terminal_modes): Rename from set_terminal_modes.
15685 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
15686 (set_scroll_region): Rename to `tty_set_scroll_region'.
15687 (turn_on_insert): Rename to `tty_turn_on_insert'.
15688 (turn_off_insert): Rename to `tty_turn_off_insert'.
15689 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
15690 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
15691 (toggle_highligh): Rename to `tty_toggle_highlight'.
15692 (background_highlight): Rename to `tty_background_highlight'.
15693 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
15694 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
15695 (tty_set_scroll_region, tty_background_highlight)
15696 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
15697 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
15698 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
15699 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
15700 Add static modifier.
15701 (tty_reset_terminal_modes, tty_set_terminal_window)
15702 (tty_set_scroll_region, tty_background_highlight)
15703 (tty_highlight_if_desired, tty_cursor_to)
15704 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
15705 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
15706 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
15707 renames.
15708
157092007-08-28 Jan Djärv <jan.h.d@swipnet.se>
15710
15711 * keyboard.c: Qrtl is new.
15712 (parse_tool_bar_item): Handle :rtl keyword.
15713 (syms_of_keyboard): Intern :rtl keyword.
15714
15715 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
15716
15717 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
15718 so no Lisp code is executed.
15719 (file_for_image, find_rtl_image): New functions.
15720 (xg_get_image_for_pixmap): Use file_for_image.
15721 (update_frame_tool_bar): If direction is RTL, use RTL image if
15722 defined. Use Gtk stock images if defined.
15723
157242007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15725
15726 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
15727 for nonexistent or zero-width glyph in composition glyph.
15728
157292007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
15730
15731 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
15732
15733 * xdisp.c (Finvisible_p): New function.
15734 (syms_of_xdisp): defsubr it.
15735
157362007-08-24 Juanma Barranquero <lekktu@gmail.com>
15737
15738 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
15739 Doc fixes.
15740
157412007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15742
15743 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
15744
157452007-08-24 Martin Rudalics <rudalics@gmx.at>
15746
15747 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
15748 whether decoding has modified buffer contents.
15749
157502007-08-24 Jason Rumney <jasonr@gnu.org>
15751
15752 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
15753 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
15754 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
15755 (init_svg_functions) [HAVE_NTGUI]: New function.
15756 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
15757 (svg_load_image): Use them.
15758 (svg_load_image) [HAVE_NTGUI]: Implement background.
15759
157602007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15761
15762 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
15763 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
15764 (LIBX): Remove @RSVG_LIBS@.
15765 (LIBES): Add $(RSVG_LIBS).
15766
15767 * image.c (svg_load_image): Blend with specified background if exists.
15768 Use IMAGE_BACKGROUND. Add Mac OS Support.
15769
15770 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
15771 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
15772 Remove macros.
15773 [MAC_OSX] (socket_callback): Do nothing.
15774 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
15775 ReceiveNextEvent.
15776 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
15777 socket_callback.
15778 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
15779
157802007-08-22 Glenn Morris <rgm@gnu.org>
15781
15782 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
15783
157842007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
15785
15786 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
15787
15788 * image.c: Add support for SVG images. Some additional comments
15789 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
15790 (svg_image_p): New function to test for SVG image.
15791 (svg_load): New function to load SVG image.
15792 (svg_load_image): New function, helper for svg_load.
15793 (Qsvg): New Lisp_object.
15794 (svg_keyword_index): New enum.
15795 (svg_format): New static `image_keyword' struct.
15796 (svg_type): New static `image_type' struct.
15797 (librsvg/rsvg.h): Include it.
15798
157992007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
15800
15801 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
15802
158032007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
15804
15805 * lread.c (Qold_style_backquotes): New var.
15806 (syms_of_lread): Init and staticpro it.
15807 (load_warn_old_style_backquotes): New fun.
15808 (Fload): Use them to warn about old style backquotes.
15809 (end_of_file_error, Fload): Remove unused vars.
15810
15811 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
15812
15813 * lread.c (Vold_style_backquotes): New var.
15814 (syms_of_lread): Init and export it to Elisp.
15815 (read1): Set it when we find an old-style (back)quote.
15816
158172007-08-22 Jason Rumney <jasonr@gnu.org>
15818
15819 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
15820
158212007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
15822
15823 * puresize.h (BASE_PURESIZE): Increase to 1140000.
15824
158252007-08-19 Richard Stallman <rms@gnu.org>
15826
15827 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
15828
158292007-08-19 Andreas Schwab <schwab@suse.de>
15830
15831 * alloc.c (pure): Round PURESIZE up.
15832
158332007-08-17 Jan Djärv <jan.h.d@swipnet.se>
15834
15835 * xterm.c (handle_one_xevent): Remove check that mouse click is in
15836 active frame.
15837
158382007-08-16 Richard Stallman <rms@gnu.org>
15839
15840 * eval.c (Fcommandp): Add parens to clarify.
15841
15842 * minibuf.c (Fall_completions): Use enum for type of table.
15843
15844 * emacs.c (USAGE2): Improve text.
15845
158462007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
15847
15848 * term.c (tty_default_color_capabilities): Declare static
15849 variables in file scope, to avoid HPUX compiler problem.
15850
158512007-08-13 Jan Djärv <jan.h.d@swipnet.se>
15852
15853 * gtkutil.c (update_frame_tool_bar): Use -1 as index
15854 to gtk_toolbar_insert.
15855
158562007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
15857
15858 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
15859
15860 * insdel.c (reset_var_on_error): New fun.
15861 (signal_before_change, signal_after_change):
15862 Use it to reset (after|before)-change-functions to nil in case of error.
15863 Bind inhibit-modification-hooks to t.
15864 Don't bind (after|before)-change-functions to nil while they run.
15865
158662007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15867
15868 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
15869 filling pixmap with stippled background.
15870
158712007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15872
15873 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
15874 Don't use invisible frame as parent window for repositioning.
15875
158762007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
15877
15878 * print.c (new_backquote_output): Rename from old_backquote_output.
15879 (print): Inverse its logic (according to its name) so as to match the
15880 behavior of new_backquote_flag in lread.c.
15881
158822007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15883
15884 * gmalloc.c (posix_memalign): New function.
15885
15886 * macterm.c (frame_highlight, frame_unhighlight): Don't call
15887 ActivateControl/DeactivateControl here.
15888 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
15889 frame-notice-user-settings is non-nil.
15890 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
15891 for kEventParamFMFontStyle.
15892 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
15893 mac_pass_command_to_system and mac_pass_control_to_system here.
15894 (XTread_socket): Call ActivateControl/DeactivateControl here.
15895 (XTread_socket) [TARGET_API_MAC_CARBON]:
15896 Check mac_pass_command_to_system and mac_pass_control_to_system here.
15897 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
15898 for window repositioning.
15899
159002007-08-08 Glenn Morris <rgm@gnu.org>
15901
15902 * Replace `iff' in doc-strings and comments.
15903
159042007-08-07 Chong Yidong <cyd@stupidchicken.com>
15905
15906 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
15907
159082007-08-07 Martin Rudalics <rudalics@gmx.at>
15909
15910 * fileio.c (Finsert_file_contents): Run format-decode and
15911 after_insert_file_functions on entire buffer when REPLACE is
15912 non-nil and inhibit modification_hooks and point_motion_hooks.
15913 For consistency, run after_insert_file_functions iff something
15914 got inserted. Move signal_after_change and update_compositions
15915 after code running after_insert_file_functions. Make sure that
15916 undo_list doesn't record intermediate steps of the decoding process.
15917
159182007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15919
15920 * emacs.c (main)
15921 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
15922 Call malloc_enable_thread on interactive startup.
15923
15924 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
15925 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
15926 [USE_PTHREAD]: Conditionalize with it.
15927 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
15928 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
15929 New functions.
15930
159312007-08-06 Chong Yidong <cyd@stupidchicken.com>
15932
15933 * xdisp.c (redisplay_window): When restoring original buffer
15934 position, make sure it is still valid.
15935
15936 * image.c (png_load): Ignore png-supplied background color.
15937
159382007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15939
15940 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
15941 Use kCFAbsoluteTimeIntervalSince1970.
15942
15943 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
15944 New variable.
15945 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
15946 event loop should be quit.
15947 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
15948 Quit dialog event loop if quit_dialog_event_loop is set.
15949
15950 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
15951 (Selection): New typedef. Use instead of ScrapRef.
15952 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
15953 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
15954 (mac_clear_selection): Rename from clear_scrap.
15955 (get_flavor_type_from_symbol): New argument SEL and subsume function of
15956 scrap_has_target_type. All uses changed.
15957 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
15958 (mac_selection_has_target_p): New functions.
15959 (mac_put_selection_value): Rename from put_scrap_string.
15960 (mac_get_selection_value): Rename from get_scrap_string.
15961 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
15962 (put_scrap_private_timestamp, scrap_has_target_type)
15963 (get_scrap_private_timestamp): Remove functions.
15964 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
15965 (x_own_selection, x_get_local_selection):
15966 Use mac_valid_selection_value_p.
15967 (x_own_selection): Don't use put_scrap_private_timestamp.
15968 Record OWNERSHIP-INFO into Vselection_alist instead.
15969 (x_get_local_selection): Don't check type if request is local.
15970 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
15971 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
15972
159732007-08-04 Jan Djärv <jan.h.d@swipnet.se>
15974
15975 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
15976 add comment explaining why.
15977
159782007-08-03 Richard Stallman <rms@gnu.org>
15979
15980 * fileio.c (Fvisited_file_modtime): Use make_time.
15981
159822007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
15983
15984 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
15985 build.
15986
159872007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
15988
15989 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
15990
159912007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
15992
15993 * puresize.h (BASE_PURESIZE): Increase to 1130000.
15994
159952007-07-30 Richard Stallman <rms@gnu.org>
15996
15997 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
15998
159992007-07-29 Jan Djärv <jan.h.d@swipnet.se>
16000
16001 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
16002
160032007-07-28 Nick Roberts <nickrob@snap.net.nz>
16004
16005 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
16006 remote default-directory.
16007
16008 * buffer.c (mode-line-format): Update doc string.
16009
160102007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16011
16012 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
16013 scroll bar gap.
16014 (x_scroll_bar_create): Set bar->fringe_extended_p.
16015 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
16016 on frame edge. Check fringe background extension. Don't clear
16017 extended fringe background area.
16018
16019 * w32term.h (struct scroll_bar): New member fringe_extended_p.
16020 (w32_fill_area): Enclose multiple statements with do ... while (0).
16021
16022 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
16023 Extend fringe background to scroll bar gap.
16024 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
16025 Set bar->fringe_extended_p.
16026 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16027 Put leftmost/rightmost scroll bars on frame edge. Check fringe
16028 background extension. Don't clear extended fringe background area.
16029
16030 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
16031 New member fringe_extended_p.
16032
160332007-07-25 Glenn Morris <rgm@gnu.org>
16034
16035 * Relicense all FSF files to GPLv3 or later.
16036
16037 * COPYING: Switch to GPLv3.
16038
160392007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
16040
16041 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
16042
16043 * data.c (Finteractive_form): Check for the presence of an
16044 `interactive-form' symbol property more thoroughly.
16045
16046 * data.c (Finteractive_form): Use an `interactive-form' property if
16047 present, analogous to the function-documentation property.
16048
160492007-07-24 Jason Rumney <jasonr@gnu.org>
16050
16051 * w32fns.c (x_real_positions): Get real position from OS instead of
16052 calculating it.
16053
160542007-07-23 Jason Rumney <jasonr@gnu.org>
16055
16056 * filelock.c (current_lock_owner): Allow for @ sign in username.
16057
160582007-07-22 Nick Roberts <nickrob@snap.net.nz>
16059
16060 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
16061 remote default-directory.
16062
16063 * buffer.c (mode-line-format): Describe above case in doc string.
16064
160652007-07-20 Eli Zaretskii <eliz@gnu.org>
16066
16067 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
16068 Define if not defined.
16069
160702007-07-18 Jason Rumney <jasonr@gnu.org>
16071
16072 * w32proc.c (w32_executable_type): Handle 64 bit executables.
16073
160742007-07-18 Richard Stallman <rms@gnu.org>
16075
16076 * data.c (Fsetq_default): Doc fix.
16077
16078 * eval.c (Fsetq): Doc fix.
16079
160802007-07-18 Juanma Barranquero <lekktu@gmail.com>
16081
16082 * coding.c (Ffind_operation_coding_system):
16083 * eval.c (For, Fand): Doc fixes.
16084 Reported by Johan Bockgård.
16085
160862007-07-18 Jan Djärv <jan.h.d@swipnet.se>
16087
16088 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
16089
16090 * xterm.h: Declare x_ewmh_activate_frame.
16091
16092 * xterm.c (x_ewmh_activate_frame): New function.
16093 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
16094
160952007-07-17 Martin Rudalics <rudalics@gmx.at>
16096
16097 * window.c (Fdisplay_buffer): If largest or LRU window is the
16098 only window, split it even if it is not eligible for splitting.
16099 This restores the original behavior broken by the 2007-07-15
16100 change.
16101
161022007-07-17 Glenn Morris <rgm@gnu.org>
16103
16104 * abbrev.c (abbrev_check_chars): New function.
16105 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16106 Call abbrev_check_chars to check abbrev characters are word
16107 constituents. Doc fix.
16108
161092007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
16110
16111 * process.c (Fstart_process, Fmake_network_process)
16112 (read_process_output): Fix up last changes.
16113
161142007-07-16 Eli Zaretskii <eliz@gnu.org>
16115
16116 * makefile.w32-in (clean): Don't delete *~.
16117
161182007-07-16 Andreas Schwab <schwab@suse.de>
16119
16120 * window.c (Fdisplay_buffer): Use NILP.
16121 (Fset_window_scroll_bars): Likewise.
16122
161232007-07-15 Martin Rudalics <rudalics@gmx.at>
16124
16125 * window.c (window_min_size_2): New function.
16126 (window_min_size_1, size_window, Fdisplay_buffer)
16127 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
16128 windows without mode- or header-lines when window-min-height is
16129 too small.
16130 (size_window): Reset nodelete_p after testing it, following an
16131 earlier note by Kim F. Storm.
16132 (display_buffer): Do not set split_height_threshold to twice the
16133 value of window_min_height to avoid changing the value of a
16134 customizable variable. Rather explicitly check whether the
16135 height of the window that shall be splitted is at least as large
16136 as split_height_threshold.
16137 (Fwindow_full_width_p): New defun.
16138 (syms_of_window): Defsubr it.
16139
16140 * window.h: Add EXFUN for Fwindow_full_width_p.
16141
161422007-07-14 Jason Rumney <jasonr@gnu.org>
16143
16144 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
16145
161462007-07-14 Richard Stallman <rms@gnu.org>
16147
16148 * eval.c (maybe_call_debugger): New function.
16149 (find_handler_clause): Use maybe_call_debugger.
16150 Call it when the handler says `debug'.
16151 Eliminate DEBUGGER_VALUE_PTR.
16152 (Fsignal): Eliminate debugger_value.
16153 (Qdebug): New variable.
16154 (syms_of_eval): Initialize it.
16155
161562007-07-14 Juanma Barranquero <lekktu@gmail.com>
16157
16158 * eval.c (Fprogn):
16159 * keyboard.c (Ftrack_mouse):
16160 * print.c (Fwith_output_to_temp_buffer):
16161 * window.c (Fsave_window_excursion): Doc fix.
16162
161632007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
16164
16165 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
16166
161672007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
16168
16169 * process.h (struct Lisp_Process): Turn slots infd, outfd,
16170 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
16171 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
16172 read_output_delay, and read_output_skip from Lisp_Objects to ints.
16173 Remove unused encoding_carryover.
16174 * process.c: Adjust all functions accordingly.
16175
161762007-07-12 Richard Stallman <rms@gnu.org>
16177
16178 * term.c: Include unistd.h only if HAVE_UNISTD_H.
16179
161802007-07-11 Jason Rumney <jasonr@gnu.org>
16181
16182 * makefile.w32-in (LIBS): Include OLE32.
16183
16184 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
16185 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
16186
161872007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
16188
16189 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
16190 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
16191 from a Lisp_Object into a bare pointer.
16192 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16193 Adjust the code correspondingly.
16194
16195 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
16196
16197 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
16198 (term_show_mouse_face): Remove unused var `j'.
16199 (handle_one_term_event): Remove unused vars `i' and `j'.
16200 Don't cast return value of ttyname since it's not necessary.
16201
162022007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
16203
16204 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
16205 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
16206
16207 * fns.c (map_char_table): Use an array of int for `indices' rather than
16208 an array of Lisp_Objects (which are only ever integers anyway).
16209 (Fmap_char_table): Update caller.
16210 * lisp.h: Update prototype.
16211 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
16212 * fontset.c (Ffontset_info):
16213 * casetab.c (set_case_table): Update callers.
16214
16215 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
16216
16217 * keymap.c (struct accessible_keymaps_data)
16218 (struct where_is_internal_data): New structures.
16219 (accessible_keymaps_1, where_is_internal_1): Use them to change
16220 interface to adhere to the one used by map_keymap.
16221 (Faccessible_keymaps, where_is_internal): Use map_keymap.
16222 (accessible_keymaps_char_table, where_is_internal_2): Remove.
16223
16224 * keymap.h (map_keymap_function_t): More informative prototype.
16225
162262007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
16227
16228 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
16229 (looking_at_1): Don't change search_regs and last_thing_searched
16230 if `inhibit-changing-match-data' is non-nil.
16231 (string_match_1, search_buffer, set_search_regs): Likewise.
16232 (syms_of_search): Add Lisp level definition for
16233 `inhibit-changing-match-data' and set it to nil.
16234 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
16235 start and end of the match, instead of using values in search_regs.
16236
162372007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
16238
16239 * minibuf.c (Fcompleting_read): New value `confirm-only'
16240 for `require-match'.
16241
162422007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
16243
16244 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
16245 part of the 2007-06-27 change to syms_of_fileio.
16246
162472007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16248
16249 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
16250 Check WINDOWP before using XWINDOW. Consolidate return statements.
16251
162522007-06-27 Richard Stallman <rms@gnu.org>
16253
16254 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
16255
162562007-06-27 Juanma Barranquero <lekktu@gmail.com>
16257
16258 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
16259
162602007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16261
16262 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
16263 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
16264 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
16265 (_free_internal, memalign): Use them.
16266 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
16267 Initialize to PTHREAD_MUTEX_INITIALIZER.
16268 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
16269 (morecore_nolock): Rename from morecore. All uses changed.
16270 Use only nolock versions of internal allocation functions.
16271 (_malloc_internal_nolock, _realloc_internal_nolock)
16272 (_free_internal_nolock): New functions created from
16273 _malloc_internal, _realloc_internal, and _free_internal.
16274 (_malloc_internal, _realloc_internal, _free_internal): Use them.
16275 Copy hook value to automatic variable before its use.
16276 (memalign): Copy hook value to automatic variable before its use.
16277
162782007-06-26 Kenichi Handa <handa@m17n.org>
16279
16280 * coding.c (Ffind_operation_coding_system): Docstring improved.
16281 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
16282
162832007-06-25 David Kastrup <dak@gnu.org>
16284
16285 * keymap.c (Fcurrent_active_maps): Add `position' argument.
16286 (Fwhere_is_internal): Adjust call to `current-active-maps' to
16287 cater for additional parameter.
16288
16289 * keymap.h: Adjust number of parameters to `current-active-maps'.
16290
16291 * doc.c (Fsubstitute_command_keys): Adjust call of
16292 `current-active-maps'.
16293
162942007-06-25 David Kastrup <dak@gnu.org>
16295
16296 * callint.c (Fcall_interactively): Make the parsing of interactive
16297 specs somewhat more readable.
16298
162992007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16300
16301 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
16302 to scroll bar gap also when bitmap fills fringe. Draw only foreground
16303 if extended background has already been filled.
16304
163052007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16306
16307 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
16308 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
16309
16310 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
16311 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
16312 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
16313 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
16314 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
16315 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
16316 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
16317 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
16318 Run timers during dialog popup.
16319 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
16320
163212007-06-21 Jason Rumney <jasonr@gnu.org>
16322
16323 * image.c (convert_mono_to_color_image): Swap fore and background.
16324
163252007-06-20 Jason Rumney <jasonr@gnu.org>
16326
16327 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
16328 (w32_free_bdf_font): Unmap memory not handle.
16329
163302007-06-20 Sam Steingold <sds@gnu.org>
16331
16332 * gmalloc.c (__morecore): Fix the declaration to comply with the
16333 definition.
16334
163352007-06-20 Juanma Barranquero <lekktu@gmail.com>
16336
16337 * w32term.c (w32_delete_display): Remove leftover declaration.
16338 (w32_define_cursor, w32_initialize): Make static.
16339
16340 * w32.c (_wsa_errlist): Fix typo in error message.
16341 (init_environment): Ignore any environment variable from the
16342 registry having a null value.
16343
163442007-06-20 Glenn Morris <rgm@gnu.org>
16345
16346 * Makefile.in (LIBGIF): Default to -lgif.
16347
163482007-06-17 Jason Rumney <jasonr@gnu.org>
16349
16350 * w32menu.c (add_menu_item): Don't use multibyte string functions on
16351 unicode strings.
16352
163532007-06-16 Juanma Barranquero <lekktu@gmail.com>
16354
16355 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
16356 Fix typo in docstring.
16357
163582007-06-16 Eli Zaretskii <eliz@gnu.org>
16359
16360 * w32menu.c (add_menu_item): Escape `&' characters in menu items
16361 and their keybindings.
16362
163632007-06-15 Chong Yidong <cyd@stupidchicken.com>
16364
16365 * composite.c (update_compositions): Fix last fix.
16366
163672007-06-14 Jason Rumney <jasonr@gnu.org>
16368
16369 * w32.c (get_process_times_fn): New function pointer.
16370 (globals_of_w32): Intialize it if present in kernel32.dll.
16371 (w32_get_internal_run_time): New function.
16372
16373 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
16374
163752007-06-14 Kenichi Handa <handa@etlken.m17n.org>
16376
16377 * composite.c (update_compositions): Check the validness of
16378 compositions.
16379
163802007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16381
16382 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
16383 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
16384
16385 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
16386 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
16387
16388 * macgui.h (USE_MAC_TOOLBAR): New define.
16389
16390 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16391 Return immediately unless popup is activated.
16392
16393 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
16394 background to scroll bar gap.
16395 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
16396 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
16397 scroll bars on frame edge. Check fringe background extension.
16398 Don't clear extended fringe background area.
16399 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
16400 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
16401 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
16402 [USE_MAC_TOOLBAR]: New macros.
16403 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
16404 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
16405 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
16406 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
16407 [USE_MAC_TOOLBAR]: New functions.
16408 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
16409 manually if previous repositioning has failed.
16410 (mac_handle_keyboard_event): Use precomputed event kind.
16411 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
16412 as tool bar item click. Handle mouse movement over tool bar items.
16413
16414 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
16415 toolbar_win_gravity.
16416 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
16417 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
16418 Add externs.
16419
16420 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
16421 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
16422
164232007-06-14 Chong Yidong <cyd@stupidchicken.com>
16424
16425 * image.c (search_image_cache): Remove unused variable.
16426
164272007-06-13 Chong Yidong <cyd@stupidchicken.com>
16428
16429 * xfns.c, xmenu.c: Link to xaw3d if available.
16430
164312007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16432
16433 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
16434 frame_foreground and frame_background.
16435
16436 * image.c (lookup_image): Save frame foreground and background colors.
16437 (search_image_cache): Check if saved and current frame colors match.
16438
164392007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
16440
16441 * regex.c (regex_compile): Remove the `regnum' counter.
16442 Use bufp->re_nsub instead. Add support for \(?N:RE\).
16443
164442007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
16445
16446 * term.c: Include intervals.h to declare Fget_text_property.
16447
164482007-06-10 Jason Rumney <jasonr@gnu.org>
16449
16450 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
16451
164522007-06-08 Juanma Barranquero <lekktu@gmail.com>
16453
16454 * callint.c (Fcall_interactively):
16455 * editfns.c (Fdelete_and_extract_region):
16456 * fileio.c (Fread_file_name):
16457 * fns.c (Fmapconcat):
16458 * keyboard.c (cmd_error_internal):
16459 * keymap.c (Fkey_description):
16460 * lread.c (openp):
16461 * minibuf.c (read_minibuf):
16462 * search.c (wordify):
16463 * sunfns.c (sel_read):
16464 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
16465 * xfns.c (x_default_scroll_bar_color_parameter):
16466 * xmenu.c (menu_help_callback):
16467 * xselect.c (Fx_get_atom_name):
16468 * xterm.c (x_term_init): Use empty_unibyte_string.
16469
164702007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
16471
16472 * alloc.c (init_strings): Initialize canonical empty strings.
16473 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
16474 canonical empty string when the requested size is 0.
16475
16476 * emacs.c (empty_unibyte_string): Rename from empty_string.
16477 (empty_multibyte_string): New canonical empty string.
16478 (syms_of_emacs): Don't initialize empty_string.
16479
16480 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
16481 string, if appropriate.
16482 (empty_unibyte_string, empty_multibyte_string): New externs.
16483 (empty_string): Remove extern.
16484
16485 * lread.c (syms_of_lread): Use empty_unibyte_string.
16486
164872007-06-07 Jason Rumney <jasonr@gnu.org>
16488
16489 * s/ms-w32.h: Don't define HAVE_TZNAME.
16490
16491 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
16492
164932007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16494
16495 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
16496
16497 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
16498 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
16499
16500 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16501 Don't call next handler.
16502 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
16503 Remove argument. Install handler to application.
16504 (set_frame_menubar): Don't change deep_p.
16505 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
16506 FRAME_OUTER_TO_INNER_DIFF_Y.
16507 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
16508 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
16509 [HAVE_DIALOGS]: New macros.
16510 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
16511 Use them.
16512 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
16513
16514 * macselect.c [MAC_OSX] (install_service_handler): Rename from
16515 init_service_handler. All callers changed. Return OSStatus value.
16516
16517 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
16518 All callers changed so as not to call SetPortWindowPort.
16519 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
16520 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
16521 mac_draw_string_common.
16522 (mac_draw_image_string_qd): Likewise.
16523 (mac_draw_string_common): Use them. Add INLINE.
16524 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
16525 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
16526 GetGlobalMouse.
16527 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
16528 and FRAME_OUTER_TO_INNER_DIFF_Y.
16529 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
16530 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
16531 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
16532 repositioning window to mac_handle_window_event.
16533 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
16534 saving window location to mac_handle_window_event
16535 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
16536 (install_menu_target_item_handler): Remove argument in extern.
16537 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
16538 Also accept command events.
16539 (do_keystroke): New function created from XTread_socket.
16540 (init_command_handler): Remove functions.
16541 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
16542 and save window location by kEventWindowShowing and kEventWindowHiding
16543 handlers here. Don't call next handler for window state change and
16544 focus events.
16545 (mac_handle_application_event, mac_handle_keyboard_event)
16546 [TARGET_API_MAC_CARBON]: New functions.
16547 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
16548 kEventWindowShowing and kEventWindowHiding events. Move installation
16549 of mouse, font, text input and menu target item handlers to
16550 install_application_handler.
16551 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
16552 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16553 New function.
16554 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16555 Register it.
16556 (XTread_socket) [TARGET_API_MAC_CARBON]:
16557 Consolidate SendEventToEventTarget calls.
16558 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
16559 Move application activation handler to mac_handle_application_event.
16560 Move keyboard handler to mac_handle_keyboard_event.
16561 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
16562 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
16563 init_command_handler. Call install_application_handler.
16564
16565 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
16566 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
16567
165682007-06-07 Glenn Morris <rgm@gnu.org>
16569
16570 * emacs.c (main): Use `emacs-copyright' in --version output.
16571
165722007-06-06 Chong Yidong <cyd@stupidchicken.com>
16573
16574 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
16575
165762007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16577
16578 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
16579
16580 * macgui.h: Replace WindowPtr with WindowRef.
16581
16582 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16583 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16584 Replace ControlHandle with ControlRef.
16585 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
16586
16587 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16588 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16589 Replace ControlHandle with ControlRef.
16590 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
16591 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
16592
16593 * macterm.h (struct scroll_bar): Rename member control_handle_low
16594 and control_handle_high to control_ref_low and control_ref_high.
16595 All uses changed.
16596 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
16597 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
16598 respectively. All uses changed.
16599 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
16600 (install_window_handler, remove_window_handler): Replace WindowPtr
16601 with WindowRef in externs.
16602
166032007-06-05 Juanma Barranquero <lekktu@gmail.com>
16604
16605 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
16606
166072007-06-03 Nick Roberts <nickrob@snap.net.nz>
16608
16609 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
16610
16611 * frame.c (Fmouse_position, Fmouse_pixel_position):
16612 Condition on HAVE_GPM too.
16613
16614 * term.c (term_mouse_highlight): Remove unused variables.
16615 (Fterm_open_connection): Set gpm_zerobased to 1.
16616 (term_mouse_movement, term_mouse_click, handle_one_term_event):
16617 Use zero based co-ordinates.
16618 (handle_one_term_event): Report a drag as mouse movement too.
16619
16620 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
16621
166222007-06-03 Chong Yidong <cyd@stupidchicken.com>
16623
16624 * image.c (search_image_cache): New function. Require background
16625 color match if background color is unspecified in the image spec.
16626 (uncache_image, lookup_image): Use it.
16627
166282007-06-01 Juanma Barranquero <lekktu@gmail.com>
16629
16630 * window.c (Fshrink_window): Reflow docstring.
16631
166322007-06-02 Chong Yidong <cyd@stupidchicken.com>
16633
16634 * Version 22.1 released.
16635
166362007-06-01 Richard Stallman <rms@gnu.org>
16637
16638 * xfns.c (x_encode_text): Add GCPRO.
16639
166402007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16641
16642 * xfns.c (x_set_name_internal): Save encoded name before
16643 x_encode_text in case string data is relocated.
16644
166452007-05-31 Richard Stallman <rms@gnu.org>
16646
16647 * buffer.c (syms_of_buffer): Doc fix.
16648
166492007-05-30 Nick Roberts <nickrob@snap.net.nz>
16650
16651 * sysdep.c (init_sys_modes): Add rather than replace with
16652 O_NONBLOCK.
16653
16654 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
16655 term_mouse_moveto.
16656
16657 * termhooks.h (term_mouse_moveto): New extern.
16658
16659 * term.c (mouse_face_window): Rename...
16660 (Qmouse_face_window): ...to this.
16661 (term_show_mouse_face, term_clear_mouse_face)
16662 (term_mouse_highlight): Use Qmouse_face_window.
16663 (term_mouse_moveto): New function.
16664 (term_mouse_position): Make it work.
16665 (syms_of_term): Uncomment assignment to mouse_position_hook.
16666 Staticpro Qmouse_face_window.
16667
166682007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16669
16670 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
16671 around current_column call.
16672
166732007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
16674
16675 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
16676 * xdisp.c (next_element_from_buffer):
16677 * window.c (delete_window):
16678 * term.c (term_mouse_highlight):
16679 * msdos.c (getdefdir):
16680 * macterm.c (mac_create_bitmap_from_bitmap_data)
16681 (init_font_name_table):
16682 * fns.c (Fsxhash):
16683 * data.c (Fmake_local_variable):
16684 * ccl.c (ccl_driver): Likewise.
16685
166862007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16687
16688 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
16689 Call mac_wakeup_from_rne on window size change.
16690
166912007-05-25 Chong Yidong <cyd@stupidchicken.com>
16692
16693 * image.c (uncache_image): Fix typo.
16694
166952007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
16696
16697 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
16698
166992007-05-22 Richard Stallman <rms@gnu.org>
16700
16701 * xterm.c (x_connection_closed): Remove NO_RETURN.
16702
167032007-05-22 Martin Rudalics <rudalics@gmx.at>
16704
16705 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
16706
167072007-05-21 Chong Yidong <cyd@stupidchicken.com>
16708
16709 * image.c (uncache_image): New function.
16710 (Fimage_refresh): New function.
16711
167122007-05-20 Jan Djärv <jan.h.d@swipnet.se>
16713
16714 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
16715
167162007-05-20 Nick Roberts <nickrob@snap.net.nz>
16717
16718 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
16719 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
16720
167212007-05-20 Nick Roberts <nickrob@snap.net.nz>
16722
16723 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
16724 conditional on [HAVE_GPM_H].
16725
167262007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
16727
16728 * syntax.c (skip_chars): Update syntax-table only after we checked that
16729 the new location is valid.
16730
167312007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16732
16733 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
16734 mac_get_window_bounds.
16735
167362007-05-20 Nick Roberts <nickrob@snap.net.nz>
16737
16738 * Makefile.in (LIBGPM): Allow it to be set from configure.
16739 If set then link Emacs with it.
16740
16741 * config.in: Regenerate.
16742
16743 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
16744 New externs.
16745
16746 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
16747 Include gpm.h.
16748 (handle_one_term_event, term_gpm): New externs.
16749
16750 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
16751 and allow it to be interrupted by SIGIO.
16752
16753 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
16754 (wait_reading_process_output): Wait on gpm_fd too.
16755 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
16756 (add_gpm_wait_descriptor_called_flag): New variable.
16757 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
16758
16759 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
16760 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
16761 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
16762 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
16763 (make_lispy_event): Add case GPM_CLICK_EVENT.
16764 (read_avail_input): Handle mouse input.
16765
16766 * term.c (write_glyphs_with_face): New function.
16767 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
16768 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
16769 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
16770 (mouse_face_face_id, term_gpm, pos_x, pos_y)
16771 (last_mouse_x, last_mouse_y): New variables.
16772 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
16773 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
16774 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
16775 (Fterm_close_connection): New functions.
16776 (term_init): Initialise mouse_face_window.
16777
167782007-05-19 Chong Yidong <cyd@stupidchicken.com>
16779
16780 * xdisp.c (redisplay_window): If first window line is a
16781 continuation line, recompute the new window start instead of
16782 recentering.
16783
167842007-05-18 Glenn Morris <rgm@gnu.org>
16785
16786 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
16787 Suggested by Alfred M. Szmidt <ams@gnu.org>.
16788
167892007-05-17 Glenn Morris <rgm@gnu.org>
16790
16791 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
16792
167932007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16794
16795 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
16796 dead key repeat and up events.
16797
167982007-05-14 Chong Yidong <cyd@stupidchicken.com>
16799
16800 * image.c (pbm_load): Check image size for monochrome pbm.
16801
168022007-05-13 Chong Yidong <cyd@stupidchicken.com>
16803
16804 * xterm.c (XTread_socket): Revert last change.
16805
168062007-05-12 Chong Yidong <cyd@stupidchicken.com>
16807
16808 * image.c (pbm_load): Correctly check image size for greyscale pbm.
16809
16810 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
16811
168122007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16813
16814 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
16815 mixup (YAILOM).
16816
168172007-05-07 Andreas Schwab <schwab@suse.de>
16818
16819 * keymap.c (Flookup_key): Fix typo in last change.
16820
168212007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16822
16823 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
16824 mapping for unibyte strings.
16825
168262007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16827
16828 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
16829 (Fx_popup_dialog) [MAC_OSX]: Likewise.
16830
168312007-04-29 Richard Stallman <rms@gnu.org>
16832
16833 * insdel.c (replace_range): For undo, record insertion first.
16834
168352007-04-29 Andreas Schwab <schwab@suse.de>
16836
16837 * lisp.h (VECSIZE): Use OFFSETOF.
16838
168392007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16840
16841 * xdisp.c (try_window_reusing_current_matrix): Fix number of
16842 disabled lines.
16843
168442007-04-28 Richard Stallman <rms@gnu.org>
16845
16846 * lread.c (read_escape): In a string, \s is always space.
16847
168482007-04-27 Jan Djärv <jan.h.d@swipnet.se>
16849
16850 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
16851
16852 * gtkutil.c (xg_update_menubar, create_menus): Create empty
16853 submenu for menu bar items.
16854
16855See ChangeLog.10 for earlier changes.
16856
16857;; Local Variables:
16858;; coding: utf-8
16859;; add-log-time-zone-rule: t
16860;; bug-reference-url-format: "http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=%s"
16861;; End:
16862
16863 Copyright (C) 2007, 2008 Free Software Foundation, Inc.
16864
16865 This file is part of GNU Emacs.
16866
16867 GNU Emacs is free software: you can redistribute it and/or modify
16868 it under the terms of the GNU General Public License as published by
16869 the Free Software Foundation, either version 3 of the License, or
16870 (at your option) any later version.
16871
16872 GNU Emacs is distributed in the hope that it will be useful,
16873 but WITHOUT ANY WARRANTY; without even the implied warranty of
16874 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16875 GNU General Public License for more details.
16876
16877 You should have received a copy of the GNU General Public License
16878 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
16879
16880;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40