(follow-calculate-first-window-start-from-below): Avoid looping
[bpt/emacs.git] / src / ChangeLog
CommitLineData
9d2d22ab
CY
12008-12-30 Chong Yidong <cyd@stupidchicken.com>
2
3 * indent.c (Fvertical_motion): Don't advance iterator if we have
4 reseated to the desired position.
5
6 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
7 checking for pos match.
8
545312c2
KH
92008-12-30 Kenichi Handa <handa@m17n.org>
10
1ede3eb6
KH
11 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
12 just get the low 8-bit of the code.
13
545312c2
KH
14 * font.c (font_intern_prop): Validate str as multibyte.
15
bd7bbf29
DN
162008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
17
31e0750e
DN
18 * dispextern.h (struct face): Move lface and hash from the middle
19 of bitfields.
20
bd7bbf29
DN
21 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
22
b5672e7c
DN
232008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
24
25 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
26 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
27 instead of intervals.h.
28
d704470f
AS
292008-12-26 Andreas Schwab <schwab@suse.de>
30
31 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
32 cons.
33
54b33868
MR
342008-12-26 Martin Rudalics <rudalics@gmx.at>
35
36 * textprop.c (Qminibuffer_prompt): New variable.
37 (syms_of_textprop): Initialize it.
38 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
39 in minibuffer-prompt face. (Bug#1662)
40
40b615d6
JR
412008-12-25 Jason Rumney <jasonr@gnu.org>
42
43 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
44
baae5c2d
JR
452008-12-24 Jason Rumney <jasonr@gnu.org>
46
47 * ralloc.c (r_alloc_reset_variable): New function.
48
49 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
85f967f9 50 record of what points where. (Bug#716)
baae5c2d 51
a9051c88
DN
522008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
53
54 * minibuf.c (read_minibuf): Follow the non-interactive case when
55 running as a daemon, before detaching.
56
8b146312
AS
572008-12-22 Andreas Schwab <schwab@suse.de>
58
59 * buffer.c (init_buffer): Use realloc instead of xrealloc.
60 * gtkutil.c (free_widget_value): Use xfree instead of free.
61
56f2de10
MR
622008-12-22 Martin Rudalics <rudalics@gmx.at>
63
64 * frame.c (delete_frame): New function derived from
65 Fdelete_frame to handle Qnoelisp value for FORCE argument.
66 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
67 (Fdelete_frame): Call delete_frame. Remove line from doc-string
68 saying that FORCE non-nil doesn't run `delete-frame-functions'.
69 * frame.h: Extern delete_frame.
70 * window.c (window_loop):
71 * terminal.c (delete_terminal):
72 * xterm.c (x_connection_closed):
73 * xfns.c (Fx_hide_tip):
74 * w32fns.c (Fx_hide_tip): Call delete_frame instead of
75 Fdelete_frame.
76
1fc200d6
JR
772008-12-21 Jason Rumney <jasonr@gnu.org>
78
79 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
80 when character maps to .notdef character.
81
5e252df2
SM
822008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
83
84 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
85
99b72cc4
JR
862008-12-20 Jason Rumney <jasonr@gnu.org>
87
88 * frame.c (Fmake_terminal_frame): Raise an error when called from
85f967f9 89 a graphical frame on Windows. (Bug#1325)
99b72cc4 90
acc49a52
JD
912008-12-20 Jan Djärv <jan.h.d@swipnet.se>
92
93 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
94
6ea15123
CY
952008-12-20 Chong Yidong <cyd@stupidchicken.com>
96
97 * minibuf.c (Fread_buffer): Doc fix.
98
b2dab6c8
JR
992008-12-20 Jason Rumney <jasonr@gnu.org>
100
54ea0c87 101 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
85f967f9 102 server name in UNC paths. (Bug#719)
54ea0c87 103
b2dab6c8 104 * coding.c (decode_coding): Clear chars_at_source flag when using
85f967f9 105 charbuf. (Bug#1035)
b2dab6c8 106
6d1921be
DN
1072008-12-19 Daniel Engeler <engeler@gmail.com>
108
109 * sysdep.c (serial_configure): Fix typo.
110
53934c98
DN
1112008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
112
113 * sysdep.c: Include alloca.h.
f4f634e8
DN
114 (system_process_attributes): Add implementation for Solaris.
115
116 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 117
06e111a6
DN
1182008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
119
120 Reorganize implementation of Flist_system_processes and
121 Fsystem_process_attributes. No functional changes.
122 * process.c: Don't #include pwd.h, grp.h and limits.h.
123 (Flist_system_processes): Just call list_system_processes.
124 (Fsystem_process_attributes): Just call system_process_attributes.
125 (procfs_list_system_processes, time_from_jiffies)
126 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
127 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
128
129 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
130 (list_system_processes): Rename from
131 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
132 Provide a do nothing implementation.
133 (system_process_attributes): Rename from
134 procfs_list_system_processes.
135 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
136 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
137
138 * w32.c (list_system_processes): Rename from
139 w32_list_system_processes.
140 (system_process_attributes): Rename from
141 w32_system_process_attributes.
142
143 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
144
145 * process.h (w32_list_system_processes)
146 (w32_system_process_attributes): Remove.
147 (list_system_processes, system_process_attributes): New
148 prototypes.
149
6a705b23
KH
1502008-12-19 Kenichi Handa <handa@m17n.org>
151
152 * xfont.c (xfont_decode_coding_xlfd): New function.
153 (xfont_encode_coding_xlfd): New function.
154 (xfont_list_pattern): Decode XLFD by iso-8859-1.
155 (xfont_list): Decode and encode XLFD by iso-8859-1.
156 (xfont_match): Likewise.
157 (xfont_list_family): Likewise.
158 (xfont_open): Likewise.
159
160 * ftfont.c (ftfont_open): Genarate a multibyte string if given
161 names are utf-8.
162
163 * xftfont.c (xftfont_open): Genarate a multibyte string if given
164 names are utf-8.
165
5a130941
JD
1662008-12-18 Jan Djärv <jan.h.d@swipnet.se>
167
168 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
169 changed.
bfd20325
JD
170 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
171 clicked on a detached tool bar button.
5a130941 172
fd95644b
DN
1732008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
174
175 * emacs.c (main): Print and error and exit when no data is read
176 from the pipe.
177
e6eee6ae
JR
1782008-12-17 Jason Rumney <jasonr@gnu.org>
179
180 * w32font.c (w32font_has_char): Always return -1.
181
a35dd56b
KH
1822008-12-16 Kenichi Handa <handa@m17n.org>
183
184 * font.c (font_open_entity): Fix previous change.
185
0e3635c2
DN
1862008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
187
188 * process.c: Include <limits.h>.
189
d4835507 1902008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
191
192 * font.c (font_update_drivers): Fix mistake in reconstructing the
193 driver list.
194
1952008-12-16 Chong Yidong <cyd@stupidchicken.com>
196
197 * font.c (font_clear_cache): Fix format of font cache data.
198
e2cbc401
CY
1992008-12-15 Chong Yidong <cyd@stupidchicken.com>
200
201 * xftfont.c (xftfont_open): Free Xft font pattern if
202 XftFontOpenPattern fails.
203
204 * xterm.c (x_free_frame_resources): Remove extraneous call to
205 free_frame_faces.
206
b131d535
CY
2072008-12-13 Chong Yidong <cyd@stupidchicken.com>
208
209 * xterm.c (x_delete_display): Move xim_close_dpy call to
210 x_delete_terminal.
211 (x_delete_terminal): Call xim_close_dpy.
212
e6df5336
JR
2132008-12-13 Jason Rumney <jasonr@gnu.org>
214
215 * w32font.c (intern_font_name): New function.
216 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
217 (w32font_open_internal, Fx_select_font): Decode font name.
218 (fill_in_logfont, list_all_matching_fonts): Encode font name.
219
220 * w32font.h (intern_font_name): Declare new function.
221
222 * w32uniscribe.c (add_opentype_font_name_to_list):
223 Use intern_font_name.
224
20d68145
CY
2252008-12-13 Chong Yidong <cyd@stupidchicken.com>
226
9f2554de
CY
227 * frame.c (Fdelete_frame): Call free_font_driver_list.
228
3d9bec9a
CY
229 * font.c (free_font_driver_list): Implement missing function.
230
20d68145
CY
231 * w32term.c (w32_term_init): Don't initialize the image cache
232 here; it will be done in init_frame_faces.
233
234 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
235 (struct x_display_info): Remove unused member null_pixel. New
236 member xim_callback_data.
237
238 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
239 (xim_initialize): Save pointer to callback function data.
240 (xim_close_dpy): Free callback function data. Call XCloseIM,
241 reverting 2008-11-04 change by David Smith.
242 (x_term_init): Don't initialize the image cache here; it will be
243 done in init_frame_faces. Remove ancient "null_pixel" cruft.
244 (x_delete_display): Free x_dnd_atoms member.
245
96f9306b
KH
2462008-12-13 Kenichi Handa <handa@m17n.org>
247
248 * font.c (font_rescale_ratio): Moved from xfaces.c. Argument
249 type changed. Handle a font-spec too.
250 (font_score): Check Vface_font_rescale_alist.
251 (font_open_entity): Likewise.
252
253 * xfaces.c (font_rescale_ratio): Moved to font.c.
254
8d5b4964
CY
2552008-12-13 Chong Yidong <cyd@stupidchicken.com>
256
257 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
258
e6df5336
JR
2592008-12-12 Jason Rumney <jasonr@gnu.org>
260
261 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
262 Vwindow_system_version to the real w32 major version.
263
97c6058a
DN
2642008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
265
266 * term.c (init_tty): Move setting the terminal name before the
267 potential user: maybe_fatal.
268
ec4e88d7
CY
2692008-12-11 Chong Yidong <cyd@stupidchicken.com>
270
d4835507
JB
271 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
272 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 273
b4233ec9
JR
2742008-12-11 Jason Rumney <jasonr@gnu.org>
275
8ec71e23 276 * w32font.c (fill_in_logfont): Don't assume symbol script means
85f967f9 277 SYMBOL_CHARSET. (Bug#547)
8ec71e23 278
b4233ec9 279 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
e3021fe7 280 size for surrogates. (Bug#1096, bug#872)
b4233ec9 281
011a0143
JB
2822008-12-11 Juanma Barranquero <lekktu@gmail.com>
283
284 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
285
3c309f34
JB
2862008-12-11 Juanma Barranquero <lekktu@gmail.com>
287
288 * process.c (Fsystem_process_attributes, syms_of_process):
289 Fix typo in name of Ssystem_process_attributes.
290 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
291
fedc6ab5
JB
2922008-12-11 Juanma Barranquero <lekktu@gmail.com>
293
294 * syntax.c (Fmodify_syntax_entry): Doc fix.
295
ba3de0e8
JB
2962008-12-10 Juanma Barranquero <lekktu@gmail.com>
297
298 * font.c (Ffont_spec): Move usage to end of docstring.
299
174f1c74
JR
3002008-12-10 Jason Rumney <jasonr@gnu.org>
301
302 * w32font.c (Qcham): New symbol.
303 (font_supported_scripts): Add cham, and comments for other new
304 scripts in bitfield from OpenType spec.
9d32f818
JR
305 (add_font_entity_to_list): Limit unicode-sip fonts to those that
306 contain characters beyond the bmp.
174f1c74 307
7b649478
KH
3082008-12-10 Kenichi Handa <handa@m17n.org>
309
310 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 311 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
312 Qunicode_sip.
313
2133e2d1
JB
3142008-12-10 Juanma Barranquero <lekktu@gmail.com>
315
316 * coding.c (QCdefault_char): Rename from QCdefalut_char.
317 (Fcoding_system_put): Use QCdefault_char.
318 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
319
9af886ee
CY
3202008-12-09 Chong Yidong <cyd@stupidchicken.com>
321
74d819eb
CY
322 * xftfont.c (syms_of_xftfont): Fix typo.
323
4ccfa1c0 324 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 325
7c19d3ae
DN
3262008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
327
328 * emacs.c (main): Close daemon_pipe on exec.
329
567826bb
CY
3302008-12-08 Chong Yidong <cyd@stupidchicken.com>
331
332 * termchar.h (struct tty): New members termcap_term_buffer and
333 termcap_strings_buffer.
334
335 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 336 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
337 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
338 All callers changed.
339 (init_tty): Store termcap data and string buffers in new struct
340 tty members termcap_term_buffer and termcap_strings_buffer.
341 (delete_tty): Free them.
4ccfa1c0 342 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 343
aa96c42b
SZ
3442008-12-07 Seiji Zenitani <zenitani@mac.com>
345
346 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 347 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 348
b7e1d896
CY
3492008-12-06 Chong Yidong <cyd@stupidchicken.com>
350
351 * coding.c (make_conversion_work_buffer): Disable buffer
352 modification hooks in the work buffer.
353
b5ec91a5
EZ
3542008-12-05 Eli Zaretskii <eliz@gnu.org>
355
356 * process.c (procfs_system_process_attributes): If `nread' has a
357 negative value, assign zero to it.
358
a5d2a52b
CY
3592008-12-05 Chong Yidong <cyd@stupidchicken.com>
360
68c5540b 361 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 362
7bf1bb21
KH
3632008-12-05 Kenichi Handa <handa@m17n.org>
364
365 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
366 second character is a combining character.
367
2fdc7d00
EZ
3682008-12-05 Eli Zaretskii <eliz@gnu.org>
369
370 * process.c (procfs_system_process_attributes): Don't use cmd,
371 cmdsize, and q without initializing them first.
372
bf6bfba8
JR
3732008-12-04 Jason Rumney <jasonr@gnu.org>
374
375 * w32font.c (w32font_draw): Initialize orig_clip before getting
376 it, and delete it when finished.
377
a3b1a468
DN
3782008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
379
380 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
381 case when running as a daemon before detaching.
382
8b8be8eb
JB
3832008-12-03 Juanma Barranquero <lekktu@gmail.com>
384
805f2638 385 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 386
b1bde622
KH
3872008-12-03 Kenichi Handa <handa@m17n.org>
388
e500c47d
KH
389 * font.c (font_at): Set `multibyte' at first.
390
ca516334
KH
391 * coding.c (decode_coding_charset): Check type of an element of
392 vector VALIDS.
7bf1bb21 393 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 394
4ccfa1c0 395 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
396 (font_for_char): Likewise.
397
1e5ecd37
CY
3982008-12-03 Chong Yidong <cyd@stupidchicken.com>
399
d5b01609 400 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
401 (font_update_lface): Handle fonts with corrupted size specs,
402 i.e. non-int and non-float.
d5b01609 403
11e3a6e4 404 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 405 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 406 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 407
ab06788b
CY
408 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
409
1e5ecd37 410 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 411 underline_minimum_offset for underline position.
1e5ecd37 412
63c125ab
DN
4132008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
414
415 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
416
417 * character.c (c_string_width): Specify the type for LEN.
418
3a8406e1
KH
4192008-12-03 Kenichi Handa <handa@m17n.org>
420
4ccfa1c0 421 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 422 (decode_coding_utf_8): Likewise.
4ccfa1c0 423 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 424 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 425
651df7d9
CY
4262008-12-02 Chong Yidong <cyd@stupidchicken.com>
427
428 * keyboard.c (make_lispy_position): Only use PT if the selected
429 window is current.
430
1f625c6c
AS
4312008-12-02 Andreas Schwab <schwab@suse.de>
432
f7741ce9
AS
433 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
434
1f625c6c
AS
435 * doprnt.c (doprnt1): Fix size of charbuf.
436
92bc2678
CY
4372008-12-02 Chong Yidong <cyd@stupidchicken.com>
438
439 * keyboard.c (timer_check): Revert last change.
440
93b9e8cc
JB
4412008-12-02 Juanma Barranquero <lekktu@gmail.com>
442
443 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
444
fd7a37d5
JB
4452008-12-01 Juanma Barranquero <lekktu@gmail.com>
446
447 * makefile.w32-in: Update dependencies.
448 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
449
c115043b
AS
4502008-12-01 Andreas Schwab <schwab@suse.de>
451
452 * font.c (register_font_driver): Use xmalloc.
453 (font_put_frame_data): Likewise.
454
f5668d2a
CY
4552008-12-01 Chong Yidong <cyd@stupidchicken.com>
456
860d96be
CY
457 * xfaces.c (realize_x_face): Make abort condition clearer.
458
f5668d2a
CY
459 * gtkutil.c (update_frame_tool_bar): Initialize variable.
460
379c17e7
CY
4612008-11-30 Chong Yidong <cyd@stupidchicken.com>
462
463 * keyboard.c (timer_check): After a timer runs, ensure that the
464 selected window's buffer is current.
465
35f36d65
JB
4662008-11-30 Juanma Barranquero <lekktu@gmail.com>
467
f952c61c
JB
468 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
469 It was accidentally restored by the Unicode merge.
470
35f36d65
JB
471 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
472
b23077df
JB
4732008-11-29 Juanma Barranquero <lekktu@gmail.com>
474
475 * w32proc.c: Include "coding.h".
476 (Fw32_short_file_name): Encode filename passed to Windows API.
477 (Fw32_long_file_name): Encode filename passed to Windows API and
478 decode back the result. (Bug#1433)
479
b8ebe9dd
KH
4802008-11-29 Kenichi Handa <handa@m17n.org>
481
8cc53f96
KH
482 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
483 not before accessing it.
484
b8ebe9dd
KH
485 * charset.c (Fdefine_charset_internal): After calculating
486 min_char, max_char, and fastmap, copy the charset structure again.
487 (encode_char): Fix the previous change.
488
59bc82c0
SZ
4892008-11-28 Seiji Zenitani <zenitani@mac.com>
490
491 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
492
493 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
494
495 * nsterm.m (x_set_frame_alpha): New function.
496
32247e3d
EZ
4972008-11-27 Eli Zaretskii <eliz@gnu.org>
498
499 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
500
b003e5ff
JB
5012008-11-27 Juanma Barranquero <lekktu@gmail.com>
502
503 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
504 pointer to check_face_name.
505
708550f5
KH
5062008-11-27 Kenichi Handa <handa@m17n.org>
507
508 * category.h (SET_CATEGORY_SET): Call set_category_set.
509 (set_category_set): Extern it.
510
511 * category.c (hash_get_category_set): New function.
512 (Fmodify_category_entry): Adjusted for the change of
513 char_table_ref_and_range. Call hash_get_category_set to get a
514 category set to store in the table.
515
516 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
517 Funify_charset.
518
2ae37cf0 519 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
520 (DECODE_CHAR): Check if the decoder vector is ready.
521 (ENCODE_CHAR): Check if the encoder char-table is ready.
522 (maybe_unify_char): Extern it.
523
524 * charset.c (Vchar_unified_charset_table): Delete it.
525 (inhibit_load_charset_map): New variable.
526 (temp_charset_work): New variable.
527 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
528 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
529 New macros.
530 (load_charset_map): Meaning of control_flag changed. If
531 inhibit_load_charset_map is nonzero, setup a table in
532 temp_charset_work.
533 (load_charset): New argument control_flag.
534 (map_charset_for_dump): New function.
535 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
536 map_charset_for_dump.
537 (Fdefine_charset_internal): If the charset method is MAP, load
538 mapping tables by calling load_charset.
539 (Funify_charset): Don't load a mapping table but directly set
540 Vchar_unify_table.
541 (maybe_unify_char): New function.
542 (decode_char): Don't handle the deleted method MAP_DEFERRED.
543 Handle the case of inhibit_load_charset_map being nonzero.
544 (encode_char): Don't handle the deleted method MAP_DEFERRED.
545 Handle the case of inhibit_load_charset_map being nonzero.
546 (Fclear_charset_maps): Just free temp_charset_work.
547 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
548 variable.
549
550 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
551 change of char_table_ref_and_range.
552 (char_table_ref_and_range): Change the meaning of argument FROM
553 and TO. Now the caller must provide initial values for *FROM
554 and *TO.
555
556 * fontset.c (fontset_add): Adjusted for the change of
557 char_table_ref_and_range.
558 (fontset_get_font_group): Likewise.
559 (Ffontset_info): Likewise.
560
561 * keymap.c (describe_vector): Adjusted for the change of
562 char_table_ref_and_range. For char-table, put boundary between
563 non-ASCII and 8-bit characters.
564
565 * print.c (print_object): For bool-vector, delete unnecessary
566 check of ASCII_BYTE_P.
567
9196133b
JR
5682008-11-26 Jason Rumney <jasonr@gnu.org>
569
570 * w32font.c (w32font_open_internal): Don't include external
85f967f9 571 leading in font height. (Bug#879)
9196133b 572
9f688acf
GM
5732008-11-26 Glenn Morris <rgm@gnu.org>
574
575 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
576 redefinition with ifdef. (Bug#1383)
577
90d19aff
AR
5782008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
579
580 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
581
4ccfa1c0 5822008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
583
584 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
585 New EmacsView methods.
586 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
587 Fixes bug #1048,1357,1414.
588
5892008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
590
591 Fix bug #1362.
592 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
593 is not an indexed color.
594 * nsterm.m (free_indexed_color): Add argument checking.
595 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
596
e7d5ecb3
CY
5972008-11-24 Chong Yidong <cyd@stupidchicken.com>
598
599 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
600 Document confirm-after-completion value for
601 minibuffer-completion-confirm.
602
c285743c
JR
6032008-11-24 Jason Rumney <jasonr@gnu.org>
604
605 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
606 warning.
607
b0857706
JR
6082008-11-23 Jason Rumney <jasonr@gnu.org>
609
610 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
611 restored before returning.
612
613 * w32font.c (check_face_name): New function.
614 (add_font_entity_to_list): Use it to filter out common substituted
85f967f9 615 fonts. (Bug#642)
b0857706 616
ee50ff07
MR
6172008-11-22 Martin Rudalics <rudalics@gmx.at>
618
619 * buffer.c (Fswitch_to_buffer): Reword and mention new option
620 confirm-nonexistent-file-or-buffer in doc-string.
621
b8ff72fa
SM
6222008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
623
624 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
625 Fix copy/paste typo. Add checks.
626
cee53ed4
KH
6272008-11-21 Kenichi Handa <handa@m17n.org>
628
629 * coding.c (detect_coding_iso_2022): Reject invalid composition
630 sequence.
631 (DECODE_COMPOSITION_START): If the current source is the last
632 block, and the current composition doesn't end, regard this
633 sequence as invalid.
634 (decode_coding_iso_2022): Handle invalid composition sequence.
635
f6ef1e65
MR
6362008-11-20 Martin Rudalics <rudalics@gmx.at>
637
638 * window.c (coordinates_in_window): Don't return
639 ON_VERTICAL_BORDER for the rightmost position of a mode/header
640 line when the window is not the rightmost one. (Bug#1372)
641
e08b1705
MR
6422008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
643
644 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
645
ad98e89f
EZ
6462008-11-15 Eli Zaretskii <eliz@gnu.org>
647
648 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
649 and bright_bg if noninteractive is non-zero.
650
fb098a4b
CY
6512008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
652
653 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
654 x_draw_glyph_string_background.
655
656 * w32term.c (x_draw_glyph_string): Likewise.
657
ce952b6e
CY
6582008-11-15 Chong Yidong <cyd@stupidchicken.com>
659
660 * xterm.c (x_draw_glyph_string): Stop drawing the background of
661 the next glyph string once past the overhang width.
662
663 * nsterm.m (ns_draw_glyph_string): Likewise.
664
665 * w32term.c (x_draw_glyph_string): Likewise.
666
26ea7079
CY
6672008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
668
669 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
670 double file close.
671
1c33c906
MR
6722008-11-14 Martin Rudalics <rudalics@gmx.at>
673
674 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
675 dedicated status of window before attempting to display another
676 buffer in it.
677
8fc29035
JB
6782008-11-14 Juanma Barranquero <lekktu@gmail.com>
679
680 * msdos.c (Fmsdos_long_file_names):
681 (syms_of_msdos) <dos-unsupported-char-glyph>:
682 * dosfns.c (Fint86): Fix typos in docstrings.
683
55fb4286
EZ
6842008-11-14 Eli Zaretskii <eliz@gnu.org>
685
686 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
687
3fda0315
KY
6882008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
689
690 * puresize.h (BASE_PURESIZE): Increase to 1260000.
691
7e849c17
CY
6922008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
693
694 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
695
696 * frame.h: Negative alpha means "don't touch".
697
698 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
699
700 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
701
b9fd67bd
DN
7022008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
703
704 * hftctl.c:
705 * chpdef.h:
706 * acldef.h: Remove files used only for systems no longer supported.
707
708 * Makefile.in: Fix .o alphabetical ordering.
709 (hftctl.o): Remove dependency, file removed.
710 (keymap.o, print.o): Depend on charset.h.
711
d5998e03
KH
7122008-11-10 Kenichi Handa <handa@m17n.org>
713
2ae37cf0 714 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 715
be70e183
CY
7162008-11-08 Chong Yidong <cyd@stupidchicken.com>
717
718 * dired.c (file_name_completion): If completion_ignore_case is
719 enabled, ignore case when checking completion-regexp-list.
720
7cf94eac
EZ
7212008-11-08 Eli Zaretskii <eliz@gnu.org>
722
723 * vm-limit.c (get_lim_data): Fix last change.
724
ee107a89
KH
7252008-11-08 Kenichi Handa <handa@m17n.org>
726
727 * character.c (Fget_byte): New function.
728 (syms_of_character): Defsubr Fget_byte.
729
5fd15622
CY
7302008-11-07 Chong Yidong <cyd@stupidchicken.com>
731
732 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
733 cursor position is valid after scrolling.
734
13d62fad
JB
7352008-11-06 Juanma Barranquero <lekktu@gmail.com>
736
737 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
738
a1dd2936
GM
7392008-11-06 Glenn Morris <rgm@gnu.org>
740
741 * xterm.c (handle_one_xevent): Don't let popup menus cause
742 mouse-autoselect-window related window switching. (Bug#1261)
743
860cd236
CY
7442008-11-04 David Smith <davidsmith@acm.org> (tiny change)
745
746 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
747
653a3150
AS
7482008-11-04 Andreas Schwab <schwab@suse.de>
749
750 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
751
870f5cac
CY
7522008-11-03 Chong Yidong <cyd@stupidchicken.com>
753
754 * xfns.c (Fx_wm_set_size_hint): New function.
755
1e02f3cb
MR
7562008-11-03 Martin Rudalics <rudalics@gmx.at>
757
758 * textprop.c (Fprevious_single_char_property_change): Return 0
759 when there's no change in a string. (Bug#1301)
760
e630dfc6
MR
7612008-11-02 Martin Rudalics <rudalics@gmx.at>
762
763 * frame.c (do_switch_frame): New argument NORECORD passed to
764 Fselect_window.
765 (Fselect_frame): New argument NORECORD passed to
766 do_switch_frame.
767 (Fset_frame_selected_window): New argument NORECORD passed to
768 Fselect_frame.
769 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
770 in call of do_switch_frame.
771 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
772 Handle NORECORD argument in call of Fselect_frame.
773 * lisp.h (do_switch_frame, Fselect_frame)
774 (Fset_frame_selected_window): Adjust declarations.
775 * window.c (select_frame_norecord): New function.
776 (run_window_configuration_change_hook): Use it and call
777 Fselect_frame with NORECORD set.
778 (Fselect_window): Pass NORECORD to Fselect_frame.
779 (Fset_window_configuration): Handle NORECORD argument in call of
780 do_switch_frame.
781 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
782 Fset_frame_selected_window.
783 * keyboard.c (command_loop_1): Handle NORECORD in call of
784 Fselect_frame (currently ifdefd).
785
9020b223
GM
7862008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
787
788 * emacs.c (USAGE2): Untabify.
789
793ffee8
SM
7902008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
791
792 * composite.c (fill_gstring_header): Fix copy/paste typo.
793
ab6d1131
MR
7942008-10-31 Martin Rudalics <rudalics@gmx.at>
795
796 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
797 (Fother_window): Rename argument and rewrite doc-string.
798 (select_window_norecord): Fix return value. (Bug#1276)
799
601a9cf1
JB
8002008-10-30 Juanma Barranquero <lekktu@gmail.com>
801
802 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
803 new frames overriding foreground for tooltips. Based on similar patch
804 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
805
813b0652
CY
8062008-10-29 Chong Yidong <cyd@stupidchicken.com>
807
808 * emacs.c (Fdaemon_initialized): Initialize nfd.
809
4414f58f
MR
8102008-10-29 Martin Rudalics <rudalics@gmx.at>
811
812 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
813 (Fwindow_text_height): Clarify doc-strings.
814 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
815 doc-string of window-scroll-functions.
816
ecdcaa09
RS
8172008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
818
819 * category.c (syms_of_category): Fix typo in docstring.
820
23fe745a
JB
8212008-10-28 Juanma Barranquero <lekktu@gmail.com>
822
823 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
824 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
825 Fix typos in docstrings.
826
ff808935
DN
8272008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
828
829 * emacs.c (daemon_pipe): Make non-static.
830 (IS_DAEMON): Move definition ...
831 * lisp.h (IS_DAEMON): ... here.
832 (daemon_pipe): Declare.
833 (is_daemon): Remove.
834 * dispnew.c (init_display): Use IS_DAEMON.
835
fc012771
SM
8362008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
837
838 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
839 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
840
841 * emacs.c (is_daemon): Remove.
842 (main): Don't set is_daemon.
843 (IS_DAEMON): New macro.
844 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 845 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
846 parent exits.
847 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
848
d8bdbe6f
CY
8492008-10-27 Chong Yidong <cyd@stupidchicken.com>
850
d1a072bf
CY
851 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
852 over-sized glyph, draw it with the default glyph width.
853
e2e325aa
CY
854 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
855 glyph, draw it with the default glyph width.
856
857 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
858 glyph, draw it with the default glyph width.
859
d8bdbe6f
CY
860 * xdisp.c (try_scrolling): When computing the distance from the
861 scroll margin to PT, try moving some distance past the window
862 bottom before giving up.
863
7bfac547
MR
8642008-10-27 Martin Rudalics <rudalics@gmx.at>
865
866 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
867 (Fset_window_buffer): Explain in doc-string that a window can be
868 "strongly" dedicated to its buffer.
869
4ff029f6
DN
8702008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
871
872 * emacs.c (daemon_name): New variable.
873 (main): Deal with --daemon=SERVER_NAME.
874 (Fdaemonp): Return a name if one was passed to --daemon.
875
5790ef40
DN
8762008-10-26 Romain Francoise <romain@orebokech.com>
877
f9bd0df9 878 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
879 (main): Create a pipe before forking, make the parent exit only after
880 the child has closed its end of the pipe. Move closing the
881 descriptors ...
882 (Fdaemon_initialized): ... here. New function.
883
f5385255
SM
8842008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
885
4d632321
SM
886 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
887 the previous unoptimized table.
888
f5385255
SM
889 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
890 the distinction between non-nil and non-t value of `dedicated'.
891
6c56a0f3
CY
8922008-10-25 Chong Yidong <cyd@stupidchicken.com>
893
894 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 895 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 896
fec89261
MR
8972008-10-25 Martin Rudalics <rudalics@gmx.at>
898
899 * window.c (Fget_buffer_window, Fdelete_windows_on)
900 (Freplace_buffer_in_windows): Make buffer argument optional and
901 rename to buffer_or_name.
902
34fcddd0
CY
9032008-10-24 Chong Yidong <cyd@stupidchicken.com>
904
f5385255
SM
905 * xdisp.c (handle_single_display_spec, handle_display_prop):
906 Undo 2005-05-16 change.
34fcddd0
CY
907 (handle_stop): Pop iterator if it's loaded with an empty string.
908 (get_overlay_strings_1): Don't save iterator if it's loaded with
909 an empty string (bug#1201).
910
064766f2
KH
9112008-10-24 Kenichi Handa <handa@m17n.org>
912
913 * ftfont.c (ftfont_otf_features): Fix previous change.
914 (ftfont_otf_capability): Check FeatureList.FeatureCount before
915 calling ftfont_otf_features.
916
f9bd0df9 9172008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
918
919 * font.c (font_match_p): Fix for the case that a vector of
920 characters is in script-representative-chars.
921
1dae9197
MA
9222008-10-24 Michael Albinus <michael.albinus@gmx.de>
923
924 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 925 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
926 (xd_read_queued_messages): Catch Qdbus_error from the macros.
927 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
928 macro. (Bug#1186).
929
f9bd0df9 9302008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
931
932 * s/sol2-10.h: New file.
933
878a4584
JB
9342008-10-23 Juanma Barranquero <lekktu@gmail.com>
935
936 * xdisp.c (fill_glyph_string): Fix typo in source (though the
937 poor beast has survived 9+ years and the jump from xterm.c!).
938
cd265ca6
MR
9392008-10-23 Martin Rudalics <rudalics@gmx.at>
940
941 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
942 Reword doc-string.
f5385255 943 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 944
472a4dc9
JB
9452008-10-23 Juanma Barranquero <lekktu@gmail.com>
946
947 * character.c (syms_of_character) <script-representative-chars>:
948 <unicode-category-table>: Doc fixes.
949
159bd5a2
NF
9502008-10-23 Noah Friedman <friedman@splode.com>
951
952 * coding.c (make_conversion_work_buffer): Check that
953 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
954 Fget_buffer_create.
955
49f9c344
KH
9562008-10-23 Kenichi Handa <handa@m17n.org>
957
958 * font.c (font_add_log): Check the values of extra properties.
959
12bb3111
MR
9602008-10-22 Martin Rudalics <rudalics@gmx.at>
961
962 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
963 Reword doc-string.
964 (Fset_window_parameter): Use NILP.
965 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 966 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 967
bbeb4e99
JB
9682008-10-22 Juanma Barranquero <lekktu@gmail.com>
969
970 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
971
9722008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
973
974 * nsfns.m (ns_appkit_version): New function.
975 (x-server-version): Use it.
976 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
977 (x-server-vendor): Don't check_ns().
978
979 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
980
a9b555d3
JB
9812008-10-22 Juanma Barranquero <lekktu@gmail.com>
982
983 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
984 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
985
4626499f
KH
9862008-10-22 Kenichi Handa <handa@m17n.org>
987
e3681952
KH
988 * syntax.c (scan_words): Call word_boundary_p instead of comparing
989 scripts.
990
4626499f
KH
991 * category.c (word_boundary_p): Check scripts instead of charset.
992 Handle nil value in word-separating-categories and
993 word-combining-categories.
994 (syms_of_category): Fix docstrings of word-separating-categories
995 and word-combining-categories.
996
1560f91a
EZ
9972008-10-21 Eli Zaretskii <eliz@gnu.org>
998
999 * coding.c (Fencode_coding_region, Fdecode_coding_region)
1000 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
1001
f4668441
MR
10022008-10-21 Martin Rudalics <rudalics@gmx.at>
1003
1004 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
1005 Rename arg "buffer" to "buffer_or_name".
1006 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
1007 it optional.
1008 (no_switch_window): Remove since the return value is not used.
a9b555d3 1009 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
1010 Consider window as dedicated when Fwindow_dedicated_p returns a
1011 non-nil value.
1012 * lisp.h: Remove prototype for no_switch_window.
1013
fd75ddb2
JD
10142008-10-21 Jan Djärv <jan.h.d@swipnet.se>
1015
1016 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 1017 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 1018
07295713
KH
10192008-10-21 Kenichi Handa <handa@m17n.org>
1020
1021 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
1022 check Vlatin_extra_code_table.
1023
712adc82
EZ
10242008-10-20 Eli Zaretskii <eliz@gnu.org>
1025
1026 * fileio.c (Fset_file_modes): Doc fix.
1027
f549eb0b
MA
10282008-10-19 Michael Albinus <michael.albinus@gmx.de>
1029
1030 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
1031 in arrays.
1032
aac0c6e3
MR
10332008-10-19 Martin Rudalics <rudalics@gmx.at>
1034
1035 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
1036 Mention kill-buffer in doc-string.
1037 (Fset_window_buffer): Reinsert tem check removed in last commit.
1038 (Fenlarge_window, Fshrink_window): Have argument names and
1039 doc-string follow Elisp manual more closely.
1040
10412008-10-18 Eli Zaretskii <eliz@gnu.org>
1042
1043 * fileio.c (Fset_file_modes): Doc fix.
1044
10452008-10-18 Martin Rudalics <rudalics@gmx.at>
1046
1047 * window.c (Fwindow_width, Fset_window_start)
1048 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
1049 (Fdelete_windows_on, Freplace_buffer_in_windows):
1050 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
1051 (Fwindow_dedicated_p): Make window argument optional.
1052 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
1053 (Fset_window_buffer): Respect any non-nil dedicated value for
1054 window. Rename "buffer" argument to "buffer_or_name".
1055
10562008-10-18 Ulrich Mueller <ulm@gentoo.org>
1057
1058 * m/sh3.h: New file, machine description for SuperH.
1059
10602008-10-17 Martin Rudalics <rudalics@gmx.at>
1061
1062 * window.c (Fsplit_window): Rename arg horflag to horizontal.
1063
10642008-10-17 Kenichi Handa <handa@m17n.org>
1065
1066 * ftfont.c (ftfont_otf_features): Fix indexing
1067 gsub_gpos->FeatureList.Feature. Check the validity of indices.
1068
10692008-10-16 Magnus Henoch <mange@freemail.hu>
1070
1071 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
1072 (Fdbus_call_method_asynchronously): Ditto.
1073 This change makes C-h f display the argument list.
1074
10752008-10-16 Chong Yidong <cyd@stupidchicken.com>
1076
1077 * fileio.c (Fexpand_file_name): Doc fix.
1078
1079 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
1080 of :foreground and :background equivalent to unspecified (20.x
1081 compatibility).
1082
10832008-10-15 Eli Zaretskii <eliz@gnu.org>
1084
1085 * buffer.c (syms_of_buffer): Doc fix.
1086
10872008-10-14 Kenichi Handa <handa@m17n.org>
1088
1089 * font.c (font_clear_prop): When clearing font width, clear the
1090 average width field too.
1091
10922008-10-12 Andreas Schwab <schwab@suse.de>
1093
1094 * ftfont.c (ftfont_shape_by_flt): Make static.
1095 * ftfont.h (ftfont_shape_by_flt): Don't declare.
1096
1097 * font.c: Don't include <m17n-flt.h>.
1098
10992008-10-10 Eli Zaretskii <eliz@gnu.org>
1100
1101 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
1102
11032008-10-09 Eli Zaretskii <eliz@gnu.org>
1104
1105 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
1106 away code.
1107
11082008-10-09 Chong Yidong <cyd@stupidchicken.com>
1109
1110 * dispnew.c (update_text_area): Avoid looping due to large glyph
1111 overhangs (bug#1070).
1112
11132008-10-09 Kenichi Handa <handa@m17n.org>
1114
1115 * fontset.c (face_for_char): If face->fontset is negative, just
1116 return ascii_face.
1117
f5385255
SM
1118 * font.c (font_delete_unmatched): Fix previous change.
1119 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
1120
11212008-10-09 Martin Rudalics <rudalics@gmx.at>
1122
1123 * frame.c (Fraise_frame): On text-only terminals select frame in
1124 order to make it visible. (Bug#1061)
1125
11262008-10-08 Chong Yidong <cyd@stupidchicken.com>
1127
1128 * fontset.c (fontset_find_font): Check frame validity.
1129
11302008-10-07 Chong Yidong <cyd@stupidchicken.com>
1131
a9b555d3 1132 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
1133 (xg_display_close): Allow Emacs to close all displays (bug#985).
1134
11352008-10-06 Andreas Schwab <schwab@suse.de>
1136
f5385255 1137 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
1138
11392008-10-06 Chong Yidong <cyd@stupidchicken.com>
1140
f5385255 1141 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 1142
a9b555d3 1143 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
1144
1145 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
1146 during initialization.
1147
11482008-10-04 Eli Zaretskii <eliz@gnu.org>
1149
1150 * xdisp.c (redisplay_internal): If frame switched, redisplay the
1151 whole thing on MSDOS frames as well as on a TTY.
1152
1153 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
1154 well as for TTY.
1155 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
1156 well as on a TTY.
1157
1158 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
1159 as well as for TTY.
1160
1161 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
1162
1163 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
1164 MSDOS frames as well.
1165
11662008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1167
1168 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
1169 correct arguments.
1170 * menu.c (find_and_return_menu_selection) Add cast.
1171
11722008-10-03 Glenn Morris <rgm@gnu.org>
1173
1174 * emacs.c (USAGE1): Add --daemon.
1175
11762008-10-02 Eli Zaretskii <eliz@gnu.org>
1177
1178 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
1179 100, so it's in percents as advertised.
1180
11812008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
1182
1183 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
1184 (ns_output.current_cursor, ns_output.desired_cursor)
1185 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
1186 (FRAME_NEW_CURSOR_COLOR): Remove.
1187
1188 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 1189 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
1190 enumeration (HOLLOW_BOX_CURSOR, etc.).
1191
1192 * nsterm.m (ns_frame_rehighlight): Remove commented code.
1193 (draw_window_cursor): Simplify code.
f5385255
SM
1194 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
1195 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 1196 updates manually.
a9b555d3
JB
1197 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
1198 Use core Emacs cursor types.
aac0c6e3 1199
b8ff72fa 1200 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
1201
12022008-10-02 Martin Rudalics <rudalics@gmx.at>
1203
1204 * process.c (Faccept_process_output): Fix doc-string.
1205
12062008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1207
1208 * gmalloc.c (__sbrk): Also define for uClibc.
1209
1210 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
1211 for uClibc.
1212
12132008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1214
1215 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
1216 styles.
1217 (nsfont_open): Reenable the cache.
1218
12192008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
1220
1221 * font.c (font_matching_entity): Reflect ATTRS in font selection.
1222 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
1223
12242008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
1225
1226 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
1227 a suspended terminal.
1228
12292008-09-30 Michael Albinus <michael.albinus@gmx.de>
1230
1231 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
1232
12332008-09-30 Eli Zaretskii <eliz@gnu.org>
1234
1235 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
1236
12372008-09-30 Chong Yidong <cyd@stupidchicken.com>
1238
1239 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
1240 in a continued line coincides with a line beginning.
1241
12422008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
1243
1244 * nsfont.m (nsfont_trait_distance): Fix bug.
1245 (nsfont_list): Return a list rather than a vector (syncs with Handa
1246 changes of 2008-05-14).
1247 (nsfont_open): Improve logging.
1248
12492008-09-29 Andreas Schwab <schwab@suse.de>
1250
1251 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1252
12532008-09-28 Martin Rudalics <rudalics@gmx.at>
1254
1255 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
1256 name as char-resolve-modifiers.
1257 Reported by: Markus Triska <markus.triska@gmx.at>
1258
12592008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
1260
1261 * dispnew.c (init_display): Return earlier when running as a daemon.
1262
12632008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
1264
1265 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
1266
12672008-09-27 Eli Zaretskii <eliz@gnu.org>
1268
1269 * composite.c (Fcomposition_get_gstring)
1270 (Fcompose_region_internal, Fcompose_string_internal)
1271 (Ffind_composition_internal): Doc fix.
1272 (syms_of_composite) <compose-chars-after-function>: Doc fix.
1273 (syms_of_composite) <auto-composition-function>: Doc fix.
1274 (syms_of_composite) <composition-function-table>: Doc fix.
1275
12762008-09-25 Chong Yidong <cyd@stupidchicken.com>
1277
1278 * search.c (wordify): New argument for lax word-ends.
1279 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
1280
12812008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
1282
1283 * lisp.h (is_daemon): Declare.
1284 * dispnew.c (init_display): Do not try to initialize the terminal
1285 when running as a daemon.
1286
12872008-09-22 Chong Yidong <cyd@stupidchicken.com>
1288
1289 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
1290 x_display_pixel_height.
1291
12922008-09-22 Martin Rudalics <rudalics@gmx.at>
1293
1294 * undo.c (record_point): Don't call Fundo_boundary for first
1295 change. (Bug#731)
1296
12972008-09-22 Juanma Barranquero <lekktu@gmail.com>
1298
1299 * emacs.c (Fdaemonp): Doc fix.
1300
13012008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
1302
1303 * emacs.c (main): Place #ifdef in the proper place.
1304
13052008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
1306
1307 * emacs.c (standard_args): Add --daemon.
1308 (main): Disconnect from the terminal when --daemon is passed.
1309 (is_daemon): New variable.
1310 (Fdaemonp): New function.
1311 (syms_of_emacs): Defsubr it.
1312
13132008-09-20 Chong Yidong <cyd@stupidchicken.com>
1314
1315 * xdisp.c (get_next_display_element): Handle string display
1316 correctly when checking for the end of a box run.
1317
13182008-09-20 Glenn Morris <rgm@gnu.org>
1319
1320 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
1321 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
1322 (Frename_file): Avoid copying to trash if a rename involves
1323 a delete. (Bug#964).
1324
13252008-09-20 Eli Zaretskii <eliz@gnu.org>
1326
1327 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
1328 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
1329 frames as well as termcap frames.
1330 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
1331 get_named_tty.
1332
13332008-09-19 Eli Zaretskii <eliz@gnu.org>
1334
1335 * process.c (procfs_system_process_attributes): Fix cmdline in
1336 case /proc/PID/cmdline is empty.
1337
1338 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
1339 x_display_pixel_height.
1340
13412008-09-19 Juanma Barranquero <lekktu@gmail.com>
1342
1343 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
1344
1345 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
1346 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
1347
13482008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
1349
1350 * dispextern.h (struct it): Move line_wrap away from the middle of
1351 bitfields. Move voffset in struct iterator_stack_entry after the
1352 bitfields. Move tab_width near after another short.
1353
13542008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
1355
1356 * frame.h (struct frame): Move alpha from the middle of bitfields.
1357
1358 * window.h (struct window): Move frozen_window_start_p after the
1359 rest of the bitfields to reduce padding.
1360
13612008-09-18 Chong Yidong <cyd@stupidchicken.com>
1362
1363 * xterm.h (x_display_info): Remove `height' and `width' members.
1364
1365 * nsterm.h (ns_display_info): Remove `height' and `width' members.
1366
1367 * w32term.h (w32_display_info): Remove `height', `width',
1368 `height_in', and `width_in' members.
1369
b8ff72fa
SM
1370 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1371 New functions.
aac0c6e3
MR
1372 (x_calc_absolute_position): Use them.
1373 (x_term_init): Omit removed `height' and `width' members.
1374
b8ff72fa
SM
1375 * w32term.c (x_display_pixel_height, x_display_pixel_width):
1376 New functions.
aac0c6e3
MR
1377 (w32_read_socket, x_calc_absolute_position): Use them.
1378 (w32_initialize_display_info, w32_term_init): Omit removed members
1379 of w32_display_info.
1380
b8ff72fa
SM
1381 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
1382 New functions.
1383 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 1384
b8ff72fa
SM
1385 * xterm.c (x_display_pixel_height, x_display_pixel_width):
1386 New functions.
aac0c6e3
MR
1387 (x_calc_absolute_position): Use them.
1388 (x_term_init): Omit removed `height' and `width' members.
1389
1390 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
1391 (compute_tip_xy):
1392 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
1393 * xmenu.c (menu_position_func): Use x_display_pixel_height and
1394 x_display_pixel_width.
1395
13962008-09-18 Kenichi Handa <handa@m17n.org>
1397
1398 * composite.c (fill_gstring_header): Don't check FROM and TO here.
1399 (composition_compute_stop_pos): Fix handling of static composition.
1400 (Fcomposition_get_gstring): Check FROM and TO at first.
1401
14022008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
1403
1404 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Oject
1405 mixup (YAILOM).
1406
14072008-09-17 Chong Yidong <cyd@stupidchicken.com>
1408
1409 * indent.c (Fvertical_motion): Use position reported by iterator
1410 instead of PT for determining screen motion (bug#943).
1411
14122008-09-17 Romain Francoise <romain@orebokech.com>
1413
1414 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
1415
14162008-09-17 Kenichi Handa <handa@m17n.org>
1417
1418 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
1419
1420 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
1421 if necessary.
1422
14232008-09-16 Kenichi Handa <handa@m17n.org>
1424
1425 * coding.c (make_conversion_work_buffer): Avoid calling
1426 Fget_buffer_create if it is not necessary.
1427
14282008-09-15 Martin Rudalics <rudalics@gmx.at>
1429
1430 * window.c (Fselect_window): Don't update window_select_count and
1431 use_time when norecord is not nil.
1432
14332008-09-14 Kenichi Handa <handa@m17n.org>
1434
1435 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
1436 specpdl_ptr.
1437
14382008-09-12 Kenichi Handa <handa@m17n.org>
1439
1440 * indent.c (scan_for_column): Don't handle automatic composition
1441 if the current buffer is not associated with a window.
1442
1443 * composite.c (composition_reseat_it): If the current buffer is
1444 not associated with a window, ignore the automatic composition.
1445 (find_automatic_composition): Likewise.
1446
14472008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
1448
1449 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
1450 (Fgpm_mouse_stop): Use it.
1451 * termhooks.h (close_gpm): Declare.
1452 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
1453 connection if Gpm_GetEvent fails.
1454
1455 * window.c (set_window_buffer): Always preserve current-buffer.
1456
14572008-09-12 Glenn Morris <rgm@gnu.org>
1458
1459 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
1460
14612008-09-11 Glenn Morris <rgm@gnu.org>
1462
1463 * charset.c (charset-map-path): Doc fix.
1464
14652008-09-10 Kenichi Handa <handa@m17n.org>
1466
1467 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
1468
1469 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
1470 compose a grapheme cluster with the preceding base glyph.
1471
1472 * composite.c (composition_compute_stop_pos): Fix previous change.
1473 Reset cmp_it->id to -1 at first.
1474
14752008-09-10 Glenn Morris <rgm@gnu.org>
1476
1477 * Makefile.in (character.o, chartab.o): Fix config.h typo.
1478
14792008-09-09 Chong Yidong <cyd@stupidchicken.com>
1480
1481 * keyboard.c (read_key_sequence): Reapply translation maps when
1482 switching keyboards.
1483
14842008-09-09 Kenichi Handa <handa@m17n.org>
1485
1486 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
1487 characters.
1488
1489 * composite.c (FORWARD_CHAR): Fix calculation
1490 of (POSITION).pos_byte.
1491 (composition_compute_stop_pos): Limit the search of composition to
1492 at most 500 characters ahead. If we reach the limit or find a
1493 newline, set cmp_it->ch to -2 and return 0.
1494 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
1495
14962008-09-08 Kenichi Handa <handa@m17n.org>
1497
1498 * indent.c (Fvertical_motion): Be sure to set
1499 it_overshoot_expected if it.cmp_it.id is non-negative.
1500
15012008-09-07 Andreas Schwab <schwab@suse.de>
1502
1503 * callproc.c (Fcall_process): Don't hold references to string data
1504 across garbage collection. Move initialisation of new_argv down
1505 to avoid compiler bug.
1506
15072008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1508
1509 * process.c (Fsystem_process_attributes): Doc fix.
1510
15112008-09-07 Chong Yidong <cyd@stupidchicken.com>
1512
1513 * callproc.c (Fcall_process): Canonicalize current directory name.
1514
1515 * xdisp.c (move_it_to): When moving by vpos, ensure that the
1516 iterator advances to the next line if the current line ends in a
1517 continued tab.
1518
15192008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
1520
1521 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
1522 member to point to cmp_from.
1523
1524 * xdisp.c: Doc fix for references to gidx data member.
1525
15262008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
1527
1528 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
1529
15302008-09-07 Kenichi Handa <handa@m17n.org>
1531
1532 * composite.c (FORWARD_CHAR): Check STOP after
1533 incrementing (POSITION).pos.
1534
15352008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
1536
1537 * process.c (Fsystem_process_attributes): Doc fix.
1538
15392008-09-06 Chong Yidong <cyd@stupidchicken.com>
1540
1541 * keyboard.c (Ftop_level): Doc fix.
1542
15432008-09-06 Eli Zaretskii <eliz@gnu.org>
1544
1545 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
1546 minibuffer, don't let lower part of menu invade the echo area.
1547
1548 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
1549 "char *q" to access menu text and advance through it. Revert the
1550 change that displayed ">" instead of ASCII character 0x10.
1551
15522008-09-05 Eli Zaretskii <eliz@gnu.org>
1553
1554 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
1555 toggle boxes and radio buttons on MS-DOS as well.
1556
15572008-09-05 Kenichi Handa <handa@m17n.org>
1558
1559 * composite.c (autocmp_chars): Check lookback count.
1560 (composition_compute_stop_pos): Set cmp_it->lookback.
1561 (composition_reseat_it): Check lookback count.
1562 (struct position_record): New struct.
1563 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
1564 (find_automatic_composition): New function.
1565 (composition_adjust_point): Use find_automatic_composition.
1566
1567 * dispextern.h (struct composition_it): New member lookback.
1568
15692008-09-02 Chong Yidong <cyd@stupidchicken.com>
1570
1571 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
1572 if moving by a single line.
1573
15742008-09-02 Andreas Schwab <schwab@suse.de>
1575
1576 * xterm.c (x_delete_display): Fix merge error.
1577
1578 * fileio.c (Fexpand_file_name): Remove unused variables.
1579
15802008-09-02 Eli Zaretskii <eliz@gnu.org>
1581
1582 * fileio.c (Fexpand_file_name): Copy argument `name' into local
1583 storage on all platforms, not just on DOS_NT.
1584
15852008-09-02 Jason Rumney <jasonr@gnu.org>
1586
b8ff72fa
SM
1587 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
1588 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
1589
15902008-09-01 Chong Yidong <cyd@stupidchicken.com>
1591
1592 * xfaces.c (Finternal_set_alternative_font_family_alist)
1593 (Finternal_set_alternative_font_registry_alist): Properly copy
1594 entire alist structure.
1595
15962008-09-01 Kenichi Handa <handa@m17n.org>
1597
1598 * ftfont.c (ftfont_spec_pattern): Don't create a charset of the
1599 representative chars of the script is a vector.
1600 (ftfont_list): Handle the case the representative chars of the
1601 script is a vector.
1602
1603 * character.c (syms_of_character): Docstring of
1604 script-representative-chars fixed.
1605
16062008-08-31 Eli Zaretskii <eliz@gnu.org>
1607
1608 * msdos.c (BUILD_CHAR_GLYPH): New macro.
1609 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
1610 the menu. Allocate larger buffer for `text', to account for
1611 possible ^C characters.
1612
16132008-08-31 Martin Rudalics <rudalics@gmx.at>
1614
1615 * xdisp.c (prepare_menu_bars): Don't call
1616 Vwindow_size_change_functions with arg Qt.
1617
16182008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
1619
1620 * font.h (font_range):
1621 * fileio.c (report_file_error):
1622 * composite.c (composition_update_it): Yet another int/Lisp_Oject mixup.
1623
16242008-08-30 Glenn Morris <rgm@gnu.org>
1625
1626 * data.c (Fmake_variable_frame_local): Doc fix.
1627
1628 * frame.c (Fmodify_frame_parameters): Doc fix.
1629
16302008-08-30 Eli Zaretskii <eliz@gnu.org>
1631
1632 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
1633 needed by GetTokenInformation.
1634 (w32_system_process_attributes): Check return values of all system
1635 APIs.
1636
1637 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
1638 only when the state changes.
1639 (IT_update_begin, IT_update_end): Add termscript trace.
1640
1641 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
1642 clipboard is unavailable. Set dst to NULL if it doesn't point to
1643 malloc'ed data.
1644 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
1645 passing random values to xfree.
1646
1647 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 1648 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
1649
16502008-08-29 Jason Rumney <jasonr@gnu.org>
1651
1652 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
1653
16542008-08-29 Eli Zaretskii <eliz@gnu.org>
1655
1656 * composite.c (fill_gstring_body): Avoid compiler warnings.
1657
1658 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
1659 LGLYPH_SET_CODE to avoid compiler warnings.
1660
2ae37cf0 1661 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
1662
1663 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
1664
1665 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
1666 LGLYPH_SET_CODE.
1667
16682008-08-29 Kenichi Handa <handa@m17n.org>
1669
1670 * fileio.c (report_file_error): Don't downcase the first character
1671 of errstring if it is still unibyte.
1672
16732008-08-29 Kenichi Handa <handa@m17n.org>
1674
1675 These changes are to re-implement the automatic composition so
1676 that it doesn't use text properties.
1677
1678 * Makefile.in (ftfont.o): Depend on composite.h.
1679 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
1680
1681 * character.h (Vunicode_category_table): Extern it.
1682
1683 * character.c (Vunicode_category_table): New variable.
1684 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
1685
1686 * chartab.c (optimize_sub_char_table): Perform more greedy
1687 optimization.
1688
b8ff72fa
SM
1689 * composite.h (enum composition_method):
1690 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
1691 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
1692 (Vcomposition_function_table): Extern it.
1693 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
1694 (composition_gstring_put_cache, composition_gstring_from_id)
1695 (composition_gstring_p, composition_gstring_width)
1696 (composition_compute_stop_pos, composition_reseat_it)
1697 (composition_update_it, composition_adjust_point): Extern them.
1698 (Fcomposition_get_gstring): EXFUN it.
1699
1700 * composite.c: Include window.h, frame.h, dispextern.h font.h.
1701 (Vcomposition_function_table)
1702 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
1703 (gstring_hash_table, gstring_work, gstring_work_headers):
1704 New variables.
aac0c6e3
MR
1705 (gstring_lookup_cache, composition_gstring_put_cache)
1706 (composition_gstring_from_id, composition_gstring_p)
1707 (composition_gstring_width, fill_gstring_header)
1708 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
1709 (composition_reseat_it, composition_update_it)
b8ff72fa 1710 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
1711 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
1712 and gstring_work_headers. DEFVAR_LISP composition-function-table.
1713 Defsubr compostion_get_gstring.
1714
1715 * dispextern.h (struct glyph): New union u.cmp. Delete the member
1716 cmp_id.
1717 (struct glyph_string): Delete the member gidx. New members
1718 cmp_id, cmp_from, and cmp_to.
1719 (enum it_method): Delete GET_FROM_COMPOSITION.
1720 (struct composition_it): New struct.
1721 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
1722 Delete c, len, cmp_id, cmp_len in u.comp.
1723
1724 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 1725 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 1726 (enum lglyph_indices): Likewise.
b8ff72fa 1727 (font_range): Adjust extern.
aac0c6e3
MR
1728 (font_fill_lglyph_metrics): Extern it.
1729
1730 * font.c (QCf): New variable.
1731 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1732 (font_prepare_composition): Delete this function.
1733 (font_range): Type and arguments changed.
1734 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
1735 (font_fill_lglyph_metrics): New function.
b8ff72fa 1736 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 1737 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
1738 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
1739 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
1740
1741 * fontset.h (font_for_char): Extern it.
1742
1743 * fontset.c (font_for_char): New function.
1744
1745 * ftfont.c: Include composite.h.
1746 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 1747 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
1748
1749 * indent.c: Include composite.h and dispextern.h.
1750 (check_composition): Delete this function.
1751 (scan_for_column): Handle composition by
1752 composition_compute_stop_pos, composition_reseat_it, and
1753 composition_update_it.
1754 (compute_motion): Likewise.
1755 (Fvertical_motion): Fix checking of composition.
1756
1757 * keyboard.c (adjust_point_for_property): Check composition by
1758 composition_adjust_point.
1759
b8ff72fa 1760 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
1761 struct glyph_string.
1762
b8ff72fa
SM
1763 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
1764 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
1765 struct glyph.
1766 (produce_composite_glyph): Likewise.
1767
b8ff72fa
SM
1768 * w32term.c (x_draw_composite_glyph_string_foreground):
1769 Adjust for the change of struct glyph_string.
aac0c6e3
MR
1770 (x_draw_glyph_string): Likewise.
1771
1772 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
1773 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
1774
1775 * xdisp.c: Include font.h.
1776 (it_props): Delete the entry for Qauto_composed.
1777 (init_iterator): Initialize it->cmp_it.id to -1.
1778 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 1779 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
1780 (handle_auto_composed_prop): Delete it.
1781 (handle_composition_prop): Handle only static composition.
1782 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
1783 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 1784 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
1785 (pop_it): Likewise.
1786 (get_next_element): Delete next_element_from_composition.
1787 (CHAR_COMPOSED_P): New macro.
1788 (get_next_display_element): For automatic composition, get a face
1789 from the font in the glyph-string.
1790 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 1791 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
1792 (next_element_from_string): Check if the character at the current
1793 position is composed by CHAR_COMPOSED_P.
1794 (next_element_from_buffer): Likewise.
b8ff72fa 1795 (next_element_from_composition): Adjust for the change of struct
aac0c6e3 1796 it. Update it->cmp_it.
b8ff72fa
SM
1797 (dump_glyph): Adjust for the change of struct glyph.
1798 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
1799 it and struct glyph. Don't handle automatic composition here.
1800 (fill_gstring_glyph_string): New function.
1801 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 1802 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
1803 (BUILD_GSTRING_GLYPH_STRING): New macro.
1804 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
1805 automatic composition.
b8ff72fa 1806 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 1807 struct glyph.
b8ff72fa 1808 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 1809
b8ff72fa 1810 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
1811 the change of struct glyph_string.
1812 (x_draw_glyph_string): Likewise.
1813
18142008-08-29 Glenn Morris <rgm@gnu.org>
1815
1816 * buffer.c (word-wrap): Doc fix.
1817 * xdisp.c (truncate-partial-width-windows): Doc fix.
1818 Increase default to 50.
1819
18202008-08-29 Chong Yidong <cyd@stupidchicken.com>
1821
1822 * xdisp.c (update_tool_bar_unwind): New function.
1823 (update_tool_bar): Temporarily set selected frame before building
1824 tool-bar items.
1825
18262008-08-28 Michael Albinus <michael.albinus@gmx.de>
1827
1828 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
1829 snprintf, respectively.
1830 (xd_append_arg): Convert strings with Fstring_make_unibyte.
1831
18322008-08-28 Chong Yidong <cyd@stupidchicken.com>
1833
1834 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
1835 LDFLAGS to GNUstep CC invocation.
1836
18372008-08-27 Chong Yidong <cyd@stupidchicken.com>
1838
1839 * indent.c (Fvertical_motion): Revert last change. Handle the
1840 general case where we are moving forward, and PT spans multiple
1841 screen lines.
1842
1843 * eval.c (find_handler_clause): Temporarily increase
1844 max-lisp-eval-depth while printing the backtrace buffer, to
1845 guarantee that help-mode code can run.
1846
18472008-08-27 Eli Zaretskii <eliz@gnu.org>
1848
1849 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
1850 colors under -rv.
1851 (IT_set_frame_parameters): Don't swap foreground and background
1852 colors if `(reverse . t)' is present in the frame properties.
1853 (internal_terminal_init): Call init_frame_faces only for the
1854 initial frame.
1855
18562008-08-27 Andreas Schwab <schwab@suse.de>
1857
1858 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
1859
18602008-08-27 Andreas Schwab <schwab@suse.de>
1861
1862 * search.c (search_buffer): Set char_base to zero only at the end.
1863
18642008-08-27 Kenichi Handa <handa@m17n.org>
1865
b8ff72fa 1866 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
1867
18682008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
1869
1870 * xterm.c (x_term_init): Temporarily hide the partially
1871 initialized terminal while calling vendor-specific-keysyms.
1872
18732008-08-26 Eli Zaretskii <eliz@gnu.org>
1874
1875 * msdos.c (internal_terminal_init): Most initializations done only
1876 once, especially initial_screen_colors[] and termscript open.
1877
18782008-08-26 Chong Yidong <cyd@stupidchicken.com>
1879
1880 * eval.c (Fcondition_case): Doc fix.
1881
1882 * widgetprv.h (EmacsFramePart): Change font member to the new font
1883 struct.
1884
1885 * widget.c: Include character.h and font.h for XSETFONT.
1886 (setup_frame_gcs): Compute X font id from font struct, just once.
1887
18882008-08-26 Eli Zaretskii <eliz@gnu.org>
1889
1890 * term.c (get_named_tty): Fix last change.
1891
18922008-08-26 Chong Yidong <cyd@stupidchicken.com>
1893
1894 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 1895 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
1896
18972008-08-25 Eli Zaretskii <eliz@gnu.org>
1898
1899 * frame.c (do_switch_frame): Mark previously displayed frame as
1900 obscured for FRAME_MSDOS_P frames as well.
1901
19022008-08-24 Eli Zaretskii <eliz@gnu.org>
1903
1904 * frame.c (make_terminal_frame): Initialize f->terminal,
1905 f->terminal->reference_count, and scroll bars on MS-DOS as well.
1906 Set the top frame to newly created frame.
1907 (Fmake_terminal_frame): Reuse the_only_display_info.
1908
1909 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
1910 estimating available memory.
1911
b97439ce 19122008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
1913
1914 * nsterm.m (ns_draw_window_cursor): Don't call
1915 NSDisableScreenUpdates and NSEnableScreenUpdates on
1916 non-NS_IMPL_COCOA systems.
1917
19182008-08-23 Andreas Schwab <schwab@suse.de>
1919
1920 * process.c (procfs_system_process_attributes): Fix use of
1921 uninitialized variables.
1922
19232008-08-23 Eli Zaretskii <eliz@gnu.org>
1924
1925 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
1926
1927 * dispnew.c (init_display): Remove MS-DOS specific conditions for
1928 calling tty-set-up-initial-frame-faces.
1929
b8ff72fa
SM
1930 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
1931 Allow MSDOS frames along with X frames.
aac0c6e3
MR
1932
1933 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
1934 addition to output_termcap.
1935
1936 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
1937
1938 * termchar.h (FRAME_TTY): Support output_msdos_raw.
1939 (struct tty_display_info) [MSDOS]: Add fields related to mouse
1940 highlight.
1941
1942 * process.c [!subprocesses]: Define QCname.
1943 (syms_of_process): Intern and staticpro it.
1944
1945 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
1946 Adjust for changes in encoding/decoding routines.
1947 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
1948 encode_coding and decode_coding.
1949
b8ff72fa 1950 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
1951
1952 * dosfns.c: Include frame.h before termhooks.h.
1953 (dos_cleanup): Use CURTTY ()->termscript instead of a global
1954 variable termscript.
1955
1956 * s/msdos.h (USER_FULL_NAME): Define.
1957 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
1958
1959 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
1960 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
1961 pw->pw_gecos.
1962
1963 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
1964 SELECTED_FRAME as additional (1st) argument.
1965 (tty_read_avail_input): Handle output_msdos_raw in
1966 addition to output_termcap.
1967
1968 * msdos.c: Include frame.h before termhooks.h.
1969 (mouse_on, mouse_off, mouse_moveto, mouse_init)
1970 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
1971 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
1972 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
1973 (IT_set_terminal_modes, IT_reset_terminal_modes)
1974 (IT_set_frame_parameters): Use tty->termscript instead of a global
1975 variable termscript.
1976 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
1977 global variable terminal_coding. Don't refer to
1978 Vnonascii_translation_table.
1979 (internal_terminal_init): Set Vwindow_system in current_kboard.
1980 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
1981 Announce date and time of session start, if termscript is open.
1982 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
1983 term.c:init_tty). Open termscript only of not already open.
1984 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
1985 here instead of dos_ttraw. Don't initialize display if this is an
1986 initial tty. Don't set FRAME_FONT.
1987 (Vwindow_system_version): Bump to 23.
1988 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
1989 is available, set up mouse_position_hook.
1990 (dos_ttraw, IT_set_terminal_modes): If called with initial
1991 terminal, do nothing.
1992 (IT_set_frame_parameters): Handle the Qtty_type frame
1993 parameter by calling internal_terminal_init.
1994 (dos_set_window_size, show_mouse_face)
1995 (clear_mouse_face, IT_note_mode_line_highlight)
1996 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
1997 (dos_rawgetc): Use tty_display_info instead of x_display_info.
1998 (initialize_msdos_display): New function.
1999 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
2000 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
2001 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
2002 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 2003 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
2004 (request_sigio, unrequest_sigio): Don't define, now defined on
2005 sysdep.c.
2006 (IT_write_glyphs): Rewrite to use encode_terminal_code.
2007
2008 * term.c [MSDOS]: Include msdos.h.
2009 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
2010 conditional to DOS_NT. Allow only one call to this function in a
2011 session. Don't allocate a new struct tty_display_info; instead,
2012 reuse the_only_display_info. Call get_tty_size to get screen
2013 dimensions. Call init_baud_rate to set bad_rate.
2014 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
2015 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 2016 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
2017 (get_tty_terminal, get_named_tty, Ftty_type)
2018 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
2019 output_termcap.
b8ff72fa
SM
2020 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
2021 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 2022 only when subprocesses are supported.
aac0c6e3
MR
2023
2024 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
2025 f->output_data.x.
2026 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
2027 terminal devices.
2028
5582fbc7 2029 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
2030 x_output.
2031 (FRAME_FONT): Use output_data.tty.
2032 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
2033 (struct x_display_info): Rename from display_info. Update all users in
2034 msdos.c.
aac0c6e3 2035 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 2036 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
2037 (dos_ttraw): Update prototype.
2038
2039 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
2040 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
2041
20422008-08-23 Jason Rumney <jasonr@gnu.org>
2043
2044 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
2045 (fn_TIFFSetDirectory): New library function used.
2046 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
2047 (tiff_load): Use :index to select among multiple images. Set count
2048 property when multiple images exist.
2049 (gif_format): Use :index, not :image.
2050
20512008-08-23 Chong Yidong <cyd@stupidchicken.com>
2052
2053 * xdisp.c (try_scrolling): Check INT_MAX instead of
2054 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
2055 to obtain INT_MAX.
2056
20572008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
2058
2059 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
2060
20612008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
2062
2063 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
2064 GNUstep library location.
2065
20662008-08-21 Chong Yidong <cyd@stupidchicken.com>
2067
2068 * xfaces.c (x_update_menu_appearance): Check validity of menu font
2069 before using it.
2070
2071 * puresize.h (BASE_PURESIZE): Increase to 1250000.
2072
20732008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
2074
2075 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
2076 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
2077 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
2078 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
2079 (EmacsApp-cursor_blink_handler): Remove declaration.
2080 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
2081 match 01 Feb 2008 changes in xterm.c.
2082 (ns_read_socket): Add cast to avoid warning.
2083 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
2084 GNUstep.
2085
20862008-08-20 Chong Yidong <cyd@stupidchicken.com>
2087
2088 * xselect.c (x_get_foreign_selection): Return nil if desired
2089 selection could not be obtained, instead of signalling an error.
2090
20912008-08-20 David Reitter <david.reitter@gmail.com>
2092
2093 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
2094 * nsterm.m: Remove ns-specific code for cursor blinking.
2095 (ns_draw_window_cursor): Clear cursor properly rather than
2096 redrawing the area. Respect width of bar cursors.
2097 These changes enable the use of generic blink-cursor-mode and
2098 generic cursor types in NS and support smooth cursor movements (do
2099 not blink off after command).
2100 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
2101 Nextstep, too.
2102
21032008-08-19 Kenichi Handa <handa@m17n.org>
2104
2105 * font.c (Vfont_log_deferred): New variable.
2106 (font_add_log): Check Vfont_log_deferred.
2107 (font_deferred_log): New function.
2108
2109 * font.h (font_deferred_log): Extern it.
2110
2111 * fontset.c (reorder_font_vector): Use encoding charset of fonts
2112 for sorting.
2113 (face_for_char): Use deferred log.
2114
21152008-08-18 Kenichi Handa <handa@m17n.org>
2116
2117 * fontset.c (face_for_char): Add font log.
2118
2119 * font.c (font_add_log): Add the font properties :script, :lang,
2120 and :otf in the log.
2121
21222008-08-17 Chong Yidong <cyd@stupidchicken.com>
2123
2124 * xdisp.c: Remove dead code.
2125 (handle_invisible_prop, next_overlay_string): Defer call to
2126 setup_for_ellipsis.
2127 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
2128
21292008-08-15 Chong Yidong <cyd@stupidchicken.com>
2130
2131 * xfaces.c (lookup_derived_face): Properly handle possible zero
2132 return value of get_lface_attributes.
2133 (merge_faces): Don't tell lookup_derived_face to signal an error
2134 if face is not found.
2135
2136 * dired.c (Fdirectory_files): Doc fix.
2137
2138 * process.c (make_process): Initialize kill_without_query struct
2139 member.
2140
21412008-08-15 Eli Zaretskii <eliz@gnu.org>
2142
2143 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
2144 Alternative calculation of totphys for Visual Studio 6.
2145
2146 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
2147
2148 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
2149 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
2150 All users changed.
2151 (stat): Only root directory passed to GetDriveType. Allow RAM
2152 disk as well as local fixed disk when w32-get-true-file-attributes
2153 is set to `local'.
2154 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
2155 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
2156 (w32_cached_id, w32_add_to_cache): New functions.
2157 (get_name_and_id): Look account names in the cache before calling
2158 lookup_account_sid.
2159 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
2160 New initialization flags.
2161 (globals_of_w32): Initialize them to zero.
2162 (w32_system_process_attributes): Use w32_cached_id and
2163 w32_add_to_cache.
2164
21652008-08-14 Lawrence Mitchell <wence@gmx.li>
2166
2167 * lread.c (Fread_char, Fread_char_exclusive): If no character
2168 event is read before timeout is reached, return nil, rather than
2169 converting to a number.
2170
21712008-08-14 Chong Yidong <cyd@stupidchicken.com>
2172
2173 * fns.c (use_dialog_box): Doc fix.
2174
2175 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
2176 on OS X.
2177
21782008-08-13 Chong Yidong <cyd@stupidchicken.com>
2179
2180 * frame.c (Qns_parse_geometry): New var.
2181 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
2182
21832008-08-11 Chong Yidong <cyd@stupidchicken.com>
2184
2185 * xdisp.c (x_produce_glyphs): Handle the case when font has no
2186 space character in calculating tabs.
2187
21882008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
2189
2190 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
2191
21922008-08-10 Glenn Morris <rgm@gnu.org>
2193
2194 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
2195 silence gcc "limited range of data type" warnings in some
2196 make_fixnum_or_float calls.
2197
21982008-08-09 Eli Zaretskii <eliz@gnu.org>
2199
2200 * w32.c (w32_system_process_attributes): If the process does not
2201 exist, return nil.
2202
2203 * w32.c: Include thelp32.h, psapi.h and coding.h.
2204 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
2205 declarations.
2206 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
2207 (Process32Next_Proc): New typedefs.
2208 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
2209 (g_b_init_process32_next, g_b_init_open_thread_token)
2210 (g_b_init_impersonate_self, g_b_init_revert_to_self)
2211 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
2212 (g_b_init_get_process_working_set_size)
2213 (g_b_init_global_memory_status_ex): New static variables.
2214 (globals_of_w32): Initialize them.
2215 (create_toolhelp32_snapshot, process32_first, process32_next)
2216 (open_thread_token, impersonate_self, revert_to_self)
2217 (get_process_memory_info, get_process_working_set_size)
2218 (global_memory_status, global_memory_status_ex): New wrapper
2219 functions.
2220 (w32_list_system_processes, w32_system_process_attributes)
2221 (enable_privilege, restore_privilege, ltime, process_times):
2222 New functions.
2223 (convert_time_raw): New function.
2224 (convert_time): Remove conversion of FILETIME into time in 100
2225 nsec units, call convert_time_raw instead.
2226
2227 * process.h (w32_list_system_processes, w32_system_process_attributes):
2228 Add prototypes.
2229 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
2230 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
2231 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
2232 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
2233
2234 * process.c (Fsystem_process_attributes): Doc fix.
2235
22362008-08-08 Chong Yidong <cyd@stupidchicken.com>
2237
2238 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
2239 a continued multi-char glyph; if so, advance to the actual glyph.
2240
22412008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
2242
2243 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
2244
2245 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
2246 (.m.o): Use it.
2247 * config.in: Regenerate.
2248
22492008-08-07 Chong Yidong <cyd@stupidchicken.com>
2250
2251 * xdisp.c (redisplay_window): Revert last change.
2252 (try_window): Check bottom scroll margin too.
2253
22542008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2255
2256 * config.in: Regenerate.
2257
2258 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
2259 -list-load-path-shadows'.
2260 (nsgui.h): Reduce number of things depending on it.
2261
22622008-08-06 Chong Yidong <cyd@stupidchicken.com>
2263
2264 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
2265 instead of window-end which does the wrong thing at eob.
2266 (try_cursor_movement): Minor optimization.
2267 (redisplay_window): If scroll margin is defined, don't assume
2268 window doesn't need scrolling.
2269
22702008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
2271
2272 * config.in: Regenerate.
2273
2274 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
2275 (mostlyclean): Don't delete *.d under NS.
2276
2277 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
2278
22792008-08-06 Kenichi Handa <handa@m17n.org>
2280
2281 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
2282
22832008-08-06 Andreas Schwab <schwab@suse.de>
2284
2285 * config.in: Regenerate.
2286
22872008-08-05 Chong Yidong <cyd@stupidchicken.com>
2288
2289 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
2290 forcing a window start.
2291
2292 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
2293 (auto_save_1): Update modtime when auto-save-list-file-name is on.
2294
22952008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2296
2297 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
2298 argument.
2299
23002008-08-05 Juanma Barranquero <lekktu@gmail.com>
2301
2302 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
2303 <scroll-down-aggressively, before-change-functions>:
2304 <after-change-functions>: Reflow docstrings.
2305
23062008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2307 Ken Raeburn <raeburn@gnu.org>
2308
2309 Dock menu customization, based on a patch by Ken Raeburn, plus some
2310 other fixes.
2311 * nsmenu.m (dockMenu): New variable.
2312 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
2313
2314 * nsterm.h (dockMenu): Declare.
2315
2316 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
2317 (ns_term_init): Initialize dockMenu.
2318 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
2319 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
2320 left.
2321
2322 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
2323
23242008-08-04 Chong Yidong <cyd@stupidchicken.com>
2325
2326 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
2327
2328 * config.in: Regenerate.
2329
23302008-08-04 Seiji Zenitani <zenitani@mac.com>
2331
2332 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
2333
23342008-08-04 Chong Yidong <cyd@stupidchicken.com>
2335
2336 * nsterm.h (find_and_call_menu_selection): Fix prototype.
2337
23382008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2339
2340 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
2341
2342 * keyboard.h: Comment an #endif.
2343
2344 * lisp.h (have_menus_p): Adjust comment.
2345
2346 * menu.c (find_and_return_menu_selection): Fix comparison with
2347 client_data.
2348
2349 * nsmenu.m (popup_activated_flag): New variable.
2350 (popup_activated): New function.
2351 (menu-or-popup-active-p): New exported lisp definition.
2352 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
2353 when popup done.
2354 (ns_popup_dialog): Set popup_activated_flag.
2355
2356 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
2357 version for GNUstep (handled by conditional typedef in nsterm.m).
2358 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
2359 in rgb.txt).
2360
2361 * process.c (init_process): Use DARWIN_OS, not DARWIN.
2362
2363 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
2364
2365 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
2366
2367 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
2368 shortcircuit if popup_activated like GTK and X toolkit.
2369
2370 * m/inter386.h: Change DARWIN to DARWIN_OS.
2371
2372 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
2373 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
2374 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
2375 comment on NO_SOCK_SIGIO.
2376
23772008-08-03 Chong Yidong <cyd@stupidchicken.com>
2378
2379 * nsterm.m (windowDidResize): Remove stopModal call.
2380
23812008-08-03 Andreas Schwab <schwab@suse.de>
2382
2383 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
2384 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
2385
23862008-08-02 Chong Yidong <cyd@stupidchicken.com>
2387
2388 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
2389 Don't use uninitialized pointer variable when using getrlimit.
2390
23912008-08-02 Jason Rumney <jasonr@gnu.org>
2392
2393 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
2394
23952008-08-02 Eli Zaretskii <eliz@gnu.org>
2396
2397 * alloc.c (NSTATICS): Bump to 0x640.
2398
2399 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
2400
2401 * lisp.h: Add prototype for directory_files_internal.
2402
2403 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
2404 New functions.
2405 (syms_of_process): Defsubr them. Add initializations for various
2406 Q* symbols used in procfs_system_process_attributes.
2407 (procfs_list_system_processes, procfs_system_process_attributes)
2408 [HAVE_PROCFS]: New functions.
2409 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
2410 (procfs_get_total_memory): New functions.
2411
24122008-08-01 Juanma Barranquero <lekktu@gmail.com>
2413
2414 * xfaces.c (Fx_load_color_file): Fix previous change;
2415 it is #ifdef WINDOWSNT, not WINDOWS_NT.
2416
24172008-08-01 Michael Albinus <michael.albinus@gmx.de>
2418
2419 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
2420
24212008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2422
2423 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
2424
24252008-08-01 Chong Yidong <cyd@stupidchicken.com>
2426
2427 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
2428
2429 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
2430 define NSApplicationDelegateReplySuccess.
2431 (EmacsView -converstationIdentifier): Use long instead of
2432 NSInteger for GNUstep, since it doesn't have NSInteger.
2433
2434 * xmenu.c: Revert last change.
2435
2436 * keyboard.h: Fix last change.
2437
24382008-08-01 Juanma Barranquero <lekktu@gmail.com>
2439
2440 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
2441 on Windows.
2442
24432008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2444
2445 Warning clearing and clean-up in NS port.
2446 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
2447 Add prototypes.
2448 * nsgui.h (FACE_DEFAULT): Remove, unused.
2449 (XGCValues): Change colors to unsigned long.
2450 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
2451 nsterm.m.
2452 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
2453 (ns_list_fonts): Remove, unused.
2454 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
2455 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
2456 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
2457 (nsfont_draw): Compare face colors to 0, not nil.
2458 * nsmenu.m (struct widget_value): Drop unneeded declaration.
2459 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
2460 (-addSubmenuWithTitle:): Use NSMenuItem class.
2461 (ns_popup_menu): Use NO, not NULL, for enabled setting.
2462 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
2463 (ns_clip_to_row): Make gc arg a BOOL.
2464 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
2465 ns_clip_to_row() call.
2466 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
2467 used). Cast FRAME_FONT assignments.
2468 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
2469 (ns_string_to_lispmod): Change arg to const char.
2470 (ns_term_init): Use NSMenuItem class.
2471 (EmacsApp -openFile:): Move to different section of file.
2472 (EmacsApp -application:openFiles:): Don't return a value, call
2473 -replyToOpenOrPrint:.
2474 (EmacsView -keyDown:): Fix up cast.
2475 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
2476 (EmacsView -menuDown:): Cast tag in call to
2477 find_and_call_menu_selection().
2478 (ns_list_fonts): Remove, unused.
2479 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
2480 (ns_fontname_to_xlfd): Make static.
2481 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
2482 Remove prototypes (now in keyboard.h).
2483 (next_menubar_widget_id): Remove, unused.
2484 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
2485 Remove prototypes (now in keyboard.h).
2486 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
2487
24882008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
2489
2490 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
2491 (floatfns.o): Depend on syssignal.h.
2492 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
2493
2494 * systty.h: Fix previous change that removed BSD_TERMIOS.
2495 Add comments to #ifdefs.
2496
24972008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2498
2499 * w32fns.c (w32-load-color-file): Remove.
2500 (x-open-connection): Use renamed Fx_load_color_file.
2501 * xfaces.c (x-load-color-file): Add.
2502 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
2503 Emacs.clr.
2504 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
2505
25062008-07-31 Michael Albinus <michael.albinus@gmx.de>
2507
2508 * dbusbind.c (Fdbus_call_method_asynchronously)
2509 (Fdbus_method_error_internal): New defuns.
2510 (xd_read_message): Handle also reply messages.
2511 (Vdbus_registered_functions_table): Extend docstring.
2512
25132008-07-31 Juanma Barranquero <lekktu@gmail.com>
2514
2515 * keyboard.c (gobble_input): Fix previous change.
2516
25172008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2518
2519 * bitmaps/README:
2520 * xfns.c:
2521 * termcap.c:
2522 * term.c:
2523 * syswait.h:
2524 * systty.h:
2525 * systime.h:
2526 * syssignal.h:
2527 * sysdep.c:
2528 * process.h:
2529 * process.c:
2530 * print.c:
2531 * ndir.h:
2532 * lread.c:
2533 * keyboard.c:
2534 * getpagesize.h:
2535 * floatfns.c:
2536 * fileio.c:
2537 * emacs.c:
2538 * doc.c:
2539 * dispnew.c:
2540 * dired.c:
2541 * data.c:
2542 * callproc.c:
2543 * buffer.c:
2544 * README:
2545 * Makefile.in:
2546 * s/template.h:
2547 * s/msdos.h:
2548 * m/vax.h: Remove VMS support.
2549 * s/vms.h:
2550 * vlimit.h:
2551 * uaf.h:
2552 * temacs.opt:
2553 * param.h:
2554 * ioctl.h: Remove file.
2555
25562008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
2557
2558 * s/ms-w32.h (MULTI_KBOARD): Remove.
2559 * xterm.c:
2560 * xselect.c:
2561 * xfns.c:
2562 * window.c:
2563 * w32term.c:
2564 * w32fns.c:
2565 * terminal.c:
2566 * termhooks.h:
2567 * term.c:
2568 * sysdep.c:
2569 * keyboard.h:
2570 * keyboard.c:
2571 * frame.h:
2572 * frame.c:
2573 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
2574 * config.in: Regenerate.
2575
25762008-07-30 Jason Rumney <jasonr@gnu.org>
2577
2578 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
2579
2580 * w32font.c (w32font_encode_char): Leave as unicode if in range.
2581 (w32font_open_internal): Get unicode version of textmetrics.
2582 Don't enable or disable glyph indices here.
2583 (w32font_open): Disable use of glyph indices.
2584
2585 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
2586
25872008-07-30 Chong Yidong <cyd@stupidchicken.com>
2588
2589 * minibuf.c (Vread_buffer_function): Doc fix.
2590
25912008-07-30 John Paul Wallington <jpw@pobox.com>
2592
2593 * minibuf.c (read_buffer_completion_ignore_case): New var.
2594 (Fread_buffer): Use it.
2595
25962008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
2597
2598 * systty.h (sensemode): Remove empty #if. Remove reference to
2599 BSD_TERMIOS, unused.
2600
2601 * sysdep.c: Remove reference to DGUX.
2602 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
2603
2604 * config.in: Regenerate.
2605
26062008-07-30 Jason Rumney <jasonr@gnu.org>
2607
2608 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
2609
26102008-07-29 Jason Rumney <jasonr@gnu.org>
2611
2612 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
2613 is populated.
2614 (uniscribe_encode_char): Always use uniscribe.
2615 Avoid using context if cache is populated.
2616
26172008-07-29 Jan Djärv <jan.h.d@swipnet.se>
2618
2619 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
2620 open menu.
2621
2622 * gtkutil.c (menu_nav_ended): Remove.
2623 (create_menus): Remove signal connect for menu_nav_ended.
2624
26252008-07-28 Chong Yidong <cyd@stupidchicken.com>
2626
2627 * xdisp.c (redisplay_window): Check return value of
2628 compute_window_start_on_continuation_line before forcing a window
2629 start.
2630
26312008-07-28 Jason Rumney <jasonr@gnu.org>
2632
2633 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
2634
2635 * w32term.c (w32_enable_unicode_output, cleartype_active):
2636 Remove obsolete display options.
2637 (x_draw_glyph_string_background): Don't use old cleartype_active
2638 workaround.
2639 (w32_initialize): Remove cleartype_active initialization.
2640 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
2641
26422008-07-28 Andreas Schwab <schwab@suse.de>
2643
2644 * lisp.h (init_weak_hash_tables, syms_of_font)
2645 (xd_read_queued_messages, syms_of_dbusbind): Declare.
2646 (remove_hash_entry): Don't declare.
2647 * eval.c (maybe_call_debugger): Make static and move before use.
2648 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
2649 * xdisp.c: Include "gtkutil.h" if USE_GTK.
2650 * xterm.h (x_set_frame_alpha): Declare.
2651
26522008-07-28 Jan Djärv <jan.h.d@swipnet.se>
2653
2654 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
2655 (create_menus): Connect selection-done to menu_nav_ended.
2656
26572008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2658
2659 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
2660 Set Vx_resource_name to a fallback. Replace read of 'buffered'
2661 parameter with read of 'alpha' one.
2662 (Qns_frame_parameter): Remove.
5582fbc7 2663 * nsselect.m (selection-coding-system)
aac0c6e3
MR
2664 (next-selection-coding-system, Vselection_coding_system)
2665 (Vnext_selection_coding_system): Drop.
2666
26672008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
2668
2669 * nsfns.m (do-applescript, do_applescript): Rename to
2670 ns-do-applescript, ns_do_applescript, and move within file.
2671
26722008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
2673
2674 Remove support for Mac Carbon.
2675 * mactoolbox.c:
2676 * macterm.h:
2677 * macterm.c:
2678 * macselect.c:
2679 * macmenu.c:
2680 * macgui.h:
2681 * macfns.c:
2682 * mac.c: Remove file.
2683 * s/darwin.h:
2684 * m/intel386.h:
2685 * xfaces.c:
2686 * xdisp.c:
2687 * window.c:
2688 * tparam.c:
2689 * termhooks.h:
2690 * termcap.c:
2691 * term.c:
2692 * syssignal.h:
2693 * sysselect.h:
2694 * sysdep.c:
2695 * process.c:
2696 * lread.c:
2697 * lisp.h:
2698 * keyboard.c:
2699 * image.c:
2700 * fringe.c:
2701 * frame.h:
2702 * frame.c:
2703 * fontset.c:
2704 * font.h:
2705 * font.c:
2706 * fns.c:
2707 * fileio.c:
2708 * emacs.c:
2709 * dispnew.c:
2710 * dispextern.h:
2711 * config.in:
2712 * atimer.c:
2ae37cf0 2713 * Makefile.in: Remove code for Carbon.
aac0c6e3 2714
f0131492 27152008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
2716
2717 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
2718
27192008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2720
2721 * macterm.h (kCGBitmapByteOrder32Host): New define for
2722 non-universal SDKs.
2723
2724 * image.c (mac_create_cg_image_from_image, image_load_image_io)
2725 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2726
2727 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
2728 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
2729
27302008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
2731
2732 * w32inevt.c: Include dispextern.h.
2733
27342008-07-26 Andreas Schwab <schwab@suse.de>
2735
2736 * print.c (print_object): Fix off-by-one in last change.
2737
27382008-07-25 Juanma Barranquero <lekktu@gmail.com>
2739
2740 * term.c (syms_of_term): Don't initialize default_orig_pair,
2741 default_set_foreground and default_set_background on Windows.
2742
27432008-07-25 Jason Rumney <jasonr@gnu.org>
2744
2745 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
2746 ScriptItemize. Clean up return value checking. Remove unused
2747 variables.
2748 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
2749 shaping engine.
2750
2751 * w32font.c (w32font_has_char): Handle the case where we can't
2752 determine the script for a character.
2753
27542008-07-25 Chong Yidong <cyd@stupidchicken.com>
2755
2756 * term.c (syms_of_term): Initialize default_orig_pair,
2757 default_set_foreground, and default_set_background.
2758
2759 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
2760 clash (bug#86).
2761 (getloadavg): Callers changed.
2762
2763 * image.c (svg_load_image): Fix last change.
2764 (svg_load_image): Use rsvg_handle_get_dimensions to check that
2765 image size is valid. Use g_object_unref instead of deprecated
2766 rsvg_handle_free to free rsvg handle.
2767 (x_from_xcolors): Don't initialize pixmap (silence compiler).
2768
27692008-07-25 Jason Rumney <jasonr@gnu.org>
2770
2771 * w32font.c (w32font_encode_char): Encode characters outside BMP as
2772 surrogates before looking up glyph index.
2773 (w32font_text_extents): Encode as surrogates if falling back to
2774 functions that need UTF-16 wide chars.
2775
2776 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
2777 BMP as surrogates before looking up glyph index.
2778
27792008-07-25 Chong Yidong <cyd@stupidchicken.com>
2780
2781 * image.c (svg_load_image): Check for failure in return value of
2782 rsvg_handle_get_pixbuf. Free rsvg handle when done.
2783
27842008-07-25 Jason Rumney <jasonr@gnu.org>
2785
2786 * w32font.c (Fx_select_font): Reverse sense of second arg.
2787
27882008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
2789
2790 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
2791 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
2792
2793 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
2794 (PURESIZE): Use it.
2795
27962008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
2797
2798 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
2799 * m/alpha.h (TEXT_END):
2800 * m/ibmrs6000.h (TEXT_END):
2801 * m/macppc.h (TEXT_END):
2802 * s/darwin.h (TEXT_END):
2803 * s/msdos.h (TEXT_END): Remove, unused.
2804 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
2805 * s/cygwin.h: Remove comment.
2806
2807 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
2808 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
2809 * m/intel386.h (DOT_GLOBAL_START):
2810 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
2811 (USG): Remove, file not used on USG platforms.
2812
2813 * Makefile.in (HAVE_X11): Remove empty #else.
2814
28152008-07-24 Andreas Schwab <schwab@suse.de>
2816
2817 * fileio.c (Finsert_file_contents): Properly adjust undo list
2818 after format conversion.
2819
28202008-07-24 Jan Djärv <jan.h.d@swipnet.se>
2821
2822 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
2823 (menu_nav_ended): Remove.
2824 (create_menus): Remove signal connect for menu_nav_ended.
2825 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
2826 create_menus.
2827 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
2828
28292008-07-23 Jason Rumney <jasonr@gnu.org>
2830
2831 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
2832 with opened font.
2833 (w32font_open): Set font type to gdi.
2834
2835 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
2836
28372008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
2838
2839 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
2840 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
2841 defines it.
2842 * unexec.c (ADDR_CORRECT): Define unconditionally.
2843
2844 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
2845
2846 * unexec.c: Remove code depending on !COFF and USG, the file is
2847 not used for such systems.
2848
2849 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
2850 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
2851 (LD_SWITCH_SYSTEM_1): Remove, update users.
2852
2853 * s/darwin.h (DATA_END):
2854 * m/intel386.h (DATA_END):
2855 * m/ibmrs6000.h (DATA_END):
2856 * m/alpha.h (DATA_END): Remove, unused.
2857
2858 * config.in: Regenerate.
2859 * s/ms-w32.h (subprocesses): Define unconditionally.
2860 * s/template.h (subprocesses): Update comment.
2861 * s/vms.h (subprocesses):
2862 * s/usg5-4.h (subprocesses):
2863 * s/hpux10-20.h (subprocesses):
2864 * s/gnu-linux.h (subprocesses):
2865 * s/cygwin.h (subprocesses):
2866 * s/bsd-common.h (subprocesses):
2867 * s/aix4-2.h (subprocesses):
2868 * s/darwin.h (subprocesses): Do not define, defined by default now.
2869
2870 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
2871 Remove all references.
2872 (temacs): Add GNUstep specific ld flags.
2873
2874 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
2875 similarly to what X does.
2876
28772008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2878
2879 * nsfns.m (x-list-fonts): Remove.
2880 (syms_of_nsfns): Drop the x-list-fonts declaration.
2881 * nsterm.m: Get rid of remaining "//" comments.
2882
28832008-07-22 Chong Yidong <cyd@stupidchicken.com>
2884
2885 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
2886
2887 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
2888 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
2889 (Fns_own_selection_internal, Fx_disown_selection_internal)
2890 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
2891
2892 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
2893 ... */' style of docstrings. Doc fixes.
2894
28952008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2896
2897 * terminfo.c (UP, BC, PC): Undo previous change.
2898
2899 * nsfns.m: Rename ns prefixed functions/variables to the
2900 corresponding x versions. Update references.
2901
29022008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
2903
2904 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
2905
29062008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
2907
2908 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
2909 Remove forwarding functions.
2910 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
2911 non-static.
2912 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
2913 non-static.
2914 (ns_frame_parm_handlers): Use the new names.
2915 (syms_of_nsfns): Move to the end of file.
2916
2917 * nsterm.m (syms_of_nsterm): Move to the end of file.
2918
2919 * dispnew.c (init_display): Remove code for X10.
2920
29212008-07-22 Jason Rumney <jasonr@gnu.org>
2922
2923 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
2924 bare drive.
2925
29262008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2927
2928 * nsterm.m (syms_of_nsterm): Remove debugging println.
2929
29302008-07-22 David Reitter <david.reitter@gmail.com>
2931
2932 * nsfns.m (do_applescript, F_do_applescript): NS version of the
2933 Carbon implementation of the same functionality: execute arbitrary
2934 AppleScript code.
2935
29362008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2937
2938 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
2939 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
2940 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2941 (Fx_display_mm_height, Fx_display_mm_width)
2942 (Fx_display_backing_store, Fx_display_visual_class)
2943 (Fx_display_save_under, Fx_open_connection)
2944 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
2945 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
2946 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
2947 (Fx_display_pixel_width, Fx_display_pixel_height)
2948 (Fx_display_usable_bounds, Fx_display_planes)
2949 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
2950 ... */' style of docstrings.
2951
29522008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
2953
2954 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
2955 on this platform.
2956 (mips):
2957 * m/iris4d.h (mips): Do not define.
2958 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
2959
2960 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
2961
2962 * image.c:
2963 * nsfns.m:
2964 * nsselect.m:
2965 * nsterm.h:
2966 * nsterm.m: Rename ns prefixed functions/variables to the
2967 corresponding x versions. Update references.
2968
2969 * m/ibms390x.h (NO_REMAP): Do not undefine.
2970
2971 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
2972
29732008-07-21 Chong Yidong <cyd@stupidchicken.com>
2974
2975 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
2976 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
2977 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
2978 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
2979 (Fns_display_mm_height, Fns_display_mm_width)
2980 (Fns_display_backing_store, Fns_display_visual_class)
2981 (Fns_display_save_under, Fns_open_connection)
2982 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
2983 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
2984 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
2985 (Fns_display_pixel_width, Fns_display_pixel_height)
2986 (Fns_display_usable_bounds, Fx_display_planes)
2987 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
2988
29892008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
2990
2991 * print.c (print_object): Check print_depth before searching for
2992 circularities.
2993
29942008-07-21 Michael Albinus <michael.albinus@gmx.de>
2995
2996 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
2997 only sprintf.
2998
29992008-07-21 Kenichi Handa <handa@m17n.org>
3000
3001 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
3002
30032008-07-20 Andreas Schwab <schwab@suse.de>
3004
3005 * syntax.c (find_start_pos, find_start_value)
3006 (find_start_value_byte, find_start_begv, find_defun_start)
3007 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
3008
30092008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3010
3011 * s/sol2-3.h: Insert contents of s/sol2.h.
3012 (LD_SWITCH_SYSTEM): Remove redundant definition.
3013 * s/sol2.h: Remove, unused.
3014
30152008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3016
3017 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
3018
30192008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
3020
3021 * Makefile.in (ns_appdir): Fix typo in find command.
3022
30232008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
3024
3025 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
3026
3027 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
3028 added not supported anymore.
3029
3030 * s/usg5-4-2.h (LIBS_SYSTEM):
3031 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
3032
3033 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3034 * s/lynxos.h (GETPGRP_NO_ARG):
3035 * s/hpux10-20.h (NO_SIOCTL_H):
3036 * s/gnu.h (GETPGRP_NO_ARG):
3037 * s/gnu-linux.h (NO_SIOCTL_H):
3038 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
3039 * s/cygwin.h (GETPGRP_NO_ARG):
3040 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
3041 (C_DEBUG_SWITCH): Remove duplicate definition.
3042
3043 * m/ibms390.h: Remove boilerplate comments.
3044
3045 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
3046
3047 * process.c (HAVE_SERIAL): Consolidate ifdefs.
3048 (wait_reading_process_output): Remove code for SunOS, platform not
3049 supported anymore. Use SOLARIS2 instead of sun.
3050
30512008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3052
3053 * font.c (font_open_by_name): Under NS, default lface height to zero.
3054 (font_open_for_lface): Under NS, set size based on frame fontsize.
3055 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
3056 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
3057
30582008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3059
3060 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
3061 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
3062 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
3063 YES/NO.
3064 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
3065 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
3066 * Makefile.in (clean): Clear out build destination dir.
3067
30682008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3069
3070 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
3071 xterm, xselect.
3072 * lisp.h: Remove declaration of hash_remove.
3073 * nsgui.h: Remove redefinitions of hash_remove.
3074 * fns.c (hash_remove): Rename to hash_remove_from_table.
3075
30762008-07-19 Seiji Zenitani <zenitani@mac.com>
3077
3078 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
3079 strdup() the family UTF8String before modifying it.
3080
30812008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
3082
3083 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
3084 NS_FACE_BACKGROUND with 0 instead of nil.
3085 * nsfont.m (nsfont_draw): Same.
3086
30872008-07-19 Chong Yidong <cyd@stupidchicken.com>
3088
3089 * nsfns.m (ns_set_background_color): Fix crash.
3090
30912008-07-18 Chong Yidong <cyd@stupidchicken.com>
3092
3093 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
3094
30952008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
3096
3097 * puresize.h (BASE_PURESIZE): Increase to 1240000.
3098
30992008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3100
3101 * gtkutil.c: Include <config.h> instead of "config.h".
3102
3103 * lisp.h (Foverlay_buffer): Add EXFUN.
3104
3105 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
3106 child process to complete child_setup. Undo 2005-09-21 change.
3107
3108 * s/darwin.h: Mention setsid after vfork.
3109
31102008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3111
3112 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
3113 Depend on macgui.h.
3114
3115 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
3116 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
3117
3118 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
3119 and f19.
3120 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
3121
3122 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
3123 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
3124 Remove enumerators.
3125
3126 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
3127 Check if FACE_FROM_ID returns NULL.
3128
31292008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
3130
3131 * w32inevt.c (change_frame_size): Remove extern declaration.
3132 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
3133 change_frame_size.
3134
31352008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3136
3137 * getloadavg.c: Revert last change (2008-07-15).
3138
31392008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
3140
3141 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
3142 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
3143 from configure.
3144
31452008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
3146
3147 * s/sol2.h:
3148 * s/sol2-4.h: Reorganize conditionals.
3149
3150 * ecrt0.c: Remove code depending on m68000, not used anymore.
3151
3152 * fns.c (hash_remove): Make static.
3153 * lisp.h (hash_remove): Don't prototype.
3154
3155 * m/ibmrs6000.h:
3156 * m/ibms390x.h:
3157 * m/macppc.h: Remove boilerplate comments.
3158
3159 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
3160 Solaris, which does not need them.
3161
3162 * m/vax.h: Remove comments about unsupported systems.
3163
3164 * s/darwin.h: Reorganize ifdefs.
3165
31662008-07-17 Andreas Schwab <schwab@suse.de>
3167
3168 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
3169
31702008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
3171
3172 Use SDATA. Follow coding convention of placing operators at
3173 beginning of next line rather than end of previous line, and placing
3174 spaces around infix operators.
3175
3176 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
3177 in case it was defined already.
3178 USE @GNUSTEP_MAKEFILES@ rather than envvars.
3179 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
3180 ns_default.
3181 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
3182 Lisp_Objects.
3183 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
3184 (ns_defined_color, ns_color_to_lisp): Declare.
3185 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
3186 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
3187 it's accepted even with USE_LISP_UNION_TYPE.
3188 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
3189 (update_frame_tool_bar): Remove apparently obsolete tests for
3190 non-integerness of f->tool_bar_lines.
3191 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
3192 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
3193 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
3194 (nsfont_open): Don't confuse NULL for Qnil.
3195 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
3196 * menu.h (find_and_call_menu_selection):
3197 * menu.c (find_and_call_menu_selection): Use just int for vector size.
3198 (find_and_return_menu_selection): Always return something.
3199 * frame.h: Include dispextern.h for Display_Info.
3200 (display_x_get_resource): Declare.
3201
32022008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
3203
3204 * syntax.c: Remove stdio.h include accidentally introduced in
3205 Emacs.app commit.
3206 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
3207 NS_IMPL_COCOA.
3208 * keyboard.c (handle_async_input, input_available_signal): Remove
3209 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
3210
32112008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3212
3213 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
3214 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
3215 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
3216 Use SDATA.
3217
3218 * keymap.c: Remove all NS-specific code.
3219 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
3220 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
3221 where_is_preferred_modifier, return a different value depending on how
3222 preferred is the binding.
3223 (where_is_internal): Adjust accordingly.
3224 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
3225 Adjust to new preferred_sequence_p.
3226 (syms_of_keymap): Declare `where-is-preferred-modifier'.
3227 * keyboard.c (parse_solitary_modifier): Not static any more.
3228 * keyboard.h (parse_solitary_modifier): Declare.
3229
32302008-07-16 Andreas Schwab <schwab@suse.de>
3231
3232 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
3233 of easymenu.
3234
32352008-07-16 Chong Yidong <cyd@stupidchicken.com>
3236
3237 * xdisp.c (move_it_in_display_line): Account for word wrap, so
3238 that we don't move off the line.
3239
32402008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
3241
3242 * keyboard.c (Qsuper): Remove.
3243 (parse_menu_item): Don't call where_is_internal specially for NS.
3244
32452008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3246
3247 * s/gnu-linux.h: Remove boilerplate comments.
3248
3249 * m/alpha.h (__ELF__): Consolidate conditions.
3250
3251 * m/m68k.h (linux): Use GNU_LINUX instead.
3252 Remove boilerplate comments.
3253
3254 * m/intel386.h: Undo refactoring from previous change.
3255 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
3256 too, remove dead code.
3257 (linux): Use GNU_LINUX instead.
3258
32592008-07-16 Jason Rumney <jasonr@gnu.org>
3260
3261 * w32gui.h: Repeat 26 June changes lost by last change.
3262
32632008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
3264
3265 * systty.h: Remove code for Aix on 386, unsupported platform.
3266
3267 * s/ms-w32.h: Remove boilerplate comments.
3268 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
3269
3270 * s/gnu-linux.h (TERM): Remove support.
3271 (HAVE_SYSVIPC): Remove, unused.
3272 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
3273 for this system.
3274
3275 * process.c: Remove support for IRIS, unused.
3276 Remove support for TERM, not relevant anymore.
3277
3278 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
3279 used with the definition.
3280
3281 * s/aix4-2.h (static): Do not undef.
3282
3283 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
3284 only used on Aix.
3285 (HAVE_SYSVIPC): Remove, unused.
3286
3287 * m/hp800.h (CANNOT_DUMP): Do not undef.
3288
3289 * m/alpha.h: Fix comment.
3290
3291 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
3292 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
3293 used by this configuration.
3294 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
3295 * unexec.c: Remove code depending on HPUX and
3296 USG_SHARED_LIBRARIES, not used with this file. Remove code
3297 depending on IRIS, unused. Remove if 0-ed code.
3298
3299 * s/template.h: Remove comments about static.
3300
3301 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
3302 Remove if 0-ed code.
3303 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
3304 were the same as the default.
3305 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
3306 Remove boilerplate comments.
3307 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
3308 (HAVE_SYSVIPC): Remove, unused.
3309 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
3310
3311 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3312 Remove boilerplate comments.
3313 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3314 Remove boilerplate comments.
3315 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
3316 Remove boilerplate comments.
3317 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
3318
3319 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
3320 USG systems which do not use DATA_SEG_BITS.
3321 Refactor code. Remove boilerplate comments.
3322
3323 * m/ibms390.h:
3324 * m/m68k.h:
3325 * s/bsd-common.h:
3326 * s/cygwin.h:
3327 * s/darwin.h:
3328 * s/freebsd.h:
3329 * s/gnu.h:
3330 * s/msdos.h: Remove boilerplate comments.
3331
3332 * m/iris4d.h: Remove boilerplate comments and code for systems that
3333 do not use this file.
3334 (IRIS_4D): Remove, unused.
3335
3336 * m/mips.h: Remove boilerplate comments and code for systems that
3337 do not use this file.
3338 (SIGN_EXTEND_CHAR):
3339 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
3340 * unexmips.c: Remove file, unused.
3341
3342 * editfns.c (Fuser_full_name): Replace the only use of
3343 USER_FULL_NAME with its value.
3344 * config.in: Regenerate.
3345
33462008-07-16 David Reitter <david.reitter@gmail.com>
3347
3348 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
3349 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
3350
33512008-07-16 Glenn Morris <rgm@gnu.org>
3352
3353 * emacs.c (system-type): Doc fix.
3354
33552008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
3356
3357 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
3358 If the cache doesn't work, let's fix it, rather than work around it.
3359
33602008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3361
3362 * Makefile.in: Correct additions for nsfont.o in last commit.
3363 * nsfont.m: New file (forgot last commit).
3364
33652008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3366
3367 * callproc.c (set_initial_environment): Initialize
3368 Vprocess_environment under CANNOT_DUMP (fixes crash when
3369 batch-compiling for bootstrap).
3370
33712008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
3372 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3373
3374 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
3375 fix crash due to different init order.
3376
33772008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3378
3379 Changes and additions for NeXTstep windowing system (Cocoa and
3380 GNUstep) support.
3381
3382 * Makefile.in:
3383 * config.in: Support defines and build commands for NS port.
3384 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
3385 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
3386 * dispextern.h: Include nsgui.h and add needed typedefs under NS
3387 windowing.
3388 (struct face): Add synth_ital field.
3389 * dispnew.c: Include nsterm.h when compiling under NS windowing.
3390 (init_display): Initialize Vinitial_window_system to "ns" when so
3391 compiled.
3392 * emacs.c: Include GSConfig.h when compiling under GNUstep.
3393 (display_arg): Use under NS.
3394 (main): Under NS, allocate autorelease pool and handle command line
3395 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
3396 (standard_args): Add NS-specific args.
3397 (shut_down_emacs): Shut down NS terminal if compiled under NS.
3398 * font.c (DEFAULT_ENCODING): New variable.
3399 (font_find_for_lface): Use it.
3400 (syms_of_font): Load syms_of_nsfont under NS.
3401 * font.h: Declare nsfont_driver when compiled under NS.
3402 * fontset.c: When compiling under NS, include nsterm.h.
3403 (fontset_from_font): Autoconstruct fontset under NS.
3404 * frame.c (various): Under NS, include nsterm.h, add Qns window system
3405 symbol, document and use it.
3406 (do_switch_frame): When for_deletion under Cocoa, add
3407 Fraise_frame(Qnil).
3408 (x_set_frame_parameters): Ensure font attribute changes are picked up.
3409 (x_get_arg): Allow "yes" and "no" as boolean values.
3410 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
3411 Qright under Cocoa.
3412 (focus-follows-mouse): Default to 0 under NS.
3413 * frame.h (enum output_method): Add output_ns.
3414 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
3415 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
3416 (FRAME_WINDOW_P): NS-specific definition.
3417 * fringe.c (max_used_fringe_bitmap): Make public.
3418 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
3419 (getloadavg): Use NeXT code under descendant OS's.
3420 * image.c (includes and header section, x_create_bitmap_from_data)
3421 (x_create_bitmap_from_file, free_bitmap_record, image_background)
3422 (image_background_transparent, x_clear_image_1)
3423 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
3424 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
3425 (x_to_xcolors, x_from_xcolors, x_disable_image)
3426 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
3427 other GUIs, including XPM support using code originally written for
3428 Carbon GUI.
3429 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
3430 using NS API.
3431 (image_ascent): Use font metrics macros instead of direct struct field
3432 access.
3433 * keyboard.c (includes): Add nsterm.h when compiling under NS.
3434 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
3435 Also, handle NS as GTK for menu bar purposes.
3436 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
3437 toolkit where they differ.
3438 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
3439 use cachelist, still needed under NS.
3440 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
3441 (struct widget_value): Define it here for menu.c.
3442 * keymap.c (includes): Include modifier internals.
3443 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
3444 NS.
3445 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
3446 support for preferring sequences using certain modifiers, specified by
3447 the FIRSTONLY argument.
3448 * lisp.h (hash_remove): Rename to avoid name clash when compiling
3449 under NS GNUstep implementation.
3450 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
3451 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
3452 * menu.c: Include nsterm.h under NS.
3453 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
3454 (free_menubar_widget_tree_value, update_submenu_strings)
3455 (find_and_call_menu_selection): Treat NS as X and NT.
3456 (find_and_return_menu_selection): New function, used for popup menus.
3457 * nsgui.h:
3458 * nsterm.h:
3459 * nsfns.m:
3460 * nsimage.m:
3461 * nsmenu.m:
3462 * nsselect.m:
3463 * nsterm.m: New files.
3464 * process.c (wait_reading_process_output): Under NS, call ns_select()
3465 instead of plain select().
3466 * syntax.c (char_quoted): Under NS, avoid a crash when called near
3467 beginning of buffer.
3468 * sysselect.h (init_process): Rename when compiling under Cocoa to
3469 avoid name conflict.
3470 * termhooks.h (display_info): Add ns_display_info to union.
3471 * terminal.c (Fterminal_live_p): Add ns to terminal types.
3472 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
3473 COCOA environment.
3474 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
3475 unexec() signature. (Note, this will dump, but the resulting file
3476 crashes; unexosx is used instead; keeping around for reference and
3477 possible aid in getting dump working under GNUstep.)
3478 * w32gui.h (button_type, widget_value): Remove definitions (now in
3479 keyboard.h).
3480 * window.c: Include nsterm.h when compiling under NS.
3481 * xdisp.c (includes): Include nsterm.h when compiling under NS.
3482 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
3483 other GUI windowing systems.
3484 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
3485 GTK.
3486 (x_consider_frame_title): Under NS, set icon type and frame
3487 modified-state indicator; use ns_set_name_as_filename() when using
3488 formatted title.
3489 (update_window_cursor): Make public when compiling under NS.
3490 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
3491 (hourglass_atimer, Vhourglass_delay
3492 * xfaces.c (header section, init_frame_faces, clear_font_table)
3493 (defined_color, unload_color, x_face_list_fonts)
3494 (prepare_face_for_display): Add NS support parallel to other GUIs.
3495 Emulate GCs like other non-X GUIs.
3496 (split_font_name): Don't lowercase font name under NS.
3497 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
3498 under NS.
3499 * s/darwin.h: Add support for compilation under NS.
3500
35012008-07-15 Jason Rumney <jasonr@gnu.org>
3502
3503 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
3504 (w32_show_hourglass): Rename from show_hourglass.
3505 (w32_hide_hourglass): Rename from hide_hourglass.
3506 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
3507 (Vhourglass_delay): Declare extern.
3508 (hourglass_started): Remove.
3509
3510 * xdisp.c (Vhourglass_delay): Remove static.
3511 (hourglass_started, start_hourglass, cancel_hourglass):
3512 Don't include these versions on WINDOWSNT.
3513
35142008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3515
3516 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
3517 variables (formerly in xfns.c).
3518 (show_hourglass, hide_hourglass): New prototypes (same).
3519 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
3520 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
3521 in xfns.c).
3522 (syms_of_xdisp): Declare/initialize display-hourglass,
3523 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
3524 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
3525 formerly in xfns.c.
3526 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3527 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3528 (start_hourglass, cancel_hourglass): Remove.
3529 (show_hourglass, hide_hourglass): Remove prototypes and static
3530 modifiers.
3531 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
3532 hourglass_atimer, hourglass_shown_p declaration/initialization.
3533 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
3534 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
3535 (start_hourglass, cancel_hourglass): Remove.
3536 (show_hourglass, hide_hourglass): Remove prototypes and static
3537 modifiers.
3538 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
3539 hourglass_atimer, hourglass_shown_p declaration/initialization.
3540 * w32fns.c (display_hourglass_p, Vhourglass_delay)
3541 (DEFAULT_HOURGLASS_DELAY): Remove.
3542 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
3543 hourglass_shown_p declaration/initialization.
3544
35452008-07-14 Jason Rumney <jasonr@gnu.org>
3546
3547 * w32fns.c (w32_get_arg): Remove wrapper function.
3548 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
3549 directly.
3550 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
3551
35522008-07-14 Kenichi Handa <handa@m17n.org>
3553
3554 * xfont.c (xfont_open): Add workaround for X's bug.
3555
35562008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
3557
3558 * fontset.c: Include <stdio.h> unconditionally.
3559
35602008-07-13 Michael Albinus <michael.albinus@gmx.de>
3561
3562 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
3563 for filtering.
3564
35652008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
3566
3567 * s/vms.h: Use __GNUC__ instead of _GNUC_.
3568
3569 * m/macppc.h:
3570 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
3571
3572 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
3573 (SPECIAL_EMACS_INT):
3574 * m/ia64.h (SPECIAL_EMACS_INT):
3575 * m/amdx86-64.h (SPECIAL_EMACS_INT):
3576 * s/gnu.h (NLIST_STRUCT):
3577 * s/aix4-2.h (X11R5_INHIBIT_I18N):
3578 * s/gnu-linux.h (LINUX):
3579 * s/msdos.h (HAVE_FACES):
3580 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
3581
3582 * systty.h:
3583 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
3584 anymore.
3585
35862008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
3587
3588 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
3589 always defined as int.
3590
3591 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
3592 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
3593 * s/gnu-linux.h (HAVE_WAIT_HEADER):
3594 * s/freebsd.h (HAVE_WAIT_HEADER):
3595 * s/bsd-common.h (HAVE_UNION_WAIT):
3596 * s/aix4-2.h (HAVE_WAIT_HEADER):
3597 * m/mips.h (HAVE_UNION_WAIT):
3598 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
3599 (COFF, static): Do not define, they are undefined later in the file.
3600
3601 * process.c (update_status): Don't use a union.
3602 (status_convert):
3603 (sigchld_handler): Use int instead of WAITTYPE.
3604
36052008-07-12 Chong Yidong <cyd@stupidchicken.com>
3606
3607 * indent.c (Fvertical_motion): Restore hscroll before moving to
3608 goal column.
3609
36102008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3611
3612 * lisp.h: Remove left over code.
3613
36142008-07-11 Andreas Schwab <schwab@suse.de>
3615
3616 * lisp.h: Fix logic in last change.
3617
3618 * menu.h: New file.
3619 * menu.c: Include it.
3620 * xmenu.c: Likewise.
3621 * Makefile.in: Update dependencies.
3622
36232008-07-11 Kenichi Handa <handa@m17n.org>
3624
3625 * fontset.c (fontset_from_font): Cancel the previous change.
3626
36272008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
3628
3629 * lisp.h:
3630 * w32heap.c:
3631 * emacs.c:
3632 * alloc.c: Replace all references of NO_UNION_TYPE with
3633 USE_LISP_UNION_TYPE.
3634
3635 * m/xtensa.h (NO_UNION_TYPE):
3636 * m/vax.h (NO_UNION_TYPE):
3637 * m/template.h (NO_UNION_TYPE):
3638 * m/sparc.h (NO_UNION_TYPE):
3639 * m/mips.h (NO_UNION_TYPE):
3640 * m/macppc.h (NO_UNION_TYPE):
3641 * m/m68k.h (NO_UNION_TYPE):
3642 * m/iris4d.h (NO_UNION_TYPE):
3643 * m/intel386.h (NO_UNION_TYPE):
3644 * m/ibms390x.h (NO_UNION_TYPE):
3645 * m/ibms390.h (NO_UNION_TYPE):
3646 * m/ibmrs6000.h (NO_UNION_TYPE):
3647 * m/ia64.h (NO_UNION_TYPE):
3648 * m/hp800.h (NO_UNION_TYPE):
3649 * m/arm.h (NO_UNION_TYPE):
3650 * m/amdx86-64.h (NO_UNION_TYPE):
3651 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
3652 defining it the same.
3653
36542008-07-10 Chong Yidong <cyd@stupidchicken.com>
3655
3656 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
3657
36582008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3659
3660 * fileio.c:
3661 * sysdep.c
3662 * systty.h:
3663 * m/ibmrs6000.h:
3664 * m/iris4d.h:
3665 * s/aix4-2.h:
3666 * s/freebsd.h:
3667 * s/gnu-linux.h:
3668 * s/hpux10-20.h:
3669 * s/hpux11.h:
3670 * s/netbsd.h:
3671 * s/sol2-3.h:
3672 * s/sol2-4.h:
3673 * s/sol2.h:
3674 * s/usg5-4.h:
3675 * s/vms.h: Remove references to unused variables.
3676
36772008-07-10 Andreas Schwab <schwab@suse.de>
3678
3679 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
3680 pattern before matching the generic family.
3681
36822008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
3683
3684 * unexec.c:
3685 * s/vms.h:
3686 * s/usg5-4-2.h:
3687 * s/sol2-5.h:
3688 * s/freebsd.h:
3689 * s/darwin.h: Remove dead code.
3690
3691 * m/template.h:
3692 * m/sparc.h:
3693 * m/mips.h:
3694 * m/m68k.h:
3695 * m/iris4d.h:
3696 * m/intel386.h:
3697 * m/ibms390x.h:
3698 * m/ibms390.h:
3699 * m/ia64.h:
3700 * m/hp800.h:
3701 * m/arm.h:
3702 * m/amdx86-64.h: Remove dead code and references to unused
3703 and compiler defined symbols.
3704
3705 * unexmips.c:
3706 * unexelf.c: Remove references to desupported systems.
3707
3708 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
3709
3710 * m/powermac.h: Remove boilerplate comments.
3711 (NO_REMAP): Remove unused definition.
3712
3713 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
3714 define them.
3715
37162008-07-10 Kenichi Handa <handa@m17n.org>
3717
3718 * xfont.c (xfont_open): Log the reason of failure.
3719
37202008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
3721
3722 * fontset.c (fontset_get_font_group):
3723 * font.c (font_check_otf): Specify argument types.
3724
37252008-07-09 Kenichi Handa <handa@m17n.org>
3726
3727 * coding.c (detect_coding_utf_8): Set detect_info->found only when
3728 non-ASCII char is found.
3729
3730 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
3731 (reorder_font_vector): Change the arg preferred_family to font.
3732 Prefer the spec matching with font.
3733 (fontset_get_font_group): New function.
3734 (fontset_find_font): Change the format of an element of a realized
3735 fontset. Use fontset_get_font_group.
3736 (fontset_font): Try the current fontset, the default fontset, the
3737 fallbacks of the current fontset, and the fallbacks of the default
3738 fontset in this order.
3739 (face_for_char): Delete the shortcut to use the current font.
3740 (fontset_from_font): Don't set fonts for Latin in the fontset.
3741
3742 * font.h (font_make_object, font_match_p): Adjust prototypes.
3743
3744 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
3745
3746 * font.c (font_make_object): New arg entity and pixelsize.
3747 (font_check_otf_features, font_check_otf): New functions.
3748 (font_match_p): Check :lang, :script, and :otf properties.
3749
3750 * xfont.c (xfont_open): Adjust it for the change of
3751 font_make_object.
3752 (xfont_text_extents): Fix initial setting of metrics.
3753
3754 * ftfont.c (struct ftfont_info): New member index, delete member
3755 fc_charset_idx. Make the member order compatible with struct
3756 xftfont_info.
3757 (fc_charset_table): Change charset names to registry names.
3758 (ftfont_pattern_entity): Delete the args registry and
3759 fc_charset_idx. Change the value of :font-entity property
3760 to (FONTNAME . INDEX). Always set :registry property to
3761 `iso10646-1'.
3762 (struct ftfont_cache_data): New struct.
3763 (ftfont_lookup_cache): New arg for_face.
3764 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
3765 (ftfont_driver): Set the member otf_capability.
3766 (ftfont_get_charset): Adjust it for the change of
3767 fc_charset_table.
3768 (OTF_TAG_SYM): New macro.
3769 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
3770 for the change of fc_charset_table.
3771 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
3772 ftfont_pattern_entity. Add FC_INDEX to objset.
3773 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
3774 and ftfont_pattern_entity.
3775 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
3776 font_make_object, struct ftfont_info.
3777 (ftfont_has_char): Use ftfont_get_fc_charset.
3778 (ftfont_otf_features, ftfont_otf_capability): New functions.
3779 (ftfont_shape): Use ftfont_get_otf.
3780 (ftfont_text_extents): Fix initial setting of metrics.
3781
3782 * xftfont.c (struct xftfont_info): New member ft_size. Make the
3783 member order compatible with struct ftfont_info.
3784 (xftfont_open): Add FC_CHARSET to the pattern. Set
3785 xftfont_info->ft_size. Don't unlock the face. Check BDF
3786 properties if appropriate.
3787 (xftfont_close): Unlock the face.
3788 (xftfont_anchor_point, xftfont_shape): Deleted.
3789 (syms_of_xftfont): Don't set members anchor_point and shape of
3790 xftfont_driver.
3791
3792 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
3793 font_make_object.
3794
3795 * w32font.c (w32font_open): Adjust it for the change of
3796 font_make_object.
3797 (w32font_open_internal): Don't set properties of font_object here.
3798
37992008-07-08 Chong Yidong <cyd@stupidchicken.com>
3800
3801 * macfns.c (x_create_tip_frame):
3802 * w32fns.c (x_create_tip_frame):
3803 * xfns.c (x_create_tip_frame): Pass parameter argument to
3804 face-set-after-frame-default.
3805
3806 * xfaces.c (Finternal_merge_in_global_face): Save merged
3807 attributes for the default face back into the face vector.
3808
38092008-07-08 Andreas Schwab <schwab@suse.de>
3810
3811 * fontset.h: Declare fontset_from_font. Don't declare
3812 new_fontset_from_font and fontset_from_font_name.
3813 * xterm.c: Include "fontset.h".
3814 * Makefile.in (xterm.o): Update dependencies.
3815
38162008-07-08 Glenn Morris <rgm@gnu.org>
3817
3818 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
3819 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
3820
38212008-07-07 Chong Yidong <cyd@stupidchicken.com>
3822
3823 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
3824 (x_set_frame_parameters): Don't bind it.
3825
38262008-07-07 Juanma Barranquero <lekktu@gmail.com>
3827
3828 * w32fns.c (map_w32_filename): Declare extern.
3829
38302008-07-07 Jason Rumney <jasonr@gnu.org>
3831
3832 * w32term.c (WS_EX_LAYERED): Define if not already.
3833
38342008-07-06 Chong Yidong <cyd@stupidchicken.com>
3835
3836 * xfaces.c (set_font_frame_param): Don't try to set the font
3837 parameter if it is still unspecified in the lface.
3838
38392008-07-05 Chong Yidong <cyd@stupidchicken.com>
3840
3841 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
3842 face if it didn't already exist.
3843
3844 * xdisp.c (try_window_id): Give up if word-wrapping is on.
3845
38462008-07-05 Andreas Schwab <schwab@suse.de>
3847
3848 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
3849
38502008-07-05 Chong Yidong <cyd@stupidchicken.com>
3851
3852 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
3853 word-wrapping.
3854 (IT_DISPLAYING_WHITESPACE): New macro.
3855 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
3856 when word-wrapping. Simplify word-wrapping logic. Use correct
3857 pixel positions when saving copies of the iterator.
3858 (display_line): Use proper wrap point if the last character on a
3859 line was preceded by whitespace.
3860
38612008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
3862
3863 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
3864
38652008-07-04 Kenichi Handa <handa@m17n.org>
3866
3867 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
3868
3869 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
3870
38712008-07-02 Jason Rumney <jasonr@gnu.org>
3872
3873 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 3874 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
3875
3876 * xdisp.c (next_element_from_display_vector): Move assignment out
3877 of if statement.
3878
38792008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
3880
3881 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
3882
3883 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
3884 (syms_of_fileio): Initialize and export them.
3885 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
3886
3887 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
3888 (Fsystem_move_file_to_trash): New function.
3889 (syms_of_w32fns): Export it to lisp.
3890
38912008-07-01 Jason Rumney <jasonr@gnu.org>
3892
3893 * w32font.c (w32font_text_extents): Don't count overhang as part
3894 of width.
3895
38962008-06-30 Miles Bader <miles@gnu.org>
3897
3898 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
3899 Add `avoid_cursor_p' field.
3900
3901 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
3902 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
3903 (append_glyph, append_composite_glyph, produce_image_glyph)
3904 (append_stretch_glyph): Initialize avoid_cursor_p.
3905 (get_it_property): Rename from `get_line_height_property'.
3906 (x_produce_glyphs): Use get_it_property.
3907 (handle_line_prefix, push_display_prop): New functions.
3908 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
3909 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
3910 New variables.
3911 (syms_of_xdisp): Initialize them.
3912
39132008-06-30 Kenichi Handa <handa@m17n.org>
3914
3915 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
3916 XftDefaultSubstitute (they are called in XftFontMatch).
3917 (xftfont_open): Fix args to ftfont_font_format.
3918
3919 * ftfont.c (fc_charset_table): New member lang.
3920 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 3921 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
3922 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
3923 (ftfont_open): Fix args to ftfont_font_format.
3924 (ftfont_font_format): New arg filename.
3925
39262008-06-30 Chong Yidong <cyd@stupidchicken.com>
3927
3928 * xfaces.c (Finternal_merge_in_global_face): If default face was
3929 modified, realize it again. Update the font face attribute.
3930
39312008-06-29 Jason Rumney <jasonr@gnu.org>
3932
3933 * w32term.c (x_set_frame_alpha): Fix logic.
3934
39352008-06-29 Kenichi Handa <handa@m17n.org>
3936
3937 * fontset.c (Finternal_char_font): Return font-object instead of
3938 font-name.
3939
3940 * composite.c (get_composition_id): Fix the width calculation for TAB.
3941
39422008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
3943
3944 * indent.c (Fvertical_motion): Properly handle float column arg.
3945
39462008-06-28 Jason Rumney <jasonr@gnu.org>
3947
3948 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
3949 (pfnSetLayeredWindowAttributes): New function pointer.
3950 (w32_initialize): Initialize it when supported.
3951 (x_set_frame_alpha): New function.
3952
3953 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
3954 (w32_frame_parm_handlers): Set alpha handler.
3955
3956 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
3957
39582008-06-27 Jason Rumney <jasonr@gnu.org>
3959
3960 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
3961 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
3962 (w32_to_x_charset, x_to_w32_charset)
3963 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
3964 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
3965 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
3966 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
3967 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
3968 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
3969 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
3970 (Qw32_charset_unicode): Remove.
3971 (syms_of_w32fns): Update for above changes.
3972
3973 * w32font.c (w32_to_x_charset, x_to_w32_charset)
3974 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
3975 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
3976 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
3977 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
3978 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
3979 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
3980 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
3981 (syms_of_w32font): Update for above changes.
3982
39832008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
3984
3985 * s/usg5-4.h: Fix previous change: keep the correct branch of a
3986 removed #if.
3987 (USG_SHARED_LIBRARIES): Remove duplicate definition.
3988
39892008-06-26 Juanma Barranquero <lekktu@gmail.com>
3990 Eli Zaretskii <eliz@gnu.org>
3991
3992 * makefile.w32-in (LOCAL_FLAGS):
3993 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
3994
3995 * sysdep.c (_spawnlp, _getpid):
3996 Declare with explicit _cdecl instead of _CRTAPI1.
3997
3998 * editfns.c (Fget_internal_run_time):
3999 Check for WINDOWSNT with #ifdef, not #if.
4000
40012008-06-26 Jason Rumney <jasonr@gnu.org>
4002
4003 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
4004
4005 * w32term.c (x_draw_glyph_string_foreground)
4006 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
4007 Use FONT_HANDLE macro.
4008 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
4009
4010 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4011 (uniscribe_encode_char): Use FONT_HANDLE macro.
4012
4013 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
4014 (w32font_text_extents): Use precast w32_font.
4015 (w32font_close): Free cached metrics.
4016 (w32font_open_internal): Allocate space for name on stack.
4017
40182008-06-26 Chong Yidong <cyd@stupidchicken.com>
4019
4020 * xdisp.c (extend_face_to_end_of_line): Fix last change.
4021
40222008-06-26 Jason Rumney <jasonr@gnu.org>
4023
4024 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
4025 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
4026
40272008-06-26 Juanma Barranquero <lekktu@gmail.com>
4028
4029 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
4030
40312008-06-26 Jason Rumney <jasonr@gnu.org>
4032
4033 * w32bdf.c, w32bdf.h: Remove obsolete files.
4034
4035 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
4036
4037 * w32gui.h: Don't include w32bdf.h.
4038 (XCharStruct, enum w32_char_font_type, W32FontStruct):
4039 Remove obsolete font support.
4040
4041 * w32font.h (struct w32font_info): Remove compat_w32_font.
4042 Add hfont member.
4043 (FONT_COMPAT): Remove obsolete macro.
4044
4045 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
4046 (w32font_encode_char, w32font_text_extents): Use new hfont member.
4047 (w32font_open_internal): Remove compat code. Set new hfont member.
4048 (Fx_select_font): Use new hfont member.
4049
4050 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
4051 (uniscribe_encode_char): Use new hfont member.
4052
4053 * w32term.c (x_draw_glyph_string_foreground)
4054 (x_draw_composite_glyph_string_foreground): Use new hfont member.
4055 (x_draw_glyph_string): Use metrics in w32font_info.
4056
40572008-06-26 Kenichi Handa <handa@m17n.org>
4058
4059 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
4060
40612008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
4062
4063 * unexnext.c:
4064 * m/ews4800.h:
4065 * m/hp9000s300.h:
4066 * m/ibm370aix.h:
4067 * m/mips-siemens.h:
4068 * m/ncr386.h:
4069 * m/next.h:
4070 * m/pmax.h:
4071 * m/powerpcle.h:
4072 * m/tandem-s2.h:
4073 * s/386bsd.h:
4074 * s/bsd386.h:
4075 * s/bsd4-1.h:
4076 * s/bsd4-2.h:
4077 * s/bsdos2-1.h:
4078 * s/bsdos2.h:
4079 * s/bsdos3.h:
4080 * s/bsdos4.h:
4081 * s/nextstep.h:
4082 * s/ultrix4-3.h:
4083 * s/usg5-0.h:
4084 * s/usg5-2-2.h:
4085 * s/usg5-2.h:
4086 * s/usg5-4-3.h:
4087 * s/ux4800.h:
4088 * s/uxpds.h:
4089 * s/uxpv.h: Remove support for obsolete systems.
4090 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
4091 Remove, insert contents in s/hpux-10.20.h.
4092 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
4093 Remove, insert contents in s/aix4-2.h.
4094 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
4095 * s/bsd4-3.h: Rename to ...
4096 * s/bsd-common.h: ... this.
4097 * data.c:
4098 * doc.c:
4099 * ecrt0.c:
4100 * emacs.c:
4101 * fileio.c:
4102 * floatfns.c:
4103 * keyboard.c:
4104 * mem-limits.h:
4105 * print.c:
4106 * process.c:
4107 * sysdep.c:
4108 * syssignal.h:
4109 * systty.h:
4110 * syswait.h:
4111 * term.c:
4112 * unexec.c:
4113 * unexelf.c:
4114 * unexhp9k800.c:
4115 * m/hp800.h:
4116 * m/ibmrs6000.h:
4117 * m/mips.h:
4118 * m/vax.h:
4119 * s/darwin.h:
4120 * s/freebsd.h:
4121 * s/gnu.h:
4122 * s/ms-w32.h:
4123 * s/msdos.h:
4124 * s/netbsd.h:
4125 * s/template.h: Remove references to obsolete variables.
4126
4127 * Makefile.in: Add dependencies for all unexec files.
4128 (admindir): Remove unused variable.
4129 (UNEXEC_SRC): Remove references.
4130
41312008-06-25 Chong Yidong <cyd@stupidchicken.com>
4132
4133 * xfns.c (x_default_font_parameter): If Xft is available, first
4134 try Monospace-12 for the default font.
4135
41362008-06-25 Jason Rumney <jasonr@gnu.org>
4137
4138 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
4139
41402008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
4141
4142 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
4143
4144 * buffer.c (syms_of_buffer): Remove default-word-wrap.
4145
41462008-06-25 Juanma Barranquero <lekktu@gmail.com>
4147
4148 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
4149 <scroll-conservatively>: Fix typo in docstring.
4150
4151 * xselect.c (Fx_send_client_event): Doc fix.
4152
41532008-06-25 Kenichi Handa <handa@m17n.org>
4154
4155 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
4156
4157 * font.c (font_parse_fcname): Remove unused variables.
4158 (font_sort_entites): Delete the arg SPEC. Caller changed.
4159 Fix for the case of ! best_only.
4160 (font_delete_unmatched): Check DPI and AVGWIDTH too.
4161
4162 * lisp.h (Fstring_to_unibyte): EXFUN it.
4163
4164 * character.h (str_to_unibyte): Extern it.
4165
4166 * character.c (str_to_unibyte): New function.
4167
4168 * fns.c (Fstring_to_unibyte): New function.
4169 (syms_of_fns): Defsubr it.
4170
41712008-06-24 Kenichi Handa <handa@m17n.org>
4172
4173 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
4174 DPI too.
4175 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
4176
41772008-06-24 Andreas Schwab <schwab@suse.de>
4178
4179 * Makefile.in (${lispsource}loaddefs.el): Rename from
4180 ../lisp/loaddefs.el.
4181 (bootstrap-clean): Do what distclean does but don't remove
4182 Makefile.
4183 (distclean): Depend on bootstrap-clean and remove Makefile.
4184
41852008-06-24 Chong Yidong <cyd@stupidchicken.com>
4186
4187 * buffer.h (struct buffer): New member word_wrap.
4188
4189 * buffer.c (syms_of_buffer): New variables default-word-wrap and
4190 word-wrap.
4191 (init_buffer_once): Initialize them.
4192
4193 * dispextern.h (struct it): Replace bool truncate_lines_p with a
4194 line_wrap enum possessing three possible values.
4195
4196 * termopts.h: Replace truncate_partial_width_windows with
4197 Vtruncate_partial_width_windows.
4198
4199 * dispnew.c (direct_output_for_insert): Avoid direct output when
4200 inserting a space with word wrap on.
4201
4202 * indent.c (compute_motion): Obey integer values of
4203 truncate-partial-width-windows.
4204
4205 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
4206 replacing truncate_partial_width_windows.
4207 (init_iterator): If Vtruncate_partial_width_windows is an integer,
4208 truncate only if the window width is below that integer.
4209 (start_display, resize_mini_window, produce_stretch_glyph)
4210 (display_string, move_it_in_display_line_to): Use line_wrap.
4211 (back_to_previous_visible_line_start, reseat_1): Reset
4212 string_from_display_prop_p.
4213 (display_line): Extend default face to end of line when wrapping.
4214
42152008-06-24 Kim F. Storm <storm@cua.dk>
4216
4217 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
4218 to wrap continued lines at word boundaries.
4219
42202008-06-24 Jason Rumney <jasonr@gnu.org>
4221
4222 * font.c (Ffont_face_attributes): Multiply pixel size before point
4223 conversion to avoid multiplying rounding error.
4224
42252008-06-23 Jason Rumney <jasonr@gnu.org>
4226
4227 * w32term.c (x_draw_glyph_string_background)
4228 (x_draw_glyph_string): Remove old bdf font code.
4229
4230 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
4231
42322008-06-22 Kenichi Handa <handa@m17n.org>
4233
4234 * font.c (font_find_for_lface): Try the adstyle specified in
4235 the property of LFACE_FONT of LFACE (if any).
4236
42372008-06-21 Seiji Zenitani <zenitani@mac.com>
4238 Ryo Yoshitake <ryo@shiftmode.net>
4239
4240 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
4241
42422008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
4243
4244 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
4245 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
4246 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
4247 (witness-emacs): Remove.
4248 (lisp, shortlisp): Move loaddefs.el earlier.
4249 (mostlyclean): Forget about witness-emacs.
4250
42512008-06-22 Glenn Morris <rgm@gnu.org>
4252
4253 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
4254 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
4255
42562008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4257
4258 * Makefile.in (PRECOMP): Remove.
4259 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
4260 (witness-emacs): Run `compile-first'.
4261 (.el.elc): Use the new compile-onefile target.
4262
42632008-06-21 Kenichi Handa <handa@m17n.org>
4264
4265 * xftfont.c (xftfont_open): Handle QCembolden only when
4266 FC_EMBOLDEN is defined.
4267
42682008-06-21 Andreas Schwab <schwab@suse.de>
4269
4270 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
4271 (.el.elc): Likewise.
4272
42732008-06-21 Miles Bader <miles@gnu.org>
4274
4275 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
4276 build dir, not the lisp source dir.
4277
42782008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
4279
4280 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
4281 (bootstrapclean): Remove.
4282 (.el.elc): New rule.
4283 (PRECOMP): New var.
4284 (../lisp/subdirs.el): Remove.
4285 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
4286 (witness-emacs): New target.
4287 (mostlyclean): Remove witness-emacs as well.
4288 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
4289 Add witness-emacs dependency.
4290
42912008-06-20 Chong Yidong <cyd@stupidchicken.com>
4292
4293 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
4294 defined by the font.
4295
42962008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4297
4298 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
4299 (bootstrap-clean): New target that keeps TAGS around.
4300 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
4301 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
4302
43032008-06-20 Jason Rumney <jasonr@gnu.org>
4304
4305 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
4306 Remove obsolete font code.
4307
4308 * w32font.c (font_matches_spec): Use csb bitfield from font signature
4309 to determine language support.
4310
43112008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4312
4313 * sysdep.c (cfsetspeed): New fun extracted from the code.
4314 (cfmakeraw): Move before first use.
4315
43162008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
4317
4318 * sysdep.c (cfmakeraw): Provide fallback implementation.
4319 (serial_configure): Provide fallback implementation of cfsetspeed.
4320
43212008-06-20 Kenichi Handa <handa@m17n.org>
4322
4323 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
4324 the pattern.
4325
4326 * fontset.c (fontset_from_font): Copy font_spec before changing
4327 the elements.
4328
4329 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
4330
43312008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
4332
4333 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
4334 for explicit `font' parameters.
4335
4336 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
4337
43382008-06-19 Kenichi Handa <handa@m17n.org>
4339
4340 * frame.c: Include <ctype.h>.
4341 (x_set_font_backend): Allow spacing characters in the X resource
4342 for FontBackend.
4343
43442008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
4345
4346 * w32fns.c, xfns.c (Qfont_param): New var.
4347 (syms_of_w32fns): Initialize it.
4348 (x_default_font_parameter): Record explicit `font' into
4349 `font-parameter'.
4350
43512008-06-18 Kenichi Handa <handa@m17n.org>
4352
4353 * font.c (font_parse_xlfd): Fix previous change.
4354 (font_parse_fcname): Don't use :fc-unknown-spec.
4355 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
4356 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
4357 (font_add_log): Prepend the driver name to the resulting fonts.
4358
4359 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
4360 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
4361 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
4362
4363 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
4364 (QCembolden): New variables.
4365 (syms_of_xftfont): DEFSYM them.
4366 (xftfont_open): Call XftFontMatch. Don't trust the result of
4367 XftTextExtents8 if the pixel_size is less than 5.
4368
43692008-06-18 Andreas Schwab <schwab@suse.de>
4370
4371 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
4372 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
4373
43742008-06-18 Jason Rumney <jasonr@gnu.org>
4375
4376 * w32font.c (w32font_list, w32font_match): Add logging.
4377
4378 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
4379
43802008-06-17 Chong Yidong <cyd@stupidchicken.com>
4381
4382 * font.c (font_parse_fcname): Store divider characters for
4383 unknown-spec list. For known key symbols, intern using correct
4384 symbol name.
4385
43862008-06-17 Kenichi Handa <handa@m17n.org>
4387
4388 * xfaces.c (realize_default_face): If the frame is not on window
4389 system, set the fontset of face to nil.
4390
43912008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4392
4393 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
4394
43952008-06-16 Juanma Barranquero <lekktu@gmail.com>
4396
4397 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
4398 (build_font_name_from_vector): Delete externs.
4399
4400 * xfaces.c (struct font_name): Don't declare.
4401
44022008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
4403
4404 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
4405
44062008-06-16 Chong Yidong <cyd@stupidchicken.com>
4407
4408 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
4409
44102008-06-16 Juanma Barranquero <lekktu@gmail.com>
4411
4412 * font.c (Ffont_spec): Fix usage in docstring.
4413 (Ffont_face_attributes): Doc fix.
4414
44152008-06-16 Andreas Schwab <schwab@suse.de>
4416
4417 * font.c (Ffont_face_attributes): Fix definition.
4418
44192008-06-16 Jason Rumney <jasonr@gnu.org>
4420
4421 * font.h (font_style_symbolic_from_value): Remove.
4422
4423 * font.c (font_style_symbolic_from_value): Remove.
4424 (font_style_symbolic): Revert to pre 2008-06-13 version.
4425
4426 * w32font.c (w32_to_fc_weight): New function.
4427 (w32font_full_name, logfont_to_fcname): Use it.
4428
44292008-06-16 Kenichi Handa <handa@m17n.org>
4430
4431 * font.c (font_check_object): Delete it.
4432 (font_clear_cache): Check if a font-object is alive.
4433 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
4434 font-object to nil.
4435 (font_close_object): Don't check FONT_CLOSE_OBJECT.
4436 (font_at): Don't call font_check_object.
4437 (Ffont_get): Return a symbol for :weight, :slant, and :width.
4438
44392008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
4440
4441 * puresize.h (BASE_PURESIZE): Increase to 1230000.
4442
44432008-06-16 Chong Yidong <cyd@stupidchicken.com>
4444
4445 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
4446
44472008-06-15 Chong Yidong <cyd@stupidchicken.com>
4448
4449 * font.c (font_parse_fcname): Only one decimal point.
4450 (font_unparse_fcname): Handle data in family and foundry indices
4451 as symbols, not strings.
4452 (font_unparse_gtkname, Ffont_face_attributes): New functions.
4453
4454 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
4455
4456 * font.h (font_unparse_gtkname): Add prototype.
4457
44582008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
4459
4460 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
4461
44622008-06-15 Andreas Schwab <schwab@suse.de>
4463
4464 * font.c (font_update_drivers): Fix crash when no drivers match.
4465
44662008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
4467
4468 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
4469 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
4470
44712008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
4472
4473 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
4474
44752008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4476
4477 * process.c (Fserial_process_configure, Fprocess_send_eof):
4478 Use EQ to compare Lisp_Objects.
4479
44802008-06-13 Jason Rumney <jasonr@gnu.org>
4481
4482 * w32fns.c (Fw32_select_font): Remove old font API function.
4483
4484 * w32font.c (logfont_to_fcname): New function.
4485 (Fx_select_font): New font dialog function compatible with
4486 GTK/fontconfig version.
4487
4488 * font.c (font_style_symbolic_from_value): New function.
4489 (font_style_symbolic): Use it.
4490
4491 * font.h (font_style_symbolic_from_value): Declare new function.
4492
44932008-06-13 Juanma Barranquero <lekktu@gmail.com>
4494
4495 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
4496 <font-width-table>: Fix typos in docstrings.
4497
44982008-06-13 Daniel Engeler <engeler@gmail.com>
4499
4500 These changes add serial port access.
4501 * process.c: Add HAVE_SERIAL.
4502 (Fdelete_process, Fprocess_status, Fset_process_buffer)
4503 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
4504 (list_processes_1, select_wrapper, Fstop_process)
4505 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
4506 (status_notify): Modify to handle serial processes.
4507 [HAVE_SERIAL] (Fserial_process_configure)
4508 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
4509 New functions.
4510 * process.h (struct Lisp_Process): Add `type'.
4511 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
4512 New functions.
4513 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
4514 serial ports.
4515 (serial_open, serial_configure) New functions.
4516 * w32.h: Add FILE_SERIAL.
4517 (struct _child_process): Add ovl_read, ovl_write.
4518
45192008-06-13 Kenichi Handa <handa@m17n.org>
4520
4521 * dispextern.h (enum lface_attribute_index): New member
4522 LFACE_FOUNDRY_INDEX.
4523
4524 * font.c (font_score): Delete arg alternate_families. Check only
4525 weight, slant, width, and size. Ignore the difference of alias
4526 style symbols.
4527 (font_sort_entites): Adjust for the above change. Reflect the
4528 order of font-driver to scores.
4529 (font_list_entities): Don't check alternate_familes here.
4530 (font_clear_prop): Handle foundry.
4531 (font_update_lface): Don't parse "foundry-family" form here.
4532 Handle FONT_FOUNDRY_INDEX.
4533 (font_find_for_lface): Likewise. Handle alternate families here.
4534 If registry is nil, try iso8859-1 and ascii-0.
4535 (font_open_for_lface): Pay attention to size in ENTITY.
4536 (font_open_by_name): Simplify by calling font_load_for_lface.
4537 (free_font_driver_list): Delete it.
4538 (font_update_drivers): Preserve the order of backends.
4539 (syms_of_font): Setting of sort_shift_bits adjusted for the change
4540 of font_score and font_sort_entites.
4541 (font_update_sort_order): Likewise.
4542
4543 * xfaces.c (LFACE_FOUNDRY): New macro.
4544 (check_lface_attrs): Check foundry.
4545 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
4546 (merge_face_vectors): Check foundry.
4547 (merge_face_ref): Likewise.
4548 (Finternal_set_lisp_face_attribute): Likewise.
4549 (x_update_menu_appearance): Likewise.
4550 (Finternal_get_lisp_face_attribute): Likewise.
4551 (lface_hash): Likewise.
4552 (lface_same_font_attributes_p): Likewise.
4553 (x_supports_face_attributes_p): Likewise.
4554 (tty_supports_face_attributes_p): Likewise.
4555 (Finternal_set_alternative_font_family_alist): Intern strings.
4556 (Finternal_set_alternative_font_registry_alist): Downcase strings.
4557 (realize_default_face): Set LFACE_FOUNDRY (lface).
4558
4559 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
4560 font-driver at first.
4561
4562 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
4563
45642008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4565
4566 * lread.c (Fload): Use xfree, not free on saved_doc_string.
4567
45682008-06-12 Jim Meyering <meyering@redhat.com>
4569
4570 Make unexec_free handle NULL the same way free does.
4571 * unexmacosx.c (unexec_free): Ignore a NULL argument.
4572
45732008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
4574
4575 * character.h (CHAR_TO_BYTE_SAFE): New macro.
4576 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
4577 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
4578 (WEAK_ALIAS): Simplify.
4579 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
4580 when searching a unibyte buffer.
4581
45822008-06-12 Chong Yidong <cyd@stupidchicken.com>
4583
4584 * xfns.c (Fx_select_font): Rename from x-font-dialog.
4585
45862008-06-12 Juanma Barranquero <lekktu@gmail.com>
4587
4588 * w32font.c: Include ctype.h.
4589
45902008-06-11 Jason Rumney <jasonr@gnu.org>
4591
4592 * w32font.c (w32font_encode_char): Detect missing glyphs that are
4593 misreported as space.
4594 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
4595 as aliases for registry iso10646-1.
4596
45972008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
4598
4599 * buffer.c (clone_per_buffer_values): Skip `name'.
4600
46012008-06-11 Chong Yidong <cyd@stupidchicken.com>
4602
4603 * font.c (font_parse_fcname): Fix last change; accept decimal
4604 points in font size.
4605
46062008-06-10 Jason Rumney <jasonr@gnu.org>
4607
4608 * w32uniscribe.c (add_opentype_font_name_to_list):
4609 Skip non unicode fonts.
4610
46112008-06-10 Chong Yidong <cyd@stupidchicken.com>
4612
4613 * xfns.c (Fx_font_dialog): New function.
4614
4615 * gtkutil.c (xg_dialog_response_cb): Rename from
4616 xg_file_response_callback.
4617 (pop_down_dialog): Rename from pop_down_file_dialog.
4618 (xg_get_file_name): Callers changed.
4619 (xg_get_font_name): New function.
4620
4621 * gtkutil.h (xg_get_font_name): Insert prototype.
4622
46232008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4624
4625 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
4626 x_underline_minimum_display_offset.
4627 (syms_of_xdisp): Declare it here rather than in xterm.c.
4628 * dispextern.h (underline_minimum_offset): Declare it.
4629 * w32term.c (x_draw_glyph_string): Use it.
4630 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
4631 (syms_of_xterm): Don't declare it any more.
4632 (x_draw_glyph_string): Adjust to the new name.
4633
46342008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
4635
4636 * xterm.c (x_underline_minimum_display_offset): New var.
4637 (x_draw_glyph_string): Use it.
4638 (syms_of_xterm): Declare it.
4639
46402008-06-10 Chong Yidong <cyd@stupidchicken.com>
4641
4642 * font.c (font_parse_fcname): Accept GTK-style font names too.
4643
46442008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
4645
4646 * dired.c (file_name_completion): Don't return t if the match is exact
4647 but with different capitalization.
4648 * minibuf.c (Ftry_completion): Simplify.
4649
4650 * window.c (Vwindow_point_insertion_type): New var.
4651 (set_window_buffer): Use it.
4652 (syms_of_window): Init and export it to Lisp.
4653
46542008-06-10 Kenichi Handa <handa@m17n.org>
4655
4656 * font.h (font_intern_prop): Prototype adjusted.
4657
4658 * font.c (font_intern_prop): New arg force_symbol.
4659 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
4660 Adjust for the change of font_intern_prop.
4661
4662 * ftfont.c (ftfont_pattern_entity):
4663 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
4664 (w32_registry):
4665 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
4666 the change of font_intern_prop.
4667
46682008-06-09 Juanma Barranquero <lekktu@gmail.com>
4669
4670 * w32menu.c (digest_single_submenu): Declare extern.
4671
46722008-06-09 Jason Rumney <jasonr@gnu.org>
4673
4674 * w32term.c (x_make_frame_visible): Use alternate restore flags.
4675
4676 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
4677 (parse_single_submenu): Remove.
4678 (digest_single_submenu): Remove.
4679 (syms_of_w32menu): Don't initialise variables that have moved
4680 to menu.c.
4681 (set_frame_menubar): Sync with version in xmenu.c.
4682 (w32_menu_show): Sync with xmenu_show in xmenu.c.
4683
4684 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
4685 Make static again.
4686
46872008-06-09 Jason Rumney <jasonr@gnu.org>
4688
4689 Changes to w32 files related to the move of common menu code
4690 to menu.c on 2008-06-08 by Chong Yidong.
4691
4692 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
4693 defs to w32gui.h.
4694 (single_keymap_panes, push_menu_item, push_menu_pane):
4695 Make globally visible.
4696
4697 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
4698 (local_free, malloc_widget_value, free_widget_value)
4699 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
4700 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
4701 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
4702 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
4703 (menu_items, menu_items_allocated, menu_items_used)
4704 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
4705 (init_menu_items, finish_menu_items, discard_menu_items)
4706 (grow_menu_items, push_submenu_start, push_submenu_end)
4707 (push_left_right_boundary, push_menu_pane, push_menu_item)
4708 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
4709 (free_menubar_widget_tree_value, parse_single_submenu)
4710 (update_submenu_strings): Remove functions.
4711 (xmalloc_widget_value): Remove and declare extern.
4712
4713 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
4714 (OBJ1): Build it.
4715
4716 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
4717 (local_heap, local_alloc, local_free, malloc_widget_value)
4718 (free_widget_value): Define here.
4719
47202008-06-09 Kenichi Handa <handa@m17n.org>
4721
4722 * font.h (Qascii_0): Extern it.
4723
4724 * font.c (Qascii_0): New variable.
4725 (syms_of_font): DEFSYM it.
4726 (font_open_by_name): If the registry "iso8859-1" fails, try also
4727 "ascii-0".
4728
4729 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
4730
47312008-06-08 Kenichi Handa <handa@m17n.org>
4732
4733 * .gdbinit (xfont): New command.
4734
47352008-06-08 Andreas Schwab <schwab@suse.de>
4736
4737 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
4738 * Makefile.in (menu.o): Update dependencies.
4739
4740 * Makefile.in (obj): Always add menu.o.
4741 * emacs.c (main): Always call syms_of_menu.
4742 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
4743
47442008-06-08 Chong Yidong <cyd@stupidchicken.com>
4745
4746 * Makefile.in: Compile menu.c.
4747
4748 * lisp.h: Declare syms_of_menu.
4749
4750 * emacs.c (main): Call syms_of_menu.
4751
4752 * keyboard.h: Relocate platform-independent menu definitions from
4753 xmenu.c.
4754
4755 * menu.c: New file. Relocate platform-independent menu
4756 definitions from xmenu.c. Suggested by Adrian Robert.
4757
4758 * xmenu.c: Remove platform-independent menu definitions.
4759 (menu_items menu_items_inuse, menu_items_allocated)
4760 (menu_items_used, menu_items_n_panes)
4761 (menu_items_submenu_depth): Move to keyboard.h.
4762 (init_menu_items, finish_menu_items, unuse_menu_items)
4763 (discard_menu_items, restore_menu_items, save_menu_items)
4764 (grow_menu_items, push_submenu_start, push_submenu_end)
4765 (push_left_right_boundary, push_menu_pane, push_menu_item)
4766 (keymap_panes, single_keymap_panes, single_menu_item)
4767 (list_of_panes, list_of_items, find_and_call_menu_selection)
4768 (xmalloc_widget_value, free_menubar_widget_value_tree)
4769 (parse_single_submenu, digest_single_submenu)
4770 (update_submenu_strings): Move to menu.c.
4771
47722008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
4773
4774 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
4775
47762008-06-06 Miles Bader <miles@gnu.org>
4777
4778 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
4779 face, not frame default.
4780
47812008-06-05 Martin Rudalics <rudalics@gmx.at>
4782
4783 * window.c (pop_up_windows, pop_up_frames)
4784 (display_buffer_reuse_frames, Vpop_up_frame_function)
4785 (Vdisplay_buffer_function, Veven_window_heights)
4786 (Vspecial_display_buffer_names, Vspecial_display_regexps)
4787 (Vspecial_display_function, Vsame_window_buffer_names)
4788 (Vsame_window_regexps, split_height_threshold)
4789 (Vsplit_window_preferred_function): Move those vars to window.el.
4790 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
4791 (Fdisplay_buffer): Move those functions to window.el.
4792 (syms_of_window): Remove corresponding declarations.
4793 (display_buffer): New function.
4794 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
4795 * dispnew.c (Flast_nonminibuf_frame): New function.
4796 * buffer.c (Fpop_to_buffer): Move to window.el.
4797
47982008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4799
4800 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
4801
48022008-06-05 Kenichi Handa <handa@m17n.org>
4803
4804 * coding.c (detect_coding): Fix previous change.
4805 (detect_coding_system): Likewise.
4806
48072008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4808
4809 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
4810
4811 * keymap.c (Vminibuffer_local_filename_must_match_map):
4812 Rename from Vminibuffer_local_must_match_filename_map.
4813 (syms_of_keymap):
4814 * minibuf.c (Fcompleting_read): Adjust accordingly.
4815 * commands.h: Rename declaration as well.
4816
48172008-06-05 Kenichi Handa <handa@m17n.org>
4818
4819 * font.c (Ffont_spec): Don't use font_parse_family_registry for
4820 family name.
4821 (Ffont_put): Likewise.
4822
4823 * fontset.c (fontset_find_font): Call font_open_for_lface with the
4824 current font-spec.
4825
4826 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
4827 is unspecified.
4828
4829 * xfaces.c (realize_x_face): If the font-related face attributes
4830 are the same as those of default face, realize a new fontset from
4831 default->fontset.
4832 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
4833
48342008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
4835
4836 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
4837 (move_it_in_display_line): New wrapper.
4838
4839 * window.c (window_scroll_pixel_based_preserve_x)
4840 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
4841 (window_scroll_pixel_based, window_scroll_line_based):
4842 Use them to preserve column positions.
4843 (syms_of_window): Initialize them.
4844
4845 * indent.c (Fvertical_motion): Extend first arg to allow passing an
4846 (HPOS . VPOS) pair.
4847
4848 * dispextern.h (move_it_in_display_line): Declare.
4849
48502008-06-05 Juanma Barranquero <lekktu@gmail.com>
4851
4852 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
4853 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
4854 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
4855
48562008-06-04 Juanma Barranquero <lekktu@gmail.com>
4857
4858 * window.c (Fset_window_parameter): Doc fix.
4859 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
4860
48612008-06-04 Joakim Verona <joakim@verona.se>
4862
4863 * window.h (struct window): Add new member window_parameters.
4864
4865 * window.c (Fwindow_parameters, Fwindow_parameter)
4866 (Fset_window_parameter): New defuns.
4867 (syms_of_window): Defsubr the new defuns.
4868 (make_window): Initialize window_parameters to nil.
4869
48702008-06-04 John Paul Wallington <jpw@pobox.com>
4871
4872 * eval.c (Fdefmacro): Doc fix.
4873
48742008-06-04 Kenichi Handa <handa@m17n.org>
4875
4876 * coding.c (detect_coding): Fix handling of coding->head_ascii.
4877 Be sure to call setup_coding_system when we find a proper coding system.
4878 (detect_coding_system): Fix handling of coding->head_ascii.
4879
48802008-06-03 Andreas Schwab <schwab@suse.de>
4881
4882 * font.c (font_prop_validate_spacing): Fix last change.
4883
48842008-06-03 Kenichi Handa <handa@m17n.org>
4885
4886 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
4887 (font_parse_fcname): Fix handling of unknown key.
4888
4889 * xfont.c (xfont_list): Try an alias.
4890
4891 * charset.c (char_charset): Return NULL if the arg charset_list is
4892 specified and C doesn't belong to any of them.
4893
48942008-06-02 Chip Coldwell <coldwell@redhat.com>
4895
4896 * font.c (font_pixel_size): Don't take cdr of an integer.
4897
48982008-06-02 Jim Meyering <meyering@redhat.com>
4899
4900 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
4901 * alloc.c (xfree): Return right away for a NULL arg.
4902 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
4903 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
4904 * mac.c (create_apple_event_from_event_ref): Likewise.
4905 (create_apple_event_from_drag_ref, cfstring_create_normalized):
4906 Likewise.
4907 * doprnt.c (doprnt1): Likewise.
4908 * frame.c (frame): Likewise.
4909 * keyboard.c (wipe_kboard): Likewise.
4910 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
4911 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
4912 * term.c (tty_default_color_capabilities, maybe_fatal)
4913 (delete_tty): Likewise.
4914 * w16select.c (string): Likewise.
4915 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
4916 * w32bdf.c (w32_free_bdf_font): Likewise.
4917 * w32fns.c (w32_unload_font): Likewise.
4918 * w32font.c (w32font_close): Likewise.
4919 * window.c (size_window): Likewise.
4920 * xselect.c (receive_incremental_selection): Likewise.
4921 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
4922 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
4923 * w32.c (stat): Likewise.
4924
4925 Remove useless if-before-free tests.
4926 * editfns.c (Fset_time_zone_rule): Likewise.
4927 * lread.c (nosuffix): Likewise.
4928 * ralloc.c (get_bloc): Likewise.
4929 * regex.c (reg_free): Likewise.
4930 * xftfont.c (xftfont_open, xftfont_close): Likewise.
4931 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
4932 * xsmfns.c (smc_save_yourself_CB): Likewise.
4933
49342008-06-02 Kenichi Handa <handa@m17n.org>
4935
4936 * font.c (font_find_for_lface): Handle float font size.
4937 (font_open_for_lface): Likewise.
4938
4939 * xfaces.c (x_supports_face_attributes_p): Check face->font before
4940 comparing the properties.
4941
49422008-06-01 Jason Rumney <jasonr@gnu.org>
4943
4944 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
4945 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
4946 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
4947 Don't add empty script list.
4948 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
4949
49502008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
4951
4952 * Makefile.in (dot, dotdot): Remove, update users.
4953 ".." has been used elsewhere in the file for a long time.
4954 (LIBXT_STATIC): Remove conditional based on unused variable.
4955
49562008-06-01 Miles Bader <miles@gnu.org>
4957
4958 * xfaces.c (Vface_remapping_alist): New variable.
4959 (syms_of_xfaces): Initialize it.
4960 (enum named_merge_point_kind): New type.
4961 (struct named_merge_point): Add `named_merge_point_kind' field.
4962 (push_named_merge_point): Make cycle detection respect different
4963 named-merge-point kinds.
4964 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
4965 Remove face-name alias resolution.
4966 (lface_from_face_name): New definition using
4967 `lface_from_face_name_no_resolve'.
4968 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
4969 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
4970 (get_lface_attributes): New definition that layers face-remapping on
4971 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
4972 (lookup_basic_face): New function.
4973 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
4974 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
4975 `get_lface_attributes'.
4976 (face_at_buffer_position): Use `lookup_basic_face' to lookup
4977 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
4978 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
4979
4980 * xdisp.c (init_iterator): Pass base_face_id through
4981 `lookup_basic_face' when we actually use it as a face-id.
4982 (handle_single_display_prop): Use `lookup_basic_face' to lookup
4983 DEFAULT_FACE_ID.
4984
4985 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
4986 lookup the initial face-id.
4987
4988 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
4989
49902008-06-01 Juanma Barranquero <lekktu@gmail.com>
4991
4992 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
4993 (Fremove_text_properties): Fix typos in docstrings.
4994
49952008-05-31 Kenichi Handa <handa@m17n.org>
4996
4997 * font.c (font_list_entities): Fix the car part of data to be
4998 stored in the cache.
4999
5000 * ftfont.c (ftfont_font_format): Don't use strcasestr.
5001
50022008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5003
5004 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
5005 Add a `test' argument so another predicate than `equal' can be used.
5006 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
5007 (map_char_table): Remove unused vars `c' and `i'.
5008 * lisp.h (Foptimize_char_table): Adjust declaration.
5009 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
5010
50112008-05-30 Kenichi Handa <handa@m17n.org>
5012
5013 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
5014 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
5015 defined.
5016
50172008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
5018
5019 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
5020 (Fmake_variable_frame_local): Disallow mixing buffer-local and
5021 frame-local settings for the same variable.
5022
50232008-05-30 Kenichi Handa <handa@m17n.org>
5024
5025 * fontset.c (Ffont_info): Move to font.c.
5026 (syms_of_fontset): Delete defsubr of Sfont_info.
5027
5028 * font.c (font_style_to_value, font_score): Delete casting of the
5029 args to xstcasecmp.
5030 (register_font_driver): Increment num_font_drivers only when
5031 registering the driver globally.
5032 (Ffont_info): Move from fontset.c. Handle a font object too.
5033 (syms_of_font): Defsubr Sfont_info.
5034
50352008-05-29 Kenichi Handa <handa@m17n.org>
5036
5037 * coding.h (enum define_coding_utf8_arg_index): New enum.
5038 (enum coding_attr_index): Change coding_attr_utf_16_bom to
5039 coding_attr_utf_bom.
5040 (enum utf_bom_type): Rename from utf_16_bom_type.
5041 (struct utf_16_spec): Adjust for the above change.
5042 (struct coding_system): Add utf_8_bom in `spec' union.
5043
5044 * coding.c (CODING_UTF_8_BOM): New macro.
5045 (enum coding_category): Delete coding_category_utf_8, add
5046 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
5047 coding_category_utf_8_sig.
5048 (CATEGORY_MASK_UTF_8): Delete it.
5049 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
5050 (CATEGORY_MASK_UTF_8_SIG): New macros.
5051 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
5052 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
5053 CATEGORY_MASK_UTF_8_SIG.
5054 (CATEGORY_MASK_UTF_8): New macro.
5055 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
5056 (detect_coding_utf_8): Check BOM.
5057 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
5058 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
5059 (encode_coding_utf_16): Likewise.
5060 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
5061 (detect_coding, detect_coding_system): Handle utf-8-auto.
5062 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
5063 (syms_of_coding): Fix setting up of Vcoding_category_table.
5064
50652008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
5066
5067 * process.c (Faccept_process_output): If `millisec' is non-nil,
5068 `seconds' default to 0.
5069 (wait_reading_process_output): Also return non-nil if we read output
5070 from a non-running process.
5071
50722008-05-29 Jason Rumney <jasonr@gnu.org>
5073
5074 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
5075 `raster' specified.
5076 (add_font_entity_to_list): Allow non-opentype truetype fonts back
5077 in the uniscribe backend, but disallow any font that has no
5078 unicode subrange support.
5079
50802008-05-29 Juanma Barranquero <lekktu@gmail.com>
5081
5082 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
5083 Fix typos in docstrings.
5084
50852008-05-29 Kenichi Handa <handa@m17n.org>
5086
5087 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
5088 (Fx_family_fonts): Set frame correctly.
5089
50902008-05-28 Jason Rumney <jasonr@gnu.org>
5091
5092 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
5093
50942008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
5095
5096 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
5097 calling build_annotations.
5098
50992008-05-28 Juanma Barranquero <lekktu@gmail.com>
5100
5101 * coding.c (Fdecode_coding_region, Fencode_coding_region)
5102 (Fencode_coding_string):
5103 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
5104 <latin-extra-code-table>: Fix typos in docstrings.
5105 (syms_of_coding) <coding-system-alist>: Doc fix.
5106 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
5107
51082008-05-28 Kenichi Handa <handa@m17n.org>
5109
5110 * fontset.c (Ffont_info): Don't call font_close_object.
5111
5112 * font.c (font_parse_family_registry): Use Ffont_put to validate
5113 foundry and family.
5114 (font_delete_unmatched): Don't check spacing.
5115 (font_list_entities): Add spacing to the spec to list fonts.
5116
5117 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
5118 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
5119
5120 * coding.c (encode_coding_raw_text): Fix previous change.
5121 (encode_coding_object): When the dst_object is a buffer and is
5122 different from src_object, move gap to PT.
5123
51242008-05-27 Chong Yidong <cyd@stupidchicken.com>
5125
5126 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
5127
51282008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5129
5130 * coding.c (encode_coding_raw_text): Set coding->produced_char for
5131 all branches. Compute it differently.
5132
5133 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
5134
51352008-05-27 Juanma Barranquero <lekktu@gmail.com>
5136
5137 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
5138 into "else if () ... else ...".
5139
51402008-05-27 Jason Rumney <jasonr@gnu.org>
5141
5142 * w32font.c (w32font_open_internal): Determine if glyph indices
5143 are likely to work here.
5144
51452008-05-27 Chong Yidong <cyd@stupidchicken.com>
5146
5147 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
5148 draw overlap glyphs with appropriate highlighting.
5149
51502008-05-27 Kenichi Handa <handa@m17n.org>
5151
5152 * xfont.c (xfont_open): Fix calculation of font->average_width.
5153
51542008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
5155
5156 * casefiddle.c (casify_object): Try to guess better whether the
5157 argument is a byte or a char.
5158
51592008-05-26 Andreas Schwab <schwab@suse.de>
5160
5161 * xselect.c (x_reply_selection_request): Properly handle format == 32.
5162 Always send multiples of format size.
5163
5164 * xterm.c (x_set_frame_alpha): Fix type mismatch.
5165
51662008-05-26 Jason Rumney <jasonr@gnu.org>
5167
5168 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
5169 (compute_metrics): Don't set failure if we just cleared the cache.
5170 (w32_weight_table): Remove unused variable.
5171 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
5172 backwards compatibility.
5173
51742008-05-25 Kenichi Handa <handa@m17n.org>
5175
5176 * w32term.c (x_draw_glyph_string):
5177 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
5178
5179 * xfaces.c: Delete unused function prototypes.
5180 (xstrlwr, font_frame): Delete them.
5181 (clear_face_cache): Delete unused variable.
5182
5183 * xftfont.c (xftfont_open): Delete unused variable.
5184 If underline_thickness is not 1, adjust underline_position.
5185
5186 * ftxfont.c (ftxfont_open): Delete unused variable.
5187
5188 * fontset.c (face_for_char): Optimize for the case of no charset
5189 property.
5190
5191 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
5192 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
5193 (otf_open, font_otf_capability, generate_otf_features)
5194 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
5195 Comment out by surrounding "#if 0" and "#endif" for the moment.
5196 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
5197 (syms_of_font): Codes for accessing above commented out.
5198
51992008-05-24 Eli Zaretskii <eliz@gnu.org>
5200
5201 * w32proc.c: Include dispextern.h.
5202
5203 * w32.c: Include dispextern.h.
5204
52052008-05-23 Juanma Barranquero <lekktu@gmail.com>
5206
5207 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
5208 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
5209 Fix typos in docstrings.
5210
52112008-05-23 Jason Rumney <jasonr@gnu.org>
5212
5213 * xsmfns.c: Remove includes that are already included by config.h.
5214
52152008-05-23 Kenichi Handa <handa@m17n.org>
5216
5217 * charset.c (Qemacs, charset_emacs): New variables.
5218 (char_charset): Fix for non-Unicode characters.
5219 (syms_of_charset): Define charset_emacs.
5220
5221 * w32term.c (x_draw_glyph_string): Be sure to update
5222 s->underline_thickness and s->underline_position. Be sure to draw
5223 underline within the current line area.
5224
5225 * xterm.c (x_draw_glyph_string): Be sure to update
5226 s->underline_thickness and s->underline_position. Be sure to draw
5227 underline within the current line area.
5228
5229 * fontset.c: Delete unused variables and add casting for char *
5230 throughout the file.
5231 (fontset_font): Try the fallback fonts of the current fontset
5232 before consulting the default fontset.
5233
5234 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
5235
5236 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
5237
52382008-05-22 Jason Rumney <jasonr@gnu.org>
5239
5240 * font.c: Don't include strings.h.
5241
5242 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
5243
5244 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
5245 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
5246 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
5247 to call xstrcasecmp.
5248
5249 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
5250
5251 * fontset.c (fs_query_fontset): Use xstrcasecmp.
5252
5253 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
5254
5255 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
5256
52572008-05-22 Kenichi Handa <handa@m17n.org>
5258
5259 * puresize.h (BASE_PURESIZE): Increase to 1220000.
5260
5261 * font.c (font_prop_validate_style): Adjust for the format
5262 change of font_style_table.
5263
5264 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
5265 two args.
5266
5267 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
5268 two args.
5269
52702008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
5271
5272 * minibuf.c (keys_of_minibuf): Delete.
5273 * lisp.h (keys_of_minibuf): Delete.
5274 * emacs.c (main): Don't call keys_of_minibuf.
5275
52762008-05-22 Kenichi Handa <handa@m17n.org>
5277
5278 * ftfont.c (ftfont_resolve_generic_family): Rename from
5279 ftfont_list_generic_family. Return a single family for each
5280 generic family.
5281 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
5282 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
5283 Call font_add_log.
5284 (ftfont_match): Call font_add_log.
5285
5286 * font.h (Ffont_xlfd_name): EXFUN adjusted.
5287 (FONT_DEBUG): Define it.
5288 (font_add_log): Extern it.
5289 (font_assert): Rename from xassert.
5290
5291 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
5292 (xfont_list_family): Call font_add_log.
5293 (xfont_match): Likewise.
5294 (memq_no_quit): Delete.
5295
5296 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
5297 call of Ffont_xlfd_name.
5298
5299 * xfaces.c (struct table_entry, slant_table, weight_table)
5300 (swidth_table): Move to font.c.
5301
5302 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
5303 xassert are changed to font_assert. Delete many unused variables.
5304 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
5305 New variables.
5306 (struct table_entry): Move from xfaces.c and modified.
5307 (weight_table, slant_table, width_table): Move from xfaces.c and
5308 contents adjusted for the change of struct table_entry.
5309 (font_style_to_value, font_style_symbolic): Adjust for the
5310 format change of font_style_table.
5311 (font_parse_family_registry): Don't overwrite existing foundry and
5312 family of font_spec.
5313 (font_score): Fix calculation of diff for sizes.
5314 (font_sort_entites): Call font_add_log.
5315 (font_delete_unmatched): Return a newly created list.
5316 (font_list_entities): Fix previous change. Call font_add_log.
5317 (font_matching_entity, font_open_entity, font_close_entity):
5318 Call font_add_log.
5319 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
5320 (Finternal_set_font_style_table): Delete.
5321 (BUILD_STYLE_TABLE): New macro.
5322 (build_style_table): New function.
5323 (Vfont_log, font_log_env_checked): New variables.
5324 (font_add_log): New function.
5325 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
5326 Declare Lisp variables "font-weight-table", "font-slant-table",
5327 "font-width-table", and "font-log". Initialize font_style_table.
5328
53292008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
5330
5331 * xterm.c (x_set_frame_alpha): Move declarations before statements.
5332
53332008-05-21 Seiji Zenitani <zenitani@mac.com>
5334 Ryo Yoshitake <ryo@shiftmode.net>
5335
5336 * frame.c (Qalpha): Add a new frame parameter `alpha'.
5337 (Vframe_alpha_lower_limit): New variable.
5338 (x_set_alpha): New function.
5339
5340 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
5341
5342 * xfns.c (x-create-frame, Qalpha):
5343 Initialize the frame parameter `alpha'.
5344 * xterm.c (OPAQUE, OPACITY): New.
5345 (x_set_frame_alpha): New function.
5346 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
5347
5348 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
5349 * w32fns.c (w32_frame_parm_handlers): Likewise.
5350
53512008-05-20 Jason Rumney <jasonr@gnu.org>
5352
5353 * w32font.c (add_font_entity_to_list): Don't add non-opentype
5354 truetype fonts to opentype list.
5355
53562008-05-20 Juanma Barranquero <lekktu@gmail.com>
5357
5358 * fontset.c (Ffontset_info): Doc fix.
5359 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
5360 <ignore-relative-composition>: Fix typos in docstrings.
5361
5362 * font.c (syms-of-font) <font-encoding-alist>:
5363 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
5364 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
5365 (Ffont_otf_alternates): Doc fixes.
5366
53672008-05-20 Kenichi Handa <handa@m17n.org>
5368
5369 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
5370 font.h through out the file.
5371 (FONT_DRIVERS): Rename from FONTOBJ.
5372 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
5373 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
5374
5375 * emacs.c (main): Call syms_of_font unconditionally.
5376
5377 * font.h (find_font_encoding): Extern it.
5378
5379 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
5380 fontset.c.
5381 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
5382 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
5383 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
5384 only when HAVE_WINDOW_SYSTEM is defined.
5385 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
5386 when HAVE_WINDOW_SYSTEM is defined.
5387
5388 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
5389 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
5390
5391 * xfaces.c: Include font.h unconditionally.
5392 (merge_face_ref, merge_face_vectors)
5393 (Finternal_set_lisp_face_attribute): Cancel the previous change.
5394
53952008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
5396
5397 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
5398 indirect_variable.
5399 * eval.c (lisp_indirect_variable): New fun.
5400 (Fuser_variable_p): Use it.
5401
54022008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5403
5404 * lisp.h (indirect_variable):
5405 * data.c (indirect_variable, let_shadows_buffer_binding_p):
5406 Use Lisp_Symbol pointers rather than Lisp_Object.
5407 Adjust callers.
5408 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
5409 To this end, change calling-convention.
5410
5411 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
5412 if some non-hidden buffers are selected by string&pred.
5413
54142008-05-19 Chong Yidong <cyd@stupidchicken.com>
5415
5416 * process.c (wait_reading_process_output): Always check status
5417 when in batch mode.
5418
54192008-05-19 Kenichi Handa <handa@m17n.org>
5420
5421 * font.c (font_list_entities): Fix handling of cache.
5422 (font_matching_entity): Likewise.
5423
5424 * ftfont.c (cs_iso8859_1): Delete.
5425 (ft_face_cache): New variable.
5426 (struct ftfont_info): New member fc_charset_idx.
5427 (ftfont_build_basic_charsets): Delete.
5428 (fc_charset_table): New variable.
5429 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
5430 . FC_CHARSET_IDX) as :font-entity property in the font entity.
5431 Callers changed.
5432 (ftfont_lookup_cache, ftfont_get_charset): New functions.
5433 (ftfont_spec_pattern): New argument fc_charset_idx.
5434 Check registry more rigidly. Change callers.
5435 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
5436 change of :font-entity property of the font.
5437
5438 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
5439 property of the font.
5440
54412008-05-18 Juanma Barranquero <lekktu@gmail.com>
5442
5443 * coding.c (Fcoding_system_p): Rename argument to match docstring.
5444 (Funencodable_char_position, Fcheck_coding_systems_region)
5445 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
5446 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
5447 (Ffind_operation_coding_system, Fset_coding_system_priority)
5448 (Fcoding_system_eol_type): Doc fixes.
5449
54502008-05-17 Glenn Morris <rgm@gnu.org>
5451
5452 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
5453
54542008-05-16 Eli Zaretskii <eliz@gnu.org>
5455
5456 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
5457 and st_gid.
5458
5459 * frame.c (Fdelete_frame): Don't call font_update_drivers if
5460 HAVE_WINDOW_SYSTEM is not defined.
5461
5462 * xfaces.c (merge_face_ref, merge_face_vectors)
5463 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
5464 HAVE_WINDOW_SYSTEM is defined.
5465 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
5466
54672008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
5468
5469 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
5470
54712008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5472
5473 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
5474
54752008-05-15 Kenichi Handa <handa@m17n.org>
5476
5477 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
5478 preference.
5479
54802008-05-15 Glenn Morris <rgm@gnu.org>
5481
5482 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
5483
54842008-05-15 Chong Yidong <cyd@stupidchicken.com>
5485
5486 * fns.c (init_fns): Don't initialize weak_hash_tables here.
5487 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
5488
5489 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
5490
54912008-05-15 Kenichi Handa <handa@m17n.org>
5492
5493 * ftfont.c (ftfont_list): Downcase family name to check generic
5494 families.
5495
5496 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
5497 font-spec for QCfont value.
5498
5499 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
5500 buffer. Check the return value of it.
5501
55022008-05-14 Jason Rumney <jasonr@gnu.org>
5503
5504 * w32term.c (w32_get_glyph_overhangs): Remove.
5505 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
5506
55072008-05-14 Kenichi Handa <handa@m17n.org>
5508
5509 * font.c (font_prop_validate): Make nil a valid value.
5510 (font_clear_cache): Check if the cached vector of entities is nil
5511 or not.
5512
55132008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5514
5515 * emacs.c (main_thread): Conditionalize on
5516 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5517 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
5518
5519 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
5520 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
5521 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
5522
55232008-05-14 Kenichi Handa <handa@m17n.org>
5524
5525 * coding.c (detect_coding_iso_2022): Ignore a coding category that
5526 has no corresponding coding system.
5527
55282008-05-14 Jason Rumney <jasonr@gnu.org>
5529
5530 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
5531
5532 * w32font.h (w32font_open_internal): Update declaration.
5533
5534 * w32font.c (w32font_open_internal): Change last argument from
5535 w32font_info struct to font object. Fill in font object from
5536 font_entity. Get Outline metrics if possible. Use them to
5537 calculate underline position and thickness. Use xlfd name as name
5538 property. Don't set codepage.
5539 (w32font_open): Pass font_object to w32font_open_internal. Don't
5540 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
5541 (w32font_draw): Use s->font.
5542 (clear_cached_metrics): Don't clear non-existent blocks.
5543
5544 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
5545 font was not found.
5546 (x_draw_glyph_string): Use underline position and thickness from font.
5547
5548 * w32uniscribe.c (uniscribe_open): Pass font_object to
5549 w32font_open_internal.
5550
55512008-05-14 Kenichi Handa <handa@m17n.org>
5552
5553 These changes are to delete all legacy font-handling codes, and
5554 make Emacs use only font-backends.
5555
5556 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
5557 (frame.o, image.o, print.o): Depend on $(FONTSRC).
5558
5559 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
5560
5561 * charset.h (Vcharset_non_preferred_head)
5562 (Vcurrent_iso639_language): Extern them.
5563
5564 * charset.c (Vcharset_non_preferred_head): New variable.
5565 (Vcurrent_iso639_language): New variable.
5566 (syms_of_charset): Declare it as a Lisp variable.
5567 (char_charset): Don't check non preferred charsets. As a last
5568 resort, return charset_unicode.
5569 (Fset_charset_priority): Update Vcharset_non_preferred_head.
5570
5571 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
5572 conditionals. Don't check enable_font_backend. Delete all codes
5573 used only when USE_FONT_BACKEND is not defined.
5574
5575 * dispextern.h (struct glyph_string): Change type of `font' to
5576 `struct font *'.
5577 (struct glyph_string): New member underline_position and
5578 underline_thickness.
5579 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
5580 (struct face): Change type of `font' to `struct font *'. Remove
5581 members `font_name', `font_info_id'.
5582 (per_char_metric, encode_char): Delete externs.
5583 (calc_pixel_width_or_height): Adjust the prototype.
5584
5585 * emacs.c (enable_font_backend): Delete extern.
5586 (main): Don't set enable_font_backend. Don't check the command
5587 line argument "-disable-font-backend".
5588
5589 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
5590 (enum font_property_index): New members FONT_DPI_INDEX,
5591 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
5592 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
5593 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
5594 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
5595 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
5596 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
5597 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
5598 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
5599 (struct font_spec, struct font_entity): New structs.
5600 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
5601 (struct font): Many members from old "struct font_info" moved to
5602 here. Members font and entity deleted.
5603 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
5604 the new font-related objects.
5605 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
5606 (CHECK_FONT_GET_OBJECT): Likewise.
5607 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
5608 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
5609 (struct font_driver): New members case_sensitive anc check. Type
5610 of the member list and open changed.
5611 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
5612 (font_symbolic_width, font_find_object, font_get_spec)
5613 (font_set_lface_from_name): Delete extern.
5614 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
5615
5616 * font.c: Include <strings.h>.
5617 (enable_font_backend): Delete it.
5618 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
5619 (CHECK_VALIDATE_FONT_SPEC): Delete it.
5620 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
5621 (null_string): Delete it.
5622 (null_vector): Make it static.
5623 (font_family_alist): Delete it.
5624 (Qnormal): Extern it.
5625 (QCextra, QClanguage): Delete it.
5626 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
5627 (font_make_spec, font_make_entity, font_make_object)
5628 (font_intern_prop): Renamed from intern_downcase. Don't downcase
5629 the string. Callers changed.
5630 (font_pixel_size): Adjusted for the format change of font-related
5631 objects.
5632 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
5633 (font_style_to_value, font_style_symbolic): New function.
5634 (build_font_family_alist): Delete it.
5635 (font_registry_charsets): Use Fassoc_string instead of
5636 assq_no_quit.
5637 (font_prop_validate_symbol): Don't return null_string.
5638 (font_prop_validate_style): Adjusted for the change of
5639 style-related values in a font vector.
5640 (font_property_table): Delete entries for QClanguage and
5641 QCantialias, add entries for QCavgwidth.
5642 (get_font_prop_index): Delete the 2nd argument FROM.
5643 (font_prop_validate): Arguments changed.
5644 (font_put_extra): Adjusted for the change of font-related objects.
5645 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
5646 (font_parse_fcname, font_unparse_fcname)
5647 (font_prepare_composition): Likewise.
5648 (font_parse_family_registry): Renamed from font_merge_old_spec.
5649 (otf_open): Delete the 1st arg entity.
5650 (font_otf_capability): Adjusted for the above change.
5651 (font_score): New arg alternate_families. Adjusted for the change
5652 of font-related objects.
5653 (font_sort_entites): New arg best_only.
5654 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
5655 Delete them.
5656 (font_match_p): Check alternate families.
5657 (font_find_object): Delete it.
5658 (font_check_object): New function.
5659 (font_clear_cache): Adjusted for the change of font-related objects.
5660 (font_delete_unmatched): New arg.
5661 (font_list_entities): Call font_driver->list with a spec that
5662 doesn't specify style-related properties.
5663 (font_matching_entity): Arguments changed. Caller changed.
5664 (font_open_entity): Adjusted for the change of font-related objects.
5665 (font_close_object, font_has_char, font_encode_char)
5666 (font_get_name, font_get_spec): Likewise.
5667 (font_spec_from_name, font_clear_prop, font_update_lface):
5668 New functions.
5669 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
5670 (font_prepare_for_face, font_done_for_face, font_open_by_name)
5671 (font_at): Adjusted for the change of font-related objects.
5672 (font_range): New function.
5673 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
5674 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
5675 (Fcopy_font_spec, Fmerge_font_spec): New function.
5676 (Ffont_family_list): Renamed from list-families.
5677 (Finternal_set_font_style_table): Arguments changed.
5678 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
5679 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
5680 change of font-related objects.
5681 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
5682
5683 * fontset.h (struct font_info): Delete it. Most members go to
5684 struct font.
5685 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
5686 (enum FONT_SPEC_INDEX): Delete it.
5687 (font_info, list_fonts_func, load_font_func, query_font_func)
5688 (set_frame_fontset_func, find_ccl_program_func)
5689 (get_font_repertory_func, new_fontset_from_font_name): Delete
5690 externs.
5691 (fontset_from_font_name): Extern it.
5692 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
5693 (FONT_INFO_FROM_FACE): Deleted.
5694 (face_for_font): Adjust prototype.
5695
5696 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
5697 conditionals. Don't check enable_font_backend. Delete all codes
5698 used only when USE_FONT_BACKEND is not defined.
5699 (get_font_info_func, list_font_func, load_font_func)
5700 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
5701 (get_font_repertory_func): Delete them.
5702 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
5703 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
5704 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
5705 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
5706 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
5707 (fontset_compare_rfontdef): New function.
5708 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
5709 rfont-defs by qsort. Adjusted for the change of font-group vector.
5710 (load_font_get_repertory): Deleted.
5711 (fontset_find_font): Use new macros to ref/set elements of
5712 font-def and rfont-def.
5713 (fontset_font): Fix the timing of remembering that no font for C.
5714 (free_face_fontset): Do nothing if the face has no fontset.
5715 (face_suitable_for_char_p): Use new macros to ref/set elements of
5716 rfont-def.
5717 (face_for_char): Likewise. Call face_for_char with font_object.
5718 (fs_load_font): Delete. Delete #pragma surrounding it.
5719 (fs_query_fontset): Use strcasecmp instead of strcmp.
5720 (generate_ascii_font_name): Adjusted for the format change of
5721 font-spec.
5722 (Fset_fontset_font): Likewise. Use new macros to set elements of
5723 font-def.
5724 (Fnew_fontset): Use font_unparse_xlfd to generate
5725 FONTSET_ASCII (fontset).
5726 (new_fontset_from_font_name): Deleted.
5727 (fontset_from_font): Renamed from new_fontset_from_font. Check if
5728 a fontset is already created for the font. FIx updating of
5729 Vfontset_alias_alist.
5730 (fontset_ascii_font): Deleted.
5731 (Ffont_info): Adjusted for the format change of font-spec.
5732 (Finternal_char_font): Likewise.
5733 (Ffontset_info): Likewise.
5734 (syms_of_fontset): Don't check load_font_func.
5735
5736 * fns.c (internal_equal): Handle PREV_FONT.
5737
5738 * frame.h: Delete USE_FONT_BACKEND conditional.
5739
5740 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
5741 conditionals. Don't check enable_font_backend. Delete all codes
5742 used only when USE_FONT_BACKEND is not defined.
5743 (x_set_font): Call x_new_font, not x_new_fontset2.
5744 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
5745 already set for the frame.
5746
5747 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
5748 a font-entity by font_make_entity. Use font_intern_prop instead
5749 of intern_downcase. Use FONT_SET_STYLE to set a style-related
5750 font property. If a font is scalable, set avgwidth property to 0.
5751 Set font-entity property by font_put_extra.
5752 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
5753 (ffont_driver): Adjusted for the change of struct font_driver.
5754 (ftfont_spec_pattern): New function.
5755 (ftfont_list): Return a list, not vector.
5756 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
5757 (ftfont_list_family): Don't downcase names.
5758 (ftfont_free_entity): Deleted.
5759 (ftfont_open): Return a font-object. Adjusted for the change of
5760 struct font. Get underline_thickness and underline_position from
5761 font property. Don't update dpyinfo->smallest_font_height and
5762 dpyinfo->smallest_char_width.
5763 (ftfont_close): Don't free `struct font'.
5764 (ftfont_has_char): Adjusted for the format change of font-entity.
5765 (ftfont_encode_char, ftfont_text_extents): Likewise.
5766
5767 * ftxfont.c (ftxfont_list): Return a list, not vector.
5768 (ftxfont_open): Return a font-object. Adjusted for the change of
5769 struct font. Get underline_thickness and underline_position from
5770 font property. Don't update dpyinfo->smallest_font_height and
5771 dpyinfo->smallest_char_width.
5772 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
5773 (ftxfont_draw): Adjusted for the change of struct font.
5774
5775 * image.c (image_ascent): Don't include "charset.h". Include
5776 "character.h" and "font.h".
5777
5778 * lisp.h (enum pvec_type): New member PREV_FONT.
5779 (Fassoc_string): EXFUN it.
5780
5781 * print.c: Include font.h.
5782 (print_object): Handle font-related objects.
5783
5784 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
5785 conditionals. Don't check enable_font_backend. Delete all codes
5786 used only when USE_FONT_BACKEND is not defined.
5787 (handle_auto_composed_prop): Do nothing if it->f is not on a
5788 window system. Check how many following characters can be
5789 displayed by the same font.
5790 (calc_pixel_width_or_height): Type of the 4th arg is changed to
5791 'struct font *'.
5792 (get_char_face_and_encoding): Assign the whole encoding task to
5793 the `encode-char' method of a font driver.
5794 (fill_composite_glyph_string): Adjusted for the change of `struct
5795 face' and `struct glyph_string'.
5796 (fill_glyph_string): Likewise.
5797 (get_per_char_metric): Arguments changed.
5798 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
5799 and `struct glyph_string'.
5800 (produce_stretch_glyph, calc_line_height_property)
5801 (x_produce_glyphs): Likewise.
5802
5803 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
5804 conditionals. Don't check enable_font_backend. Delete all codes
5805 used only when USE_FONT_BACKEND is not defined. Use
5806 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
5807 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
5808 (Qp): Extern them.
5809 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
5810 Deleted.
5811 (struct font_name): Deleted.
5812 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
5813 (compare_fonts_by_sort_order): New function.
5814 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
5815 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
5816 Deleted.
5817 (Fx_family_fonts): Use font_list_entities, and sort fonts by
5818 compare_fonts_by_sort_order.
5819 (Fx_font_family_list): Call Ffont_family_list.
5820 (face_numeric_value, face_numeric_weight, face_numeric_slant)
5821 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
5822 (face_symbolic_slant, face_symbolic_swidth)
5823 (split_font_name_into_vector, build_font_name_from_vector)
5824 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
5825 (font_rescale_ratio, split_font_name, build_font_name)
5826 (free_font_names, sort_fonts, x_face_list_fonts)
5827 (face_font_available_p, sorted_font_list, cmp_font_names)
5828 (font_list_1, concat_font_list, font_list, remove_duplicates):
5829 Deleted.
5830 (Fx_list_fonts): Use Ffont_list.
5831 (LFACE_AVGWIDTH): Deleted.
5832 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
5833 by FONTP.
5834 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
5835 (set_lface_from_font_name): Delete it.
5836 (set_lface_from_font): Renamed from
5837 set_lface_from_font_and_fontset. Caller changed. Don't set
5838 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
5839 for face.
5840 (merge_face_vectors): Copy font-spec if necessary.
5841 Clear properties of the font-spec if necessary.
5842 (merge_face_ref): Clear properties of the font-spec if necessary.
5843 (Finternal_set_lisp_face_attribute): Likewise.
5844 (set_font_frame_param): Use font_load_for_lface to load a
5845 font-object, and call Fmodify_frame_parameters with it.
5846 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
5847 font name by Ffont_xlfd_name.
5848 (Finternal_lisp_face_attribute_values): Don't check QCweight,
5849 QCslant, and QCwidth.
5850 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
5851 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
5852 Compare fonts by EQ.
5853 (lookup_non_ascii_face): Deleted.
5854 (face_for_font): The 2nd argument changed.
5855 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
5856 Check atomic font properties by case insensitive.
5857 (realize_non_ascii_face): Set face->overstrike correctly.
5858 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
5859 (dump_realized_face): Get font name from
5860 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
5861
5862 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
5863 conditionals. Don't check enable_font_backend. Delete all codes
5864 used only when USE_FONT_BACKEND is not defined.
5865 (xic_create_xfontset): Original code deleted and renamed from
5866 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
5867 (x_make_gc): Don't set GCFont in GCs.
5868 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
5869 opened by "fixed".
5870 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
5871 find_ccl_program_func, query_font_func, set_frame_fontset_func,
5872 get_font_repertory_func.
5873
5874 * xfont.c: Include <stdlib.h> and "ccl.h".
5875 (struct xfont_info): New structure.
5876 (xfont_query_font): Deleted.
5877 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
5878 moved from xterm.c.
5879 (xfont_driver): Adjusted for the change of struct font_driver.
5880 (compare_font_names): New function.
5881 (xfont_list_pattern): Sort font names case insensitively. Make
5882 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
5883 (xfont_list): Return a list, not vector.
5884 (xfont_match): If the font doesn't have QCname property, generate
5885 a name from the other font properties.
5886 (xfont_open): Return a font-object. Adjusted for the change of
5887 struct font. Get underline_thickness and underline_position from
5888 font property. Don't update dpyinfo->smallest_font_height and
5889 dpyinfo->smallest_char_width.
5890 (xfont_close): Don't free struct font.
5891 (xfont_prepare_face): Adjusted for the change of struct font.
5892 (xfont_done_face): Deleted.
5893 (xfont_has_char): Adjusted for the change of struct font.
5894 (xfont_encode_char, xfont_draw): Likewise.
5895 (xfont_check): New function.
5896
5897 * xftfont.c (xftfont_list): Adjusted for the change of `list'
5898 callback function.
5899 (xftfont_match): Adjusted for the format change of font-entity.
5900 (xftfont_open): Adjusted for the format change of font-entity and
5901 font-object. Adjusted for the change of struct font. Return a
5902 font-object. Don't update dpyinfo->smallest_font_height and
5903 dpyinfo->smallest_char_width.
5904 (xftfont_close): Block input while calling XftFontClose.
5905 (xftfont_prepare_face): Don't block input while calling
5906 xftfont_get_colors. Adjusted for the change of struct font.
5907 (xftfont_shape): Return value of error case fixed.
5908
5909 * xrdb.c (x_load_resources): Don't setup a fontset resource.
5910
5911 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
5912 conditionals.
5913 (FONT_WIDTH): Return (f)->max_width.
5914 (struct x_display_info): Delete member `font'.
5915 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
5916 (x_find_ccl_program, x_get_font_repertory): Delete externs.
5917 (struct x_output): Change type of `font' to `struct font *'.
5918
5919 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
5920 conditionals. Don't check enable_font_backend. Delete all codes
5921 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
5922 (x_per_char_metric, x_encode_char): Deleted.
5923 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
5924 (x_compute_glyph_string_overhangs): Adjusted for the change of
5925 `struct face'.
5926 (x_draw_glyph_string_foreground)
5927 (x_draw_composite_glyph_string_foreground): Likewise.
5928 (x_draw_glyph_string): Likewise. Use font->underline_position and
5929 font->underline_thickness.
5930 (x_new_font): Renamed from x_new_fontset2.
5931 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
5932 (x_check_font): Call `check' method of a font driver.
5933 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
5934 (x_query_font, x_get_font_repertory): Deleted.
5935 (x_find_ccl_program): Renamed and moved to xfont.c.
5936 (x_redisplay_interface): Adjusted for the change of `struct
5937 redisplay_interface'.
5938
5939 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
5940 conditionals. Don't check enable_font_backend. Delete all codes
5941 used only when USE_FONT_BACKEND is not defined. Surround non-used
5942 code by "#ifdef OLD_FONT" and "endif".
5943 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
5944
5945 * w32font.h (struct w32font_info): New member.
5946 (FONT_COMPAT): New macro.
5947 (w32font_open_internal): Prototype adjusted.
5948
5949 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
5950 OLD_FONT" and "endif".
5951
5952 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
5953 conditionals. Don't check enable_font_backend. Delete all codes
5954 used only when USE_FONT_BACKEND is not defined.
5955 (w32font_open): Return a font-object. Make a font-object by
5956 font_make_object. Adjusted for the change of struct w32font_info.
5957 (w32font_close): Don't free struct font. Adjusted for the change
5958 of struct w32font_info.
5959 (w32font_encode_char, w32font_text_extents, w32font_draw):
5960 Adjusted for the change of struct w32font_info.
5961 (w32font_draw): Likewise.
5962 (w32font_list_internal): Return a list, not vector.
5963 (w32font_open_internal): Change the 4th arg to font-object.
5964 Adjusted for the change of struct w32font_info and font-object format.
5965 (add_font_name_to_list): Don't downcase names.
5966 (w32_enumfont_pattern_entity): Make a font-entity by
5967 font_make_entity. Adjusted for the format change of font-entity.
5968 Use FONT_SET_STYLE to set a style-related font property. If a
5969 font is scalable, set avgwidth property to 0. Set font-entity
5970 property by font_put_extra.
5971 (font_matches_spec): Adjusted for the format change of font-entity.
5972 (w32_weight_table, w32_decode_weight): New variables.
5973 (w32_encode_weight): New function.
5974 (fill_in_logfont): Adjusted for the format change of font-spec.
5975 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
5976 weight value.
5977 (w32font_driver): Adjusted for the change of struct font_driver.
5978
5979 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
5980 conditionals. Don't check enable_font_backend. Surround non-used
5981 code by "#ifdef OLD_FONT" and "endif".
5982 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
5983 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
5984
5985 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
5986 conditionals. Don't check enable_font_backend. Delete all codes
5987 used only when USE_FONT_BACKEND is not defined. Surround non-used
5988 code by "#ifdef OLD_FONT" and "endif".
5989
5990 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
5991 (uniscribe_open): Return value changed to font-object.
5992 Adjusted for the format change of font-object.
5993 (uniscribe_otf_capability): Adjusted for the change of struct font.
5994 (add_opentype_font_name_to_list): Don't downcase names.
5995 (uniscribe_font_driver): Adjusted for the change of struct
5996 font_driver.
5997
59982008-05-13 Chong Yidong <cyd@stupidchicken.com>
5999
6000 * dispnew.c (update_frame_1): Check if tty output is still valid
6001 before flushing it.
6002
60032008-05-13 Jan Djärv <jan.h.d@swipnet.se>
6004
6005 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
6006 to Gtk+ menus.
6007
60082008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
6009
6010 * dired.c (file_name_completion): Tweak the code so as to always do it
6011 in a single pass. Tighten the scope of some variables.
6012
6013 * dired.c (Qdefault_directory): New var.
6014 (file_name_completion): Use it instead of Fexpand_file_name.
6015 (syms_of_dired): Initialize it.
6016
60172008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
6018
6019 * fileio.c (double_dollars): Remove dead code.
6020
60212008-05-10 Eli Zaretskii <eliz@gnu.org>
6022
6023 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
6024 Mention w32-get-true-file-attributes in doc string.
6025
6026 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
6027
60282008-05-09 Glenn Morris <rgm@gnu.org>
6029
6030 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
6031 2008-04-23.
6032
60332008-05-09 Eli Zaretskii <eliz@gnu.org>
6034
6035 Support for reporting owner and group of each file on MS-Windows:
6036 * dired.c (stat_uname, stat_gname): New functions, with special
6037 implementation for w32.
6038 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
6039
6040 * w32.c: Rename the_passwd_* to dflt_passwd_*.
6041 (dflt_group_name): New static variable.
6042 (dflt_group): Rename from the_group.
6043 (init_user_info): Init dflt_group fields. Get user's group name
6044 from LookupAccountSid.
6045 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
6046 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
6047 New initialization states.
6048 (globals_of_w32): Initialize them to zero. Initialize the default
6049 group name to "None".
6050 (GetFileSecurity_Name): New global var, the name of the function
6051 to call for GetFileSecurity.
6052 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
6053 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
6054 (get_file_security, get_security_descriptor_owner)
6055 (get_security_descriptor_group, is_valid_sid)
6056 (get_file_security_desc, get_rid, get_name_and_id)
6057 (get_file_owner_and_group): New functions.
6058 (stat): Use get_file_security_desc and get_file_owner_and_group to
6059 report the owner and primary group of each file. Don't ignore the
6060 high 32 bits of file's size, now that st_size is 64-bit wide.
6061 Fix test when to get true file attributes.
6062 (init_user_info): Use get_rid instead of equivalent inline code.
6063 (fstat): Don't ignore the high 32 bits of file's size.
6064
60652008-05-09 Chong Yidong <cyd@stupidchicken.com>
6066
6067 * image.c (png_load): Use correct bit-depth for setting background
6068 color.
6069
60702008-05-08 Eli Zaretskii <eliz@gnu.org>
6071
6072 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
6073 epa-hook.elc.
6074
60752008-05-08 Juanma Barranquero <lekktu@gmail.com>
6076
6077 * font.c (Ffont_match_p): Don't use `iff' in docstring.
6078
60792008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
6080
6081 * macfns.c (Fx_create_frame): Make a copy of frame parameters
6082 because the original parameters are in pure storage now.
6083 (mac_window): Remove unused params. Update callers.
6084
60852008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
6086
6087 * lread.c (substitute_object_recurse): Use lower-level primitives.
6088 Don't signal errors when traversing sub-char-tables.
6089 Don't loop over all the possible characters when traversing char-tables.
6090
6091 * print.c (print_preprocess): Add sub-char-tables to the print-table,
6092 just like we do in print.c.
6093
60942008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
6095
6096 * minibuf.c (Ftry_completion): Remove code left over from when we used
6097 scmp instead of Fcompare_strings.
6098
60992008-05-04 Juanma Barranquero <lekktu@gmail.com>
6100
6101 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
6102
61032008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6104
6105 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
6106 Create bitmap context in native byte order.
6107
6108 * macterm.c (XDrawLine)
6109 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
6110 context in native byte order.
6111
61122008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6113
6114 * config.in: Regenerate.
6115
6116 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
6117 New definitions for Image I/O support.
6118 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
6119 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
6120 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6121 (mac_data_provider_release_data, image_load_image_io)
6122 [USE_MAC_IMAGE_IO]: New functions.
6123 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
6124 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
6125 (init_image_func_pointer) [MAC_OSX]: Remove function.
6126 (image_load_quartz2d) [MAC_OSX]: Check availability of
6127 CGImageCreateWithPNGDataProvider at compile time.
6128 Use lowercase `false' for boolean constant.
6129 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
6130 Use image_load_image_io.
6131 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
6132 Don't check MyCGImageCreateWithPNGDataProvider.
6133 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
6134 Don't call init_image_func_pointer.
6135
6136 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
6137
6138 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
6139 Make variable non-static.
6140 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
6141 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
6142
6143 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
6144 (RED_FROM_ULONG): Mask off higher bits.
6145 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
6146
6147 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
6148 Include AvailabilityMacros.h.
6149 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
6150 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
6151
61522008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
6153
6154 * chartab.c (Fset_char_table_range): If range is t, really set all
6155 chars to that value.
6156
61572008-05-03 Eli Zaretskii <eliz@gnu.org>
6158
6159 * dired.c (Ffile_attributes): Don't allow the device number become
6160 negative.
6161
61622008-05-02 Daiki Ueno <ueno@unixuser.org>
6163
6164 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
6165
61662008-05-02 Juri Linkov <juri@jurta.org>
6167
6168 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
6169 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
6170 DEFAULT argument as a list of default values in docstrings.
6171
61722008-05-01 Chong Yidong <cyd@stupidchicken.com>
6173
6174 * puresize.h (BASE_PURESIZE): Increase to 1210000.
6175
61762008-05-01 Martin Rudalics <rudalics@gmx.at>
6177
6178 * dispnew.c (change_frame_size_1): Preserve small windows when
6179 shrinking frames by calling set_window_height|width with third
6180 arg 2.
6181
6182 * window.h (struct window): Replace field too_small_ok by field
6183 resize_proportionally.
6184
6185 * window.c (make_window): Initialize resize_proportionally.
6186 (enlarge_window): Temporarily set resize_proportionally to make
6187 sure that shrink_windows does scale the window proportionally.
6188 (shrink_windows): When window has resize_proportionally set try
6189 to shrink it proportionally by stealing from other windows.
6190 (struct saved_window, Fset_window_configuration)
6191 (compare_window_configurations): Handle resize_proportionally.
6192 (WINDOW_TOTAL_SIZE): New macro.
6193 (window_min_size, shrink_windows, size_window): Use it.
6194 (check_min_window_sizes): Remove. Invalid values of
6195 window-min-height|width are handled by window_min_size_2 now.
6196 (size_window, Fsplit_window, enlarge_window)
6197 (adjust_window_trailing_edge, grow_mini_window): Don't call
6198 check_min_window_sizes.
6199 (window_min_size_2, window_min_size_1, window_min_size):
6200 New argument safe_p for retrieving "safe" minimum sizes.
6201 (Fdisplay_buffer, Fsplit_window, enlarge_window)
6202 (adjust_window_trailing_edge, grow_mini_window):
6203 Adjust arguments of window_min_size... functions.
6204 (shrink_windows): Argument min_size removed. New argument
6205 safe_p allows shrinking windows to their safe minimum sizes.
6206 Calculate minimum size and decide whether a window shall be
6207 deleted for each window individually.
6208 (size_window): When nodelete_p equals 2, tell shrink_windows to
6209 delete windows only if their new minimum size is no more safe.
6210 (shrink_window_lowest_first): Call window_min_size_1 to make
6211 sure to preserve modeline of bottom-most window when resizing
6212 the minibuffer.
6213 (Fset_window_configuration, Fcurrent_window_configuration)
6214 (compare_window_configurations): Do not handle
6215 window-min-height|width any more.
6216 (syms_of_window): Clarify window-min-height|width doc-strings.
6217
62182008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
6219
6220 * dired.c (file_name_completion): Fix up the encoding/decoding issue
6221 some more. Copy some of the code from Ftry_completions.
6222 Remove special case code that dates back to initial revision when the
6223 slash was only added when necessary and that can't trigger nowadays.
6224
62252008-04-27 Kenichi Handa <handa@m17n.org>
6226
6227 * font.c (font_prop_validate): Signal `error' instead of `font'.
6228
62292008-04-29 Jason Rumney <jasonr@gnu.org>
6230
6231 * w32fns.c (Fw32_battery_status): New defun.
6232 (syms_of_w32fns): Defsubr it.
6233
62342008-04-28 Andreas Schwab <schwab@suse.de>
6235
6236 * dired.c (file_name_completion): Fix another mixing of encoded
6237 and decoded names.
6238
62392008-04-28 Juanma Barranquero <lekktu@gmail.com>
6240
6241 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
6242
62432008-04-27 Juanma Barranquero <lekktu@gmail.com>
6244
6245 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
6246
62472008-04-27 Andreas Schwab <schwab@suse.de>
6248
6249 * dired.c (file_name_completion): Fix inappropriate mixing of
6250 encoded and decoded names.
6251
6252 * xterm.c (XTread_socket): Fix use of uninitialized variable.
6253
6254 * puresize.h (BASE_PURESIZE): Increase to 1200000.
6255
62562008-04-26 Eli Zaretskii <eliz@gnu.org>
6257
6258 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
6259 2008-03-31, it's not needed anymore with `struct stat' definition
6260 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
6261 for the same reasons.
6262
62632008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
6264
6265 * m/sparc.h: Additional redefinitions for GNU/Linux.
6266
62672008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6268
6269 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
6270 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
6271 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
6272 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
6273 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6274 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
6275 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6276 Likewise.
6277
6278 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
6279 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
6280 (mac_ax_number_of_characters): Add externs.
6281 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
6282 [USE_MAC_TSM]: Likewise.
6283 (mac_handle_text_input_event) [MAC_OSX]:
6284 Handle kEventTextInputOffsetToPos for no active input area case.
6285 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6286 (mac_handle_document_access_event)
6287 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
6288 (install_application_handler) [MAC_OSX]: Register handlers for
6289 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
6290 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
6291 Register mac_handle_document_access_event.
6292
6293 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
6294 Make functions non-static.
6295
62962008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
6297
6298 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
6299 (read_file_name_completion_ignore_case, insert_default_directory)
6300 (Qdefault_directory): Move to minibuffer.el.
6301 (Fread_file_name): Call the new `read-file-name' instead.
6302
63032008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6304
6305 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
6306 Make function non-static.
6307 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
6308 Remove function.
6309 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6310 Move to mactoolbox.c.
6311 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
6312
6313 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
6314 (mac_rect_make): New macro.
6315
6316 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
6317 instead of float.
6318 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6319 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
6320 (XSetBackground) [USE_CG_DRAWING]: Likewise.
6321 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
6322 CGRectMake.
6323 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
6324 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
6325 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
6326 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6327 instead of WindowRef in argument type.
6328 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
6329 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
6330 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
6331 instead of DISPLAY. All uses changed.
6332 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
6333 (x_calc_absolute_position): Simplify so as not to use
6334 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
6335
6336 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
6337 instead of WindowRef in argument type.
6338 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
6339 [TARGET_API_MAC_CARBON]: Remove externs.
6340 (create_apple_event, mac_event_parameters_to_lisp)
6341 [TARGET_API_MAC_CARBON]: Add externs.
6342
6343 * mactoolbox.c (Vmac_ts_script_language_on_focus)
6344 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
6345 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
6346 is clicked.
6347 (x_activate_menubar): Remove extern for saved_menu_event_location.
6348 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
6349 Move from mac.c.
6350
63512008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6352
6353 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
6354 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
6355
63562008-04-23 Jason Rumney <jasonr@gnu.org>
6357
6358 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
6359 attributes only for local files.
6360
6361 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
6362 default to Qlocal.
6363
63642008-04-22 Juri Linkov <juri@jurta.org>
6365
6366 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
6367 read-buffer-to-switch instead of using the letter "B".
6368
63692008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
6370
6371 * fileio.c (Qdefault_directory): New variable.
6372 (Fread_file_name): Use it to pass `dir' to the completion functions.
6373
63742008-04-20 Chong Yidong <cyd@stupidchicken.com>
6375
6376 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
6377
63782008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
6379
6380 * keyboard.c (Vpre_help_message): Remove.
6381 (show_help_echo): Remove default C code.
6382
6383 * dired.c (directory_files_internal, file_name_completion):
6384 Only call ENCODE_FILE if the string is indeed decoded.
6385
63862008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6387
6388 * Makefile.in (TOOLKIT_DEFINES): Remove.
6389 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
6390
63912008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6392
6393 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
6394 (mactoolbox.o): New target.
6395
6396 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
6397 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
6398
6399 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
6400 Use mac_set_frame_window_background instead of XSetWindowBackground.
6401 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
6402 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
6403 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
6404 instead of SetWindowTitleWithCFString.
6405 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
6406 Move function to mactoolbox.c.
6407 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
6408 Use mac_set_window_modified instead of SetWindowModified.
6409 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
6410 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
6411 (Fx_focus_frame): Use mac_front_non_floating_window instead of
6412 FrontNonFloatingWindow. Use mac_activate_window instead of
6413 ActivateWindow. Use mac_active_non_floating_window instead of
6414 ActiveNonFloatingWindow.
6415 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
6416 Use mac_show_hourglass and mac_hide_hourglass.
6417 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
6418 instead of GetGlobalMouse.
6419 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
6420 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
6421 Use mac_bring_window_to_front instead of BringToFront.
6422 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
6423 mactoolbox.c.
6424 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
6425 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
6426 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
6427 mactoolbox.c.
6428
6429 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
6430 (XtPointer): Move typedef from macmenu.c.
6431 (enum button_type): Move enum from macmenu.c.
6432 (widget_value): Move typedef from macmenu.c.
6433 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
6434 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6435 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6436 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6437 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6438 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6439 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6440 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
6441 (Selection): Move typedef from macselect.c.
6442 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
6443 macterm.c.
6444 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
6445 (mac_is_window_collapsed, mac_bring_window_to_front)
6446 (mac_send_window_behind, mac_hide_window, mac_show_window)
6447 (mac_collapse_window, mac_front_non_floating_window)
6448 (mac_active_non_floating_window, mac_activate_window)
6449 (mac_move_window_structure, mac_move_window, mac_size_window)
6450 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
6451
6452 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
6453 (enum mac_menu_kind): Move enum to mactoolbox.c.
6454 (min_menu_id): Move variable to mactoolbox.c.
6455 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
6456 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
6457 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
6458 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
6459 [TARGET_API_MAC_CARBON]: Likewise.
6460 (XtPointer): Move typedef to macgui.h.
6461 (enum button_type): Move enum to macgui.h.
6462 (widget_value): Move typedef to macgui.h.
6463 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
6464 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
6465 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
6466 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
6467 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
6468 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
6469 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
6470 (popup_activated_flag): Make variable non-static.
6471 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
6472 (add_menu_item, fill_menu, dispose_menus):
6473 Move functions to mactoolbox.c.
6474 (restore_show_help_function, menu_target_item_handler)
6475 (install_menu_target_item_handler, mac_handle_dialog_event)
6476 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
6477 [TARGET_API_MAC_CARBON]: Likewise.
6478 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
6479 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6480 (find_and_call_menu_selection, name_is_separator): Make function
6481 non-static.
6482 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
6483 to mactoolbox.c.
6484 (set_frame_menubar): Don't call install_menu_quit_handler.
6485 (menu_item_selection): New variable.
6486 (mac_menu_show): Use create_and_show_popup_menu.
6487 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
6488 selection but set variable menu_item_selection. All uses changed.
6489 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
6490 Call install_menu_quit_handler. Move to mactoolbox.c.
6491
6492 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
6493 (Selection): Move typedef to macgui.h.
6494 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
6495 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
6496 Make variables non-static.
6497 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6498 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
6499 Make functions non-static.
6500 (Vmac_service_selection) [MAC_OSX]: Likewise.
6501 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
6502 (mac_valid_selection_target_p, mac_clear_selection)
6503 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6504 (mac_put_selection_value, mac_selection_has_target_p)
6505 (mac_get_selection_value, mac_get_selection_target_list)
6506 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
6507 Move functions to mactoolbox.c.
6508 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
6509 Likewise.
6510 (copy_scrap_flavor_data, mac_handle_service_event)
6511 (install_service_handler) [MAC_OSX]: Likewise.
6512 (syms_of_macselect) <Vmac_dnd_known_types>:
6513 Use mac_dnd_default_known_types.
6514
6515 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
6516 Move to mactoolbox.c.
6517 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
6518 (Fx_selection_owner_p): Add EXFUN.
6519 (install_window_handler, remove_window_handler, XSetWindowBackground):
6520 Remove externs.
6521 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
6522 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
6523 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
6524 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
6525 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
6526 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
6527 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
6528 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
6529 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
6530 (create_and_show_popup_menu, mac_get_selection_from_symbol)
6531 (mac_valid_selection_target_p, mac_clear_selection)
6532 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
6533 (mac_put_selection_value, mac_selection_has_target_p)
6534 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
6535 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
6536 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
6537 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
6538 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
6539 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
6540 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
6541 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6542 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
6543
6544 * mactoolbox.c: New file.
6545
65462008-04-18 Jason Rumney <jasonr@gnu.org>
6547
6548 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
6549
65502008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
6551
6552 * character.c (Fmultibyte_char_to_unibyte):
6553 Return latin1 chars unchanged.
6554
6555 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
6556 relocated if it points to `name'.
6557
65582008-04-17 Kenichi Handa <handa@m17n.org>
6559
6560 * data.c (Faset): Allow setting a multibyte character in an
6561 ASCII-only unibyte string.
6562
6563 * lisp.h (STRING_SET_MULTIBYTE): New macro.
6564
65652008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
6566
6567 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
6568 done in config.h.
6569
65702008-04-16 Juanma Barranquero <lekktu@gmail.com>
6571
6572 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
6573 (Fchar_direction): Add usage in the docstring.
6574
65752008-04-15 Chong Yidong <cyd@stupidchicken.com>
6576
6577 * keyboard.c (read_key_sequence): Remove always-true checks.
6578
65792008-04-14 Jason Rumney <jasonr@gnu.org>
6580
6581 * w32font.c (w32font_open_internal): Set max_bounds.descent in
6582 compatibility struct, for better underline positioning.
6583
65842008-04-13 David Hansen <david.hansen@gmx.net>
6585
6586 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
6587 string.
6588
65892008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
6590
6591 * m/hp800.h (XUINT, XSET): Remove.
6592
65932008-04-12 Juanma Barranquero <lekktu@gmail.com>
6594
6595 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
6596 previous change.
6597
65982008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
6599
6600 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
6601 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
6602
66032008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6604
6605 * keymap.h (map_keymap_canonical): Declare.
6606 * xmenu.c (single_keymap_panes): Use it.
6607
66082008-04-11 Glenn Morris <rgm@gnu.org>
6609
6610 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
6611 set the target's value to that of the alias.
6612
66132008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
6614
6615 * term.c (set_tty_color_mode): Left over typo.
6616
66172008-04-10 Michael Albinus <michael.albinus@gmx.de>
6618
6619 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
6620 only after check for file name handler functions. Signal, when
6621 native functionality is not supported.
6622 (syms_of_fileio): Declare it unconditionally.
6623
66242008-04-10 Jason Rumney <jasonr@gnu.org>
6625
6626 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
6627 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
6628
6629 * w32.c (logon_network_drive): Also logon to remote drives that
6630 are mapped to drive letters.
6631
66322008-04-10 Glenn Morris <rgm@gnu.org>
6633
6634 * xdisp.c (truncate-partial-width-windows): Doc fix.
6635
66362008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
6637
6638 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
6639 Move functions to minibuffer.el.
6640 (syms_of_fileio): Don't declare them.
6641
66422008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6643
6644 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
6645 (syms_of_minibuf): Remove its initialization.
6646
6647 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
6648
66492008-04-09 Juanma Barranquero <lekktu@gmail.com>
6650
6651 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
6652
66532008-04-09 Jason Rumney <jasonr@gnu.org>
6654
6655 * makefile.w32-in (distclean): Delete makefile too.
6656 (maintainer-clean): New target.
6657
6658 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
6659
6660 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
6661 for new font backend and composite cases.
6662
66632008-04-09 Jan Djärv <jan.h.d@swipnet.se>
6664
6665 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
6666 Most of the code moved to run_timers.
6667 (do_pending_atimers): Call run_timers.
6668 (run_timers): New function.
6669
6670 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
6671 run atimers.
6672
6673 * process.c (wait_reading_process_output): The same as above.
6674
66752008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
6676
6677 * minibuf.c (last_exact_completion): Remove variable.
6678 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
6679 (complete_and_exit_1, complete_and_exit_2)
6680 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
6681 (Fdisplay_completion_list, display_completion_list_1)
6682 (Fminibuffer_completion_help, Fself_insert_and_exit)
6683 (Fexit_minibuffer, Fminibuffer_message): Move functions to
6684 minibuffer.el.
6685 (syms_of_minibuf): Remove corresponding initializations.
6686
6687 * keyboard.c (Qdeactivate_mark): New var.
6688 (command_loop_1): Use it to call `deactivate-mark'.
6689 (syms_of_keyboard): Initialize it.
6690
6691 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
6692 to another frame.
6693 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
6694 Don't call set_tty_color_mode.
6695 (store_frame_param): Reset previous_frame rather than call
6696 set_tty_color_mode.
6697 * term.c (set_tty_color_mode): Rewrite.
6698 * dispextern.h (set_tty_color_mode): New type.
6699 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
6700
67012008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
6702
6703 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
6704 for generic chars, which do not exist any more in emacs-unicode.
6705
67062008-04-08 Michael Albinus <michael.albinus@gmx.de>
6707
6708 * coding.c (detect_coding_emacs_mule)
6709 (Ffind_operation_coding_system): Fix typo.
6710
67112008-04-08 Jason Rumney <jasonr@gnu.org>
6712
6713 * w32uniscribe.c (SNAME): Extract only symbol name.
6714
6715 * w32font.h (struct w32_metric_cache): New struct.
6716 (w32font_info): Use it.
6717 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
6718 (CACHE_BLOCKSIZE): New constants.
6719
6720 * w32font.c (Qja, Qko, Qzh): New symbols.
6721 (syms_of_w32font): Initialise them.
6722 (font_matches_spec): Use them to filter by language.
6723 (recompute_cached_metrics): Remove function.
6724 (compute_metrics, clear_cached_metrics): New functions.
6725 (w32font_encode_char): Use them to manage metric cache.
6726 (w32font_text_extents): Cache metrics for all glyphs on demand.
6727 Delay converting glyph indices to WORD until needed.
6728 (w32font_open_internal): Initialize metric cache to empty.
6729 (registry_to_w32_charset): Charset should always be a symbol.
6730 (fill_in_logfont, list_all_matching_fonts): Family should
6731 always be a symbol.
6732
67332008-04-06 Jason Rumney <jasonr@gnu.org>
6734
6735 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
6736 Give up if glyph indices not supported. Use uniscribe obtained
6737 ABC widths for individual metrics. Map glyph clusters back to
6738 characters using fClusterStart flag. Return number of glyphs
6739 produced, not chars processed.
6740 (uniscribe_shape): Map char at FROM to current glyph.
6741
67422008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6743
6744 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
6745 Use SetMenuItemHierarchicalMenu.
6746
67472008-04-05 Jason Rumney <jasonr@gnu.org>
6748
6749 * image.c (pbm_load): Allow color values up to 65535.
6750 Throw an error if max_color_idx is outside the supported range.
6751 Report an error when image size is invalid.
6752 Read two bytes at a time when raw images have max_color_idx above 255.
6753
67542008-04-05 Eli Zaretskii <eliz@gnu.org>
6755
6756 * w32.c (readdir): If FindFirstFile/FindNextFile return in
6757 cFileName a file name that includes `?' characters, use the 8+3
6758 alias in cAlternateFileName instead.
6759
67602008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
6761
6762 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
6763 append "CCL: Quitted" when the CCL program is quitted.
6764 (setup_ccl_program): Initialize ccl->quit_silently to zero.
6765
6766 * ccl.h (struct ccl_program): New member quit_silently.
6767
67682008-04-05 Chong Yidong <cyd@stupidchicken.com>
6769
6770 * search.c (compile_pattern_1): Treat non-nil and non-string of
6771 search-spaces-regexp as nil.
6772
6773 * minibuf.c (Fassoc_string): Tweak docstring.
6774
67752008-04-05 Eli Zaretskii <eliz@gnu.org>
6776
6777 * dired.c (Ffile_attributes): Support inode numbers wider than 32
6778 bits. Remove ugly WINDOWSNT-specific kludge introduced on
6779 2008-03-14 to force inode be positive.
6780
6781 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
6782 _S_* ones, since we now use our own sys/stat.h.
6783 (stat, fstat): Don't mangle the inode number.
6784 (init_user_info): Don't restrict UID and GID to 0-60000 range.
6785
67862008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
6787
6788 * frame.h (struct frame): Give one more bit to `visible' since we use
6789 values larger than 1 to indicate obscured frames on ttys.
6790
6791 * keymap.c (Qkeymap_canonicalize): New var.
6792 (Fmap_keymap_internal): New fun.
6793 (describe_map): Use keymap-canonicalize.
6794
6795 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
6796 (Fundo_boundary): Set them.
6797 (syms_of_undo): Initialize them.
6798 (record_point): Use them instead of last_point_position*.
6799 (last_undo_buffer): Change type.
6800
68012008-04-04 Jason Rumney <jasonr@gnu.org>
6802
6803 * w32font.c (w32font_text_extents): Use font's ascent and descent.
6804 (recompute_cached_metrics): Don't set ascent and descent per char.
6805
6806 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
6807 (uniscribe_check_otf): Add GC protection before consing.
6808 Rearrange loop for counting features.
6809
68102008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
6811
6812 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
6813 buffer with byte-size of source buffer.
6814
68152008-04-03 Chong Yidong <cyd@stupidchicken.com>
6816
6817 * callint.c (Fcall_interactively): Handle temporary region even
6818 when shift-select-mode is off.
6819
68202008-04-03 Jason Rumney <jasonr@gnu.org>
6821
6822 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
6823
68242008-04-03 Kenichi Handa <handa@m17n.org>
6825
6826 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
6827 (CATEGORY_MASK_UTF_16): Likewise.
6828 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
6829 binary file.
6830 (detect_coding): Add null-byte detection for a binary file.
6831 (detect_coding_system): Likewise.
6832
68332008-04-03 Jason Rumney <jasonr@gnu.org>
6834
6835 * w32uniscribe.c: New file.
6836
6837 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
6838
6839 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
6840
6841 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
6842 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
6843 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
6844 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
6845 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
6846 (Qphonetic): New symbols.
6847 (syms_of_w32font): Initialize them.
6848 (font_supported_scripts): Use them.
6849 (w32font_list_family): List all charsets.
6850 (w32font_text_extents, recompute_cached_metrics): Fix metric
6851 calculations.
6852 (w32_enumfont_pattern_entity): Make full_type a DWORD.
6853 Give opentype fonts their own format.
6854 (font_matches_spec): New arguments backend and logfont.
6855 Handle :otf spec for uniscribe backend.
6856 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
6857 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
6858
6859 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
6860 font backend.
6861 (globals_of_w32fns): Initialize uniscribe font backend.
6862
6863 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
6864 dependencies.
6865 (w32uniscribe.$(O)): New file to build.
6866 (FONT_OBJ): Include w32uniscribe.$(O).
6867 (LIBS): Add uniscribe libraries.
6868
6869 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
6870
68712008-04-02 Chong Yidong <cyd@stupidchicken.com>
6872
6873 * callint.c (Vshift_select_mode): New var.
6874 (Finteractive): Document new ^ spec.
6875 (Fcall_interactively): Call handle-shift-selection if the ^ spec
6876 is present.
6877
6878 * keyboard.c (Vthis_command_keys_shift_translated): New var.
6879 (command_loop_1): Avoid running the direct display versions of
6880 forward-char and backward-char if shift-selection may occur.
6881 (read_key_sequence): Set Vthis_command_keys_shift_translated if
6882 shift-translation takes place.
6883
6884 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
6885 avoid clobbering by define-minor-mode.
6886
6887 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
6888 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
6889
6890 * syntax.c (Fforward_word): Add ^ interactive spec.
6891
6892 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
6893 (Fscroll_right): Add ^ interactive spec.
6894
68952008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
6896
6897 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
6898
6899 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
6900
6901 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
6902
69032008-03-31 Juri Linkov <juri@jurta.org>
6904
6905 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
6906
69072008-03-30 Jan Djärv <jan.h.d@swipnet.se>
6908
6909 * gtkutil.c (xg_set_geometry): Fix indentation.
6910 (xg_resize_outer_widget): Remove.
6911 (x_wm_size_hint_off): Fix indentation.
6912 (xg_frame_set_char_size): Call flush_and_sync after
6913 gtk_window_resize.
6914 (x_wm_set_size_hint): Pass NULL as geometry window to
6915 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
6916 Add menu bar and tool bar height to base height.
6917 (xg_update_frame_menubar, free_frame_menubar)
6918 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
6919 (update_frame_tool_bar, free_frame_tool_bar):
6920 Change xg_resize_outer_widget to xg_frame_set_char_size.
6921
69222008-03-30 Michael Albinus <michael.albinus@gmx.de>
6923
6924 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
6925 (Fdbus_call_method): New parameter TIMEOUT.
6926 (dbus-send-signal): Optimize UNGCPRO call.
6927
69282008-03-29 Juri Linkov <juri@jurta.org>
6929
6930 * window.c (Fdisplay_buffer): Move call to
6931 Vsplit_window_preferred_function out of conditions that check
6932 if window is eligible for vertical splitting.
6933 When Vsplit_window_preferred_function is non-nil, call it and use
6934 its non-nil return value as window. Otherwise, continue doing
6935 vertical splitting using Fsplit_window with arg horflag=nil.
6936 (syms_of_window) <Vsplit_window_preferred_function>: Change the
6937 default value from `split-window' to nil.
6938
69392008-03-29 Juri Linkov <juri@jurta.org>
6940
6941 * callint.c (Fcall_interactively): Revert 2008-03-16 change
6942 for interactive code letters 'b' and 'B'.
6943
69442008-03-29 Eli Zaretskii <eliz@gnu.org>
6945
6946 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
6947 multibyte string.
6948
69492008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
6950
6951 * keyboard.c (pending_funcalls): New var.
6952 (timer_check): Run it.
6953 (syms_of_keyboard): Initialize it.
6954 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
6955 (Vdelete_terminal_functions): New vars.
6956 (syms_of_terminal): Initialize them.
6957 (Fdelete_terminal): Run delete-terminal-functions.
6958 * xdisp.c (safe_eval): Rewrite.
6959 (safe_call2): New fun.
6960 * frame.c (Qdelete_frame_functions): New var.
6961 (syms_of_frame): Initialize it.
6962 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
6963 * lisp.h (safe_call2, pending_funcalls): Declare.
6964
69652008-03-28 Andreas Schwab <schwab@suse.de>
6966
6967 * indent.c (Fmove_to_column): Move declaration before statements.
6968
69692008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
6970
6971 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
6972 (struct frame): Use bit fields for boolean vars.
6973
6974 * process.c (server_accept_connection): Simplify naming.
6975 (emacs_get_tty_pgrp): Use SDATA.
6976
6977 * coding.c (decode_coding_object): Fix last change.
6978
69792008-03-27 Jason Rumney <jasonr@gnu.org>
6980
6981 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
6982
69832008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
6984
6985 * charset.c (Fdefine_charset_internal): Change the way of
6986 registering charsets in Vcharset_order_list.
6987 (syms_of_charset): Make the charset `eight-bit' supplementary.
6988
69892008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
6990
6991 * regex.c (EXTEND_BUFFER): Change order of pointer addition
6992 operations, to avoid having the difference between pointers
6993 overflow.
6994
69952008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
6996
6997 * indent.c (check_display_width): New fun.
6998 (scan_for_column): Use it.
6999
7000 * data.c (syms_of_data): Mark most-positive-fixnum and
7001 most-negative-fixnum as constants.
7002
7003 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
7004
7005 * indent.c (scan_for_column): Extract from current_column_1.
7006 Merge with the same code from Fmove_to_column.
7007 (current_column_1, Fmove_to_column): Use it.
7008
70092008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
7010
7011 * keymap.c (map_keymap_internal): New fun.
7012 (map_keymap): Use it.
7013 (Fmap_keymap_internal): New fun.
7014 (Fmap_keymap): Remove left-out test from before make_save_value.
7015
7016 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
7017
7018 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
7019 Use XCAR/XCDR.
7020
7021 * process.h (struct Lisp_Process): Remove filter_multibyte.
7022 * process.c (QCfilter_multibyte): Remove.
7023 (setup_process_coding_systems): Don't use filter_multibyte.
7024 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
7025 (read_process_output): Don't adjust multibyteness to filter_multibyte.
7026 (Fset_process_filter_multibyte): Change the coding-system to
7027 approximate the previous behavior.
7028 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
7029 coding-system.
7030
7031 * coding.c (decode_coding_object): When not decoding into a buffer,
7032 obey the coding system's preference of (uni|multi)byte.
7033
70342008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
7035
7036 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
7037 every char is changed and has a different byte-length.
7038 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
7039 Fix int -> EMACS_INT.
7040
70412008-03-23 David Hansen <david.hansen@gmx.net>
7042
7043 * dbusbind.c (xd_read_message): Remove extra copying of message
7044 strings. Check for NULL `interface' or `member'.
7045
70462008-03-22 Eli Zaretskii <eliz@gnu.org>
7047
7048 * w32.c (readdir): If FindFirstFile/FindNextFile return in
7049 cFileName a file name that includes `?' characters, use the 8+3
7050 alias in cAlternateFileName instead.
7051
70522008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
7053
7054 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
7055
70562008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7057
7058 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
7059 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
7060 work on current_buffer only instead (that was already the case
7061 for some of the code anyway).
7062 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
7063 (temp_set_point, temp_set_point_both): Use EMACS_INT.
7064 (SET_PT, SET_PT_BOTH): Adjust.
7065 * intervals.h (set_point, temp_set_point, set_point_both)
7066 (temp_set_point_both): Remove redundant declarations.
7067
70682008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
7069
7070 * fileio.c (Finsert_file_contents):
7071 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
7072 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
7073 when buffer != current_buffer anyway.
7074
70752008-03-20 Andreas Schwab <schwab@suse.de>
7076
7077 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
7078 as default.
7079
70802008-03-19 Jason Rumney <jasonr@gnu.org>
7081
7082 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
7083 (syms_of_w32fns): Initialize them.
7084 (HOURGLASS_ID): New constant.
7085 (x_window_to_frame): Don't check hourglass_window.
7086 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
7087 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
7088 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
7089 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
7090 Only change the cursor if hourglass is not active.
7091 (Fx_create_frame): Initialize frame's current_cursor.
7092 (hourglass_atimer): Remove.
7093 (hourglass_started): New function.
7094 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
7095 (show_hourglass): Adapt to w32, changing argument to frame.
7096
7097 * w32term.h (struct w32_output): Remove hourglass_window.
7098 Add current_cursor.
7099
7100 * eval.c (call_debugger, Fsignal):
7101 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
7102 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
7103 (Fexecute_extended_command, cancel_hourglass_unwind):
7104 * minibuf.c (read_minibuf):
7105 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
7106
71072008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
7108
7109 * window.c (run_funs): New fun.
7110 (run_window_configuration_change_hook): Use it to run the buffer-local
7111 and the global part of the hook.
7112
7113 * xdisp.c (format_mode_line_unwind_data): Add window argument.
7114 (unwind_format_mode_line): Restore selected window.
7115 (x_consider_frame_title, Fformat_mode_line): Set selected window.
7116
71172008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
7118
7119 * editfns.c (Fchar_equal): Check they are valid characters.
7120
7121 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
7122
71232008-03-17 Andreas Schwab <schwab@suse.de>
7124
7125 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
7126 against a charset.
7127
7128 * lisp.h (Fbuffer_list): Declare.
7129
71302008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 7131
aac0c6e3
MR
7132 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
7133 handlebox_widget is != 0.
7134
71352008-03-16 Juri Linkov <juri@jurta.org>
7136
7137 * callint.c (Fcall_interactively): For interactive code letters
7138 'b' and 'B' put the buffer list into the list of default "future"
7139 values of the minibuffer.
7140
71412008-03-16 Andreas Schwab <schwab@suse.de>
7142
7143 * keyboard.c (read_key_sequence): Fix downcasing of letters with
7144 modifiers.
7145
7146 * regex.c (re_match_2_internal): Correct matching of a charset
7147 against latin-1 characters.
7148
71492008-03-16 Kenichi Handa <handa@m17n.org>
7150
7151 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
7152 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
7153 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
7154 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
7155 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
7156 CHAR_STRING_ADVANCE.
7157 (produce_chars): Fix for the case that the source and the
7158 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
7159 instead of CHAR_STRING_ADVANCE.
7160 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
7161 STRING_CHAR_ADVANCE.
7162
71632008-03-15 Andreas Schwab <schwab@suse.de>
7164
7165 * regex.c (re_match_2_internal): Correct matching of eight bit
7166 characters in unibyte strings.
7167
71682008-03-15 Martin Rudalics <rudalics@gmx.at>
7169
7170 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
7171 at end of range when it coincides with the end of the buffer.
7172
71732008-03-14 Eli Zaretskii <eliz@gnu.org>
7174
7175 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
7176
7177 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
7178
71792008-03-14 Jason Rumney <jasonr@gnu.org>
7180
7181 * editfns.c (initial_tz): New variable.
7182 (syms_of_editfns): Initialize it.
7183 (Fset_time_zone_rule): Set it when first called.
7184 Use it when TZSTRING is nil.
7185
7186 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
7187 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
7188 (monitor_from_point_fn, get_monitor_info_fn): New globals.
7189 (globals_of_w32fns): Initialize them.
7190 (compute_tip_xy): Use them to position tooltips.
7191
71922008-03-14 Glenn Morris <rgm@gnu.org>
7193
7194 * emacs.c (main): Revert previous change.
7195 (standard_args): Revert -internal-script back to -scriptload,
7196 and remove the long-option form.
7197
71982008-03-13 Glenn Morris <rgm@gnu.org>
7199
7200 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
7201 Remove option -enable-font-backend.
7202
72032008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
7204
7205 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
7206
72072008-03-11 Jan Djärv <jan.h.d@swipnet.se>
7208
7209 * xterm.c (x_connection_closed): For GTK: If this is the last
7210 terminal just exit without closing the display.
7211
72122008-03-11 Jason Rumney <jasonr@gnu.org>
7213
7214 * w32font.c (w32font_full_name): Use floor to round.
7215
f0131492 72162008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
7217
7218 * sound.c (alsa_configure): Declare vol at beginning of block.
7219
7220 * fontset.c (Ffontset_info): Remove extra semicolon.
7221
72222008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
7223
7224 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
7225 size of resulting string.
7226
72272008-03-10 Jason Rumney <jasonr@gnu.org>
7228
7229 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
7230
72312008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7232
7233 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
7234 Don't pretend as if characters with display property haven't been
7235 consumed for string-replacing-string case.
7236
72372008-03-08 Kim F. Storm <storm@cua.dk>
7238
7239 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
7240 (get_next_display_element, next_element_from_string)
7241 (next_element_from_ellipsis, next_element_from_buffer): Use it.
7242
72432008-03-08 Andreas Schwab <schwab@suse.de>
7244
7245 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
7246
72472008-03-06 Jason Rumney <jasonr@gnu.org>
7248
7249 * w32font.c (w32_registry): Take font_type argument. Use ANSI
7250 when charset not specified. Only translate ANSI to unicode when
7251 font_type is truetype.
7252 (w32font_coverage_ok): New function.
7253 (add_font_entity_to_list): Use it to filter unsuitable fonts.
7254
72552008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
7256
7257 * lread.c (Fread_char): Resolve modifiers.
7258 (Fread_char_exclusive): Likewise.
7259
7260 * character.c (char_resolve_modifier_mask): New function.
7261 (char_string): Use char_resolve_modifier_mask.
7262 (Fchar_resolve_modifiers): New function.
7263 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
7264 function.
7265
72662008-03-04 Jason Rumney <jasonr@gnu.org>
7267
7268 * makefile.w32-in: Always include w32font.c in the build.
7269 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
7270
72712008-03-04 Andreas Schwab <schwab@suse.de>
7272
7273 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
7274 (versionclean): Likewise.
7275
72762008-03-04 Juanma Barranquero <lekktu@gmail.com>
7277
7278 * .cvsignore: Add oo.
7279
72802008-03-03 Andreas Schwab <schwab@suse.de>
7281
7282 * coding.c (decode_coding_object): Inhibit gap shrinking while
7283 decoding in place.
7284
72852008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
7286
7287 * w32term.c: Remove unused include "gnu.h".
7288 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
7289
7290 * gnu.h: Rename to ...
7291 * emacs-icon.h: ... this.
7292 * xterm.c: Use emacs-icon.h instead of gnu.h.
7293 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
7294
72952008-03-03 Juanma Barranquero <lekktu@gmail.com>
7296
7297 * w32font.c: Include math.h.
7298
72992008-03-03 Jason Rumney <jasonr@gnu.org>
7300
7301 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
7302 Compute options separately.
7303 (w32font_open_internal): Set glyph_idx before caching metrics.
7304
7305 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
7306 Define if system headers don't.
7307 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
7308 (w32font_encode_char): Don't declare here.
7309
7310 * w32font.c (Quniscribe, QCformat): New symbols.
7311 (syms_of_w32font): Define them.
7312 (w32font_has_char): Indicate uncertainty.
7313 (w32font_encode_char): Encode as glyph point. Make static.
7314 (recompute_cached_metrics): New function.
7315 (w32font_open_internal): Use it. Set font to use glyph points
7316 initially. Set format based on type of font.
7317 (w32font_text_extents, w32font_draw): Optionally use glyph points.
7318 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
7319 on it. Set format based on information available here.
7320 (add_font_entity_to_list): Identify backend based on opentype_only.
7321
73222008-03-02 Andreas Schwab <schwab@suse.de>
7323
7324 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
7325
7326 * coding.c (decode_coding_big5, produce_chars):
7327 Fix typos in last change.
7328
73292008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
7330
7331 * gnu.h: New icon.
7332
73332008-03-02 Kenichi Handa <handa@m17n.org>
7334
7335 * coding.c (decode_coding_utf_8): When eol-type of CODING is
7336 `dos', don't decode '\r' if that is the last in the source.
7337 (decode_coding_utf_16, decode_coding_emacs_mule)
7338 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
7339 (decode_coding_raw_text, decode_coding_charset): Likewise.
7340 (produce_chars): Don't decode EOL here. Use EMACS_INT.
7341
73422008-03-01 Jason Rumney <jasonr@gnu.org>
7343
7344 * w32font.c (w32font_full_name): Report point size for scalable fonts.
7345
73462008-03-01 Kim F. Storm <storm@cua.dk>
7347
7348 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
7349
73502008-03-01 Jason Rumney <jasonr@gnu.org>
7351
7352 * w32font.c (w32font_full_name): New function.
7353 (w32font_open_internal): Use it.
7354
73552008-03-01 Kim F. Storm <storm@cua.dk>
7356
7357 * dispnew.c (line_draw_cost): Fix invalid glyph check.
7358
73592008-03-01 Jason Rumney <jasonr@gnu.org>
7360
7361 * font.c (font_unparse_fcname): Increase len when style is a symbol.
7362
73632008-03-01 Jan Djärv <jan.h.d@swipnet.se>
7364
7365 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
7366 xg_frame_resized when the event is for the edit widget.
7367
7368 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
7369
7370 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
7371 set_char_size.
7372 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
7373 operations on widgets here. Just set frame size if needed.
7374 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
7375 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
7376 (x_wm_set_size_hint): Set size hints on the edit widget only, not
7377 the whole frame.
7378 (xg_create_tool_bar): Move attachment of the tool bar to
7379 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
7380 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
7381
73822008-03-01 Jason Rumney <jasonr@gnu.org>
7383
7384 * w32fns.c (w32_msg_pump): Disable debug code.
7385
73862008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7387
7388 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
7389
73902008-02-29 Chong Yidong <cyd@stupidchicken.com>
7391
7392 * xdisp.c (next_overlay_string): Don't set
7393 overlay_strings_at_end_processed_p if we're currently reading from
7394 a display string.
7395
73962008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
7397
7398 * xdisp.c (get_overlay_strings_1): Fix typo.
7399
74002008-02-29 Chong Yidong <cyd@stupidchicken.com>
7401
7402 * xdisp.c (get_overlay_strings_1): Add missing argument type.
7403
74042008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
7405
7406 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
7407
7408 * xdisp.c (display_mode_element): Cancel the previous change.
7409 (decode_mode_spec): Likewise.
7410 (handle_auto_composed_prop): Don't make composition if it->string
7411 is a string.
7412
74132008-02-27 Kim F. Storm <storm@cua.dk>
7414
7415 * lisp.h (GLYPH): Change type from int to struct with separate char
7416 and face_id members.
7417 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
7418 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
7419 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
7420 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
7421 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
7422 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
7423 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
7424 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
7425 handle new Lisp glyph code encoding, either an integer or a cons.
7426
7427 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
7428 (GLYPH_ALIAS): Delete.
7429 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
7430 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
7431 (GLYPH_FROM_CHAR): Replace macro by ...
7432 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
7433
7434 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
7435 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
7436 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
7437 (GLYPH_INVALID_P): New macro.
7438 (spec_glyph_lookup_face): Update prototype.
7439
7440 * dispnew.c (line_draw_cost): Adapt to new glyph type.
7441 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
7442 new glyph code encoding.
7443 (spec_glyph_lookup_face): No return value; update passed glyph instead.
7444 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
7445
7446 * xdisp.c (get_next_display_element, next_element_from_display_vector):
7447 Adapt to new glyph type and new glyph code encoding.
7448
7449 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
7450
7451 * indent.c (current_column, current_column_1, Fmove_to_column)
7452 (compute_motion): Adapt to new glyph code encoding.
7453
7454 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
7455
74562008-02-27 Chong Yidong <cyd@stupidchicken.com>
7457
7458 * process.c (wait_reading_process_output): Check for window
7459 changes caused by timers.
7460 Suggested by Johan Bockgård.
7461
74622008-02-27 Glenn Morris <rgm@gnu.org>
7463
7464 * emacs.c (USAGE1): Add `--disable-font-backend'.
7465
74662008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
7467
7468 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
7469 is made to the buffer.
7470
74712008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
7472
7473 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
7474 (face_at_string_position):
7475 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
7476 (face_at_string_position):
7477 * xdisp.c (display_string, next_overlay_change):
7478 * buffer.h (overlays_at):
7479 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
7480 Update callers.
7481
74822008-02-26 Chong Yidong <cyd@stupidchicken.com>
7483
7484 * editfns.c (Fformat): Doc fix.
7485
74862008-02-26 Juanma Barranquero <lekktu@gmail.com>
7487
7488 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
7489 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
7490 (Ffont_otf_alternates, Fquery_font): Doc fixes.
7491
74922008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7493
7494 * buffer.c (Fbuffer_swap_text): New function.
7495 (syms_of_buffer): Defsubr it.
7496
74972008-02-25 Chong Yidong <cyd@stupidchicken.com>
7498
7499 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
7500
75012008-02-25 Jason Rumney <jasonr@gnu.org>
7502
7503 * w32font.c (w32font_draw): Draw one character at a time when padding.
7504
75052008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
7506
7507 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
7508 Handle a nil arg. Use run_window_configuration_change_hook.
7509 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
7510 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
7511 Use run_window_configuration_change_hook.
7512
75132008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7514
7515 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
7516 1-pixel width.
7517
75182008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
7519
7520 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
7521 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
7522 if the glyph in the font is zero pixel with.
7523
7524 * dispextern.h (struct glyph_string): New member padding_p.
7525
7526 * w32font.c (w32font_draw): Pay attention to s->padding_p.
7527
7528 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
7529
7530 * xfont.c (xfont_draw): Pay attention to s->padding_p.
7531
7532 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
7533
7534 * font.c: If the font driver doesn't have `shape' function, return Qnil.
7535
75362008-02-25 Jason Rumney <jasonr@gnu.org>
7537
7538 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
7539
75402008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
7541
7542 Allow fine-grained image-cache flushing.
7543 * dispextern.h (struct image): Add `dependencies' field.
7544 (clear_image_caches): Change arg to Lisp_Object.
7545 * image.c (make_image): Initialize `dependencies' field.
7546 (clear_image_cache): Change arg to allow fine-grained flushing.
7547 Perform the flush even if image-cache-eviction-delay is nil.
7548 (clear_image_caches): Change arg to Lisp_Object.
7549 (Fclear_image_cache): Expand meaning of the argument.
7550 (mark_image): Mark `dependencies' field.
7551 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
7552 (lface_hash): Use XHASH rather than XFASTINT.
7553 (face_at_buffer_position): Fix int -> EMACS_INT position.
7554 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
7555 (select_frame_for_redisplay): Remove code duplication.
7556 (redisplay_internal): Adapt arg to call to clear_image_caches.
7557
75582008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
7559
7560 * s/vms4-0.h:
7561 * s/vms4-2.h:
7562 * s/vms4-4.h:
7563 * s/vms5-5.h: Remove, unused.
7564
7565 * s/irix5-2.h:
7566 * s/irix6-0.h:
7567 * s/riscos5.h:
7568 * s/mach-bsd4-3.h:
7569 * m/mips4.h: Remove files for obsolete systems.
7570
7571 * Makefile.in:
7572 * filelock.c:
7573 * unexmips.c:
7574 * m/hp9000s300.h:
7575 * m/iris4d.h:
7576 * s/aix3-1.h:
7577 * s/hpux.h:
7578 * s/msdos.h:
7579 * s/usg5-0.h:
7580 * s/usg5-2-2.h:
7581 * s/usg5-2.h:
7582 * s/usg5-3.h: Remove references to obsolete variables.
7583
7584 * s/irix5-0.h: Remove, move all the contents ...
7585 * s/irix6-5.h: ... here. Simplify.
7586 * config.in: Regenerate.
7587
75882008-02-24 Jason Rumney <jasonr@gnu.org>
7589
7590 * w32term.c (x_draw_glyph_string_background): Clear the background
7591 manually when cleartype is in use.
7592 (x_draw_glyph_string_foreground): Draw text transparently when
7593 cleartype is in use.
7594
7595 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
7596 a font into it unless we have to.
7597
75982008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7599
7600 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
7601 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 7602
aac0c6e3
MR
76032008-02-18 Jason Rumney <jasonr@gnu.org>
7604
7605 * w32fns.c (Fw32_shell_execute): Encode parameters.
7606
76072008-02-09 Eli Zaretskii <eliz@gnu.org>
7608
7609 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
7610
76112008-02-05 Juanma Barranquero <lekktu@gmail.com>
7612
7613 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
7614
76152008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
7616
7617 * xterm.c (x_set_offset): Don't change the gravity if
7618 CHANGE_GRAVITY is -1.
7619
76202008-02-23 Chong Yidong <cyd@stupidchicken.com>
7621
7622 * fileio.c (auto_save_error_occurred): New var.
7623 (auto_save_error): Set it.
7624 (Fdo_auto_save): Don't overwrite the error message if an auto-save
7625 error occurred.
7626
76272008-02-23 Eli Zaretskii <eliz@gnu.org>
7628
7629 * w32.c (globals_of_w32): Add initializations for
7630 g_b_init_get_sid_sub_authority and
7631 g_b_init_get_sid_sub_authority_count.
7632
76332008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
7634
7635 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
7636 (font_parse_xlfd): Use them for sanity check.
7637 (Finternal_set_font_style_table): Make sure the table is bijective.
7638
7639 Consolidate the image_cache to the terminal struct.
7640 * termhooks.h (P_): Remove redundant def.
7641 (struct terminal): New field `image_cache'.
7642 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
7643 of FRAME_X_IMAGE_CACHE.
7644 * xterm.h (struct x_display_info): Remove image_cache field.
7645 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7646 * w32term.h (struct w32_display_info): Remove image_cache field.
7647 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7648 * macterm.h (struct mac_display_info): Remove image_cache field.
7649 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
7650 * xterm.c (x_term_init):
7651 * w32term.c (w32_term_init):
7652 * macterm.c (mac_term_init): Set the image_cache in the terminal.
7653 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
7654 Remove declarations.
7655 (clear_image_caches, mark_image_cache): New declarations.
7656 * xfaces.c (clear_face_cache):
7657 * xdisp.c (redisplay_internal): Use clear_image_caches.
7658 * image.c (clear_image_cache): Don't check that a frame is on
7659 a window-system before checking if it shares the same cache.
7660 (clear_image_caches): New function.
7661 (Fclear_image_cache): Use it.
7662 (mark_image): Move from allo.c.
7663 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
7664 * alloc.c (mark_image, mark_image_cache): Move to image.c.
7665 (mark_object): Don't call mark_image_cache for frames.
7666 (mark_terminals): Call mark_image_cache.
7667
7668 * lisp.h (Fdelete_terminal): Declare.
7669
7670 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
7671 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
7672 wrong_type_argument.
7673
76742008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
7675
7676 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
7677 malayalam.el, and tamil.el. Add sinhala.el.
7678
76792008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
7680
7681 * xterm.c (x_connection_closed): Consolidate identical tests.
7682 (x_delete_terminal): Don't crash if called via x_connection_closed.
7683
76842008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
7685
7686 * xdisp.c (decode_mode_spec): New arg string.
7687 (display_mode_element): Adjust for the above change.
7688
76892008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
7690
7691 * callint.c (Fcall_interactively): Use AREF.
7692
76932008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
7694
7695 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
7696
76972008-02-18 Jan Djärv <jan.h.d@swipnet.se>
7698
7699 * xfns.c (Fx_show_tip): Set string to " " if empty.
7700
77012008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
7702
7703 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
7704 with Qt.
7705
77062008-02-17 Kenichi Handa <handa@m17n.org>
7707
7708 * ftfont.c (ftfont_shape): Return Lispy number.
7709
7710 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
7711 for GCs.
7712 (Finternal_set_font_selection_order): Call font_update_sort_order
7713 only when enable_font_backend is set.
7714 (realize_x_face): Set face->font_info to that of default face only
7715 when enable_font_backend is set.
7716
7717 * xdisp.c (handle_composition_prop): Set it->c to the fist
7718 character of the composed region.
7719 (fill_composite_glyph_string): Set base_face->font_info to
7720 s->font_info. Get a face for ascii from base_face->ascii_face.
7721 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
7722 with a face already decided.
7723 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
7724 non-negative.
7725 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
7726 call font_prepare_composition unconditionally.
7727
7728 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
7729
7730 * xterm.h (struct x_display_info): New member font.
7731
7732 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
7733 (x_set_mouse_face_gc, x_new_font): Likewise.
7734 (x_term_init): Setup display_info->font.
7735 (x_delete_terminal): Free display_info->font.
7736
7737 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
7738
7739 * ftxfont.c (ftxfont_default_fid): Delete it.
7740 (ftxfont_open): Set xfont->fid to 0.
7741 (ftxfont_end_for_frame): Clear data specific to the frame and the
7742 font-driver.
7743
7744 * xftfont.c (xftfont_default_fid): Delete it.
7745 (xftfont_open): Set xfont->fid to 0.
7746
7747 * fontset.c (FONTSET_OBJLIST): New macro.
7748 (fontset_find_font): Update font-object list of the fontset.
7749 (free_realized_fontset): New function.
7750 (free_face_fontset): Call free_realized_fontset.
7751 (Ffont_info): Call font_close_object only when enable_font_backend
7752 is set.
7753
7754 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
7755 [HAVE_NTGUI]: Include w32term.h.
7756 [MAC_OS]: Include macterm.ch.
7757 (font_otf_ValueRecord): Use make_number.
7758 (font_finish_cache): Fix handling of reference count.
7759 (font_clear_cache): Update num_fonts.
7760 (font_open_entity): Update smallest_char_width and
7761 smallest_font_height of the frame.
7762 (font_close_object): Update num_fonts.
7763 (Fclear_font_cache): Fix finding the target cache data.
7764
77652008-02-16 Glenn Morris <rgm@gnu.org>
7766
7767 * fontset.c (Finternal_char_font): Fix compilation warning.
7768
77692008-02-16 Eli Zaretskii <eliz@gnu.org>
7770
7771 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
7772 instead of char arrays. Enlarge the size of array passed to
7773 get_token_information.
7774
7775 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
7776 warnings.
7777
77782008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
7779
7780 * .gdbinit: Don't set `args', it breaks gdb --args.
7781
77822008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
7783
7784 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
7785 within a narrowed buffer.
7786
77872008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
7788
7789 * coding.c (decode_coding_object, encode_coding_object):
7790 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
7791
77922008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
7793
7794 * coding.c (coding_set_destination): Use BEG_BYTE rather than
7795 hardcoding 1.
7796 (detect_coding_system):
7797 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
7798 (string_char_to_byte, string_byte_to_char, insert_from_gap):
7799 * insdel.c (insert_from_gap):
7800 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
7801 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
7802 (string_to_multibyte):
7803 * character.c (chars_in_text, multibyte_chars_in_text):
7804 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
7805
7806 * character.h (FETCH_STRING_CHAR_ADVANCE)
7807 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
7808 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
7809 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
7810
7811 * casefiddle.c (casify_region): Only call after-change and composition
7812 functions on the part of the region that was changed.
7813
7814 * keyboard.c (read_avail_input):
7815 * frame.c (Fdelete_frame): Call Fdelete_terminal.
7816
78172008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7818
7819 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
7820 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
7821
78222008-02-11 Juanma Barranquero <lekktu@gmail.com>
7823
7824 * w32menu.c (push_submenu_start, push_submenu_end)
7825 (push_left_right_boundary, push_menu_pane, push_menu_item):
7826 * keyboard.c (read_key_sequence): Don't pass args with side effects
7827 to AREF, it fails when compiling with -DENABLE_CHECKING.
7828
78292008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
7830
7831 * Makefile.in (${lispsource}international/charprop.el):
7832 Delete this target.
7833
7834 * search.c (boyer_moore): Fix incorrect synching of the trunk and
7835 emacs-unicode-2.
7836
78372008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
7838
7839 * terminal.c (Fdelete_terminal): Clean up the `force' path.
7840
78412008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7842
7843 * frame.c (Qnoelisp): New symbol.
7844 (syms_of_frame): Initialize it.
7845 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
7846 harmless Elisp code, from a strong `force' from x_connection_closed.
7847 * frame.h (Qnoelisp): Declare.
7848 * xterm.c (x_connection_closed): Pass `noelisp'.
7849
7850 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
7851 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
7852 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
7853 rather than `int' for the type of `type'.
7854
78552008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
7856
7857 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
7858
7859 * Makefile.in (GNUC): Remove support for gcc-1.x.
7860
78612008-02-10 Richard Stallman <rms@gnu.org>
7862
7863 * lisp.h (ASET): Use AREF, not ASLOT.
7864
78652008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
7866
7867 * lisp.h (ASET): Check bounds.
7868
78692008-02-10 Glenn Morris <rgm@gnu.org>
7870
7871 * buffer.c (mode-name): Doc fix.
7872
78732008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7874
7875 * Makefile.in:
7876 * emacs.c:
7877 * gmalloc.c:
7878 * keyboard.c:
7879 * lisp.h:
7880 * m/ibm370aix.h:
7881 * process.c:
7882 * regex.c:
7883 * s/hpux.h:
7884 * sysdep.c:
7885 * sysselect.h:
7886 * systty.h:
7887 * unexec.c:
7888 * w32term.c:
7889 * xsmfns.c:
7890 * xterm.c: Remove code that deals with obsolete variables.
7891
7892 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
7893
7894 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
7895 nothing else needs it anymore.
7896
78972008-02-09 Eli Zaretskii <eliz@gnu.org>
7898
7899 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
7900 instead of unibyte_char_to_multibyte.
7901
79022008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
7903
7904 * s/gnu-linux.h: Remove commented out code.
7905
7906 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
7907
7908 * Makefile.in: Update what RMS says about using autoconf.
7909 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
7910 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
7911 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
7912 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
7913
79142008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
7915
7916 * keymap.c (Fkey_description): Move side effect outside of macro call.
7917
7918 * xfaces.c (Finternal_make_lisp_face):
7919 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
7920
7921 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
7922 (syms_of_fontset): Use ASET.
7923
7924 * fns.c (concat): Move side effect outside of macro call.
7925 (hash_clear): Use ASET.
7926
79272008-02-08 Richard Stallman <rms@gnu.org>
7928
7929 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
7930 If FORCE, and frame has a surrogate minibuffer for another frame,
7931 delete the other frame first.
7932
79332008-02-07 Timo Savola <timo.savola@iki.fi>
7934
7935 * xterm.c (x_detect_focus_change): Handle embed client message.
7936 (handle_one_xevent): Ditto.
7937 (handle_one_xevent): If embedded and we get a button press/release,
7938 request focus.
7939 (xembed_set_info, xembed_send_message): New functions.
7940 (x_make_frame_visible): Call xembed_set_info if embedded.
7941 (x_make_frame_invisible): Call xembed_set_info if embedded.
7942 (x_term_init): Initialize Xatom_XEMBED.
7943 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
7944 (x_iconify_frame): Ditto.
7945
7946 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
7947 (enum xembed_info, enum xembed_message, enum xembed_focus)
7948 (enum xembed_modifier, enum xembed_accelerator): New.
7949 (xembed_set_info, xembed_send_message): Declare.
7950 (FRAME_X_EMBEDDED_P): New.
7951
7952 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
7953 gtk_plug_new.
7954
7955 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
7956 window ID of a frame.
7957 (x_window): Reparent frame if embedded.
7958 (Fx_create_frame): Don't set border width if embedded.
7959
7960 * emacs.c (USAGE3): Add --parent-id.
7961 (standard_args): Ditto.
7962
79632008-02-07 Jan Djärv <jan.h.d@swipnet.se>
7964
7965 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
7966
79672008-02-07 Jim Meyering <meyering@redhat.com>
7968
7969 Use "do...while (0)", not "if (1)...else" in macro definitions.
7970 The latter provokes a warning from gcc about the empty else, when
7971 followed by ";". Also, without that trailing semicolon, it would
7972 silently swallow up any following statement.
7973 * syntax.h (SETUP_SYNTAX_TABLE)
7974 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
7975 * buffer.h (DECODE_POSITION): Likewise.
7976 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
7977 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
7978 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
7979 (FETCH_CHAR_ADVANCE): Likewise.
7980 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
7981
79822008-02-07 Jim Meyering <meyering@redhat.com>
7983
7984 * lread.c [lint]: Don't include <sys/inode.h>.
7985
79862008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
7987
7988 * xselect.c (x_handle_dnd_message):
7989 * xmenu.c (digest_single_submenu, xmenu_show):
7990 * xdisp.c (with_echo_area_buffer_unwind_data)
7991 (format_mode_line_unwind_data, unwind_format_mode_line)
7992 (display_menu_bar):
7993 * eval.c (Ffetch_bytecode):
7994 * doc.c (store_function_docstring):
7995 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
7996 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
7997 * buffer.c (add_overlay_mod_hooklist): Use ASET.
7998
79992008-02-07 Kenichi Handa <handa@m17n.org>
8000
8001 * ftxfont.c (ftxfont_open): Don't set
8002 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
8003
8004 * ftfont.c (ftfont_open): Fix previous change.
8005
80062008-02-06 Jason Rumney <jasonr@gnu.org>
8007
8008 * w32font.c (w32font_text_extents): Fill in lbearing metric.
8009 Use cached metrics for ASCII characters.
8010 (w32font_open_internal): Don't set font's owning_frame.
8011 Cache metrics for ASCII characters.
8012
8013 * w32font.h (struct w32font_info): Add ascii_metrics.
8014 Remove owning_frame.
8015
80162008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
8017
8018 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
8019 to negative value.
8020
8021 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
8022
8023 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
8024
8025 * charset.c (syms_of_charset): Set QCtest and Qeq.
8026
80272008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
8028
8029 * process.c (Fstart_process):
8030 * callproc.c (Fcall_process): Handle the case where
8031 Funhandled_file_name_directory returns nil.
8032
8033 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
8034 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
8035 * font.c (check_gstring): Use them and AREF to access the vector before
8036 we know it's really a gstring.
8037 (Ffont_shape_text): Fix typo.
8038 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Oject mixups.
8039
8040 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
8041 Declare.
8042
8043 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
8044
80452008-02-05 Jason Rumney <jasonr@gnu.org>
8046
8047 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
8048 Set smallest_font_height and smallest_char_width in display info.
8049
80502008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
8051
8052 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
8053
80542008-02-05 Miles Bader <miles@gnu.org>
8055
8056 * xfaces.c (get_lface_attributes, merge_named_face)
8057 (lookup_named_face, lookup_derived_face, realize_named_face):
8058 Revert 2008-02-01 change by cyd@stupidchicken.com.
8059
80602008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
8061
8062 * fontset.c (Ffontset_info): Handle the case of inhibitting the
8063 fallback fonts.
8064 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
8065
80662008-02-04 Jason Rumney <jasonr@gnu.org>
8067
8068 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
8069 set full_name.
8070 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
8071
80722008-02-03 Jason Rumney <jasonr@gnu.org>
8073
8074 * makefile.w32-in (OBJ1): Include font.o here.
8075 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
8076
80772008-02-02 Jason Rumney <jasonr@gnu.org>
8078
8079 * makefile.w32-in (temacs): Bump EMHEAP to 21.
8080
80812008-02-01 Jason Rumney <jasonr@gnu.org>
8082
8083 * s/cygwin.h: Define VIRT_ADDR_VARIES.
8084
8085 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
8086
80872008-02-01 Andreas Schwab <schwab@suse.de>
8088
8089 * Makefile.in (shortlisp, lisp): Update for rename of
8090 ../lisp/language/myanmar.el.
8091
80922008-02-01 Chong Yidong <cyd@stupidchicken.com>
8093
8094 * xfaces.c (get_lface_attributes): Delete function.
8095 (merge_named_face, lookup_named_face, lookup_derived_face)
8096 (realize_named_face): Call lface_from_face_name directly, and use
8097 the fact that merge_face_vectors does not alter its FROM argument.
8098
80992008-02-01 Jason Rumney <jasonr@gnu.org>
8100
8101 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
8102 input in the default locale. Handle non-Unicode multibyte input.
8103
81042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8105
8106 * fontset.c (reorder_font_vector): Exclude nil elements from the
8107 font group. Don't try multiple fonts.
8108 (fontset_font): Adjust for the above change.
8109 (Finternal_char_font): Return nil if the found font doesn't
8110 contain the character ch.
8111
8112 * Makefile.in (lisp, shortlisp): Add cham.el.
8113
81142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8115
8116 * font.h (FONTP): Make it return 1 also for a font-object.
8117
8118 * .gdbinit (xfontset): New function.
8119
8120 * font.c (font_find_for_lface): Check if the character C is
8121 supported or not only for the first font.
8122
8123 * fontset.c (reorder_font_vector): Fix typo.
8124 (fontset_find_font): Don't add a font-spec specifying a script.
8125 Use 0 (not Qt) for the indication of empty font-group. Change the
8126 format of RFONT-DEF. Return Qt if no font in the font-group
8127 support the character.
8128 (fontset_font): Adjust for the above change. If no font was
8129 found the character, remember that.
8130 (face_for_char): Adjust for the change of RFONT-DEF.
8131 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
8132 no font for the target.
8133 (Finternal_char_font): Adjust for the change of RFONT-DEF.
8134
81352008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8136
8137 * font.c (font_load_for_face): Handle the case that the font in
8138 face->lface is a string.
8139
81402008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8141
8142 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
8143
81442008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8145
8146 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
8147 Fix previous change. If the frame is not on a window system,
8148 signal an error.
8149
81502008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8151
8152 * coding.c (decode_coding_object, encode_coding_object): Adjust
8153 marker positions after conversion.
8154
8155 * lisp.h (struct Lisp_Marker): New member need_adjustment.
8156
81572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8158
8159 * font.c (font_find_for_lface): Fix the handling of the return
8160 value of font_has_char.
8161 (Ffont_shape_text): Fix previous change.
8162
8163 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
8164 (fontset_ref_and_range): Delete it.
8165 (fontset_find_font): Call char_table_ref_and_range instead of
8166 FONTSET_REF_AND_RANGE.
8167 (make_fontset): Don't setup font groups of Latin here.
8168 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
8169 (new_fontset_from_font): Make the specified font the default for
8170 all Latin characters.
8171
81722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8173
8174 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
8175 is on a window system before accessing the fontset of the frame.
8176
81772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8178
8179 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
8180
8181 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
8182 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
8183
8184 * font.c (Ffont_shape_text): If the font driver doesn't have a
8185 shaper function, make zero-width glyphs to have at least one-pixel
8186 width. Fix setting of `to' field of glyphs.
8187
81882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8189
8190 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
8191 glyphs.
8192
8193 * font.h (struct font_driver): Improve docstring of member `shape'.
8194
81952008-02-01 Kenichi Handa <handa@m17n.org>
8196
8197 * composite.c (syms_of_composite): Fix docstring of
8198 auto-composition-function.
8199
8200 * font.h (LGLYPH_SIZE): New macro.
8201
8202 * font.c (Ffont_fill_gstring): Stop filling when a character not
8203 supported by the font is found.
8204 (Ffont_shape_text): When a shape callback function returns nil,
8205 try at most two more times with larger gstring.
8206 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
8207
8208 * xdisp.c (handle_auto_composed_prop): Change the argument to
8209 auto-composition-function.
8210
8211 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
8212 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
8213 Lispy glyph and store it in the lgstring.
8214
8215 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
8216
8217 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
8218
82192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8220
8221 * font.c (Ffont_shape_text): Avoid unnecessary composition.
8222
8223 * fontset.c (Vfont_encoding_charset_alist): New variable.
8224 (syms_of_fontset): DEFVAR it.
8225 (reorder_font_vector, fontset_find_font): Optimize for the case of
8226 no need of reordering.
8227 (face_for_char): Map the charset property by
8228 Vfont_encoding_charset_alist.
8229
82302008-02-01 Jason Rumney <jasonr@gnu.org>
8231
8232 * w32font.c (logfonts_match): Don't check adstyle here.
8233 (font_matches_spec): Check here against physical font instead.
8234 (add_font_entity_to_list): Avoid some substitutions.
8235
8236 * font.c (font_parse_fcname): Default weight and slant to normal.
8237 (font_score): Prefer normal fonts if weight or slant unspecified.
8238 (font_score) [WINDOWSNT]: Scale weight difference down to closer
8239 match freetype scores.
8240
82412008-02-01 Jason Rumney <jasonr@gnu.org>
8242
8243 * w32font.c (w32font_text_extents): Don't use the frame stored in the
8244 font, as it may have been deleted.
8245 (w32_enumfont_pattern_entity): Map generic family to adstyle using
8246 most common hyphenless variation.
8247 (logfonts_match): Check generic family.
8248 (font_matches_spec): Don't check generic family here.
8249 (fill_in_logfont): Set generic family based on adstyle.
8250
8251 * w32font.h (w32font_get_cache): Update declaration.
8252
82532008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8254
8255 * ftfont.c (ftfont_get_cache): Adjust the argument type.
8256
8257 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
8258 If none of the new drivers are available, call font_update_drivers
8259 with the old drivers.
8260
8261 * w32font.c (w32font_get_cache): Adjust the argument type.
8262
8263 * xfont.c (xfont_get_cache): Adjust the argument type.
8264
8265 * font.h (struct font_driver): Change argument type of get_cache.
8266
8267 * xftfont.c (xftfont_start_for_frame): Delete prototype.
8268
8269 * font.c (Ffont_get): Fix arguments to Fassoc.
8270 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
8271 (font_clear_cache): New function.
8272 (font_list_entities, font_matching_entity): Use font_get_cache.
8273 (font_update_drivers): Call font_clear_cache when finishing a driver.
8274
8275 * fontset.c (fontset_find_font): Fix previous change.
8276
82772008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8278
8279 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
8280 dpyinfo->font_table.
8281 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
8282 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
8283
8284 * font.c (font_at): Handle the case that the arg C is negative.
8285 Handle the unibyte case.
8286 (Ffont_at): Call font_at with the arg C -1.
8287
8288 * xdisp.c (handle_auto_composed_prop): Don't get a character at
8289 the position here, and call font_at with the arg C -1.
8290 Don't check the range of the existing composition at the point.
8291
82922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8293
8294 * fontset.c (fontset_add): New args charset_id and family.
8295 Change caller.
8296 (load_font_get_repertory, fontset_find_font): Assume that
8297 font_spec is always a font-spec object.
8298 (Fset_fontset_font): Always store a font-spec object in a fontset.
8299
8300 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
8301 instead of get_property_and_range.
8302
83032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8304
8305 * xftfont.c (struct xftfont_info): Delete the member ft_face.
8306 (xftfont_open): Don't keep locking face.
8307 (xftfont_close): Don't unlock face.
8308 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
8309
8310 * fontset.c (fontset_find_font): Don't prefer a font of
8311 supplementary charset.
8312
83132008-02-01 Kenichi Handa <handa@m17n.org>
8314
8315 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
8316 script, langsys_tag to langsys, new member script.
8317 (OTF_TAG_STR): Terminate by '\0'.
8318 (ftfont_get_open_type_spec): If :otf prop is is spec, Limit the
8319 listing to the script specified in that property. Fix arg to
8320 OTF_check_features.
8321
83222008-02-01 Jason Rumney <jasonr@gnu.org>
8323
8324 * w32font.h: New file.
8325
8326 * w32font.c: Include it.
8327 (struct w32font_info): Add owning_frame field. Move to w32font.h.
8328 (w32font_open): Set owning_frame.
8329 (w32font_text_extents): Use owning_frame.
8330 (struct font_callback_data): Add opentype_only field.
8331 (add_font_entity_to_list): Use it to filter fonts.
8332 Don't check against full name.
8333 (w32font_list_internal): New function.
8334 (w32font_list): Use it.
8335 (w32font_match_internal): New function.
8336 (w32font_match): Use it.
8337 (w32font_open_internal): New function.
8338 (w32font_open): Use it.
8339 (w32font_get_cache, w32font_close, w32font_has_char)
8340 (w32font_encode_char, w32font_text_extents, w32font_draw):
8341 Make non-static.
8342
8343 * makefile.w32-in (w32font.o): Depend on w32font.h.
8344
83452008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8346
8347 * charset.c (Fdefine_charset_internal): Record a supplementary
8348 charset at the tail of Vcharset_order_list.
8349
8350 * font.c (Ffont_shape_text): Fix the return value.
8351
8352 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
8353
8354 * xdisp.c (handle_auto_composed_prop): Fix previous change.
8355
83562008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8357
8358 * ftfont.c (struct OpenTypeSpec): New struct.
8359 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
8360 (ftfont_get_open_type_spec): New function.
8361 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
8362
8363 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
8364
83652008-02-01 Jason Rumney <jasonr@gnu.org>
8366
8367 * w32font.c (add_font_entity_to_list): Compare only the beginning
8368 of full name.
8369
83702008-02-01 Kenichi Handa <handa@m17n.org>
8371
8372 * xdisp.c (handle_auto_composed_prop): Simplify the code.
8373 Never return HANDLED_RECOMPUTE_PROPS.
8374
83752008-02-01 Kenichi Handa <handa@m17n.org>
8376
8377 * font.c (font_gstring_produce): Delete it.
8378
8379 * composite.h (COMPOSITION_METHOD):
8380 Handle COMPOSITION_WITH_GLYPH_STRING.
8381
83822008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8383
8384 * xfont.c (Qx): Delete.
8385 (syms_of_xfont): Don't initialize Qx.
8386
8387 * composite.h (enum composition_method):
8388 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
8389
83902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8391
8392 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
8393 (choose_face_font): Accept new form of font-spec.
8394
8395 * frame.h (font_driver_list): Declare it unconditionally.
8396 (struct frame): Define members font_driver_list and font_data_list
8397 unconditionally.
8398
8399 * fontset.c: Include "font.h" unconditionally.
8400 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
8401 (Fset_fontset_font): Accept a font-spec object.
8402
8403 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
8404 PIXEL_SIZE part a wild card.
8405
8406 * dispextern.h (struct glyph_string): Define members clip and
8407 num_clips unconditionally.
8408 (struct face): Define members font_info and extra unconditionally.
8409
8410 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
8411 ftfont_info only when HAVE_LIBOTF is defined.
8412
84132008-02-01 Andreas Schwab <schwab@suse.de>
8414
8415 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
8416 and end.
8417
84182008-02-01 Jason Rumney <jasonr@gnu.org>
8419
8420 * w32font.c (w32font_driver): Add new fields.
8421
84222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8423
8424 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
8425 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
8426 (LIBES): Add @M17N_FLT_CFLAGS@.
8427
8428 * composite.c (compose_text): Don't treat the new style
8429 composition specially.
8430
8431 * emacs.c (main): Call syms_of_font unconditionally.
8432
8433 * font.h (FONT_ENTITY_NOT_LOADABLE)
8434 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
8435 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
8436 (struct font_driver): New member shape.
8437 (font_registry_charsets): Extern it.
8438 (font_find_for_lface, font_prepare_composition): Adjust prototype.
8439 (font_otf_capability, font_drive_otf): Delete their externs.
8440
8441 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
8442 (font_charset_alist, font_registry_charsets): Move from xfont.c
8443 and rename.
8444 (font_prop_validate_otf): New function.
8445 (font_property_table): Register it for QCotf.
8446 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
8447 (font_drive_otf): Delete.
8448 (font_prepare_composition): New arg F. Adjust for the change of
8449 lispy gstring.
8450 (font_find_for_lface): New arg C.
8451 (font_load_for_face): Adjust for the change of font_find_for_lface.
8452 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
8453 lispy gstring.
8454 (Ffont_shape_text): New function.
8455 (Fopen_font): If the font size is not given, use 12-pixel.
8456 (Ffont_at): New arg STRING.
8457 (syms_of_font): Initalize font_charset_alist.
8458 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
8459 conditionally.
8460
8461 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
8462 fonts of the same font-spec. Change the format of RFONT-DEF.
8463 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
8464 Adjust for the change of RFONT-DEF.
8465 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
8466
8467 * ftfont.h: New file.
8468
8469 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
8470 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8471 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8472 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
8473 font_otf_capability and font_drive_otf, set ftfont_shape.
8474 (ftfont_list): Adjust for the change of :otf property value.
8475 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
8476 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
8477 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
8478 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8479 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
8480 (otf_gstring, gstring, m17n_flt_initialized): New variables.
8481
8482 * w32term.c (x_draw_composite_glyph_string_foreground):
8483 Adjust for the change of lispy gstring.
8484
8485 * xdisp.c (handle_composition_prop): Adjust for the change of
8486 lispy gstring. Call a function for auto-composition with the
8487 third arg it->window.
8488 (fill_composite_glyph_string): Adjust for the change of lispy string.
8489 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
8490
8491 * xfaces.c (set_font_frame_param): Adjust for the change of
8492 font_find_for_lface.
8493
8494 * xfont.c (x_font_charset_alist): Move to font.c and rename.
8495 (xfont_registry_charsets): Likewise. Change caller.
8496 (syms_of_xfont): Don't handle x_font_charset_alist.
8497
8498 * xftfont.c: Include "ftfont.h".
8499 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
8500 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
8501 (xftfont_close) [HAVE_LIBOTF]: Close otf.
8502 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
8503 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
8504 Set xftfont_driver.shape to xftfont_shape.
8505
8506 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8507 the change of lispy gstring.
8508
85092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8510
8511 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
8512
85132008-02-01 Jason Rumney <jasonr@gnu.org>
8514
8515 * w32font.c (w32font_draw): Fill background manually.
8516
85172008-02-01 Jason Rumney <jasonr@gnu.org>
8518
8519 * font.c (Qfontp): Remove unused symbol.
8520 (QCantialias): New symbol.
8521 (syms_of_font): Define it.
8522 (font_property_table): Set a validator for QCantialias.
8523
8524 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
8525 Define if not already.
8526 (QCfamily): Share with xfaces.c.
8527 (Qstandard, Qsubpixel, Qnatural): New symbols.
8528 (syms_of_w32font): Define them. Don't define QCfamily here.
8529 (w32_antialias_type, lispy_antialias_type): New functions.
8530 (w32_enumfont_pattern_entity): New arg requested_font.
8531 Set antialias parameter if non-default was requested.
8532 (fill_in_logfont): Fill in lfQuality if :antialias specified.
8533
85342008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8535
8536 * lread.c (read1): Undo the previous change.
8537
85382008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
8539
8540 * frame.c (Fdelete_frame): Call font_update_drivers only when
8541 USE_FONT_BACKEND is defined.
8542
85432008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8544
8545 * font.h (struct font_bitmap): New member bits_per_pixel.
8546 (struct font_driver): New members start_for_frame and end_for_frame.
8547 (struct font_data_list): New struct.
8548 (font_put_frame_data, font_get_frame_data): Extern them.
8549
8550 * frame.h (struct frame): New member font_data_list.
8551
8552 * font.c (font_update_drivers): Call driver->start_for_frame and
8553 driver->end_for_frame at proper timings.
8554 (font_put_frame_data, font_get_frame_data): New functions.
8555 (Ffont_spec): Add usage in the docstring.
8556
8557 * frame.c (make_frame): Initialize f->font_data_list to NULL.
8558 (Fdelete_frame): Call font_update_drivers.
8559
8560 * xftfont.c (struct xftface_info): Delete the member xft_draw.
8561 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
8562 (xftfont_get_xft_draw): New function.
8563 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
8564 (xftfont_end_for_frame): New function.
8565 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
8566
8567 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
8568 Change argument. Cache GCs in the per-frame data.
8569 (struct ftxfont_frame_data): New struct.
8570 (ftxfont_draw_bitmap): New arg gc_fore and flush.
8571 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
8572 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
8573 (ftxfont_end_for_frame): New function.
8574 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
8575
8576 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
8577
85782008-02-01 Kenichi Handa <handa@m17n.org>
8579
8580 * xselect.c (Vselection_coding_system)
8581 (Vnext_selection_coding_system): Delete them.
8582 (syms_of_xselect): Don't declare selection-coding-system and
8583 next-selection-coding-system. They are declared in select.el.
8584
85852008-02-01 Jason Rumney <jasonr@gnu.org>
8586
8587 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
8588
8589 * w32fns.c: Include imm.h.
8590 (get_composition_string_fn, get_ime_context_fn): New optional
8591 system functions.
8592 (globals_of_w32fns): Load them from imm32.dll.
8593 (ignore_ime_char): New flag.
8594 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
8595 WM_IME_ENDCOMPOSITION messages.
8596
8597 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
8598 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
8599
86002008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8601
8602 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
8603 (READCHAR_REPORT_MULTIBYTE): New macro.
8604 (readchar): New 2nd arg MULTIBYTE.
8605 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
8606 Make symbol's name multibyte according to the multibyteness of the
8607 source.
8608
86092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8610
8611 * xfaces.c (face_for_overlay_string): Call lookup_face with
8612 correct arguments (fix of synching with the trunk).
8613
86142008-02-01 Kenichi Handa <handa@m17n.org>
8615
8616 * font.c (font_prop_validate_symbol, font_prop_validate_style)
8617 (font_prop_validate_non_neg, font_prop_validate_spacing):
8618 Delete argument prop_index.
8619 (font_property_table): Change arguments to validater. Change Callers.
8620 (font_lispy_object): Delete.
8621 (font_at): Use font_find_object instead fo font_lispy_object.
8622
86232008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
8624
8625 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
8626 and file names.
8627
86282008-02-01 Jason Rumney <jasonr@gnu.org>
8629
8630 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
8631 (font_matches_spec): Remove debug output.
8632 (add_font_entity_to_list): Avoid using substituted fonts.
8633
86342008-02-01 Jason Rumney <jasonr@gnu.org>
8635
8636 * doc.c (Fsnarf_documentation):
8637 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
8638
86392008-02-01 Miles Bader <miles@gnu.org>
8640
8641 * dispextern.h (struct glyph_row): Only define "clip" field if
8642 HAVE_WINDOW_SYSTEM is defined.
8643
86442008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8645
8646 Fix up multi-tty merge.
8647
8648 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
8649 and indentation.
8650
8651 * xfaces.c (free_realized_face, clear_face_gcs):
8652 Include font_done_for_face in the input_blocked section, just in case.
8653
8654 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
8655 (get_char_face_and_encoding): Undo last change and remove the *other*
8656 duplicate definition (i.e. keep the one that's better scoped and that
8657 includes code for the font-backend).
8658
8659 * terminal.c (create_terminal): Default keyboard_coding to
8660 `no-conversion' and terminal_coding to `undecided'.
8661
8662 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
8663
8664 * fontset.c (free_realized_fontsets): Check that the table entry does
8665 contain a fontset before trying to compare it to `base'.
8666
8667 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
8668 syms_of_charset, and syms_of_coding earlier because init_window_once
8669 now needs Vcoding_system_hash_table to be setup.
8670
8671 * coding.h (default_buffer_file_coding): Remove.
8672
8673 * coding.c (default_buffer_file_coding): Remove.
8674 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
8675 than ->symbol, and use the terminal-local coding system.
8676 (syms_of_coding): Don't setup the coding-systems that are not
8677 terminal-local.
8678 (Fdefine_coding_system_internal): Use XCAR/XCDR.
8679
8680 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
8681 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
8682
8683 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
8684 in chartab.c and were re-added here by mistake.
8685 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
8686
8687 * doc.c (Fsnarf_documentation):
8688 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
8689 src to etc.
8690
8691 * ChangeLog.10: Add mistakenly removed entry.
8692
86932008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
8694
8695 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
8696
86972008-02-01 Miles Bader <miles@gnu.org>
8698
8699 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
8700 Add extra args to FACE_FOR_CHAR.
8701
87022008-02-01 Kenichi Handa <handa@m17n.org>
8703
8704 * keymap.c (where_is_internal_1): If key is a cons, store the copy
8705 in sequence.
8706
8707 * chartab.c (map_sub_char_table, map_char_table): If the range
8708 contains just one character, call the function with that character
8709 even if the depth is not 3.
8710
87112008-02-01 Jason Rumney <jasonr@gnu.org>
8712
8713 * w32font.c (w32font_text_extents): Calculate metrics for the
8714 whole string.
8715
87162008-02-01 Jason Rumney <jasonr@gnu.org>
8717
8718 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
8719
87202008-02-01 Jason Rumney <jasonr@gnu.org>
8721
8722 * w32term.c (x_set_glyph_string_clipping): Use
8723 get_glyph_string_clip_rects.
8724 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8725 Adjust for the change of struct glyph_string.
8726
8727 * w32font.c (w32font_draw): Do clipping here.
8728
87292008-02-01 Kenichi Handa <handa@m17n.org>
8730
8731 * xftfont.c (xftfont_draw): Adjust for the change of struct
8732 glyph_string.
8733
8734 * xterm.c (x_set_glyph_string_clipping): Use
8735 get_glyph_string_clip_rects.
8736 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
8737 Adjust for the change of struct glyph_string.
8738
8739 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
8740 the resulting clip(s}.
8741 (expose_overlaps): Add arg r. Change callers. Set it to
8742 row->clip temporarily.
8743 (expose_window): Redraw rows overlapping the exposed area.
8744
8745 * dispextern.h (struct glyph_row): New member clip.
8746 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
8747 clip_height, new member clip, and num_clips.
8748
87492008-02-01 Kenichi Handa <handa@m17n.org>
8750
8751 * data.c (Fchar_or_string_p): Fix docstring.
8752
87532008-02-01 Kenichi Handa <handa@m17n.org>
8754
8755 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
8756 create a temporary XftDraw object.
8757
87582008-02-01 Kenichi Handa <handa@m17n.org>
8759
8760 * font.c (Ffontp): Fix docstring.
8761
8762 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
8763 strong evidence of ISO-2022.
8764
87652008-02-01 Kenichi Handa <handa@m17n.org>
8766
8767 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
8768 SYNTAX_ENTRY_FOLLOW_PARENT.
8769
87702008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
8771
8772 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
8773 its type.
8774 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
8775 Update to the new type of weak_hash_tables and next_weak.
8776
8777 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
8778 a plain C pointer to Lisp_Hash_Table.
8779
8780 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
8781 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
8782 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
8783 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
8784 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
8785 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
8786 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
8787 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
8788 (GC_EQ): Remove since they've been identical to their non-GC_
8789 alter-egos ever since the markbit was eradicated.
8790
8791 * alloc.c:
8792 * buffer.c:
8793 * buffer.h:
8794 * data.c:
8795 * fileio.c:
8796 * filelock.c:
8797 * fns.c:
8798 * frame.h:
8799 * lisp.h:
8800 * macterm.c:
8801 * print.c:
8802 * process.c:
8803 * w32fns.c:
8804 * w32menu.c:
8805 * w32term.c:
8806 * xfns.c:
8807 * xmenu.c:
8808 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
8809
88102008-02-01 Kenichi Handa <handa@m17n.org>
8811
8812 * chartab.c (map_sub_char_table): Make it work for the top-level
8813 char-table. Fix handling of parent char-table.
8814 (map_char_table): Adjust for the above change.
8815
88162008-02-01 Jason Rumney <jasonr@gnu.org>
8817
8818 * w32font.c (Qgdi): Rename from Qw32.
8819
88202008-02-01 Jason Rumney <jasonr@gnu.org>
8821
8822 * w32bdf.c (get_quoted_string): Make function static.
8823
88242008-02-01 Kenichi Handa <handa@m17n.org>
8825
8826 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
8827 bigger ascent and descent than those of the font, use them as
8828 font's ascent and descent.
8829
88302008-02-01 Kenichi Handa <handa@m17n.org>
8831
8832 * Makefile.in (${lispsource}international/charprop.el): Move this
8833 target within "#ifdef HAVE_UNIDATA" and "#endif".
8834
88352008-02-01 Kenichi Handa <handa@m17n.org>
8836
8837 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
8838 (shortlisp): Add ../lisp/language/tai-viet.el.
8839
88402008-02-01 Ulrich Mueller <ulm@gentoo.org>
8841
8842 * Makefile.in (${lispsource}international/charprop.el): Depend on
8843 temacs${EXEEXT}.
8844
88452008-02-01 Jason Rumney <jasonr@gnu.org>
8846
8847 * w32font.c (w32font_close): Delete the GDI font object.
8848
8849 * w32menu.c: Include character.h.
8850
8851 * w32proc.c: Likewise.
8852
8853 * w32select.c: Likewise.
8854
8855 * makefile.w32-in (w32proc.o): Depend on character.h.
8856
88572008-02-01 Jason Rumney <jasonr@gnu.org>
8858
8859 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
8860
8861 * w32menu.c (syms_of_w32menu): Likewise.
8862
8863 * w32proc.c (syms_of_ntproc): Likewise.
8864
8865 * w32select.c (syms_of_w32select): Likewise.
8866
8867 * w32term.c (syms_of_w32term): Likewise.
8868
88692008-02-01 Jason Rumney <jasonr@gnu.org>
8870
8871 * w32font.c (w32font_draw): Delete brush after using it.
8872
88732008-02-01 Jason Rumney <jasonr@gnu.org>
8874
8875 * w32font.c (w32font_open): Don't set font_idx.
8876 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
8877 to font settings.
8878 (w32font_draw): Fill background explicitly.
8879
88802008-02-01 Jason Rumney <jasonr@gnu.org>
8881
8882 * w32term.c (w32_initialize): Don't call w32font_initialize.
8883
8884 * w32font.c (w32font_info): Remove subranges.
8885 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
8886 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
8887 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
8888 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
8889 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
8890 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
8891 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
8892 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
8893 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
8894 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
8895 New symbols.
8896 (font_callback_data): New struct.
8897 (w32font_list, w32font_match): Use it.
8898 (w32font_open): Don't populate subranges.
8899 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
8900 (w32font_encode_char): Always return unicode code-point as-is.
8901 (w32font_text_extents): Supply a transformation matrix to
8902 GetGlyphOutline. Never look up by glyph index. Avoid looping
8903 twice. Use unicode version of GetTexExtentPoint32 instead of
8904 glyph index version.
8905 (set_fonts_frame): Remove.
8906 (w32_enumfont_pattern_entity): Add frame parameter, use it to
8907 set frame parameter. Use backward compatible fake foundries.
8908 Save generic family in extra slot under QCfamily. Make width slot
8909 constant. Save QCspacing value. Save list of scripts instead of
8910 binary subranges.
8911 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
8912 (add_font_entity_to_list): Use font_callback_data struct. Filter
8913 unwanted fonts.
8914 (add_one_font_entity_to_list): Use font_callback_data struct.
8915 (w32_registry): Default to iso10646_1.
8916 (fill_in_logfont): Use dpi from extra slot. Don't bother with
8917 string font registries. Don't fill in font name if it is a generic
8918 family name, fill family instead. Use spacing, family and script
8919 extra info to fill pitch, family and charset fields.
8920 (list_all_matching_fonts): Use font_callback_data struct.
8921 (unicode_range_for_char): Remove.
8922 (font_supported_scripts): New function.
8923 (w32font_initialize): Remove.
8924 (syms_of_w32font): Update which symbols are defined.
8925
89262008-02-01 Jason Rumney <jasonr@gnu.org>
8927
8928 * font.c (font_pixel_size): Reverse assq_no_quit args.
8929
8930 * w32term.h (FONT_WIDTH): Report max width, not average.
8931 (FONT_MAX_WIDTH): Remove.
8932 (FONT_AVG_WIDTH): New macro.
8933
8934 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
8935 redefinition of FONT_WIDTH.
8936
8937 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
8938 (w32_cache_char_metrics): Use FONT_WIDTH.
8939
8940 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
8941
89422008-02-01 Jason Rumney <jasonr@gnu.org>
8943
8944 * w32font.c (w32font_open): Make lfHeight negative.
8945
8946 * w32fns.c (x_default_font_parameter): Use new style font name.
8947 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
8948
89492008-02-01 Jason Rumney <jasonr@gnu.org>
8950
8951 * w32font.c (QCsubranges): New symbol.
8952 (w32font_open, w32font_has_char): Get subranges from subproperty
8953 of extra.
8954 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
8955 (syms_of_w32font): Define :subranges symbol.
8956
8957 * font.c (font_put_extra): Expose externally.
8958
8959 * font.h (font_put_extra): Move declaration from font.c.
8960
8961 * font.c (Ffont_get): Use font driver to determine otf capability.
8962 (adjust_anchor): Check if driver defines anchor_point before using.
8963
8964 * w32font.c (w32font_open): Handle size, height and pixel_size better.
8965 (w32font_draw): Use options.
8966 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
8967 Fix detection of truetype fonts.
8968 (registry_to_w32_charset): Handle charsets other than iso8859-1
8969 expressed as lisp symbols.
8970 (w32_registry): Express charset as lisp symbol.
8971 (fill_in_logfont): Reverse pixel and point height logic.
8972 Don't set width here. Set quality to default.
8973
8974 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
8975 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
8976
8977 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
8978 Remove redundant loop and allocation.
8979
8980 * makefile.w32-in (font.o, w32font.o): New objects.
8981 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
8982 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
8983
8984 * xdisp.c (fill_composite_glyph_string): Make the first arg to
8985 STORE_XCHARB a valid l-value.
8986
8987 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
8988 calculations for non-Truetype fonts.
8989 (x_draw_glyph_string): Sync with xterm.c.
8990 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
8991 Remove redundant code.
8992 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
8993
8994 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
8995 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
8996
8997 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
8998 (x_to_w32_charset, w32_to_x_charset): Expose externally.
8999
9000 * w32font.c: New file for w32 font backend.
9001
90022008-02-01 Kenichi Handa <handa@m17n.org>
9003
9004 * term.c: Don't include "buffer.h" twice.
9005
90062008-02-01 Kenichi Handa <handa@m17n.org>
9007
9008 * character.c (Funibyte_string): New function.
9009 (syms_of_character): Defsubr it.
9010
90112008-02-01 Jason Rumney <jasonr@gnu.org>
9012
9013 * w32term.c [USE_FONT_BACKEND]:
9014 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
9015 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
9016 (x_draw_glyph_string, x_draw_glyph_string_foreground)
9017 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
9018 (x_free_frame_resources): Sync with xterm.c.
9019
90202008-02-01 Andreas Schwab <schwab@suse.de>
9021
9022 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
9023 char-table size.
9024
90252008-02-01 Kenichi Handa <handa@m17n.org>
9026
9027 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
9028
90292008-02-01 Kenichi Handa <handa@m17n.org>
9030
9031 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
9032 font_otf_gpos, add font_drive_otf.
9033
9034 * fontset.c (fontset_find_font): Pay attention to font size
9035 specified for a font.
9036 (reorder_font_vector): Check contents of font_def.
9037
9038 * font.c (struct otf_list): Delete it.
9039 (otf_list): Make it a lisp variable.
9040 (otf_open): Use lispy otf_list.
9041 (generate_otf_features): Rename from parse_gsub_gpos_spec.
9042 (check_otf_features): New function.
9043 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
9044 New functions.
9045 (font_drive_otf): New function merging font_otf_gsub and
9046 font_otf_gpos.
9047 (font_open_for_lface): New arg spec. Change argument order.
9048 (font_load_for_face): Adjust for the change of font_open_for_lface.
9049 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
9050 Ffont_otf_gpos.
9051 (syms_of_font): Staticpro otf_list. Delete defsubr of
9052 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
9053
9054 * xfaces.c (set_font_frame_param): Adjust for the change of
9055 font_open_for_lface.
9056
9057 * font.h (font_open_for_lface): Adjust prototype.
9058 (struct font_driver): Delete members otf_gsub and otf_gpos, add
9059 member otf_drive.
9060 (font_otf_gsub, font_otf_gpos): Delete externs.
9061 (font_drive_otf): Extern it.
9062
90632008-02-01 Kenichi Handa <handa@m17n.org>
9064
9065 * font.c (font_at): If the window W is not on a window system,
9066 return Qnil.
9067
9068 * coding.c (produce_chars, encode_coding): Don't call
9069 insert_from_gap if no characters to produce.
9070
90712008-02-01 Kenichi Handa <handa@m17n.org>
9072
9073 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
9074 Fclear_face_cache.
9075
9076 * xfaces.c (face_for_font): Check also face->font==font->font.font.
9077
90782008-02-01 Miles Bader <miles@gnu.org>
9079
9080 * emacs.c (main): Change default value of `enable_font_backend' to 1.
9081 Parse "--disable-font-backend" option.
9082 (standard_args): Add "--disable-font-backend" option.
9083
90842008-02-01 Kenichi Handa <handa@m17n.org>
9085
9086 * fontset.c (fontset_find_font): New function.
9087 (fontset_font): Use fontset_find_font.
9088 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
9089 Register the specified font for all Latin characters.
9090 (new_fontset_from_font): Register the specified font for all Latin
9091 characters.
9092 (dump_fontset): For a realized fontset, include the base fontset
9093 name in the returned vector.
9094
90952008-02-01 Kenichi Handa <handa@m17n.org>
9096
9097 * character.h (CHAR_STRING): Cast C to unsigned on calling
9098 char_string.
9099
9100 * character.c (char_string): Type of arg C changed to unsigned.
9101 Signal an error if C is an invalid character code.
9102
9103 * editfns.c (general_insert_function, Fchar_to_string):
9104 Use CHARACTERP, not INTEGERP.
9105
91062008-02-01 Kenichi Handa <handa@m17n.org>
9107
9108 * character.h (MIN_MULTIBYTE_LEADING_CODE)
9109 (MAX_MULTIBYTE_LEADING_CODE): New macros.
9110
9111 * regex.c (analyse_first): Fix for multibyte characters in "case
9112 charset:" and "case categoryspec:".
9113
91142008-02-01 Andreas Schwab <schwab@suse.de>
9115
9116 * Makefile.in (LIBES): Move standard libraries to the end.
9117
91182008-02-01 Kenichi Handa <handa@m17n.org>
9119
9120 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
9121 nonzero, don't shrink the buffer nextb.
9122
9123 * buffer.h (struct buffer_text): New member inhibit_shrinking.
9124
9125 * coding.c (coding_alloc_by_making_gap): New arg offset.
9126 (alloc_destination): Call coding_alloc_by_making_gap with the arg
9127 offset.
9128 (decode_coding_iso_2022): Update coding->safe_charsets.
9129 (decode_coding_gap): Temporarily set
9130 current_buffer->text->inhibit_shrinking to 1.
9131
91322008-02-01 Kenichi Handa <handa@m17n.org>
9133
9134 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
9135 indexing into elements of s->cmp and s->char2b.
9136
91372008-02-01 Juanma Barranquero <lekktu@gmail.com>
9138
9139 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
9140
91412008-02-01 Kenichi Handa <handa@m17n.org>
9142
9143 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
9144 target_multibyte instead of multibyte.
9145 (re_match_2_internal): Call bcmp_translate with target_multibyte.
9146 (bcmp_translate): Change the argument name from multibyte to
9147 target_multibyte.
9148
91492008-02-01 Kenichi Handa <handa@m17n.org>
9150
9151 These changes are to compile a regexp into a pattern that can be
9152 used both for multibyte and unibyte targets.
9153
9154 * Makefile.in (search.o): Depend on charset.h.
9155
9156 * character.c (multibyte_char_to_unibyte_safe): New function.
9157
9158 * search.c: Include "charset.h".
9159 (compile_pattern_1): Delete argument multibyte. Don't set
9160 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
9161 (compile_pattern): Don't compare cp->buf.target_multibyte.
9162 Compare cp->buf.charset_unibyte.
9163 (compile_pattern): Set cp->buf.target_multibyte.
9164
9165 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
9166
9167 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
9168
9169 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
9170 multibyte. Change callers.
9171 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
9172 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
9173 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
9174 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
9175 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
9176 (regex_compile): Make the compiled pattern usable both for
9177 multibyte and unibyte targets.
9178 (analyse_first): Make the fastmap usable both for multibyte and
9179 unibyte targets.
9180 (TRANSLATE_VIA_MULTIBYTE): Delete.
9181 (re_match_2_internal): Pay attention to the case that the
9182 multibyteness of bufp and target may be different.
9183
91842008-02-01 Kenichi Handa <handa@m17n.org>
9185
9186 * xdisp.c (x_produce_glyphs): When a font is not found, make the
9187 empty box occupy at least one column width.
9188
91892008-02-01 Miles Bader <miles@gnu.org>
9190
9191 * Makefile.in: Remove redundant HAVE_XFT clause.
9192
91932008-02-01 Kenichi Handa <handa@m17n.org>
9194
9195 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
9196
91972008-02-01 Kenichi Handa <handa@m17n.org>
9198
9199 * fontset.c (Finternal_char_font): Fix for the case of POSITION
9200 being nil.
9201
92022008-02-01 Kenichi Handa <handa@m17n.org>
9203
9204 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
9205
92062008-02-01 Kenichi Handa <handa@m17n.org>
9207
9208 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
9209
92102008-02-01 Kenichi Handa <handa@m17n.org>
9211
9212 * search.c (simple_search): Fix previous change.
9213
92142008-02-01 Kenichi Handa <handa@m17n.org>
9215
9216 * xftfont.c (ftfont_font_format): Extern declaration.
9217
9218 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
9219
9220 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
9221 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
9222
9223 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
9224 (ftfont_font_format): Fix previous change.
9225
9226 * font.h (Ffont_xlfd_name): EXFUN it.
9227
9228 * font.c (font_parse_xlfd): Fix the array size of `f'.
9229 (register_font_driver): Use EQ to compare driver->type.
9230
9231 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
9232 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
9233 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
9234
92352008-02-01 Kenichi Handa <handa@m17n.org>
9236
9237 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
9238 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
9239
92402008-02-01 Kenichi Handa <handa@m17n.org>
9241
9242 * xfont.c (xfont_open): Set font->format.
9243
9244 * xftfont.c (xftfont_open): Set font->format.
9245
9246 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
9247 (ftfont_list): Include FC_FONTFORMAT in FcObject.
9248 (ftfont_open): Set font->format.
9249 (ftfont_font_format): New function.
9250
9251 * font.h (struct font): New member format.
9252
9253 * font.c (Qopentype): New variable.
9254 (syms_of_font): Defsym it.
9255 (Fquery_font): Change the format of the last element of the return
9256 value.
9257
92582008-02-01 Kenichi Handa <handa@m17n.org>
9259
9260 * xfns.c (xic_create_xfontset): Try the default fontset name as a
9261 last resort.
9262
92632008-02-01 Kenichi Handa <handa@m17n.org>
9264
9265 * coding.c (detect_coding_charset): Fix detection of multi-byte
9266 charset.
9267
92682008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
9269
9270 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
9271
92722008-02-01 Kenichi Handa <handa@m17n.org>
9273
9274 * xdisp.c (get_next_display_element): Set it->face_id for the
9275 first component of a composition.
9276 (x_produce_glyphs): Check if the font is changed or not for composition.
9277
92782008-02-01 Kenichi Handa <handa@m17n.org>
9279
9280 * fontset.c (Qlatin): New variable.
9281 (syms_of_fontset): Define it as a lisp symbol.
9282 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
9283
92842008-02-01 Kenichi Handa <handa@m17n.org>
9285
9286 * font.c (font_unparse_fcname): Pay attention to the case that
9287 some of font property is a null string.
9288
92892008-02-01 Kenichi Handa <handa@m17n.org>
9290
9291 * term.c: Include "composite.h".
9292 (encode_terminal_code): Output all components of composition.
9293 Check the size of encode_terminal_src.
9294 (produce_glyphs): For composition, call produce_composite_glyph.
9295 (append_composite_glyph, produce_composite_glyph): New functions.
9296
9297 * xdisp.c (x_produce_glyphs): In handling composition, if a font
9298 is not found, get font_info from the current ascii face.
9299
93002008-02-01 Kenichi Handa <handa@m17n.org>
9301
9302 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
9303 buffer-file-name to Qnil before calling insert_from_buffer.
9304
9305 * font.c (font_unparse_fcname): Pay attention to the case that
9306 foundry is a null string.
9307
93082008-02-01 Kenichi Handa <handa@m17n.org>
9309
9310 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
9311
9312 * font.c (Qunicode_sip): New variable.
9313 (syms_of_font): Declare it as a Lisp symbol.
9314
9315 * font.h (Qunicode_sip): Extern it.
9316
93172008-02-01 Kenichi Handa <handa@m17n.org>
9318
9319 * composite.c (get_composition_id): Pay attention to TAB component.
9320
9321 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
9322 TAB. Adjust for the change of s->char2b which always points to
9323 the first element of allocated memory.
9324
9325 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
9326
9327 * xdisp.c (handle_composition_prop): Set it->c to the first
9328 non-TAB component.
9329 (fill_composite_glyph_string): Change argument.
9330 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
9331 (x_produce_glyphs): Fix handling of left/right padding.
9332
93332008-02-01 Kenichi Handa <handa@m17n.org>
9334
9335 * coding.c (detect_coding_system): Fix for handling off
9336 inhibit_iso_escape_detection. Fix for the case that no coding
9337 system is defined for a specific coding category.
9338
93392008-02-01 Kenichi Handa <handa@m17n.org>
9340
9341 * font.c (font_matching_entity): Delete unused local var.
9342
9343 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
9344 opening a font.
9345
9346 * fileio.c (Finsert_file_contents): On recovering a file, assume
9347 Unix-like eol.
9348 (choose_write_coding_system): On auto-saving a file, force
9349 Unix-like eol.
9350
9351 * coding.c (setup_coding_system): Fix setting of
9352 coding->common_flags based on eol_type.
9353 (coding_inherit_eol_type): If PARENT is not nil, be sure to
9354 inherit from it.
9355
93562008-02-01 Kenichi Handa <handa@m17n.org>
9357
9358 * alloc.c (NSTATICS): Increas to 0x600.
9359
93602008-02-01 Kenichi Handa <handa@m17n.org>
9361
9362 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
9363 (ftfont_list): Don't check :name property.
9364 (ftfont_match): New function.
9365 (ftfont_pattern_entity): If the pattern doesn't contain
9366 FC_SPACING, don't assume FC_MONO.
9367
9368 * font.h (struct font_driver): New member `match'.
9369 (font_update_drivers): Adjust prototype.
9370
9371 * font.c (font_parse_fcname, font_parse_name): Don't change :name
9372 property of FONT.
9373 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
9374 them unconditionally.
9375 (font_matching_entity): New function.
9376 (font_open_by_name): Try font_matching_entity if exact match is
9377 not found.
9378 (font_update_drivers): Delete the arg FONT. Return a list of
9379 actually used backends. Don't free faces, font caches here.
9380 Don't store data in frame parameters. Don't call x_set_font.
9381 (Ffont_spec): Store :name property as is.
9382 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
9383 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
9384 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
9385 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
9386 Call font->driver->otf_gsub instead of font_otf_gsub.
9387
9388 * frame.c (x_set_font_backend): Do more works that were done in
9389 font_update_drivers before.
9390
9391 * xfont.c (xfont_match): New function.
9392 (xfont_driver): Set xfont_driver.match to xfont_match.
9393 (xfont_draw): Set font in GC if necessary.
9394
9395 * ftxfont.c (ftxfont_match): New function.
9396 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
9397
9398 * xftfont.c (xftfont_match): New function.
9399 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
9400
94012008-02-01 Kenichi Handa <handa@m17n.org>
9402
9403 * font.h (struct font): New member scalable.
9404 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
9405 (font_otf_gsub): Adjust prototype.
9406
9407 * font.c (font_otf_capability): Fix handling of the default langsys.
9408 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
9409 Check the contents of SPEC.
9410 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
9411 (check_gstring): New function.
9412 (REPLACEMENT_CHARACTER): New macro.
9413 (font_otf_gsub): New arg alternate_subst. Be sure to set all
9414 glyph codes of GSTRING.
9415 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
9416 (font_prepare_composition): Set cmp->glyph_len.
9417 (font_open_entity): Set font->scalable.
9418 (Ffont_get): Handle :otf property.
9419 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
9420 functions.
9421 (Fquery_font): Use font->font.full_name.
9422 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
9423 Sfont_otf_alternates.
9424
9425 * ftfont.c (ftfont_open): Set font->font.full_name and
9426 font->font.name properly. Fix calculation of font->font.height
9427 and font->min_width.
9428
9429 * ftxfont.c (ftxfont_create_gcs): New function.
9430 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
9431 (ftxfont_draw_backgrond): Fix filling region.
9432 (ftxfont_default_fid): New function.
9433 (ftxfont_open): Set xfont->fid to the return value of
9434 ftxfont_default_fid.
9435 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
9436 (ftxfont_done_face): Free only GCs that are created by
9437 ftxfont_create_gcs.
9438 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
9439
9440 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
9441 Clip to src->width, etc (not src->clip_XXX).
9442
9443 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
9444 FontBackend frame parameter.
9445
94462008-02-01 Kenichi Handa <handa@m17n.org>
9447
9448 * font.h (struct font_driver_list): New member `on'.
9449 (Fclear_font_cache): EXFUN it.
9450 (font_update_drivers): Extern it.
9451
9452 * font.c (font_unparse_fcname): Fix typo (swidth->width).
9453 (font_list_entities): Check driver_list->on.
9454 (register_font_driver): Initalize `on' member to 0.
9455 (font_update_drivers): New function.
9456 (Fclear_font_cache): Check driver_list->on.
9457
9458 * frame.h (Qfont_backend): Extern it.
9459 (x_set_font_backend): Extern it.
9460
9461 * frame.c (Qfont_backend): New variable.
9462 (frame_parms): New element for font-backend.
9463 (x_set_font_backend): New function.
9464
9465 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
9466 FontBackend frame parameter.
9467 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
9468 x_set_font_backend.
9469
9470 * xfont.c (xfont_list): Don't try listing by :name property if the
9471 name is not for XLFD.
9472
94732008-02-01 Kenichi Handa <handa@m17n.org>
9474
9475 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
9476 (LGLYPH_SET_TO): New macros.
9477 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
9478 element of G is vector or not.
9479 (font_at): Extern it.
9480
9481 * font.c: Include window.h.
9482 (font_lispy_object): New function.
9483 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
9484 end of valid glyph.
9485 (font_close_object): Fix getting (struct font *).
9486 (font_at): New function.
9487 (Ffont_get): If FONT is a font-object, get entity from it.
9488 (Ffont_make_gstring): Initialize elements of glyphs with nil.
9489 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
9490 range check.
9491 (Ffont_at): New function.
9492 (syms_of_font): Defsubr Sfont_at.
9493
9494 * xdisp.c (it_props): Move the entry for Qauto_composed to just
9495 before the entry for Qcomposition.
9496 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
9497 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
9498 the font in gstring.
9499 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
9500 LGLYPH_FORM (g) to detect the end of valid glyph.
9501 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
9502 we are composing with gstring.
9503
9504 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
9505 Check if adjustment is vector or not.
9506
9507 * Makefile.in (font.o): Make it depends on window.h.
9508
95092008-02-01 Kenichi Handa <handa@m17n.org>
9510
9511 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
9512 adjustment is vector or not.
9513
95142008-02-01 Miles Bader <miles@gnu.org>
9515
9516 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
9517
95182008-02-01 Kenichi Handa <handa@m17n.org>
9519
9520 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
9521 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
9522 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
9523
9524 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
9525 (DEVICE_DELTA): Fix typo.
9526 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
9527 LGLYPH format.
9528
9529 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
9530 the change of LGLYPH format.
9531
95322008-02-01 Kenichi Handa <handa@m17n.org>
9533
9534 * ftfont.c (ftfont_list): Fix typo.
9535 (ftfont_build_basic_charsets): Don't include letters with diacritics.
9536
95372008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9538
9539 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
9540
9541 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
9542 xftface_info is non-NULL.
9543
95442008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9545
9546 * ftfont.c (ftfont_list): Move misplaced #endif.
9547
95482008-02-01 Kenichi Handa <handa@m17n.org>
9549
9550 * ftfont.c (ftfont_list): Pay attention to the case that
9551 FC_CAPABILITY is not defined.
9552
95532008-02-01 Kenichi Handa <handa@m17n.org>
9554
9555 * xftfont.c (xftfont_open): Set charset related members to -1.
9556
9557 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
9558 QCname.
9559 (ftfont_open): Set charset related members to -1.
9560
9561 * fontset.c (Votf_script_alist): New variable.
9562 (syms_of_fontset): Initialize it.
9563 (fontset_font): Delete unused variable.
9564
9565 * fontset.h (Votf_script_alist): Extern it.
9566
9567 * font.c (font_find_for_lface): Optimize code.
9568
9569 * font.h (font_close_object, font_merge_old_spec): Extern them.
9570
95712008-02-01 Kenichi Handa <handa@m17n.org>
9572
9573 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
9574 (syms_of_font): Initialize them.
9575 (font_pixel_size): Allow float value in dpi.
9576 (font_prop_validate_type): Delete.
9577 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
9578 Change caller.
9579 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
9580 (font_prop_validate_extra): Delete.
9581 (font_prop_validate_spacing): New function.
9582 (font_property_table): Add elements for all known properties.
9583 (get_font_prop_index): Rename from check_font_prop_name. New
9584 argument FROM. Change caller.
9585 (font_prop_validate): Validate all known properties.
9586 (font_put_extra): Delete argument force. Change caller.
9587 (font_expand_wildcards): Make it static. Fix the way of shrinking
9588 the possible range.
9589 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
9590 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
9591 Change caller.
9592 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
9593 (font_parse_fcname): Delete argument merge. Fix parsing of point
9594 size. Don't validate properties values here. Change caller.
9595 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
9596 (font_open_by_name): Delete unused variable.
9597 (Ffont_spec): Likewise. Validate property values.
9598 (Ffont_match_p): New function.
9599
9600 * font.h (QCscalable): Extern it.
9601 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
9602
9603 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
9604
9605 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
9606 (xfont_list_pattern): New function.
9607 (xfont_list): Use xfont_list_pattern.
9608
96092008-02-01 Kenichi Handa <handa@m17n.org>
9610
9611 * font.h (Flist_fonts): EXFUN it.
9612
96132008-02-01 Jason Rumney <jasonr@gnu.org>
9614
9615 * w32term.c (w32_initialize): Add back smoothing_type and
9616 smoothing_enabled definitions.
9617
96182008-02-01 Kenichi Handa <handa@m17n.org>
9619
9620 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
9621 s->face->font on determining underline position.
9622
96232008-02-01 Kenichi Handa <handa@m17n.org>
9624
9625 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
9626 (font_has_char): Accept font-object too.
9627 (font_find_for_lface): Try at first with a size specified in face.
9628
96292008-02-01 Kenichi Handa <handa@m17n.org>
9630
9631 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
9632 font_open_by_name.
9633
96342008-02-01 Kenichi Handa <handa@m17n.org>
9635
9636 * font.h (QCspacing, QCdpi): Extern them.
9637 (enum font_spacing): New enum.
9638 (FONT_PIXEL_SIZE_QUANTUM): New macro.
9639
9640 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
9641 (QCspacing, QCdpi): New variables.
9642 (syms_of_font): Initialize them.
9643 (font_pixel_size): New function.
9644 (font_put_extra): New function.
9645 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
9646 in FONT_EXTRA.
9647 (font_parse_fcname): Handle enumerated values (e.g. bold).
9648 Fix handling font size. Add QCname property that contains only
9649 unknown properties.
9650 (font_score): Change argument. Change caller. Pay attention to
9651 FONT_PIXEL_SIZE_QUANTUM.
9652 (font_sort_entites, font_list_entities, font_find_for_lface)
9653 (font_open_for_lface, font_open_by_name): Fix handling of font size.
9654 (Ffont_spec): Add QCname property that contains only unknown properties.
9655
9656 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
9657 include weight in listing pattern, instead check weight of each
9658 listed font. Don't include scalable in pattern. Pay attention to
9659 FONT_PIXEL_SIZE_QUANTUM.
9660
96612008-02-01 Kenichi Handa <handa@m17n.org>
9662
9663 * font.c (font_parse_fcname): Fix parsing of point-size.
9664 (font_unparse_fcname): Produce symbolic names for style properties.
9665 (font_list_entities): Handle float size correctly.
9666 (font_open_by_name): Prefer `normal' property values if the name
9667 doesn't specify them.
9668
9669 * fontset.c (Finternal_char_font): Use font_get_name, not
9670 Ffont_xlfd_name.
9671
9672 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
9673 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
9674 pattern. Don't force scalable.
9675
9676 * xftfont.c (xftfont_open): For generating a name, start from
9677 96-byte buffer.
9678
96792008-02-01 Jan Djärv <jan.h.d@swipnet.se>
9680
9681 * frame.h (x_new_fontset2): Fix prototype.
9682
96832008-02-01 Kenichi Handa <handa@m17n.org>
9684
9685 * font.h (struct font_driver): Delete member parse_name.
9686 (font_match_p, font_get_spec, font_parse_fcname)
9687 (font_unparse_fcname): Extern them.
9688 (font_get_name): Adjust prototype.
9689
9690 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
9691 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
9692 (font_expand_wildcards): Fix handling ENCODING field. Avoid
9693 unnecessary checks for weight, slant, and swidth.
9694 (font_parse_fcname): New function.
9695 (font_unparse_fcname): New function.
9696 (font_parse_name): New function.
9697 (font_match_p): New function.
9698 (font_get_name): Change return value to Lisp string.
9699 (font_get_spec): New function.
9700 (Qunspecified, Qignore_defface): Don't extern them.
9701 (font_find_for_lface): Assume that LFACE is fully specified.
9702 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
9703 object, use it for FACE.
9704 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
9705 driver->parse_name.
9706 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
9707
9708 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
9709 prototype.
9710
9711 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
9712 argument F. Don't call Fnew_fontset. Instead, directly call
9713 make_fontset.
9714
9715 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
9716
9717 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
9718 of x_new_fontset2.
9719
9720 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
9721 (Qsans__serif): New variables.
9722 (ftfont_generic_family_list): New variable.
9723 (syms_of_ftfont): Initialize the above variables.
9724 (ftfont_pattern_entity): Delete argument NAME.
9725 (ftfont_list_generic_family): New function.
9726 (ftfont_parse_name): Delete this function.
9727 (ftfont_list): Try generic family only when FcFontList found no font.
9728 (ftfont_list_family): Fix args to FcObjectSetBuild.
9729
9730 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
9731 object in attrs[LFACE_FONT_INDEX].
9732 (set_lface_from_font_name): Cancel all changes for font-backend.
9733 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
9734 function.
9735 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
9736 font object in QCfont attribute.
9737 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
9738 (realize_default_face) [USE_FONT_BACKEND]: Call
9739 set_lface_from_font_and_fontset.
9740
9741 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
9742 "fixed", and signal error here if no suitable font was found.
9743
9744 * xfont.c (xfont_parse_name): Delete this function.
9745
9746 * xftfont.c (xftfont_open): Change coding style of error
9747 handling. Generate fontconfig's fontname pattern.
9748
9749 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
9750 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
9751
9752 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
9753 Both args FONTSET and FONT_OBJECT must be existing ones.
9754
97552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9756
9757 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
9758
97592008-02-01 Kenichi Handa <handa@m17n.org>
9760
9761 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
9762
9763 * font.h (struct font): Fix typo.
9764
9765 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
9766 XLFD_XXX_INDEX.
9767 (enum xlfd_field_mask): New enum.
9768 (intern_font_field): Changed argument. Change caller. If digits
9769 are followed by non-digits, return a symbol.
9770 (font_expand_wildcards): New function.
9771 (font_parse_xlfd): Fix wildcard handling.
9772 (Ffont_spec): If :name is specified, reflect the info in the other
9773 properties.
9774
9775 * ftfont.c (ftfont_pattern_entity): Fix typo.
9776 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
9777 locale.
9778
97792008-02-01 Kenichi Handa <handa@m17n.org>
9780
9781 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
9782
9783 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
9784 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
9785 registry doesn't specify encoding part.
9786 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
9787 (font_open_by_name): At first try parsing the name.
9788 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
9789 as Lisp symbols.
9790
9791 * fontset.c (reorder_font_vector): Pay attention to the case that
9792 the 3rd element of font_def is nil.
9793 (fontset_font): For the default fontset, append one more fontset
9794 elements for a script-based font specification. Don't add script
9795 attribute on finding a font.
9796 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
9797 font name.
9798 (fontset_ascii_font): If a font can't be opened, return nil.
9799
9800 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
9801 (ftfont_pattern_entity): New function.
9802 (ftfont_get_cache): Assume that freetype_font_cache is already
9803 initialized.
9804 (ftfont_list): Handle the case that a file is specified in font
9805 name. Use ftfont_pattern_entity to generate entities.
9806 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
9807 (syms_of_ftfont): Initialize freetype_font_cache.
9808
9809 * xftfont.c (xftfont_open): Make the font name fontconfig's
9810 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
9811 (xftfont_close): Free font->font.name if not NULL.
9812
9813 * xfont.c (xfont_list): If script is specified for a font, return
9814 null_vector.
9815 (xfont_list_family): Declare argument type.
9816
9817 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
9818 name, set LFACE_FONT (lface) to nil.
9819
9820 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
9821 return Qnil.
9822
98232008-02-01 Kenichi Handa <handa@m17n.org>
9824
9825 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
9826 (standard_args): Add "-enable-font-backend".
9827
98282008-02-01 Kenichi Handa <handa@m17n.org>
9829
9830 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
9831 (struct xftdraw_list, xftdraw_list): Delete them.
9832 (register_xftdraw, check_xftdraw): Delete them.
9833 (xftfont_prepare_face): Don't call register_xftdraw.
9834 (xftfont_done_face): Don't call check_xftdraw.
9835 (xftfont_draw): Get background color only when with_background is
9836 nonzero.
9837
9838 * xfont.c (xfont_encode_char): Fix calculation of char2b.
9839
98402008-02-01 Kenichi Handa <handa@m17n.org>
9841
9842 These changes are for the new font handling codes.
9843
9844 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
9845 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
9846 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
9847 (FONTSRC, FONTOBJ): New variables.
9848 (obj): Add $(FONTOBJ).
9849 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
9850 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
9851 @LIBOTF_LIBS@.
9852 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
9853 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
9854
9855 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
9856
9857 * character.h (Vscript_representative_chars): Extern it.
9858
9859 * character.c (Vscript_representative_chars): New variable.
9860 (syms_of_character): Declare it as a Lisp variable.
9861
9862 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
9863 enable_font_backend is nonzero, accept the composition method
9864 COMPOSITION_WITH_GLYPH_STRING.
9865
9866 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
9867 enumeration COMPOSITION_WITH_GLYPH_STRING.
9868
9869 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
9870 members clip_x, clip_y, clip_width, and clip_height.
9871 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
9872
9873 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
9874 --enable-font-backend. Call syms_of_font.
9875
9876 * fns.c (assoc_no_quit): New function.
9877
9878 * fontset.h (FONT_INFO_FROM_FACE): New macro.
9879 (face_for_font, new_fontset_from_font)
9880 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
9881
9882 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
9883 (fontset_font, fontset_ascii, face_for_char)
9884 (make_fontset_for_ascii_face, Ffont_info)
9885 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
9886 is nonzero, use font-backend mechanism.
9887 (find_font_encoding): Make it non-static.
9888 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
9889 New functions.
9890
9891 * frame.h (struct frame): New members resx and resy.
9892 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
9893 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
9894
9895 * frame.c [USE_FONT_BACKEND]: Include "font.h".
9896 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
9897
9898 * lisp.h (assoc_no_quit): Extern it.
9899
9900 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
9901 Through out the file, use FONT_INFO_FROM_FACE instead of
9902 FONT_INFO_FROM_ID, use get_per_char_metric instead of
9903 rif->per_char_metric.
9904 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
9905 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
9906 (get_glyph_face_and_encoding, fill_composite_glyph_string)
9907 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
9908 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
9909 nonzero, use font-backend mechanism.
9910 (get_per_char_metric): New function.
9911
9912 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
9913 (set_lface_from_font_name)
9914 (set_font_frame_param, free_realized_face)
9915 (prepare_face_for_display, clear_face_gcs)
9916 (Finternal_set_font_selection_order, realize_x_face)
9917 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
9918 font-backend mechanism.
9919 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
9920 (load_face_font) [USE_FONT_BACKEND]: Abort.
9921 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
9922 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
9923
9924 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
9925 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
9926 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
9927 nonzero, register all available font drivers. Call
9928 x_default_font_parameter for deciding a font.
9929 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
9930
9931 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
9932 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
9933 (x_set_glyph_string_clipping_exactly)
9934 (x_compute_glyph_string_overhangs)
9935 (x_draw_glyph_string_foreground)
9936 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
9937 (x_free_frame_resources) [USE_FONT_BACKEND]: If
9938 enable_font_backend is nonzero, use font-backend mechanism.
9939 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
9940
99412008-02-01 Kenichi Handa <handa@m17n.org>
9942
9943 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
9944 system_eol_type.
9945 (syms_of_coding): Initialize system_eol_type.
9946
9947 * process.c (Fset_process_coding_system): Inherit system's eol
9948 format if necessary.
9949
99502008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9951
9952 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
9953
99542008-02-01 Kenichi Handa <handa@m17n.org>
9955
9956 * coding.c (decode_eol): Pay attention to buffer relocation in
9957 del_range_2.
9958 (decode_coding): Call decode_eol before restoring undo_list.
9959
99602008-02-01 Kenichi Handa <handa@m17n.org>
9961
9962 * charset.c (Fdefine_charset_internal): Fix setting of
9963 emacs_mule_bytes.
9964
99652008-02-01 Kenichi Handa <handa@m17n.org>
9966
9967 * keyboard.c (read_char): Check if C is a character or not before
9968 looking up Vkeyboard_translate_table.
9969
99702008-02-01 Kenichi Handa <handa@m17n.org>
9971
9972 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
9973 condition to terminate the loop.
9974
99752008-02-01 Kenichi Handa <handa@m17n.org>
9976
9977 * coding.c (produce_composition): Compare charbuf[i] instead of
9978 args[i] against 0.
9979 (Fterminal_coding_system): Use EQ to compare Lisp objects.
9980
99812008-02-01 Kenichi Handa <handa@m17n.org>
9982
9983 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
9984 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
9985 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
9986 detect_coding.
9987 (emacs_mule_char): Handle old style (Emacs 20) component character
9988 of a composition.
9989 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
9990 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
9991 composition rule.
9992 (decode_coding_emacs_mule): Handle invalid bytes correctly.
9993
99942008-02-01 Kenichi Handa <handa@m17n.org>
9995
9996 * coding.c (encode_coding_ccl): Allocate destination dynamically
9997 when necessary.
9998
99992008-02-01 Kenichi Handa <handa@m17n.org>
10000
10001 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
10002 the loop. When quitted, show a proper error message.
10003
100042008-02-01 Kenichi Handa <handa@m17n.org>
10005
10006 * xterm.c (x_set_glyph_string_clipping_exactly): Set
10007 src->clip_head and src->clip_tail temporarily instead of src->hl.
10008
10009 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
10010 character sequence.
10011 (Fccl_execute_on_string): Use ASET, not XSET.
10012
100132008-02-01 Kenichi Handa <handa@m17n.org>
10014
10015 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
10016
100172008-02-01 Kenichi Handa <handa@m17n.org>
10018
10019 * coding.c (decode_coding): Fix the condition of terminating the
10020 decoding loop.
10021
100222008-02-01 Kenichi Handa <handa@m17n.org>
10023
10024 * data.c (Faset): On setting a character bigger than 255 in a
10025 unibyte string, signal an error instead of make the string multibyte.
10026
100272008-02-01 Kenichi Handa <handa@m17n.org>
10028
10029 * charset.c (map_charset_chars): Fix for ascii-compatible charset
10030 made by a mapping table.
10031
100322008-02-01 Kenichi Handa <handa@m17n.org>
10033
10034 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
10035 not.
10036 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
10037 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
10038
10039 * xterm.c (x_draw_composite_glyph_string_foreground): Check
10040 s->face is NULL or not.
10041
100422008-02-01 Kenichi Handa <handa@m17n.org>
10043
10044 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
10045 (x_draw_glyph_string): Fix drawing of right_overhang and
10046 left_overhang around/on cursor.
10047
10048 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
10049
100502008-02-01 Kenichi Handa <handa@m17n.org>
10051
10052 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
10053
100542008-02-01 Kenichi Handa <handa@m17n.org>
10055
10056 * coding.c (Fdefine_coding_system_internal)
10057 (Fdefine_coding_system_alias): Avoid a duplicated element in
10058 Vcoding_system_alist.
10059
100602008-02-01 Kenichi Handa <handa@m17n.org>
10061
10062 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
10063
10064 * coding.c (Qcoding_system_define_form): New variable.
10065 (syms_of_coding): Intern and staticpro it.
10066 (Fcoding_system_p): Check Qcoding_system_define_form.
10067 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
10068
10069 * coding.h (CODING_SYSTEM_P): If ID is not available, call
10070 Fcoding_system_p.
10071 (CHECK_CODING_SYSTEM): If ID is not available, call
10072 Fcheck_coding_system.
10073 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
10074 Try also Fcheck_coding_system.
10075
100762008-02-01 Kenichi Handa <handa@m17n.org>
10077
10078 * coding.c (code_conversion_restore): GCPRO arg.
10079
100802008-02-01 Kenichi Handa <handa@m17n.org>
10081
10082 * character.c (lisp_string_width): Check multibyteness of STRING.
10083
100842008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10085
10086 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
10087 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
10088 (decode_mac_font_name): Use decode_coding_c_string instead of
10089 decode_coding.
10090 (x_load_font): Initialize fontp->fontset to -1. Set
10091 fontp->encoding_type.
10092
100932008-02-01 Kenichi Handa <handa@m17n.org>
10094
10095 * search.c (search_buffer): Give up BM search on case-fold-search
10096 if one of a target character has a case-equivalence of different
10097 byte length even if that target charcter is an ASCII.
10098 (simple_search): Fix calculation of byte length of matched text.
10099 (boyer_moore): Fix handling of case-equivalent multibyte characters.
10100
101012008-02-01 Kenichi Handa <handa@m17n.org>
10102
10103 * coding.c (decode_coding): Fix handling of invalid bytes.
10104
101052008-02-01 Kenichi Handa <handa@m17n.org>
10106
10107 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
10108 Unicode characters.
10109
101102008-02-01 Kenichi Handa <handa@m17n.org>
10111
10112 * coding.c (encode_coding_object): If a pre-write-conversion
10113 function makes a new buffer, kill it.
10114
101152008-02-01 Kenichi Handa <handa@m17n.org>
10116
10117 * coding.c (QCascii_compatible_p): New variable.
10118 (syms_of_coding): Initialize it.
10119 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
10120 calling string_char.
10121 (record_conversion_result): Add `default:' case.
10122 (coding_charset_list): Delete unused variable `coding_type'.
10123 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
10124 property in the plist of the coding system.
10125 (Fcoding_system_put): Check QCascii_compatible_p.
10126
101272008-02-01 Miles Bader <miles@gnu.org>
10128
10129 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
10130 removed calculation of frame `f', as it's now used.
10131
101322008-02-01 Kenichi Handa <handa@m17n.org>
10133
10134 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
10135 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
10136 (UNIDATA): New variable.
10137 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
10138 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
10139 $(RUN_TEMACS) unconditionally.
10140
101412008-02-01 Kenichi Handa <handa@m17n.org>
10142
10143 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
10144 (admindir): New variable.
10145 ($(lispsource)international/charprop.el): New target.
10146
101472008-02-01 Miles Bader <miles@gnu.org>
10148
10149 * character.c (chars-in-region): Remove obsolete function.
10150 (syms_of_character): Remove its initialization.
10151
101522008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
10153
10154 * w32select.c (validate_coding_system)
10155 (setup_windows_coding_system): New functions.
10156 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
10157 setup_windows_coding_system.
10158 (setup_config, Fw32_get_clipboard_data): Use
10159 validate_coding_system.
10160 (Fx_selection_exists): Move call to setup_config to a place
10161 where signals are allowed.
10162
10163 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
10164 (Fcheck_coding_system): Add declarations.
10165
101662008-02-01 Kenichi Handa <handa@m17n.org>
10167
10168 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
10169
101702008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10171
10172 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
10173 string as the second argument for x_new_fontset.
10174
101752008-02-01 Kenichi Handa <handa@m17n.org>
10176
10177 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
10178 (encode_coding_object): Use safe_call instead of call2.
10179
101802008-02-01 Kenichi Handa <handa@m17n.org>
10181
10182 * fontset.c (Fset_fontset_font): Check family element of a given vector.
10183
10184 * Makefile.in (lisp): Include charprop.el.
10185
101862008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10187
10188 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
10189 Not sure if it's unnecessary.
10190
101912008-02-01 Steven Tamm <steventamm@mac.com>
10192
10193 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
10194 some possibly unnecessary fontset checking code that crashed
10195 when creating a new frame.
10196
101972008-02-01 Kenichi Handa <handa@m17n.org>
10198
10199 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
10200 lookup_face.
10201
10202 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
10203
10204 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
10205
102062008-02-01 Kenichi Handa <handa@m17n.org>
10207
10208 * coding.c: Cancel the change done in HEAD on 2008-02-01.
10209 (coding_charset_list): New function.
10210
10211 * coding.h (coding_charset_list): Extern it.
10212
102132008-02-01 Kenichi Handa <handa@m17n.org>
10214
10215 * fontset.c (Fset_fontset_font): Call find_font_encoding with
10216 concatenation of family and registry.
10217
102182008-02-01 Kenichi Handa <handa@m17n.org>
10219
10220 * character.h (BYTE8_STRING): Fix typo.
10221
10222 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
10223 string to multibyte (sync to HEAD).
10224
10225 * casefiddle.c (casify_region): Handle changes in byte-length
10226 using replace_range_2 (sync to HEAD).
10227
102282008-02-01 Andreas Schwab <schwab@suse.de>
10229
10230 * chartab.c (map_char_table): GCPRO table and arg.
10231
102322008-02-01 Kenichi Handa <handa@m17n.org>
10233
10234 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
10235 already at limit.
10236
102372008-02-01 Kenichi Handa <handa@m17n.org>
10238
10239 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
10240 instead of fast_c_string_match_ignore_case.
10241 (find_font_encoding): Change argument to Lisp_Object. Use
10242 fast_string_match_ignore_case instead of
10243 fast_c_string_match_ignore_case. Change caller.
10244
102452008-02-01 Kenichi Handa <handa@m17n.org>
10246
10247 * xdisp.c (get_next_display_element): In unibyte case, decide to
10248 display in octal form by checking a character by
10249 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
10250
10251 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
10252
10253 * character.c (unibyte_has_multibyte_table): New variable.
10254
10255 * character.h (unibyte_has_multibyte_table): Extern it.
10256 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
10257
102582008-02-01 Kenichi Handa <handa@m17n.org>
10259
10260 * coding.c (encode_coding_iso_2022): Fix handling of charset
10261 annotation.
10262
102632008-02-01 Kenichi Handa <handa@m17n.org>
10264
10265 * coding.c (setup_coding_system): If coding_system is nil, use
10266 Qundecided.
10267 (Fterminal_coding_system): Return nil if terminal coding system is
10268 `undecided'.
10269 (syms_of_coding): Define coding-system `undecided' here. Setup
10270 terminal_coding as `undecided'.
10271
102722008-02-01 Kenichi Handa <handa@m17n.org>
10273
10274 * xdisp.c (message_dolog, set_message_1): Call
10275 unibyte_char_to_multibyte with arg type int.
10276
10277 * lread.c (read1): Fix reading of a char-table.
10278
10279 * print.c (print_object): Include sub char-table in circularities
10280 detection.
10281
102822008-02-01 Kenichi Handa <handa@m17n.org>
10283
10284 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
10285 Append the found sequences in car of ARGS instead of prepending.
10286
102872008-02-01 Kenichi Handa <handa@m17n.org>
10288
10289 * fileio.c (report_file_error): Make a unibyte string from
10290 strerror (errorno).
10291 (Fsubstitute_in_file_name): Fix the arg to
10292 unibyte_char_to_multibyte. It is evaluated twice.
10293
102942008-02-01 Kenichi Handa <handa@m17n.org>
10295
10296 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
10297
102982008-02-01 Kenichi Handa <handa@m17n.org>
10299
10300 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
10301 BOM is not found.
10302 (detect_coding, detect_coding_system): Optimization for ISO-2022
10303 when no 8-bit data is found.
10304
103052008-02-01 Jason Rumney <jasonr@gnu.org>
10306
10307 * w32fns.c (x_to_w32_font): Update to use new coding struct.
10308
103092008-02-01 Kenichi Handa <handa@m17n.org>
10310
10311 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
10312 CHARS.
10313
103142008-02-01 Steven Tamm <steventamm@mac.com>
10315
10316 * macterm.c (mac_encode_char): Add charset argument and update
10317 to use encoding_type.
10318 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
10319 switch to pure fontset.
10320 (decode_mac_font_name): Temporarily remove decoding.
10321 (x_font_name_to_mac_font_name): Temporarily remove encoding.
10322 (x_load_font): Temporarily remove encoding.
10323
103242008-02-01 Kenichi Handa <handa@m17n.org>
10325
10326 * xfaces.c (Fface_font): If frame is not on a window system,
10327 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
10328 refer to face->font.
10329 (split_font_name_into_vector, build_font_name_from_vector)
10330 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
10331 when HAVE_WINDOW_SYSTEM is defined.
10332
103332008-02-01 Kenichi Handa <handa@m17n.org>
10334
10335 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
10336 (x_produce_glyphs): Fix setting of members of cmp in case
10337 cmp->glyph_len is zero.
10338
10339 * fontset.c (Fset_fontset_font): Fix docstring.
10340 (Ffontset_info): Make it backward compatible. New arg ALL.
10341
103422008-02-01 Kim F. Storm <storm@cua.dk>
10343
10344 * process.c (read_process_output): Grow decoding_buf when needed;
10345 this could cause a crash in allocate_string and compact_small_strings.
10346
103472008-02-01 Kenichi Handa <handa@m17n.org>
10348
10349 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
10350
103512008-02-01 Kenichi Handa <handa@m17n.org>
10352
10353 * coding.c (setup_coding_system): Set coding->common_flags
10354 correctly for raw-text.
10355 (consume_chars): On encoding unibyte text by raw-text, don't check
10356 multibyte form.
10357 (encode_coding): On encoding by raw-text, never use translation tables.
10358
10359 * fileio.c (e_write): Short cut for the case of no encoding.
10360
103612008-02-01 Kenichi Handa <handa@m17n.org>
10362
10363 * coding.c (detect_coding, detect_coding_system): Delete unused
10364 variables.
10365
103662008-02-01 Kenichi Handa <handa@m17n.org>
10367
10368 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
10369 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
10370
103712008-02-01 Kenichi Handa <handa@m17n.org>
10372
10373 * coding.c (Ffind_coding_systems_region_internal): Include
10374 raw-text and no-conversion in the result.
10375
103762008-02-01 Kenichi Handa <handa@m17n.org>
10377
10378 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
10379 (load_font_get_repertory): Delete unnecessary check of ENCODING of
10380 FONT_DEF.
10381 (font_def_arg, add_arg, from_arg, to_arg): New args.
10382 (set_fontset_font): Change argument.
10383 (Fset_fontset_font): Fix for the case that TARGET is a script
10384 name and charset name.
10385 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
10386
103872008-02-01 Kenichi Handa <handa@m17n.org>
10388
10389 * fontset.c (fontset_font): Rename from fontset_face. Change return
10390 value.
10391 (face_suitable_for_char_p, face_for_char): Adjust for the change
10392 of fontset_font.
10393 (make_fontset_for_ascii_face): Fix setting of the fontset element
10394 for ASCII.
10395 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
10396 to get a font name.
10397 (Ffontset_info): Adjust for the change of fontset_font.
10398
10399 * coding.c (emacs_mule_char): Check invalid code more rigidly.
10400
10401 * character.h (LEADING_CODE_LATIN_1_MIN)
10402 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
10403
104042008-02-01 Kenichi Handa <handa@m17n.org>
10405
10406 * editfns.c (check_translation): New function.
10407 (Ftranslate_region_internal): Handle M:N mapping.
10408
104092008-02-01 Kenichi Handa <handa@m17n.org>
10410
10411 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
10412
104132008-02-01 Kenichi Handa <handa@m17n.org>
10414
10415 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
10416 goto invalid_code.
10417 (decode_coding_iso_2022): Fix handling of invalid designation.
10418
10419 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
10420 after calling code_conversion_save.
10421
104222008-02-01 Kenichi Handa <handa@m17n.org>
10423
10424 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
10425
10426 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
10427
10428 * fontset.c: Include "intervals.h".
10429 (fontset_face): Fix comparing of Lisp_Objects.
10430 (free_face_fontset, new_fontset_from_font_name): Fix
10431 Lisp_Object/int mixup.
10432
10433 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
10434
10435 * coding.c: Add many prototypes for static functions.
10436 (get_translation_table): Allow max_lookup to be NULL.
10437 (decode_coding, Ffind_coding_systems_region_internal)
10438 (Funencodable_char_position, Fcheck_coding_systems_region): Call
10439 get_translation_table with max_lookup NULL.
10440
104412008-02-01 Kenichi Handa <handa@m17n.org>
10442
10443 * coding.c (get_translation_table): Declare it as Lisp_Object.
10444 (LOOKUP_TRANSLATION_TABLE): New macro.
10445 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
10446 instead of CHAR_TABLE_REF.
10447
104482008-02-01 Kenichi Handa <handa@m17n.org>
10449
10450 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
10451 annotation data format.
10452 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
10453 Change arguments FROM and TO to single argument NCHARS. Change caller.
10454 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
10455 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10456 (decode_coding_ccl, decode_coding_charset): Pay attention to
10457 coding->charbuf_used.
10458 (get_translation): New function.
10459 (produce_chars): New arguments translation_table and last_block.
10460 Translate characters here. Return number of carryover chars.
10461 Change caller.
10462 (produce_composition): New argument pos. Change caller.
10463 Adjust for the change of annotation data format.
10464 (produce_charset, produce_annotation): Likewise.
10465 (decode_coding, encode_coding): Don't call translate_chars.
10466 (consume_chars): New arg translation_table. Change caller.
10467 (translate_chars): Delete.
10468 (syms_of_coding): Make translation-table's number of extra slots 2.
10469
104702008-02-01 Kenichi Handa <handa@m17n.org>
10471
10472 * search.c (simple_search): Fix setting this_pos_byte in backward
10473 search.
10474
10475 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
10476 byte sequence.
10477 (detect_coding_ccl): Fix setting of the variable valids.
10478
104792008-02-01 Kenichi Handa <handa@m17n.org>
10480
10481 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
10482
10483 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
10484
10485 * editfns.c (Ftranslate_region_internal): Rename from
10486 Ftranslate_region. Accept a char-table in TABLE.
10487 (syms_of_editfns): Defsubr Stranslate_region_internal.
10488
10489 * xfaces.c (set_lface_from_font_name): If a font is specified for
10490 a frame, generate a fontset from the font.
10491 (build_scalable_font_name): If the scalable font is requested for
10492 a specific size, don't change that size.
10493 (try_font_list): Try a scalable font also in the case that a
10494 pattern string is specified.
10495
104962008-02-01 Kenichi Handa <handa@m17n.org>
10497
10498 * xfaces.c (Fface_font): New optional arg CHARACTER.
10499
105002008-02-01 Kenichi Handa <handa@m17n.org>
10501
10502 * charset.h (CHARSET_OFFSET): New macro.
10503
105042008-02-01 Kenichi Handa <handa@m17n.org>
10505
10506 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
10507
10508 * fontset.c (fontset_face): Handle the case that repertory is a
10509 char-table.
10510 (find_font_encoding): Return nil for unknown encoding.
10511 (Fset_fontset_font): Ignore a font of unknown encoding.
10512
105132008-02-01 Kenichi Handa <handa@m17n.org>
10514
10515 * keymap.c (describe_vector): Handle default value of a char table.
10516
10517 * fontset.c (fontset_face): Handle fallback fonts correctly.
10518 (Ffontset_info): Return infomation about fallback fonts.
10519
105202008-02-01 Kenichi Handa <handa@m17n.org>
10521
10522 * fontset.c (FONTSET_DEFAULT): New macro.
10523 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
10524 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
10525 the case that it is nil.
10526 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
10527 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
10528
10529 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
10530 subset or superset.
10531
105322008-02-01 Kenichi Handa <handa@m17n.org>
10533
10534 * emacs.c (main): Call init_charset after syms_of_XXX.
10535
10536 * charset.c (Vcharset_map_directory): Delete.
10537 (Vcharset_map_path): New variable.
10538 (load_charset_map_from_file): Use Vcharset_map_path instead.
10539 (init_charset): Initialize Vcharset_map_path.
10540 (syms_of_charset): Delete declaration of "charset-map-directory",
10541 add declaration of "charset-map-path".
10542
105432008-02-01 Kenichi Handa <handa@m17n.org>
10544
10545 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
10546 ASCII only string.
10547
10548 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
10549
10550 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
10551 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
10552
105532008-02-01 Kenichi Handa <handa@m17n.org>
10554
10555 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
10556
10557 * coding.c (QCmnemonic, QCdefalut_char)
10558 (QCdecode_translation_table, QCencode_translation_table)
10559 (QCpost_read_conversion, QCpre_write_conversion): New variables.
10560 (get_translation_table): Return a list of translation tables if
10561 necessary.
10562 (decode_coding): Call get_translation_table with ENCODEP 0.
10563 (char_encodable_p): If translation_table is non-nil, always call
10564 translate_char.
10565 (Fdefine_coding_system_internal): Accept list of translation
10566 tables as :encode-translation-table and :decode-translation-table.
10567 (Fcoding_system_put): New function.
10568 (syms_of_coding): Declare new symbols. Defsubr
10569 Scoding_system_put.
10570 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
10571 typically JISX0212.
10572
10573 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
10574 when the charset is superset type.
10575
10576 * character.c (translate_char): Accept list of translation tables.
10577
105782008-02-01 Kenichi Handa <handa@m17n.org>
10579
10580 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
10581 (CODING_ATTR_TRANS_TBL): New macro.
10582
10583 * coding.c (get_translation_table): New function.
10584 (translate_chars): Fix the bug of skipping annotation data.
10585 (decode_coding, encode_coding): Utilize get_translation_table.
10586 (char_encodable_p, Funencodable_char_position): Translate char if
10587 necessary.
10588 (Ffind_coding_systems_region_internal)
10589 (Fcheck_coding_systems_region): Setup translation table for encode
10590 in a coding system attribute vector in advance.
10591 (Fdefine_coding_system_internal): Allow a symbol as translation
10592 table. For shift-jis type coding system, allow 4th charset.
10593
105942008-02-01 Kenichi Handa <handa@m17n.org>
10595
10596 * coding.c (decode_coding_sjis): Check the first byte rigidly.
10597
10598 * xdisp.c (get_next_display_element): Pass -1 as POS to
10599 FACE_FOR_CHAR if displaying a C-string.
10600
106012008-02-01 Kenichi Handa <handa@m17n.org>
10602
10603 * composite.c (get_composition_id): Handle xoff and yoff in a
10604 composition rule.
10605
10606 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
10607 (struct composition): New member lbearing and rbearing.
10608
10609 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
10610 (x_get_glyph_overhangs): Handle a composition glyph.
10611 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
10612
10613 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
10614 composition glyph.
10615
106162008-02-01 Kenichi Handa <handa@m17n.org>
10617
10618 * print.c: Include charset.h.
10619 (Vprint_charset_text_property): New variable.
10620 (Qdefault): Extern it.
10621 (PRINT_STRING_NON_CHARSET_FOUND)
10622 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
10623 (print_check_string_result): New variable.
10624 (print_check_string_charset_prop): New function.
10625 (print_prune_charset_plist): New variable.
10626 (print_prune_string_charset): New function.
10627 (print_object): Call print_prune_string_charset if
10628 Vprint_charset_text_property is not t.
10629 (print_interval): Print nothing if interval->plist is nil.
10630 (syms_of_print): Declare Vprint_charset_text_property as a lisp
10631 variable. Init and staticpro print_prune_charset_plist.
10632
106332008-02-01 Kenichi Handa <handa@m17n.org>
10634
10635 * fontset.c (new_fontset_from_font_name): Use the specified font
10636 for all characters in the new fontset.
10637
10638 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10639 OBJECT args.
10640
10641 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
10642 OBJECT args for composition too.
10643
10644 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
10645 OBJECT args.
10646
106472008-02-01 Kenichi Handa <handa@m17n.org>
10648
10649 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
10650
10651 * fontset.c (reorder_font_vector): Adjust for the change of
10652 FONT_DEF format.
10653 (fontset_face): New arg id. Change caller.
10654 (face_for_char): New args pos and object.
10655 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
10656 (fs_query_fontset): Check NAME by Fassoc too.
10657 (Fset_fontset_font): Allow non-XLFD font name.
10658 (Ffontset_info): Adjust for the change of FONT_DEF format.
10659
10660 * fontset.h (face_for_char): Adjust prototype.
10661
10662 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
10663 (append_space, extend_face_to_end_of_line)
10664 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
10665 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
10666
10667 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
10668 POS and OBJECT args.
10669
10670 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
10671 POS and OBJECT args.
10672
106732008-02-01 Jason Rumney <jasonr@gnu.org>
10674
10675 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
10676 of GlobalAlloc'ed memory.
10677
106782008-02-01 Kenichi Handa <handa@m17n.org>
10679
10680 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
10681
10682 * charset.h (charset_table_used): Delete extern.
10683
10684 * charset.c (charset_table_used): Make it static.
10685 (map_charset_chars): Fix args to c_function with.
10686
10687 * chartab.c (map_sub_char_table_for_charset): Fix args to
10688 c_function with.
10689
10690 * coding.h (enum coding_result_code): Delete
10691 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
10692
10693 * coding.c (Qinsufficient_source, Qinconsistent_eol)
10694 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
10695 (Vlast_code_conversion_error): New variables.
10696 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
10697 (ONE_MORE_BYTE): Record error if any instead of signaling an
10698 error. If non-ASCII multibyte char is found, return the negative
10699 value of the code. All callers changed to check it.
10700 (ONE_MORE_BYTE_NO_CHECK): Likewise.
10701 (record_conversion_result): New function. Change all codes setting
10702 coding->result to call this function.
10703 (detect_coding_utf_8, decode_coding_utf_8)
10704 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
10705 Don't use the local variable incomplete.
10706 (emacs_mule_char): Change the second arg to `const'.
10707 (decode_coding): Fix of flushing out unprocessed data.
10708 (make_conversion_work_buffer): Fix making of a work buffer.
10709 (decode_coding_object): Return coding->dst_object.
10710
10711 * fontset.c (set_fontset_font): Fix args.
10712
10713 * lisp.h (CHARACTERBITS): Define as 22.
10714
10715 * process.c (send_process): Be sure to set coding->src_multibyte.
10716
10717 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
10718
107192008-02-01 Kenichi Handa <handa@m17n.org>
10720
10721 * xdisp.c (handle_auto_composed_prop): Give limit to
10722 Fnext_single_char_property_change.
10723
107242008-02-01 Kenichi Handa <handa@m17n.org>
10725
10726 * composite.c (syms_of_composite): Don't make the composition hash
10727 table weak.
10728
10729 * fontset.c (Fset_fontset_font): Fix docstring.
10730
10731 * lisp.h (detect_coding_system): Adjust prototype.
10732
10733 * fileio.c (kill_workbuf_unwind): Delete this function.
10734 (Finsert_file_contents): Adjust the call of detect_coding_system.
10735 Get conversion_buffer by code_conversion_save. Use the macro
10736 CODING_MAY_REQUIRE_DECODING. After decoding, update
10737 coding_system.
10738
10739 * coding.h (make_conversion_work_buffer): Delete extern.
10740 (code_conversion_save): Extern it.
10741
10742 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
10743 (CODING_GET_INFO): Delete argument eol_type. Change callers.
10744 (decode_coding_utf_8): Don't do eol converion.
10745 (detect_coding_utf_16): Check coding->src_chars, not
10746 coding->src_bytes. Add heuristics for those that have no signature.
10747 (decode_coding_emacs_mule, decode_coding_iso_2022)
10748 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
10749 Don't do eol converion.
10750 (adjust_coding_eol_type): Return a new coding system.
10751 (detect_coding): Don't detect eol. Fix for utf-16 detection.
10752 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
10753 each change.
10754 (decode_coding): Pay attention to undo_list. Do eol conversion for
10755 all types of coding-systems (if necessary).
10756 (Vcode_conversion_work_buf_list): Delete it.
10757 (Vcode_conversion_reused_workbuf): Rename from
10758 Vcode_conversion_reused_work_buf.
10759 (Vcode_conversion_workbuf_name): New variable.
10760 (reused_workbuf_in_use): New variable.
10761 (make_conversion_work_buffer): Delete the arg DEPTH.
10762 (code_conversion_restore): Change argument to cons.
10763 (code_conversion_save): Delete the argument BUFFER. Change callers.
10764 (detect_coding_system): New argument src_chars. Change callers.
10765 Fix for utf-16 detection.
10766 (init_coding_once): Don't use ISO_carriage_return.
10767 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
10768 reused_workbuf_in_use.
10769
107702008-02-01 Kenichi Handa <handa@m17n.org>
10771
10772 * keymap.c (store_in_keymap): Pay attention to the case that idx
10773 is a cons specifying a character range.
10774
107752008-02-01 Kenichi Handa <handa@m17n.org>
10776
10777 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
10778 HANDLED_RECOMPUTE_PROPS.
10779
10780 * coding.c (Fdefine_coding_system_internal): Fix checking of
10781 ascii compatibility.
10782
107832008-02-01 Kenichi Handa <handa@m17n.org>
10784
10785 * charset.c (find_charsets_in_text): Delete unused locale variable.
10786 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
10787
10788 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
10789 Resync charset_list to Vemacs_mule_charset_list.
10790
10791 * keymap.c (store_in_keymap): Pay attention to the case that idx
10792 is a cons specifying a character range.
10793
107942008-02-01 Kenichi Handa <handa@m17n.org>
10795
10796 * composite.c (update_compositions): Bind inhibit-read-only, etc
10797 to t before calling remove-list-of-text-properties.
10798
10799 * print.c (print_object): Always print ASCII chars as is.
10800
108012008-02-01 Kenichi Handa <handa@m17n.org>
10802
10803 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
10804
10805 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
10806 is a char table.
10807
108082008-02-01 Kenichi Handa <handa@m17n.org>
10809
10810 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
10811
108122008-02-01 Kenichi Handa <handa@m17n.org>
10813
10814 * xfaces.c (set_lface_from_font_name): Fix for the case that
10815 FONTNAME is not fontset name.
10816
108172008-02-01 Kenichi Handa <handa@m17n.org>
10818
10819 * fns.c (base64_encode_1): Fix previous change.
10820
108212008-02-01 Kenichi Handa <handa@m17n.org>
10822
10823 * fontset.c (set_fontset_font): New function.
10824 (Fset_fontset_font): If a font is specified for a charset, use
10825 map_charset_chars to store the font spec in a fontset.
10826
108272008-02-01 Kenichi Handa <handa@m17n.org>
10828
10829 * fontset.c (fontset_face): Create a fallback fontset on demand.
10830 (make_fontset): Don't create a fallback fontset here.
10831 (free_face_fontset): Free a fallback fontset (if any) too.
10832 (n_auto_fontsets): Delete this variable.
10833 (auto_fontset_alist): New variable.
10834 (new_fontset_from_font_name): Check auto_fontset_alist.
10835 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
10836 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
10837 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
10838 Defsubr Sfontset_list_all.
10839
108402008-02-01 Kenichi Handa <handa@m17n.org>
10841
10842 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10843
108442008-02-01 Kenichi Handa <handa@m17n.org>
10845
10846 * fontset.c (Fnew_fontset): Check NAME more rigidly.
10847
108482008-02-01 Kenichi Handa <handa@m17n.org>
10849
10850 * editfns.c (Fgoto_char): Fix docstring.
10851
108522008-02-01 Kenichi Handa <handa@m17n.org>
10853
10854 * insdel.c (insert_from_gap): Adjust intervals correctly.
10855
108562008-02-01 Jason Rumney <jasonr@gnu.org>
10857
10858 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
10859 (pfnGetFontUnicodeRanges): New dynamically loaded function.
10860 (w32_initialize): Try to load it.
10861 (x_get_font_repertory): Use it if available.
10862 (w32_encode_char): Add shortcut for unicode output.
10863
10864 * w32fns.c (w32_load_system_font): Default charset to -1.
10865 (x_to_w32_charset): Match all fonts for unicode.
10866 (w32_to_x_charset): New parameter matching. Don't return partial
10867 or wildcard charsets.
10868 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
10869 (w32_codepage_for_font): Return CP_UNICODE for unicode.
10870 (w32_to_x_font): Match charset to real charset.
10871 (enum_font_cb2): Always list unicode versions.
10872
10873 * makefile.w32-in (temacs): Increase EMHEAP.
10874
108752008-02-01 Jason Rumney <jasonr@gnu.org>
10876
10877 * w32term.c (w32_encode_char): New charset parameter.
10878 font_info.encoding becomes encoding_type.
10879 (x_get_font_repertory): New function. Warning: stub only!
10880 (x_new_font): Return quickly if font already set.
10881 (x_new_fontset): fontsetname parameter is Lisp_Object.
10882 Use new fs_query_fontset. Try new_fontset_from_font_name.
10883 Use fontset_name for return value.
10884
10885 * w32term.h: Declare x_get_font_repertory.
10886
10887 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
10888 place of find_charset_in_text. Use encode_coding_object in place
10889 of encode_coding.
10890 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
10891 decode_coding.
10892
10893 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
10894 of x_new_fontset.
10895 (w32_load_system_font): Initialize charset as unicode.
10896 font_info.encoding becomes encoding_type.
10897 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
10898 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
10899 (syms_of_w32fns): Set get_font_repertory_func.
10900
10901 * w32console.c: Include character.h. Use terminal_encode_buffer
10902 from term.c.
10903 (write_glyphs): Use new version of encode_terminal_code. Use
10904 encode_coding_object in place of encode_coding.
10905
10906 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
10907 encoding becomes encoding_type.
10908
10909 * term.c (terminal_encode_buffer): Make externally visible.
10910
10911 * makefile.w32-in: Add character.h dependancies.
10912 (character.o, chartab.o): New targets.
10913
109142008-02-01 Kenichi Handa <handa@m17n.org>
10915
10916 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
10917 CODING_ID_EOL_TYPE.
10918
109192008-02-01 Andreas Schwab <schwab@suse.de>
10920
10921 * coding.c (produce_chars): Revert last change.
10922
109232008-02-01 Kenichi Handa <handa@m17n.org>
10924
10925 * charset.h (charset_unicode): Extern it.
10926
10927 * charset.c (string_xstring_p): Check by (C >= 0x100).
10928 (find_charsets_in_text): Change format of the arc CHARSETS. New
10929 arg MULTIBYTE.
10930 (Ffind_charset_region, Ffind_charset_string): Adjust for the
10931 change of find_charsets_in_text.
10932 (Fsplit_char): Fix doc. Never return unknown.
10933
10934 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
10935
10936 * coding.c (Fdefine_coding_system_alias): Update
10937 Vcoding_system_list.
10938
10939 * fontset.c (load_font_get_repertory): Pay attention to the case
10940 that ENCODING of a font is specified by a char-table.
10941
10942 * xterm.c (x_get_font_repertory): Handle the case that the
10943 encoding of font is other than Unicode.
10944
109452008-02-01 Kenichi Handa <handa@m17n.org>
10946
10947 * term.c (encode_terminal_code): Don't handle glyph-table. Check
10948 if a character is encodable by the terminal coding system. If
10949 not, produces proper number of `?'s. Update
10950 terminal_encode_buffer and terminal_encode_buf_size if necessary.
10951 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
10952
109532008-02-01 Kenichi Handa <handa@m17n.org>
10954
10955 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
10956 variables.
10957 (encode_terminal_code): Change argument. Encode multiple
10958 characters at once. Store the result of encoding in
10959 terminal_encode_buffer.
10960 (write_glyphs, insert_glyphs): Adjust for the change of
10961 encode_terminal_code.
10962 (term_init): Initialize terminal_encode_buffer and
10963 terminal_encode_buf_size.
10964
10965 * coding.c (consume_chars): If coding->src_object is nil, don't
10966 check annotation.
10967
109682008-02-01 Kenichi Handa <handa@m17n.org>
10969
10970 * character.c (char_string): Use ASCII_CHAR_P instead of
10971 SINGLE_BYTE_CHAR_P.
10972
109732008-02-01 Kenichi Handa <handa@m17n.org>
10974
10975 * xdisp.c (handle_auto_composed_prop): Check if the last
10976 characters of auto-composed region is newly composed with the
10977 following characters.
10978 (handle_composition_prop): Fix checking of point being inside
10979 composition.
10980
109812008-02-01 Kenichi Handa <handa@m17n.org>
10982
10983 * fns.c (concat): Don't change multibyteness of the result by
10984 concatenating an 8-bit character.
10985
10986 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
10987 multibyteness of the result when newelt is an 8-bit character.
10988
109892008-02-01 Dave Love <fx@gnu.org>
10990
10991 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
10992 EMACS_INT.
10993
10994 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
10995
10996 * xfaces.c (face_numeric_value): Declare dim size_t.
10997 (Finternal_lisp_face_equal_p): Remove unused f.
10998
10999 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
11000 (MATRIX_ROW): Remove unused vars.
11001 (draw_glyphs, x_insert_glyphs, fast_find_position)
11002 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
11003 byte/char counts.
11004
11005 * regex.c (regex_compile): Remove unused var.
11006
11007 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
11008
11009 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
11010 (Faccessible_keymaps, where_is_internal): Remove unused vars.
11011
11012 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
11013
11014 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
11015
11016 * fileio.c (Fwrite_region): Remove unused var.
11017
11018 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
11019 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
11020
11021 * composite.c (Fremove_list_of_text_properties): Declare.
11022
11023 * coding.c (inhibit_pre_post_conversion): Remove (unused).
11024 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
11025 (coding_inherit_eol_type): Remove unused attrs.
11026 (detect_coding): Cast arg of detect_eol.
11027
11028 * charset.c (syms_of_charset): Remove unused var p.
11029 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
11030 byte/char counts.
11031
11032 * casetab.c (set_case_table): Remove unused var.
11033
11034 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
11035 unused vars.
11036
110372008-02-01 Dave Love <fx@gnu.org>
11038
11039 * xterm.c (x_bitmap_mask): Declare.
11040
110412008-02-01 Dave Love <fx@gnu.org>
11042
11043 * xterm.c (x_term_init): Fix type error.
11044
11045 * lisp.h: Add Funibyte_char_to_multibyte.
11046
11047 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
11048 (Fset_coding_system_priority): Doc fix.
11049
11050 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
11051
11052 * indent.c (check_composition): Make start and end EMACS_INT.
11053
11054 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
11055
11056 * xdisp.c (handle_composition_prop, check_point_in_composition):
11057 Make buffer positions EMACS_INT.
11058
11059 * composite.c (find_composition, run_composition_function)
11060 (update_compositions, Ffind_composition_internal): Make buffer
11061 positions EMACS_INT.
11062
11063 * composite.h (find_composition, update_compositions): Make
11064 position args EMACS_INT.
11065
11066 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
11067
11068 * intervals.c (get_property_and_range):
11069 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
11070
11071 * unexalpha.c: Don't include varargs.h.
11072
110732008-02-01 Dave Love <fx@gnu.org>
11074
11075 * coding.h (ENCODE_UTF_8): New.
11076
11077 * Makefile.in (gtkutil.o): Depend on coding.h.
11078
11079 * coding.c (Fset_coding_system_priority): Doc fix.
11080
110812008-02-01 Kenichi Handa <handa@m17n.org>
11082
11083 * fileio.c (Finsert_file_contents): Call setup_coding_system in
11084 the case of auto saving.
11085
110862008-02-01 Andreas Schwab <schwab@suse.de>
11087
11088 * chartab.c (map_char_table, map_char_table_for_charset): Protect
11089 `range' from GC.
11090
110912008-02-01 Kenichi Handa <handa@m17n.org>
11092
11093 * coding.c (decode_coding_sjis): Check bytes more rigidly.
11094
110952008-02-01 Kenichi Handa <handa@m17n.org>
11096
11097 * fileio.c (choose_write_coding_system): Return a decided coding system.
11098 (Fwrite_region): Set Vlast_coding_system_used to the return value
11099 of choose_write_coding_system.
11100
111012008-02-01 Kenichi Handa <handa@m17n.org>
11102
11103 * charset.c (Fset_charset_priority): Pay attention to duplicated
11104 arguments.
11105
11106 * coding.c (QCcategory): New variable.
11107 (syms_of_coding): Defsym it. Set all elements of
11108 Vcoding_category_table and their symbol values.
11109 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
11110 coding-category-XXX, and coding-category-list.
11111 (Fdefine_coding_system_internal): Add category in the plist.
11112
111132008-02-01 Kenichi Handa <handa@m17n.org>
11114
11115 * callproc.c (Fcall_process): Handle carryover correctly.
11116
11117 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
11118 (raw_text_coding_system): Check NILP (coding_system).
11119 (coding_inherit_eol_type): Check NILP (coding_system) and
11120 NILP (parent).
11121 (consume_chars): Fix for the case of raw-text.
11122
11123 * process.c (read_process_output): Handle carryover correctly.
11124
111252008-02-01 Dave Love <fx@gnu.org>
11126
11127 * regex.c (re_search_2): Fix last change.
11128
111292008-02-01 Kenichi Handa <handa@m17n.org>
11130
11131 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
11132 target_multibyte. Even in a unibyte case, return a converted
11133 multibyte char.
11134 (GET_CHAR_AFTER): New macro.
11135 (PATFETCH): Translate via multibyte char.
11136 (HANDLE_UNIBYTE_RANGE): Delete this macro.
11137 (SETUP_MULTIBYTE_RANGE): New macro.
11138 (regex_compile): Setup compiled code so that its multibyteness
11139 matches that of a target. Fix the handling of "[X-YZ]" using
11140 SETUP_MULTIBYTE_RANGE.
11141 (analyse_first) <charset>: For filling fastmap for all multibyte
11142 characters, don't check by BASE_LEADING_CODE_P.
11143 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
11144 the same as RE_MULTIBYTE_P (bufp) now.
11145 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
11146 (TARGET_CHAR_AND_LENGTH): Delete this macro.
11147 (TRANSLATE_VIA_MULTIBYTE): New macro.
11148 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
11149 It is the same as RE_MULTIBYTE_P (bufp) now.
11150 <exactn>: Translate via multibyte.
11151 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
11152 translate it.
11153 <charset, charset_not>: Fetch a character by
11154 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
11155 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
11156 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
11157 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
11158 by GET_CHAR_AFTER.
11159 (bcmp_translate): Likewise.
11160
11161 * search.c (compile_pattern): Check the member target_multibyte,
11162 not the member multibyte of buf.
11163
11164 * lread.c (read1): While reading a string, set force_singlebyte
11165 and force_multibyte correctly.
11166
11167 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
11168 up of unibyte_to_multibyte_table.
11169
111702008-02-01 Kenichi Handa <handa@m17n.org>
11171
11172 * coding.c (setup_coding_system): If coding has
11173 post-read-conversion or pre-write-conversion, set
11174 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
11175 respectively.
11176 (decode_coding_gap): Run post-read-conversion if any.
11177
11178 * fileio.c (Finsert_file_contents): Even if we read into a
11179 unibyte buffer, check if we must decode the result or not.
11180
111812008-02-01 Kenichi Handa <handa@m17n.org>
11182
11183 * coding.c (make_conversion_work_buffer): Change the work buffer
11184 name to the same one as that of Emacs 21.
11185
111862008-02-01 Kenichi Handa <handa@m17n.org>
11187
11188 * coding.h (make_conversion_work_buffer): Adjust prototype.
11189 (code_conversion_restore): Don't extern it.
11190
11191 * coding.c (detected_mask): Delete unused variable.
11192 (decode_coding_iso_2022): Pay attention to the byte sequence of
11193 CTEXT extended segment, and retain those bytes as is.
11194 (decode_coding_ccl): Delete unused variable `valids'.
11195 (setup_coding_system): Delete unused variable `category'.
11196 (consume_chars): Delete unused variable `category'. Make it work
11197 for non-multibyte case.
11198 (make_conversion_work_buffer): Change argument.
11199 (saved_coding): Delete unused variable.
11200 (code_conversion_restore): Don't check saved_coding->destination.
11201 (code_conversion_save): New function.
11202 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
11203 instead of record_unwind_protect.
11204 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
11205 (detect_coding_system): Delete unused variable `mask'.
11206 (Fdefine_coding_system_internal): Delete unused variable id.
11207
11208 * fileio.c (kill_workbuf_unwind): New function.
11209 (Finsert_file_contents): On replacing, call
11210 make_conversion_work_buffer with correct args, and call
11211 record_unwind_protect with the first arg kill_workbuf_unwind.
11212
11213 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
11214
112152008-02-01 Kenichi Handa <handa@m17n.org>
11216
11217 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
11218 (fontset_add): Fix for the case that TO is less than TO1.
11219 (Ffontset_info): Don't use fallback fontset on checking the
11220 default fontset.
11221 (dump_fontset): New function for debugging.
11222
11223 * coding.c (Fdefine_coding_system_internal): Fix for the case that
11224 coding_type is Qcharset.
11225
112262008-02-01 Kenichi Handa <handa@m17n.org>
11227
11228 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
11229 (map_char_table): Don't inherit the value from the parent on
11230 initializing VAL. Adjust for the above change.
11231
112322008-02-01 Kenichi Handa <handa@m17n.org>
11233
11234 * coding.c (Qsignature, Qendian): Delete these variables.
11235 (syms_of_coding): Don't initialize them.
11236 (CATEGORY_MASK_UTF_16_AUTO): New macro.
11237 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
11238 detect_info->found.
11239 (decode_coding_utf_16): Don't detect BOM here.
11240 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
11241 is NOT utf_16_without_bom.
11242 (setup_coding_system): For a coding system of type utf-16, check
11243 if the attribute :endian is Qbig or not (not nil or not), and set
11244 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
11245 (detect_coding): If coding type is utf-16 and BOM detection is
11246 required, detect it.
11247 (Fdefine_coding_system_internal): For a coding system of type
11248 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
11249
112502008-02-01 Kenichi Handa <handa@m17n.org>
11251
11252 * coding.c (coding_set_source): Fix for the case that the current
11253 buffer is different from coding->src_object.
11254 (decode_coding_object): Don't use the conversion work buffer if
11255 DST_OBJECT is a buffer.
11256
112572008-02-01 Dave Love <fx@gnu.org>
11258
11259 * lread.c (read_emacs_mule_char) [len==2]: Index
11260 emacs_mule_charset correctly.
11261
112622008-02-01 Dave Love <fx@gnu.org>
11263
11264 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
11265 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
11266 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
11267 treated specially.)
11268 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
11269 (detected_mask): Remove Big5 bits.
11270
112712008-02-01 Kenichi Handa <handa@m17n.org>
11272
11273 The following changes are to make the font rescaling facility
11274 compatible with Emacs 21.
11275
11276 * xfaces.c (Vface_font_rescale_alist): Rename from
11277 Vface_resizing_fonts.
11278 (struct font_name): Rename member resizing_ratio to rescale_ratio.
11279 (font_rescale_ratio): Rename from font_resizing_ratio.
11280 (split_font_name): Set font->rescale_ratio.
11281 (better_font_p): Pay attention to font->rescale_ratio.
11282 (build_scalable_font_name): Likewise. Change RESX, and RESY
11283 fields.
11284 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
11285
112862008-02-01 Kenichi Handa <handa@m17n.org>
11287
11288 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
11289 (Qutf_16_le): Remove these variables.
11290 (syms_of_coding): Don't DEFSYM them.
11291 (decode_coding_utf_16): Fix handling of BOM.
11292 (encode_coding_utf_16): Fix handling of BOM.
11293
112942008-02-01 Kenichi Handa <handa@m17n.org>
11295
11296 * fileio.c (Finsert_file_contents): On replacing, before decoding
11297 the file into the work buffer, set point of the work buffer to the end.
11298
112992008-02-01 Dave Love <fx@gnu.org>
11300
11301 * coding.c (Fcheck_coding_systems_region): Fix type errors.
11302
113032008-02-01 Dave Love <fx@gnu.org>
11304
11305 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11306 and fix C types.
11307
113082008-02-01 Kenichi Handa <handa@m17n.org>
11309
11310 * xdisp.c (SKIP_GLYPHS): New macro.
11311 (set_cursor_from_row): Pay attention to string display properties.
11312
11313 * category.c (copy_category_entry): Fix for the case that RANGE
11314 is an integer.
11315
11316 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
11317
11318 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
11319
113202008-02-01 Kenichi Handa <handa@m17n.org>
11321
11322 * charset.c (Fcharset_id_internal): New function.
11323 (syms_of_charset): Defsubr it.
11324
11325 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
11326 with the last arg charset_list acquired from coding.
11327 (Fdefine_coding_system_internal): For ccl-based coding system, fix
11328 the attribute coding_attr_ccl_valids.
11329
11330 * coding.h (enum define_coding_ccl_arg_index): Set the first
11331 member coding_arg_ccl_decoder to coding_arg_max.
11332
11333 * ccl.h (ccl_driver): Adjust prototype.
11334
11335 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
11336 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 11337 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
11338 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
11339 last arg Qnil.
11340
113412008-02-01 Kenichi Handa <handa@m17n.org>
11342
11343 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
11344 call encode_char.
11345
11346 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
11347
113482008-02-01 Dave Love <fx@gnu.org>
11349
11350 * composite.c (syms_of_composite): Make composition_hash_table weak.
11351
113522008-02-01 Kenichi Handa <handa@m17n.org>
11353
11354 * dispextern.h (check_face_attributes, generate_ascii_font_name)
11355 (font_name_registry): Don't extern them.
11356 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
11357
11358 * fontset.h (Qfontset): Don't extern it.
11359 (new_fontset_from_font_name): Extern it.
11360
11361 * fontset.c: Give 8 extra slots to fontset objects.
11362 (Qfontset_info): New variable.
11363 (syms_of_fontset): Defsym it.
11364 (FONTSET_FALLBACK): New macro.
11365 (fontset_face): Try also the default fontset.
11366 (make_fontset): Realize a fallback fontset from the default fontset.
11367 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
11368 using split_font_name_into_vector and build_font_name_from_vector.
11369 (Fset_fontset_font): Access the elements of font_spec by enum
11370 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
11371 name by using split_font_name_into_vector.
11372 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
11373 generate a proper font name from the fontset name. Update
11374 Vfontset_alias_alist.
11375 (n_auto_fontsets): New variable.
11376 (new_fontset_from_font_name): New function.
11377 (Ffont_info): Store the information about fonts generated from the
11378 default fontset in the first extra slot of the returned char-table.
11379
11380 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
11381 (font_name_registry): Delete function.
11382 (split_font_name_into_vector): New function.
11383 (build_font_name_from_vector): New function.
11384 (font_list): The argument REGISTRY is now a list of registry names.
11385 (choose_face_font): If we are choosing an ASCII font, and ATTRS
11386 specifies an explicit font name, return the name as is. Make a
11387 list of registy names.
11388
11389 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
11390 of x_new_fontset.
11391 (Fx_create_frame): Don't call x_new_fontset here. Just use
11392 x_list_fonts to check the existence of fonts.
11393
11394 * xterm.h (x_new_fontset): Adjust prototype.
11395
11396 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
11397 string. Use new_fontset_from_font_name to create a fontset from a
11398 font name.
11399
114002008-02-01 Kenichi Handa <handa@m17n.org>
11401
11402 * syntax.c (Vfind_word_boundary_function_table): New name for
11403 Vnext_word_boundary_function_table.
11404 (find-word-boundary-function-table): New name for
11405 next-word-boundary-function-table.
11406
114072008-02-01 Dave Love <fx@gnu.org>
11408
11409 * Makefile.in: Fix some dependencies.
11410
11411 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
11412 set it to nil before returning.
11413
11414 * composite.c (update_compositions): Fix type error.
11415
11416 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
11417
114182008-02-01 Kenichi Handa <handa@m17n.org>
11419
11420 * xterm.c (x_new_font): Optimize for the case that the font is
11421 already set for the frame.
11422
114232008-02-01 Kenichi Handa <handa@m17n.org>
11424
11425 * chartab.c (char_table_ascii): Check if the char table contents
11426 is sub-char-table or not.
11427 (char_table_set, char_table_set_range): Fix argument to
11428 char_table_ascii.
11429
11430 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
11431 (detect_coding_utf_8, detect_coding_utf_16)
11432 (detect_coding_emacs_mule, detect_coding_iso_2022)
11433 (detect_coding_sjis, detect_coding_big5)
11434 (detect_coding_ccl, detect_coding_charset): Change argument MASK
11435 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
11436 sequence is valid in this coding system. Change callers.
11437 (MAX_ANNOTATION_LENGTH): New macro.
11438 (ADD_ANNOTATION_DATA): New macro.
11439 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
11440 ADD_ANNOTATION_DATA. Change the format of annotation data.
11441 (ADD_CHARSET_DATA): New macro.
11442 (emacs_mule_char): New argument ID. Change callers.
11443 (decode_coding_emacs_mule, decode_coding_iso_2022)
11444 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
11445 Produce charset annotation data in coding->charbuf.
11446 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
11447 to charset annotation data in coding->charbuf.
11448 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
11449 coding->common_flags if the coding system is iso-2022 based and
11450 uses designation.
11451 (produce_composition): Adjust for the new annotation data format.
11452 (produce_charset): New function.
11453 (produce_annotation): Handle charset annotation.
11454 (handle_composition_annotation, handle_charset_annotation): New
11455 functions.
11456 (consume_chars): Handle charset annotation. Utilize the above two
11457 functions.
11458 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
11459 buffer, get the deleted text as a string and set
11460 coding->src_object to that string.
11461 (detect_coding, detect_coding_system): Use the new struct
11462 coding_detection_info.
11463
11464 * coding.h (struct coding_detection_info): New structure.
11465 (struct coding_system): Adjust prototype of the member `detector'.
11466 (CODING_ANNOTATE_CHARSET_MASK): New macro.
11467
114682008-02-01 Kenichi Handa <handa@m17n.org>
11469
11470 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
11471
114722008-02-01 Dave Love <fx@gnu.org>
11473
11474 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
11475 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
11476 to new local and nullify apropos_accumulate before returning.
11477 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
11478
114792008-02-01 Kenichi Handa <handa@m17n.org>
11480
11481 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
11482 correctly.
e3eea1fc 11483
aac0c6e3
MR
114842008-02-01 Dave Love <fx@gnu.org>
11485
11486 * fns.c (Flanginfo): Call synchronize_system_time_locale.
11487
114882008-02-01 Kenichi Handa <handa@m17n.org>
11489
11490 The following changes are to make character composition happen
11491 automatically on displaying.
11492
11493 * Makefile.in (lisp, shortlisp): Add composite.elc.
11494
11495 * composite.h (Qauto_composed, Vauto_composition_function)
11496 (Qauto_composition_function): Extern them.
11497
11498 * composite.c (Vcomposition_function_table)
11499 (Qcomposition_function_table): Delete variables.
11500 (Qauto_composed, Vauto_composition_function)
11501 (Qauto_composition_function): New variables.
11502 (run_composition_function): Don't call
11503 compose-chars-after-function.
11504 (update_compositions): Clear `auto-composed' text property.
11505 (compose_chars_in_text): Delete this function.
11506 (syms_of_composite): Staticpro Qauto_composed and
11507 Qauto_composition_function. Declare Vauto_composition_function as
11508 a Lisp variable.
11509
11510 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
11511
11512 * xdisp.c (it_props): Add an entry for Qauto_composed.
11513 (handle_auto_composed_prop): New function.
11514
11515 * xselect.c (selection_data_to_lisp_data): Don't call
11516 compose_chars_in_text.
11517
115182008-02-01 Dave Love <fx@gnu.org>
11519
11520 * keyboard.c (read_char): Modify checking around use of
11521 Vkeyboard_translate_table.
11522
11523 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
11524 and fix C types.
11525
115262008-02-01 Kenichi Handa <handa@m17n.org>
11527
11528 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
11529 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
11530 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
11531 the case that the last byte is '\r' correctly.
11532 (decode_coding): Flush out the unprocessed data correctly.
11533 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
11534
115352008-02-01 Dave Love <fx@gnu.org>
11536
11537 * xterm.c (XTread_socket): Fix changes for defined keysyms.
11538 Add XK_ISO... case.
11539 (xaw_scroll_callback): Revert last change.
11540
115412008-02-01 Kenichi Handa <handa@m17n.org>
11542
11543 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
11544
115452008-02-01 Kenichi Handa <handa@m17n.org>
11546
11547 * xfaces.c (Vface_resizing_fonts): New variable.
11548 (struct font_name): New member `resizing_ratio'.
11549 (font_resizing_ratio): New function.
11550 (split_font_name): Set font->resizing_ratio.
11551 (better_font_p): Pay attention to font->resizing_ratio.
11552 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
11553 RESX, and RESY fields.
11554 (try_alternative_families): Try scalable fonts if
11555 Vscalable_fonts_allowed is not Qt.
11556 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
11557
115582008-02-01 Dave Love <fx@gnu.org>
11559
11560 * xterm.c (xaw_scroll_callback): Cast correctly.
11561
115622008-02-01 Dave Love <fx@gnu.org>
11563
11564 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
11565 (lispy_kana_keys): Comment out.
11566 (make_lispy_event) [XK_kana_A]: Comment out.
11567
11568 * xterm.c (xaw_scroll_callback): Cast call_data.
11569 (XTread_socket): Deal with ASCII keysyms.
11570 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
11571
115722008-02-01 Dave Love <fx@gnu.org>
11573
11574 * xterm.c (Vx_keysym_table): New.
11575 (syms_of_xterm): Initialize it.
11576 (XTread_socket): Use it.
11577 From head: Eliminate incorrect optimization that tried to avoid
11578 decoding the output of X*LookupString.
11579 (x_get_font_repertory): Delete charset declaration.
11580
115812008-02-01 Kenichi Handa <handa@m17n.org>
11582
11583 * coding.c (detect_coding_charset): If only ASCII bytes are found,
11584 return 0.
11585 (Fdefine_coding_system_internal): Setup
11586 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
11587
115882008-02-01 Dave Love <fx@gnu.org>
11589
11590 * coding.c (Fcheck_coding_system): Doc fix.
11591
11592 * editfns.c (Finsert_byte): Return a proper value.
11593
115942008-02-01 Kenichi Handa <handa@m17n.org>
11595
11596 * coding.c (decode_coding): Fix args to translate_chars. Pay
11597 attention to Vstandard_translation_table_for_decode.
11598 (encode_coding): Fix args to translate_chars. Pay attention to
11599 Vstandard_translation_table_for_encode.
11600
11601 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
11602 SINGLE_BYTE_CHAR_P.
11603
11604 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
11605 not by SINGLE_BYTE_CHAR_P.
11606
11607 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
11608 SINGLE_BYTE_CHAR_P.
11609
11610 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
11611 SINGLE_BYTE_CHAR_P.
11612
11613 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
11614 by SINGLE_BYTE_CHAR_P.
11615
11616 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
11617 SINGLE_BYTE_CHAR_P.
11618
116192008-02-01 Dave Love <fx@gnu.org>
11620
11621 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
11622
116232008-02-01 Dave Love <fx@gnu.org>
11624
11625 * fns.c (Flanginfo): Fix typo.
11626
11627 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
11628
116292008-02-01 Kenichi Handa <handa@m17n.org>
11630
11631 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
11632 (detect_coding_emacs_mule, detect_coding_iso_2022)
11633 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
11634 incomplete byte sequence. Don't update *mask when correctly detected.
11635 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
11636 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
11637 (detect_coding, detect_coding_system): Adjust for the changes above.
11638
116392008-02-01 Kenichi Handa <handa@m17n.org>
11640
11641 * character.c (char_string): Rename from
11642 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
11643 (string_char): Rename from string_char.
11644
11645 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
11646 if C is greater than MAX_3_BYTE_CHAR.
11647 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
11648 string_char instead of string_char_with_unification.
11649
116502008-02-01 Dave Love <fx@gnu.org>
11651
11652 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
11653
116542008-02-01 Kenichi Handa <handa@m17n.org>
11655
11656 * keymap.c (push_key_description): Pay attention to force_multibyte.
11657
11658 * regex.c (re_search_2): Fix for the case of unibyte buffer.
11659
116602008-02-01 Dave Love <fx@gnu.org>
11661
11662 * charset.c (define_charset_internal): Rename `supprementary'.
11663
11664 * Makefile.in (lisp, shortlisp): Remove latin-N.
11665
116662008-02-01 Dave Love <fx@gnu.org>
11667
11668 * xfns.c (x_window, x_window): Use use_xim.
11669
11670 * xterm.c (use_xim): Initialize.
11671 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
11672 (x_term_init): Maybe set use_xim.
11673
11674 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
11675
116762008-02-01 Kenichi Handa <handa@m17n.org>
11677
11678 * search.c (search_buffer): Fix case-fold-search of multibyte
11679 characters.
11680 (boyer_moore): Rename the last argument to char_high_bits.
11681
116822008-02-01 Kenichi Handa <handa@m17n.org>
11683
11684 * xdisp.c (display_string): Fix for the case of zero width glyph.
11685
11686 * xfns.c (x_set_font): Change the error message of the case that
11687 x_new_fontset returns Qt.
11688
11689 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
11690 (Finternal_set_lisp_face_attribute): Use signal_error for the
11691 error of invalid fontset.
11692
11693 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
11694 fontset, return Qt.
11695
116962008-02-01 Dave Love <fx@gnu.org>
11697
11698 * unexelf.c (unexec): Make .got handling not SGI-specific.
11699
11700 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
11701
11702 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
11703
11704 * keyboard.c (read_key_sequence): Fix type error.
11705
11706 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
11707 type error.
11708
11709 * fontset.c (fontset_add): Return Lisp_Object.
11710
117112008-02-01 Dave Love <fx@gnu.org>
11712
11713 * charset.h (charset_ordered_list_tick): Declare extern.
11714
117152008-02-01 Kenichi Handa <handa@m17n.org>
11716
11717 The following changes (and some of 2008-02-01 changes of mine) are
11718 for handling syntax, category, and case conversion for unibyte
11719 characters by converting them to multibyte on the fly. With these
11720 changes, we don't have to setup syntax and case tables for unibyte
11721 characters in each language environment.
11722
11723 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
11724 multibyte if necessary.
11725
11726 * bytecode.c (Fbyte_code): Likewise.
11727
11728 * character.h (LEADING_CODE_LATIN_1_MIN)
11729 (LEADING_CODE_LATIN_1_MAX): New macros.
11730 (unibyte_to_multibyte_table): Extern it.
11731 (unibyte_char_to_multibyte): New macro.
11732 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
11733 (CHAR_LEADING_CODE): New macro.
11734 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
11735
11736 * character.c (unibyte_to_multibyte_table): New variable.
11737 (unibyte_char_to_multibyte): Move to character.h and define as macro.
11738 (multibyte_char_to_unibyte): If C is an eight-bit character,
11739 convert it to the corresponding byte value.
11740
11741 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
11742 not 1, signals an error. Update the elements of
11743 unibyte_to_multibyte_table.
11744 (init_charset_once): Initialize unibyte_to_multibyte_table.
11745 (syms_of_charset): Define the charset `iso-8859-1'.
11746
11747 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
11748 as is without converting it to unibyte. In a unibyte buffer,
11749 convert C to multibyte before checking the syntax.
11750
11751 * lisp.h (unibyte_char_to_multibyte): Delete extern.
11752
11753 * minibuf.c (Fminibuffer_complete_word): Use the macro
11754 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
11755
11756 * regex.h (struct re_pattern_buffer): New member target_multibyte.
11757
11758 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
11759 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
11760 that is zero, convert an eight-bit char to multibyte.
11761 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
11762 non-emacs case.
11763 (PATFETCH): Convert an eight-bit char to multibyte.
11764 (HANDLE_UNIBYTE_RANGE): New macro.
11765 (regex_compile): Setup the compiled pattern for multibyte chars
11766 even if the given regex string is unibyte. Use PATFETCH_RAW
11767 instead of PATFETCH in many places. To handle `charset'
11768 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
11769 only for ASCII chars.
11770 (analyse_first) <exactn>: Simplify because the compiled pattern
11771 is multibyte.
11772 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
11773 <charset>: Use CHAR_LEADING_CODE to get leading codes.
11774 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
11775 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
11776 multibyte always 1.
11777 (re_search_2): In emacs, set the locale variable multibyte to 1,
11778 otherwise to 0. New local variable target_multibyte. Check it
11779 to decide the multibyteness of STR1 and STR2. If
11780 target_multibyte is zero, convert unibyte chars to multibyte
11781 before translating and checking fastmap.
11782 (TARGET_CHAR_AND_LENGTH): New macro.
11783 (re_match_2_internal): In emacs, set the locale variable multibyte
11784 to 1, otherwise to 0. New local variable target_multibyte. Check
11785 it to decide the multibyteness of STR1 and STR2. Use
11786 TARGET_CHAR_AND_LENGTH to fetch a character from D.
11787 <charset, charset_not>: If multibyte is nonzero, check fastmap
11788 only for ASCII chars. Call bcmp_translate with
11789 target_multibyte, not with multibyte.
11790 <begline>: Declare the local variable C as `unsigned'.
11791 (bcmp_translate): Change the last arg name to target_multibyte.
11792
11793 * search.c (compile_pattern_1): Don't adjust the multibyteness of
11794 the regexp pattern and the matching target. Set cp->buf.multibyte
11795 to the multibyteness of the regexp pattern. Set
11796 cp->but.target_multibyte to the multibyteness of the matching target.
11797 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
11798 FETCH_STRING_CHAR_ADVANCE.
11799 (Freplace_match): Convert unibyte chars to multibyte.
11800
11801 * syntax.c (char_quoted, back_comment, scan_words)
11802 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
11803 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
11804 unibyte chars to multibyte.
11805 (skip_chars): Delete the arg syntaxp, and move the code for
11806 handling syntaxes to skip_syntaxes. Change callers.
11807 Fix the case that the multibyteness of STRING and the current
11808 buffer doesn't match.
11809 (skip_syntaxes): New function.
11810 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
11811 SINGLE_BYTE_CHAR_P.
11812
118132008-02-01 Kenichi Handa <handa@m17n.org>
11814
11815 * xfaces.c (QCfontset): New variable.
11816 (LFACE_FONTSET): New macro.
11817 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
11818 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
11819 (Finternal_set_lisp_face_attribute)
11820 (Finternal_get_lisp_face_attribute): Handle QCfontset.
11821 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
11822 check also LFACE_FONTSET_INDEX.
11823 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
11824 attrs[LFACE_FONT_INDEX].
11825 (syms_of_xfaces): Intern and staticpro QCfontset.
11826
11827 * dispextern.h (enum lface_attribute_index): New member
11828 LFACE_FONTSET_INDEX.
11829
11830 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
11831
118322008-02-01 Kenichi Handa <handa@m17n.org>
11833
11834 * coding.c (coding_set_destination): Fix coding->destination for
11835 the case converting a region.
11836 (encode_coding_utf_8): Encode eight-bit chars as single byte.
11837 (encode_coding_object): Fix coding->dst_pos and
11838 coding->dst_pos_byte for the case converting a region.
11839
11840 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
11841
11842 * character.h (BYTE8_STRING): New macro.
11843
11844 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
11845
118462008-02-01 Kenichi Handa <handa@m17n.org>
11847
11848 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
11849 characters by octal form.
11850
11851 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
11852
11853 * buffer.h (_fetch_multibyte_char_len): Delete extern.
11854 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
11855 _fetch_multibyte_char_len.
11856 (FETCH_CHAR_AS_MULTIBYTE): New macro.
11857
11858 * casetab.c (set_canon, set_identity, shuffle): Simplify.
11859
11860 * casefiddle.c (casify_object): Simplify. Handle the case that
11861 the case conversion change the byte length.
11862 (casify_region): Likewise.
11863
11864 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
11865
11866 * character.c (_fetch_multibyte_char_len): Delete this variable.
11867 (syms_of_character): Setup Vprintable_chars.
11868
11869 * editfns.c (Fchar_equal): Fix for the unibyte case.
11870 (Finsert_byte): New function.
11871 (syms_of_editfns): Defsubr it.
11872
11873 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
11874 of direct code 0x3ffff.
11875
11876 * search.c (Freplace_match): Fix for the unibyte case.
11877
118782008-02-01 Kenichi Handa <handa@m17n.org>
11879
11880 * lread.c (safe_to_load_p): Fix the logic.
11881
11882 * syntax.c (scan_words): Don't treat characters belonging to
11883 different scripts as constituting a word.
11884
11885 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
11886
11887 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
11888
11889 * emacs.c (main): In the case of --unibyte, instead of aborting on
11890 finding non-empty buffer, make it unibyte.
11891
118922008-02-01 Kenichi Handa <handa@m17n.org>
11893
11894 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
11895 to create a fontset.
11896
118972008-02-01 Dave Love <fx@gnu.org>
11898
11899 * character.c (Funibyte_char_to_multibyte): Doc fix.
11900
11901 * xfns.c [HAVE_STDLIB_H]: Fix last change.
11902
119032008-02-01 Kenichi Handa <handa@m17n.org>
11904
11905 * fontset.c (fontset_add): Make the type `int'.
11906 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
11907
11908 * character.c (unibyte_char_to_multibyte)
11909 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
11910 charset_unibyte, not charset_primary.
11911
11912 * charset.h (charset_unibyte): Extern it instead of charset_primary.
11913
11914 * charset.c (charset_unibyte): Rename from charset_primary.
11915 (Funibyte_charset): Rename from Fprimary_charset.
11916 (Fset_unibyte_charset): Rename from Fset_primary_charset.
11917 (syms_of_charset): Adjust for the above changes.
11918
11919 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
11920 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
11921 it->multibyte_p is zero.
11922
11923 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
11924 Delete extern.
11925
119262008-02-01 Kenichi Handa <handa@m17n.org>
11927
11928 * coding.c (Fdefine_coding_system_internal): Fix category setting
11929 for a coding system of type iso-2022.
11930
119312008-02-01 Kenichi Handa <handa@m17n.org>
11932
11933 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
11934
119352008-02-01 Kenichi Handa <handa@m17n.org>
11936
11937 * syntax.c (Vnext_word_boundary_function_table): New variable.
11938 (next-word-boundary-function-table): Declare it as a Lisp variable
11939 in syms_of_syntax.
11940 (scan_words): Call functions in Vnext_word_boundary_function_table
11941 if any.
11942
11943 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
11944
11945 * fontset.c (fs_load_font): If fontp->charset is not negative,
11946 return fontp without setting its members.
11947
119482008-02-01 Dave Love <fx@gnu.org>
11949
11950 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
11951
11952 * m/sparc.h (HAVE_ALLOCA): Delete.
11953
11954 * s/irix6-5.h: Don't include strings.h.
11955 (bcopy, bzero, bcmp): Don't undef.
11956
11957 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
11958
11959 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
11960 (TIOCSIGSEND): Don't test IRIX6.
11961 (bcopy, bzero, bcmp): Define conditionally.
11962
119632008-02-01 Kenichi Handa <handa@m17n.org>
11964
11965 * buffer.c (Qas, Qmake, Qto): New variables.
11966 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
11967 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
11968
11969 * callproc.c (Fcall_process): Don't call insert_1_both directly if
11970 we are inserting a process output into a multibyte buffer.
11971
11972 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
11973 multibyte_char_to_unibyte.
11974
11975 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
11976 by the primary charset, make it eight-bit char.
11977 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
11978
11979 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
11980 (charset_8_bit__control, charset_8_bit_graphic)
11981 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
11982 (define_charset_internal): New function.
11983 (syms_of_charset): Call define_charset_internal for pre-defined
11984 charsets.
11985
11986 * charset.h (charset_8_bit): Extern it.
11987
11988 * coding.c (make_conversion_work_buffer): Adjust for the change
11989 of Fset_buffer_multibyte.
11990 (encode_coding_raw_text): Increment p0 in the loop.
11991
11992 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
11993
11994 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
11995 for the change of Fset_buffer_multibyte.
11996
11997 * fns.c (Fstring_to_multibyte): New function.
11998 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
11999
120002008-02-01 Dave Love <fx@gnu.org>
12001
12002 * xfns.c (x_put_x_image): Declare args.
12003
12004 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
12005 (try_font_list): Declare an arg.
12006
12007 * xdisp.c (message2_nolog, set_message): Declare an arg.
12008
12009 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
12010
12011 * syntax.c (scan_sexps_forward): Declare an arg.
12012
12013 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
12014 Declare an arg.
12015
12016 * lisp.h (Fnew_fontset): Declare.
12017
12018 * keymap.c (push_key_description): Call CHARACTERP correctly.
12019
12020 * fontset.c (fontset_add): Declare args. Call make_number correctly.
12021 (face_for_char): Delete unused vars.
12022 (Fset_fontset_font): Doc fix. Delete unused vars.
12023
12024 * doc.c (Fsubstitute_command_keys): Delete unused vars.
12025
12026 * composite.c (update_compositions): Declare arg.
12027
12028 * cm.c (calccost, cmgoto): Declare args.
12029
12030 * charset.c: Remove `emacs' conditional. Doc fixes.
12031 (map_char_table_for_charset): Declare.
12032
12033 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
12034
12035 * ccl.c: Remove `emacs' conditional.
12036
120372008-02-01 Kenichi Handa <handa@m17n.org>
12038
12039 The following changes are to allow specifying multiple font
12040 patterns for a character range (specified by script or charset).
12041
12042 * Makefile.in (abbrev.o): Depend on syntax.h.
12043 (xfaces.o): Depend on charset.h.
12044
12045 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
12046 SINGLE_BYTE_CHAR_P.
12047
12048 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
12049
12050 * character.h (Vchar_script_table): Extern it.
12051
12052 * character.c (Vscript_alist): Delete.
12053 (Vchar_script_table, Qchar_script_table): New variable.
12054 (syms_of_character): Declare Vchar_script_table as a lisp variable
12055 and initialize it.
12056
12057 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
12058 have property char-table-extra-slots, make no extra slot.
12059
12060 * dispextern.h (struct face): Delete member `charset'.
12061 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
12062 SINGLE_BYTE_CHAR_P.
12063 (choose_face_font, lookup_non_ascii_face, font_name_registry):
12064 Add prototypes.
12065 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
12066 (generate_ascii_font_name): Rename from generate_ascii_font.
12067
12068 * fontset.h (get_font_repertory_func): New prototype.
12069 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
12070 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
12071
12072 * fontset.c (Qprepend, Qappend): New variables.
12073 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
12074 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
12075 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
12076 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
12077 (fontset_ref_and_range, fontset_add, reorder_font_vector)
12078 (load_font_get_repertory): New functions.
12079 (fontset_set): Delete.
12080 (fontset_face): New arg FACE. Return face ID, not face.
12081 Complete re-write to handle new fontset structure. Change caller.
12082 (free_face_fontset): Use ASET istead of AREF (X) = Y.
12083 (face_for_char): Don't call lookup_face.
12084 (make_fontset_for_ascii_face): New arg FACE.
12085 (fs_load_font): New arg CHARSET_ID. Don't check
12086 Vfont_encoding_alist here.
12087 (find_font_encoding): New function.
12088 (list_fontsets): Use STRINGP, not ! NILP.
12089 (accumulate_script_ranges): New function.
12090 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
12091 re-written to handle new fontset structure.
12092 (Ffontset_font): Return a copy of element.
12093 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
12094 docstring of font-encoding-alist.
12095
12096 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
12097 (Fset_fotset_font): Fix arguments to 5.
12098
12099 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
12100
12101 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
12102 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12103 (highlight_trailing_whitespace): Adjust for the change of
12104 lookup_named_face.
12105
12106 * xfaces.c: Include charset.h.
12107 (load_face_font): Delete argument C. Change caller.
12108 (generate_ascii_font_name): Rename from generate_ascii_font.
12109 (font_name_registry): New function.
12110 (cache_face): Store ascii faces before non-ascii faces in buckets.
12111 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
12112 Lookup only ascii faces.
12113 (lookup_non_ascii_face): New function.
12114 (lookup_named_face): Delete argument C. Change caller.
12115 (lookup_derived_face): Delete argument C. Change caller.
12116 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
12117 a string, just call font_list with it.
12118 (choose_face_font): Delete arguments FACE and C. New arg
12119 FONT_SPEC. Change caller.
12120 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
12121 Change caller.
12122 (realize_non_ascii_face): New function.
12123 (realize_x_face): Call load_face_font here.
12124 (realize_tty_face): Delete argument C. Change caller.
12125 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
12126 get a face ID.
12127 (dump_realized_face): Don't print charset of FACE.
12128
12129 * xfns.c (x_set_font): Always call x_new_fontset and
12130 store_frame_parameter.
12131 (Fx_create_frame): Call x_new_fontset, not x_new_font.
12132 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
12133
12134 * xterm.h (x_get_font_repertory): Extern it.
12135
12136 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
12137 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
12138 it->multibyte_p is zero.
12139 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
12140 (x_new_fontset): If FONTSETNAME doesn't match any existing
12141 fontsets, create a new one.
12142 (x_get_font_repertory): New function.
12143
121442008-02-01 Kenichi Handa <handa@m17n.org>
12145
12146 * coding.c (Ffind_coding_systems_region_internal): Detect an
12147 ASCII only string correctly.
12148
12149 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
12150 version is 0.
12151
121522008-02-01 Kenichi Handa <handa@m17n.org>
12153
12154 * lread.c: Include "coding.h".
12155 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
12156 (load_each_byte, unread_char): New variables.
12157 (readchar_backlog): Delete.
12158 (readchar): Return a character unless load_each_byte is nonzero.
12159 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
12160 cons. If unread_char is not -1, simply return it.
12161 (unreadchar): Handle the case that readcharfun is
12162 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
12163 (read_multibyte): Delete.
12164 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
12165 (read_emacs_mule_char): New functions.
12166 (Fload): Even if the file doesn't have the extension ".elc", if
12167 safe_to_load_p returns a positive version number, assume that the
12168 file contains bytecompiled code. If the version is less than 22,
12169 load the file while decoding multibyte sequences by emacs-mule.
12170 (readevalloop): Don't use readchar_backlog.
12171 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
12172 (Fread_from_string): Pay attention to the case that STREAM is a cons.
12173 (read_escape): Delete the arg BYTEREP.
12174 (read1): Set load_each_byte to 1 temporarily while handling
12175 #@NUMBER. Don't call read_multibyte.
12176 (read_vector): Call Fread with a cons. If readcharfun is
12177 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
12178 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
12179 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
12180 and Qload_force_doc_strings.
12181
121822008-02-01 Kenichi Handa <handa@m17n.org>
12183
12184 * xdisp.c (face_before_or_after_it_pos): Call
12185 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
12186
121872008-02-01 Kenichi Handa <handa@m17n.org>
12188
12189 * character.h (TRAILING_CODE_P): New macro.
12190 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
12191 (string_char_with_unification): Fix prototype.
12192 (Vscript_alist): Extern it.
12193
12194 * character.c (Vscript_alist): New variable.
12195 (string_char_with_unification, str_as_unibyte)
12196 (string_escape_byte8): Add `const' to local variables.
12197 (syms_of_character): Declare script-alist as a Lisp variable.
12198
12199 * charset.h (Vcharset_ordered_list): Extern it.
12200 (charset_ordered_list_tick): Extern it.
12201 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
12202 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
12203 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
12204 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
12205 (Funify_charset): Adjust for the change of Funify_charset.
12206
12207 * charset.c (charset_ordered_list_tick): New variable.
12208 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
12209 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
12210 deunify intead of unify a charset.
12211 (string_xstring_p): Add `const' to local variables.
12212 (find_charsets_in_text): Add `const' to arguments and local variables.
12213 (encode_char): Adjust for the change of Funify_charset. Fix
12214 detecting of invalid code.
12215 (Fset_charset_priority): Increment charset_ordered_list_tick.
12216 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
12217 and TO_CODE.
12218
12219 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
12220 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
12221 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
12222 (decode_coding_ccl, consume_chars)
12223 (Ffind_coding_systems_region_internal)
12224 (Fcheck_coding_systems_region): Add `const' to local variables.
12225
12226 * print.c (print_object): Use octal form for printing the
12227 contents of a bool vector.
12228
122292008-02-01 Dave Love <fx@gnu.org>
12230
12231 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
12232 <version == 20>: Refuse to load.
12233
122342008-02-01 Dave Love <fx@gnu.org>
12235
12236 * fns.c: Move coding.h.
12237 (Qcodeset, Qdays, Qmonths): New.
12238 (concat): Use CHARACTERP instead of INTEGERP.
12239 (Flocale_codeset): Delete.
12240 (Flanginfo): New function.
12241 (syms_of_fns): Change accordingly.
12242
12243 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
12244
122452008-02-01 Dave Love <fx@gnu.org>
12246
12247 * casetab.c (init_casetab_once, init_casetab_once): Fix
12248 CHAR_TABLE_SET call.
12249
12250 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
12251
12252 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
12253
12254 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
12255 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
12256 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
12257
12258 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
12259
12260 * coding.c (ENCODE_DESIGNATION, decode_eol)
12261 (make_conversion_work_buffer, code_conversion_restore)
12262 (Fdefine_coding_system_internal): Convert Lisp types.
12263 (code_conversion_restore): Use EQ, not ==.
12264 (Fencode_coding_string): Fix code_convert_string call.
12265
12266 * coding.h (code_convert_region): Fix prototype.
12267
12268 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
12269
12270 * fontset.c (fontset_ref, fontset_set, fs_load_font)
12271 (Ffontset_info): Convert Lisp types.
12272
12273 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
12274
12275 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
12276
12277 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
12278
12279 * chartab.c: Include "...h", not <...h> in some cases.
12280
12281 * callproc.c (Fcall_process): Remove unused variables.
12282
122832008-02-01 Dave Love <fx@gnu.org>
12284
12285 * coding.c (Fset_coding_system_priority): Allow null arg list.
12286
122872008-02-01 Dave Love <fx@gnu.org>
12288
12289 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
12290 (Fself_insert_and_exit): Use CHARACTERP.
12291
12292 * callproc.c (Fcall_process): Remove unused vars.
12293
12294 * xterm.c (XTread_socket): Add extra dead keysyms.
12295
12296 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
12297
12298 * dispextern.h: Remove prototypes for redraw_frame,
12299 redraw_garbaged_frames.
12300
12301 * cmds.c (Fself_insert_command): Use CHARACTERP.
12302
12303 * chartab.c (make_sub_char_table): Remove unused var.
12304 (Fset_char_table_default, Fmap_char_table): Doc fix.
12305
12306 * keymap.c (access_keymap): Remove generic char code.
12307 (push_key_description): Use CHARACTERP.
12308
123092008-02-01 Dave Love <fx@gnu.org>
12310
12311 * charset.c: Doc fixes.
12312 (Funify_charset): Extra checking.
12313
123142008-02-01 Dave Love <fx@gnu.org>
12315
12316 * lread.c: Remove some unused variables.
12317 (safe_to_load_p): If safe, return the magic number version byte.
12318 (Fload): Maybe use load-with-code-conversion.
12319
123202008-02-01 Kenichi Handa <handa@m17n.org>
12321
12322 * category.c (Fmodify_category_entry): Don't modify the contents
12323 of category_set for characters out of the range. Avoid
12324 unnecessary modification.
12325
12326 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
12327 Vchar_unify_table. The default value of the table is now nil.
12328
12329 * character.c (syms_of_character): Setup Vchar_width_table for
12330 eight-bit-control and raw-byte chars.
12331
12332 * charset.h (enum define_charset_arg_index): Delete
12333 charset_arg_parents and add charset_arg_subset and
12334 charset_arg_superset.
12335 (enum charset_attr_index): Delete charset_parents and add
12336 charset_subset and charset_superset.
12337 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
12338 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
12339 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
12340 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
12341 (CHARSET_SUPERSET): New macros.
12342 (charset_work): Extern it.
12343 (ENCODE_CHAR): Use charset_work.
12344 (CHAR_CHARSET_P): Adjust for the change of encoder format.
12345 (map_charset_chars): Extern it.
12346
12347 * charset.c (load_charset_map): Set the default value of encoder
12348 and deunifier char-tables to nil.
12349 (map_charset_chars): Change argument. Change callers. Use
12350 map_char_table_for_charset instead of map_char_table.
12351 (Fmap_charset_chars): New optional args from_code and to_code.
12352 (Fdefine_charset_internal): Adjust for the change of
12353 `define-charset' (:parents -> :subset or :superset).
12354 (charset_work): New variable.
12355 (encode_char, syms_of_charset): Adjust for the change of
12356 Fdefine_charset_internal.
12357 (Ffind_charset_string): Setup the vector `charsets' correctly.
12358
12359 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
12360 the previous change.
12361 (char_table_ref_and_range): Adjust for the above change.
12362 (map_sub_char_table_for_charset): New function.
12363 (map_char_table_for_charset): New function.
12364
12365 * keymap.c (describe_vector): Handle a char-table directly here.
12366 (describe_char_table): Delete.
12367
12368 * lisp.h (map_charset_chars): Delete.
12369
123702008-02-01 Dave Love <fx@gnu.org>
12371
12372 * fns.c (count_combining): Comment out (unused).
12373 (Flocale_codeset): New.
12374 (syms_of_fns): Defsubr it.
12375
12376 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
12377 (size_t): Remove.
12378
123792008-02-01 Dave Love <fx@gnu.org>
12380
12381 * Makefile.in (chartab.o): Depend on charset.h.
12382
123832008-02-01 Kenichi Handa <handa@m17n.org>
12384
12385 * character.c (syms_of_character): Set the default value of
12386 Vprintable_chars to Qnil.
12387
123882008-02-01 Dave Love <fx@gnu.org>
12389
12390 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
12391
123922008-02-01 Kenichi Handa <handa@m17n.org>
12393
12394 * charset.c (load_charset_map): Handle the case that from < to
12395 correctly.
12396
12397 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
12398 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
12399 Pay attention to raw-8-bit chars.
12400
124012008-02-01 Kenichi Handa <handa@m17n.org>
12402
12403 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
12404 It is not bytecompiled now.
12405
12406 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
12407 (charset_jisx0208): New variables.
12408 (Fdefine_charset_internal): Setup them if appropriate.
12409 (init_charset_once): Initialize them to -1.
12410
12411 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
12412 (charset_jisx0208): Extern them.
12413
12414 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
12415 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
12416 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
12417 (setup_iso_safe_charsets): Fix arguments to Fassq.
12418 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
12419 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
12420 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
12421 (encode_coding_iso_2022): Change the 1st arg to
12422 ENCODE_ISO_CHARACTER to a variable.
12423
124242008-02-01 Kenichi Handa <handa@m17n.org>
12425
12426 * charset.h (enum define_charset_arg_index): New enums
12427 charset_arg_min_code and charset_arg_max_code.
12428 (struct charset): New member char_index_offset.
12429
12430 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
12431 Take charset->char_index_offset into account.
12432 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
12433 args[charset_arg_max_code]. Setup charset.char_index_offset.
12434 (syms_of_charset): Fix args to Fdefine_charset_internal.
12435
124362008-02-01 Dave Love <fx@gnu.org>
12437
12438 * coding.c (decode_coding_utf_8): Reject overlong sequences.
12439
124402008-02-01 Dave Love <fx@gnu.org>
12441
12442 * coding.c: Doc fixes.
12443 (Fcoding_system_aliases): Fix return value.
12444 (Qmac): Remove (duplicated) definition.
12445
124462008-02-01 Dave Love <fx@gnu.org>
12447
12448 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
12449 functions.
12450
12451 * character.c (Fstring): Doc fix.
12452
12453 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
12454
12455 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
12456 ids.
12457 (font-encoding-alist): Doc fix.
12458
124592008-02-01 Dave Love <fx@gnu.org>
12460
12461 * term.c (costs_set): Declare static, non-initialized for pcc.
12462 (encode_terminal_code): Remove unused var.
12463
12464 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
12465 for K&R.
12466
12467 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
12468
12469 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
12470 (suffixes): Move out of make_subsidiaries for K&R.
12471
12472 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
12473
12474 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
12475
124762008-02-01 Dave Love <fx@gnu.org>
12477
12478 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
12479
12480 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
12481
124822008-02-01 Yong Lu <lyongu@asia-infonet.com>
12483
12484 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
12485
12486 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
12487
124882008-02-01 Kenichi Handa <handa@m17n.org>
12489
12490 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
12491 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
12492
124932008-02-01 Kenichi Handa <handa@m17n.org>
12494
12495 * coding.c (decode_coding_charset): Adjust for the change of
12496 Fdefine_coding_system_internal.
12497 (Fdefine_coding_system_internal): For a coding system of
12498 `charset' type, store a list of charset IDs in
12499 `charset_attr_charset_valids' element of coding attributes.
12500
125012008-02-01 Kenichi Handa <handa@m17n.org>
12502
12503 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
12504 (emacs_mule_char): New arg src. Delete arg `composition'. Change
12505 caller. Handle 2-byte and 3-byte charsets correctly.
12506 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
12507 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
12508 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
12509 (DECODE_EMACS_MULE_21_COMPOSITION): Call
12510 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
12511 sequence.
12512 (decode_coding_emacs_mule): Handle composition correctly. Rewind
12513 `src' and `consumed_chars' correctly before calling emacs_mule_char.
12514 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
12515 and alt&rule composition.
12516 (decode_coding_iso_2022): Handle composition correctly.
12517 (init_coding_once): Setup emacs_mule_bytes for private charsets.
12518
12519 * charset.c (Fdefine_charset_internal): Fix bug for the case of
12520 re-defining a charset. If the charset has :emacs-mule-id, setup
12521 emacs_mule_bytes.
12522 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
12523
125242008-02-01 Kenichi Handa <handa@m17n.org>
12525
12526 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
12527 (encode_coding_big5, encode_coding_charset): If coding requires safe
12528 encoding, produce a character specified by
12529 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12530
125312008-02-01 Dave Love <fx@gnu.org>
12532
12533 * xterm.c (XSetIMValues): Declare.
12534
12535 * process.c: Conditionally include sys/wait.h, pty.h.
12536
12537 * print.c (print_object): Fix print format for 64-bit systems.
12538
12539 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
12540
12541 * buffer.c (emacs_strerror): Declare.
12542
12543 * fontset.c (Fclear_face_cache): Declare.
12544 (accumulate_font_info): Comment-out (unused).
12545 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
12546 variables.
12547
12548 * character.h (string_escape_byte8): Declare.
12549
12550 * charset.c (load_charset_map, load_charset_map_from_file): Remove
12551 unused vars.
12552 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
12553 (Fmap_charset_chars): Doc fix.
12554
12555 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
12556 (Fset_coding_system_priority, Fset_coding_system_priority)
12557 (Fdefine_coding_system_internal): Doc fix.
12558
125592008-02-01 Dave Love <fx@gnu.org>
12560
12561 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
12562
125632008-02-01 Kenichi Handa <handa@m17n.org>
12564
12565 * character.c (string_escape_byte8): Make multibyte string with
12566 correct size.
12567
12568 * charset.c (Fmake_char): Delete unnecessary code.
12569
125702008-02-01 Kenichi Handa <handa@m17n.org>
12571
12572 * xfns.c (x_encode_text): Allocate coding.destination here, and
12573 call encode_coding_object with dst_object Qnil.
12574
12575 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
12576 multibyte form correctly.
12577
12578 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
12579 against Vfont_encoding_alist.
12580
12581 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
12582 handling of charset list.
12583 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
12584 (decode_coding_object): Move point to coding->dst_pos before
12585 calling post-read-conversion function.
12586 (encode_coding_object): Give correct arguments to
12587 pre-write-conversion. Ignore the return value of
12588 pre-write-conversion function. Pay attention to the case that
12589 pre-write-conversion changes the current buffer. If dst_object is
12590 Qt, even if coding->src_bytes is zero, allocate at least one byte
12591 to coding->destination.
12592
12593 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
12594
12595 * charset.c (Fmake_char): Make it more backward compatible.
12596 (Fmap_charset_chars): Fix docstring.
12597
125982008-02-01 Dave Love <fx@gnu.org>
12599
12600 * coding.c: Doc fixes.
12601 (Fdefine_coding_system_alias): Use names, not symbols, in
12602 coding-system-alist.
12603
126042008-02-01 Kenichi Handa <handa@m17n.org>
12605
12606 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
12607 of calling free_realized_face.
12608
126092008-02-01 Yong Lu <lyongu@asia-infonet.com>
12610
12611 * charset.c (read_hex): Don't treat SPC as a comment starter.
12612 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
12613 (Fdecode_char): Fix typo.
12614
126152008-02-01 Kenichi Handa <handa@m17n.org>
12616
12617 * charset.h (struct charset): New member `code_space_mask'.
12618
12619 * coding.c (coding_set_source): Delete the local variable beg_byte.
12620 (encode_coding_charset, Fdefine_coding_system_internal):
12621 Delete the local variable charset.
12622 (Fdefine_coding_system_internal): Setup
12623 attrs[coding_attr_charset_valids] correctly.
12624
12625 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
12626 member to check if CODE is valid or not.
12627 (Fdefine_charset_internal): Initialize `code_space_mask' member.
12628 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
12629 is within the range of charset->min_code and carset->max_code.
12630
126312008-02-01 Dave Love <fx@gnu.org>
12632
12633 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
12634
12635 * dispextern.h (generate_ascii_font): Fix return type.
12636
12637 * xfaces.c (generate_ascii_font): Fix arg declaration.
12638
12639 * coding.c (coding_inherit_eol_type)
12640 (Fset_terminal_coding_system_internal)
12641 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
12642
126432008-02-01 Kenichi Handa <handa@m17n.org>
12644
12645 * coding.c (decode_coding_charset, encode_coding_charset): Handle
12646 multiple charsets correctly.
12647
126482008-02-01 Kenichi Handa <handa@m17n.org>
12649
12650 * search.c (boyer_moore): Fix handling of multibyte character
12651 translation.
12652
12653 * xdisp.c (display_mode_element): When the variable `elt' is
12654 changed, update `this' and `lisp_string'.
12655
126562008-02-01 Kenichi Handa <handa@m17n.org>
12657
12658 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
12659
12660 * callproc.c (Fcall_process): Be sure to give the current buffer
12661 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
12662
12663 * charset.c (struct charset_map_entries): New struct.
12664 (load_charset_map): Rename from parse_charset_map. New args
12665 entries and n_entries. Change caller.
12666 (load_charset_map_from_file): Rename from load_charset_map.
12667 Change caller. New arg control_flag. Call load_charset_map at
12668 the tail.
12669 (load_charset_map_from_vector): New function.
12670 (Fdefine_charset_internal): Setup charset.compact_codes_p.
12671 (encode_char): If the charset is compact, change a character index
12672 to a code point.
12673
12674 * coding.c (coding_alloc_by_making_gap): Check the case that the
12675 source and destination are the same correctly.
12676 (decode_coding_raw_text): Set coding->consumed_char and
12677 coding->consumed to 0.
12678 (produce_chars): If coding->chars_at_source is nonzero, update
12679 coding->consumed_char and coding->consumed before calling
12680 alloc_destination.
12681 (Fdefine_coding_system_alias): Register ALIAS in
12682 Vcoding_system_alist.
12683 (syms_of_coding): Define `no-conversion' coding system at the tail.
12684
12685 * fileio.c (Finsert_file_contents): Set coding_system instead of
12686 val. If the current buffer is multibyte, always call
12687 decode_coding_gap.
12688
12689 * xfaces.c (try_font_list): Give higher priority to fontset's
12690 family than face's family.
12691
126922008-02-01 Kenichi Handa <handa@m17n.org>
12693
12694 * callproc.c (Fcall_process): Be sure to give the current buffer
12695 to decode_coding_c_string.
12696
12697 * xfaces.c (try_font_list): Give a family specified in a fontset
12698 higher priority than a family specified in a face.
12699
127002008-02-01 Kenichi Handa <handa@m17n.org>
12701
12702 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
12703 Fix arguments to insert_from_buffer.
12704
12705 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
12706
127072008-02-01 Kenichi Handa <handa@m17n.org>
12708
12709 * coding.c (produce_chars): Set the variable `multibytep' correctly.
12710 (decode_coding_gap): Set coding->dst_multibyte correctly.
12711
127122008-02-01 Kenichi Handa <handa@m17n.org>
12713
12714 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
12715 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
12716 (encode_coding_utf_16): Substitute coding->default_char for
12717 non-Unicode characters.
12718 (decode_coding): Don't call record_insert here.
12719 (setup_coding_system): Initialize `surrogate' of
12720 coding->spec.utf_16 to 0.
12721 (EMIT_ONE_BYTE): Fix for multibyte case.
12722
12723 * insdel.c (insert_from_gap): Call record_insert.
12724
127252008-02-01 Kenichi Handa <handa@m17n.org>
12726
12727 * casefiddle.c (casify_region): Fix multibyte case.
12728
12729 * character.c (c_string_width): Add return type `int'.
12730 (char_string_with_unification): Delete arg ADVANCED.
12731
12732 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
12733 (CHAR_STRING): Adjust for the change of char_string_with_unification.
12734 (CHAR_STRING_ADVANCE): Make it do-while statement.
12735
12736 * chartab.c (sub_char_table_set_range): Optimize for the case
12737 DEPTH == 3. Add workaround code for a GCC optimization bug.
12738
12739 * charset.c (parse_charset_map): Remove an unused variable.
12740
12741 * coding.c: Delete unused variables.
12742
12743 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
12744 earlier. If inserted is zero and the coding system doesn't
12745 require flushing, don't call decode_coding_gap.
12746
12747 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
12748
127492008-02-01 Kenichi Handa <handa@m17n.org>
12750
12751 The following changes are for using Unicode as an internal
12752 character model, and use UTF-8 format for buffer/string
12753 representation.
12754
12755 * .gdbinit (xchartable): Adjust for the change of char table structure.
12756 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
12757
12758 * Makefile.in (obj): Add character.o and chartab.o.
12759 (lisp, shortlisp): Remove utf-8.elc.
12760 (*.o): For many files, change dependency on charset.h to
12761 character.h, and add dependency on character.h.
12762 (character.o, chartab.o): New targets.
12763
12764 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
12765 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
12766 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
12767 of "charset.h".
12768
12769 * dired.c, filelock.c: Include "character.h".
12770
12771 * alloc.c: Include "character.h" instead of "charset.h".
12772 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
12773 (syms_of_alloc): Remove defsubr for Smake_char_table.
12774
12775 * buffer.c: Include "character.h" instead of "charset.h", don't
12776 include "coding.h".
12777 (Fset_buffer_multibyte): Adjust for UTF-8.
12778
12779 * buffer.h: EXFUN Fbuffer_live_p.
12780
12781 * callproc.c: Include "character.h" instead of "charset.h".
12782 (Fcall_process): Big change for the new code-conversion APIs.
12783
12784 * casetab.c: Include "character.h" instead of "charset.h".
12785 (set_canon, set_identity, shuffle): Adjust for the new
12786 map_char_table spec.
12787 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
12788 accessing the char table structure.
12789
12790 * chartab.c: New file that implements char table.
12791
12792 * category.c: Include "character.h".
12793 (copy_category_entry): New function.
12794 (copy_category_table): Call map_char_table and copy_category_entry.
12795 (Fmake_category_table): Initialize all top-level slots.
12796 (char_category_set): New function.
12797 (modify_lower_category_set): Delete.
12798 (Fmodify_category_entry): Call char_table_ref_and_range.
12799
12800 * category.h (CATEGORY_SET): Just call char_category_set.
12801
12802 * ccl.c: Include "character.h".
12803 (Qccl, Qcclp): New variables.
12804 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
12805 it's less than 256.
12806 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
12807 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
12808 and DST type.
12809 (ccl_driver): Change types of argument, adjust code accordingly.
12810 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
12811 ccl_driver.
12812 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
12813
12814 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
12815 New members src_multibyte, dst_multibyte, consumed, and produced.
12816 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
12817 (CODING_SPEC_CCL_PROGRAM): New macro.
12818 (ccl_driver): Update prototype.
12819 (Qccl, Qcclp, Fccl_program_p): Extern them.
12820 (CHECK_CCL_PROGRAM): New macro.
12821
12822 * character.c, character.h, chartab.c: New files.
12823
12824 * charset.c: Mostly re-written. Move character and multibyte sequence
12825 handling codes to character.c.
12826
12827 * charset.h: Mostly re-written. Move character and multibyte sequence
12828 handling codes to character.h.
12829
12830 * coding.c, coding.h: Mostly re-written.
12831
12832 * composite.c: Include "character.h" instead of "charset.h".
12833 (CHAR_WIDTH): Move to character.h.
12834 (HASH_KEY, HASH_VALUE): Delete.
12835
12836 * composite.h (enum composition_method): Change order of enumeration
12837 symbols.
12838
12839 * data.c: Include "character.h" instead of "charset.h".
12840 (Faref): Call CHAR_TABLE_REF for a char table.
12841 (Faset): Call CHAR_TABLE_SET for a char table.
12842
12843 * dispextern.h (free_realized_face, check_face_attribytes)
12844 (generate_ascii_font): Extern them.
12845 (free_realized_multibyte_face): Delete extern.
12846
12847 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
12848 table structure.
12849
12850 * editfns.c: Include "character.h" instead of "charset.h".
12851 (Fchar_to_string): Always call CHAR_STRING.
12852
12853 * emacs.c (main): Call init_charset_once, init_charset,
12854 syms_of_chartab, and syms_of_character.
12855
12856 * fileio.c: Include "character.h" instead of "charset.h".
12857 (Finsert_file_contents): Big change for the new code-conversion API.
12858 (choose_write_coding_system, Fwrite_region): Likewise.
12859 (build_annotations_2): Delete.
12860 (e_write): Big change for the new code-conversion API.
12861
12862 * fns.c: Include "character.h" instead of "charset.h".
12863 (copy_sub_char_table): Move to chartab.c.
12864 (Fcopy_sequence): Call copy_char_table for a char table.
12865 (concat): Delete codes calling count_multibyte.
12866 (string_char_to_byte, string_byte_to_char): Adjust for the new
12867 multibyte form.
12868 (internal_equal): Adjust for the change of char table structure.
12869 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
12870 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
12871 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
12872 (char_table_translate, optimize_sub_char_table)
12873 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
12874 chartab.c.
12875 (char_table_ref_and_index): Delete.
12876 (HASH_KEY, HASH_VALUE): Move to lisp.h.
12877 (Fmd5): Call preferred_coding_system instead of accessing
12878 Vcoding_category_list. Adjust for the new code-conversion API.
12879 (syms_of_fns): Move defsubr for char table related functions to
12880 chartab.c.
12881
12882 * fontset.c: Mostly re-written.
12883
12884 * fontset.h (struct font_info): Change type of the member encoding_type.
12885 (enum FONT_SPEC_INDEX): New enum.
12886 (fontset_font_pattern, fs_load_font): Update prototype.
12887 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
12888
12889 * indent.c: Include "character.h" instead of "charset.h".
12890 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
12891
12892 * insdel.c: Include "character.h" instead of "charset.h".
12893 (copy_text): Don't refer to Vnonascii_translation_table.
12894 (insert_from_gap): New function.
12895
12896 * keyboard.c: Include "character.h" instead of "charset.h".
12897 (command_loop_1): Never call direct_output_forward_char before
12898 a non-ASCII character.
12899 (read_char): If Vkeyboard_translate_table is a char table, always
12900 translate a character.
12901
12902 * keymap.c: Include "character.h".
12903 (store_in_keymap): Handle the case that IDX is a cons.
12904 (Fdefine_key): Handle the case that KEY is a cons and the car part
12905 is also a cons (range).
12906 (push_key_description): Adjust for the new character code.
12907 (describe_vector): Call describe_char_table for a char table.
12908 (describe_char_table): New function.
12909
12910 * keymap.h (describe_char_table): Extern it.
12911
12912 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
12913 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
12914 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
12915 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
12916 Delete.
12917 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
12918 structure.
12919 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
12920 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
12921 (CHARTAB_SIZE_BITS_3): New macros.
12922 (chartab_size): Extern it.
12923 (struct Lisp_Char_Table): Re-design.
12924 (struct Lisp_Sub_Char_Table): New structure.
12925 (HASH_KEY, HASH_VALUE): Move from fns.c.
12926 (CHARACTERBITS): Define as 22.
12927 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
12928 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
12929 (GC_SUB_CHAR_TABLE_P): New macro.
12930 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
12931 (code_convert_string_norecord): Deleted extern.
12932 (init_character_once, syms_of_character, init_charset)
12933 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
12934
12935 * lread.c: Include "character.h".
12936 (read_multibyte): New arg NBYTES.
12937 (read_escape): Change the meaning of returned *BYTEREP.
12938 (to_multibyte): Delete.
12939 (read1): Adjust the handling of char table and string.
12940
12941 * print.c: Include "character.h" instead of "charset.h".
12942 (print_string): Convert 8-bit raw bytes to octal form by
12943 string_escape_byte8.
12944 (print_object): Adjust for the new multibyte form. Print 8-bit
12945 raw bytes always in octal form. Handle sub char table correctly.
12946
12947 * process.c: Include "character.h" instead of "charset.h".
12948 (read_process_output, send_process): Adjust for the new
12949 code-conversion API.
12950
12951 * puresize.h (BASE_PURESIZE): Increase.
12952
12953 * regex.c: Include "character.h" instead of "charset.h".
12954 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
12955 (regex_compile): Accept a range whose starting and ending
12956 character have different leading bytes.
12957 (analyse_first): Adjust for the above change.
12958
12959 * search.c: Include "character.h" instead of "charset.h".
12960 (search_buffer, boyer_moore): Adjust for the new multibyte form.
12961 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
12962
12963 * syntax.c: Include "character.h" instead of "charset.h".
12964 (syntax_parent_lookup): Delete.
12965 (Fmodify_syntax_entry): Accept a cons as CHAR.
12966 (skip_chars): Adjust for the new multibyte form.
12967 (init_syntax_once): Call char_table_set_range instead of directly
12968 accessing the structure of a char table.
12969
12970 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
12971 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
12972 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
12973 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
12974
12975 * term.c: Include "buffer.h" and "character.h".
12976 (encode_terminal_code, write_glyphs): Adjust for the new
12977 code-conversion API.
12978 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
12979
12980 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
12981
12982 * xdisp.c: Include "character.h".
12983 (get_next_display_element): Adjust for the new multibyte form.
12984 (disp_char_vector): Adjust for the new char table structure.
12985 (decode_mode_spec_coding): Adjust for the new structure of
12986 coding system.
12987 (decode_mode_spec): Adjust for the new code-conversion API.
12988
12989 * xfaces.c: Include "character.h" instead of "charset.h".
12990 (load_face_font): Adjust for the change of choose_face_font and
12991 FS_LOAD_FONT.
12992 (generate_ascii_font): New function.
12993 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
12994 (set_font_frame_param): Adjust for the change of choose_face_font.
12995 (free_realized_face): Make it public.
12996 (free_realized_faces_for_fontset): Rename from
12997 free_realized_multibyte_face. Free also faces realized for ASCII.
12998 (choose_face_font): Change arguments. Adjust for the change of
12999 fontset_font_pattern and FS_LOAD_FONT.
13000
13001 * xfns.c: Include "character.h".
13002 (x_encode_text): Adjust for the new code-conversion API.
13003
13004 * xselect.c: Don't include "charset.h".
13005 (selection_data_to_lisp_data): Adjust for the new code conversion API.
13006
13007 * xterm.c: Include "character.h".
13008 (x_encode_char): New argument CHARSET. Change caller.
13009 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
13010 Call ENCODE_CHAR instead of SPLIT_CHAR.
13011 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
13012 CHAR_WIDTH instead of CHARSET_WIDTH.
13013 (XTread_socket): Adjust for the new code-conversion API.
13014 (x_new_font): Adjust for the change of FS_LOAD_FONT.
13015 (x_load_font): Adjust for the change of struct font.
13016
130172008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
13018
13019 * xfaces.c (face_at_buffer_position): Remove unused vars.
13020
130212008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13022
13023 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
13024 Fix overflow checking.
13025
130262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
13027
13028 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
13029 Cancel previous change.
13030
130312008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13032
13033 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
13034 ccl->eight_bit_control. Fix check for buffer overflow.
13035 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
13036 (ccl_driver): Initialize extra_bytes to 0.
13037
130382008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
13039
13040 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
13041 return it ORed with ctrl_modifier.
13042
130432008-01-29 Miles Bader <miles@gnu.org>
13044
13045 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
13046
130472008-01-28 Jason Rumney <jasonr@gnu.org>
13048
13049 * w32.c (stat): Don't double check for networked drive.
13050
130512008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
13052
13053 * window.c (run_window_configuration_change_hook): New function.
13054 Code extracted from set_window_buffer. Set the selected frame.
13055 (set_window_buffer): Use it.
13056 * window.h (run_window_configuration_change_hook): Declare.
13057 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
13058
13059 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
13060
130612008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
13062
13063 * Makefile.in: Remove references to unused macros.
13064
130652008-01-26 Eli Zaretskii <eliz@gnu.org>
13066
13067 * w32.c (g_b_init_get_sid_sub_authority)
13068 (g_b_init_get_sid_sub_authority_count): New static variables.
13069 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
13070 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
13071 (init_user_info): Use them to retrieve uid and gid.
13072 Use 500/513, the Windows defaults, as Administrator's uid/gid.
13073 (fstat): Use pw_uid and pw_gid from the_passwd structure for
13074 st_uid and st_gid of the file.
13075
130762008-01-26 Jason Rumney <jasonr@gnu.org>
13077
13078 * w32.c (logon_network_drive): New function.
13079 (stat): Use it.
13080
130812008-01-26 Chong Yidong <cyd@stupidchicken.com>
13082
13083 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
13084 invisible text covered with an ellipsis.
13085
130862008-01-25 Richard Stallman <rms@gnu.org>
13087
13088 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
13089 jump back to beginning. Move some other initializations after that.
13090 (Qwindow_text_change_functions, Vwindow_text_change_functions):
13091 New variables.
13092 (syms_of_xdisp): Init them.
13093
13094 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
13095
13096 * buffer.c (reset_buffer_local_variables):
13097 Implement `permanent-local-hook'.
13098 (Qpermanent_local_hook): New variable.
13099 (syms_of_buffer): Init and staticpro it.
13100
131012008-01-25 Michael Albinus <michael.albinus@gmx.de>
13102
13103 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
13104
131052008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
13106
13107 * fns.c (Fclrhash): Return TABLE.
13108
131092008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13110
13111 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
13112 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
13113 is set even without positional changes.
13114 (x_scroll_bar_clear): Set bar->redraw_needed_p.
13115
13116 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
13117
131182008-01-23 Jason Rumney <jasonr@gnu.org>
13119
13120 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
13121
13122 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
13123 the unicode range available in MULE by locale-coding-system.
13124 Improve dbcs lead byte detection. Set event timestamp and modifiers
13125 earlier.
13126
131272008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13128
13129 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
13130 [MAC_OSX] (init_mac_osx_environment): Initialize it.
13131 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
13132 when used on child processes.
13133
131342008-01-21 Michael Albinus <michael.albinus@gmx.de>
13135
13136 * dbusbind.c (Fdbus_method_return_internal): Rename from
13137 Fdbus_method_return.
13138 (Fdbus_unregister_object): Move to dbus.el.
13139 (Fdbus_call_method, Fdbus_method_return_internal)
13140 (Fdbus_send_signal): Improve debug messages.
13141
131422008-01-20 Martin Rudalics <rudalics@gmx.at>
13143
13144 * undo.c (undo_inhibit_record_point): New variable.
13145 (syms_of_undo): Initialize it.
13146 (record_point): Don't record point when undo_inhibit_record_point
13147 is set.
13148
131492008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
13150
13151 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
13152
13153 * xdisp.c (Qauto_hscroll_mode): New var.
13154 (syms_of_xdisp): Initialize it.
13155 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
13156 window's buffer.
13157 (hscroll_windows): Don't check automatic_hscrolling_p here.
13158
13159 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
13160 vscroll if we're setting window-buffer to the value it already has.
13161
131622008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
13163
13164 * m/intel386.h: Remove references to XENIX.
13165
131662008-01-17 Andreas Schwab <schwab@suse.de>
13167
13168 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
13169 instead of HAVE_X86_64_LIB64_DIR.
13170 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
13171
131722008-01-17 Glenn Morris <rgm@gnu.org>
13173
13174 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
13175 to HAVE_X86_64_LIB64_DIR.
13176
131772008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
13178
13179 * s/irix3-3.h:
13180 * s/irix4-0.h:
13181 * s/386-ix.h:
13182 * s/domain.h:
13183 * s/hpux9-x11r4.h:
13184 * s/hpux9shxr4.h: Remove files for systems no longer supported.
13185
13186 * sysdep.c: Remove code containing references to symbols defined
13187 by unsupported systems.
13188
131892008-01-16 Glenn Morris <rgm@gnu.org>
13190
13191 * coding.c (select-safe-coding-system-function): Doc fix.
13192
131932008-01-15 Glenn Morris <rgm@gnu.org>
13194
13195 * config.in: Revert 2008-01-13 change: this is a generated file.
13196
131972008-01-13 Tom Tromey <tromey@redhat.com>
13198
13199 * lisp.h: Fix typo.
13200
132012008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13202
13203 * m/sequent-ptx.h:
13204 * m/sequent.h:
13205 * s/ptx.h:
13206 * s/ptx4-2.h:
13207 * s/ptx4.h: Remove files for systems no longer supported.
13208
13209 * callproc.c (Fcall_process): Fix previous change.
13210
132112008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
13212
13213 * unexsunos4.c: Remove file, system not supported anymore.
13214
13215 * m/mips.h:
13216 * m/intel386.h:
13217 * callproc.c:
13218 * config.in:
13219 * ecrt0.c:
13220 * emacs.c:
13221 * fileio.c:
13222 * frame.c:
13223 * getpagesize.h:
13224 * keyboard.c:
13225 * lread.c:
13226 * process.c:
13227 * puresize.h:
13228 * sysdep.c:
13229 * systty.h:
13230 * syswait.h:
13231 * unexec.c:
13232 * xdisp.c:
13233 * alloc.c: Remove code containing references to symbols defined by
13234 unsupported systems.
13235
132362008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
13237
13238 * coding.c (detect_coding_mask): Fix previous change.
13239
132402008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
13241
13242 * coding.c (detect_coding_iso2022): New arg
13243 latin_extra_code_state. Allow Latin extra codes only
13244 when *latin_extra_code_state is nonzero.
13245 (detect_coding_mask): If there is a NULL byte, detect the encoding
13246 as UTF-16 or binary. If Latin extra codes exist, detect the
13247 encoding as ISO-2022 only when there's no other proper encoding is
13248 found.
13249
132502008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13251
13252 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
13253 #ifdef MAC_OS.
13254
132552008-01-08 Richard Stallman <rms@gnu.org>
13256
13257 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
13258
132592008-01-06 Nick Roberts <nickrob@snap.net.nz>
13260
13261 * keyboard.c (parse_menu_item): Don't enclose key bindings on
13262 menu bar in parentheses.
13263
132642008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
13265
13266 * m/7300.h:
13267 * m/acorn.h:
13268 * m/alliant-2800.h:
13269 * m/alliant.h:
13270 * m/alliant1.h:
13271 * m/alliant4.h:
13272 * m/altos.h:
13273 * m/amdahl.h:
13274 * m/apollo.h:
13275 * m/att3b.h:
13276 * m/aviion-intel.h:
13277 * m/aviion.h:
13278 * m/celerity.h:
13279 * m/clipper.h:
13280 * m/cnvrgnt.h:
13281 * m/convex.h:
13282 * m/cydra5.h:
13283 * m/delta88k.h:
13284 * m/dpx2.h:
13285 * m/dual.h:
13286 * m/elxsi.h:
13287 * m/f301.h:
13288 * m/gould-np1.h:
13289 * m/gould.h:
13290 * m/i860.h:
13291 * m/ibmps2-aix.h:
13292 * m/ibmrt-aix.h:
13293 * m/ibmrt.h:
13294 * m/irist.h:
13295 * m/is386.h:
13296 * m/isi-ov.h:
13297 * m/mega68.h:
13298 * m/mg1.h:
13299 * m/news-r6.h:
13300 * m/news-risc.h:
13301 * m/news.h:
13302 * m/nh3000.h:
13303 * m/nh4000.h:
13304 * m/ns16000.h:
13305 * m/ns32000.h:
13306 * m/nu.h:
13307 * m/orion.h:
13308 * m/orion105.h:
13309 * m/paragon.h:
13310 * m/pfa50.h:
13311 * m/plexus.h:
13312 * m/pyramid.h:
13313 * m/pyrmips.h:
13314 * m/sh3el.h:
13315 * m/sps7.h:
13316 * m/sr2k.h:
13317 * m/stride.h:
13318 * m/sun1.h:
13319 * m/sun2.h:
13320 * m/sun3-68881.h:
13321 * m/sun3-fpa.h:
13322 * m/sun3-soft.h:
13323 * m/sun3.h:
13324 * m/sun386.h:
13325 * m/symmetry.h:
13326 * m/tad68k.h:
13327 * m/tahoe.h:
13328 * m/targon31.h:
13329 * m/tek4300.h:
13330 * m/tekxd88.h:
13331 * m/tower32.h:
13332 * m/tower32v3.h:
13333 * m/ustation.h:
13334 * m/wicat.h:
13335 * m/xps100.h:
13336 * s/cxux.h:
13337 * s/cxux7.h:
13338 * s/dgux.h:
13339 * s/dgux4.h:
13340 * s/dgux5-4-3.h:
13341 * s/dgux5-4r2.h:
13342 * s/esix.h:
13343 * s/esix5r4.h:
13344 * s/hiuxmpp.h:
13345 * s/hiuxwe2.h:
13346 * s/iris3-5.h:
13347 * s/iris3-6.h:
13348 * s/isc2-2.h:
13349 * s/isc3-0.h:
13350 * s/isc4-0.h:
13351 * s/isc4-1.h:
13352 * s/newsos5.h:
13353 * s/newsos6.h:
13354 * s/osf1.h:
13355 * s/osf5-0.h:
13356 * s/riscix1-1.h:
13357 * s/riscix12.h:
13358 * s/sco4.h:
13359 * s/sco5.h:
13360 * s/sunos4-0.h:
13361 * s/sunos4-1.h:
13362 * s/sunos413.h:
13363 * s/sunos4shr.h:
13364 * s/umax.h:
13365 * s/unipl5-2.h:
13366 * s/xenix.h:
13367 * cxux-crt0.s:
13368 * unexapollo.c:
13369 * unexconvex.c:
13370 * unexenix.c:
13371 * unexsni.c: Remove files for systems no longer supported.
13372
13373 * m/intel386.h: Remove references to unsupported systems.
13374
13375 * w32.c (get_emacs_configuration): Remove reference to i860.
13376
13377 * sysdep.c: Remove dead code.
13378
133792008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
13380
13381 * s/rtu.h:
13382 * m/masscomp.h: Remove files. Platform is obsolete.
13383
133842008-01-04 Michael Albinus <michael.albinus@gmx.de>
13385
13386 * dbusbind.c (Fdbus_method_return): New function.
13387 (xd_read_message): Add the serial number to the event.
13388 (Fdbus_register_method): Activate the function.
13389
133902008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
13391
13392 * keyboard.c (read_key_sequence): Fix typo.
13393
133942008-01-03 Michael Albinus <michael.albinus@gmx.de>
13395
13396 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
13397 (xd_signature, xd_append_arg): Handle element type detection for
13398 empty arrays.
13399 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
13400 SDATA () calls; this must be solved more general.
13401 (Fdbus_register_signal): Use SBYTES instead of strlen.
13402
134032008-01-03 Magnus Henoch <magnus@zemdatav>
13404
13405 * dbusbind.c (xd_append_arg): Use unsigned char instead of
13406 unsigned int for byte values (necessary for big-endian platform).
13407 (Fdbus_call_method): Handle the case of no returned arguments.
13408
134092007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
13410
13411 * dbusbind.c (xd_read_message): Use non-static input_event struct.
13412
134132007-12-31 Magnus Henoch <mange@freemail.hu>
13414
13415 * dbusbind.c (xd_signature): Signature of variant is just "v".
13416
134172007-12-30 Michael Albinus <michael.albinus@gmx.de>
13418
13419 * dbusbind.c: Fix several errors and compiler warnings.
13420 Reported by Tom Tromey <tromey@redhat.com>.
13421 (XD_ERROR, XD_DEBUG_MESSAGE)
13422 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
13423 (xd_append_arg): Part for basic D-Bus types rewritten.
13424 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
13425 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
13426 appropriate.
13427 (xd_read_message): Return Qnil. Don't signal an error; it is not
13428 useful during event reading.
13429 (Fdbus_register_signal): Signal an error if the check for
13430 FUNCTIONP fails.
13431 (Fdbus_register_method): New function. The implementation is not
13432 complete, the call of the function signals an error therefore.
13433 (Fdbus_unregister_object): New function, renamed from
13434 Fdbus_unregister_signal. The initial check signals an error, if
13435 the object is not well formed.
13436
134372007-12-30 Richard Stallman <rms@gnu.org>
13438
13439 * textprop.c (get_char_property_and_overlay):
13440 Signal error if POSITION is out of range in a buffer.
13441
134422007-12-29 Martin Rudalics <rudalics@gmx.at>
13443
13444 * w32fns.c (Fx_create_frame): Make copy of frame parameters
13445 because the original parameters are in pure storage now.
13446
134472007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13448
13449 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
13450
134512007-12-22 Eli Zaretskii <eliz@gnu.org>
13452
13453 * callint.c (syms_of_callint) <command-history>: Add reference to
13454 history-length in the doc string.
13455
134562007-12-17 Jason Rumney <jasonr@gnu.org>
13457
13458 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
13459 before passing as wParam.
13460
134612007-12-22 Michael Albinus <michael.albinus@gmx.de>
13462
13463 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
13464 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
13465 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
13466 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
13467 as number.
13468 (Fdbus_call_method): Fix docstring.
13469
134702007-12-21 Michael Albinus <michael.albinus@gmx.de>
13471
13472 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
13473 New macros.
13474 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
13475 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
13476 Simplify.
13477 (xd_signature): New function.
13478 (xd_append_arg): Compute also signatures. Major rewrite.
13479 (xd_retrieve_arg): Make debug messages friendly.
13480 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
13481 Check for signatures of arguments.
13482
134832007-12-19 Michael Albinus <michael.albinus@gmx.de>
13484
13485 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
13486 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
13487 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
13488 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
13489 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
13490 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
13491 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
13492 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
13493 (xd_retrieve_value): Remove. Functionality included in ...
13494 (xd_append_arg): New function.
13495 (Fdbus_call_method, Fdbus_send_signal): Apply it.
13496
134972007-12-16 Michael Albinus <michael.albinus@gmx.de>
13498
13499 * dbusbind.c (top): Include <stdio.h>.
13500 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
13501 dbus_message_new_method_call and dbus_message_new_signal.
13502 (Fdbus_register_signal): Rename unique_name to uname.
13503 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
13504 non-existing unique name. Fix typos in matching rule. Return an
13505 object which is useful in Fdbus_unregister_signal.
13506 (Fdbus_unregister_signal): Reimplementation, in order to remove
13507 only the corresponding entry.
13508 (Vdbus_registered_functions_table): Change the order of entries.
13509 Apply these changes in xd_read_message and Fdbus_register_signal.
13510
135112007-12-16 Andreas Schwab <schwab@suse.de>
13512
13513 * fileio.c (Finsert_file_contents): Fix overflow check to not
13514 depend on undefined integer overflow.
13515
135162007-12-14 Jason Rumney <jasonr@gnu.org>
13517
13518 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
13519 for characters above 127.
13520
135212007-12-13 Jason Rumney <jasonr@gnu.org>
13522
13523 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
13524 before dereferencing array.
13525 (lookup_vk_code): Remove zero comparison.
13526
135272007-12-14 Michael Albinus <michael.albinus@gmx.de>
13528
13529 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
13530 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
13531 Use `unsigned int' instead of `uint'.
13532 (xd_read_message, Fdbus_register_signal): Split expressions into
13533 multiple lines before operators "&&" and "||", according to the
13534 GNU Coding Standards.
13535
135362007-12-14 Eli Zaretskii <eliz@gnu.org>
13537
13538 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
13539
135402007-12-12 Juri Linkov <juri@jurta.org>
13541
13542 * buffer.c (Frename_buffer): In interactive spec replace
13543 `read-buffer' with `read-string' that uses `buffer-name-history'
13544 as history, and the current buffer's name as default.
13545
135462007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
13547
13548 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
13549 manipulating the backtrace manually.
13550 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
13551 (struct backtrace, backtrace_list): Remove.
13552 (command_loop_1): Remove dead var `no_direct'.
13553
13554 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
13555 preserve non-built-in buffer-local variables.
13556 (Fkill_all_local_variables): Don't re-create&re-set permanent
13557 buffer-local variables.
13558
135592007-12-09 Juri Linkov <juri@jurta.org>
13560
13561 * buffer.c (Frename_buffer): Change interactive spec from "s" to
13562 Lisp code that uses `read-buffer' with current buffer as default.
13563
135642007-12-08 Michael Albinus <michael.albinus@gmx.de>
13565
13566 * dbusbind.c (xd_read_message): Generate an event for every
13567 registered handler. There might be several handlers registered
13568 for the same signal.
13569 (Fdbus_register_signal): Don't overwrite a registration for the
13570 same signal. Add a new registration if handlers are different.
13571 (Vdbus_registered_functions_table): Rework doc string.
13572
135732007-12-07 Michael Albinus <michael.albinus@gmx.de>
13574
13575 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
13576 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
13577 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
13578 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
13579 Unify argument lists.
13580 (xd_read_message, Fdbus_register_signal): Reorder and extend event
13581 arguments and hash table keys. Use unique name for service.
13582 (Fdbus_unregister_signal): Remove checks.
13583 (Vdbus_registered_functions_table): Fix doc string.
13584
135852007-12-05 Magnus Henoch <mange@freemail.hu>
13586
13587 * process.c (make_process): Initialize pty_flag to 0.
13588
135892007-12-05 Jason Rumney <jasonr@gnu.org>
13590
13591 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
13592 specified XBMs.
13593
135942007-12-05 Richard Stallman <rms@gnu.org>
13595
13596 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
13597
135982007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13599
13600 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
13601 New variable.
13602 (mac_try_close_socket) [MAC_OSX]: New function.
13603 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
13604 Update cfsockets_for_select. Replace invalid CFRunLoop source.
13605
13606 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
13607 Use mac_try_close_socket.
13608
136092007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13610
13611 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
13612 reloc_base.
13613 (copy_dysymtab): Compute relocation base here.
13614 (rebase_reloc_address) [__ppc64__]: New function.
13615 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
13616 changed.
13617
136182007-12-05 Jason Rumney <jasonr@gnu.org>
13619
13620 * w32proc.c (sys_spawnve): Quote args with wildcards.
13621
136222007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13623
13624 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
13625 __objc_* sections.
13626 (unrelocate) [_LP64]: Set relocation base to address of data segment.
13627
136282007-12-05 Michael Albinus <michael.albinus@gmx.de>
13629
13630 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
13631 Move check for Vdbus_registered_functions_table to
13632 xd_read_queued_messages.
13633 (xd_read_queued_messages): Protect xd_read_message calls by
13634 internal_condition_case_1.
13635
136362007-12-04 Michael Albinus <michael.albinus@gmx.de>
13637
13638 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
13639 Qdbus_system_bus and Qdbus_session_bus, respectively.
13640 (Vdbus_intern_symbols): Remove.
13641 (Vdbus_registered_functions_table): New hash table.
13642 (XD_SYMBOL_INTERN_SYMBOL): Remove.
13643 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
13644 Rewrite in order to manage registered functions by hash table
13645 Vdbus_registered_functions_table.
13646
136472007-12-03 Jan Djärv <jan.h.d@swipnet.se>
13648
13649 * xterm.c: Update URL to Window Manager Specification in comment.
13650
136512007-12-02 Michael Albinus <michael.albinus@gmx.de>
13652
13653 * config.in (HAVE_DBUS): Add.
13654
13655 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
13656 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
13657 (obj): Add $(DBUS_OBJ).
13658 (LIBES): Add $(DBUS_LIBS).
13659 (dbusbind.o): New target.
13660
13661 * dbusbind.c: New file.
13662
13663 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
13664
13665 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
13666 (Qdbus_event): New Lisp symbol.
13667 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
13668 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 13669 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
13670
13671 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
13672
136732007-12-01 Richard Stallman <rms@gnu.org>
13674
13675 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
13676
136772007-11-30 Jason Rumney <jasonr@gnu.org>
13678
13679 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
13680 (w32con_reset_terminal_modes): Clear screen buffer.
13681 (w32_face_attributes): Don't use color indexes that are out of range.
13682 Only reverse the default colors.
13683
13684 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
13685 WINDOWSNT.
13686
13687 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
13688
136892007-11-29 Jason Rumney <jasonr@gnu.org>
13690
13691 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
13692 (w32_face_attributes): Use Vtty_defined_color_alist to determine
13693 if the terminal colors are initialized.
13694 (unspecified_fg, unspecified_bg): Remove unused declarations.
13695
136962007-11-29 Andreas Schwab <schwab@suse.de>
13697
13698 * keyboard.c (apply_modifiers): Fix typo.
13699
137002007-11-29 Richard Stallman <rms@gnu.org>
13701
13702 * keymap.c (Fcurrent_local_map): Doc fix.
13703
137042007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
13705
13706 * s/gnu-kfreebsd.h: New file.
13707
137082007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
13709
13710 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
13711 Don't cast redundantly.
13712
13713 * keyboard.c (KEY_TO_CHAR): New macro.
13714 (parse_modifiers, apply_modifiers): Accept integer arguments.
13715 (read_key_sequence): Use them to unify the "shift->unshift" mapping
13716 for chars and symbol keys.
13717 After doing such remapping, apply function-key-map again.
13718
137192007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
13720
13721 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
13722 compiled anymore.
13723
137242007-11-26 Andreas Schwab <schwab@suse.de>
13725
13726 * process.c (list_processes_1): Fix indentation level of the
13727 command column.
13728
137292007-11-23 Andreas Schwab <schwab@suse.de>
13730
13731 * editfns.c (Fformat): Handle %c specially since it requires the
13732 argument to be of type int.
13733
137342007-11-23 Markus Triska <markus.triska@gmx.at>
13735
13736 * emacs.c (main): Call init_editfns before init_process, since
13737 init_process sets Vprocess_connection_type depending on OS release.
13738
137392007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
13740
13741 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
13742 (find_symbol_value): Use do_symval_forwarding.
13743
13744 * data.c (set_internal): Set the value in the `cons-cell' (for
13745 Buffer_Local_values) not only for frame-local variables.
13746
137472007-11-22 Andreas Schwab <schwab@suse.de>
13748
13749 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
13750 values to sprintf.
13751 * keymap.c (Fsingle_key_description): Likewise.
13752 * print.c (print_object): Likewise.
13753
137542007-11-22 Jan Djärv <jan.h.d@swipnet.se>
13755
13756 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
13757 file for image is nil.
13758
137592007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
13760
13761 * term.c: Include stdarg.h.
13762 (fatal): Implement using varargs.
13763 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
13764
137652007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13766
13767 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
13768 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
13769 Update call to buffer_slot_type_mismatch.
13770 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
13771 (buffer_slot_type_mismatch): Update.
13772 * buffer.c (buffer_local_types): Remove.
13773 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
13774 (defvar_per_buffer): Set the type in the buffer_objfwd.
13775
137762007-11-21 Jason Rumney <jasonr@gnu.org>
13777
13778 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
13779 CreateFileMapping returns NULL on failure.
13780
137812007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
13782
13783 * search.c (Fset_match_data): Remove the `evaporate' feature.
13784 (unwind_set_match_data): Don't use the `evaporate' feature.
13785
137862007-11-21 Jason Rumney <jasonr@gnu.org>
13787
13788 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
13789
13790 * w32console.c (w32con_write_glyphs): Remove unused variables.
13791
137922007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
13793
13794 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
13795
13796 * s/darwin.h (MULTI_KBOARD): Remove.
13797
13798 * macfns.c (x_create_tip_frame, Fx_create_frame)
13799 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
13800
138012007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
13802
13803 * buffer.c (Fbuffer_local_value): Remove redundant test.
13804 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
13805 than in `current-buffer' to match the comment.
13806 Do the swap using swap_in_global_binding.
13807
13808 * data.c (store_symval_forwarding, set_internal):
13809 * eval.c (specbind): Remove dead code.
13810
13811 * coding.c (detect_coding, Fupdate_coding_systems_internal):
13812 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
13813 Since we do not want to see internal Lisp_*fwd objects here.
13814
138152007-11-18 Jan Djärv <jan.h.d@swipnet.se>
13816
13817 * sysdep.c (init_system_name): Use getaddrinfo if available.
13818
13819 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
13820 (x_scroll_bar_note_movement): start, end, with, height in struct
13821 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
13822
138232007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
13824
13825 * puresize.h (BASE_PURESIZE): Increase to 1190000.
13826
138272007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
13828
13829 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
13830 This undoes Richard's change of 14-Oct-2002.
13831
13832 * alloc.c (allocate_other_vector):
13833 * lisp.h (allocate_other_vector): Remove.
13834
13835 * window.c (struct save_window_data): Move non-lisp data to the end
13836 and make it `int' rather than Lisp_Object.
13837 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
13838 Done wrap/unwrap integer values.
13839 (Fset_window_configuration, compare_window_configurations):
13840 Update use of fields to their new types.
13841
13842 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
13843 Turn integer fields into `int'. Merge x_window_low and x_window_high.
13844 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
13845 (SET_SCROLL_BAR_X_WINDOW): Remove.
13846 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
13847 Access the new x_window field directly.
13848 * xterm.c (x_scroll_bar_create): Use a pseudovector.
13849 Don't wrap/unwrap integers into Lisp_Objects.
13850 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
13851 (x_scroll_bar_report_motion):
13852 Don't wrap/unwrap integers into Lisp_Objects.
13853 (x_term_init): Use SDATA.
13854 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
13855 (x_scroll_bar_set_handle, x_scroll_bar_remove)
13856 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
13857 (x_scroll_bar_report_motion, x_scroll_bar_clear):
13858 * xfns.c (x_set_background_color):
13859 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
13860 Access the new x_window field directly.
13861
13862 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
13863 (allocate_pseudovector): Make non-static.
13864
13865 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
13866 (allocate_pseudovector): Declare.
13867 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
13868
138692007-11-15 Andreas Schwab <schwab@suse.de>
13870
13871 * editfns.c (Fformat): Correctly format EMACS_INT values.
13872 Also take precision into account when formatting an integer.
13873
13874 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
13875
138762007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
13877
13878 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
13879 (syms_of_keyboard): Defsubr it.
13880
13881 * data.c (swap_in_global_binding): Fix longstanding bug where
13882 store_symval_forwarding was not called with the right second argument,
13883 thus causing objfwd-ing from being dropped.
13884
138852007-11-14 Juanma Barranquero <lekktu@gmail.com>
13886
13887 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
13888 (Fx_display_pixel_height, Fx_display_planes)
13889 (Fx_display_color_cells, Fx_server_max_request_size)
13890 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13891 (Fx_display_visual_class, Fx_display_save_under):
13892 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
13893 (Fx_display_pixel_height, Fx_display_planes)
13894 (Fx_display_color_cells, Fx_server_max_request_size)
13895 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
13896 (Fx_display_mm_height, Fx_display_mm_width)
13897 (Fx_display_backing_store, Fx_display_visual_class)
13898 (Fw32_select_font, Fx_display_save_under):
13899 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
13900 (Fx_display_pixel_height, Fx_display_planes)
13901 (Fx_display_color_cells, Fx_server_max_request_size)
13902 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
13903 (Fx_display_save_under): Fix typos in docstrings.
13904
139052007-11-14 Juanma Barranquero <lekktu@gmail.com>
13906
13907 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
13908 corresponding to deleted entries; they are an implementation detail.
13909 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
13910 Remove variables.
13911 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
13912 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
13913 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
13914 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
13915 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
13916 (Fw32_define_rgb_color, Fw32_load_color_file)
13917 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
13918 Fix typos in docstrings.
13919 (Fx_server_version): Reflow docstring.
13920 (Fw32_shell_execute): Doc fixes.
13921
139222007-11-13 Juanma Barranquero <lekktu@gmail.com>
13923
13924 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
13925 if w32_parse_hot_key returned nil.
13926
139272007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
13928
13929 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
13930
139312007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 13932
aac0c6e3
MR
13933 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
13934
13935 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
13936
13937 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
13938 Remove W32_SCROLL_BAR_CLICK_EVENT.
13939
13940 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
13941 Add MULTIMEDIA_KEY_EVENT.
13942
13943 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
13944 (lispy_multimedia_keys) [WINDOWSNT]: New array.
13945 (make_lispy_event) [WINDOWSNT]: Use it to translate
13946 MULTIMEDIA_KEY_EVENT.
13947
13948 * w32term.h (WM_APPCOMMAND): Define if not already.
13949 (GET_APPCOMMAND_LPARAM): Likewise.
13950
13951 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
13952 WM_APPCOMMAND.
13953
13954 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
13955 (syms_of_w32fns): Export and initialize it.
13956 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
13957
139582007-11-09 Chong Yidong <cyd@stupidchicken.com>
13959
13960 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
13961 twice.
13962
13963 * xdisp.c (handle_face_prop): Fix last change.
13964
139652007-11-09 Richard Stallman <rms@gnu.org>
13966
13967 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
13968 not just for after-strings and before-strings.
13969 Call face_for_overlay_string and pass the overlay to it.
13970 (handle_display_prop): Determine whether property came from an overlay.
13971 Pass OVERLAY arg to handle_single_display_spec.
13972 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
13973 (load_overlay_strings): Fill in it->string_overlays.
13974 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
13975
13976 * xfaces.c (face_for_overlay_string): Function renamed from
13977 face_at_buffer_position_no_overlays, and add arg OVERLAY.
13978
13979 * dispextern.h (struct it): New elt string_overlays.
13980 New elt from_overlay, also in stack.
13981 Rearrange a few elements.
13982 (face_for_overlay_string): Decl renamed from
13983 face_at_buffer_position_no_overlays, and add argument.
13984
139852007-11-09 Richard Stallman <rms@gnu.org>
13986
13987 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
13988 to get the base face for an overlay string.
13989
13990 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
13991
13992 * xfaces.c (face_at_buffer_position_no_overlays): New function.
13993
13994 * xdisp.c (handle_stop): Move some code out of loop.
13995
139962007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13997
13998 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
13999 Fix conversion from Lisp object to ATSUFontID.
14000
140012007-11-09 Jason Rumney <jasonr@gnu.org>
14002
14003 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
14004
140052007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14006
14007 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
14008 Don't assume regions are aligned to page boundary.
14009 (print_load_command_name): Add LC_UUID if defined.
14010
140112007-11-09 Richard Stallman <rms@gnu.org>
14012
14013 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
14014
140152007-11-07 Jason Rumney <jasonr@gnu.org>
14016
14017 * s/windows95.h: Remove.
14018
140192007-11-06 Jan Djärv <jan.h.d@swipnet.se>
14020
14021 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
14022 abort with a message on unhandled store_type values.
14023
140242007-11-01 Jan Djärv <jan.h.d@swipnet.se>
14025
14026 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
14027 Remove HAVE_X11R5 and HAVE_X11R4.
14028
140292007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14030
14031 * Makefile.in: Remove references to sunfns.c and sunfns.o.
14032
140332007-11-01 Johan Bockgård <bojohan@gnu.org>
14034
14035 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
14036 Don't set s->stippled_p here, since it has already been set by
14037 x_set_glyph_string_gc from x_draw_glyph_string.
14038
140392007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
14040
14041 * sunfns.c: Remove file.
14042
14043 * m/sun386.h:
14044 * m/sun2.h:
14045 * m/sparc.h: Remove Sun windows code.
14046
140472007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
14048
14049 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
14050 (init_keyboard): Set current_kboard's window-system to nil.
14051 (tty_read_avail_input): Typo.
14052 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
14053
140542007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
14055
14056 * s/usg5-4.h:
14057 * s/usg5-3.h:
14058 * s/ptx.h:
14059 * m/is386.h:
14060 * m/ibmps2-aix.h:
14061 * Makefile.in: Remove all mentions of X10.
14062
14063 * dispnew.c (syms_of_display): Don't mention version 10.
14064
140652007-10-28 Juanma Barranquero <lekktu@gmail.com>
14066
14067 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
14068 ($(BLD)/abbrev.$(O)): Remove.
14069
140702007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
14071
14072 Rewrite abbrev.c in Elisp.
14073 * image.c (Qcount): Don't declare as extern.
14074 (syms_of_image): Initialize and staticpro `Qcount'.
14075 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
14076 * emacs.c (main): Don't call syms_of_abbrev.
14077 * Makefile.in (obj): Remove abbrev.o.
14078 (abbrev.o): Remove.
14079 * abbrev.c: Remove.
14080
140812007-10-26 Martin Rudalics <rudalics@gmx.at>
14082
14083 * window.c (window_min_size_2): Don't count header-line.
14084
140852007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
14086
14087 * frame.h (struct frame): Move all bit fields after the first bit
14088 field to take advantage of the available space. Group all the
14089 chars together to reduce wasted space due to padding.
14090
140912007-10-26 Juanma Barranquero <lekktu@gmail.com>
14092
14093 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
14094
14095 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
14096 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
14097 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
14098 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
14099 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
14100 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
14101 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
14102 (last_marked, mark_object_loop_halt): Make static.
14103
14104 * frame.c (syms_of_frame) <delete-frame-functions>:
14105 Fix typo in docstring.
14106
141072007-10-25 Juanma Barranquero <lekktu@gmail.com>
14108
14109 * w32.c (init_environment): Fix tiny memory leak.
14110 (w32_get_resource): Remove unused variable `ok'.
14111
141122007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
14113
14114 Make `window-system' into a keyboard-local variable (rather than
14115 frame-local as done originally by multi-tty).
14116
14117 * keyboard.h (struct kboard): Add Vwindow_system.
14118 * keyboard.c (init_kboard): Set a default for Vwindow_system.
14119 (mark_kboards): Mark Vwindow_system.
14120
14121 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
14122 (init_display): Don't set the obsolete `window-system' frame-param.
14123
14124 * xterm.c (x_term_init):
14125 * w32term.c (w32_create_terminal):
14126 * term.c (init_tty): Set Vwindow_system.
14127 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
14128 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
14129
14130 * xfns.c (Fx_create_frame, x_create_tip_frame):
14131 * w32fns.c (Fx_create_frame, x_create_tip_frame):
14132 * macfns.c (Fx_create_frame):
14133 Don't set the obsolete `window-system' frame-param.
14134
14135 * frame.h (Qwindow_system): Remove.
14136 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
14137 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
14138
141392007-10-24 Richard Stallman <rms@gnu.org>
14140
14141 * frame.c (x_figure_window_size): For fullscreen case,
14142 set USPosition | PPosition without clobbering rest of window_prompting.
14143
14144 * keyboard.c (Fcurrent_idle_time): Doc fix.
14145
14146 * print.c (Fwith_output_to_temp_buffer): Doc fix.
14147
141482007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
14149
14150 * process.c (unwind_request_sigio): Only define if __ultrix__.
14151
14152 * callproc.c (child_setup): Remove spurious *.
14153
14154 * lisp.h (Fget_text_property): Declare.
14155 (have_menus_p): Declare it here rather than in sys-dep header files.
14156 * macterm.h (have_menus_p):
14157 * msdos.h (have_menus_p):
14158 * xterm.h (have_menus_p): Remove.
14159
14160 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
14161 (Fmake_variable_frame_local): Just check the variable's const-ness
14162 rather than checking nil or t.
14163
141642007-10-22 Jason Rumney <jasonr@gnu.org>
14165
14166 * w32fns.c: Include math.h.
14167 (w32_abort): Declaration moved to nt/config.nt.
14168
14169 * s/ms-w32.h (HAVE_STDLIB_H): Define.
14170 (abort): Redefinition moved to nt/config.nt.
14171
14172 * m/windowsnt.h: Remove.
14173
141742007-10-22 Juanma Barranquero <lekktu@gmail.com>
14175
14176 * emacs.c (Fdump_emacs): Fix typo in message.
14177 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
14178 <installation-directory>: Reflow docstring.
14179
141802007-10-22 Juri Linkov <juri@jurta.org>
14181
14182 * minibuf.c: Allow minibuffer default to be a list of default values.
14183 With empty input use the first element of this list as returned default.
14184 (string_to_object)
14185 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
14186 (read_minibuf): If defalt is cons, set histstring to its car.
14187 (Fread_string): If default_value is cons, set val to its car.
14188 (Fread_buffer): If def is cons, use its car.
14189 (Fcompleting_read): If defalt is cons, set val to its car.
14190
141912007-10-21 Michael Albinus <michael.albinus@gmx.de>
14192
14193 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
14194
141952007-10-20 Juanma Barranquero <lekktu@gmail.com>
14196
14197 * doc.c (Fdocumentation): Check for advice in all cases.
14198
141992007-10-19 Chong Yidong <cyd@stupidchicken.com>
14200
14201 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
14202
142032007-10-19 Richard Stallman <rms@gnu.org>
14204
14205 * doc.c (Fdocumentation): Check for and handle an advised function.
14206
142072007-10-19 Juanma Barranquero <lekktu@gmail.com>
14208
14209 * process.c (Fset_process_filter): Doc fix.
14210
142112007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
14212
14213 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
14214 which caused key-translation-map to applied repeatedly (thus breaking
14215 double-mode).
14216
142172007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14218
14219 * xselect.c (x_own_selection, x_handle_selection_clear)
14220 (x_clear_frame_selections):
14221 * w32menu.c (list_of_panes, list_of_items):
14222 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
14223 * textprop.c (validate_plist, interval_has_all_properties)
14224 (interval_has_some_properties, interval_has_some_properties_list)
14225 (add_properties, text_property_list):
14226 * process.c (Fget_buffer_process, list_processes_1, status_notify):
14227 * minibuf.c (Fassoc_string):
14228 * macselect.c (x_own_selection, x_clear_frame_selections)
14229 (Fx_disown_selection_internal):
14230 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
14231 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
14232
142332007-10-17 Chong Yidong <cyd@stupidchicken.com>
14234
14235 * process.c: Link to libs for calling res_init() if available.
14236 (Fmake_network_process): Call res_init() before getaddrinfo or
14237 gethostbyname, if possible.
14238
142392007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
14240
14241 * lread.c (read1): Set pvectype for char_tables.
14242
14243 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
14244 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
14245 Add type checks.
14246 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
14247
14248 * alloc.c (free_misc): Use XMISCTYPE.
14249 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
14250
142512007-10-17 Glenn Morris <rgm@gnu.org>
14252
14253 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
14254 (syms_of_minibuf): Add Qcompletion_ignore_case.
14255 * dired.c (Qcompletion_ignore_case): Change to external.
14256 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
14257 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
14258 (Fread_file_name): Use it rather than intern'ing.
14259
14260 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
14261 (Fread_coding_system): Ignore case of user input.
14262
142632007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14264
14265 * xdisp.c (handle_display_prop): Ignore display specs after
14266 replacing one when string text is being replaced.
14267 (handle_single_display_spec): Pretend as if characters with display
14268 property haven't been consumed only when buffer text is being replaced.
14269
142702007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
14271
14272 * xfns.c (Fx_create_frame, Fx_display_list):
14273 * window.c (window_fixed_size_p, enlarge_window)
14274 (shrink_window_lowest_first):
14275 * macterm.c (init_font_name_table):
14276 * macfns.c (Fx_create_frame, Fx_display_list):
14277 * lread.c (close_load_descs):
14278 * keyboard.c (read_char_x_menu_prompt):
14279 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
14280 * coding.c (code_convert_region_unwind): Test the type of an object
14281 rather than just !NILP before extracting data from it.
14282
14283 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
14284
14285 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
14286 (XMISCANY): New macro.
14287 (XMISCTYPE): Use it.
14288 (struct Lisp_Misc_Any): New type.
14289 (union Lisp_Misc): Use it.
14290 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
14291 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
14292 (find_symbol_value, set_internal, default_value, Fset_default)
14293 (Fmake_variable_buffer_local, Fmake_local_variable)
14294 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
14295 (Flocal_variable_if_set_p, Fvariable_binding_locus):
14296 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
14297 * alloc.c (allocate_buffer): Set the size and tag.
14298 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
14299 Use XMISCANY.
14300 (die): Follow the GNU convention for error messages.
14301 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
14302 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
14303 tag any more.
14304 (set_buffer_internal_1):
14305 * frame.c (store_frame_param):
14306 * eval.c (specbind):
14307 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
14308
14309 * doc.c (Fsnarf_documentation): Simplify.
14310
143112007-10-14 Juanma Barranquero <lekktu@gmail.com>
14312
14313 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
14314 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
14315
143162007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
14317
14318 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
14319
143202007-10-14 Juanma Barranquero <lekktu@gmail.com>
14321
14322 * eval.c (do_autoload): Don't save autoloads.
14323
14324 * data.c (Ffset): Save autoload of the function being set.
14325
143262007-10-07 John Paul Wallington <jpw@pobox.com>
14327
14328 * xfns.c (x_create_tip_frame): Set the `display-type' frame
14329 parameter before setting up faces.
14330
143312007-10-13 Eli Zaretskii <eliz@gnu.org>
14332
14333 * ccl.c (Fregister_code_conversion_map):
14334 * keyboard.c (append_tool_bar_item): Reformat last change.
14335
14336 * lisp.h (eabs): Rename from `abs'. All callers changed.
14337
143382007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
14339
14340 * buffer.c (add_overlay_mod_hooklist):
14341 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
14342 * fontset.c (make_fontset):
14343 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
14344 (append_tool_bar_item):
14345 * macmenu.c (grow_menu_items):
14346 * w32menu.c (grow_menu_items):
14347 * xmenu.c (grow_menu_items): Use larger_vector.
14348
143492007-10-13 Eli Zaretskii <eliz@gnu.org>
14350
14351 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
14352 selected frame'' on MSDOS).
14353
143542007-10-12 Martin Rudalics <rudalics@gmx.at>
14355
14356 * frame.c (Qexplicit_name): New variable.
14357 (x_report_frame_params): Report it in parameter alist.
14358 (syms_of_frame): Intern and staticpro it.
14359
143602007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
14361
14362 * macfns.c (x_create_tip_frame): Set terminal for frame.
14363
143642007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
14365
14366 * frame.c (Qenvironment): Remove.
14367 (syms_of_frame) <Qenvironment>: Don't initialize.
14368 (Fdelete_frame): Don't treat the `environment' param specially.
14369 * frame.h (Qenvironment): Don't declare.
14370 * callproc.c (set_initial_environment): Don't set unused frame param.
14371
14372 * frame.c (Fframe_with_environment): Remove.
14373 (syms_of_frame) <Sframe_with_environment>: Don't declare.
14374
14375 * lisp.h (Fframe_with_environment): Don't declare.
14376
143772007-10-10 Juanma Barranquero <lekktu@gmail.com>
14378
14379 * indent.c (indent_tabs_mode, last_known_column)
14380 (last_known_column_modified): Make static.
14381 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
14382
143832007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
14384
14385 * puresize.h (BASE_PURESIZE): Increase to 1170000.
14386
143872007-10-09 Jason Rumney <jasonr@gnu.org>
14388
14389 * w32term.c (x_set_window_size): Disable code that attempts to tell
14390 Lisp code about a size change before it actually happens.
14391
143922007-10-09 Richard Stallman <rms@gnu.org>
14393
14394 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
14395 return HANDLED_RETURN.
14396
143972007-10-08 Martin Rudalics <rudalics@gmx.at>
14398
14399 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
14400 when there's an unread command event.
14401
14402 * frame.c (focus_follows_mouse): Move here from frame.el to allow
14403 window autoselection act appropriately when leaving selected frame.
14404 (syms_of_frame): Initialize focus_follows_mouse.
14405 * frame.h (focus_follows_mouse): Extern it.
14406 * macterm.c (XTread_socket): When focus_follows_mouse is nil
14407 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
14408 * msdos.c (dos_rawgetc): Likewise.
14409 * w32term.c (w32_read_socket): Likewise.
14410 * xterm.c (handle_one_xevent): Likewise.
14411 * xdisp.c (syms_of_xdisp): In doc-string of
14412 mouse-autoselect-window mention focus-follows-mouse.
14413
144142007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14415
14416 * macterm.c (mac_load_query_font): Fix missing return value.
14417 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
14418 Add BLOCK_INPUT.
14419
144202007-10-08 Richard Stallman <rms@gnu.org>
14421
14422 * xdisp.c (get_window_cursor_type): Implement documented behavior
14423 for cursor-in-non-selected-windows = t.
14424
144252007-10-08 Jason Rumney <jasonr@gnu.org>
14426
14427 * w32.c (w32_get_resource): Always close registry keys.
14428
144292007-10-08 Jason Rumney <jasonr@gnu.org>
14430
14431 * makefile.w32-in (LIBS): Add COMCTL32.
14432
14433 * w32fns.c (globals_of_w32fns): Init common controls.
14434
144352007-10-08 Richard Stallman <rms@gnu.org>
14436
14437 * image.c (our_memory_buffer): Rename from omfib_buffer.
14438
144392007-10-08 Richard Stallman <rms@gnu.org>
14440
14441 * buffer.c (Foverlays_at): Doc fix.
14442
144432007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
14444
14445 * fns.c (Fplist_put): Preserve uneven tail data.
14446
144472007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
14448
14449 * termhooks.h (enum event_kind): Remove trailing comma.
14450
14451 * frame.h (enum): Remove trailing comma.
14452
144532007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14454
14455 * w32proc.c (delete_child): Don't terminate threads of zombies.
14456
144572007-10-08 Martin Rudalics <rudalics@gmx.at>
14458
14459 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
14460
14461 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
14462 last-repeatable-command.
14463 (init_kboard): Initialize Vlast_repeatable_command.
14464 (command_loop_1): Set it to real_this_command unless that was
14465 bound to an input event.
14466 (mark_kboards): Mark it.
14467
144682007-10-08 Richard Stallman <rms@gnu.org>
14469
14470 * eval.c (condition-case): Doc fix.
14471
144722007-10-08 Masatake YAMATO <jet@gyve.org>
14473
14474 * xfaces.c (tty_supports_face_attributes_p): Fix code
14475 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
14476 was copied and not edited.
14477
144782007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
14479
14480 Add new `input-decode-map' keymap and use it for terminal
14481 escape sequences.
14482 * keyboard.h (struct kboard): Add Vinput_decode_map.
14483 Remove Vlocal_key_translation_map.
14484 * keyboard.c (read_key_sequence): Add support for input-decode-map.
14485 (init_kboard): Init input-decode-map.
14486 Replace local-key-translation-map back with key-translation-map.
14487 (syms_of_keyboard): Declare input-decode-map.
14488 Remove local-key-translation-map. Update docstrings.
14489 (mark_kboards): Mark Vinput_decode_map.
14490 Don't mark Vlocal_key_translation_map.
14491 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
14492 Replace local-key-translation-map back with key-translation-map.
14493 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
14494 Bind in input-decode-map rather than function-key-map.
14495
14496 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
14497 This was made redundant by the previous introduction of XSETPVECTYPE.
14498
144992007-10-09 Richard Stallman <rms@gnu.org>
14500
14501 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
14502
145032007-09-29 Richard Stallman <rms@gnu.org>
14504
14505 * eval.c (internal_condition_case_2, internal_condition_case_1)
14506 (internal_condition_case): Reenable abort if x_catching_errors ()
14507 to see if that really happens and why.
14508
145092007-10-06 Andreas Schwab <schwab@suse.de>
14510
14511 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
14512
145132007-10-04 Juanma Barranquero <lekktu@gmail.com>
14514
14515 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
14516
145172007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
14518
14519 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
14520
145212007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
14522
14523 * window.h (struct window):
14524 * window.c (struct save_window_data, struct saved_window):
14525 * termhooks.h (struct terminal):
14526 * process.h (struct Lisp_Process):
14527 * frame.h (struct frame):
14528 * buffer.h (struct buffer):
14529 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
14530 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
14531 The size field of (pseudo)vectors is now unsigned.
14532 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
14533
14534 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
14535 Turn `count' into an integer.
14536
14537 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
14538 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
14539 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
14540 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
14541 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
14542
14543 * alloc.c (allocate_pseudovector): New fun.
14544 (ALLOCATE_PSEUDOVECTOR): New macro.
14545 (allocate_window, allocate_terminal, allocate_frame)
14546 (allocate_process): Use it.
14547 (mark_vectorlike): New function.
14548 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
14549 (mark_terminals): Use it.
14550 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
14551 (Fmake_byte_code): Use XSETPVECTYPE.
14552
14553 * frame.c (Fframe_parameters): Minor simplification.
14554
14555 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
14556
14557 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
14558
14559 * buffer.c (Fget_buffer_create, init_buffer_once):
14560 * lread.c (defsubr):
14561 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
14562
14563 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
14564 defined differently in the m/*.h files.
14565 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
14566 (XSETPVECTYPE): New macro.
14567 (XSETPSEUDOVECTOR): Use it.
14568
14569 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
14570 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
14571
14572 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
14573 * lread.c (defvar_per_buffer):
14574 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
14575
14576 * window.c (candidate_window_p): Only consider as visible frames that
14577 are on the same terminal.
14578
14579 * m/ibms390x.h (MARKBIT): Remove unused macro.
14580
145812007-10-01 Juanma Barranquero <lekktu@gmail.com>
14582
14583 * lread.c (Fload): Fix typo in docstring.
14584
145852007-10-01 Michaël Cadilhac <michael@cadilhac.name>
14586
14587 * floatfns.c (Fexpt): Manually check for overflows, so that a power
14588 of a non-zero value can't yield zero.
14589
145902007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
14591
14592 * term.c (term_clear_mouse_face, term_mouse_highlight)
14593 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
14594
14595 * print.c (safe_debug_print): Use XHASH.
14596
14597 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
14598 Lisp elements such as tags.
14599 (XHASH): New macro.
14600 (EQ): Use it.
14601 (SREF, SSET, STRING_COPYIN): Use SDATA.
14602 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
14603
14604 * alloc.c (mark_terminal): Remove left-over declaration.
14605 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
14606 (allocate_vectorlike): Remove type argument. Adjust callers.
14607 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
14608 Only handle the one remaining MEM_TYPE_VECTORLIKE.
14609
14610 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
14611 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
14612 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
14613 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
14614 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
14615 Use them.
14616
14617 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
14618 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
14619 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
14620
146212007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
14622
14623 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
14624 loaded by default.
14625
146262007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
14627
14628 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
14629 on this tty.
14630 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
14631
14632 * term.c (mouse_face_window): Rename from Qmouse_face_window.
14633 Update all users.
14634 (handle_one_term_event): Use Gpm_DrawPointer.
14635 (Fgpm_mouse_start): Rename from Fterm_open_connection.
14636 Signal errors instead of returning nil. Always return nil.
14637 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
14638 Make it a noop if gpm-mouse was not activated.
14639 (syms_of_term): Update names.
14640
146412007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
14642
14643 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
14644 (init_sys_modes): Check that gpm_tty is the current tty.
14645
14646 * alloc.c (allocate_terminal): Set the vector size to only count the
14647 lisp fields. Initialize those to nil.
14648 (mark_object): Don't treat terminals specially.
14649 (mark_terminal): Remove.
14650 (mark_terminals): Use mark_object instead.
14651
14652 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
14653 the GC to the beginning.
14654
14655 * indent.h:
14656 * indent.c: Use EMACS_INT for ints coming from Elisp data.
14657
14658 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
14659
146602007-09-25 Jason Rumney <jasonr@gnu.org>
14661
14662 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
14663
14664 * w32console.c (create_w32cons_output): Remove.
14665
14666 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
14667
14668 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
14669 (reset_sys_modes): Use reset_terminal_modes_hook.
14670
146712007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
14672
14673 * eval.c (do_autoload): Don't output any message.
14674
146752007-09-24 Juri Linkov <juri@jurta.org>
14676
14677 * emacs.c (standard_args): Change priority of "--no-splash"
14678 from 40 to 3. Add "--no-desktop" with the same priority.
14679
146802007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
14681
14682 * alloc.c (gc_sweep): Check cons cell mark bits word by word
14683 and optimize the case where they are all 1.
14684
146852007-09-23 Johannes Weiner <hannes@saeurebad.de>
14686
14687 * lisp.h (abs): Define if not defined.
14688 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
14689 Don't define `abs', since it's defined in lisp.h.
14690
146912007-09-22 Eli Zaretskii <eliz@gnu.org>
14692
14693 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
14694 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
14695 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
14696 (init_tty): Use DEV_TTY instead of "/dev/tty".
14697 [WINDOWSNT]: No need to protect from NAME arg being null.
14698
146992007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
14700
14701 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
14702 up the tty state.
14703
147042007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14705
14706 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
14707 (gpm_tty): Change its type.
14708 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
14709 (gpm_tty): Change its type and initialize it.
14710 (Fterm_open_connection): Check the frame is indeed a tty.
14711 Use the new gpm_tty.
14712 (Fterm_close_connection): Use the new gpm_tty.
14713 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
14714 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
14715
147162007-09-21 Juanma Barranquero <lekktu@gmail.com>
14717
14718 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
14719 underline_color, to draw strike-through.
14720
147212007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
14722
14723 * lisp.h (allocate_terminal): Declare.
14724
14725 * window.c (candidate_window_p): Consider frames that are being placed
14726 by the user as somewhere between visible and iconified.
14727 (window_loop): Prefer windows on the current frame.
14728 (Fselect_window): Move the use of select-frame to the beginning so we
14729 can just delegate all the work (it'll call us back anyway).
14730
14731 * frame.c (Qdisplay_environment_variable):
14732 * frame.h (Qdisplay_environment_variable): Delete.
14733
14734 * .gdbinit (xbacktrace): Print the arg's address rather than the value
14735 of the first arg, since that value may be a union.
14736
14737 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
14738 parameter rather than Qdisplay_environment_variable. If all else
14739 fails, look for DISPLAY in initial-environment.
14740
147412007-09-21 Glenn Morris <rgm@gnu.org>
14742
14743 * Makefile.in (emacstool): Remove target.
14744 (lisp, shortlisp): Remove termdev.elc.
14745
147462007-09-21 Markus Triska <markus.triska@gmx.at>
14747
14748 * xterm.c (x_delete_display): Compile session management conditionally.
14749
147502007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
14751
14752 * callproc.c (getenv_internal_1): New function.
14753 (getenv_internal): Use it.
14754 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
14755
14756 * terminal.c (get_terminal): Don't accept ints to represent terminals.
14757 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
14758 (Fset_terminal_parameter): Work with dead terminals as well.
14759 (Fmodify_terminal_parameters): Remove.
14760
14761 * terminal.c (get_terminal): Handle terminals.
14762 Make sure the terminal returned is live.
14763 (create_terminal): Use allocate_terminal.
14764 (mark_terminals): Move to alloc.c.
14765 (delete_terminal): Use terminal->name as liveness status.
14766 NULL out fields after freeing their contents.
14767 Don't deallocate the object.
14768 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
14769 rather than an int.
14770 (Fterminal_live_p): Accept non-integer arguments.
14771 (Fterminal_list): Return terminal objects rather than an ints.
14772
14773 * alloc.c (enum mem_type): New member for `terminal' objects.
14774 (allocate_terminal): New function.
14775 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
14776 Handle terminals.
14777 (mark_terminal): New fun.
14778 (mark_terminals): Move from terminal.c.
14779
14780 * term.c (get_tty_terminal): Don't treat output_initial specially.
14781 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
14782 (delete_tty): Use terminal->name as liveness status.
14783
14784 * termhooks.h (struct terminal): Make it into a pseudovector.
14785 Remove `deleted' replaced by checking `name's nullness.
14786
14787 * print.c (print_object): Handle terminals.
14788
14789 * lisp.h (enum pvec_type): New `terminal' pseudovector.
14790 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
14791
14792 * frame.c (make_terminal_frame):
14793 * keyboard.c (tty_read_avail_input):
14794 * w32term.c (x_delete_terminal):
14795 * xfns.c (Fx_create_frame, x_create_tip_frame):
14796 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
14797
147982007-09-20 Glenn Morris <rgm@gnu.org>
14799
14800 * process.c (Fmake_network_process): Doc fix.
14801
148022007-09-19 Jason Rumney <jasonr@gnu.org>
14803
14804 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
14805
148062007-09-19 Michaël Cadilhac <michael@cadilhac.name>
14807
14808 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
14809 Fix a C warning regarding variable constness.
14810
14811 * xterm.c (handle_one_xevent): Fix a C warning.
14812
148132007-09-18 Jason Rumney <jasonr@gnu.org>
14814
14815 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
14816
148172007-09-17 Jan Djärv <jan.h.d@swipnet.se>
14818
14819 * gtkutil.c (gdpy_def): New variable.
14820 (xg_initialize): Initialize gdpy_def.
14821 (xg_display_close): If no other display exists, set gdpy_def to a
14822 new connection.
14823
148242007-09-16 Jan Djärv <jan.h.d@swipnet.se>
14825
14826 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
14827 when we have no file name for the icon.
14828 (xg_tool_bar_expose_callback): Remove.
14829 (xg_create_tool_bar): Don't connect expose signal to
14830 xg_tool_bar_expose_callback.
14831 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
14832
148332007-09-16 Andreas Schwab <schwab@suse.de>
14834
14835 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
14836 values instead of zapping them.
14837
148382007-09-14 Glenn Morris <rgm@gnu.org>
14839
14840 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
14841 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
14842 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
14843 scope and rename to omfib_buffer for clarity.
14844 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
14845
148462007-09-14 Kenichi Handa <handa@m17n.org>
14847
14848 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
14849
148502007-09-13 Jason Rumney <jasonr@gnu.org>
14851
14852 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
14853
14854 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
14855
14856 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
14857 (mac_term_init): Call here instead, passing rif.
14858
148592007-09-13 Glenn Morris <rgm@gnu.org>
14860
14861 * s/hpux.h: No longer define `static' as nothing.
14862
148632007-09-13 Johan Bockgård <bojohan@gnu.org>
14864
14865 * callint.c (Fcall_interactively): Remove unused var `fun'.
14866
148672007-09-12 Romain Francoise <romain@orebokech.com>
14868
14869 * window.c (prefer_window_split_horizontally, display_buffer):
14870 Revert 2007-09-08 change.
14871
148722007-09-12 Glenn Morris <rgm@gnu.org>
14873
14874 * alloca.c: Remove file.
14875 * Makefile.in (alloca): Do not undef.
14876 (allocaobj, alloca.o): Remove.
14877 (otherobj): Remove allocaobj.
14878 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
14879 * regex.c (C_ALLOCA): Remove all references and code that was only
14880 used when this was defined.
14881 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
14882 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
14883 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
14884
14885 * Makefile.in (SOURCES, unlock, relock): Delete.
14886
14887 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
14888 (menu_grab_callback): All uses changed.
14889
14890 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
14891 (x_reply_selection_request): All uses changed.
14892
148932007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
14894
14895 * lread.c (load_warn_old_style_backquotes): Change message to look
14896 better when it appears in the middle of byte-compiler messages.
14897
148982007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
14899
14900 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
14901
14902 * xterm.c (x_create_terminal): Add comment.
14903
14904 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
14905
149062007-09-10 Richard Stallman <rms@gnu.org>
14907
14908 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
14909
149102007-09-10 Michaël Cadilhac <michael@cadilhac.name>
14911
14912 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
14913 (DEFUN): Document `intspec', use it instead of `prompt'.
14914
14915 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
14916
14917 * data.c (Finteractive_form): If the interactive specification starts
14918 with a `(', use it as a Lisp form.
14919
14920 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
14921 name and file modes.
14922
14923 * callint.c (Fcall_interactively): Comment fixes.
14924
149252007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
14926
14927 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
14928 and compiled functions.
14929
149302007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
14931
14932 * window.c (prefer_window_split_horizontally): New variable.
14933 (display_buffer): Consider splitting window horizontally depending
14934 on prefer_window_split_horizontally.
14935
149362007-09-08 Eli Zaretskii <eliz@gnu.org>
14937
14938 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
14939
149402007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
14941
14942 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
14943
14944 * frame.c (x_set_frame_parameters): Check number is positive before
14945 using XFASTINT.
14946
14947 * window.c (freeze_window_start): Don't presume selected_window holds
14948 a window object.
14949 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
14950
149512007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
14952
14953 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
14954
149552007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
14956
14957 * window.c (Vsplit_window_preferred_function): New var.
14958 (Fdisplay_buffer): Use it.
14959 (syms_of_window): Export, and initialize it.
14960
149612007-09-06 Pixel <pixel@mandriva.com> (tiny change)
14962
14963 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
14964
149652007-09-06 Glenn Morris <rgm@gnu.org>
14966
14967 * gtkutil.c (menu_grab_callback) <cnt>:
14968 * xselect.c (x_reply_selection_request) <cnt>: Move static
14969 variable to file scope.
14970
149712007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
14972
14973 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
14974 consistent values of selected_frame and selected_window.
14975
149762007-09-04 Jason Rumney <jasonr@gnu.org>
14977
14978 * w32console.c (initialize_w32_display): Zero unused hooks.
14979
149802007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
14981
14982 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
14983 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
14984
149852007-09-04 Jason Rumney <jasonr@gnu.org>
14986
14987 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
14988 in w32console.c. Set up input. Remove XXX comments that have been
14989 confirmed as correct.
14990
14991 * s/ms-w32.h (MULTI_KBOARD): Define.
14992
14993 * w32console.c (one_and_only_w32cons): Remove.
14994 (initialize_w32_display): Take terminal argument.
14995
14996 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
14997 initialize_w32_display.
14998 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
14999
15000 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
15001
15002 * keyboard.c (discard_mouse_events): Discard it.
15003 (make_lispy_event): Translate it to a lisp event.
15004 (lispy_wheel_names): Add wheel-left and right events.
15005 (syms_of_keyboard): Enlarge wheel_syms.
15006
15007 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
15008 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
15009
15010 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
15011
15012 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
15013 from WM_MOUSEHWHEEL.
15014 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
15015
15016 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
15017 terminal.
15018
15019 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
15020 keyboard for the terminal.
15021
150222007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
15023
15024 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
15025 (Vresume_tty_hook): Rename from Vresume_tty_functions.
15026 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
15027 and resume-tty-function to resume-tty-hook.
15028 (Fsuspend_tty, Fresume_tty): Use new names.
15029
150302007-09-02 Jan Djärv <jan.h.d@swipnet.se>
15031
15032 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
15033 if it starts with "n:".
15034
150352007-08-31 Jan Djärv <jan.h.d@swipnet.se>
15036
15037 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
15038
150392007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
15040
15041 * frame.h:
15042 * frame.c (Qterm_environment_variable): Remove.
15043 (syms_of_frame): Don't init and staticpro it.
15044
15045 * callproc.c (getenv_internal): Remove special case for $TERM.
15046
15047 * callproc.c (Vinitial_environment): New variable.
15048 (set_initial_environment): Initialize it.
15049 (syms_of_callproc): Declare it.
15050 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
15051 TERM under which a process runs is never related to the TERM in which
15052 Emacs is running.
15053
150542007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15055
15056 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
15057 * s/darwin.h: ... do it here.
15058
150592007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
15060
15061 * lisp.h (set_initial_environment): Rename from set_global_environment.
15062
15063 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
15064 removed by mistake on the multi-tty branch.
15065
15066 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
15067 (Fmodify_frame_parameters): Return a value.
15068
15069 * image.c (png_load): Comment-out var only used in commented-out code.
15070
15071 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
15072 before passing it to mark_object.
15073
15074 * xfaces.c (internal_resolve_face_name): Return a value.
15075 (internal_resolve_face_name, resolve_face_name_error): Comment out.
15076
15077 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
15078 (x_icon): Comment-out var only used in commented-out code.
15079
150802007-08-29 Romain Francoise <romain@orebokech.com>
15081
15082 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
15083 QUIT hasn't been provided.
15084
150852007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
15086
15087 * callproc.c (child_setup, getenv_internal): Use the
15088 display-environment-variable and term-environment-variable frame params.
15089 (set_initial_environment): Initialise Vprocess_environment.
15090
15091 * config.in: Disable multi-keyboard support on a mac.
15092
15093 * frame.c (Qterm_environment_variable)
15094 (Qdisplay_environment_variable): New variables.
15095 (syms_of_frame): Intern and staticpro them.
15096 (Fmake_terminal_frame): Disable output method test.
15097
15098 * frame.h: Declare them here.
15099
15100 * macfns.c (x_set_mouse_color): Get rif from the frame.
15101 (x_set_tool_bar_lines): Don't use updating_frame.
15102 (mac_window): Add 2 new parameters for consistency with other systems.
15103 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
15104 frame parameters following what is done in X11 and w32. Don't use
15105 FRAME_MAC_DISPLAY_INFO.
15106 (Fx_open_connection, start_hourglass): Remove window-system check.
15107 (x_create_tip_frame): Get the keyboard from the terminal.
15108
15109 * macmenu.c: Reorder includes.
15110 (Fx_popup_menu): Use terminal specific mouse_position_hook.
15111
15112 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
15113 terminal parameter.
15114 (x_clear_frame): Add a frame parameter.
15115 (note_mouse_movement): Get rif from the frame.
15116 (mac_term_init): Initialize the terminal.
15117 (mac_initialize): Make static and move terminal initialization ...
15118 (mac_create_terminal): ... to this new function.
15119
15120 * macterm.h (struct mac_display_info): Add terminal.
15121 (mac_initialize): Delete declaration.
15122
15123 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
15124
15125 * sysdep.c: Comment out text after #endif.
15126
15127 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
15128 is defined. Better initialize ttys in windows. Use terminal
15129 specific mouse_position_hook.
15130
15131 * termhooks.h (union display_info): Add mac_display_info.
15132
15133 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
15134 Set the default minibuffer frame, window_system and the rest of the
15135 frame parameters following what is done in X11.
15136
15137 * w32term.c (w32_initialize): Make static.
15138
15139 * xselect.c (x_handle_selection_clear): Only access
15140 terminal->kboard when MULTI_KBOARD is defined.
15141
15142 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
15143 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
15144
151452007-08-29 Jason Rumney <jasonr@gnu.org>
15146
15147 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
15148 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
15149
15150 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
15151 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
15152
15153 * keyboard.c (restore_kboard_configuration): Only define when
15154 MULTI_KBOARD defined.
15155
15156 * makefile.w32-in: Update dependancies from Makefile.in.
15157 (OBJ1): Add terminal.$(O)
15158
15159 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
15160 Don't define function body.
15161 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
15162
15163 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
15164
15165 * w32.c (request_sigio, unrequest_sigio): Remove.
15166
15167 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
15168 (w32con_clear_frame, w32con_clear_end_of_line)
15169 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
15170 (w32con_delete_glyphs, w32con_set_terminal_window)
15171 (scroll_line, w32_sys_ring_bell): Add frame arg.
15172 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
15173 Add terminal arg.
15174 (PICK_FRAME): Remove.
15175 (w32con_write_glyphs): Use frame specific terminal coding.
15176 (one_and_only_w32cons): New global variable.
15177 (initialize_w32_display): Use it for storing hooks.
15178 (create_w32cons_output): New function.
15179
15180 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
15181 arg a frame.
15182
15183 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
15184 Set window_system.
15185 (x_set_tool_bar_lines): Don't use updating_frame.
15186 (Fx_create_frame): Set terminal and ref count.
15187 (Fx_open_connection): Remove window-system check.
15188
15189 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
15190
15191 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
15192 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
15193 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
15194 Add frame arg.
15195 (x_delete_terminal, w32_create_terminal): New functions.
15196 (w32_term_init): Create a terminal.
15197 (w32_initialize): Move terminal specific initialization to
15198 w32_create_terminal.
15199
15200 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
15201 (w32_clear_rect, w32_clear_area): Use background from frame.
15202 (w32_display_info): Add terminal.
15203 (w32_sys_ring_bell, x_delete_display): Declare here.
15204
15205 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
15206
15207 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
15208
152092007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
15210
15211 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
15212 Fix get_named_tty calls for the controlling tty.
15213
152142007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
15215
15216 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
15217
152182007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
15219
15220 * term.c (tty_insert_glyphs): Add missing first parameter.
15221
152222007-08-29 Károly Lőrentey <karoly@lorentey.hu>
15223
15224 * buffer.c (Fbuffer_list, Fbury_buffer):
15225 Take frame->buried_buffer_list into account.
15226
15227 * cm.c (current_tty): New variable, for cmputc().
15228 (cmputc): Use it.
15229 (cmcheckmagic): Add tty parameter, look up terminal streams there.
15230 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
15231 (cmgoto): Add tty parameter. Pass it on to calccost().
15232 Use emacs_tputs() instead of tputs().
15233
15234 * cm.h (emacs_tputs): New macro to set current_tty, and then call
15235 tputs().
15236 (current_tty): New variable, for cmputc().
15237 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
15238
15239 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
15240 (internal_condition_case, internal_condition_case_1)
15241 (internal_condition_case_2): Don't abort when x_catching_errors.
15242
15243 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
15244 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
15245 prevent crashes caused by bogus longjmps in read_char.
15246
15247 * keymap.h (Fset_keymap_parent): Add EXFUN.
15248
15249 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
15250 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15251 Remove redundant definition.
15252
15253 * macfns.c (x_set_mouse_color, x_make_gc):
15254 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15255
15256 * w32term.c (x_free_frame_resources):
15257 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15258 (w32_initialize): Use the accessor macros for terminal characteristics.
15259
15260 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
15261 Use the accessor macros for terminal characteristics.
15262 * msdos.c (internal_terminal_init): Use the accessor macros for
15263 terminal characteristics.
15264 (ScreenVisualBell, internal_terminal_init):
15265 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15266
15267 * termopts.h (no_redraw_on_reenter): Declare.
15268
15269 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
15270 (mark_terminals, mark_ttys): Declare.
15271 (Fgarbage_collect): Call them.
15272 (mark_object): Mark buried_buffer_list.
15273
15274 * prefix-args.c: Include stdlib.h for exit.
15275
15276 * syssignal.h: Add comment.
15277
15278 * indent.c: Include stdio.h.
15279
15280 * window.h (Vinitial_window_system): Declare.
15281 (Vwindow_system): Delete declaration.
15282
15283 * fontset.c (Finternal_char_font): Use FRAME_RIF.
15284
15285 * image.c (lookup_image): Don't initialize `c' until the xasserts
15286 have been run.
15287
15288 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
15289 FRAME_FOREGROUND_PIXEL.
15290
15291 * print.c (print_preprocess): Don't lose print_depth levels while
15292 iterating.
15293
15294 * widget.c (update_from_various_frame_slots):
15295 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15296
15297 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
15298 frames.
15299 (window_internal_height): Remove bogus make_number call.
15300 (init_window_once): Call make_terminal_frame with two zero parameters.
15301
15302 * fileio.c (Fread_file_name): Update comment.
15303
15304 * callint.c (Fcall_interactively):
15305 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
15306 Make sure it is correctly unwound.
15307
15308 * xsmfns.c (x_session_close): New function.
15309
15310 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
15311 Delete declarations.
15312
15313 * xterm.h: Remove declaration for x_fully_uncatch_errors.
15314 (x_output): Remove background_pixel and foreground_pixel fields.
15315 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
15316 (x_delete_device, x_session_close): Declare.
15317
15318 * lread.c: Include setjmp.h. Update declaration of `read_char'.
15319 (read_filtered_event): Call `read_char' with a local
15320 `wrong_kboard_jmpbuf'.
15321
15322 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
15323 Don't call single_kboard_state. Use FRAME_RIF.
15324
15325 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
15326 systems.
15327
15328 * lisp.h (set_process_environment): Rename to `set_global_environment'.
15329 (Fframe_with_environment, Fset_input_meta_mode)
15330 (Fset_quit_char): EXFUN.
15331 (x_create_device, tty_output, terminal, tty_display_info): Declare.
15332 (init_sys_modes, reset_sys_modes): Update prototypes.
15333 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
15334
15335 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
15336 Vlocal_key_translation_map, and Vkeyboard_translate_table.
15337 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
15338 Delete declarations.
15339 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
15340 (temporarily_switch_to_single_kboard, tty_read_avail_input):
15341 New declarations.
15342
15343 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
15344 already does that during init_display(). Call syms_of_keymap
15345 before syms_of_keyboard. Call `syms_of_terminal'.
15346 Call set_initial_environment, not set_process_environment.
15347 (shut_down_emacs): Call reset_all_sys_modes() instead of
15348 reset_sys_modes().
15349
15350 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
15351 (internal_resolve_face_name, resolve_face_name_error): New functions.
15352 (resolve_face_name): Protect against loops and errors thrown by Fget.
15353 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
15354 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
15355
15356 * scroll.c: Replace CURTTY() with local variables throughout the
15357 file (where applicable).
15358 (calculate_scrolling, calculate_direct_scrolling)
15359 (scrolling_1, scroll_cost): Use the accessor macros for terminal
15360 characteristics.
15361
15362 * keymap.c (Vfunction_key_map): Remove.
15363 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
15364 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
15365 (Vkey_translation_map): Remove.
15366 (syms_of_keymap): Remove DEFVAR for key-translation-map.
15367 (Fdescribe_buffer_bindings)
15368 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
15369 Update for terminal-local key-translation-map.
15370
15371 * Makefile.in (callproc.o): Update dependencies.
15372 (lisp, shortlisp): Add termdev.elc.
15373 (obj): Add terminal.o.
15374 (terminal.o): Add dependencies.
15375 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
15376 (data.o, fns.o): Add termhooks.h dependency.
15377 (SOME_MACHINE_LISP): Add dnd.elc.
15378 (minibuf.o): Fix typo.
15379 Update dependencies.
15380
15381 * data.c (do_symval_forwarding, store_symval_forwarding)
15382 (find_symbol_value): Use the selected frame's keyboard, not
15383 current_kboard.
15384
15385 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
15386 Vwindow_system.
15387
15388 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
15389 Fmenu_bar_open.
15390 (syms_of_xmenu): Update defsubr.
15391 (mouse_position_for_popup, Fx_popup_menu)
15392 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
15393 (set_frame_menubar, free_frame_menubar)
b97439ce 15394 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
15395 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
15396 an X frame.
15397
15398 * xselect.c (x_own_selection): Abort if not an X frame.
15399 (some_frame_on_display): Check if it is an X frame.
15400 (x_handle_selection_clear): Deal with MULTI_KBOARD.
15401
15402 * coding.c: Include frame.h and termhooks.h.
15403 (terminal_coding, keyboard_coding): Delete.
15404 (Fset_terminal_coding_system_internal)
15405 (Fset_keyboard_coding_system_internal)
15406 (Fkeyboard_coding_system)
15407 (Fterminal_coding_system): Add a terminal parameter.
15408 Get terminal_coding from the terminal.
15409 (init_coding_once): Don't call setup_coding_system here.
15410
15411 * dispextern.h (set_scroll_region, turn_off_insert)
15412 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
15413 (tty_clear_end_of_line, tty_setup_colors)
15414 (delete_tty, updating_frame)
15415 (produce_special_glyphs, produce_glyphs, write_glyphs)
15416 (insert_glyphs): Remove.
15417 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
15418 (tty_turn_off_highlight, get_tty_size): Add declaration.
15419 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
15420
15421 * frame.h (enum output_method): Add output_initial.
15422 (struct x_output): Delete.
15423 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
15424 Access foreground_pixel and background_pixel directly from the frame.
15425 (tty_display): Delete.
15426 (struct frame): Add buried_buffer_list, foreground_pixel,
15427 background_pixel and terminal. Delete kboard.
15428 (union output_data): Add tty.
15429 (FRAME_KBOARD): Get the kboard from the terminal.
15430 (FRAME_INITIAL_P): New macro.
15431 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
15432 (Qterm_environment_variable, Qdisplay_environment_variable)
15433 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
15434 New declarations.
15435
15436 * termchar.h (tty_output, tty_display_info): New structures.
15437 (tty_list): Declare.
15438 (FRAME_TTY, CURTTY): New macros.
15439 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
15440 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
15441 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
15442 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
15443
15444 * callproc.c: Include frame.h and termhooks.h, for terminal
15445 parameters.
15446 (add_env): New function.
15447 (child_setup): Use it.
15448 (child_setup, getenv_internal): Handle the new Vprocess_environment.
15449 (getenv_internal): Fix get_terminal_param call.
15450 (Fgetenv_internal, egetenv): Update doc.
15451 (syms_of_callproc): Initialize Vprocess_environment to nil.
15452 Register and initialize them. Remove obsolete defvars. Update doc
15453 strings.
15454 (child_setup): Handle Vlocal_environment_variables.
15455 (getenv_internal): Add terminal parameter.
15456 Handle Vlocal_environment_variables.
15457 (Fgetenv_internal): Add terminal parameter.
15458 (child_setup, getenv_internal, Fgetenv_internal): Store the local
15459 environment in a frame (not terminal) parameter. Update doc strings.
15460 (set_initial_environment): Rename from set_global_environment.
15461 Store Emacs environment in initial frame parameter.
15462
15463 * xdisp.c (redisplay_internal): Update references to
15464 `previous_terminal_frame'.
15465 (display_mode_line, Fformat_mode_line): Replace calls to
15466 `push_frame_kboard' with `push_kboard'.
15467 (get_glyph_string_clip_rects): Add extra parentheses and
15468 braces to prevent compiler warnings.
15469 (calc_pixel_width_or_height): Add xassert to check that the
15470 frame is alive. Don't call `lookup_image' on a termcap frame.
15471 (message2_nolog, message3_nolog, redisplay_internal)
15472 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
15473 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
15474 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
15475 (Fx_display_pixel_width, Fx_display_pixel_height)
15476 (Fx_display_planes, Fx_display_color_cells)
15477 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
15478 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
15479 (Fx_display_backing_store, Fx_display_visual_class)
15480 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
15481 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
15482
15483 * xfns.c (x_set_foreground_color x_set_background_color)
15484 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
15485 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15486 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
15487 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
15488 terminal that is being deleted.
15489 (Fx_create_frame): Use `store_frame_param' to set `window-system'
15490 frame parameter, and make sure it overrides any user-supplied setting.
15491 (Fx_close_connection, Fx_synchronize): Unify argument names with
15492 the rest of the DEFUNs.
15493
15494 * dispnew.c (Fsend_string_to_terminal): Update call to
15495 `get_tty_terminal'.
15496 (Fredraw_frame, Fsend_string_to_terminal)
15497 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
15498 FRAME_TERMCAP_P and FRAME_TTY.
15499 (window_change_signal): Don't believe width/height values that are
15500 impossibly small.
15501 (Vinitial_window_system): Rename from Vwindow_system.
15502 (termscript, Wcm, rif): Delete.
15503
15504 * termhooks.h (struct terminal): New struct containing the
15505 previously global text display hooks and new members NAME,
15506 DELETED and PARAM_ALIST.
15507 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
15508 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
15509 (FRAME_RIF): New macros.
15510 (get_terminal_param, get_device): New declarations.
15511 (termscript): Delete declaration.
15512
15513 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
15514 (XTflash, x_free_frame_resources, x_scroll_bar_create)
15515 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
15516 FRAME_FOREGROUND_PIXEL.
15517 (x_fully_uncatch_errors): Disable definition.
15518 (x_scroll_bar_expose): Fix reference to foreground pixel.
15519 (XTread_socket): Disable loop on all X displays.
15520 (x_delete_terminal): Don't set terminal->deleted and let
15521 delete_terminal delete the frames on the terminal.
15522 (x_delete_display): Doc update to reflect changes in
15523 delete_terminal.
15524 (x_display_info) <terminal>: Move member earlier in the struct.
15525 (deleting_tty): Remove old variable.
15526 (Fsuspend_tty): Call clear_tty_hooks.
15527 (Fresume_tty, init_tty): Call set_tty_hooks.
15528 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
15529 errors on X frames.
15530 (x_catch_errors_unwind): Abort if x_error_message is NULL.
15531 (handle_one_xevent): Initialize `f' to NULL.
15532 (x_delete_terminal, x_create_terminal): New functions.
15533 (XTset_terminal_modes, XTreset_terminal_modes)
15534 (XTread_socket, x_connection_closed, x_term_init)
15535 (x_term_init, x_delete_display): Add terminal parameter.
15536 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
15537 X connections.
15538
15539 * frame.c: Include termchar.h.
15540 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
15541 (Qwindow_system, Qenvironment, Qterm_environment_variable)
15542 (Qdisplay_environment_variable): New vars.
15543 (Fframep): Deal with output_initial.
15544 (Fframe-live-p): Doc fix.
15545 (Fwindow-system): New function.
15546 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
15547 (make_terminal_frame): Don't create frames on a terminal that is
15548 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
15549 (store_frame_param): Check for found_for_frame before calling XFRAME.
15550 (Fmake_terminal_frame): Handle NULL tty names correctly.
15551 (syms_of_frame): Enhance doc string of `default-frame-alist'.
15552 (Fdelete_frame): Remove unused variable `count'. Don't allow other
15553 frames to refer to a deleted frame in their 'environment parameter.
15554 (Fframe_with_environment): New function.
15555 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
15556 (get_future_frame_param): New function.
15557 (Fmake_terminal_frame): Use it.
15558 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
15559
15560 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
15561 * sysdep.c (reset_sys_modes): Update for renames.
15562
15563 * keyboard.c (tty_read_avail_input): New function.
15564 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
15565 (syms_of_keyboard): Defsubr them.
15566 (Fset_input_meta_mode, Fset_quit_char): New functions.
15567 (Fset_input_mode): Split to above functions.
15568 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
15569 parameter. Use it in call to `read_char'.
15570 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
15571 Set wrong_kboard_jmpbuf correctly in recursive calls.
15572 Use current_kboard to access Vkeyboard_translate_table.
15573 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
15574 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
15575 Update longjmp invocations. Remember the original current_kboard,
15576 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
15577 changes it. Comment out unnecessary calls to
15578 `record_single_kboard_state' and `any_kboard_state'.
15579 Update recursive calls.
15580 (wrong_kboard_jmpbuf): Remove global variable.
15581 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
15582 Handle deleted interrupted_kboards correctly; that is a legal
15583 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
15584 and read_char calls. Abort if interrupted_kboard died in read_char.
15585 (any_kboard_state, single_kboard_state)
15586 (push_frame_kboard): Remove function.
15587 (pop_kboard): Switch out of single_kboard mode if the kboard has
15588 been deleted. Remove unused variable. Help debugging by not
15589 changing current_kboard unnecessarily. Set current_kboard to the
15590 kboard of the selected frame when the stored kboard object has
15591 been deleted before pop_kboard.
15592 (temporarily_switch_to_single_kboard): Change first parameter to a
15593 frame pointer. Throw an error when caller wants to change kboards
15594 while in single_kboard mode. Don't push_kboard if we weren't in
15595 single kboard state. Don't pop_kboard if we popped into any
15596 kboard state.
15597 (restore_kboard_configuration): Abort if pop_kboard changed the
15598 kboard in single_kboard mode. Call pop_kboard only after setting
15599 up single_kboard mode.
15600 (Frecursive_edit): Switch to single_kboard mode only in nested
15601 command loops.
15602 (cmd_error, command_loop, command_loop_1, timer_check):
15603 Comment out unnecessary call to `any_kboard_state' and
15604 `record_single_kboard_state'.
15605 (delete_kboard): Exit single_kboard mode if we have just deleted
15606 that kboard. Use FRAME_KBOARD.
15607 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
15608 `fatal_error_signal'.
15609 (record_single_kboard_state): Don't push_kboard if we weren't in
15610 single kboard state. Don't pop_kboard if we popped into any
15611 kboard state.
15612 (push_frame_kboard): Rename to push_kboard.
15613 (kbd_buffer_get_event): Use FRAME_TERMINAL.
15614 (read_avail_input): Read input from all terminals.
15615 (mark_kboards): Also mark Vkeyboard_translate_table.
15616 (kbd_buffer_store_event_hold): Simplify condition.
15617 (read_key_sequence): Reinitialize fkey and keytran at each replay.
15618 (Vkeyboard_translate_table): Move to struct kboard.
15619 (init_kboard): Initialize Vkeyboard_translate_table.
15620 (syms_of_keyboard): Use DEFVAR_KBOARD to define
15621 Vkeyboard_translate_table. Update doc strings. Update docs of
15622 local-function-key-map and function-key-map.
15623
15624 * terminal.c: New file.
15625
15626 * term.c: Include errno.h.
15627 (Vring_bell_function, device_list, initial_device)
15628 (next_device_id, ring_bell, update_begin, update_end)
15629 (set_terminal_window, cursor_to, raw_cursor_to)
15630 (clear_to_end, clear_frame, clear_end_of_line)
15631 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
15632 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
15633 (syms_of_term): Move their initialization to terminal.c.
15634 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
15635 (Ftty_display_color_cells)
15636 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
15637 (clear_tty_hooks, set_tty_hooks)
15638 (init_tty, maybe_fatal): New functions.
15639 (Ftty_type): Return nil if terminal is not on a tty instead of
15640 throwing an error. Doc update.
15641 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
15642 Doc update. Initialize new subrs and variables.
15643 (delete_tty): Use terminal->deleted.
15644 (tty_set_terminal_modes): Rename from set_terminal_modes.
15645 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
15646 (set_scroll_region): Rename to `tty_set_scroll_region'.
15647 (turn_on_insert): Rename to `tty_turn_on_insert'.
15648 (turn_off_insert): Rename to `tty_turn_off_insert'.
15649 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
15650 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
15651 (toggle_highligh): Rename to `tty_toggle_highlight'.
15652 (background_highlight): Rename to `tty_background_highlight'.
15653 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
15654 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
15655 (tty_set_scroll_region, tty_background_highlight)
15656 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
15657 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
15658 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
15659 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
15660 Add static modifier.
15661 (tty_reset_terminal_modes, tty_set_terminal_window)
15662 (tty_set_scroll_region, tty_background_highlight)
15663 (tty_highlight_if_desired, tty_cursor_to)
15664 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
15665 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
15666 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
15667 renames.
15668
156692007-08-28 Jan Djärv <jan.h.d@swipnet.se>
15670
15671 * keyboard.c: Qrtl is new.
15672 (parse_tool_bar_item): Handle :rtl keyword.
15673 (syms_of_keyboard): Intern :rtl keyword.
15674
15675 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
15676
15677 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
15678 so no Lisp code is executed.
15679 (file_for_image, find_rtl_image): New functions.
15680 (xg_get_image_for_pixmap): Use file_for_image.
15681 (update_frame_tool_bar): If direction is RTL, use RTL image if
15682 defined. Use Gtk stock images if defined.
15683
156842007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15685
15686 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
15687 for nonexistent or zero-width glyph in composition glyph.
15688
156892007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
15690
15691 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
15692
15693 * xdisp.c (Finvisible_p): New function.
15694 (syms_of_xdisp): defsubr it.
15695
156962007-08-24 Juanma Barranquero <lekktu@gmail.com>
15697
15698 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
15699 Doc fixes.
15700
157012007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15702
15703 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
15704
157052007-08-24 Martin Rudalics <rudalics@gmx.at>
15706
15707 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
15708 whether decoding has modified buffer contents.
15709
157102007-08-24 Jason Rumney <jasonr@gnu.org>
15711
15712 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
15713 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
15714 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
15715 (init_svg_functions) [HAVE_NTGUI]: New function.
15716 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
15717 (svg_load_image): Use them.
15718 (svg_load_image) [HAVE_NTGUI]: Implement background.
15719
157202007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15721
15722 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
15723 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
15724 (LIBX): Remove @RSVG_LIBS@.
15725 (LIBES): Add $(RSVG_LIBS).
15726
15727 * image.c (svg_load_image): Blend with specified background if exists.
15728 Use IMAGE_BACKGROUND. Add Mac OS Support.
15729
15730 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
15731 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
15732 Remove macros.
15733 [MAC_OSX] (socket_callback): Do nothing.
15734 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
15735 ReceiveNextEvent.
15736 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
15737 socket_callback.
15738 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
15739
157402007-08-22 Glenn Morris <rgm@gnu.org>
15741
15742 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
15743
157442007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
15745
15746 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
15747
15748 * image.c: Add support for SVG images. Some additional comments
15749 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
15750 (svg_image_p): New function to test for SVG image.
15751 (svg_load): New function to load SVG image.
15752 (svg_load_image): New function, helper for svg_load.
15753 (Qsvg): New Lisp_object.
15754 (svg_keyword_index): New enum.
15755 (svg_format): New static `image_keyword' struct.
15756 (svg_type): New static `image_type' struct.
15757 (librsvg/rsvg.h): Include it.
15758
157592007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
15760
15761 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
15762
157632007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
15764
15765 * lread.c (Qold_style_backquotes): New var.
15766 (syms_of_lread): Init and staticpro it.
15767 (load_warn_old_style_backquotes): New fun.
15768 (Fload): Use them to warn about old style backquotes.
15769 (end_of_file_error, Fload): Remove unused vars.
15770
15771 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
15772
15773 * lread.c (Vold_style_backquotes): New var.
15774 (syms_of_lread): Init and export it to Elisp.
15775 (read1): Set it when we find an old-style (back)quote.
15776
157772007-08-22 Jason Rumney <jasonr@gnu.org>
15778
15779 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
15780
157812007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
15782
15783 * puresize.h (BASE_PURESIZE): Increase to 1140000.
15784
157852007-08-19 Richard Stallman <rms@gnu.org>
15786
15787 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
15788
157892007-08-19 Andreas Schwab <schwab@suse.de>
15790
15791 * alloc.c (pure): Round PURESIZE up.
15792
157932007-08-17 Jan Djärv <jan.h.d@swipnet.se>
15794
15795 * xterm.c (handle_one_xevent): Remove check that mouse click is in
15796 active frame.
15797
157982007-08-16 Richard Stallman <rms@gnu.org>
15799
15800 * eval.c (Fcommandp): Add parens to clarify.
15801
15802 * minibuf.c (Fall_completions): Use enum for type of table.
15803
15804 * emacs.c (USAGE2): Improve text.
15805
158062007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
15807
15808 * term.c (tty_default_color_capabilities): Declare static
15809 variables in file scope, to avoid HPUX compiler problem.
15810
158112007-08-13 Jan Djärv <jan.h.d@swipnet.se>
15812
15813 * gtkutil.c (update_frame_tool_bar): Use -1 as index
15814 to gtk_toolbar_insert.
15815
158162007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
15817
15818 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
15819
15820 * insdel.c (reset_var_on_error): New fun.
15821 (signal_before_change, signal_after_change):
15822 Use it to reset (after|before)-change-functions to nil in case of error.
15823 Bind inhibit-modification-hooks to t.
15824 Don't bind (after|before)-change-functions to nil while they run.
15825
158262007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15827
15828 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
15829 filling pixmap with stippled background.
15830
158312007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15832
15833 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
15834 Don't use invisible frame as parent window for repositioning.
15835
158362007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
15837
15838 * print.c (new_backquote_output): Rename from old_backquote_output.
15839 (print): Inverse its logic (according to its name) so as to match the
15840 behavior of new_backquote_flag in lread.c.
15841
158422007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15843
15844 * gmalloc.c (posix_memalign): New function.
15845
15846 * macterm.c (frame_highlight, frame_unhighlight): Don't call
15847 ActivateControl/DeactivateControl here.
15848 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
15849 frame-notice-user-settings is non-nil.
15850 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
15851 for kEventParamFMFontStyle.
15852 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
15853 mac_pass_command_to_system and mac_pass_control_to_system here.
15854 (XTread_socket): Call ActivateControl/DeactivateControl here.
15855 (XTread_socket) [TARGET_API_MAC_CARBON]:
15856 Check mac_pass_command_to_system and mac_pass_control_to_system here.
15857 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
15858 for window repositioning.
15859
158602007-08-08 Glenn Morris <rgm@gnu.org>
15861
15862 * Replace `iff' in doc-strings and comments.
15863
158642007-08-07 Chong Yidong <cyd@stupidchicken.com>
15865
15866 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
15867
158682007-08-07 Martin Rudalics <rudalics@gmx.at>
15869
15870 * fileio.c (Finsert_file_contents): Run format-decode and
15871 after_insert_file_functions on entire buffer when REPLACE is
15872 non-nil and inhibit modification_hooks and point_motion_hooks.
15873 For consistency, run after_insert_file_functions iff something
15874 got inserted. Move signal_after_change and update_compositions
15875 after code running after_insert_file_functions. Make sure that
15876 undo_list doesn't record intermediate steps of the decoding process.
15877
158782007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15879
15880 * emacs.c (main)
15881 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
15882 Call malloc_enable_thread on interactive startup.
15883
15884 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
15885 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
15886 [USE_PTHREAD]: Conditionalize with it.
15887 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
15888 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
15889 New functions.
15890
158912007-08-06 Chong Yidong <cyd@stupidchicken.com>
15892
15893 * xdisp.c (redisplay_window): When restoring original buffer
15894 position, make sure it is still valid.
15895
15896 * image.c (png_load): Ignore png-supplied background color.
15897
158982007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15899
15900 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
15901 Use kCFAbsoluteTimeIntervalSince1970.
15902
15903 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
15904 New variable.
15905 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
15906 event loop should be quit.
15907 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
15908 Quit dialog event loop if quit_dialog_event_loop is set.
15909
15910 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
15911 (Selection): New typedef. Use instead of ScrapRef.
15912 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
15913 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
15914 (mac_clear_selection): Rename from clear_scrap.
15915 (get_flavor_type_from_symbol): New argument SEL and subsume function of
15916 scrap_has_target_type. All uses changed.
15917 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
15918 (mac_selection_has_target_p): New functions.
15919 (mac_put_selection_value): Rename from put_scrap_string.
15920 (mac_get_selection_value): Rename from get_scrap_string.
15921 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
15922 (put_scrap_private_timestamp, scrap_has_target_type)
15923 (get_scrap_private_timestamp): Remove functions.
15924 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
15925 (x_own_selection, x_get_local_selection):
15926 Use mac_valid_selection_value_p.
15927 (x_own_selection): Don't use put_scrap_private_timestamp.
15928 Record OWNERSHIP-INFO into Vselection_alist instead.
15929 (x_get_local_selection): Don't check type if request is local.
15930 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
15931 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
15932
159332007-08-04 Jan Djärv <jan.h.d@swipnet.se>
15934
15935 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
15936 add comment explaining why.
15937
159382007-08-03 Richard Stallman <rms@gnu.org>
15939
15940 * fileio.c (Fvisited_file_modtime): Use make_time.
15941
159422007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
15943
15944 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
15945 build.
15946
159472007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
15948
15949 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
15950
159512007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
15952
15953 * puresize.h (BASE_PURESIZE): Increase to 1130000.
15954
159552007-07-30 Richard Stallman <rms@gnu.org>
15956
15957 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
15958
159592007-07-29 Jan Djärv <jan.h.d@swipnet.se>
15960
15961 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
15962
159632007-07-28 Nick Roberts <nickrob@snap.net.nz>
15964
15965 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
15966 remote default-directory.
15967
15968 * buffer.c (mode-line-format): Update doc string.
15969
159702007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15971
15972 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
15973 scroll bar gap.
15974 (x_scroll_bar_create): Set bar->fringe_extended_p.
15975 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
15976 on frame edge. Check fringe background extension. Don't clear
15977 extended fringe background area.
15978
15979 * w32term.h (struct scroll_bar): New member fringe_extended_p.
15980 (w32_fill_area): Enclose multiple statements with do ... while (0).
15981
15982 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
15983 Extend fringe background to scroll bar gap.
15984 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
15985 Set bar->fringe_extended_p.
15986 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
15987 Put leftmost/rightmost scroll bars on frame edge. Check fringe
15988 background extension. Don't clear extended fringe background area.
15989
15990 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
15991 New member fringe_extended_p.
15992
159932007-07-25 Glenn Morris <rgm@gnu.org>
15994
15995 * Relicense all FSF files to GPLv3 or later.
15996
15997 * COPYING: Switch to GPLv3.
15998
159992007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
16000
16001 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
16002
16003 * data.c (Finteractive_form): Check for the presence of an
16004 `interactive-form' symbol property more thoroughly.
16005
16006 * data.c (Finteractive_form): Use an `interactive-form' property if
16007 present, analogous to the function-documentation property.
16008
160092007-07-24 Jason Rumney <jasonr@gnu.org>
16010
16011 * w32fns.c (x_real_positions): Get real position from OS instead of
16012 calculating it.
16013
160142007-07-23 Jason Rumney <jasonr@gnu.org>
16015
16016 * filelock.c (current_lock_owner): Allow for @ sign in username.
16017
160182007-07-22 Nick Roberts <nickrob@snap.net.nz>
16019
16020 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
16021 remote default-directory.
16022
16023 * buffer.c (mode-line-format): Describe above case in doc string.
16024
160252007-07-20 Eli Zaretskii <eliz@gnu.org>
16026
16027 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
16028 Define if not defined.
16029
160302007-07-18 Jason Rumney <jasonr@gnu.org>
16031
16032 * w32proc.c (w32_executable_type): Handle 64 bit executables.
16033
160342007-07-18 Richard Stallman <rms@gnu.org>
16035
16036 * data.c (Fsetq_default): Doc fix.
16037
16038 * eval.c (Fsetq): Doc fix.
16039
160402007-07-18 Juanma Barranquero <lekktu@gmail.com>
16041
16042 * coding.c (Ffind_operation_coding_system):
16043 * eval.c (For, Fand): Doc fixes.
16044 Reported by Johan Bockgård.
16045
160462007-07-18 Jan Djärv <jan.h.d@swipnet.se>
16047
16048 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
16049
16050 * xterm.h: Declare x_ewmh_activate_frame.
16051
16052 * xterm.c (x_ewmh_activate_frame): New function.
16053 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
16054
160552007-07-17 Martin Rudalics <rudalics@gmx.at>
16056
16057 * window.c (Fdisplay_buffer): If largest or LRU window is the
16058 only window, split it even if it is not eligible for splitting.
16059 This restores the original behavior broken by the 2007-07-15
16060 change.
16061
160622007-07-17 Glenn Morris <rgm@gnu.org>
16063
16064 * abbrev.c (abbrev_check_chars): New function.
16065 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
16066 Call abbrev_check_chars to check abbrev characters are word
16067 constituents. Doc fix.
16068
160692007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
16070
16071 * process.c (Fstart_process, Fmake_network_process)
16072 (read_process_output): Fix up last changes.
16073
160742007-07-16 Eli Zaretskii <eliz@gnu.org>
16075
16076 * makefile.w32-in (clean): Don't delete *~.
16077
160782007-07-16 Andreas Schwab <schwab@suse.de>
16079
16080 * window.c (Fdisplay_buffer): Use NILP.
16081 (Fset_window_scroll_bars): Likewise.
16082
160832007-07-15 Martin Rudalics <rudalics@gmx.at>
16084
16085 * window.c (window_min_size_2): New function.
16086 (window_min_size_1, size_window, Fdisplay_buffer)
16087 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
16088 windows without mode- or header-lines when window-min-height is
16089 too small.
16090 (size_window): Reset nodelete_p after testing it, following an
16091 earlier note by Kim F. Storm.
16092 (display_buffer): Do not set split_height_threshold to twice the
16093 value of window_min_height to avoid changing the value of a
16094 customizable variable. Rather explicitly check whether the
16095 height of the window that shall be splitted is at least as large
16096 as split_height_threshold.
16097 (Fwindow_full_width_p): New defun.
16098 (syms_of_window): Defsubr it.
16099
16100 * window.h: Add EXFUN for Fwindow_full_width_p.
16101
161022007-07-14 Jason Rumney <jasonr@gnu.org>
16103
16104 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
16105
161062007-07-14 Richard Stallman <rms@gnu.org>
16107
16108 * eval.c (maybe_call_debugger): New function.
16109 (find_handler_clause): Use maybe_call_debugger.
16110 Call it when the handler says `debug'.
16111 Eliminate DEBUGGER_VALUE_PTR.
16112 (Fsignal): Eliminate debugger_value.
16113 (Qdebug): New variable.
16114 (syms_of_eval): Initialize it.
16115
161162007-07-14 Juanma Barranquero <lekktu@gmail.com>
16117
16118 * eval.c (Fprogn):
16119 * keyboard.c (Ftrack_mouse):
16120 * print.c (Fwith_output_to_temp_buffer):
16121 * window.c (Fsave_window_excursion): Doc fix.
16122
161232007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
16124
16125 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
16126
161272007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
16128
16129 * process.h (struct Lisp_Process): Turn slots infd, outfd,
16130 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
16131 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
16132 read_output_delay, and read_output_skip from Lisp_Objects to ints.
16133 Remove unused encoding_carryover.
16134 * process.c: Adjust all functions accordingly.
16135
161362007-07-12 Richard Stallman <rms@gnu.org>
16137
16138 * term.c: Include unistd.h only if HAVE_UNISTD_H.
16139
161402007-07-11 Jason Rumney <jasonr@gnu.org>
16141
16142 * makefile.w32-in (LIBS): Include OLE32.
16143
16144 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
16145 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
16146
161472007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
16148
16149 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
16150 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
16151 from a Lisp_Object into a bare pointer.
16152 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
16153 Adjust the code correspondingly.
16154
16155 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
16156
16157 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
16158 (term_show_mouse_face): Remove unused var `j'.
16159 (handle_one_term_event): Remove unused vars `i' and `j'.
16160 Don't cast return value of ttyname since it's not necessary.
16161
161622007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
16163
16164 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
16165 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
16166
16167 * fns.c (map_char_table): Use an array of int for `indices' rather than
16168 an array of Lisp_Objects (which are only ever integers anyway).
16169 (Fmap_char_table): Update caller.
16170 * lisp.h: Update prototype.
16171 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
16172 * fontset.c (Ffontset_info):
16173 * casetab.c (set_case_table): Update callers.
16174
16175 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
16176
16177 * keymap.c (struct accessible_keymaps_data)
16178 (struct where_is_internal_data): New structures.
16179 (accessible_keymaps_1, where_is_internal_1): Use them to change
16180 interface to adhere to the one used by map_keymap.
16181 (Faccessible_keymaps, where_is_internal): Use map_keymap.
16182 (accessible_keymaps_char_table, where_is_internal_2): Remove.
16183
16184 * keymap.h (map_keymap_function_t): More informative prototype.
16185
161862007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
16187
16188 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
16189 (looking_at_1): Don't change search_regs and last_thing_searched
16190 if `inhibit-changing-match-data' is non-nil.
16191 (string_match_1, search_buffer, set_search_regs): Likewise.
16192 (syms_of_search): Add Lisp level definition for
16193 `inhibit-changing-match-data' and set it to nil.
16194 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
16195 start and end of the match, instead of using values in search_regs.
16196
161972007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
16198
16199 * minibuf.c (Fcompleting_read): New value `confirm-only'
16200 for `require-match'.
16201
162022007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
16203
16204 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
16205 part of the 2007-06-27 change to syms_of_fileio.
16206
162072007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16208
16209 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
16210 Check WINDOWP before using XWINDOW. Consolidate return statements.
16211
162122007-06-27 Richard Stallman <rms@gnu.org>
16213
16214 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
16215
162162007-06-27 Juanma Barranquero <lekktu@gmail.com>
16217
16218 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
16219
162202007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16221
16222 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
16223 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
16224 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
16225 (_free_internal, memalign): Use them.
16226 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
16227 Initialize to PTHREAD_MUTEX_INITIALIZER.
16228 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
16229 (morecore_nolock): Rename from morecore. All uses changed.
16230 Use only nolock versions of internal allocation functions.
16231 (_malloc_internal_nolock, _realloc_internal_nolock)
16232 (_free_internal_nolock): New functions created from
16233 _malloc_internal, _realloc_internal, and _free_internal.
16234 (_malloc_internal, _realloc_internal, _free_internal): Use them.
16235 Copy hook value to automatic variable before its use.
16236 (memalign): Copy hook value to automatic variable before its use.
16237
162382007-06-26 Kenichi Handa <handa@m17n.org>
16239
16240 * coding.c (Ffind_operation_coding_system): Docstring improved.
16241 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
16242
162432007-06-25 David Kastrup <dak@gnu.org>
16244
16245 * keymap.c (Fcurrent_active_maps): Add `position' argument.
16246 (Fwhere_is_internal): Adjust call to `current-active-maps' to
16247 cater for additional parameter.
16248
16249 * keymap.h: Adjust number of parameters to `current-active-maps'.
16250
16251 * doc.c (Fsubstitute_command_keys): Adjust call of
16252 `current-active-maps'.
16253
162542007-06-25 David Kastrup <dak@gnu.org>
16255
16256 * callint.c (Fcall_interactively): Make the parsing of interactive
16257 specs somewhat more readable.
16258
162592007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16260
16261 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
16262 to scroll bar gap also when bitmap fills fringe. Draw only foreground
16263 if extended background has already been filled.
16264
162652007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16266
16267 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
16268 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
16269
16270 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
16271 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
16272 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
16273 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
16274 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
16275 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
16276 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
16277 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
16278 Run timers during dialog popup.
16279 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
16280
162812007-06-21 Jason Rumney <jasonr@gnu.org>
16282
16283 * image.c (convert_mono_to_color_image): Swap fore and background.
16284
162852007-06-20 Jason Rumney <jasonr@gnu.org>
16286
16287 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
16288 (w32_free_bdf_font): Unmap memory not handle.
16289
162902007-06-20 Sam Steingold <sds@gnu.org>
16291
16292 * gmalloc.c (__morecore): Fix the declaration to comply with the
16293 definition.
16294
162952007-06-20 Juanma Barranquero <lekktu@gmail.com>
16296
16297 * w32term.c (w32_delete_display): Remove leftover declaration.
16298 (w32_define_cursor, w32_initialize): Make static.
16299
16300 * w32.c (_wsa_errlist): Fix typo in error message.
16301 (init_environment): Ignore any environment variable from the
16302 registry having a null value.
16303
163042007-06-20 Glenn Morris <rgm@gnu.org>
16305
16306 * Makefile.in (LIBGIF): Default to -lgif.
16307
163082007-06-17 Jason Rumney <jasonr@gnu.org>
16309
16310 * w32menu.c (add_menu_item): Don't use multibyte string functions on
16311 unicode strings.
16312
163132007-06-16 Juanma Barranquero <lekktu@gmail.com>
16314
16315 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
16316 Fix typo in docstring.
16317
163182007-06-16 Eli Zaretskii <eliz@gnu.org>
16319
16320 * w32menu.c (add_menu_item): Escape `&' characters in menu items
16321 and their keybindings.
16322
163232007-06-15 Chong Yidong <cyd@stupidchicken.com>
16324
16325 * composite.c (update_compositions): Fix last fix.
16326
163272007-06-14 Jason Rumney <jasonr@gnu.org>
16328
16329 * w32.c (get_process_times_fn): New function pointer.
16330 (globals_of_w32): Intialize it if present in kernel32.dll.
16331 (w32_get_internal_run_time): New function.
16332
16333 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
16334
163352007-06-14 Kenichi Handa <handa@etlken.m17n.org>
16336
16337 * composite.c (update_compositions): Check the validness of
16338 compositions.
16339
163402007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16341
16342 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
16343 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
16344
16345 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
16346 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
16347
16348 * macgui.h (USE_MAC_TOOLBAR): New define.
16349
16350 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16351 Return immediately unless popup is activated.
16352
16353 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
16354 background to scroll bar gap.
16355 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
16356 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
16357 scroll bars on frame edge. Check fringe background extension.
16358 Don't clear extended fringe background area.
16359 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
16360 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
16361 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
16362 [USE_MAC_TOOLBAR]: New macros.
16363 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
16364 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
16365 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
16366 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
16367 [USE_MAC_TOOLBAR]: New functions.
16368 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
16369 manually if previous repositioning has failed.
16370 (mac_handle_keyboard_event): Use precomputed event kind.
16371 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
16372 as tool bar item click. Handle mouse movement over tool bar items.
16373
16374 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
16375 toolbar_win_gravity.
16376 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
16377 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
16378 Add externs.
16379
16380 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
16381 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
16382
163832007-06-14 Chong Yidong <cyd@stupidchicken.com>
16384
16385 * image.c (search_image_cache): Remove unused variable.
16386
163872007-06-13 Chong Yidong <cyd@stupidchicken.com>
16388
16389 * xfns.c, xmenu.c: Link to xaw3d if available.
16390
163912007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16392
16393 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
16394 frame_foreground and frame_background.
16395
16396 * image.c (lookup_image): Save frame foreground and background colors.
16397 (search_image_cache): Check if saved and current frame colors match.
16398
163992007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
16400
16401 * regex.c (regex_compile): Remove the `regnum' counter.
16402 Use bufp->re_nsub instead. Add support for \(?N:RE\).
16403
164042007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
16405
16406 * term.c: Include intervals.h to declare Fget_text_property.
16407
164082007-06-10 Jason Rumney <jasonr@gnu.org>
16409
16410 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
16411
164122007-06-08 Juanma Barranquero <lekktu@gmail.com>
16413
16414 * callint.c (Fcall_interactively):
16415 * editfns.c (Fdelete_and_extract_region):
16416 * fileio.c (Fread_file_name):
16417 * fns.c (Fmapconcat):
16418 * keyboard.c (cmd_error_internal):
16419 * keymap.c (Fkey_description):
16420 * lread.c (openp):
16421 * minibuf.c (read_minibuf):
16422 * search.c (wordify):
16423 * sunfns.c (sel_read):
16424 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
16425 * xfns.c (x_default_scroll_bar_color_parameter):
16426 * xmenu.c (menu_help_callback):
16427 * xselect.c (Fx_get_atom_name):
16428 * xterm.c (x_term_init): Use empty_unibyte_string.
16429
164302007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
16431
16432 * alloc.c (init_strings): Initialize canonical empty strings.
16433 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
16434 canonical empty string when the requested size is 0.
16435
16436 * emacs.c (empty_unibyte_string): Rename from empty_string.
16437 (empty_multibyte_string): New canonical empty string.
16438 (syms_of_emacs): Don't initialize empty_string.
16439
16440 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
16441 string, if appropriate.
16442 (empty_unibyte_string, empty_multibyte_string): New externs.
16443 (empty_string): Remove extern.
16444
16445 * lread.c (syms_of_lread): Use empty_unibyte_string.
16446
164472007-06-07 Jason Rumney <jasonr@gnu.org>
16448
16449 * s/ms-w32.h: Don't define HAVE_TZNAME.
16450
16451 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
16452
164532007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16454
16455 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
16456
16457 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
16458 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
16459
16460 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
16461 Don't call next handler.
16462 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
16463 Remove argument. Install handler to application.
16464 (set_frame_menubar): Don't change deep_p.
16465 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
16466 FRAME_OUTER_TO_INNER_DIFF_Y.
16467 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
16468 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
16469 [HAVE_DIALOGS]: New macros.
16470 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
16471 Use them.
16472 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
16473
16474 * macselect.c [MAC_OSX] (install_service_handler): Rename from
16475 init_service_handler. All callers changed. Return OSStatus value.
16476
16477 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
16478 All callers changed so as not to call SetPortWindowPort.
16479 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
16480 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
16481 mac_draw_string_common.
16482 (mac_draw_image_string_qd): Likewise.
16483 (mac_draw_string_common): Use them. Add INLINE.
16484 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
16485 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
16486 GetGlobalMouse.
16487 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
16488 and FRAME_OUTER_TO_INNER_DIFF_Y.
16489 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
16490 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
16491 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
16492 repositioning window to mac_handle_window_event.
16493 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
16494 saving window location to mac_handle_window_event
16495 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
16496 (install_menu_target_item_handler): Remove argument in extern.
16497 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
16498 Also accept command events.
16499 (do_keystroke): New function created from XTread_socket.
16500 (init_command_handler): Remove functions.
16501 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
16502 and save window location by kEventWindowShowing and kEventWindowHiding
16503 handlers here. Don't call next handler for window state change and
16504 focus events.
16505 (mac_handle_application_event, mac_handle_keyboard_event)
16506 [TARGET_API_MAC_CARBON]: New functions.
16507 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
16508 kEventWindowShowing and kEventWindowHiding events. Move installation
16509 of mouse, font, text input and menu target item handlers to
16510 install_application_handler.
16511 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
16512 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16513 New function.
16514 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
16515 Register it.
16516 (XTread_socket) [TARGET_API_MAC_CARBON]:
16517 Consolidate SendEventToEventTarget calls.
16518 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
16519 Move application activation handler to mac_handle_application_event.
16520 Move keyboard handler to mac_handle_keyboard_event.
16521 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
16522 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
16523 init_command_handler. Call install_application_handler.
16524
16525 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
16526 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
16527
165282007-06-07 Glenn Morris <rgm@gnu.org>
16529
16530 * emacs.c (main): Use `emacs-copyright' in --version output.
16531
165322007-06-06 Chong Yidong <cyd@stupidchicken.com>
16533
16534 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
16535
165362007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16537
16538 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
16539
16540 * macgui.h: Replace WindowPtr with WindowRef.
16541
16542 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16543 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16544 Replace ControlHandle with ControlRef.
16545 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
16546
16547 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
16548 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
16549 Replace ControlHandle with ControlRef.
16550 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
16551 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
16552
16553 * macterm.h (struct scroll_bar): Rename member control_handle_low
16554 and control_handle_high to control_ref_low and control_ref_high.
16555 All uses changed.
16556 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
16557 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
16558 respectively. All uses changed.
16559 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
16560 (install_window_handler, remove_window_handler): Replace WindowPtr
16561 with WindowRef in externs.
16562
165632007-06-05 Juanma Barranquero <lekktu@gmail.com>
16564
16565 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
16566
165672007-06-03 Nick Roberts <nickrob@snap.net.nz>
16568
16569 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
16570
16571 * frame.c (Fmouse_position, Fmouse_pixel_position):
16572 Condition on HAVE_GPM too.
16573
16574 * term.c (term_mouse_highlight): Remove unused variables.
16575 (Fterm_open_connection): Set gpm_zerobased to 1.
16576 (term_mouse_movement, term_mouse_click, handle_one_term_event):
16577 Use zero based co-ordinates.
16578 (handle_one_term_event): Report a drag as mouse movement too.
16579
16580 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
16581
165822007-06-03 Chong Yidong <cyd@stupidchicken.com>
16583
16584 * image.c (search_image_cache): New function. Require background
16585 color match if background color is unspecified in the image spec.
16586 (uncache_image, lookup_image): Use it.
16587
165882007-06-01 Juanma Barranquero <lekktu@gmail.com>
16589
16590 * window.c (Fshrink_window): Reflow docstring.
16591
165922007-06-02 Chong Yidong <cyd@stupidchicken.com>
16593
16594 * Version 22.1 released.
16595
165962007-06-01 Richard Stallman <rms@gnu.org>
16597
16598 * xfns.c (x_encode_text): Add GCPRO.
16599
166002007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16601
16602 * xfns.c (x_set_name_internal): Save encoded name before
16603 x_encode_text in case string data is relocated.
16604
166052007-05-31 Richard Stallman <rms@gnu.org>
16606
16607 * buffer.c (syms_of_buffer): Doc fix.
16608
166092007-05-30 Nick Roberts <nickrob@snap.net.nz>
16610
16611 * sysdep.c (init_sys_modes): Add rather than replace with
16612 O_NONBLOCK.
16613
16614 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
16615 term_mouse_moveto.
16616
16617 * termhooks.h (term_mouse_moveto): New extern.
16618
16619 * term.c (mouse_face_window): Rename...
16620 (Qmouse_face_window): ...to this.
16621 (term_show_mouse_face, term_clear_mouse_face)
16622 (term_mouse_highlight): Use Qmouse_face_window.
16623 (term_mouse_moveto): New function.
16624 (term_mouse_position): Make it work.
16625 (syms_of_term): Uncomment assignment to mouse_position_hook.
16626 Staticpro Qmouse_face_window.
16627
166282007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16629
16630 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
16631 around current_column call.
16632
166332007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
16634
16635 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
16636 * xdisp.c (next_element_from_buffer):
16637 * window.c (delete_window):
16638 * term.c (term_mouse_highlight):
16639 * msdos.c (getdefdir):
16640 * macterm.c (mac_create_bitmap_from_bitmap_data)
16641 (init_font_name_table):
16642 * fns.c (Fsxhash):
16643 * data.c (Fmake_local_variable):
16644 * ccl.c (ccl_driver): Likewise.
16645
166462007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16647
16648 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
16649 Call mac_wakeup_from_rne on window size change.
16650
166512007-05-25 Chong Yidong <cyd@stupidchicken.com>
16652
16653 * image.c (uncache_image): Fix typo.
16654
166552007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
16656
16657 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
16658
166592007-05-22 Richard Stallman <rms@gnu.org>
16660
16661 * xterm.c (x_connection_closed): Remove NO_RETURN.
16662
166632007-05-22 Martin Rudalics <rudalics@gmx.at>
16664
16665 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
16666
166672007-05-21 Chong Yidong <cyd@stupidchicken.com>
16668
16669 * image.c (uncache_image): New function.
16670 (Fimage_refresh): New function.
16671
166722007-05-20 Jan Djärv <jan.h.d@swipnet.se>
16673
16674 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
16675
166762007-05-20 Nick Roberts <nickrob@snap.net.nz>
16677
16678 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
16679 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
16680
166812007-05-20 Nick Roberts <nickrob@snap.net.nz>
16682
16683 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
16684 conditional on [HAVE_GPM_H].
16685
166862007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
16687
16688 * syntax.c (skip_chars): Update syntax-table only after we checked that
16689 the new location is valid.
16690
166912007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16692
16693 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
16694 mac_get_window_bounds.
16695
166962007-05-20 Nick Roberts <nickrob@snap.net.nz>
16697
16698 * Makefile.in (LIBGPM): Allow it to be set from configure.
16699 If set then link Emacs with it.
16700
16701 * config.in: Regenerate.
16702
16703 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
16704 New externs.
16705
16706 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
16707 Include gpm.h.
16708 (handle_one_term_event, term_gpm): New externs.
16709
16710 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
16711 and allow it to be interrupted by SIGIO.
16712
16713 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
16714 (wait_reading_process_output): Wait on gpm_fd too.
16715 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
16716 (add_gpm_wait_descriptor_called_flag): New variable.
16717 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
16718
16719 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
16720 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
16721 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
16722 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
16723 (make_lispy_event): Add case GPM_CLICK_EVENT.
16724 (read_avail_input): Handle mouse input.
16725
16726 * term.c (write_glyphs_with_face): New function.
16727 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
16728 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
16729 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
16730 (mouse_face_face_id, term_gpm, pos_x, pos_y)
16731 (last_mouse_x, last_mouse_y): New variables.
16732 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
16733 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
16734 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
16735 (Fterm_close_connection): New functions.
16736 (term_init): Initialise mouse_face_window.
16737
167382007-05-19 Chong Yidong <cyd@stupidchicken.com>
16739
16740 * xdisp.c (redisplay_window): If first window line is a
16741 continuation line, recompute the new window start instead of
16742 recentering.
16743
167442007-05-18 Glenn Morris <rgm@gnu.org>
16745
16746 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
16747 Suggested by Alfred M. Szmidt <ams@gnu.org>.
16748
167492007-05-17 Glenn Morris <rgm@gnu.org>
16750
16751 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
16752
167532007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16754
16755 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
16756 dead key repeat and up events.
16757
167582007-05-14 Chong Yidong <cyd@stupidchicken.com>
16759
16760 * image.c (pbm_load): Check image size for monochrome pbm.
16761
167622007-05-13 Chong Yidong <cyd@stupidchicken.com>
16763
16764 * xterm.c (XTread_socket): Revert last change.
16765
167662007-05-12 Chong Yidong <cyd@stupidchicken.com>
16767
16768 * image.c (pbm_load): Correctly check image size for greyscale pbm.
16769
16770 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
16771
167722007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16773
16774 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
16775 mixup (YAILOM).
16776
167772007-05-07 Andreas Schwab <schwab@suse.de>
16778
16779 * keymap.c (Flookup_key): Fix typo in last change.
16780
167812007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
16782
16783 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
16784 mapping for unibyte strings.
16785
167862007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16787
16788 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
16789 (Fx_popup_dialog) [MAC_OSX]: Likewise.
16790
167912007-04-29 Richard Stallman <rms@gnu.org>
16792
16793 * insdel.c (replace_range): For undo, record insertion first.
16794
167952007-04-29 Andreas Schwab <schwab@suse.de>
16796
16797 * lisp.h (VECSIZE): Use OFFSETOF.
16798
167992007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16800
16801 * xdisp.c (try_window_reusing_current_matrix): Fix number of
16802 disabled lines.
16803
168042007-04-28 Richard Stallman <rms@gnu.org>
16805
16806 * lread.c (read_escape): In a string, \s is always space.
16807
168082007-04-27 Jan Djärv <jan.h.d@swipnet.se>
16809
16810 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
16811
16812 * gtkutil.c (xg_update_menubar, create_menus): Create empty
16813 submenu for menu bar items.
16814
16815See ChangeLog.10 for earlier changes.
16816
16817;; Local Variables:
16818;; coding: utf-8
16819;; add-log-time-zone-rule: t
16820;; bug-reference-url-format: "http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=%s"
16821;; End:
16822
16823 Copyright (C) 2007, 2008 Free Software Foundation, Inc.
16824
16825 This file is part of GNU Emacs.
16826
16827 GNU Emacs is free software: you can redistribute it and/or modify
16828 it under the terms of the GNU General Public License as published by
16829 the Free Software Foundation, either version 3 of the License, or
16830 (at your option) any later version.
16831
16832 GNU Emacs is distributed in the hope that it will be useful,
16833 but WITHOUT ANY WARRANTY; without even the implied warranty of
16834 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16835 GNU General Public License for more details.
16836
16837 You should have received a copy of the GNU General Public License
16838 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
16839
16840;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40