(encode_coding_utf_16): Fix checking of an Unicode character.
[bpt/emacs.git] / src / ChangeLog
CommitLineData
ef73e7be
KH
12009-08-27 Kenichi Handa <handa@m17n.org>
2
60afa08d
KH
3 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
4 character.
5
ef73e7be
KH
6 * cmds.c (Fself_insert_command): Avoid unnecessay
7 unibyte->multibyte conversion.
8
7b3a82d7
DN
92009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
10
5654bf63
DN
11 * callproc.c (Fcall_process): Remove always true #if.
12
7b3a82d7
DN
13 * lisp.h: Replace #if 0 code for checking with text pointing to
14 the --enable-checking configure flag.
15
16 * emacs.c (main): Mention the --enable-profiling configure flag
17 instead of using CFLAGS.
18
878bde49
KR
192009-08-26 Ken Raeburn <raeburn@raeburn.org>
20
21 * Makefile.in (buildobj.h): New target.
22 (doc.o): Depend on it.
23 (temacs${EXEEXT}): Don't generate buildobj.lst.
24 (mostlyclean): Delete buildobj.h, not buildobj.lst.
25 * makefile.w32-in ($(SRC)/buildobj.h): New target.
26 ($(BLD)/doc.$(O)): Depend on it.
27 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
28 provided by Eli Zaretskii.)
29 ($(TEMACS)): Don't generate buildobj.lst.
30 * doc.c: Include buildobj.h.
31 (buildobj): New static variable.
32 (Fsnarf_documentation): Use it, instead of opening and reading
33 buildobj.lst.
34
1574224c
MA
352009-08-25 Michael Albinus <michael.albinus@gmx.de>
36
37 * dbusbind.c (Fdbus_call_method)
38 (Fdbus_call_method_asynchronously): Use English numeric format for
39 timeout values in doc string.
40
d9da2f45
KH
412009-08-25 Kenichi Handa <handa@m17n.org>
42
ef73e7be
KH
43 * alloc.c (mark_char_table): New function.
44 (mark_object): Use mark_char_table for a char-table.
45
d9da2f45
KH
46 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
47 (CHAR_TABLE_REF): Use it.
48
c8edcc01
KR
492009-08-23 Ken Raeburn <raeburn@raeburn.org>
50
51 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
52 before invoking the newly build emacs to check for load-path
53 shadowing.
54
7763401b
GM
552009-08-22 Glenn Morris <rgm@gnu.org>
56
57 * Makefile.in (bootstrap_exe): New variable.
58 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
59 Use ${bootstrap_exe}.
60
729eadda
EZ
612009-08-22 Eli Zaretskii <eliz@gnu.org>
62
63 * coding.h (encode_coding_string): Don't encode unibyte strings.
64 (Bug#4047)
65
eb4c6ace
MA
662009-08-22 Michael Albinus <michael.albinus@gmx.de>
67
68 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
69
70 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
71 intended as hotfix only.
72 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
73
36e34d1b
AR
742009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
75
76 * nsterm.m (ns_get_color): Update documentation properly for last
77 change, and clean up loose ends in the code left by it. Fix
78 longstanding bug with 16-bit hex parsing, and add support for
79 yet another X11 format (rgb:r/g/b) for compatibility.
80 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
81 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
82
f983eb8a
SM
832009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
84
85 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
86
3f56d3c6
MA
872009-08-20 Michael Albinus <michael.albinus@gmx.de>
88
89 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
90 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
91 (xd_initialize, xd_pending_messages): Check, whether
92 $DBUS_SESSION_BUS_ADDRESS is set.
93
fb641d68
YM
942009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
95
96 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
97
98 * nsterm.m (ns_get_color): Remove incompatible color formats again.
99
cf59a374
GM
1002009-08-20 Glenn Morris <rgm@gnu.org>
101
102 * emacs.c (system-type): Doc fix.
103
1373f3be
SM
1042009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
105
106 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
107 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
108
058ed861
MA
1092009-08-18 Michael Albinus <michael.albinus@gmx.de>
110
1373f3be
SM
111 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
112 New functions.
058ed861
MA
113 (xd_initialize): Revert change from 2009-08-16.
114
563a866e 1152009-08-18 Kenichi Handa <handa@m17n.org>
5fc05db0
KH
116
117 * fontset.c (Ffontset_font): If a nil element is found in a
563a866e 118 font-group vector, return nil.
5fc05db0 119
e42bdf01
CY
1202009-08-17 Chong Yidong <cyd@stupidchicken.com>
121
122 * process.c (status_notify): Don't perform redisplay.
123 (Fdelete_process, list_processes_1, process_send_signal):
124 Expliticly perform redisplay.
125 (wait_reading_process_output): Always check process status, but
126 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
127
4230ab74
KR
1282009-08-17 Ken Raeburn <raeburn@raeburn.org>
129
1373f3be 130 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
f601cdf3
KR
131 (XFLOAT_INIT): New macro for storing a float value.
132 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
133 * fns.c (sxhash): Copy out the value of a float in order to
134 examine its bytes.
135 * dbusbind.c (xd_append_arg): Likewise.
136
4230ab74
KR
137 * emacs.c (main): Don't call syms_of_data twice.
138
a0645cdd
MA
1392009-08-16 Michael Albinus <michael.albinus@gmx.de>
140
141 * dbusbind.c (xd_initialize): Add connection file descriptor to
142 input_wait_mask, in order to let select() detect, whether a new
143 message has been arrived.
ca4f31ea 144 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
a0645cdd 145
485db0ba
MA
1462009-08-15 Michael Albinus <michael.albinus@gmx.de>
147
1373f3be
SM
148 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
149 New functions.
485db0ba
MA
150
151 * lisp.h (xd_pending_messages): Declare.
152
153 * keyboard.c (readable_events): Call xd_pending_messages.
154
b5b98ff4
CY
1552009-08-15 Chong Yidong <cyd@stupidchicken.com>
156
1373f3be 157 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
84b17ab0 158
f8354c6e
CY
159 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
160
b5b98ff4
CY
161 * buffer.c (set_buffer_internal_1)
162 (swap_out_buffer_local_variables): Check for unbound local
163 variables (Bug#4138).
164
8b9fc636
EZ
1652009-08-14 Eli Zaretskii <eliz@gnu.org>
166
167 * process.c (create_pty): Fix last change.
168
ce959360
CY
1692009-08-13 Chong Yidong <cyd@stupidchicken.com>
170
171 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
172 (xbm_load_image): Caller changed.
64b807c9 173 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
ce959360 174
c7baf7e9
NR
1752009-08-13 Nick Roberts <nickrob@snap.net.nz>
176
177 * process.c (create_pty): New function.
178 (Fstart_process): Use it to allow Emacs to just associate a pty
179 with the buffer. See associated change in gdb-mi.el.
180 (list_processes_1): Deal with no program name.
181 (start_process_unwind): Use pid == -2 to mean no process.
182
1ac9108a
SM
1832009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
184
185 * cmds.c (nonundocount): New global variable.
186 (keys_of_cmds): Initialize it.
187 (Fself_insert_command): Use it to combine upto 20 sequential chars
188 into a single undo entry, just like the Qself_insert_command code in
189 keyboard.c does.
190 Call frame_make_pointer_invisible, also like the Qself_insert_command
191 code in keyboard.c does.
192 * keyboard.c (command_loop_1): Use the new global nonundocount rather
193 than its own local replacement for it.
194
e267324c
KR
1952009-08-10 Ken Raeburn <raeburn@raeburn.org>
196
1ac9108a 197 * fns.c (concat): Don't re-set string length to its current value.
77437343 198
1ac9108a
SM
199 * coding.h (decode_coding_string, encode_coding_string):
200 Use SBYTES macro.
f0bed503 201
1ac9108a 202 * doprnt.c (doprnt_lisp): Delete unused function.
e267324c
KR
203 (doprnt): Merge with doprnt1, discarding lispstrings code.
204 * lisp.h (doprnt_lisp): Don't declare.
205
416e006d
JL
2062009-08-07 Juri Linkov <juri@jurta.org>
207
208 * puresize.h (BASE_PURESIZE): Increase to 1270000.
209
6f7d5780
DN
2102009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
211
212 * print.c (syms_of_print): Undo previous change.
213
f19a0f5b
TZ
2142009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
215
216 * lread.c (read1, syms_of_lread): Read hashtables back from the
217 readable format.
218
219 * print.c (print_preprocess, print_object): Print hashtables fully
220 and readably.
221 (syms_of_print): Provide 'hashtable-print-readable.
222
b9173dc2
AR
2232009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
224
225 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
226 no family set.
227 (nsfont_open): Handle case when entity has no family.
228
1586503c
AR
2292009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
230
231 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
232 element, not a list, for match case.
233
087048cd
KH
2342009-07-28 Kenichi Handa <handa@m17n.org>
235
236 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
237 rigidly.
238
239 * xfont.c (xfont_list_pattern): Don't ignore the return value of
240 font_parse_xlfd. Check font properties more rigidly.
241
780c2506
DN
2422009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
243
244 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in bsd-common.h
245
a8c0cc18
KH
2462009-07-27 Kenichi Handa <handa@m17n.org>
247
248 * xfaces.c (face_with_height): Call font_clear_prop.
249
4fbe2306
CY
2502009-07-26 Chong Yidong <cyd@stupidchicken.com>
251
111d9af3
CY
252 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
253
254 * xterm.c (x_term_init): Use Qx.
255
4fbe2306
CY
256 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
257
1ac9108a 258 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4fbe2306
CY
259 (ns_get_color): Revert 2009-07-16 change.
260
beb0b7f9
EZ
2612009-07-25 Eli Zaretskii <eliz@gnu.org>
262
263 * lread.c (syms_of_lread) <force_load_messages>: New variable.
1ac9108a 264 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
beb0b7f9 265
2baf5e76
KR
2662009-07-25 Ken Raeburn <raeburn@raeburn.org>
267
1ac9108a
SM
268 * coding.h (decode_coding_string, encode_coding_string):
269 Use SCHARS macro.
8890e5f5 270
2baf5e76 271 * lread.c: Rewrite 2009-07-21 changes.
1ac9108a 272 (load_depth): Delete.
2baf5e76
KR
273 (Qload_in_progress): New variable.
274 (load_unwind): Don't reference load_depth or load_in_progress.
275 (Fload): Likewise; specbind Qload_in_progress instead.
276 (init_lread): Don't initialize load_depth.
277 (syms_of_lread): Initialize and protect Qload_in_progress.
278
1395c6f5
AR
2792009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
280
281 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
282
4e2f36cf
AR
2832009-07-23 Yavor Doganov <yavor@gnu.org>
284
285 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
286
5dd9a6f7
AR
2872009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
288
289 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
7f6ad209
AR
290 Bugs 3792, 3720, 2402.
291 (ns_lookup_indexed_color): Check for bad index.
292 (ns_index_color): Init unused slot to 0.
293 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
294 Bug 3714, possibly 3082.
5dd9a6f7 295
c902b920
JR
2962009-07-22 Jason Rumney <jasonr@gnu.org>
297
1ac9108a
SM
298 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
299 Position IME window at cursor (Bug#2570).
c902b920
JR
300 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
301 (globals_of_w32fns): Dynamically load functions required above.
302
303 * w32term.c (w32_draw_window_cursor): Send message to reposition
304 any IME window.
305
090101cf
CY
3062009-07-21 Chong Yidong <cyd@stupidchicken.com>
307
308 * fileio.c: Revert 2009-07-16 changes.
309 (Vauto_save_include_big_deletions): New variable.
310 (Fdo_auto_save): Disable auto-save only if
311 auto-save-include-big-deletions is nil.
312
e6583e3d
CY
3132009-07-21 Chong Yidong <cyd@stupidchicken.com>
314
315 * xdisp.c (move_it_to): For continued lines ending in a tab, take
316 the overflowed pixels into account (Bug#3879).
317
ece435a5
KR
3182009-07-21 Ken Raeburn <raeburn@raeburn.org>
319
320 * lread.c (load_depth): New variable.
321 (Fload, load_unwind, init_lread): Set it to the load recursion
322 depth; set load_in_progress as a simple boolean based on the
323 current load_depth. (Bug#3892)
324
40b2d973
AR
3252009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
326
327 * nsfont.m (ns_has_attribute): Remove.
328 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
329
10be7e0d
JL
3302009-07-18 Juri Linkov <juri@jurta.org>
331
332 * process.c (Fset_process_query_on_exit_flag): Mention killing
333 a buffer in docstring.
334
fa055055
KH
3352009-07-17 Kenichi Handa <handa@m17n.org>
336
337 * casetab.c (shuffle): Fix the logic of setting up the cycle.
338
042f7b69
YM
3392009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
340
341 * nsfns.m (Fns_set_alpha): Remove function.
342 (syms_of_nsfns): Don't defsubr it.
343
344 * nsterm.m (ns_get_color): Remove incompatible color formats.
345 (ns_color_to_lisp): Generate #rrggbb color format string.
346
4be941e3
RS
3472009-07-16 Richard Stallman <rms@gnu.org>
348
349 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
350 (Fset_buffer_auto_saved): Handle save_length = -2.
351
4e6b227d
CY
3522009-07-16 Chong Yidong <cyd@stupidchicken.com>
353
354 * xterm.c (Qx_gtk_map_stock): New var.
355
356 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
357 of calling intern each time.
358
a1856973
YM
3592009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
360
361 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
362 does tiling.
363
364 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
365
497e54d8
KH
3662009-07-14 Kenichi Handa <handa@m17n.org>
367
72d36834
KH
368 * font.c (font_vconcat_entity_vectors): New function.
369 (struct font_sort_data): New member font_driver_preference.
370 (font_compare): Check font_driver_preference.
371 (font_sort_entities): The format of the first argument changed.
372 (font_delete_unmatched): Likewise.
373 (font_list_entities): The return type changed.
374 (font_select_entity): The format of the second argument changed.
1ac9108a
SM
375 (font_find_for_lface): Adjuste for the above changes.
376 Don't suppress the checking of C even if the repertory supports it.
377 (Flist_fonts): Adjust for the above changes.
72d36834 378
1ac9108a
SM
379 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
380 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
497e54d8
KH
381 Reject a font who has adstyle property that is different from a
382 langname derived from registry property.
1ac9108a 383 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
497e54d8 384
b6046155
EZ
3852009-07-13 Eli Zaretskii <eliz@gnu.org>
386
387 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
388 local copy of dirfilename.
389
fb6b6049
KH
3902009-07-13 Kenichi Handa <handa@m17n.org>
391
e2402a5e
KH
392 * chartab.c (sub_char_table_ref_and_range): Fix the range check
393 against max_char.
394
fb6b6049
KH
395 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
396 calling XSYMBOL (sym).
397
65156807
EZ
3982009-07-11 Eli Zaretskii <eliz@gnu.org>
399
1ac9108a
SM
400 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
401 New function.
402 (directory_files_internal) [WINDOWSNT]:
403 Bind w32-get-true-file-attributes to either t or nil, depending whether
65156807
EZ
404 the filesystem of the directory is fast or slow.
405
406 * w32.c (logon_network_drive): Don't assume PATH is an absolute
407 file name.
408 (is_slow_fs): New function.
409 (stat): Use it to determine whether to issue more system calls to
410 get accurate file attributes, when w32-get-true-file-attributes is
411 `local'.
412
e0ab5fcf
JD
4132009-07-10 Jan Djärv <jan.h.d@swipnet.se>
414
415 * xfns.c (Fx_select_font): Remember last font selected in
416 x_last_font_name and use that the next time. Also try the frame
417 parameter font-parameter as default to the font dialog.
418
784ceded
KH
4192009-07-10 Kenichi Handa <handa@m17n.org>
420
421 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
422
fb8edc0b
EZ
4232009-07-09 Eli Zaretskii <eliz@gnu.org>
424
1ac9108a 425 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
017dab84 426
fb8edc0b
EZ
427 * w32.c (stat): Treat UNC file names as residing on remote
428 drives. (Bug#3542)
429
635c75b1
KH
4302009-07-09 Kenichi Handa <handa@m17n.org>
431
432 * fontset.c (fontset_find_font): Fix previous change.
433
c1d5ce94
MA
4342009-07-08 Michael Albinus <michael.albinus@gmx.de>
435
436 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
437 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
438 error flag.
439
edb61b39
KH
4402009-07-08 Kenichi Handa <handa@m17n.org>
441
374bf7e4
KH
442 * fontset.c (fontset_find_font): Fix the logic of handling
443 charset_matched.
444 (font_for_char): Delete unused var.
445 (generate_ascii_font_name): Delete it.
446
edb61b39
KH
447 * coding.h (JIS_TO_SJIS2): Fix the code range check.
448
449 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
450 (encode_coding_sjis): Fix the code range check.
451
0f3f018c
CY
4522009-07-07 Chong Yidong <cyd@stupidchicken.com>
453
454 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
455 (Fexpand_file_name): Copy string data properly (Bug#3772).
456
fcaf6f3a
JD
4572009-07-07 Jan Djärv <jan.h.d@swipnet.se>
458
459 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
460 first MapNotify.
461
6809ca75
KH
4622009-07-07 Kenichi Handa <handa@m17n.org>
463
464 * character.h (unibyte_has_multibyte_table): Delete extern.
465 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
466
467 * charset.c (Fset_charset_priority): Update charset_unibyte.
468 (syms_of_charset): Initialize charset_unibyte.
469
470 * character.c (unibyte_has_multibyte_table): Delete it.
471 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
472 charset_unibyte.
473 (multibyte_char_to_unibyte_safe): Likewise.
474 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
475
1ac9108a 476 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
6809ca75
KH
477 (x_produce_glyphs): Likewise.
478
479 * .gdbinit (xcharset): Fix the treating $arg0.
480
ad9e2d54
EZ
4812009-07-04 Eli Zaretskii <eliz@gnu.org>
482
483 Emulation of `getloadavg' on MS-Windows.
484 * w32.c: Include float.h
485 (g_b_init_get_native_system_info, g_b_init_get_system_times)
486 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
487 (get_native_system_info, get_system_times): New functions.
488 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
489 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
490 (globals_of_w32): Initialize g_b_init_get_native_system_info,
491 g_b_init_get_system_times, and num_of_processors.
492
0a3472c7
JR
4932009-07-03 Jason Rumney <jasonr@gnu.org>
494
495 * w32term.c (w32_initialize): Use standard types.
496
80904120
EZ
4972009-07-03 Eli Zaretskii <eliz@gnu.org>
498
499 * dired.c (Ffile_attributes): Decode user and group names by the
500 locale's encoding. (Bug#3443)
501
6978862d
DN
5022009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
503
f8d23104
DN
504 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
505 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
506
507 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
508
509 * term.c (init_tty): Remove spurious #ifdef.
510
6978862d
DN
511 * m/mips.h: Mention this file is also used for netbsd.
512 * m/pmax.h: Remove file.
513
e044e4fc
JD
5142009-07-03 Jan Djärv <jan.h.d@swipnet.se>
515
516 * xterm.h (struct x_display_info): Add invisible_cursor.
517 (struct x_output): Add current_cursor.
518
519 * xterm.c (XTtoggle_invisible_pointer): New function.
520 (x_define_frame_cursor): Don't define cursor if invisible or the
521 same as before. Set current_cursor.
522 (x_create_terminal): Set toggle_invisible_pointer_hook.
523
524 * xfns.c (make_invisible_cursor): New function.
525 (x_set_mouse_color): Call make_invisible_cursor.
526 Set current_cursor.
527 (x_window): Set current_cursor.
528
529 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
530
531 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
532 inserting a character.
533 (read_avail_input): Call frame_make_pointer_visible.
534
535 * frame.c (Vmake_pointer_invisible): New variable.
1ac9108a
SM
536 (frame_make_pointer_invisible, frame_make_pointer_visible):
537 New functions.
e044e4fc
JD
538 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
539
540 * frame.h: Declare frame_make_pointer_invisible and
541 frame_make_pointer_visible.
542 (struct frame): Add pointer_invisible.
543
574c8efa
JD
5442009-07-02 Jan Djärv <jan.h.d@swipnet.se>
545
7b507248
JD
546 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
547 frame isn't visible.
548 (xg_frame_resized): If width/height is -1, get size of window
549 from X server.
550
551 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
552 for MapNotify.
553
835bdaa7
JD
554 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
555 here or call change_frame_size. Just call flush_and_sync.
1ac9108a 556 (flush_and_sync): Reintroduce.
574c8efa 557
3f1c6666 5582009-07-01 Jan Djärv <jan.h.d@swipnet.se>
69b16610 559
acd51077
JD
560 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky
561
562 * xterm.c (x_handle_net_wm_state): Also look for sticky.
563 (x_term_init): Initialize Xatom_net_wm_state_sticky.
564
565 * frame.h: Declare Qsticky.
566
cad9ef74
JD
567 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
568
569 * nsfns.m (ns_frame_parm_handlers): Ditto.
570
571 * frame.c: Declare Qsticky.
572 (frame_parms): Add sticky.
573
574 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
575
576 * xterm.h: Declare x_set_sticky.
577
578 * xterm.c (x_set_sticky): New function.
579
69b16610
JD
580 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
581 (xg_tool_bar_menu_proxy): Attach enter/leave events to
582 xg_tool_bar_proxy_help_callback.
3f1c6666
JD
583
584 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
585
586 * frame.c: Qmaximized is new.
587 (x_set_frame_parameters): Do not handle fullscreen specially.
588 Only set width and height if explicitly set.
589 (x_set_fullscreen): Handle Qmaximized.
590 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
591 (syms_of_frame): Initialize Qmaximized.
592
1ac9108a
SM
593 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
594 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
3f1c6666
JD
595
596 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
597 for Expose event. Add call to x_check_fullscreen for MapNotify event.
598 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
599 set gravity to NorthWestGravity when USE_GTK.
600 (set_wm_state): New function.
601 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
602 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
603 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
604 or the case when no window manager is running. That means remove calls
605 to x_real_positions and x_fullscreen_adjust.
606
607 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
608 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
609 flush_and_sync.
610 (xg_height_changed): New function.
611 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
1ac9108a
SM
612 and gtk_window_set_policy. Set frame gravity after parsing the
613 geometry string.
3f1c6666
JD
614 (xg_update_frame_menubar, free_frame_menubar)
615 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
616 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
617 Remove calls to xg_frame_set_char_size.
618
fd503d99
KH
6192009-07-01 Kenichi Handa <handa@m17n.org>
620
621 * keyboard.c (decode_keyboard_code): New function.
622 (tty_read_avail_input): Decode the input bytes if necessary.
623
1ac9108a
SM
624 * coding.c (setup_coding_system):
625 Initialize coding->carryover_bytes to 0.
fd503d99
KH
626 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
627 use Qno_conversion.
628
24ed93fb
YM
6292009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
630
631 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
632
99061dfc
CY
6332009-06-30 Chong Yidong <cyd@stupidchicken.com>
634
1ac9108a 635 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
99061dfc 636
ff90fbde
JR
6372009-06-30 Jason Rumney <jasonr@gnu.org>
638
639 * w32term.c (w32_initialize): Use GetModuleHandle for library that
640 is already loaded.
641 Set user model ID if supported (bug#1849).
642
5f445726
JM
6432009-06-29 Jim Meyering <meyering@redhat.com>
644
645 Remove useless if-before-xfree test.
646 * nsfont.m (nsfont_close): Remove useless test.
647 * term.c (delete_tty): Likewise.
648 * w32.c (system_process_attributes): Likewise.
649 * w32font.c (w32font_close): Likewise.
650 * xfaces.c (x_free_gc): Likewise.
651 * xselect.c (buffer): Likewise.
652
b9607587
AS
6532009-06-28 Andreas Schwab <schwab@linux-m68k.org>
654
655 * process.c (send_process): Keep decoded string in a local
656 variable and protect it from GC. (Bug#3521)
657
89ba96f4
EZ
6582009-06-28 Eli Zaretskii <eliz@gnu.org>
659
660 * term.c (create_tty_output) [MSDOS]: #ifdef away.
661 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
662
098a1589
CY
6632009-06-28 Chong Yidong <cyd@stupidchicken.com>
664
485422be
CY
665 * xdisp.c (start_display, handle_face_prop)
666 (move_it_vertically_backward, cursor_row_fully_visible_p)
1ac9108a
SM
667 (redisplay_window, try_window_id, produce_image_glyph):
668 Delete some #ifdef-ed out code chunks that are now obsolete.
485422be 669
098a1589
CY
670 * xterm.c (x_update_window_begin, x_new_focus_frame)
671 (x_scroll_bar_handle_click, handle_one_xevent)
672 (handle_one_xevent, XTread_socket, x_focus_on_frame)
673 (x_make_frame_visible, x_make_frame_invisible)
674 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
675 code chunks that are now obsolete.
676
78c38319
MA
6772009-06-28 Michael Albinus <michael.albinus@gmx.de>
678
679 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
680 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
681 for hours, when optimzation is enabled.
682 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
683 (xd_read_message): Make them static.
684
4189ed40
CY
6852009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
686
687 * term.c (turn_on_face): Allow simultaneously bold and dim
688 terminal faces (Bug#3530).
689
cd9b5e16
CY
6902009-06-27 Chong Yidong <cyd@stupidchicken.com>
691
4e23bedb
CY
692 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
693
cd9b5e16
CY
694 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
695 truncation glyphs (Bug#3686).
696
07cc3c35
GM
6972009-06-27 Glenn Morris <rgm@gnu.org>
698
699 * m/pmax.h: Restore file, with only netbsd portions.
700
25c5550f
DR
7012009-06-26 David Reitter <david.reitter@gmail.com>
702
cd9b5e16 703 * nsterm.m (keydown): Avoid infinite loop.
25c5550f 704
42d4a64f
KH
7052009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
706
707 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
708 the arg FORCE_SYMBOL.
709
930fe55b 7102009-06-25 Kenichi Handa <handa@m17n.org>
a71ccf3a
KH
711
712 * fontset.c (fontset_find_font): When a usable rfont_def is found
713 in a fallback font-group, make it the first element of the group.
714
57ebc3fd
CY
7152009-06-24 Chong Yidong <cyd@stupidchicken.com>
716
717 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
718
f084f942
KH
7192009-06-24 Kenichi Handa <handa@m17n.org>
720
721 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
722 set for C.
723 (fontset_font): Record the availability of a font for C both in
724 the realized fontsets of the current one and the default one.
725
2f686c87
DN
7262009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
727
728 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
729 conditional, it is always defined on AIX.
730
666e158e
MB
7312009-06-23 Miles Bader <miles@gnu.org>
732
733 * window.c (Vrecenter_redisplay): New variable.
734 (syms_of_window): Initialize it.
735 (Qtty): New extern declaration.
736 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
737
c6da7cd2
JM
7382009-06-23 Jim Meyering <meyering@redhat.com>
739
1ac9108a
SM
740 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
741 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
632c2030 742 pointer dereferences are guaranteed to be valid.
c6da7cd2 743
678dca3d
KH
7442009-06-23 Kenichi Handa <handa@m17n.org>
745
74d75424
KH
746 * emacs.c (main): Call init_font ().
747
748 * font.h (Vfont_log): Extern it.
749 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
750
751 * font.c (font_sort_entities, font_list_entities)
752 (font_matching_entity, font_open_entity)
753 (font_close_object): Change font_add_log to FONT_ADD_LOG.
754 (Vfont_log): Delete static.
755 (font_log_env_checked): Delete this variable.
756 (font_add_log): Don't check font_log_env_checked.
757 (font_deferred_log): Check Vfont_log.
758 (init_font): New function.
759
678dca3d
KH
760 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
761
762 * w32font.c: Change font_add_log to FONT_ADD_LOG.
763
764 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
765
766 * xfont.c: Change font_add_log to FONT_ADD_LOG.
767
768 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
769 (face_for_char): Don't call font_deferred_log here.
770 (font_for_char): Likewise.
771
8a668709
CY
7722009-06-22 Chong Yidong <cyd@stupidchicken.com>
773
9a01ee33
CY
774 * w32term.c (x_draw_glyph_string): Use the glyph string's width
775 rather than its background_width for drawing the overline and
776 underline (Bug#489).
777
778 * xterm.c (x_draw_glyph_string): Use the glyph string's width
779 rather than its background_width for drawing the overline and
780 underline (Bug#489).
ec7c9926
CY
781 (xg_default_icon_file): New variable.
782 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
783 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
9a01ee33 784
8a668709
CY
785 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
786 (load_overlay_strings): Remove externs.
787 (fast_find_position): Function deleted.
788 (mouse_face_from_buffer_pos): New function, based on
789 fast_find_position. Correctly handle before-strings,
790 display-strings, and after-strings (Bug#1220).
791 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
792
4d4c02d8
CY
7932009-06-21 Chong Yidong <cyd@stupidchicken.com>
794
1ac9108a 795 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4d4c02d8
CY
796 (move_it_in_display_line_to, move_it_in_display_line_to)
797 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
798
70243478
CY
7992009-06-21 Chong Yidong <cyd@stupidchicken.com>
800
801 * Branch for 23.1.
802
13087e59
JR
8032009-06-21 Jason Rumney <jasonr@gnu.org>
804
805 * w32term.c (keyboard_codepage): New static variable.
806 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
807 (w32_read_socket) [WM_CHAR]: Use it to decode character
808 input (bug#3237).
809 (w32_initialize): Initialize it.
810 (codepage_for_locale): New function.
811
4735b74e
KR
8122009-06-20 Ken Raeburn <raeburn@raeburn.org>
813
814 * process.c (status_message): Pass Faset index argument as a lisp
815 object, so as to work with USE_LISP_UNION_TYPE.
816
0e727afa
YM
8172009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
818
819 * coding.c (Ffind_coding_systems_region_internal):
820 Cache checked characters.
821
cf299835
KH
8222009-06-18 Kenichi Handa <handa@m17n.org>
823
1ac9108a 824 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
cf299835 825
90f20d94
AS
8262009-06-18 Andreas Schwab <aschwab@redhat.com>
827
828 * xdisp.c (redisplay_internal): Check that the frame is still
829 live after redisplay of its windows.
830 (redisplay_windows): Check that the window is still live.
831
7f1faf1c
KH
8322009-06-17 Andreas Schwab <schwab@linux-m68k.org>
833
834 * coding.c (detect_coding_utf_16): Fix previous change.
835
cc13543e
KH
8362009-06-16 Kenichi Handa <handa@m17n.org>
837
838 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
839 UTF-16 by checking the dispersion of Eth and Oth bytes.
840
977b85f4
AS
8412009-06-15 Andreas Schwab <schwab@linux-m68k.org>
842
843 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
844
66bd43d1
KH
8452009-06-15 Kenichi Handa <handa@m17n.org>
846
847 * process.c (status_message): Fix previous change. Be sure to
848 decode a localized string.
849
cb5ca9c5
YM
8502009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
851
852 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
853 add comment explaining why.
854
ec7709ba 8552009-06-14 Sidney Markowitz <sidney@sidney.com>
5ee6f629 856
ec7709ba 857 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
5ee6f629 858
4b7f335c
AR
8592009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
860
861 * nsfont.m (ns_attribute_value): Remove.
862 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
863 (ns_has_attribute): Shrink the normal range.
864 (ns_findfonts): Don't worry about requested spec in determining
865 need for synthItal.
e41820ee 866 (ns_get_covering_families): Retain scriptToFamilies.
4b7f335c 867
73b26103
SZ
8682009-06-14 Seiji Zenitani <zenitani@mac.com>
869
870 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
871
5753e4da
KH
8722009-06-11 Kenichi Handa <handa@m17n.org>
873
874 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
875 overhang for the static composition case.
876
3561b671
KH
8772009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
878
5753e4da
KH
879 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
880 overhang for the automatic composition case.
881
3561b671
KH
882 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
883 composition case.
884
852bbd41
CY
8852009-06-10 Chong Yidong <cyd@stupidchicken.com>
886
887 * xdisp.c (get_next_display_element): When handling wrap-prefix
888 and line-prefix, treat \n as a control character (bug#3502).
889
9903d1e6
KH
8902009-06-10 Kenichi Handa <handa@m17n.org>
891
892 * font.c (font_parse_family_registry): Fix for one-char foundry.
893 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
894
0bcbaaaa
CY
8952009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
896
897 * process.c (status_message): Fix handling of multibyte signal
898 string (Bug#3499).
899
40aa3f13
JM
9002009-06-09 Jim Meyering <meyering@redhat.com>
901
1f80c7e2
CY
902 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
903 color name is missing.
40aa3f13 904
72d51285
KH
9052009-06-09 Kenichi Handa <handa@m17n.org>
906
907 * charset.c (Fmap_charset_chars): In docstring, state clearly that
908 FROM-CODE and TO-CODE are codepoints of CHARSET.
909
c1d04d84
AR
9102009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
911
912 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
913
9142009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
915
916 Changes to support :script/:lang/:otf in NS font driver.
917 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
918 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
919 indicate not part of font driver interface, and change callers.
920 (ns_get_family): Remove pointless null check.
921 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
922 ns_spec_to_descriptor, ns_descriptor_to_entity.
923 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
924 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
925 (ns_spec_to_descriptor, ns_descriptor_to_entity)
926 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
927 (ns_get_req_script, ns_accumulate_script_ranges)
928 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
929 New functions.
930 (nsfont_list, nsfont_match): Use ns_findfonts.
931 (nsfont_open): Use font descriptor instead of traits.
932 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
933 (dump_glyphstring): Rename to ns_dump_glyphstring.
934
c7eb9816
AR
935 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
936
c1d04d84
AR
937 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
938
939 * fontset.c (fontset_from_font): Remove NS-specific code.
940
ec7709ba 9412009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
c1d04d84
AR
942
943 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
944 nonactive windows.
945
9462009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
947
1ac9108a 948 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
c1d04d84 949
68852c13 9502009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
e7777236
AR
951
952 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
953
6756cd1d
CY
9542009-06-07 Chong Yidong <cyd@stupidchicken.com>
955
956 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
957 account for the overflowing of newlines into the last glyph on the
958 display line (Bug#3482).
959
28bf482a
DR
9602009-06-05 David Reitter <david.reitter@gmail.com>
961
ec7709ba
JB
962 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
963 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
28bf482a
DR
964 Fns_selection_exists_p, Fns_selection_owner_p.
965
fdb55376
JR
9662009-06-03 Jason Rumney <jasonr@gnu.org>
967
968 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
969 available. (Bug#3379)
970
05129fbe
KH
9712009-05-29 Kenichi Handa <handa@m17n.org>
972
1ac9108a
SM
973 * coding.c (get_translation_table):
974 Check Venable_character_translation.
05129fbe 975
ec7709ba 9762009-05-26 David Reitter <david.reitter@gmail.com>
15891144 977
ec7709ba
JB
978 * nsterm.m (ns_raise_frame): Only raise frame if visible.
979 (x_make_frame_visible): Move frame to front rather than calling
15891144 980 ns_raise_frame().
ec7709ba 981 (keyDown:): Do not swallow events that aren't re-sent if frame
15891144 982 isn't key window.
ec7709ba 983 (drawRect:): Do not set visibility/iconified flags because
15891144
DR
984 drawRect may be called by NSView even if the frame is hidden.
985
ec7709ba
JB
986 * nsfns.m (Fx_create_frame): Follow other ports in
987 determining visibility; default to t. Ensure async_visible is set.
15891144 988
21f73755
EZ
9892009-05-23 Eli Zaretskii <eliz@gnu.org>
990
991 * dired.c (Ffile_attributes): Doc fix.
992
34001e41
CY
9932009-05-22 Chong Yidong <cyd@stupidchicken.com>
994
995 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
996
46306a17
SM
9972009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
998
999 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
1000 and xfont_scratch_props.
1001 (syms_of_xfont): Do it here instead.
1002 (xfont_find_ccl_program): Delete, unused.
1003 (xfont_open): Delete unused var `i'.
1004
ef6e0694
KH
10052009-05-21 Kenichi Handa <handa@m17n.org>
1006
1007 * fontset.c (Qlatin): Don't make it static.
1008
46306a17
SM
1009 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
1010 New functions.
ef6e0694
KH
1011 (xfont_scripts_cache, xfont_scratch_props): New variables.
1012 (Qlatin, Vscalable_fonts_allowed): Extern it.
46306a17
SM
1013 (xfont_list_pattern): Argument changed. Callers changed.
1014 Check Vscalable_fonts_allowed. Check the support of a script.
ef6e0694
KH
1015 (xfont_list): Don't reject a font spec with :script property.
1016 (xfont_has_char): Fix setting of encoding.
1017 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
1018 xfont_scratch_props.
1019
10202009-05-19 Kenichi Handa <handa@m17n.org>
1021
46306a17 1022 * font.c (font_sort_entities): Rename from font_sort_entites.
ef6e0694
KH
1023 Callers changed.
1024
10252009-05-18 Kenichi Handa <handa@m17n.org>
1026
1027 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
1028
ac71ced7
SM
10292009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
1030
1031 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
1032 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
1033
1c6d1051
YM
10342009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1035
1036 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
1037 (x_delete_terminal): Dissociate resource database from display and
1038 then call XrmDestroyDatabase before closing display.
1039
9b9b779c
AR
10402009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
1041
1042 * nsterm.m (ns_read_socket): Remove unused variable.
1564e649
AR
1043 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
1044 whether selected frame is viable before raising it (based on patch
1045 by David Reitter), and improve commentary.
1046 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
9b9b779c 1047
cccd42d5
KH
10482009-05-15 Kenichi Handa <handa@m17n.org>
1049
1050 * font.c (Ffont_spec): Check arguments.
1051
337fbd17
CY
10522009-05-14 Chong Yidong <cyd@stupidchicken.com>
1053
1054 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
1055 weight when testing attributes (Bug#3282).
1056
47a6002f
JD
10572009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1058
1059 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
1060 what we expect to get in the next ConfigureNotify event.
1061
9cb363db
YM
1062 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
1063 before Xft one (Bug#1696).
1064
b9126609
CY
10652009-05-07 David Reitter <david.reitter@gmail.com>
1066
1067 * nsfns.m (Fx_display_planes): Compute bitplanes using
1068 NSBitsPerPixelFromDepth (Bug#3207).
1069
27a69fd9
CY
10702009-05-10 Chong Yidong <cyd@stupidchicken.com>
1071
1072 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
1073
00f37552
TTN
10742009-05-10 Ulrich Mueller <ulm@gentoo.org>
1075
1076 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
1077
2d82a920
DR
10782009-05-07 David Reitter <david.reitter@gmail.com>
1079
ec7709ba
JB
1080 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
1081 Respect mouse face background.
2d82a920 1082
46b0d52d
DR
10832009-05-07 David Reitter <david.reitter@gmail.com>
1084
ec7709ba
JB
1085 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
1086 Mouse movement/highlight: bracket drawing operations
46b0d52d
DR
1087 in ns_update_begin and ns_update_end.
1088
ce1b23bb
SM
10892009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1090
5996e1b7
SM
1091 * nsfns.m (ns_get_screen): Rewrite.
1092 Don't presume selected-frame is of type `ns'.
1093
ba98e3a0
SM
1094 * font.c (font_update_drivers): Sanity fallback to avoid disabling
1095 all drivers.
1096
ce1b23bb
SM
1097 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
1098
bcda200f
YM
10992009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1100
1101 * keyboard.h (add_user_signal): Fix typo in extern.
1102
1103 * lisp.h (add_user_signal): Remove extern.
1104
1105 * unexelf.c (unexec): Consider a section to precede the .bss section
1106 if its addresses overlap that of .bss.
1107 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
1108 instead of dumping process.
1109
864660a2
SM
11102009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
1111
1112 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
1113
50da4e56
SM
11142009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
1115
1116 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
1117
51520a1a
DN
11182009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
1119
1120 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
1121 any statements.
1122
409ea3a1
AS
11232009-05-02 Andreas Schwab <schwab@linux-m68k.org>
1124
59c4c60f
AS
1125 * process.c (read_process_output): Make sure the current buffer is
1126 always restored.
1127
409ea3a1
AS
1128 * coding.c (record_conversion_result): Don't modify
1129 Vlast_code_conversion_error for successful result.
1130 (alloc_destination): Don't clobber conversion result. (Bug#1650)
1131
56f00ed2
KH
11322009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
1133
1134 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
896b1cc9 1135 (load_charset_map): Remove unnecessary code.
56f00ed2 1136
4491c9d2
DR
11372009-04-30 David Reitter <david.reitter@gmail.com>
1138
35f5b128 1139 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
4491c9d2
DR
1140 through f24.
1141
6970f632
CY
11422009-04-30 Chong Yidong <cyd@stupidchicken.com>
1143
1144 * xfaces.c (face_at_buffer_position): New arg base_face_id.
1145
1146 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
1147 face_at_buffer_position.
1148 (face_before_or_after_it_pos, get_next_display_element)
1149 (note_mouse_highlight): Update face_at_buffer_position call.
1150
1151 * term.c (term_mouse_highlight):
1152 * msdos.c (IT_note_mouse_highlight):
1153 * fontset.c (Finternal_char_font):
35f5b128 1154 * font.c (font_at, font_range): Update face_at_buffer_position call.
6970f632
CY
1155
1156 * dispextern.h (face_at_buffer_position): Update prototype.
1157
0c616f63
KH
11582009-04-30 Kenichi Handa <handa@m17n.org>
1159
35f5b128 1160 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
0c616f63 1161
ad3aaf33
AS
11622009-04-29 Andreas Schwab <schwab@linux-m68k.org>
1163
1164 * callproc.c (Fcall_process): Fix GC protection. Make sure
1165 current buffer is always restored.
1166
c3c963a0
YM
11672009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1168
1169 * atimer.c (init_atimer): Also clear stopped_atimers.
1170
1171 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
1172
7e3386cb
YM
1173 * process.c (create_process): Clean up merger residues of
1174 2008-07-17 change.
1175
91f68422
CY
11762009-04-29 Ulrich Mueller <ulm@gentoo.org>
1177
1178 * lread.c (Vread_circle): New variable.
1179 (read1): Disable recursive read if Vread_circle is nil.
1180
24b34550
KH
11812009-04-29 Kenichi Handa <handa@m17n.org>
1182
1183 * fontset.h (set_default_ascii_font): Delete extern.
1184
1185 * fontset.c (set_default_ascii_font): Delete this unused function.
1186
1187 * frame.c (x_set_font): When ARG is a font-object, check if the
1188 font-object matches with the ASCII font-spec of the frame's
9c358bda 1189 fontset. If not, create a new fontset for the frame. (Bug #3075)
24b34550 1190
77bf07e1
AS
11912009-04-28 Andreas Schwab <schwab@linux-m68k.org>
1192
1193 * fns.c (Flocale_info): Protect vector from GC during decoding.
1194
1195 * process.c (Fstart_process): Protect argv strings from GC during
1196 encoding.
1197
2c55aacf
AS
11982009-04-27 Andreas Schwab <schwab@linux-m68k.org>
1199
1200 * sysdep.c: Include <ctype.h>.
1201
b892d3c9
DR
12022009-04-27 David Reitter <david.reitter@gmail.com>
1203
35f5b128 1204 * nsfont.m (nsfont_open): Remove unused variable shrink.
b892d3c9
DR
1205 Remove commented-out code.
1206
9d0644c4
JB
12072009-04-26 Johan Bockgård <bojohan@gnu.org>
1208
1209 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
1210
b7053016
JR
12112009-04-25 Jason Rumney <jasonr@gnu.org>
1212
1213 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
1214
4e8231f3
YM
12152009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1216
1217 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
1218 Swap bytes in short integer if fringe bitmap width > 8.
1219
493dcf2c
KH
12202009-04-23 Kenichi Handa <handa@m17n.org>
1221
1222 * xfaces.c (Fx_list_fonts): If a font size is specified in
1223 PATTERN, set it in returned scalable fonts.
1224
401e9e57
CY
12252009-04-22 Chong Yidong <cyd@stupidchicken.com>
1226
708e05dc
CY
1227 * keyboard.c (Fset_input_meta_mode): Doc fix.
1228
1229 * dispnew.c (Fsend_string_to_terminal): Doc fix.
1230
1ac9108a 1231 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
708e05dc
CY
1232
1233 * coding.c (Fterminal_coding_system): Doc fix.
1234
1235 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
1236 (Fx_display_pixel_height, Fx_display_planes)
1237 (Fx_display_color_cells, Fx_server_max_request_size)
1238 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1239 (Fx_display_mm_height, Fx_display_mm_width)
1240 (Fx_display_backing_store, Fx_display_visual_class)
1ac9108a
SM
1241 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
1242 Doc fixes, replacing "terminal id" with "terminal object".
708e05dc
CY
1243 (check_x_display_info): Handle terminal objects instead of
1244 terminal ids.
1245
401e9e57
CY
1246 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
1247 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
1ac9108a
SM
1248 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
1249 Doc fixes, replacing "terminal id" with "terminal object".
401e9e57 1250
df80c7f0
KH
12512009-04-21 Kenichi Handa <handa@m17n.org>
1252
5a8f12af 1253 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
c0a6070d 1254 (font_score): Check AVGWIDTH too.
908567ef 1255
df80c7f0
KH
1256 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
1257 worst case.
1ac9108a
SM
1258 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
1259 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
df80c7f0 1260
705af33f
JR
12612009-04-19 Jason Rumney <jasonr@gnu.org>
1262
1263 The following changes fix Bug#3005 for wide glyphs on each platform,
b71ac3dd 1264 without reintroducing Bug#1258 for stretch glyphs.
705af33f
JR
1265
1266 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
1267 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
1268 get_phys_cursor_geometry.
1269
b71ac3dd 1270 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
705af33f
JR
1271 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
1272 using get_phys_cursor_geometry.
1273
1274 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
1275 correctly calculated.
1276
dc2933eb
JD
12772009-04-19 Jan Djärv <jan.h.d@swipnet.se>
1278
1ac9108a
SM
1279 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
1280 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
dc2933eb
JD
1281 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
1282 is deprecated.
1283
973e7849
AS
12842009-04-18 Andreas Schwab <schwab@linux-m68k.org>
1285
1286 * font.c (font_put_frame_data): Use xfree instead of free.
1287
314d66f4
JB
12882009-04-17 Juanma Barranquero <lekktu@gmail.com>
1289
1290 * w32font.c (Qja, Qko): Remove declarations.
1291 (syms_of_w32font): Don't DEFSYM them.
1292
cf702558
CY
12932009-04-17 Chong Yidong <cyd@stupidchicken.com>
1294
1295 * font.c (Qja, Qko): Move definitions here from ftfont.c.
1296
1297 * font.h (Qja, Qko): Extern them.
1298
1299 * ftfont.c (Qja, Qko): Remove declarations.
1300
1301 * xfont.c (Qja, Qko): Remove declarations.
1302
b50504f5
KH
13032009-04-17 Kenichi Handa <handa@m17n.org>
1304
bde25748
KH
1305 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
1306 string from a vector to handle Latin-1 characters correctly.
1307
b50504f5
KH
1308 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
1309 entity even if the cache hits.
1310
f4646fff
AS
13112009-04-16 Andreas Schwab <schwab@linux-m68k.org>
1312
1313 * search.c (boyer_moore): Use zero as marker value for a possible
6340c70e 1314 match instead of depending on overflow behavior. (Bug#2844)
f4646fff 1315
e7deaab0
AS
1316 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
1317 * lisp.h: Adjust prototypes.
1318
0a0e7d49
CY
13192009-04-16 Chong Yidong <cyd@stupidchicken.com>
1320
1321 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
1322 change (Bug#3003).
1323
3c908a57
KH
13242009-04-16 Kenichi Handa <handa@m17n.org>
1325
1ac9108a 1326 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
bd0af90d
KH
1327
1328 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
1329 adstyle.
1330
1331 * ftfont.c (Qja, Qko): Don't make them static.
1332 (enum ftfont_cache_for): New enum.
1333 (fc_charset_table): Undo the previous change.
1334 (ftfont_get_latin1_charset): Delete it.
1ac9108a
SM
1335 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
1336 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
bd0af90d
KH
1337 non-scarable font, try to get AVERAGE_WIDTH.
1338 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
1339 Change ft_face_cache from a list of a hash-table. Don't check
1340 `ja' and `ko' adstyle here.
1341 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
1342 FTFONT_CACHE_FOR_CHARET.
1343 (ftfont_get_charset): Undo the previous change.
1ac9108a 1344 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
bd0af90d
KH
1345 (ftfont_close): Likewise.
1346 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
1347
1348 * font.c (font_sort_entites): Change the meaning of the arg
1349 BEST-ONLY. Don't optimize for VEC of lenght 1.
1350 (font_select_entity): Just return the value of font_sort_entites.
1351
1352 * xfaces.c (merge_face_vectors): Reflect font properties in
1353 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
1354 font_clear_prop if a face attribute doesn't change.
1355
3c908a57
KH
1356 * charset.h (charset_ksc5601): Extern it.
1357
1358 * charset.c (charset_ksc5601): New variable.
1359 (Fdefine_charset_internal): Set charset_ksc5601.
1360 (init_charset_once): Initialize charset_ksc5601 to -1.
1361
d65859c3
DN
13622009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1363
1364 * fileio.c (history_delete_duplicates): Remove unused declaration.
1365
1366 * callint.c (history_delete_duplicates): New declaration.
1367 (Fcall_interactively): Remove command history duplicates when
1368 history_delete_duplicates is true.
1369
3ba010e5
EZ
13702009-04-14 Eli Zaretskii <eliz@gnu.org>
1371
1372 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
1373
06f19b91
KH
13742009-04-14 Kenichi Handa <handa@m17n.org>
1375
1376 * font.c (Ffont_info): Fix docstring. Fix the second element of
1377 the returned value (bug#2949).
1378
2cce8bfc
CY
13792009-04-14 Chong Yidong <cyd@stupidchicken.com>
1380
1381 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
1382
d156542d
KH
13832009-04-14 Kenichi Handa <handa@m17n.org>
1384
1385 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
1386 encoding charset is ascii_compatible.
1387
1388 * charset.c (Fdefine_charset_internal): Make charset
1389 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
1390 code_offset is 0, and covers all ASCII characters.
1391
86fa089e
SM
13922009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1393
1394 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
1395 (ns_string_to_pasteboard_internal):
1396 * nsmenu.m (process_dialog):
1397 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
1398 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
1399 * lisp.h (Fx_load_color_file): Declare.
1400
a8a3728b
KH
14012009-04-13 Kenichi Handa <handa@m17n.org>
1402
1ac9108a 1403 * font.c (font_delete_unmatched): Preserve the order of list elements.
a8a3728b
KH
1404 (font_select_entity): Suppress the code to optimize for the same
1405 kind of fonts.
1406 (font_load_for_lface): Get a font that supports at least ASCII
1407 characters.
1408
1409 * ftfont.c (Qja, Qko): New variables.
1410 (fc_charset_table): Delete uniquifier data for iso8859-1.
1411 (ftfont_get_latin1_charset): New function.
1412 (get_adstyle_property): New function.
1413 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
1414 bitmap fonts.
1415 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
1416 Delete iso-8859-1 range from the charset of fonts whose adstyle is
1417 `ko' or `ja'.
1418 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
1ac9108a 1419 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
a8a3728b
KH
1420 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
1421 property.
1422 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
1423 (syms_of_ftfont): DEFSYM Qja and Qko.
1424
483670b5
KH
14252009-04-09 Kenichi Handa <handa@m17n.org>
1426
12b55765
KH
1427 * charset.c (map_charset_chars): For a charset of `superset'
1428 method, fix calculation of code range.
1429
483670b5
KH
1430 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
1431 from the list of extra properties.
1432 (font_clear_prop): Be sure to delete `:name' font property.
1433
57d3b93b
KH
14342009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1435
b4b2c2ca
YM
1436 * dispnew.c (redraw_overlapping_rows): Fix detection of
1437 overlapping for topmost and bottommost rows.
1438
1ac9108a 1439 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
57d3b93b 1440
472c3609
JR
14412009-04-06 Jason Rumney <jasonr@gnu.org>
1442
1443 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
1444
ab193662
KH
14452009-04-06 Kenichi Handa <handa@m17n.org>
1446
1447 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
1448
1449 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
1450
0c26f026
KH
14512009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1452
1453 * ftfont.c (ftfont_open): Fix checking of the return value of
1454 FT_Load_Char. Fix setting font->underline_thickness.
1455
e173bbce
CY
14562009-04-04 Chong Yidong <cyd@stupidchicken.com>
1457
1458 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
1459 (Fterminal_parameters, Fterminal_parameter)
1460 (Fset_terminal_parameter): In doc string, refer to terminal
1461 objects rather than terminal ids.
1462
693a2698
EZ
14632009-04-04 Eli Zaretskii <eliz@gnu.org>
1464
1465 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
1466 ret_lim_data. (Bug#2867)
1467
d5221487
CY
14682009-04-03 Chong Yidong <cyd@stupidchicken.com>
1469
1470 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
1471 so they don't get wider than the window, matching 2006-01-23
1472 change to the partner function in xdisp.c (Bug#2800).
1473
223509a3
KH
14742009-04-03 Kenichi Handa <handa@m17n.org>
1475
1476 * print.c (print_object): Make each lowest sub_char_table start a
1477 new line (Bug#2866).
1478
74fcd0b1
KH
14792009-04-02 Kenichi Handa <handa@m17n.org>
1480
1481 * fontset.c (fontset_font): Record no-font when a fontset
1482 explicitly tells not to try another font-specs.
1483
c542407d
SM
14842009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
1485
1486 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
1487
e3869731
KH
14882009-03-30 Kenichi Handa <handa@m17n.org>
1489
d8d2f142
KH
1490 * fontset.c (fontset_from_font): Specify only registry in a
1491 font-spec for all characters supported by that registry.
1492
e3869731
KH
1493 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
1494 even if HAVE_M17N_FLT is not defined.
1495
5da5f805
CY
14962009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
1497
1498 * ftfont.c: Conditionalize prototyping and use of
1499 ftfont_variation_glyphs.
1500
ab226c50
SM
15012009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1502
9628fed7
SM
1503 * frame.c (delete_frame): Work around compiler bug.
1504
1505 * editfns.c (general_insert_function): Adjust to insdel.c changes.
1506 * insdel.c (prepare_to_modify_buffer, signal_before_change):
1507 Some more EMACS_INT.
1508 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
1509
1510 * xdisp.c (dump_glyph): Fix typo.
1511
ae19ba7c
SM
1512 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
1513 (adjust_markers_gap_motion, adjust_markers_for_delete)
1514 (adjust_markers_for_insert, adjust_point)
1515 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
1516 (make_gap, copy_text, count_size_as_multibyte, insert)
1517 (insert_and_inherit, insert_before_markers)
1518 (insert_before_markers_and_inherit, insert_1)
1519 (count_combining_before, count_combining_after, insert_1_both)
1520 (insert_from_string, insert_from_string_before_markers)
1521 (insert_from_string_1, insert_from_gap, insert_from_buffer)
1522 (insert_from_buffer_1, adjust_after_replace)
1523 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
1524 (replace_range_2, del_range, del_range_1, del_range_byte)
1525 (del_range_both, del_range_2, modify_region)
1526 (prepare_to_modify_buffer, signal_before_change)
1527 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
1528 for buffer positions and sizes.
1529 * lisp.h: Adjust prototypes accordingly.
1530
1531 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
1532 (non_regular_inserted, non_regular_nbytes, read_non_regular)
1533 (Finsert_file_contents): Use EMACS_INT for buffer positions.
1534
ab226c50
SM
1535 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
1536
46dfb8fb
JD
15372009-03-27 Jan Djärv <jan.h.d@swipnet.se>
1538
1539 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
1540 lines and columns so we keep the same pixel height and width.
1541
1542 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
1543 the property _NET_WM_STATE has changed.
46dfb8fb
JD
1544 (x_handle_net_wm_state): New function to update frame parameter
1545 fullscreen.
1546 (x_term_init): Initialize atoms for _NET_WM_STATE.
1547
1548 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
1549
d347e494
SM
15502009-03-27 Kevin Ryde <user42@zip.com.au>
1551
1552 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
1553 Gpm_GetEvent as an error that justifies closing the filedescriptor.
1554 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
1555 (Fgpm_mouse_stop): Pass that new parameter.
1556 * termhooks.h (close_gpm): Adjust prototype.
1557
84db11d6
SM
15582009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
1559
c95a5008
SM
1560 * lisp.h (Fx_focus_frame): Declare.
1561
84db11d6
SM
1562 * callint.c (Fcall_interactively): For '^' just delegate the work to
1563 handle-shift-selection.
1564 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
1565
0a1958d6
CY
15662009-03-24 Chong Yidong <cyd@stupidchicken.com>
1567
0bfdff23
CY
1568 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
1569
0a1958d6
CY
1570 * data.c (Qinteractive_form): New variable.
1571 (Finteractive_form): Use it.
1572
1573 * eval.c (Fcommandp): Use Qinteractive_form.
1574
58aec0d6
JR
15752009-03-24 Jason Rumney <jasonr@gnu.org>
1576
1577 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
1578 Calculate total size precisely. Decode environment variables
1579 before substituting. (Bug#38)
1580
553dd618
KH
15812009-03-24 Kenichi Handa <handa@m17n.org>
1582
1583 * font.c (find_font_encoding): Return Qnil for unsupported
639239cf 1584 encoding (Bug#2722).
553dd618 1585
c39ea606
JD
15862009-03-23 Jan Djärv <jan.h.d@swipnet.se>
1587
1588 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
1589 that gdpy is set.
1590
bc9b2b5e
AM
15912009-03-22 Alan Mackenzie <acm@muc.de>
1592
1593 * callint.c (Finteractive): Clarify the doc string - even
1594 promptless elements need \n separators.
1595
9f995a76
JR
15962009-03-22 Jason Rumney <jasonr@gnu.org>
1597
1598 * w32term.c (syms_of_w32term): Doc fix for
1599 x-use-underline-position-properties.
1600
22749e9a
EZ
16012009-03-21 Eli Zaretskii <eliz@gnu.org>
1602
1603 * w32.c (getpwuid): Change argument type to unsigned.
1604 (struct w32_id): Change type of `rid' member to unsigned.
1605 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
1606 argument ID to unsigned. All callers changed.
1607 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
1608
e00553bf
EZ
16092009-03-20 Eli Zaretskii <eliz@gnu.org>
1610
1611 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
1612 negative, produce a float value.
1613
1614 * dired.c (make_uid, make_gid): New functions.
1615 (Ffile_attributes): Use them to avoid negative UID and GID.
1616
f761d6b6
JB
16172009-03-20 Juanma Barranquero <lekktu@gmail.com>
1618
1619 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
1620 (syms_of_keyboard) <command-hook-internal, input-method-function>:
1621 Fix typos in docstrings.
1622
d507f8d7
KH
16232009-03-19 Kenichi Handa <handa@m17n.org>
1624
1625 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
f761d6b6
JB
1626 changed, use font_load_for_lface to get a new font object.
1627 Call free_realized_fontset after handling ASCII font change.
d507f8d7
KH
1628
1629 * frame.c (x_set_font): Handle the case that ARG is a cons.
1630
c68845e0
GM
16312009-03-19 Glenn Morris <rgm@gnu.org>
1632
1633 * fileio.c (Fsubstitute_in_file_name): Doc fix.
1634
bfa49dd1
CY
16352009-03-19 Chong Yidong <cyd@stupidchicken.com>
1636
1637 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
1638
8458d4c1
KH
16392009-03-19 Kenichi Handa <handa@m17n.org>
1640
1641 * charset.c (load_charset_map_from_file): When a mapfile can't be
1642 loaded, signal an error.
1643
78e7d1fe
EZ
16442009-03-18 Eli Zaretskii <eliz@gnu.org>
1645
1646 * dired.c (Ffile_attributes): Make sure UID and GID are always
1647 positive, even if the value is too large for a positive EMACS_INT.
1648 Doc fix.
1649
1650 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
1651
5da9fdfa
YM
16522009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1653
1654 * xmenu.c (xdialog_show): Move Fredisplay call ...
1655 (Fx_popup_dialog): ... here.
1656
7519c40d
SM
16572009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
1658
1659 * dired.c (file_name_completion): Disable the first optimization just
1660 installed, since it is not implemented correctly.
1661
2cd298e2
SM
16622009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1663
1664 * dired.c (file_name_completion): Check completion-ignored-extensions
c95a5008 1665 only if the entry can affect bestmatch.
2cd298e2
SM
1666 Stop the search early, as Ftry_completion already does.
1667
48d37adf
CY
16682009-03-17 Chong Yidong <cyd@stupidchicken.com>
1669
e10c9c93 1670 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
48d37adf 1671
9286b16a
CY
16722009-03-15 Chong Yidong <cyd@stupidchicken.com>
1673
1674 * keyboard.c (parse_menu_item): Don't display remappings as menu
1675 equivalent bindings (Bug#788).
1676
f7b146dc
JR
16772009-03-15 Jason Rumney <jasonr@gnu.org>
1678
1679 * w32term.h (WM_EMACS_PAINT): New message.
1680 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
1681 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
1682 before passing to lisp thread. (Bug#950)
1683
f761d6b6 16842009-03-14 David Reitter <david.reitter@gmail.com>
c6c62e78 1685
d93f9575
CY
1686 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
1687 variable as it was never reset.
1688 (ns_term_init): Remove initialization of Lisp-settable defaults
1689 and ns_expand_space.
1690 (-setPanelFromDefaultValues): Remove ns_expand_space.
1691 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
1692 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
c6c62e78
DR
1693 i.e. no additional spacing, similar to Carbon port.
1694
d93f9575
CY
1695 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
1696 * nsfns.m (ns-popup-prefs-panel): Remove.
c6c62e78 1697
305018ec
JD
16982009-03-14 Jan Djärv <jan.h.d@swipnet.se>
1699
1700 * sound.c (alsa_configure): Remove call to deprecated
1701 snd_pcm_sw_params_set_xfer_align.
1702
f761d6b6 17032009-03-14 Stephen Berman <stephen.berman@gmx.net>
4a02423f
JD
1704
1705 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
1706 after clicking in a detached tool bar.
1707 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
1708
46e722a9
SM
17092009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
1710
348db3dd
SM
1711 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
1712 int/Lisp_Object mixup).
46e722a9 1713
a3d16f39
KH
17142009-03-13 Kenichi Handa <handa@m17n.org>
1715
1716 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
fe24f56a 1717 Handle NAME nil and t correctly. Callers changed.
a3d16f39
KH
1718 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
1719 (set_fontset_font): Change ARG to a vector. Handle range_list in
1720 ARG correctly.
1721 (Fset_fontset_font): Fix the case that TARGET is both a script
fe24f56a 1722 name and charset name. Adjust the arg to set_fontset_font for
a3d16f39
KH
1723 the above change.
1724 (fontset_from_font): Fix previous change.
fe24f56a 1725 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
a3d16f39
KH
1726 entry. If FONTSET is the default fontset, don't set the extra
1727 slot of the returning char-table.
1728
b066e6b6
JB
17292009-03-12 Juanma Barranquero <lekktu@gmail.com>
1730
1731 * nsfns.m (Fx_close_connection): Doc fix.
1732 (Fns_do_applescript): Reflow docstring.
1733 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
1734 (Fx_display_pixel_width, Fx_display_pixel_height)
1735 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
1736 Fix typos in docstrings.
1737 (Fns_set_alpha): Fix typos in error messages.
1738
d472514e 17392009-03-12 David Reitter <david.reitter@gmail.com>
d6220c13 1740
d472514e 1741 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
d6220c13
DR
1742 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
1743 were used for such events.
1744
d472514e
JB
1745 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
1746 (toggleToolbar, performDragOperation, runHelp): Use it.
d6220c13 1747
d472514e 1748 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
d6220c13
DR
1749 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
1750
fb930676
KH
17512009-03-11 Kenichi Handa <handa@m17n.org>
1752
ff85581a
KH
1753 * font.h (font_open_by_spec): Extern it.
1754
c50b7e98
KH
1755 * font.c (font_open_by_spec): New function.
1756 (font_open_by_name): Use font_open_by_spec.
1757
fb930676
KH
1758 * frame.c (x_set_font): When ARG is a font-object, don't alter the
1759 fontset of the frame.
1760
1761 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
1762 modify the default font of frames that use this fontset.
1763 (num_auto_fontsets): New variable.
1764 (fontset_from_font): Use num_auto_fontsets to decide a fontset
1765 name. Be sure to set FONTSET_ASCII to the correct font name.
1766 (update_auto_fontset_alist): New function.
1767
df4e8455
JB
17682009-03-11 Juanma Barranquero <lekktu@gmail.com>
1769
1770 * makefile.w32-in: Update dependencies.
1771
0a375797
AR
17722009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1773
1774 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
1775
61313fa3
SM
17762009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1777
1778 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
1779
b55103fb
CY
17802009-03-10 Chong Yidong <cyd@stupidchicken.com>
1781
1782 * lread.c (Feval_buffer): Doc fix.
1783
dde2559c
KH
17842009-03-09 Kenichi Handa <handa@m17n.org>
1785
1786 * charset.c (Qfile_name_handler_alist): Extern it.
1787 (load_charset_map_from_file): Temporarily bind
1788 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
1789
df4e8455 17902009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
340e08a4 1791
47f588bb
GM
1792 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
1793 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
340e08a4 1794
4ddf94bd
AR
17952009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
1796
4c9bdfc2
AR
1797 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
1798 (x_set_window_size): Change back to calculated method of setting
1799 toolbar height under Cocoa. (Bug#2546)
4ddf94bd
AR
1800 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
1801 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
1802
fe41ae9e
AR
1803 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
1804
4c9bdfc2
AR
1805 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
1806 accelerator in parens under GNUstep.
1807
825d0875
KH
18082009-03-06 Kenichi Handa <handa@m17n.org>
1809
1810 These changes are to detect incorrect composition sequence without
f3b3be74 1811 looking ahead the source. (Bug#2370)
825d0875
KH
1812
1813 * coding.h: Include "composite.h".
1814 (enum compisition_state): New enum.
1815 (struct compisition_status): New struct.
1816 (struct iso_2022_spec): New member cmp_status.
1817 (struct emacs_mule_spec): New struct.
1818 (struct coding_system): New members ctext_extended_segment_len and
1819 embedded_utf_8. Change the union member
1820 spec.emacs_mule_full_support to spec.emacs_mule.
1821
1822 * coding.c (CODING_ISO_CMP_STATUS): New macro.
1823 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
98a326f7 1824 (MAX_ANNOTATION_LENGTH): Define to 5.
825d0875
KH
1825 (ADD_COMPOSITION_DATA): New arg nbytes.
1826 (emacs_mule_char): New arg cmp_status.
1827 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
1828 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
1829 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
1830 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
1831 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
1832 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
1833 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
1834 (EMACS_MULE_COMPOSITION_END): New macro.
1835 (emacs_mule_finish_composition): New function.
1836 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
1837 (decode_coding_emacs_mule): Avoid long looking ahead while
1838 handling composition.
1839 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
1840 (ENCODE_COMPOSITION_RULE): New macro.
1841 (finish_composition): New function.
1842 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
1843 (DECODE_COMPOSITION_START): New implementation.
1844 (DECODE_COMPOSITION_END): Likewise.
1845 (STORE_COMPOSITION_RULE): New macro.
1846 (decode_coding_iso_2022): Avoid long looking ahead while handling
1847 composition, CTEXT extended segment, and embedded UTF-8.
1848 (setup_coding_system): For a coding of type iso-2022, reset
1849 CODING_ISO_EXTSEGMENT_LEN (coding) and
1850 CODING_ISO_EMBEDDED_UTF_8 (coding).
1851 (get_translation): Delete arguments last_block, from_nchars,
1852 to_nchars. Callers changed.
1853 (produce_chars): Don't modify charbuf. Adjusted for the change of
1854 get_translation.
98a326f7 1855 (produce_composition): Adjust for the new annotation sequence.
825d0875 1856 (handle_composition_annotation): Likewise.
98a326f7 1857 (consume_chars): Adjust for the change of get_translation.
825d0875 1858
ccbc4452
AR
18592009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
1860
4ddf94bd 1861 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
ccbc4452 1862
988a7ddb
KH
18632009-03-05 Kenichi Handa <handa@m17n.org>
1864
1865 * font.c (font_select_entity): New function.
1866 (font_find_for_lface): Use font_select_entity to select a font.
1867
1868 * fontset.c (fontset_find_font): If a font found without
a8a3728b 1869 restricting to the characters C doesn't support C, try to find a
988a7ddb
KH
1870 font with C restriction.
1871
98a326f7 18722009-03-04 Nikolaj Schumacher <me@nschum.de>
2f462d73 1873
be1bce46 1874 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
2f462d73 1875
10ea2b82
JR
18762009-03-04 Jason Rumney <jasonr@gnu.org>
1877
2c93b248 1878 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
4891ba1d 1879 characters that have already been read. (Bug#2569)
2c93b248 1880
10ea2b82
JR
1881 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
1882 Log an error message if check_image_size failed.
1883 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
4891ba1d 1884 (gs_load): Mention max-image-size in size error message. (Bug#2560)
10ea2b82 1885
71a0c011
EZ
18862009-03-02 Eli Zaretskii <eliz@gnu.org>
1887
1888 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
1889 when decoding process output.
1890
2f63bba8
RS
18912009-03-01 Richard M Stallman <rms@gnu.org>
1892
1893 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
1894
1895 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
1896
0a9564cb
EZ
18972009-02-28 Eli Zaretskii <eliz@gnu.org>
1898
1899 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
1900 (decode_coding_emacs_mule, decode_coding_iso_2022)
1901 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
1902 (decode_coding_raw_text, decode_coding_charset)
1903 (setup_coding_system, decode_eol, decode_coding, consume_chars):
1904 Honor inhibit-eol-conversion. (Bug #2186)
1905
449148b3
JR
19062009-02-28 Jason Rumney <jasonr@gnu.org>
1907
1908 * coding.c (detect_coding_charset): If not checking latin extra,
1909 fail on characters between 0x80 and 0xA0. (Bug#2354)
1910
a4aee864
EZ
19112009-02-28 Eli Zaretskii <eliz@gnu.org>
1912
1913 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
2a1573ff 1914 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
a4aee864 1915
d88bee5a
GM
19162009-02-27 Glenn Morris <rgm@gnu.org>
1917
1918 * callint.c (Finteractive): Doc fix.
1919
a808f22d
KH
19202009-02-27 Kenichi Handa <handa@m17n.org>
1921
1922 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
1923
caf8d60c
CY
19242009-02-27 Chong Yidong <cyd@stupidchicken.com>
1925
1926 * font.c (font_style_to_value): Set value for unknown symbols to
1927 100 instead of 255.
b61137ea
CY
1928 (weight_table, slant_table, width_table): Treat "unspecified" as
1929 the default value.
caf8d60c 1930
1a0de25c
JB
19312009-02-26 Juanma Barranquero <lekktu@gmail.com>
1932
1933 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
1934
8fc45744
JB
19352009-02-25 Juanma Barranquero <lekktu@gmail.com>
1936
107bd7d1
JB
1937 * lread.c (Fload): Stop checking Vloads_in_progress and signal
1938 error as soon as a recursive load is detected.
8fc45744 1939
f097e223
AR
19402009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
1941
1942 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
1943 before caching.
1944
8810a12f
KH
19452009-02-24 Kenichi Handa <handa@m17n.org>
1946
1947 * fontset.c (fontset_find_font): Fix the condition for checking
1948 unavailable font.
1949
2c7d1565
GM
19502009-02-24 Glenn Morris <rgm@gnu.org>
1951
1952 * xfaces.c (Finternal_set_font_selection_order): Remove leading
1953 whitespace that confuses documentation.
1954
a20878b6
MB
19552009-02-23 Miles Bader <miles@gnu.org>
1956
1957 * process.c (Flist_system_processes, Fprocess_attributes)
1958 (syms_of_process): Rename `system-process-attributes' to
1959 `process-attributes'.
1960
b3b58c01
AS
19612009-02-22 Andreas Schwab <schwab@linux-m68k.org>
1962
1b3b981b
AS
1963 * coding.h (struct coding_system): Make safe_charsets a pointer to
1964 unsigned char.
1965 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
1966 being 255.
1967 (SAFE_CHARSET_P): Likewise.
1968 (setup_iso_safe_charsets): Properly setup safe_charsets.
1969 (Fdefine_coding_system_internal): Likewise.
1970 (setup_coding_system): Likewise. Remove unneeded casts.
1971 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
1972 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
1973 unneeded casts.
1974
b3b58c01
AS
1975 * insdel.c (del_range_2): Don't modify gap contents when called
1976 from decode_coding_object. (Bug#1809)
1977
0b6f228c
CY
19782009-02-21 Chong Yidong <cyd@stupidchicken.com>
1979
1980 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
1981 Qfont_object.
1982 (Ftype_of): Recognize font objects.
1983
1984 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
1985
1986 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
1987 moved to data.c.
1988
52f8870b
AR
19892009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
1990
1991 * nsterm.m (x_make_frame_invisible): Unset async_visible,
1992 async_iconified. Based on a patch by Christian Lynbech
1993 <christian.lynbech@tieto.com>.
1994 (EmacsView-windowDidMiniaturize:): Unset async_visible.
1995
7087d5e9
GM
19962009-02-20 Glenn Morris <rgm@gnu.org>
1997
1998 * syntax.c (Fskip_chars_forward): Fix doc typo.
1999
41d2ceef
CY
20002009-02-20 Chong Yidong <cyd@stupidchicken.com>
2001
2002 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
2003
1a3b7ca6
CY
20042009-02-19 Chong Yidong <cyd@stupidchicken.com>
2005
2006 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
2007
73cce38d
KH
20082009-02-19 Kenichi Handa <handa@m17n.org>
2009
2010 * coding.c (detect_coding): Preserve coding->mode.
2bc550cb 2011 Don't overflow coding->carryover. (Bug#2370)
73cce38d 2012
a51092ee
DN
20132009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
2014
2015 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
2016
c423ecca
KH
20172009-02-18 Kenichi Handa <handa@m17n.org>
2018
2019 * font.c (font_check_otf_features): Fix handling of `nil' element.
2020 (Ffont_spec): Describe :lang and :otf in the docstring.
2021
4c1958f4
AS
20222009-02-16 Andreas Schwab <schwab@suse.de>
2023
2024 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
2025 string.
2026
5704f39a
KH
20272009-02-16 Kenichi Handa <handa@m17n.org>
2028
2029 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
a057d86a 2030 (Bug#1723)
5704f39a 2031
8f0085aa
CY
20322009-02-14 Chong Yidong <cyd@stupidchicken.com>
2033
a057d86a 2034 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
8f0085aa
CY
2035
2036 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
2037 (handle_line_prefix): Suppress wrapping of wrap prefixes.
2038
aff01dd9
EZ
20392009-02-14 Eli Zaretskii <eliz@gnu.org>
2040
2041 * msdos.c (MAX_SCREEN_BUF): New macro.
2042 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
2043 Encode the entire run of glyphs sharing the same face, instead of
2044 doing that one glyph at a time (fixes a bug with displaying
2045 double-size characters).
2046
ba301db3
AR
20472009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
2048
2049 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
2050
2051 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
2052 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
a057d86a 2053 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
ba301db3
AR
2054
2055 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
a057d86a 2056 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
ba301db3 2057
51d861de
SM
20582009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
2059
2060 * keyboard.c (adjust_point_for_property): Allow stopping betwen two
2061 invisible areas.
2062
7fed8996
JR
20632009-02-12 Jason Rumney <jasonr@gnu.org>
2064
631ea4fb
JR
2065 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
2066 (add_font_entity_to_list): Call check_face_name even when family
2067 is unspecified.
2068
cb4a3e42
JR
2069 * w32term.c (x_display_pixel_height, x_display_pixel_width):
2070 Release DC when finished. Use NULL window to refer to desktop.
631ea4fb 2071 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
cb4a3e42 2072
7fed8996 2073 * w32font.c (add_font_entity_to_list): Fix check for substituted
631ea4fb 2074 raster fonts. (Bug#2219)
7fed8996 2075
895416e3
KH
20762009-02-12 Kenichi Handa <handa@m17n.org>
2077
2078 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
2079 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
2080 (autocmp_chars): Use fast_looking_at. Don't compose more
1dacf998 2081 characters than MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2082 (find_automatic_composition): While looking forward and backward,
2083 check static composition. Fix where to stop looking forward.
2084 (composition_adjust_point): Fix checking of static composition.
2085 (Fcomposition_get_gstring): Pay attention to
1dacf998 2086 MAX_COMPOSITION_COMPONENTS.
895416e3
KH
2087
2088 * lisp.h (fast_looking_at): Extern it.
2089
2090 * search.c (fast_looking_at): New function.
2091
51d861de 2092 * term.c (encode_terminal_code): Adjust for the change of
895416e3
KH
2093 <struct glyph>.u.cmp.to.
2094 (append_composite_glyph): Likewise.
2095
51d861de 2096 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
895416e3
KH
2097 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
2098 composition.
51d861de 2099 (append_composite_glyph): Adjust for the change of
895416e3
KH
2100 <strcut glyph>.u.cmp.to.
2101
8510724d
JB
21022009-02-11 Juanma Barranquero <lekktu@gmail.com>
2103
2104 * casetab.c (init_casetab_once):
2105 * coding.c (ALLOC_CONVERSION_WORK_AREA):
2106 * font.c (font_update_lface):
2107 * fontset.c (Fnew_fontset):
2108 * ftfont.c (ftfont_drive_otf):
2109 * xfont.c (xfont_open):
2110 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
2111
294fa707
SM
21122009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
2113
2114 * fileio.c (Fwrite_region): !NILP -> CONSP.
2115
b5bfebec
AS
21162009-02-10 Andreas Schwab <schwab@suse.de>
2117
2118 * process.c (send_process): Properly relocate pointer into data
adab88bd 2119 when using encoded data. (Bug#2272)
b5bfebec 2120
cb84a2be
KH
21212009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
2122
2123 * coding.c (detect_coding_charset): Fix previous change.
2124
89e09428
JR
21252009-02-08 Jason Rumney <jasonr@gnu.org>
2126
2127 * w32fns.c (w32_hide_hourglass): Handle case where frame
adab88bd 2128 disappeared while hourglass was displayed. (Bug #2193)
89e09428 2129
4470a277
AS
21302009-02-07 Andreas Schwab <schwab@suse.de>
2131
2132 * unexelf.c (unexec): Fix error message.
2133
3175b12a
AR
21342009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
2135
2136 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
adab88bd 2137 when modal window is active. (Bug #2152)
3175b12a
AR
2138 (applicationShouldTerminate:): Remove now-unneeded while loop
2139 around NSRunAlertPanel.
2140
2141 * nsmenu.m (popupSession): New file-global variable.
2142 (pop_down_menu): End the popupSession before closing dialog.
2143 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
2144 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
2145 don't query NSApp for events (just sleep instead).
2146
8434d0b8
EZ
21472009-02-07 Eli Zaretskii <eliz@gnu.org>
2148
51d861de
SM
2149 * coding.c (syms_of_coding) <translation-table-for-input>:
2150 Modify doc string to discourage use for character code unification.
8434d0b8 2151
aa82edfd
CY
21522009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2153
2154 * atimer.c (run_timers): Update pending_atimers.
2155
2d283c7c
CY
21562009-02-06 Chong Yidong <cyd@stupidchicken.com>
2157
eb306cab
CY
2158 * image.c (svg_load_image): Fix last change.
2159
2d283c7c
CY
2160 * xfns.c (Fx_create_frame): Signal an error if no font is
2161 found (Bug#2147).
2162
4d8e170e
JB
21632009-02-05 Juanma Barranquero <lekktu@gmail.com>
2164
2165 * character.c (syms_of_character) <script-representative-chars>:
2166 Fix typo in docstring.
2167
c96169a0
AR
21682009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
2169
2170 * nsmenu.m (pop_down_menu): New function.
2171 (ns_popup_dialog): Call it on unwind.
2172 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
2173 call timer_check() (Bug#2154).
2174 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
2175 handling_signal is set.
2176 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
2177
2178 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G
2179
2180 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
2181
2182 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
2183
51d861de
SM
2184 * keyboard.c (poll_for_input_1, handle_async_input):
2185 Set handling_signal under HAVE_NS.
c96169a0 2186
aacd8ba1
GM
21872009-02-04 Glenn Morris <rgm@gnu.org>
2188
2189 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
2190
4cb75c4b
KH
21912009-02-04 Kenichi Handa <handa@m17n.org>
2192
2193 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
2194
2195 * charset.c (Fchar_charset): New optional arg restriction.
2196
2197 * coding.h (coding_system_charset_list): Extern it.
2198
2199 * coding.c (coding_system_charset_list): New function.
2200
2201 * composite.c: Include coding.h and termhooks.h.
2202 (composition_gstring_p): Fix for the terminal case.
2203 (composition_gstring_width): Likewise.
2204 (fill_gstring_body): Likewise.
2205 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
2206 the frame.
2207 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
2208 is within a composition.
867d4bb3 2209 (Fcomposition_get_gstring): Fix the terminal case.
4cb75c4b
KH
2210
2211 * term.c (encode_terminal_code): Fix handling of composition.
2212 (produce_composite_glyph): For static composition, get pixel_width
2213 from struct composition.
2214
826ba17e
AS
22152009-02-02 Andreas Schwab <schwab@suse.de>
2216
2217 * unexelf.c (unexec): Handle unaligned bss offset.
2218
8ad093db
AR
22192009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
2220
2221 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
2222 XT,w32read_socket changes to ns_read_socket.
d0a76a6e 2223
8ad093db
AR
2224 * keyboard.c (handle_interrupt): Don't call
2225 quit_throw_to_read_char() under NS.
d0a76a6e 2226
8ad093db
AR
2227 * blockinput.h: Remove NS-specific code.
2228
4d18a7a2
DN
22292009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
2230
db878925
DN
2231 * dispnew.c (window_change_signal): Don't try to get the size of a
2232 suspended tty frame.
2233 * term.c (Fresume_tty): Resize if the size has changed while the
2234 tty was suspended.
2235
4d18a7a2
DN
2236 * alloc.c (mark_stack): Properly conditionalize previous change.
2237
8984df7c
JB
22382009-01-30 Juanma Barranquero <lekktu@gmail.com>
2239
2240 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
2241 * w32term.c (w32_read_socket) [SYNC_INPUT]:
2242 Remove; this code is not used on Windows.
2243
75f4f1ac
EZ
22442009-01-30 Eli Zaretskii <eliz@gnu.org>
2245
2246 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
2247 EOLs that also has stray ^M characters.
2248
07a1e794
JB
22492009-01-30 Juanma Barranquero <lekktu@gmail.com>
2250
2251 * atimer.c (run_timers, alarm_signal_handler):
2252 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
2253 * w32inevt.c (w32_console_read_socket):
2254 * w32term.c (w32_read_socket):
2255 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
2256
a8b11cc9
CY
22572009-01-30 Chong Yidong <cyd@stupidchicken.com>
2258
2259 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
2260 Initialize it as a relative filename pattern.
2261 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
2262 (Fcall_process_region): Simplify temp file creation using
2263 temporary-file-directory.
2264
c279587b
EZ
22652009-01-29 Eli Zaretskii <eliz@gnu.org>
2266
2267 * msdos.c: Rename pending_signals to msdos_pending_signals.
2268 (sig_suspender, sigprocmask): Adjust.
2269
a8fe3242
CY
22702009-01-29 Chong Yidong <cyd@stupidchicken.com>
2271
2272 * keyboard.c (pending_signals): New var.
2273 (poll_for_input, input_available_signal, init_keyboard): Set it.
2274 (process_pending_signals): New function.
2275
2276 * lisp.h (QUIT): Check pending_signals instead of
2277 interrupt_input_pending. Use process_pending_signals.
2278
51d861de 2279 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
a8fe3242 2280
51d861de 2281 * process.c (wait_reading_process_output): Use process_pending_signals.
a8fe3242
CY
2282
2283 * sysdep.c (emacs_write): Use process_pending_signals.
2284
2285 * xterm.c (XTread_socket): Update pending_signals.
2286
2287 * w32term.c (w32_read_socket): Update pending_signals.
2288
2289 * w32inevt.c (w32_console_read_socket): Update pending_signals.
2290
6570a1c4
KH
22912009-01-29 Kenichi Handa <handa@m17n.org>
2292
2293 * xftfont.c (xftfont_has_char): New function.
2294 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
2295
d72a4afa
AR
22962009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
2297
2298 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
2299 under GNUstep.
2300 (ns_query_color): New declaration.
2301
2302 * nsterm.m (ns_confirm_quit): New variable.
2303 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
2304 (EmacsApp-applicationShouldTerminate:): Use it.
2305 (EmacsPrefsController): Let user set it.
2306 (ns_query_color): New function.
2307 (ns_defined_color): Use it.
2308 (ns_initialize): Drop.
2309 (ns_term_init): Add two lines from ns_initialize(), and set
2310 input_interrupt_mode to nil.
2311
2312 * image.c (svg_load_image): Don't right-shift background RGB when
6af84d77 2313 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
d72a4afa 2314
9fe78804
KH
23152009-01-28 Kenichi Handa <handa@m17n.org>
2316
2317 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
f088b054
KH
2318 (fontset_get_font_group): Remember that no font-group is specified
2319 for C.
9fe78804 2320
fa57de36
CY
23212009-01-27 Chong Yidong <cyd@stupidchicken.com>
2322
930600e9
CY
2323 * fns.c (concat): Check for string overflow (bug#1787).
2324
fa57de36
CY
2325 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
2326 Quadruple undo limits (bug#1501).
2327
7179ce7b
KH
23282009-01-27 Kenichi Handa <handa@m17n.org>
2329
2330 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
2331 directly use GT_Get_Char_index.
2332
2333 * xftfont.c (struct xftfont_info): New member `index'.
2334
2335 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
51d861de 2336 (Ffontset_font): Adjust for the change of fontset entry.
7179ce7b 2337
5be8fcc0
CY
23382009-01-26 Kenichi Handa <handa@m17n.org>
2339
2340 * fontset.c (fontset_find_font): Fix handling of non-cons return
2341 value of fontset_get_font_group.
2342 (fontset_font): Revert last change.
2343
19ae3e61
JR
23442009-01-26 Jason Rumney <jasonr@gnu.org>
2345
2346 * w32font.c (w32font_list_internal): Return quickly if registry is
2347 unknown. Simplify final return.
2348 (add_font_entity_to_list): Break complex logic down into more
2349 manageable chunks. Move unknown registry check to
2350 w32font_list_internal.
2351
8612b71a
AR
23522009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
2353
2354 Changes to remove Feval calls from GUI under NS.
2355
d8038940
JB
2356 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
2357 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
8612b71a
AR
2358 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
2359
2360 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
2361 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
2362 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
2363 instead of NON_ASCII_KEYSTROKE_EVENT.
2364 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
2365 (EmacsApp-applicationShouldTerminate:): Query user.
2366 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
2367 instead of Feval.
2368
2369 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
2370
2371 * keyboard.c (kbd_buffer_get_event): Check for it.
2372 (keys_of_keyboard): Define lispy keys for
2373 ns-put/unput-working-text.
2374
2375 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
2376 versions.
2377 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
2378
6288ae55
CY
23792009-01-25 Chong Yidong <cyd@stupidchicken.com>
2380
2381 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
64cc3cf6 2382 setting current_buffer directly. (Bug#2044)
6288ae55 2383
289e7f8f
CY
23842009-01-24 Chong Yidong <cyd@stupidchicken.com>
2385
5ce87308 2386 * fontset.c (fontset_font): If we know there is no font, don't do
d8038940 2387 any work. (Bug#1952, bug#1990).
5ce87308 2388
64cc3cf6 2389 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
289e7f8f 2390
b3243e6f
AR
23912009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
2392
2393 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
d900b2af
AR
2394 (ns_no_defaults): New declaration.
2395 (main): Use it.
e0d2e69a 2396
d900b2af 2397 * nsterm.h (ns_no_defaults): New declaration.
e0d2e69a 2398
d900b2af 2399 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
e0d2e69a 2400
d900b2af
AR
2401 * nsterm.m (ns_no_defaults): New variable.
2402 (ns_initialize): Don't read defaults when ns_no_defaults.
2403 (EmacsView-readSelectionFromPasteboard:)
2404 (writeSelectionToPasteboard:types:): New stubbed-out methods for
d8038940 2405 NSServicesRequests protocol. (Bug#1435)
27521ca6
AR
2406 (ns_dumpglyphs_stretch): New function.
2407 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
d8038940 2408 of 2008-11-15 to other terms. (Bug#615)
b3243e6f 2409
e0d2e69a
AR
2410 * nsimage.m (setPixmapData:): Set to ignore image DPI.
2411
3ac71f5d
CY
24122009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
2413
2414 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
2415 call for Sparc64.
2416
3fe53a83
AR
24172009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
2418
2419 * nsfns.m:
2420 * nsgui.h:
2421 * nsmenu.m:
2422 * nsselect.m:
2423 * nsterm.h:
2424 * nsterm.m: Remove '23' comments that indicated code added during
2425 update from emacs-20 -> emacs-23.
2426
10f87c6f 24272009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
a3b53a85
AR
2428
2429 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
3a88a825 2430 ns_alternate_modifier. (Bug#1217)
a3b53a85 2431
c7cef62d
AR
2432 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
2433 Display all shortcuts, including those w/o super modifier.
2434
575fb8bd
AR
2435 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
2436
918b848b
CY
24372009-01-22 Chong Yidong <cyd@stupidchicken.com>
2438
2439 * fileio.c (Vwrite_region_post_annotation_function)
2440 (Vwrite_region_annotation_buffers): New vars.
2441 (build_annotations_unwind): Just reset
2442 Vwrite_region_annotation_buffers.
2443 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
2444 Call write-region-post-annotation-function.
2445 (build_annotations): Add to Vwrite_region_annotation_buffers if
2446 buffer changes.
2447
a39e2539
AR
24482009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2449
2450 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
2451 Tiger.
51d861de
SM
2452 * nsfns.m (ns_do_applescript):
2453 Conditionalize typeUTF16ExternalRepresentation on Tiger.
a39e2539 2454
35ed44db
AR
24552009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
2456
2457 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
2458
cbe0b5bf
AR
24592009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
2460
2461 * nsmenu.m (NSMENUPROFILE): Change #if style.
4c7077c3 2462
6049d3a0
AR
2463 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
2464
2465 * nsterm.m (x_set_frame_alpha): Add prototype.
a9b4df69
AR
2466 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
2467 handle Ctrl-tab. (Bug#1841)
2468 (ns_get_color): Use unsigned long long for scanned hex string value.
2469 (ns_term_shutdown): Abort on non SIGTERM signals.
e889fa06 2470 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
b71ac3dd 2471 (EmacsPrefsController-setPanelFromDefaultValues): New function.
3a88a825 2472 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
35ed44db 2473 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
d3810c21 2474 (ns_defined_color): Fix settings of the XColor variable fields:
3a88a825 2475 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
cbe0b5bf 2476
d3810c21 2477 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
3a88a825 2478 DPI. (Bug#1316)
d3810c21
AR
2479 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
2480 values in onTiger section.
4c7077c3 2481
e301e634
CY
24822009-01-19 Chong Yidong <cyd@stupidchicken.com>
2483
7f82490b
CY
2484 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
2485 Check return value of font_spec_from_name.
64cc3cf6 2486 (Fx_list_fonts): Doc fix. (Bug#1951)
7f82490b
CY
2487
2488 * font.c (font_spec_from_name): Return Qnil if font name could not
2489 be parsed.
2490 (font_parse_name): Treat a `?' character as part of an XLFD.
2491
e301e634
CY
2492 * fns.c (Fsubstring): Doc fix.
2493
1c0db158
KH
24942009-01-19 Kenichi Handa <handa@m17n.org>
2495
51d861de 2496 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
1c0db158
KH
2497 (ftfont_list): Likewise.
2498
acf20901
JB
24992009-01-18 Juanma Barranquero <lekktu@gmail.com>
2500
fff4e459
JB
2501 * dbusbind.c (Fdbus_register_signal):
2502 * process.c (conv_sockaddr_to_lisp):
2503 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2504
acf20901
JB
2505 * callproc.c (Fgetenv_internal): Doc fix.
2506
e7abcdfb
CY
25072009-01-16 Chong Yidong <cyd@stupidchicken.com>
2508
2509 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
2510 it is not even used.
2511
b60861e6
GM
25122009-01-16 Glenn Morris <rgm@gnu.org>
2513
2514 * font.c (Ffont_variation_glyphs): Silence compiler.
2515
8db52afe
JB
25162009-01-15 Juanma Barranquero <lekktu@gmail.com>
2517
2518 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
2519 Reported by David Robinow <drobinow@gmail.com>.
2520
4cddb209
KH
25212009-01-15 Kenichi Handa <handa@m17n.org>
2522
51d861de 2523 * coding.c (detect_coding_system): Fix handling of null_byte_found.
4cddb209 2524
f247f67b
JR
25252009-01-14 Jason Rumney <jasonr@gnu.org>
2526
2527 * frame.c (x_set_font): Always store a font to the font parameter,
fff4e459 2528 never a fontset. (Bug#1562)
f247f67b 2529
f56a4450
KH
25302009-01-14 Kenichi Handa <handa@m17n.org>
2531
2532 * coding.c (TWO_MORE_BYTES): New macro.
fff4e459 2533 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
f56a4450 2534
4e99855e
CY
25352009-01-13 Chong Yidong <cyd@stupidchicken.com>
2536
2537 * font.c (font_clear_prop): If clearing the family, clear the font
2538 width index too.
2539
fff4e459 2540 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
4e99855e 2541
24f01470
JB
25422009-01-12 Juanma Barranquero <lekktu@gmail.com>
2543
2544 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
2545 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
2546 functions, use sizeof.
2547
a41240a3
MR
25482009-01-12 Martin Rudalics <rudalics@gmx.at>
2549
2550 * keyboard.c (read_char): Fix case where last_nonmenu_event
2551 returned a bad value with submenus. (Bug#447)
2552
944636b8
CY
25532009-01-12 Chong Yidong <cyd@stupidchicken.com>
2554
2555 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
2556 family, clear the font width index too.
2557
0dad7c6f
JR
25582009-01-11 Jason Rumney <jasonr@gnu.org>
2559
2560 * keyboard.c (cmd_error_internal): Exit when errors occur before
2561 frame creation and not in daemon mode. (Bug#1836)
2562
7c2363af
CY
25632009-01-10 Chong Yidong <cyd@stupidchicken.com>
2564
2565 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
2566 of a display vector, backtrack.
2567 (try_window_reusing_current_matrix): Check glyph type before
2568 referencing charpos member.
2569
97b1b294
EZ
25702009-01-10 Eli Zaretskii <eliz@gnu.org>
2571
2572 Fix Bug #876:
2573
2574 * coding.c (inhibit_null_byte_detection): New variable.
2575 (detect_coding, detect_coding_system): Don't pay attention to null
2576 bytes if inhibit_null_byte_detection is non-zero.
51d861de 2577 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
97b1b294
EZ
2578 <inhibit-iso-escape-detection>: Doc fix.
2579
4624b6e3
JR
25802009-01-09 Jason Rumney <jasonr@gnu.org>
2581
2582 * w32font.c (add_font_entity_to_list): Don't report unknown
fff4e459 2583 Windows charset as any unrecognized registry. (Bug#1548)
4624b6e3
JR
2584 Only report Unicode Plane 2 fonts as unicode-sip.
2585
323b840c
CY
25862009-01-09 Chong Yidong <cyd@stupidchicken.com>
2587
51d861de
SM
2588 * xfaces.c (Fx_font_family_list): Delete function.
2589 Move compatibility version to faces.el.
323b840c 2590
51d861de 2591 * font.c (Ffont_family_list): Return a list of strings, not symbols.
323b840c 2592
eba7400d
MR
25932009-01-09 Martin Rudalics <rudalics@gmx.at>
2594
2595 * frame.c (x_set_frame_parameters): Remember requested value for
2596 fullscreen before it's reset by the parameter handler.
2597
4b09796d
GM
25982009-01-09 Glenn Morris <rgm@gnu.org>
2599
2600 * keyboard.c (last_command_char): For clarity, rename to...
46e722a9 2601 (last_command_event): ... and update all users.
4b09796d
GM
2602 (last_input_char): For clarity, rename to...
2603 (last_input_event): ... and update all users.
2604 (last-command-char, last-input-char): Move to subr.el as aliases.
2605 * cmds.c, commands.h: Update for last_command_char rename.
2606
14ccea62
CY
26072009-01-08 Chong Yidong <cyd@stupidchicken.com>
2608
51d861de 2609 * font.c (font_open_for_lface): Handle unspecified height attribute.
14ccea62 2610
5f004711
JR
26112009-01-08 Jason Rumney <jasonr@gnu.org>
2612
2613 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
2614 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
2615 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
2616 Don't declare.
fff4e459 2617 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
5f004711
JR
2618 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
2619
b71f6f73
KH
26202009-01-07 Kenichi Handa <handa@m17n.org>
2621
50b06221 2622 * fileio.c (Finsert_file_contents): In the case of replace,
f56a4450 2623 remember the coding system used for decoding in
50b06221
KH
2624 coding_system (Bug#1039).
2625
b71f6f73 2626 * coding.c (decode_coding_utf_8): Check byte_after_cr before
79a97217 2627 breaking the loop. (Bug#870)
b71f6f73
KH
2628 (decode_coding_utf_16, decode_coding_emacs_mule)
2629 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
2630 (decode_coding_charset): Likewise.
2631
56f668f7
MR
26322009-01-05 Martin Rudalics <rudalics@gmx.at>
2633
2634 * frame.c (x_set_frame_parameters): Make sure height (width) get
2635 applied when fullwidth (fullheight) is set. (Bug#1522)
2636
5da9424d
JB
26372009-01-04 Juanma Barranquero <lekktu@gmail.com>
2638
2639 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
2640 (utc_base): Declare as ULONGLONG, not long double.
2641 (convert_time_raw): Delete.
2642 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
2643 (initialize_utc_base): New function.
2644 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
2645 (convert_from_time_t): Use initialize_utc_base; compute result with
2646 64-bit arithmetic.
2647 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
2648
c4605e09
EZ
26492009-01-03 Eli Zaretskii <eliz@gnu.org>
2650
9acef61c 2651 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
c4605e09
EZ
2652 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
2653 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
2654 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
2655 [!subprocesses]: Define.
2656 (syms_of_process) [!subprocesses]: Intern and staticpro them.
2657 (Flist_system_processes, Fsystem_process_attributes)
2658 [!subprocesses]: Call list_system_processes and
2659 system_process_attributes instead of returning Qnil.
2660
9acef61c
JB
2661 * dosfns.c (system_process_attributes, list_system_processes):
2662 New functions.
c4605e09
EZ
2663
2664 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
2665
2666 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
2667 Don't use the default (no-op) implementation.
2668
8b7d0a16
JR
26692009-01-03 Jason Rumney <jasonr@gnu.org>
2670
a6d46bc1
JR
2671 * keyboard.c (parse_modifiers_uncached): Wheel events are
2672 clicks (bug#687).
2673
8b7d0a16
JR
2674 * w32term.c (x_query_colors, x_query_color): New functions.
2675
2676 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
2677 (svg_load_image): Cast returned pointers from dynamically loaded
2678 functions. Eliminate W32 specific code.
2679
bfe11752
DN
26802009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
2681
89e2438a
DN
2682 * nsfns.m (x_set_foreground_color, x_set_background_color)
2683 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
2684 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
2685 x_ prefix instead of ns_. Update references.
2686 (syms_of_nsfns): Add a FIXME comment.
2687
2688 * nsterm.m (x_set_cursor_type): New prototype.
2689 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
2690
bfe11752
DN
2691 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
2692 for Solaris instead of incorrectly providing Qutime and Qcutime.
2693
031da700
EZ
26942009-01-02 Eli Zaretskii <eliz@gnu.org>
2695
2696 * w32.c (process_times): Compute sum of utime and stime.
2697 (system_process_attributes): Add Qtime to the alist.
2698
2699 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
2700 and add them to the alist.
2701
2702 * process.c (top level) <Qtime, Qctime>: New variables.
2703 (syms_of_process): staticpro them.
2704 (Fsystem_process_attributes): Add their documentation to the doc
2705 string.
2706
2707 * process.h: Declare Qtime and Qctime.
2708
df23bf08
JR
27092009-01-02 Jason Rumney <jasonr@gnu.org>
2710
9acef61c 2711 * image.c (Qgobject): New symbol.
df23bf08
JR
2712 (syms_of_image): Initialize it.
2713 (init_svg_functions): Load some functions from gobject library.
2714
5bbdf7aa
DN
27152009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
2716
2717 * frame.c (make_terminal_frame): Remove redundant code and useless
2718 block.
2719
63136da6
AS
27202009-01-01 Andreas Schwab <schwab@suse.de>
2721
2722 * process.c (conv_sockaddr_to_lisp): Add workaround for
2723 getsockname bug on BSD.
2724
9ef69046
CY
27252009-01-01 Chong Yidong <cyd@stupidchicken.com>
2726
d6fafbe0
CY
2727 * xfns.c (x_create_tip_frame): Set border width of the X window.
2728
51d861de 2729 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
9ef69046 2730
f9c34147
JR
27312009-01-01 Jason Rumney <jasonr@gnu.org>
2732
9acef61c 2733 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
f9c34147
JR
2734 Don't block input, as per earlier xterm.c changes.
2735
f5497e45
AR
27362008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
2737
2738 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
2739 (ns_appkit_version_int): New function.
2740 (x-server-version): Use ns_appkit_version_int and follow 21+
2741 convention of returning 3 integers.
2742
c19cab20
KH
27432008-12-30 Kenichi Handa <handa@m17n.org>
2744
2745 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
2746 (CHAR_SURROGATE_PAIR_P): New macro.
2747
2748 * font.h (struct font_driver): New member get_variation_glyphs.
2749
9acef61c 2750 * font.c (font_range): Don't require a font for a variation selector.
c19cab20
KH
2751 (Ffont_variation_glyphs): New function.
2752 (syms_of_font): Defsubr it.
2753
2754 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
2755 ftfont_variation_glyphs.
2756 (setup_otf_gstring): New function.
2757 (ftfont_drive_otf): Use it.
2758 (ftfont_shape_by_flt): Handle variation selector.
2759 (ftfont_variation_glyphs): New function.
2760
28cd591f
MR
27612008-12-30 Martin Rudalics <rudalics@gmx.at>
2762
2763 * frame.c (Vemacs_iconified): Remove.
2764
7f714baf
JR
27652008-12-30 Jason Rumney <jasonr@gnu.org>
2766
2767 * frame.c (store_frame_param, x_get_arg): Enable newer code on
9acef61c 2768 WINDOWSNT too, as related changes have already been synced. (Bug#117)
7f714baf 2769
9d2d22ab
CY
27702008-12-30 Chong Yidong <cyd@stupidchicken.com>
2771
2772 * indent.c (Fvertical_motion): Don't advance iterator if we have
2773 reseated to the desired position.
2774
2775 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
2776 checking for pos match.
2777
545312c2
KH
27782008-12-30 Kenichi Handa <handa@m17n.org>
2779
1ede3eb6
KH
2780 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
2781 just get the low 8-bit of the code.
2782
545312c2
KH
2783 * font.c (font_intern_prop): Validate str as multibyte.
2784
bd7bbf29
DN
27852008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2786
31e0750e
DN
2787 * dispextern.h (struct face): Move lface and hash from the middle
2788 of bitfields.
2789
bd7bbf29
DN
2790 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
2791
b5672e7c
DN
27922008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
2793
2794 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
2795 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
2796 instead of intervals.h.
2797
d704470f
AS
27982008-12-26 Andreas Schwab <schwab@suse.de>
2799
2800 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
2801 cons.
2802
54b33868
MR
28032008-12-26 Martin Rudalics <rudalics@gmx.at>
2804
2805 * textprop.c (Qminibuffer_prompt): New variable.
2806 (syms_of_textprop): Initialize it.
2807 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
2808 in minibuffer-prompt face. (Bug#1662)
2809
40b615d6
JR
28102008-12-25 Jason Rumney <jasonr@gnu.org>
2811
2812 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
2813
baae5c2d
JR
28142008-12-24 Jason Rumney <jasonr@gnu.org>
2815
2816 * ralloc.c (r_alloc_reset_variable): New function.
2817
2818 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
9acef61c 2819 record of what points where. (Bug#716)
baae5c2d 2820
a9051c88
DN
28212008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
2822
2823 * minibuf.c (read_minibuf): Follow the non-interactive case when
2824 running as a daemon, before detaching.
2825
8b146312
AS
28262008-12-22 Andreas Schwab <schwab@suse.de>
2827
2828 * buffer.c (init_buffer): Use realloc instead of xrealloc.
2829 * gtkutil.c (free_widget_value): Use xfree instead of free.
2830
56f2de10
MR
28312008-12-22 Martin Rudalics <rudalics@gmx.at>
2832
2833 * frame.c (delete_frame): New function derived from
2834 Fdelete_frame to handle Qnoelisp value for FORCE argument.
2835 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
2836 (Fdelete_frame): Call delete_frame. Remove line from doc-string
2837 saying that FORCE non-nil doesn't run `delete-frame-functions'.
2838 * frame.h: Extern delete_frame.
2839 * window.c (window_loop):
2840 * terminal.c (delete_terminal):
2841 * xterm.c (x_connection_closed):
2842 * xfns.c (Fx_hide_tip):
9acef61c 2843 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
56f2de10 2844
1fc200d6
JR
28452008-12-21 Jason Rumney <jasonr@gnu.org>
2846
2847 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
2848 when character maps to .notdef character.
2849
5e252df2
SM
28502008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2851
2852 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
2853
99b72cc4
JR
28542008-12-20 Jason Rumney <jasonr@gnu.org>
2855
2856 * frame.c (Fmake_terminal_frame): Raise an error when called from
9acef61c 2857 a graphical frame on Windows. (Bug#1325)
99b72cc4 2858
acc49a52
JD
28592008-12-20 Jan Djärv <jan.h.d@swipnet.se>
2860
2861 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
2862
6ea15123
CY
28632008-12-20 Chong Yidong <cyd@stupidchicken.com>
2864
2865 * minibuf.c (Fread_buffer): Doc fix.
2866
b2dab6c8
JR
28672008-12-20 Jason Rumney <jasonr@gnu.org>
2868
54ea0c87 2869 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
9acef61c 2870 server name in UNC paths. (Bug#719)
54ea0c87 2871
b2dab6c8 2872 * coding.c (decode_coding): Clear chars_at_source flag when using
9acef61c 2873 charbuf. (Bug#1035)
b2dab6c8 2874
6d1921be
DN
28752008-12-19 Daniel Engeler <engeler@gmail.com>
2876
2877 * sysdep.c (serial_configure): Fix typo.
2878
53934c98
DN
28792008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2880
2881 * sysdep.c: Include alloca.h.
f4f634e8
DN
2882 (system_process_attributes): Add implementation for Solaris.
2883
2884 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
53934c98 2885
06e111a6
DN
28862008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
2887
2888 Reorganize implementation of Flist_system_processes and
2889 Fsystem_process_attributes. No functional changes.
2890 * process.c: Don't #include pwd.h, grp.h and limits.h.
2891 (Flist_system_processes): Just call list_system_processes.
2892 (Fsystem_process_attributes): Just call system_process_attributes.
2893 (procfs_list_system_processes, time_from_jiffies)
2894 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
2895 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
2896
2897 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
2898 (list_system_processes): Rename from
2899 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
2900 Provide a do nothing implementation.
2901 (system_process_attributes): Rename from
2902 procfs_list_system_processes.
2903 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
9acef61c 2904 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
06e111a6
DN
2905
2906 * w32.c (list_system_processes): Rename from
2907 w32_list_system_processes.
2908 (system_process_attributes): Rename from
2909 w32_system_process_attributes.
2910
2911 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
2912
2913 * process.h (w32_list_system_processes)
2914 (w32_system_process_attributes): Remove.
2915 (list_system_processes, system_process_attributes): New
2916 prototypes.
2917
6a705b23
KH
29182008-12-19 Kenichi Handa <handa@m17n.org>
2919
2920 * xfont.c (xfont_decode_coding_xlfd): New function.
2921 (xfont_encode_coding_xlfd): New function.
2922 (xfont_list_pattern): Decode XLFD by iso-8859-1.
2923 (xfont_list): Decode and encode XLFD by iso-8859-1.
2924 (xfont_match): Likewise.
2925 (xfont_list_family): Likewise.
2926 (xfont_open): Likewise.
2927
d66c0241 2928 * ftfont.c (ftfont_open): Generate a multibyte string if given
6a705b23
KH
2929 names are utf-8.
2930
d66c0241 2931 * xftfont.c (xftfont_open): Generate a multibyte string if given
6a705b23
KH
2932 names are utf-8.
2933
5a130941
JD
29342008-12-18 Jan Djärv <jan.h.d@swipnet.se>
2935
2936 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
2937 changed.
bfd20325
JD
2938 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
2939 clicked on a detached tool bar button.
5a130941 2940
fd95644b
DN
29412008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2942
2943 * emacs.c (main): Print and error and exit when no data is read
2944 from the pipe.
2945
e6eee6ae
JR
29462008-12-17 Jason Rumney <jasonr@gnu.org>
2947
2948 * w32font.c (w32font_has_char): Always return -1.
2949
a35dd56b
KH
29502008-12-16 Kenichi Handa <handa@m17n.org>
2951
2952 * font.c (font_open_entity): Fix previous change.
2953
0e3635c2
DN
29542008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
2955
2956 * process.c: Include <limits.h>.
2957
d4835507 29582008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
b5356c39
CY
2959
2960 * font.c (font_update_drivers): Fix mistake in reconstructing the
2961 driver list.
2962
29632008-12-16 Chong Yidong <cyd@stupidchicken.com>
2964
2965 * font.c (font_clear_cache): Fix format of font cache data.
2966
e2cbc401
CY
29672008-12-15 Chong Yidong <cyd@stupidchicken.com>
2968
2969 * xftfont.c (xftfont_open): Free Xft font pattern if
2970 XftFontOpenPattern fails.
2971
2972 * xterm.c (x_free_frame_resources): Remove extraneous call to
2973 free_frame_faces.
2974
b131d535
CY
29752008-12-13 Chong Yidong <cyd@stupidchicken.com>
2976
2977 * xterm.c (x_delete_display): Move xim_close_dpy call to
2978 x_delete_terminal.
2979 (x_delete_terminal): Call xim_close_dpy.
2980
e6df5336
JR
29812008-12-13 Jason Rumney <jasonr@gnu.org>
2982
2983 * w32font.c (intern_font_name): New function.
2984 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
2985 (w32font_open_internal, Fx_select_font): Decode font name.
2986 (fill_in_logfont, list_all_matching_fonts): Encode font name.
2987
2988 * w32font.h (intern_font_name): Declare new function.
2989
2990 * w32uniscribe.c (add_opentype_font_name_to_list):
2991 Use intern_font_name.
2992
20d68145
CY
29932008-12-13 Chong Yidong <cyd@stupidchicken.com>
2994
9f2554de
CY
2995 * frame.c (Fdelete_frame): Call free_font_driver_list.
2996
3d9bec9a
CY
2997 * font.c (free_font_driver_list): Implement missing function.
2998
20d68145
CY
2999 * w32term.c (w32_term_init): Don't initialize the image cache
3000 here; it will be done in init_frame_faces.
3001
3002 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
3003 (struct x_display_info): Remove unused member null_pixel. New
3004 member xim_callback_data.
3005
3006 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
3007 (xim_initialize): Save pointer to callback function data.
3008 (xim_close_dpy): Free callback function data. Call XCloseIM,
3009 reverting 2008-11-04 change by David Smith.
3010 (x_term_init): Don't initialize the image cache here; it will be
3011 done in init_frame_faces. Remove ancient "null_pixel" cruft.
3012 (x_delete_display): Free x_dnd_atoms member.
3013
96f9306b
KH
30142008-12-13 Kenichi Handa <handa@m17n.org>
3015
6dec9044
JB
3016 * font.c (font_rescale_ratio): Moved from xfaces.c.
3017 Argument type changed. Handle a font-spec too.
96f9306b 3018 (font_score): Check Vface_font_rescale_alist.
6dec9044 3019 (font_open_entity): Likewise. (Bug#1547)
96f9306b
KH
3020
3021 * xfaces.c (font_rescale_ratio): Moved to font.c.
3022
8d5b4964
CY
30232008-12-13 Chong Yidong <cyd@stupidchicken.com>
3024
3025 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
3026
e6df5336
JR
30272008-12-12 Jason Rumney <jasonr@gnu.org>
3028
3029 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
3030 Vwindow_system_version to the real w32 major version.
3031
97c6058a
DN
30322008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
3033
3034 * term.c (init_tty): Move setting the terminal name before the
3035 potential user: maybe_fatal.
3036
ec4e88d7
CY
30372008-12-11 Chong Yidong <cyd@stupidchicken.com>
3038
d4835507
JB
3039 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
3040 all callers changed. Call free_frame_faces to free the face cache.
ec4e88d7 3041
b4233ec9
JR
30422008-12-11 Jason Rumney <jasonr@gnu.org>
3043
8ec71e23 3044 * w32font.c (fill_in_logfont): Don't assume symbol script means
9acef61c 3045 SYMBOL_CHARSET. (Bug#547)
8ec71e23 3046
b4233ec9 3047 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
9acef61c 3048 size for surrogates. (Bug#1096, bug#872)
b4233ec9 3049
011a0143
JB
30502008-12-11 Juanma Barranquero <lekktu@gmail.com>
3051
3052 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
3053
3c309f34
JB
30542008-12-11 Juanma Barranquero <lekktu@gmail.com>
3055
3056 * process.c (Fsystem_process_attributes, syms_of_process):
3057 Fix typo in name of Ssystem_process_attributes.
3058 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
3059
fedc6ab5
JB
30602008-12-11 Juanma Barranquero <lekktu@gmail.com>
3061
3062 * syntax.c (Fmodify_syntax_entry): Doc fix.
3063
ba3de0e8
JB
30642008-12-10 Juanma Barranquero <lekktu@gmail.com>
3065
3066 * font.c (Ffont_spec): Move usage to end of docstring.
3067
174f1c74
JR
30682008-12-10 Jason Rumney <jasonr@gnu.org>
3069
3070 * w32font.c (Qcham): New symbol.
3071 (font_supported_scripts): Add cham, and comments for other new
3072 scripts in bitfield from OpenType spec.
9d32f818
JR
3073 (add_font_entity_to_list): Limit unicode-sip fonts to those that
3074 contain characters beyond the bmp.
174f1c74 3075
7b649478
KH
30762008-12-10 Kenichi Handa <handa@m17n.org>
3077
3078 * ftfont.c (fc_charset_table): Add "unicode-sip".
2ae37cf0 3079 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7b649478
KH
3080 Qunicode_sip.
3081
2133e2d1
JB
30822008-12-10 Juanma Barranquero <lekktu@gmail.com>
3083
3084 * coding.c (QCdefault_char): Rename from QCdefalut_char.
3085 (Fcoding_system_put): Use QCdefault_char.
3086 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
3087
9af886ee
CY
30882008-12-09 Chong Yidong <cyd@stupidchicken.com>
3089
74d819eb
CY
3090 * xftfont.c (syms_of_xftfont): Fix typo.
3091
4ccfa1c0 3092 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
9af886ee 3093
7c19d3ae
DN
30942008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
3095
3096 * emacs.c (main): Close daemon_pipe on exec.
3097
567826bb
CY
30982008-12-08 Chong Yidong <cyd@stupidchicken.com>
3099
3100 * termchar.h (struct tty): New members termcap_term_buffer and
3101 termcap_strings_buffer.
3102
3103 * term.c (encode_terminal_code): Free any previous memory blocks
4ccfa1c0 3104 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
567826bb
CY
3105 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
3106 All callers changed.
3107 (init_tty): Store termcap data and string buffers in new struct
3108 tty members termcap_term_buffer and termcap_strings_buffer.
3109 (delete_tty): Free them.
4ccfa1c0 3110 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
567826bb 3111
aa96c42b
SZ
31122008-12-07 Seiji Zenitani <zenitani@mac.com>
3113
3114 * nsfns.m (ns_set_background_color): Remove code duplication.
4ccfa1c0 3115 It was a substitute for face-transparency on OS X 10.3.
aa96c42b 3116
b7e1d896
CY
31172008-12-06 Chong Yidong <cyd@stupidchicken.com>
3118
3119 * coding.c (make_conversion_work_buffer): Disable buffer
3120 modification hooks in the work buffer.
3121
b5ec91a5
EZ
31222008-12-05 Eli Zaretskii <eliz@gnu.org>
3123
3124 * process.c (procfs_system_process_attributes): If `nread' has a
3125 negative value, assign zero to it.
3126
a5d2a52b
CY
31272008-12-05 Chong Yidong <cyd@stupidchicken.com>
3128
68c5540b 3129 * eval.c (Vdebug_on_error): Doc fix.
a5d2a52b 3130
7bf1bb21
KH
31312008-12-05 Kenichi Handa <handa@m17n.org>
3132
3133 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
3134 second character is a combining character.
3135
2fdc7d00
EZ
31362008-12-05 Eli Zaretskii <eliz@gnu.org>
3137
3138 * process.c (procfs_system_process_attributes): Don't use cmd,
3139 cmdsize, and q without initializing them first.
3140
bf6bfba8
JR
31412008-12-04 Jason Rumney <jasonr@gnu.org>
3142
3143 * w32font.c (w32font_draw): Initialize orig_clip before getting
3144 it, and delete it when finished.
3145
a3b1a468
DN
31462008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
3147
3148 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
3149 case when running as a daemon before detaching.
3150
8b8be8eb
JB
31512008-12-03 Juanma Barranquero <lekktu@gmail.com>
3152
805f2638 3153 * w32.c (init_environment): Don't unload library shell32.dll.
8b8be8eb 3154
b1bde622
KH
31552008-12-03 Kenichi Handa <handa@m17n.org>
3156
e500c47d
KH
3157 * font.c (font_at): Set `multibyte' at first.
3158
ca516334
KH
3159 * coding.c (decode_coding_charset): Check type of an element of
3160 vector VALIDS.
7bf1bb21 3161 (encode_coding_emacs_mule): Be sure to set `code'.
ca516334 3162
4ccfa1c0 3163 * fontset.c (face_for_char): Handle invalid charset property correctly.
b1bde622
KH
3164 (font_for_char): Likewise.
3165
1e5ecd37
CY
31662008-12-03 Chong Yidong <cyd@stupidchicken.com>
3167
d5b01609 3168 * font.c (Fopen_font): Compute pixel size correctly.
ba207571
CY
3169 (font_update_lface): Handle fonts with corrupted size specs,
3170 i.e. non-int and non-float.
d5b01609 3171
11e3a6e4 3172 * ftfont.c (ftfont_match): Initialize entity variable.
9a48c8cb 3173 (ftfont_resolve_generic_family): Avoid using uninitialized var.
8adb3a3b 3174 (ftfont_list_family): Initialize list var earlier.
11e3a6e4 3175
ab06788b
CY
3176 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
3177
1e5ecd37 3178 * xterm.c (x_draw_glyph_string): Fall back on
0cff82ab 3179 underline_minimum_offset for underline position.
1e5ecd37 3180
63c125ab
DN
31812008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
3182
3183 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
3184
3185 * character.c (c_string_width): Specify the type for LEN.
3186
3a8406e1
KH
31872008-12-03 Kenichi Handa <handa@m17n.org>
3188
4ccfa1c0 3189 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
453b38f0 3190 (decode_coding_utf_8): Likewise.
4ccfa1c0 3191 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
4533845d 3192 (produce_chars): Initialize consumed_chars to 0.
3a8406e1 3193
651df7d9
CY
31942008-12-02 Chong Yidong <cyd@stupidchicken.com>
3195
3196 * keyboard.c (make_lispy_position): Only use PT if the selected
3197 window is current.
3198
1f625c6c
AS
31992008-12-02 Andreas Schwab <schwab@suse.de>
3200
f7741ce9
AS
3201 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
3202
1f625c6c
AS
3203 * doprnt.c (doprnt1): Fix size of charbuf.
3204
92bc2678
CY
32052008-12-02 Chong Yidong <cyd@stupidchicken.com>
3206
3207 * keyboard.c (timer_check): Revert last change.
3208
93b9e8cc
JB
32092008-12-02 Juanma Barranquero <lekktu@gmail.com>
3210
3211 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
3212
fd7a37d5
JB
32132008-12-01 Juanma Barranquero <lekktu@gmail.com>
3214
3215 * makefile.w32-in: Update dependencies.
3216 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
3217
c115043b
AS
32182008-12-01 Andreas Schwab <schwab@suse.de>
3219
3220 * font.c (register_font_driver): Use xmalloc.
3221 (font_put_frame_data): Likewise.
3222
f5668d2a
CY
32232008-12-01 Chong Yidong <cyd@stupidchicken.com>
3224
860d96be
CY
3225 * xfaces.c (realize_x_face): Make abort condition clearer.
3226
f5668d2a
CY
3227 * gtkutil.c (update_frame_tool_bar): Initialize variable.
3228
379c17e7
CY
32292008-11-30 Chong Yidong <cyd@stupidchicken.com>
3230
3231 * keyboard.c (timer_check): After a timer runs, ensure that the
3232 selected window's buffer is current.
3233
35f36d65
JB
32342008-11-30 Juanma Barranquero <lekktu@gmail.com>
3235
f952c61c
JB
3236 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
3237 It was accidentally restored by the Unicode merge.
3238
35f36d65
JB
3239 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
3240
b23077df
JB
32412008-11-29 Juanma Barranquero <lekktu@gmail.com>
3242
3243 * w32proc.c: Include "coding.h".
3244 (Fw32_short_file_name): Encode filename passed to Windows API.
3245 (Fw32_long_file_name): Encode filename passed to Windows API and
3246 decode back the result. (Bug#1433)
3247
b8ebe9dd
KH
32482008-11-29 Kenichi Handa <handa@m17n.org>
3249
8cc53f96
KH
3250 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
3251 not before accessing it.
3252
b8ebe9dd
KH
3253 * charset.c (Fdefine_charset_internal): After calculating
3254 min_char, max_char, and fastmap, copy the charset structure again.
3255 (encode_char): Fix the previous change.
3256
59bc82c0
SZ
32572008-11-28 Seiji Zenitani <zenitani@mac.com>
3258
3259 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
3260
3261 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
3262
3263 * nsterm.m (x_set_frame_alpha): New function.
3264
32247e3d
EZ
32652008-11-27 Eli Zaretskii <eliz@gnu.org>
3266
3267 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
3268
b003e5ff
JB
32692008-11-27 Juanma Barranquero <lekktu@gmail.com>
3270
3271 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
3272 pointer to check_face_name.
3273
708550f5
KH
32742008-11-27 Kenichi Handa <handa@m17n.org>
3275
3276 * category.h (SET_CATEGORY_SET): Call set_category_set.
3277 (set_category_set): Extern it.
3278
3279 * category.c (hash_get_category_set): New function.
3280 (Fmodify_category_entry): Adjusted for the change of
3281 char_table_ref_and_range. Call hash_get_category_set to get a
3282 category set to store in the table.
3283
3284 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
3285 Funify_charset.
3286
2ae37cf0 3287 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
708550f5
KH
3288 (DECODE_CHAR): Check if the decoder vector is ready.
3289 (ENCODE_CHAR): Check if the encoder char-table is ready.
3290 (maybe_unify_char): Extern it.
3291
3292 * charset.c (Vchar_unified_charset_table): Delete it.
3293 (inhibit_load_charset_map): New variable.
3294 (temp_charset_work): New variable.
3295 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
3296 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
3297 New macros.
3298 (load_charset_map): Meaning of control_flag changed. If
3299 inhibit_load_charset_map is nonzero, setup a table in
3300 temp_charset_work.
3301 (load_charset): New argument control_flag.
3302 (map_charset_for_dump): New function.
3303 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
3304 map_charset_for_dump.
3305 (Fdefine_charset_internal): If the charset method is MAP, load
3306 mapping tables by calling load_charset.
3307 (Funify_charset): Don't load a mapping table but directly set
3308 Vchar_unify_table.
3309 (maybe_unify_char): New function.
3310 (decode_char): Don't handle the deleted method MAP_DEFERRED.
3311 Handle the case of inhibit_load_charset_map being nonzero.
3312 (encode_char): Don't handle the deleted method MAP_DEFERRED.
3313 Handle the case of inhibit_load_charset_map being nonzero.
3314 (Fclear_charset_maps): Just free temp_charset_work.
3315 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
3316 variable.
3317
3318 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
3319 change of char_table_ref_and_range.
3320 (char_table_ref_and_range): Change the meaning of argument FROM
3321 and TO. Now the caller must provide initial values for *FROM
3322 and *TO.
3323
3324 * fontset.c (fontset_add): Adjusted for the change of
3325 char_table_ref_and_range.
3326 (fontset_get_font_group): Likewise.
3327 (Ffontset_info): Likewise.
3328
3329 * keymap.c (describe_vector): Adjusted for the change of
3330 char_table_ref_and_range. For char-table, put boundary between
3331 non-ASCII and 8-bit characters.
3332
3333 * print.c (print_object): For bool-vector, delete unnecessary
3334 check of ASCII_BYTE_P.
3335
9196133b
JR
33362008-11-26 Jason Rumney <jasonr@gnu.org>
3337
3338 * w32font.c (w32font_open_internal): Don't include external
9acef61c 3339 leading in font height. (Bug#879)
9196133b 3340
9f688acf
GM
33412008-11-26 Glenn Morris <rgm@gnu.org>
3342
3343 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
3344 redefinition with ifdef. (Bug#1383)
3345
90d19aff
AR
33462008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3347
3348 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
3349
4ccfa1c0 33502008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
90d19aff
AR
3351
3352 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
3353 New EmacsView methods.
3354 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
3355 Fixes bug #1048,1357,1414.
3356
33572008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
3358
3359 Fix bug #1362.
3360 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
3361 is not an indexed color.
3362 * nsterm.m (free_indexed_color): Add argument checking.
3363 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
3364
e7d5ecb3
CY
33652008-11-24 Chong Yidong <cyd@stupidchicken.com>
3366
3367 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
3368 Document confirm-after-completion value for
3369 minibuffer-completion-confirm.
3370
c285743c
JR
33712008-11-24 Jason Rumney <jasonr@gnu.org>
3372
3373 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
3374 warning.
3375
b0857706
JR
33762008-11-23 Jason Rumney <jasonr@gnu.org>
3377
3378 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
3379 restored before returning.
3380
3381 * w32font.c (check_face_name): New function.
3382 (add_font_entity_to_list): Use it to filter out common substituted
9acef61c 3383 fonts. (Bug#642)
b0857706 3384
ee50ff07
MR
33852008-11-22 Martin Rudalics <rudalics@gmx.at>
3386
3387 * buffer.c (Fswitch_to_buffer): Reword and mention new option
3388 confirm-nonexistent-file-or-buffer in doc-string.
3389
b8ff72fa
SM
33902008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
3391
3392 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
3393 Fix copy/paste typo. Add checks.
3394
cee53ed4
KH
33952008-11-21 Kenichi Handa <handa@m17n.org>
3396
3397 * coding.c (detect_coding_iso_2022): Reject invalid composition
3398 sequence.
3399 (DECODE_COMPOSITION_START): If the current source is the last
3400 block, and the current composition doesn't end, regard this
3401 sequence as invalid.
3402 (decode_coding_iso_2022): Handle invalid composition sequence.
3403
f6ef1e65
MR
34042008-11-20 Martin Rudalics <rudalics@gmx.at>
3405
3406 * window.c (coordinates_in_window): Don't return
3407 ON_VERTICAL_BORDER for the rightmost position of a mode/header
3408 line when the window is not the rightmost one. (Bug#1372)
3409
e08b1705
MR
34102008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
3411
3412 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
3413
ad98e89f
EZ
34142008-11-15 Eli Zaretskii <eliz@gnu.org>
3415
3416 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
3417 and bright_bg if noninteractive is non-zero.
3418
fb098a4b
CY
34192008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3420
3421 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
3422 x_draw_glyph_string_background.
3423
3424 * w32term.c (x_draw_glyph_string): Likewise.
3425
ce952b6e
CY
34262008-11-15 Chong Yidong <cyd@stupidchicken.com>
3427
3428 * xterm.c (x_draw_glyph_string): Stop drawing the background of
3429 the next glyph string once past the overhang width.
3430
3431 * nsterm.m (ns_draw_glyph_string): Likewise.
3432
3433 * w32term.c (x_draw_glyph_string): Likewise.
3434
26ea7079
CY
34352008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
3436
3437 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
3438 double file close.
3439
1c33c906
MR
34402008-11-14 Martin Rudalics <rudalics@gmx.at>
3441
3442 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
3443 dedicated status of window before attempting to display another
3444 buffer in it.
3445
8fc29035
JB
34462008-11-14 Juanma Barranquero <lekktu@gmail.com>
3447
3448 * msdos.c (Fmsdos_long_file_names):
3449 (syms_of_msdos) <dos-unsupported-char-glyph>:
3450 * dosfns.c (Fint86): Fix typos in docstrings.
3451
55fb4286
EZ
34522008-11-14 Eli Zaretskii <eliz@gnu.org>
3453
3454 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
3455
3fda0315
KY
34562008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
3457
3458 * puresize.h (BASE_PURESIZE): Increase to 1260000.
3459
7e849c17
CY
34602008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
3461
3462 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
3463
3464 * frame.h: Negative alpha means "don't touch".
3465
3466 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
3467
3468 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
3469
b9fd67bd
DN
34702008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
3471
3472 * hftctl.c:
3473 * chpdef.h:
3474 * acldef.h: Remove files used only for systems no longer supported.
3475
3476 * Makefile.in: Fix .o alphabetical ordering.
3477 (hftctl.o): Remove dependency, file removed.
3478 (keymap.o, print.o): Depend on charset.h.
3479
d5998e03
KH
34802008-11-10 Kenichi Handa <handa@m17n.org>
3481
2ae37cf0 3482 * character.c (Fget_byte): Fix and make it faster for unibyte target.
d5998e03 3483
be70e183
CY
34842008-11-08 Chong Yidong <cyd@stupidchicken.com>
3485
3486 * dired.c (file_name_completion): If completion_ignore_case is
3487 enabled, ignore case when checking completion-regexp-list.
3488
7cf94eac
EZ
34892008-11-08 Eli Zaretskii <eliz@gnu.org>
3490
3491 * vm-limit.c (get_lim_data): Fix last change.
3492
ee107a89
KH
34932008-11-08 Kenichi Handa <handa@m17n.org>
3494
3495 * character.c (Fget_byte): New function.
3496 (syms_of_character): Defsubr Fget_byte.
3497
5fd15622
CY
34982008-11-07 Chong Yidong <cyd@stupidchicken.com>
3499
3500 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
3501 cursor position is valid after scrolling.
3502
13d62fad
JB
35032008-11-06 Juanma Barranquero <lekktu@gmail.com>
3504
3505 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
3506
a1dd2936
GM
35072008-11-06 Glenn Morris <rgm@gnu.org>
3508
3509 * xterm.c (handle_one_xevent): Don't let popup menus cause
3510 mouse-autoselect-window related window switching. (Bug#1261)
3511
860cd236
CY
35122008-11-04 David Smith <davidsmith@acm.org> (tiny change)
3513
3514 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
3515
653a3150
AS
35162008-11-04 Andreas Schwab <schwab@suse.de>
3517
3518 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
3519
870f5cac
CY
35202008-11-03 Chong Yidong <cyd@stupidchicken.com>
3521
3522 * xfns.c (Fx_wm_set_size_hint): New function.
3523
1e02f3cb
MR
35242008-11-03 Martin Rudalics <rudalics@gmx.at>
3525
3526 * textprop.c (Fprevious_single_char_property_change): Return 0
3527 when there's no change in a string. (Bug#1301)
3528
e630dfc6
MR
35292008-11-02 Martin Rudalics <rudalics@gmx.at>
3530
3531 * frame.c (do_switch_frame): New argument NORECORD passed to
3532 Fselect_window.
3533 (Fselect_frame): New argument NORECORD passed to
3534 do_switch_frame.
3535 (Fset_frame_selected_window): New argument NORECORD passed to
3536 Fselect_frame.
3537 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
3538 in call of do_switch_frame.
3539 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
3540 Handle NORECORD argument in call of Fselect_frame.
3541 * lisp.h (do_switch_frame, Fselect_frame)
3542 (Fset_frame_selected_window): Adjust declarations.
3543 * window.c (select_frame_norecord): New function.
3544 (run_window_configuration_change_hook): Use it and call
3545 Fselect_frame with NORECORD set.
3546 (Fselect_window): Pass NORECORD to Fselect_frame.
3547 (Fset_window_configuration): Handle NORECORD argument in call of
3548 do_switch_frame.
3549 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
3550 Fset_frame_selected_window.
3551 * keyboard.c (command_loop_1): Handle NORECORD in call of
3552 Fselect_frame (currently ifdefd).
3553
9020b223
GM
35542008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
3555
3556 * emacs.c (USAGE2): Untabify.
3557
793ffee8
SM
35582008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
3559
3560 * composite.c (fill_gstring_header): Fix copy/paste typo.
3561
ab6d1131
MR
35622008-10-31 Martin Rudalics <rudalics@gmx.at>
3563
3564 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
3565 (Fother_window): Rename argument and rewrite doc-string.
3566 (select_window_norecord): Fix return value. (Bug#1276)
3567
601a9cf1
JB
35682008-10-30 Juanma Barranquero <lekktu@gmail.com>
3569
3570 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
3571 new frames overriding foreground for tooltips. Based on similar patch
3572 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
3573
813b0652
CY
35742008-10-29 Chong Yidong <cyd@stupidchicken.com>
3575
3576 * emacs.c (Fdaemon_initialized): Initialize nfd.
3577
4414f58f
MR
35782008-10-29 Martin Rudalics <rudalics@gmx.at>
3579
3580 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
3581 (Fwindow_text_height): Clarify doc-strings.
3582 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
3583 doc-string of window-scroll-functions.
3584
ecdcaa09
RS
35852008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
3586
3587 * category.c (syms_of_category): Fix typo in docstring.
3588
23fe745a
JB
35892008-10-28 Juanma Barranquero <lekktu@gmail.com>
3590
3591 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
3592 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
3593 Fix typos in docstrings.
3594
ff808935
DN
35952008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
3596
3597 * emacs.c (daemon_pipe): Make non-static.
3598 (IS_DAEMON): Move definition ...
3599 * lisp.h (IS_DAEMON): ... here.
3600 (daemon_pipe): Declare.
3601 (is_daemon): Remove.
3602 * dispnew.c (init_display): Use IS_DAEMON.
3603
fc012771
SM
36042008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
3605
3606 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
3607 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
3608
3609 * emacs.c (is_daemon): Remove.
3610 (main): Don't set is_daemon.
3611 (IS_DAEMON): New macro.
3612 (Fdaemonp, Fdaemon_initialized): Use it.
601a9cf1 3613 (Fdaemon_initialized): Write a char into the pipe to make sure the
fc012771
SM
3614 parent exits.
3615 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
3616
d8bdbe6f
CY
36172008-10-27 Chong Yidong <cyd@stupidchicken.com>
3618
d1a072bf
CY
3619 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
3620 over-sized glyph, draw it with the default glyph width.
3621
e2e325aa
CY
3622 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3623 glyph, draw it with the default glyph width.
3624
3625 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
3626 glyph, draw it with the default glyph width.
3627
d8bdbe6f
CY
3628 * xdisp.c (try_scrolling): When computing the distance from the
3629 scroll margin to PT, try moving some distance past the window
3630 bottom before giving up.
3631
7bfac547
MR
36322008-10-27 Martin Rudalics <rudalics@gmx.at>
3633
3634 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
3635 (Fset_window_buffer): Explain in doc-string that a window can be
3636 "strongly" dedicated to its buffer.
3637
4ff029f6
DN
36382008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
3639
3640 * emacs.c (daemon_name): New variable.
3641 (main): Deal with --daemon=SERVER_NAME.
3642 (Fdaemonp): Return a name if one was passed to --daemon.
3643
5790ef40
DN
36442008-10-26 Romain Francoise <romain@orebokech.com>
3645
f9bd0df9 3646 * emacs.c (daemon_pipe): New variable.
5790ef40
DN
3647 (main): Create a pipe before forking, make the parent exit only after
3648 the child has closed its end of the pipe. Move closing the
3649 descriptors ...
3650 (Fdaemon_initialized): ... here. New function.
3651
f5385255
SM
36522008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
3653
4d632321
SM
3654 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
3655 the previous unoptimized table.
3656
f5385255
SM
3657 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
3658 the distinction between non-nil and non-t value of `dedicated'.
3659
6c56a0f3
CY
36602008-10-25 Chong Yidong <cyd@stupidchicken.com>
3661
3662 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
f5385255 3663 read_char_minibuf_menu_text is large enough to hold the menu string.
6c56a0f3 3664
fec89261
MR
36652008-10-25 Martin Rudalics <rudalics@gmx.at>
3666
3667 * window.c (Fget_buffer_window, Fdelete_windows_on)
3668 (Freplace_buffer_in_windows): Make buffer argument optional and
3669 rename to buffer_or_name.
3670
34fcddd0
CY
36712008-10-24 Chong Yidong <cyd@stupidchicken.com>
3672
f5385255
SM
3673 * xdisp.c (handle_single_display_spec, handle_display_prop):
3674 Undo 2005-05-16 change.
34fcddd0
CY
3675 (handle_stop): Pop iterator if it's loaded with an empty string.
3676 (get_overlay_strings_1): Don't save iterator if it's loaded with
3677 an empty string (bug#1201).
3678
064766f2
KH
36792008-10-24 Kenichi Handa <handa@m17n.org>
3680
3681 * ftfont.c (ftfont_otf_features): Fix previous change.
3682 (ftfont_otf_capability): Check FeatureList.FeatureCount before
3683 calling ftfont_otf_features.
3684
f9bd0df9 36852008-10-24 Kenichi Handa <handa@m17n.org>
064766f2
KH
3686
3687 * font.c (font_match_p): Fix for the case that a vector of
3688 characters is in script-representative-chars.
3689
1dae9197
MA
36902008-10-24 Michael Albinus <michael.albinus@gmx.de>
3691
3692 * dbusbind.c (xd_in_read_queued_messages): New variable.
f5385255 3693 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
1dae9197
MA
3694 (xd_read_queued_messages): Catch Qdbus_error from the macros.
3695 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
3696 macro. (Bug#1186).
3697
f9bd0df9 36982008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
9b3362b8
DN
3699
3700 * s/sol2-10.h: New file.
3701
878a4584
JB
37022008-10-23 Juanma Barranquero <lekktu@gmail.com>
3703
3704 * xdisp.c (fill_glyph_string): Fix typo in source (though the
3705 poor beast has survived 9+ years and the jump from xterm.c!).
3706
cd265ca6
MR
37072008-10-23 Martin Rudalics <rudalics@gmx.at>
3708
3709 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
3710 Reword doc-string.
f5385255 3711 (Fbury_buffer): In doc-string say what happens to the buffer's window.
cd265ca6 3712
472a4dc9
JB
37132008-10-23 Juanma Barranquero <lekktu@gmail.com>
3714
3715 * character.c (syms_of_character) <script-representative-chars>:
3716 <unicode-category-table>: Doc fixes.
3717
159bd5a2
NF
37182008-10-23 Noah Friedman <friedman@splode.com>
3719
3720 * coding.c (make_conversion_work_buffer): Check that
3721 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
3722 Fget_buffer_create.
3723
49f9c344
KH
37242008-10-23 Kenichi Handa <handa@m17n.org>
3725
3726 * font.c (font_add_log): Check the values of extra properties.
3727
12bb3111
MR
37282008-10-22 Martin Rudalics <rudalics@gmx.at>
3729
3730 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3731 Reword doc-string.
3732 (Fset_window_parameter): Use NILP.
3733 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
f5385255 3734 (Frecenter): Use "selected" instead of "current" window in doc-strings.
12bb3111 3735
bbeb4e99
JB
37362008-10-22 Juanma Barranquero <lekktu@gmail.com>
3737
3738 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
3739
37402008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
cb83c00b
AR
3741
3742 * nsfns.m (ns_appkit_version): New function.
3743 (x-server-version): Use it.
3744 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
3745 (x-server-vendor): Don't check_ns().
3746
3747 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
3748
a9b555d3
JB
37492008-10-22 Juanma Barranquero <lekktu@gmail.com>
3750
3751 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
3752 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
3753
4626499f
KH
37542008-10-22 Kenichi Handa <handa@m17n.org>
3755
e3681952
KH
3756 * syntax.c (scan_words): Call word_boundary_p instead of comparing
3757 scripts.
3758
4626499f
KH
3759 * category.c (word_boundary_p): Check scripts instead of charset.
3760 Handle nil value in word-separating-categories and
3761 word-combining-categories.
3762 (syms_of_category): Fix docstrings of word-separating-categories
3763 and word-combining-categories.
3764
1560f91a
EZ
37652008-10-21 Eli Zaretskii <eliz@gnu.org>
3766
3767 * coding.c (Fencode_coding_region, Fdecode_coding_region)
3768 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
3769
f4668441
MR
37702008-10-21 Martin Rudalics <rudalics@gmx.at>
3771
3772 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
3773 Rename arg "buffer" to "buffer_or_name".
3774 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
3775 it optional.
3776 (no_switch_window): Remove since the return value is not used.
a9b555d3 3777 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
f4668441
MR
3778 Consider window as dedicated when Fwindow_dedicated_p returns a
3779 non-nil value.
3780 * lisp.h: Remove prototype for no_switch_window.
3781
fd75ddb2
JD
37822008-10-21 Jan Djärv <jan.h.d@swipnet.se>
3783
3784 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
2ae37cf0 3785 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
fd75ddb2 3786
07295713
KH
37872008-10-21 Kenichi Handa <handa@m17n.org>
3788
3789 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
3790 check Vlatin_extra_code_table.
3791
712adc82
EZ
37922008-10-20 Eli Zaretskii <eliz@gnu.org>
3793
3794 * fileio.c (Fset_file_modes): Doc fix.
3795
f549eb0b
MA
37962008-10-19 Michael Albinus <michael.albinus@gmx.de>
3797
3798 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
3799 in arrays.
3800
aac0c6e3
MR
38012008-10-19 Martin Rudalics <rudalics@gmx.at>
3802
3803 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
3804 Mention kill-buffer in doc-string.
3805 (Fset_window_buffer): Reinsert tem check removed in last commit.
3806 (Fenlarge_window, Fshrink_window): Have argument names and
3807 doc-string follow Elisp manual more closely.
3808
38092008-10-18 Eli Zaretskii <eliz@gnu.org>
3810
3811 * fileio.c (Fset_file_modes): Doc fix.
3812
38132008-10-18 Martin Rudalics <rudalics@gmx.at>
3814
3815 * window.c (Fwindow_width, Fset_window_start)
3816 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
f5385255
SM
3817 (Fdelete_windows_on, Freplace_buffer_in_windows):
3818 Make doc-strings follow code and Elisp manual more closely.
aac0c6e3
MR
3819 (Fwindow_dedicated_p): Make window argument optional.
3820 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
3821 (Fset_window_buffer): Respect any non-nil dedicated value for
3822 window. Rename "buffer" argument to "buffer_or_name".
3823
38242008-10-18 Ulrich Mueller <ulm@gentoo.org>
3825
3826 * m/sh3.h: New file, machine description for SuperH.
3827
38282008-10-17 Martin Rudalics <rudalics@gmx.at>
3829
3830 * window.c (Fsplit_window): Rename arg horflag to horizontal.
3831
38322008-10-17 Kenichi Handa <handa@m17n.org>
3833
3834 * ftfont.c (ftfont_otf_features): Fix indexing
3835 gsub_gpos->FeatureList.Feature. Check the validity of indices.
3836
38372008-10-16 Magnus Henoch <mange@freemail.hu>
3838
3839 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
3840 (Fdbus_call_method_asynchronously): Ditto.
3841 This change makes C-h f display the argument list.
3842
38432008-10-16 Chong Yidong <cyd@stupidchicken.com>
3844
3845 * fileio.c (Fexpand_file_name): Doc fix.
3846
3847 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
3848 of :foreground and :background equivalent to unspecified (20.x
3849 compatibility).
3850
38512008-10-15 Eli Zaretskii <eliz@gnu.org>
3852
3853 * buffer.c (syms_of_buffer): Doc fix.
3854
38552008-10-14 Kenichi Handa <handa@m17n.org>
3856
3857 * font.c (font_clear_prop): When clearing font width, clear the
3858 average width field too.
3859
38602008-10-12 Andreas Schwab <schwab@suse.de>
3861
3862 * ftfont.c (ftfont_shape_by_flt): Make static.
3863 * ftfont.h (ftfont_shape_by_flt): Don't declare.
3864
3865 * font.c: Don't include <m17n-flt.h>.
3866
38672008-10-10 Eli Zaretskii <eliz@gnu.org>
3868
3869 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
3870
38712008-10-09 Eli Zaretskii <eliz@gnu.org>
3872
3873 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
3874 away code.
3875
38762008-10-09 Chong Yidong <cyd@stupidchicken.com>
3877
3878 * dispnew.c (update_text_area): Avoid looping due to large glyph
3879 overhangs (bug#1070).
3880
38812008-10-09 Kenichi Handa <handa@m17n.org>
3882
3883 * fontset.c (face_for_char): If face->fontset is negative, just
3884 return ascii_face.
3885
f5385255
SM
3886 * font.c (font_delete_unmatched): Fix previous change.
3887 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
aac0c6e3
MR
3888
38892008-10-09 Martin Rudalics <rudalics@gmx.at>
3890
3891 * frame.c (Fraise_frame): On text-only terminals select frame in
3892 order to make it visible. (Bug#1061)
3893
38942008-10-08 Chong Yidong <cyd@stupidchicken.com>
3895
3896 * fontset.c (fontset_find_font): Check frame validity.
3897
38982008-10-07 Chong Yidong <cyd@stupidchicken.com>
3899
a9b555d3 3900 * gtkutil.c (xg_display_open): Reset default display if none exists.
aac0c6e3
MR
3901 (xg_display_close): Allow Emacs to close all displays (bug#985).
3902
39032008-10-06 Andreas Schwab <schwab@suse.de>
3904
f5385255 3905 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
aac0c6e3
MR
3906
39072008-10-06 Chong Yidong <cyd@stupidchicken.com>
3908
f5385255 3909 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
aac0c6e3 3910
a9b555d3 3911 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
aac0c6e3
MR
3912
3913 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
3914 during initialization.
3915
39162008-10-04 Eli Zaretskii <eliz@gnu.org>
3917
3918 * xdisp.c (redisplay_internal): If frame switched, redisplay the
3919 whole thing on MSDOS frames as well as on a TTY.
3920
3921 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
3922 well as for TTY.
3923 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
3924 well as on a TTY.
3925
3926 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
3927 as well as for TTY.
3928
3929 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
3930
3931 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
3932 MSDOS frames as well.
3933
39342008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3935
3936 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
3937 correct arguments.
b71ac3dd 3938 * menu.c (find_and_return_menu_selection): Add cast.
aac0c6e3
MR
3939
39402008-10-03 Glenn Morris <rgm@gnu.org>
3941
3942 * emacs.c (USAGE1): Add --daemon.
3943
39442008-10-02 Eli Zaretskii <eliz@gnu.org>
3945
3946 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
3947 100, so it's in percents as advertised.
3948
39492008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
3950
3951 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
3952 (ns_output.current_cursor, ns_output.desired_cursor)
3953 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
3954 (FRAME_NEW_CURSOR_COLOR): Remove.
3955
3956 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
a9b555d3 3957 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
aac0c6e3
MR
3958 enumeration (HOLLOW_BOX_CURSOR, etc.).
3959
3960 * nsterm.m (ns_frame_rehighlight): Remove commented code.
3961 (draw_window_cursor): Simplify code.
f5385255
SM
3962 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
3963 Don't change cursor type. In latter, call rehighlight instead of doing
aac0c6e3 3964 updates manually.
a9b555d3
JB
3965 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
3966 Use core Emacs cursor types.
aac0c6e3 3967
b8ff72fa 3968 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
aac0c6e3
MR
3969
39702008-10-02 Martin Rudalics <rudalics@gmx.at>
3971
3972 * process.c (Faccept_process_output): Fix doc-string.
3973
39742008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3975
3976 * gmalloc.c (__sbrk): Also define for uClibc.
3977
3978 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
3979 for uClibc.
3980
39812008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3982
3983 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
3984 styles.
3985 (nsfont_open): Reenable the cache.
3986
39872008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
3988
3989 * font.c (font_matching_entity): Reflect ATTRS in font selection.
3990 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
3991
39922008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
3993
3994 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
3995 a suspended terminal.
3996
39972008-09-30 Michael Albinus <michael.albinus@gmx.de>
3998
3999 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
4000
40012008-09-30 Eli Zaretskii <eliz@gnu.org>
4002
4003 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
4004
40052008-09-30 Chong Yidong <cyd@stupidchicken.com>
4006
4007 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
4008 in a continued line coincides with a line beginning.
4009
40102008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4011
4012 * nsfont.m (nsfont_trait_distance): Fix bug.
4013 (nsfont_list): Return a list rather than a vector (syncs with Handa
4014 changes of 2008-05-14).
4015 (nsfont_open): Improve logging.
4016
40172008-09-29 Andreas Schwab <schwab@suse.de>
4018
4019 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
4020
40212008-09-28 Martin Rudalics <rudalics@gmx.at>
4022
4023 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
4024 name as char-resolve-modifiers.
4025 Reported by: Markus Triska <markus.triska@gmx.at>
4026
40272008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
4028
4029 * dispnew.c (init_display): Return earlier when running as a daemon.
4030
40312008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
4032
4033 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
4034
40352008-09-27 Eli Zaretskii <eliz@gnu.org>
4036
4037 * composite.c (Fcomposition_get_gstring)
4038 (Fcompose_region_internal, Fcompose_string_internal)
4039 (Ffind_composition_internal): Doc fix.
4040 (syms_of_composite) <compose-chars-after-function>: Doc fix.
4041 (syms_of_composite) <auto-composition-function>: Doc fix.
4042 (syms_of_composite) <composition-function-table>: Doc fix.
4043
40442008-09-25 Chong Yidong <cyd@stupidchicken.com>
4045
4046 * search.c (wordify): New argument for lax word-ends.
4047 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
4048
40492008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
4050
4051 * lisp.h (is_daemon): Declare.
4052 * dispnew.c (init_display): Do not try to initialize the terminal
4053 when running as a daemon.
4054
40552008-09-22 Chong Yidong <cyd@stupidchicken.com>
4056
4057 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
4058 x_display_pixel_height.
4059
40602008-09-22 Martin Rudalics <rudalics@gmx.at>
4061
4062 * undo.c (record_point): Don't call Fundo_boundary for first
4063 change. (Bug#731)
4064
40652008-09-22 Juanma Barranquero <lekktu@gmail.com>
4066
4067 * emacs.c (Fdaemonp): Doc fix.
4068
40692008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
4070
4071 * emacs.c (main): Place #ifdef in the proper place.
4072
40732008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
4074
4075 * emacs.c (standard_args): Add --daemon.
4076 (main): Disconnect from the terminal when --daemon is passed.
4077 (is_daemon): New variable.
4078 (Fdaemonp): New function.
4079 (syms_of_emacs): Defsubr it.
4080
40812008-09-20 Chong Yidong <cyd@stupidchicken.com>
4082
4083 * xdisp.c (get_next_display_element): Handle string display
4084 correctly when checking for the end of a box run.
4085
40862008-09-20 Glenn Morris <rgm@gnu.org>
4087
4088 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
4089 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
4090 (Frename_file): Avoid copying to trash if a rename involves
4091 a delete. (Bug#964).
4092
40932008-09-20 Eli Zaretskii <eliz@gnu.org>
4094
4095 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
4096 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
4097 frames as well as termcap frames.
4098 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
4099 get_named_tty.
4100
41012008-09-19 Eli Zaretskii <eliz@gnu.org>
4102
4103 * process.c (procfs_system_process_attributes): Fix cmdline in
4104 case /proc/PID/cmdline is empty.
4105
4106 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
4107 x_display_pixel_height.
4108
41092008-09-19 Juanma Barranquero <lekktu@gmail.com>
4110
4111 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
4112
4113 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
4114 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
4115
41162008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
4117
4118 * dispextern.h (struct it): Move line_wrap away from the middle of
4119 bitfields. Move voffset in struct iterator_stack_entry after the
4120 bitfields. Move tab_width near after another short.
4121
41222008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
4123
4124 * frame.h (struct frame): Move alpha from the middle of bitfields.
4125
4126 * window.h (struct window): Move frozen_window_start_p after the
4127 rest of the bitfields to reduce padding.
4128
41292008-09-18 Chong Yidong <cyd@stupidchicken.com>
4130
4131 * xterm.h (x_display_info): Remove `height' and `width' members.
4132
4133 * nsterm.h (ns_display_info): Remove `height' and `width' members.
4134
4135 * w32term.h (w32_display_info): Remove `height', `width',
4136 `height_in', and `width_in' members.
4137
b8ff72fa
SM
4138 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4139 New functions.
aac0c6e3
MR
4140 (x_calc_absolute_position): Use them.
4141 (x_term_init): Omit removed `height' and `width' members.
4142
b8ff72fa
SM
4143 * w32term.c (x_display_pixel_height, x_display_pixel_width):
4144 New functions.
aac0c6e3
MR
4145 (w32_read_socket, x_calc_absolute_position): Use them.
4146 (w32_initialize_display_info, w32_term_init): Omit removed members
4147 of w32_display_info.
4148
b8ff72fa
SM
4149 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
4150 New functions.
4151 (ns_initialize_display_info): Omit removed members of ns_display_info.
aac0c6e3 4152
b8ff72fa
SM
4153 * xterm.c (x_display_pixel_height, x_display_pixel_width):
4154 New functions.
aac0c6e3
MR
4155 (x_calc_absolute_position): Use them.
4156 (x_term_init): Omit removed `height' and `width' members.
4157
4158 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
b8ff72fa
SM
4159 (compute_tip_xy):
4160 * frame.c (x_fullscreen_adjust):
aac0c6e3
MR
4161 * xmenu.c (menu_position_func): Use x_display_pixel_height and
4162 x_display_pixel_width.
4163
41642008-09-18 Kenichi Handa <handa@m17n.org>
4165
4166 * composite.c (fill_gstring_header): Don't check FROM and TO here.
4167 (composition_compute_stop_pos): Fix handling of static composition.
4168 (Fcomposition_get_gstring): Check FROM and TO at first.
4169
41702008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
4171
46e722a9 4172 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
aac0c6e3
MR
4173 mixup (YAILOM).
4174
41752008-09-17 Chong Yidong <cyd@stupidchicken.com>
4176
4177 * indent.c (Fvertical_motion): Use position reported by iterator
4178 instead of PT for determining screen motion (bug#943).
4179
41802008-09-17 Romain Francoise <romain@orebokech.com>
4181
4182 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
4183
41842008-09-17 Kenichi Handa <handa@m17n.org>
4185
4186 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
4187
4188 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
4189 if necessary.
4190
41912008-09-16 Kenichi Handa <handa@m17n.org>
4192
4193 * coding.c (make_conversion_work_buffer): Avoid calling
4194 Fget_buffer_create if it is not necessary.
4195
41962008-09-15 Martin Rudalics <rudalics@gmx.at>
4197
4198 * window.c (Fselect_window): Don't update window_select_count and
4199 use_time when norecord is not nil.
4200
42012008-09-14 Kenichi Handa <handa@m17n.org>
4202
4203 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
4204 specpdl_ptr.
4205
42062008-09-12 Kenichi Handa <handa@m17n.org>
4207
4208 * indent.c (scan_for_column): Don't handle automatic composition
4209 if the current buffer is not associated with a window.
4210
4211 * composite.c (composition_reseat_it): If the current buffer is
4212 not associated with a window, ignore the automatic composition.
4213 (find_automatic_composition): Likewise.
4214
42152008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4216
4217 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
4218 (Fgpm_mouse_stop): Use it.
4219 * termhooks.h (close_gpm): Declare.
4220 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
4221 connection if Gpm_GetEvent fails.
4222
4223 * window.c (set_window_buffer): Always preserve current-buffer.
4224
42252008-09-12 Glenn Morris <rgm@gnu.org>
4226
4227 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
4228
42292008-09-11 Glenn Morris <rgm@gnu.org>
4230
4231 * charset.c (charset-map-path): Doc fix.
4232
42332008-09-10 Kenichi Handa <handa@m17n.org>
4234
4235 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
4236
4237 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
4238 compose a grapheme cluster with the preceding base glyph.
4239
4240 * composite.c (composition_compute_stop_pos): Fix previous change.
4241 Reset cmp_it->id to -1 at first.
4242
42432008-09-10 Glenn Morris <rgm@gnu.org>
4244
4245 * Makefile.in (character.o, chartab.o): Fix config.h typo.
4246
42472008-09-09 Chong Yidong <cyd@stupidchicken.com>
4248
4249 * keyboard.c (read_key_sequence): Reapply translation maps when
4250 switching keyboards.
4251
42522008-09-09 Kenichi Handa <handa@m17n.org>
4253
4254 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
4255 characters.
4256
4257 * composite.c (FORWARD_CHAR): Fix calculation
4258 of (POSITION).pos_byte.
4259 (composition_compute_stop_pos): Limit the search of composition to
4260 at most 500 characters ahead. If we reach the limit or find a
4261 newline, set cmp_it->ch to -2 and return 0.
4262 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
4263
42642008-09-08 Kenichi Handa <handa@m17n.org>
4265
4266 * indent.c (Fvertical_motion): Be sure to set
4267 it_overshoot_expected if it.cmp_it.id is non-negative.
4268
42692008-09-07 Andreas Schwab <schwab@suse.de>
4270
4271 * callproc.c (Fcall_process): Don't hold references to string data
4272 across garbage collection. Move initialisation of new_argv down
4273 to avoid compiler bug.
4274
42752008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4276
4277 * process.c (Fsystem_process_attributes): Doc fix.
4278
42792008-09-07 Chong Yidong <cyd@stupidchicken.com>
4280
4281 * callproc.c (Fcall_process): Canonicalize current directory name.
4282
4283 * xdisp.c (move_it_to): When moving by vpos, ensure that the
4284 iterator advances to the next line if the current line ends in a
4285 continued tab.
4286
42872008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
4288
4289 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
4290 member to point to cmp_from.
4291
4292 * xdisp.c: Doc fix for references to gidx data member.
4293
42942008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
4295
4296 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
4297
42982008-09-07 Kenichi Handa <handa@m17n.org>
4299
4300 * composite.c (FORWARD_CHAR): Check STOP after
4301 incrementing (POSITION).pos.
4302
43032008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
4304
4305 * process.c (Fsystem_process_attributes): Doc fix.
4306
43072008-09-06 Chong Yidong <cyd@stupidchicken.com>
4308
4309 * keyboard.c (Ftop_level): Doc fix.
4310
43112008-09-06 Eli Zaretskii <eliz@gnu.org>
4312
4313 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
4314 minibuffer, don't let lower part of menu invade the echo area.
4315
4316 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
4317 "char *q" to access menu text and advance through it. Revert the
4318 change that displayed ">" instead of ASCII character 0x10.
4319
43202008-09-05 Eli Zaretskii <eliz@gnu.org>
4321
4322 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
4323 toggle boxes and radio buttons on MS-DOS as well.
4324
43252008-09-05 Kenichi Handa <handa@m17n.org>
4326
4327 * composite.c (autocmp_chars): Check lookback count.
4328 (composition_compute_stop_pos): Set cmp_it->lookback.
4329 (composition_reseat_it): Check lookback count.
4330 (struct position_record): New struct.
4331 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
4332 (find_automatic_composition): New function.
4333 (composition_adjust_point): Use find_automatic_composition.
4334
4335 * dispextern.h (struct composition_it): New member lookback.
4336
43372008-09-02 Chong Yidong <cyd@stupidchicken.com>
4338
4339 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
4340 if moving by a single line.
4341
43422008-09-02 Andreas Schwab <schwab@suse.de>
4343
4344 * xterm.c (x_delete_display): Fix merge error.
4345
4346 * fileio.c (Fexpand_file_name): Remove unused variables.
4347
43482008-09-02 Eli Zaretskii <eliz@gnu.org>
4349
4350 * fileio.c (Fexpand_file_name): Copy argument `name' into local
4351 storage on all platforms, not just on DOS_NT.
4352
43532008-09-02 Jason Rumney <jasonr@gnu.org>
4354
b8ff72fa
SM
4355 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
4356 Ensure mouse is not grabbed after menu is finished.
aac0c6e3
MR
4357
43582008-09-01 Chong Yidong <cyd@stupidchicken.com>
4359
4360 * xfaces.c (Finternal_set_alternative_font_family_alist)
4361 (Finternal_set_alternative_font_registry_alist): Properly copy
4362 entire alist structure.
4363
43642008-09-01 Kenichi Handa <handa@m17n.org>
4365
d66c0241 4366 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
aac0c6e3 4367 representative chars of the script is a vector.
d66c0241
JB
4368 (ftfont_list): Handle the case where the representative chars of
4369 the script is a vector.
aac0c6e3
MR
4370
4371 * character.c (syms_of_character): Docstring of
4372 script-representative-chars fixed.
4373
43742008-08-31 Eli Zaretskii <eliz@gnu.org>
4375
4376 * msdos.c (BUILD_CHAR_GLYPH): New macro.
4377 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
4378 the menu. Allocate larger buffer for `text', to account for
4379 possible ^C characters.
4380
43812008-08-31 Martin Rudalics <rudalics@gmx.at>
4382
4383 * xdisp.c (prepare_menu_bars): Don't call
4384 Vwindow_size_change_functions with arg Qt.
4385
43862008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
4387
4388 * font.h (font_range):
4389 * fileio.c (report_file_error):
46e722a9
SM
4390 * composite.c (composition_update_it): Yet another int/Lisp_Object
4391 mixup (YAILOM).
aac0c6e3
MR
4392
43932008-08-30 Glenn Morris <rgm@gnu.org>
4394
4395 * data.c (Fmake_variable_frame_local): Doc fix.
4396
4397 * frame.c (Fmodify_frame_parameters): Doc fix.
4398
43992008-08-30 Eli Zaretskii <eliz@gnu.org>
4400
4401 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
4402 needed by GetTokenInformation.
4403 (w32_system_process_attributes): Check return values of all system
4404 APIs.
4405
4406 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
4407 only when the state changes.
4408 (IT_update_begin, IT_update_end): Add termscript trace.
4409
4410 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
4411 clipboard is unavailable. Set dst to NULL if it doesn't point to
4412 malloc'ed data.
4413 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
4414 passing random values to xfree.
4415
4416 * dispnew.c (init_display): Set `tty's association in frame's
b8ff72fa 4417 parameters alist to the name of the terminal device, if that is known.
aac0c6e3
MR
4418
44192008-08-29 Jason Rumney <jasonr@gnu.org>
4420
4421 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
4422
44232008-08-29 Eli Zaretskii <eliz@gnu.org>
4424
4425 * composite.c (fill_gstring_body): Avoid compiler warnings.
4426
4427 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
4428 LGLYPH_SET_CODE to avoid compiler warnings.
4429
2ae37cf0 4430 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
aac0c6e3
MR
4431
4432 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
4433
4434 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
4435 LGLYPH_SET_CODE.
4436
44372008-08-29 Kenichi Handa <handa@m17n.org>
4438
4439 * fileio.c (report_file_error): Don't downcase the first character
4440 of errstring if it is still unibyte.
4441
44422008-08-29 Kenichi Handa <handa@m17n.org>
4443
4444 These changes are to re-implement the automatic composition so
4445 that it doesn't use text properties.
4446
4447 * Makefile.in (ftfont.o): Depend on composite.h.
4448 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
4449
4450 * character.h (Vunicode_category_table): Extern it.
4451
4452 * character.c (Vunicode_category_table): New variable.
4453 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
4454
4455 * chartab.c (optimize_sub_char_table): Perform more greedy
4456 optimization.
4457
b8ff72fa
SM
4458 * composite.h (enum composition_method):
4459 Delete COMPOSITION_WITH_GLYPH_STRING.
aac0c6e3
MR
4460 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
4461 (Vcomposition_function_table): Extern it.
4462 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
4463 (composition_gstring_put_cache, composition_gstring_from_id)
4464 (composition_gstring_p, composition_gstring_width)
4465 (composition_compute_stop_pos, composition_reseat_it)
4466 (composition_update_it, composition_adjust_point): Extern them.
4467 (Fcomposition_get_gstring): EXFUN it.
4468
d66c0241 4469 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
aac0c6e3
MR
4470 (Vcomposition_function_table)
4471 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
b8ff72fa
SM
4472 (gstring_hash_table, gstring_work, gstring_work_headers):
4473 New variables.
aac0c6e3
MR
4474 (gstring_lookup_cache, composition_gstring_put_cache)
4475 (composition_gstring_from_id, composition_gstring_p)
4476 (composition_gstring_width, fill_gstring_header)
4477 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
4478 (composition_reseat_it, composition_update_it)
b8ff72fa 4479 (composition_adjust_point, Fcomposition_get_gstring): New functions.
aac0c6e3
MR
4480 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
4481 and gstring_work_headers. DEFVAR_LISP composition-function-table.
4482 Defsubr compostion_get_gstring.
4483
4484 * dispextern.h (struct glyph): New union u.cmp. Delete the member
4485 cmp_id.
4486 (struct glyph_string): Delete the member gidx. New members
4487 cmp_id, cmp_from, and cmp_to.
4488 (enum it_method): Delete GET_FROM_COMPOSITION.
4489 (struct composition_it): New struct.
4490 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
4491 Delete c, len, cmp_id, cmp_len in u.comp.
4492
4493 * font.h (enum lgstring_indices): Delete it.
b8ff72fa 4494 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
aac0c6e3 4495 (enum lglyph_indices): Likewise.
b8ff72fa 4496 (font_range): Adjust extern.
aac0c6e3
MR
4497 (font_fill_lglyph_metrics): Extern it.
4498
4499 * font.c (QCf): New variable.
4500 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4501 (font_prepare_composition): Delete this function.
4502 (font_range): Type and arguments changed.
4503 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
4504 (font_fill_lglyph_metrics): New function.
b8ff72fa 4505 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
aac0c6e3 4506 (syms_of_font): DEFSYM QCf. Delete defsubr for
b8ff72fa
SM
4507 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
4508 Defsubr Sfont_shape_gstring.
aac0c6e3
MR
4509
4510 * fontset.h (font_for_char): Extern it.
4511
4512 * fontset.c (font_for_char): New function.
4513
4514 * ftfont.c: Include composite.h.
4515 (ftfont_resolve_generic_family): Add langset "en" to pattern.
b8ff72fa 4516 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
aac0c6e3
MR
4517
4518 * indent.c: Include composite.h and dispextern.h.
4519 (check_composition): Delete this function.
4520 (scan_for_column): Handle composition by
4521 composition_compute_stop_pos, composition_reseat_it, and
4522 composition_update_it.
4523 (compute_motion): Likewise.
4524 (Fvertical_motion): Fix checking of composition.
4525
4526 * keyboard.c (adjust_point_for_property): Check composition by
4527 composition_adjust_point.
4528
b8ff72fa 4529 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
aac0c6e3
MR
4530 struct glyph_string.
4531
b8ff72fa
SM
4532 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
4533 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3
MR
4534 struct glyph.
4535 (produce_composite_glyph): Likewise.
4536
b8ff72fa
SM
4537 * w32term.c (x_draw_composite_glyph_string_foreground):
4538 Adjust for the change of struct glyph_string.
aac0c6e3
MR
4539 (x_draw_glyph_string): Likewise.
4540
4541 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
4542 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
4543
4544 * xdisp.c: Include font.h.
4545 (it_props): Delete the entry for Qauto_composed.
4546 (init_iterator): Initialize it->cmp_it.id to -1.
4547 (compute_stop_pos): Call composition_compute_stop_pos.
b8ff72fa 4548 (face_before_or_after_it_pos): Adjust for the change of struct it.
aac0c6e3
MR
4549 (handle_auto_composed_prop): Delete it.
4550 (handle_composition_prop): Handle only static composition.
4551 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
4552 from xassert. Initialize it->cmp_it.stop_pos.
b8ff72fa 4553 (push_it): Adjust for the change of struct it.
aac0c6e3
MR
4554 (pop_it): Likewise.
4555 (get_next_element): Delete next_element_from_composition.
4556 (CHAR_COMPOSED_P): New macro.
4557 (get_next_display_element): For automatic composition, get a face
4558 from the font in the glyph-string.
4559 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
b8ff72fa 4560 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
aac0c6e3
MR
4561 (next_element_from_string): Check if the character at the current
4562 position is composed by CHAR_COMPOSED_P.
4563 (next_element_from_buffer): Likewise.
d66c0241
JB
4564 (next_element_from_composition): Adjust for the change of struct it.
4565 Update it->cmp_it.
b8ff72fa
SM
4566 (dump_glyph): Adjust for the change of struct glyph.
4567 (fill_composite_glyph_string): Adjust for the change of struct
aac0c6e3
MR
4568 it and struct glyph. Don't handle automatic composition here.
4569 (fill_gstring_glyph_string): New function.
4570 (x_get_glyph_overhangs): Handle automatic composition.
b8ff72fa 4571 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
aac0c6e3
MR
4572 (BUILD_GSTRING_GLYPH_STRING): New macro.
4573 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
4574 automatic composition.
b8ff72fa 4575 (append_composite_glyph): Adjust for the change of struct it and
aac0c6e3 4576 struct glyph.
b8ff72fa 4577 (x_produce_glyphs): Adjust for the change of struct it.
aac0c6e3 4578
b8ff72fa 4579 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
aac0c6e3
MR
4580 the change of struct glyph_string.
4581 (x_draw_glyph_string): Likewise.
4582
45832008-08-29 Glenn Morris <rgm@gnu.org>
4584
4585 * buffer.c (word-wrap): Doc fix.
4586 * xdisp.c (truncate-partial-width-windows): Doc fix.
4587 Increase default to 50.
4588
45892008-08-29 Chong Yidong <cyd@stupidchicken.com>
4590
4591 * xdisp.c (update_tool_bar_unwind): New function.
4592 (update_tool_bar): Temporarily set selected frame before building
4593 tool-bar items.
4594
45952008-08-28 Michael Albinus <michael.albinus@gmx.de>
4596
4597 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
4598 snprintf, respectively.
4599 (xd_append_arg): Convert strings with Fstring_make_unibyte.
4600
46012008-08-28 Chong Yidong <cyd@stupidchicken.com>
4602
4603 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
4604 LDFLAGS to GNUstep CC invocation.
4605
46062008-08-27 Chong Yidong <cyd@stupidchicken.com>
4607
4608 * indent.c (Fvertical_motion): Revert last change. Handle the
4609 general case where we are moving forward, and PT spans multiple
4610 screen lines.
4611
4612 * eval.c (find_handler_clause): Temporarily increase
4613 max-lisp-eval-depth while printing the backtrace buffer, to
4614 guarantee that help-mode code can run.
4615
46162008-08-27 Eli Zaretskii <eliz@gnu.org>
4617
4618 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
4619 colors under -rv.
4620 (IT_set_frame_parameters): Don't swap foreground and background
4621 colors if `(reverse . t)' is present in the frame properties.
4622 (internal_terminal_init): Call init_frame_faces only for the
4623 initial frame.
4624
46252008-08-27 Andreas Schwab <schwab@suse.de>
4626
4627 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
4628
46292008-08-27 Andreas Schwab <schwab@suse.de>
4630
4631 * search.c (search_buffer): Set char_base to zero only at the end.
4632
46332008-08-27 Kenichi Handa <handa@m17n.org>
4634
b8ff72fa 4635 * fileio.c (report_file_error): Fix handling of multibyte error string.
aac0c6e3
MR
4636
46372008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
4638
4639 * xterm.c (x_term_init): Temporarily hide the partially
4640 initialized terminal while calling vendor-specific-keysyms.
4641
46422008-08-26 Eli Zaretskii <eliz@gnu.org>
4643
4644 * msdos.c (internal_terminal_init): Most initializations done only
4645 once, especially initial_screen_colors[] and termscript open.
4646
46472008-08-26 Chong Yidong <cyd@stupidchicken.com>
4648
4649 * eval.c (Fcondition_case): Doc fix.
4650
4651 * widgetprv.h (EmacsFramePart): Change font member to the new font
4652 struct.
4653
4654 * widget.c: Include character.h and font.h for XSETFONT.
4655 (setup_frame_gcs): Compute X font id from font struct, just once.
4656
46572008-08-26 Eli Zaretskii <eliz@gnu.org>
4658
4659 * term.c (get_named_tty): Fix last change.
4660
46612008-08-26 Chong Yidong <cyd@stupidchicken.com>
4662
4663 * indent.c (Fvertical_motion): If moving forward starting from a
b8ff72fa 4664 multi-line string, move the iterator to the last line of that string.
aac0c6e3
MR
4665
46662008-08-25 Eli Zaretskii <eliz@gnu.org>
4667
4668 * frame.c (do_switch_frame): Mark previously displayed frame as
4669 obscured for FRAME_MSDOS_P frames as well.
4670
46712008-08-24 Eli Zaretskii <eliz@gnu.org>
4672
4673 * frame.c (make_terminal_frame): Initialize f->terminal,
4674 f->terminal->reference_count, and scroll bars on MS-DOS as well.
4675 Set the top frame to newly created frame.
4676 (Fmake_terminal_frame): Reuse the_only_display_info.
4677
4678 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
4679 estimating available memory.
4680
b97439ce 46812008-08-23 David Reitter <david.reitter@gmail.com>
aac0c6e3
MR
4682
4683 * nsterm.m (ns_draw_window_cursor): Don't call
4684 NSDisableScreenUpdates and NSEnableScreenUpdates on
4685 non-NS_IMPL_COCOA systems.
4686
46872008-08-23 Andreas Schwab <schwab@suse.de>
4688
4689 * process.c (procfs_system_process_attributes): Fix use of
4690 uninitialized variables.
4691
46922008-08-23 Eli Zaretskii <eliz@gnu.org>
4693
4694 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
4695
4696 * dispnew.c (init_display): Remove MS-DOS specific conditions for
4697 calling tty-set-up-initial-frame-faces.
4698
b8ff72fa
SM
4699 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
4700 Allow MSDOS frames along with X frames.
aac0c6e3
MR
4701
4702 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
4703 addition to output_termcap.
4704
4705 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
4706
4707 * termchar.h (FRAME_TTY): Support output_msdos_raw.
4708 (struct tty_display_info) [MSDOS]: Add fields related to mouse
4709 highlight.
4710
4711 * process.c [!subprocesses]: Define QCname.
4712 (syms_of_process): Intern and staticpro it.
4713
4714 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
b8ff72fa
SM
4715 Adjust for changes in encoding/decoding routines.
4716 Use encode_coding_object and decode_coding_object instead of
aac0c6e3
MR
4717 encode_coding and decode_coding.
4718
b8ff72fa 4719 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
aac0c6e3
MR
4720
4721 * dosfns.c: Include frame.h before termhooks.h.
4722 (dos_cleanup): Use CURTTY ()->termscript instead of a global
4723 variable termscript.
4724
4725 * s/msdos.h (USER_FULL_NAME): Define.
4726 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
4727
4728 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
4729 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
4730 pw->pw_gecos.
4731
4732 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
4733 SELECTED_FRAME as additional (1st) argument.
4734 (tty_read_avail_input): Handle output_msdos_raw in
4735 addition to output_termcap.
4736
4737 * msdos.c: Include frame.h before termhooks.h.
4738 (mouse_on, mouse_off, mouse_moveto, mouse_init)
4739 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
4740 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
4741 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
4742 (IT_set_terminal_modes, IT_reset_terminal_modes)
4743 (IT_set_frame_parameters): Use tty->termscript instead of a global
4744 variable termscript.
4745 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
4746 global variable terminal_coding. Don't refer to
4747 Vnonascii_translation_table.
4748 (internal_terminal_init): Set Vwindow_system in current_kboard.
4749 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
4750 Announce date and time of session start, if termscript is open.
4751 Don't zero out the_only_display_info (it is done in
b8ff72fa
SM
4752 term.c:init_tty). Open termscript only of not already open.
4753 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
aac0c6e3
MR
4754 here instead of dos_ttraw. Don't initialize display if this is an
4755 initial tty. Don't set FRAME_FONT.
4756 (Vwindow_system_version): Bump to 23.
4757 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
4758 is available, set up mouse_position_hook.
4759 (dos_ttraw, IT_set_terminal_modes): If called with initial
4760 terminal, do nothing.
4761 (IT_set_frame_parameters): Handle the Qtty_type frame
4762 parameter by calling internal_terminal_init.
4763 (dos_set_window_size, show_mouse_face)
4764 (clear_mouse_face, IT_note_mode_line_highlight)
4765 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
4766 (dos_rawgetc): Use tty_display_info instead of x_display_info.
4767 (initialize_msdos_display): New function.
4768 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
4769 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
4770 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
4771 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
b8ff72fa 4772 Accept additional argument: a pointer to a frame. Update all callers.
aac0c6e3
MR
4773 (request_sigio, unrequest_sigio): Don't define, now defined on
4774 sysdep.c.
4775 (IT_write_glyphs): Rewrite to use encode_terminal_code.
4776
4777 * term.c [MSDOS]: Include msdos.h.
4778 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
4779 conditional to DOS_NT. Allow only one call to this function in a
4780 session. Don't allocate a new struct tty_display_info; instead,
4781 reuse the_only_display_info. Call get_tty_size to get screen
4782 dimensions. Call init_baud_rate to set bad_rate.
4783 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
4784 (Fsuspend_tty) [MSDOS]: Don't close input and output.
b8ff72fa 4785 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
aac0c6e3
MR
4786 (get_tty_terminal, get_named_tty, Ftty_type)
4787 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
4788 output_termcap.
b8ff72fa
SM
4789 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
4790 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
2ae37cf0 4791 only when subprocesses are supported.
aac0c6e3
MR
4792
4793 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
4794 f->output_data.x.
4795 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
4796 terminal devices.
4797
5582fbc7 4798 * msdos.h: Remove definition of struct x_display_info and struct
aac0c6e3
MR
4799 x_output.
4800 (FRAME_FONT): Use output_data.tty.
4801 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
b8ff72fa
SM
4802 (struct x_display_info): Rename from display_info. Update all users in
4803 msdos.c.
aac0c6e3 4804 (struct x_output): Remove background_pixel and foreground_pixel.
b8ff72fa 4805 (the_only_display_info): Rename from the_only_x_display.
aac0c6e3
MR
4806 (dos_ttraw): Update prototype.
4807
4808 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
4809 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
4810
48112008-08-23 Jason Rumney <jasonr@gnu.org>
4812
4813 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
4814 (fn_TIFFSetDirectory): New library function used.
4815 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
4816 (tiff_load): Use :index to select among multiple images. Set count
4817 property when multiple images exist.
4818 (gif_format): Use :index, not :image.
4819
48202008-08-23 Chong Yidong <cyd@stupidchicken.com>
4821
4822 * xdisp.c (try_scrolling): Check INT_MAX instead of
4823 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
4824 to obtain INT_MAX.
4825
48262008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
4827
4828 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
4829
48302008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
4831
4832 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
4833 GNUstep library location.
4834
48352008-08-21 Chong Yidong <cyd@stupidchicken.com>
4836
4837 * xfaces.c (x_update_menu_appearance): Check validity of menu font
4838 before using it.
4839
4840 * puresize.h (BASE_PURESIZE): Increase to 1250000.
4841
48422008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4843
4844 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
4845 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
4846 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
4847 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
4848 (EmacsApp-cursor_blink_handler): Remove declaration.
4849 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
4850 match 01 Feb 2008 changes in xterm.c.
4851 (ns_read_socket): Add cast to avoid warning.
4852 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
4853 GNUstep.
4854
48552008-08-20 Chong Yidong <cyd@stupidchicken.com>
4856
4857 * xselect.c (x_get_foreign_selection): Return nil if desired
4858 selection could not be obtained, instead of signalling an error.
4859
48602008-08-20 David Reitter <david.reitter@gmail.com>
4861
4862 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
4863 * nsterm.m: Remove ns-specific code for cursor blinking.
4864 (ns_draw_window_cursor): Clear cursor properly rather than
4865 redrawing the area. Respect width of bar cursors.
4866 These changes enable the use of generic blink-cursor-mode and
4867 generic cursor types in NS and support smooth cursor movements (do
4868 not blink off after command).
4869 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
4870 Nextstep, too.
4871
48722008-08-19 Kenichi Handa <handa@m17n.org>
4873
4874 * font.c (Vfont_log_deferred): New variable.
4875 (font_add_log): Check Vfont_log_deferred.
4876 (font_deferred_log): New function.
4877
4878 * font.h (font_deferred_log): Extern it.
4879
4880 * fontset.c (reorder_font_vector): Use encoding charset of fonts
4881 for sorting.
4882 (face_for_char): Use deferred log.
4883
48842008-08-18 Kenichi Handa <handa@m17n.org>
4885
4886 * fontset.c (face_for_char): Add font log.
4887
4888 * font.c (font_add_log): Add the font properties :script, :lang,
4889 and :otf in the log.
4890
48912008-08-17 Chong Yidong <cyd@stupidchicken.com>
4892
4893 * xdisp.c: Remove dead code.
4894 (handle_invisible_prop, next_overlay_string): Defer call to
4895 setup_for_ellipsis.
4896 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
4897
48982008-08-15 Chong Yidong <cyd@stupidchicken.com>
4899
4900 * xfaces.c (lookup_derived_face): Properly handle possible zero
4901 return value of get_lface_attributes.
4902 (merge_faces): Don't tell lookup_derived_face to signal an error
4903 if face is not found.
4904
4905 * dired.c (Fdirectory_files): Doc fix.
4906
4907 * process.c (make_process): Initialize kill_without_query struct
4908 member.
4909
49102008-08-15 Eli Zaretskii <eliz@gnu.org>
4911
4912 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
4913 Alternative calculation of totphys for Visual Studio 6.
4914
4915 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
4916
4917 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
4918 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
4919 All users changed.
4920 (stat): Only root directory passed to GetDriveType. Allow RAM
4921 disk as well as local fixed disk when w32-get-true-file-attributes
4922 is set to `local'.
4923 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
4924 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
4925 (w32_cached_id, w32_add_to_cache): New functions.
4926 (get_name_and_id): Look account names in the cache before calling
4927 lookup_account_sid.
4928 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
4929 New initialization flags.
4930 (globals_of_w32): Initialize them to zero.
4931 (w32_system_process_attributes): Use w32_cached_id and
4932 w32_add_to_cache.
4933
49342008-08-14 Lawrence Mitchell <wence@gmx.li>
4935
4936 * lread.c (Fread_char, Fread_char_exclusive): If no character
4937 event is read before timeout is reached, return nil, rather than
4938 converting to a number.
4939
49402008-08-14 Chong Yidong <cyd@stupidchicken.com>
4941
4942 * fns.c (use_dialog_box): Doc fix.
4943
4944 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
4945 on OS X.
4946
49472008-08-13 Chong Yidong <cyd@stupidchicken.com>
4948
4949 * frame.c (Qns_parse_geometry): New var.
4950 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
4951
49522008-08-11 Chong Yidong <cyd@stupidchicken.com>
4953
4954 * xdisp.c (x_produce_glyphs): Handle the case when font has no
4955 space character in calculating tabs.
4956
49572008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
4958
4959 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
4960
49612008-08-10 Glenn Morris <rgm@gnu.org>
4962
4963 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
4964 silence gcc "limited range of data type" warnings in some
4965 make_fixnum_or_float calls.
4966
49672008-08-09 Eli Zaretskii <eliz@gnu.org>
4968
4969 * w32.c (w32_system_process_attributes): If the process does not
4970 exist, return nil.
4971
4972 * w32.c: Include thelp32.h, psapi.h and coding.h.
4973 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
4974 declarations.
4975 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
4976 (Process32Next_Proc): New typedefs.
4977 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
4978 (g_b_init_process32_next, g_b_init_open_thread_token)
4979 (g_b_init_impersonate_self, g_b_init_revert_to_self)
4980 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
4981 (g_b_init_get_process_working_set_size)
4982 (g_b_init_global_memory_status_ex): New static variables.
4983 (globals_of_w32): Initialize them.
4984 (create_toolhelp32_snapshot, process32_first, process32_next)
4985 (open_thread_token, impersonate_self, revert_to_self)
4986 (get_process_memory_info, get_process_working_set_size)
4987 (global_memory_status, global_memory_status_ex): New wrapper
4988 functions.
4989 (w32_list_system_processes, w32_system_process_attributes)
4990 (enable_privilege, restore_privilege, ltime, process_times):
4991 New functions.
4992 (convert_time_raw): New function.
4993 (convert_time): Remove conversion of FILETIME into time in 100
4994 nsec units, call convert_time_raw instead.
4995
4996 * process.h (w32_list_system_processes, w32_system_process_attributes):
4997 Add prototypes.
4998 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
4999 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
5000 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
5001 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
5002
5003 * process.c (Fsystem_process_attributes): Doc fix.
5004
50052008-08-08 Chong Yidong <cyd@stupidchicken.com>
5006
5007 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
5008 a continued multi-char glyph; if so, advance to the actual glyph.
5009
50102008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
5011
5012 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
5013
5014 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
5015 (.m.o): Use it.
5016 * config.in: Regenerate.
5017
50182008-08-07 Chong Yidong <cyd@stupidchicken.com>
5019
5020 * xdisp.c (redisplay_window): Revert last change.
5021 (try_window): Check bottom scroll margin too.
5022
50232008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5024
5025 * config.in: Regenerate.
5026
5027 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
5028 -list-load-path-shadows'.
5029 (nsgui.h): Reduce number of things depending on it.
5030
50312008-08-06 Chong Yidong <cyd@stupidchicken.com>
5032
5033 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
5034 instead of window-end which does the wrong thing at eob.
5035 (try_cursor_movement): Minor optimization.
5036 (redisplay_window): If scroll margin is defined, don't assume
5037 window doesn't need scrolling.
5038
50392008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5040
5041 * config.in: Regenerate.
5042
5043 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
5044 (mostlyclean): Don't delete *.d under NS.
5045
5046 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
5047
50482008-08-06 Kenichi Handa <handa@m17n.org>
5049
5050 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
5051
50522008-08-06 Andreas Schwab <schwab@suse.de>
5053
5054 * config.in: Regenerate.
5055
50562008-08-05 Chong Yidong <cyd@stupidchicken.com>
5057
5058 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
5059 forcing a window start.
5060
5061 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
5062 (auto_save_1): Update modtime when auto-save-list-file-name is on.
5063
50642008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5065
5066 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
5067 argument.
5068
50692008-08-05 Juanma Barranquero <lekktu@gmail.com>
5070
5071 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
5072 <scroll-down-aggressively, before-change-functions>:
5073 <after-change-functions>: Reflow docstrings.
5074
50752008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5076 Ken Raeburn <raeburn@gnu.org>
5077
5078 Dock menu customization, based on a patch by Ken Raeburn, plus some
5079 other fixes.
5080 * nsmenu.m (dockMenu): New variable.
5081 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
5082
5083 * nsterm.h (dockMenu): Declare.
5084
5085 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
5086 (ns_term_init): Initialize dockMenu.
5087 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
5088 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
5089 left.
5090
5091 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
5092
50932008-08-04 Chong Yidong <cyd@stupidchicken.com>
5094
5095 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
5096
5097 * config.in: Regenerate.
5098
50992008-08-04 Seiji Zenitani <zenitani@mac.com>
5100
5101 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
5102
51032008-08-04 Chong Yidong <cyd@stupidchicken.com>
5104
5105 * nsterm.h (find_and_call_menu_selection): Fix prototype.
5106
51072008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
5108
5109 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
5110
5111 * keyboard.h: Comment an #endif.
5112
5113 * lisp.h (have_menus_p): Adjust comment.
5114
5115 * menu.c (find_and_return_menu_selection): Fix comparison with
5116 client_data.
5117
5118 * nsmenu.m (popup_activated_flag): New variable.
5119 (popup_activated): New function.
5120 (menu-or-popup-active-p): New exported lisp definition.
5121 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
5122 when popup done.
5123 (ns_popup_dialog): Set popup_activated_flag.
5124
5125 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
5126 version for GNUstep (handled by conditional typedef in nsterm.m).
5127 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
5128 in rgb.txt).
5129
5130 * process.c (init_process): Use DARWIN_OS, not DARWIN.
5131
5132 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
5133
5134 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
5135
5136 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
5137 shortcircuit if popup_activated like GTK and X toolkit.
5138
5139 * m/inter386.h: Change DARWIN to DARWIN_OS.
5140
5141 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
5142 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
5143 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
5144 comment on NO_SOCK_SIGIO.
5145
51462008-08-03 Chong Yidong <cyd@stupidchicken.com>
5147
5148 * nsterm.m (windowDidResize): Remove stopModal call.
5149
51502008-08-03 Andreas Schwab <schwab@suse.de>
5151
5152 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
5153 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
5154
51552008-08-02 Chong Yidong <cyd@stupidchicken.com>
5156
5157 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
5158 Don't use uninitialized pointer variable when using getrlimit.
5159
51602008-08-02 Jason Rumney <jasonr@gnu.org>
5161
5162 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
5163
51642008-08-02 Eli Zaretskii <eliz@gnu.org>
5165
5166 * alloc.c (NSTATICS): Bump to 0x640.
5167
5168 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
5169
5170 * lisp.h: Add prototype for directory_files_internal.
5171
5172 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
5173 New functions.
5174 (syms_of_process): Defsubr them. Add initializations for various
5175 Q* symbols used in procfs_system_process_attributes.
5176 (procfs_list_system_processes, procfs_system_process_attributes)
5177 [HAVE_PROCFS]: New functions.
5178 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
5179 (procfs_get_total_memory): New functions.
5180
51812008-08-01 Juanma Barranquero <lekktu@gmail.com>
5182
5183 * xfaces.c (Fx_load_color_file): Fix previous change;
5184 it is #ifdef WINDOWSNT, not WINDOWS_NT.
5185
51862008-08-01 Michael Albinus <michael.albinus@gmx.de>
5187
5188 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
5189
51902008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5191
5192 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
5193
51942008-08-01 Chong Yidong <cyd@stupidchicken.com>
5195
5196 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
5197
5198 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
5199 define NSApplicationDelegateReplySuccess.
5200 (EmacsView -converstationIdentifier): Use long instead of
5201 NSInteger for GNUstep, since it doesn't have NSInteger.
5202
5203 * xmenu.c: Revert last change.
5204
5205 * keyboard.h: Fix last change.
5206
52072008-08-01 Juanma Barranquero <lekktu@gmail.com>
5208
5209 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
5210 on Windows.
5211
52122008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5213
5214 Warning clearing and clean-up in NS port.
5215 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
5216 Add prototypes.
5217 * nsgui.h (FACE_DEFAULT): Remove, unused.
5218 (XGCValues): Change colors to unsigned long.
5219 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
5220 nsterm.m.
5221 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
5222 (ns_list_fonts): Remove, unused.
5223 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
5224 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
5225 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
5226 (nsfont_draw): Compare face colors to 0, not nil.
5227 * nsmenu.m (struct widget_value): Drop unneeded declaration.
5228 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
5229 (-addSubmenuWithTitle:): Use NSMenuItem class.
5230 (ns_popup_menu): Use NO, not NULL, for enabled setting.
5231 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
5232 (ns_clip_to_row): Make gc arg a BOOL.
5233 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
5234 ns_clip_to_row() call.
5235 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
5236 used). Cast FRAME_FONT assignments.
5237 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
5238 (ns_string_to_lispmod): Change arg to const char.
5239 (ns_term_init): Use NSMenuItem class.
5240 (EmacsApp -openFile:): Move to different section of file.
5241 (EmacsApp -application:openFiles:): Don't return a value, call
5242 -replyToOpenOrPrint:.
5243 (EmacsView -keyDown:): Fix up cast.
5244 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
5245 (EmacsView -menuDown:): Cast tag in call to
5246 find_and_call_menu_selection().
5247 (ns_list_fonts): Remove, unused.
5248 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
5249 (ns_fontname_to_xlfd): Make static.
5250 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
5251 Remove prototypes (now in keyboard.h).
5252 (next_menubar_widget_id): Remove, unused.
5253 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
5254 Remove prototypes (now in keyboard.h).
5255 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
5256
52572008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
5258
5259 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
5260 (floatfns.o): Depend on syssignal.h.
5261 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
5262
5263 * systty.h: Fix previous change that removed BSD_TERMIOS.
5264 Add comments to #ifdefs.
5265
52662008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
5267
5268 * w32fns.c (w32-load-color-file): Remove.
5269 (x-open-connection): Use renamed Fx_load_color_file.
5270 * xfaces.c (x-load-color-file): Add.
5271 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
5272 Emacs.clr.
5273 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
5274
52752008-07-31 Michael Albinus <michael.albinus@gmx.de>
5276
5277 * dbusbind.c (Fdbus_call_method_asynchronously)
5278 (Fdbus_method_error_internal): New defuns.
5279 (xd_read_message): Handle also reply messages.
5280 (Vdbus_registered_functions_table): Extend docstring.
5281
52822008-07-31 Juanma Barranquero <lekktu@gmail.com>
5283
5284 * keyboard.c (gobble_input): Fix previous change.
5285
52862008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5287
5288 * bitmaps/README:
5289 * xfns.c:
5290 * termcap.c:
5291 * term.c:
5292 * syswait.h:
5293 * systty.h:
5294 * systime.h:
5295 * syssignal.h:
5296 * sysdep.c:
5297 * process.h:
5298 * process.c:
5299 * print.c:
5300 * ndir.h:
5301 * lread.c:
5302 * keyboard.c:
5303 * getpagesize.h:
5304 * floatfns.c:
5305 * fileio.c:
5306 * emacs.c:
5307 * doc.c:
5308 * dispnew.c:
5309 * dired.c:
5310 * data.c:
5311 * callproc.c:
5312 * buffer.c:
5313 * README:
5314 * Makefile.in:
5315 * s/template.h:
5316 * s/msdos.h:
5317 * m/vax.h: Remove VMS support.
5318 * s/vms.h:
5319 * vlimit.h:
5320 * uaf.h:
5321 * temacs.opt:
5322 * param.h:
5323 * ioctl.h: Remove file.
5324
53252008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
5326
5327 * s/ms-w32.h (MULTI_KBOARD): Remove.
5328 * xterm.c:
5329 * xselect.c:
5330 * xfns.c:
5331 * window.c:
5332 * w32term.c:
5333 * w32fns.c:
5334 * terminal.c:
5335 * termhooks.h:
5336 * term.c:
5337 * sysdep.c:
5338 * keyboard.h:
5339 * keyboard.c:
5340 * frame.h:
5341 * frame.c:
5342 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
5343 * config.in: Regenerate.
5344
53452008-07-30 Jason Rumney <jasonr@gnu.org>
5346
5347 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
5348
5349 * w32font.c (w32font_encode_char): Leave as unicode if in range.
5350 (w32font_open_internal): Get unicode version of textmetrics.
5351 Don't enable or disable glyph indices here.
5352 (w32font_open): Disable use of glyph indices.
5353
5354 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
5355
53562008-07-30 Chong Yidong <cyd@stupidchicken.com>
5357
5358 * minibuf.c (Vread_buffer_function): Doc fix.
5359
53602008-07-30 John Paul Wallington <jpw@pobox.com>
5361
5362 * minibuf.c (read_buffer_completion_ignore_case): New var.
5363 (Fread_buffer): Use it.
5364
53652008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
5366
5367 * systty.h (sensemode): Remove empty #if. Remove reference to
5368 BSD_TERMIOS, unused.
5369
5370 * sysdep.c: Remove reference to DGUX.
5371 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
5372
5373 * config.in: Regenerate.
5374
53752008-07-30 Jason Rumney <jasonr@gnu.org>
5376
5377 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
5378
53792008-07-29 Jason Rumney <jasonr@gnu.org>
5380
5381 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
5382 is populated.
5383 (uniscribe_encode_char): Always use uniscribe.
5384 Avoid using context if cache is populated.
5385
53862008-07-29 Jan Djärv <jan.h.d@swipnet.se>
5387
5388 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
5389 open menu.
5390
5391 * gtkutil.c (menu_nav_ended): Remove.
5392 (create_menus): Remove signal connect for menu_nav_ended.
5393
53942008-07-28 Chong Yidong <cyd@stupidchicken.com>
5395
5396 * xdisp.c (redisplay_window): Check return value of
5397 compute_window_start_on_continuation_line before forcing a window
5398 start.
5399
54002008-07-28 Jason Rumney <jasonr@gnu.org>
5401
5402 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
5403
5404 * w32term.c (w32_enable_unicode_output, cleartype_active):
5405 Remove obsolete display options.
5406 (x_draw_glyph_string_background): Don't use old cleartype_active
5407 workaround.
5408 (w32_initialize): Remove cleartype_active initialization.
5409 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
5410
54112008-07-28 Andreas Schwab <schwab@suse.de>
5412
5413 * lisp.h (init_weak_hash_tables, syms_of_font)
5414 (xd_read_queued_messages, syms_of_dbusbind): Declare.
5415 (remove_hash_entry): Don't declare.
5416 * eval.c (maybe_call_debugger): Make static and move before use.
5417 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
5418 * xdisp.c: Include "gtkutil.h" if USE_GTK.
5419 * xterm.h (x_set_frame_alpha): Declare.
5420
54212008-07-28 Jan Djärv <jan.h.d@swipnet.se>
5422
5423 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
5424 (create_menus): Connect selection-done to menu_nav_ended.
5425
54262008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5427
5428 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
5429 Set Vx_resource_name to a fallback. Replace read of 'buffered'
5430 parameter with read of 'alpha' one.
5431 (Qns_frame_parameter): Remove.
5582fbc7 5432 * nsselect.m (selection-coding-system)
aac0c6e3
MR
5433 (next-selection-coding-system, Vselection_coding_system)
5434 (Vnext_selection_coding_system): Drop.
5435
54362008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
5437
5438 * nsfns.m (do-applescript, do_applescript): Rename to
5439 ns-do-applescript, ns_do_applescript, and move within file.
5440
54412008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
5442
5443 Remove support for Mac Carbon.
5444 * mactoolbox.c:
5445 * macterm.h:
5446 * macterm.c:
5447 * macselect.c:
5448 * macmenu.c:
5449 * macgui.h:
5450 * macfns.c:
5451 * mac.c: Remove file.
5452 * s/darwin.h:
5453 * m/intel386.h:
5454 * xfaces.c:
5455 * xdisp.c:
5456 * window.c:
5457 * tparam.c:
5458 * termhooks.h:
5459 * termcap.c:
5460 * term.c:
5461 * syssignal.h:
5462 * sysselect.h:
5463 * sysdep.c:
5464 * process.c:
5465 * lread.c:
5466 * lisp.h:
5467 * keyboard.c:
5468 * image.c:
5469 * fringe.c:
5470 * frame.h:
5471 * frame.c:
5472 * fontset.c:
5473 * font.h:
5474 * font.c:
5475 * fns.c:
5476 * fileio.c:
5477 * emacs.c:
5478 * dispnew.c:
5479 * dispextern.h:
5480 * config.in:
5481 * atimer.c:
2ae37cf0 5482 * Makefile.in: Remove code for Carbon.
aac0c6e3 5483
f0131492 54842008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
aac0c6e3
MR
5485
5486 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
5487
54882008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5489
5490 * macterm.h (kCGBitmapByteOrder32Host): New define for
5491 non-universal SDKs.
5492
5493 * image.c (mac_create_cg_image_from_image, image_load_image_io)
5494 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5495
5496 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
5497 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
5498
54992008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
5500
5501 * w32inevt.c: Include dispextern.h.
5502
55032008-07-26 Andreas Schwab <schwab@suse.de>
5504
5505 * print.c (print_object): Fix off-by-one in last change.
5506
55072008-07-25 Juanma Barranquero <lekktu@gmail.com>
5508
5509 * term.c (syms_of_term): Don't initialize default_orig_pair,
5510 default_set_foreground and default_set_background on Windows.
5511
55122008-07-25 Jason Rumney <jasonr@gnu.org>
5513
5514 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
5515 ScriptItemize. Clean up return value checking. Remove unused
5516 variables.
5517 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
5518 shaping engine.
5519
5520 * w32font.c (w32font_has_char): Handle the case where we can't
5521 determine the script for a character.
5522
55232008-07-25 Chong Yidong <cyd@stupidchicken.com>
5524
5525 * term.c (syms_of_term): Initialize default_orig_pair,
5526 default_set_foreground, and default_set_background.
5527
5528 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
5529 clash (bug#86).
5530 (getloadavg): Callers changed.
5531
5532 * image.c (svg_load_image): Fix last change.
5533 (svg_load_image): Use rsvg_handle_get_dimensions to check that
5534 image size is valid. Use g_object_unref instead of deprecated
5535 rsvg_handle_free to free rsvg handle.
5536 (x_from_xcolors): Don't initialize pixmap (silence compiler).
5537
55382008-07-25 Jason Rumney <jasonr@gnu.org>
5539
5540 * w32font.c (w32font_encode_char): Encode characters outside BMP as
5541 surrogates before looking up glyph index.
5542 (w32font_text_extents): Encode as surrogates if falling back to
5543 functions that need UTF-16 wide chars.
5544
5545 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
5546 BMP as surrogates before looking up glyph index.
5547
55482008-07-25 Chong Yidong <cyd@stupidchicken.com>
5549
5550 * image.c (svg_load_image): Check for failure in return value of
5551 rsvg_handle_get_pixbuf. Free rsvg handle when done.
5552
55532008-07-25 Jason Rumney <jasonr@gnu.org>
5554
5555 * w32font.c (Fx_select_font): Reverse sense of second arg.
5556
55572008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
5558
5559 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
5560 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
5561
5562 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
5563 (PURESIZE): Use it.
5564
55652008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
5566
5567 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
5568 * m/alpha.h (TEXT_END):
5569 * m/ibmrs6000.h (TEXT_END):
5570 * m/macppc.h (TEXT_END):
5571 * s/darwin.h (TEXT_END):
5572 * s/msdos.h (TEXT_END): Remove, unused.
5573 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
5574 * s/cygwin.h: Remove comment.
5575
5576 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
5577 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
5578 * m/intel386.h (DOT_GLOBAL_START):
5579 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
5580 (USG): Remove, file not used on USG platforms.
5581
5582 * Makefile.in (HAVE_X11): Remove empty #else.
5583
55842008-07-24 Andreas Schwab <schwab@suse.de>
5585
5586 * fileio.c (Finsert_file_contents): Properly adjust undo list
5587 after format conversion.
5588
55892008-07-24 Jan Djärv <jan.h.d@swipnet.se>
5590
5591 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
5592 (menu_nav_ended): Remove.
5593 (create_menus): Remove signal connect for menu_nav_ended.
5594 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
5595 create_menus.
5596 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
5597
55982008-07-23 Jason Rumney <jasonr@gnu.org>
5599
5600 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
5601 with opened font.
5602 (w32font_open): Set font type to gdi.
5603
5604 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
5605
56062008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
5607
5608 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
5609 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
5610 defines it.
5611 * unexec.c (ADDR_CORRECT): Define unconditionally.
5612
5613 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
5614
5615 * unexec.c: Remove code depending on !COFF and USG, the file is
5616 not used for such systems.
5617
5618 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
5619 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
5620 (LD_SWITCH_SYSTEM_1): Remove, update users.
5621
5622 * s/darwin.h (DATA_END):
5623 * m/intel386.h (DATA_END):
5624 * m/ibmrs6000.h (DATA_END):
5625 * m/alpha.h (DATA_END): Remove, unused.
5626
5627 * config.in: Regenerate.
5628 * s/ms-w32.h (subprocesses): Define unconditionally.
5629 * s/template.h (subprocesses): Update comment.
5630 * s/vms.h (subprocesses):
5631 * s/usg5-4.h (subprocesses):
5632 * s/hpux10-20.h (subprocesses):
5633 * s/gnu-linux.h (subprocesses):
5634 * s/cygwin.h (subprocesses):
5635 * s/bsd-common.h (subprocesses):
5636 * s/aix4-2.h (subprocesses):
5637 * s/darwin.h (subprocesses): Do not define, defined by default now.
5638
5639 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
5640 Remove all references.
5641 (temacs): Add GNUstep specific ld flags.
5642
5643 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
5644 similarly to what X does.
5645
56462008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5647
5648 * nsfns.m (x-list-fonts): Remove.
5649 (syms_of_nsfns): Drop the x-list-fonts declaration.
5650 * nsterm.m: Get rid of remaining "//" comments.
5651
56522008-07-22 Chong Yidong <cyd@stupidchicken.com>
5653
5654 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
5655
5656 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
5657 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
5658 (Fns_own_selection_internal, Fx_disown_selection_internal)
5659 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
5660
5661 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
5662 ... */' style of docstrings. Doc fixes.
5663
56642008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5665
5666 * terminfo.c (UP, BC, PC): Undo previous change.
5667
5668 * nsfns.m: Rename ns prefixed functions/variables to the
5669 corresponding x versions. Update references.
5670
56712008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
5672
5673 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
5674
56752008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
5676
5677 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
5678 Remove forwarding functions.
5679 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
5680 non-static.
5681 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
5682 non-static.
5683 (ns_frame_parm_handlers): Use the new names.
5684 (syms_of_nsfns): Move to the end of file.
5685
5686 * nsterm.m (syms_of_nsterm): Move to the end of file.
5687
5688 * dispnew.c (init_display): Remove code for X10.
5689
56902008-07-22 Jason Rumney <jasonr@gnu.org>
5691
5692 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
5693 bare drive.
5694
56952008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
5696
5697 * nsterm.m (syms_of_nsterm): Remove debugging println.
5698
56992008-07-22 David Reitter <david.reitter@gmail.com>
5700
5701 * nsfns.m (do_applescript, F_do_applescript): NS version of the
5702 Carbon implementation of the same functionality: execute arbitrary
5703 AppleScript code.
5704
57052008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
5706
5707 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
5708 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
5709 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5710 (Fx_display_mm_height, Fx_display_mm_width)
5711 (Fx_display_backing_store, Fx_display_visual_class)
5712 (Fx_display_save_under, Fx_open_connection)
5713 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
5714 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
5715 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5716 (Fx_display_pixel_width, Fx_display_pixel_height)
5717 (Fx_display_usable_bounds, Fx_display_planes)
5718 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
5719 ... */' style of docstrings.
5720
57212008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
5722
5723 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
5724 on this platform.
5725 (mips):
5726 * m/iris4d.h (mips): Do not define.
5727 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
5728
5729 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
5730
5731 * image.c:
5732 * nsfns.m:
5733 * nsselect.m:
5734 * nsterm.h:
5735 * nsterm.m: Rename ns prefixed functions/variables to the
5736 corresponding x versions. Update references.
5737
5738 * m/ibms390x.h (NO_REMAP): Do not undefine.
5739
5740 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
5741
57422008-07-21 Chong Yidong <cyd@stupidchicken.com>
5743
5744 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
5745 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
5746 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
5747 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
5748 (Fns_display_mm_height, Fns_display_mm_width)
5749 (Fns_display_backing_store, Fns_display_visual_class)
5750 (Fns_display_save_under, Fns_open_connection)
5751 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
5752 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
5753 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
5754 (Fns_display_pixel_width, Fns_display_pixel_height)
5755 (Fns_display_usable_bounds, Fx_display_planes)
5756 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
5757
57582008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
5759
5760 * print.c (print_object): Check print_depth before searching for
5761 circularities.
5762
57632008-07-21 Michael Albinus <michael.albinus@gmx.de>
5764
5765 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
5766 only sprintf.
5767
57682008-07-21 Kenichi Handa <handa@m17n.org>
5769
5770 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
5771
57722008-07-20 Andreas Schwab <schwab@suse.de>
5773
5774 * syntax.c (find_start_pos, find_start_value)
5775 (find_start_value_byte, find_start_begv, find_defun_start)
5776 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
5777
57782008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5779
5780 * s/sol2-3.h: Insert contents of s/sol2.h.
5781 (LD_SWITCH_SYSTEM): Remove redundant definition.
5782 * s/sol2.h: Remove, unused.
5783
57842008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5785
5786 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
5787
57882008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5789
5790 * Makefile.in (ns_appdir): Fix typo in find command.
5791
57922008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
5793
5794 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
5795
5796 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
5797 added not supported anymore.
5798
5799 * s/usg5-4-2.h (LIBS_SYSTEM):
5800 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
5801
5802 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5803 * s/lynxos.h (GETPGRP_NO_ARG):
5804 * s/hpux10-20.h (NO_SIOCTL_H):
5805 * s/gnu.h (GETPGRP_NO_ARG):
5806 * s/gnu-linux.h (NO_SIOCTL_H):
5807 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
5808 * s/cygwin.h (GETPGRP_NO_ARG):
5809 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
5810 (C_DEBUG_SWITCH): Remove duplicate definition.
5811
5812 * m/ibms390.h: Remove boilerplate comments.
5813
5814 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
5815
5816 * process.c (HAVE_SERIAL): Consolidate ifdefs.
5817 (wait_reading_process_output): Remove code for SunOS, platform not
5818 supported anymore. Use SOLARIS2 instead of sun.
5819
58202008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5821
5822 * font.c (font_open_by_name): Under NS, default lface height to zero.
5823 (font_open_for_lface): Under NS, set size based on frame fontsize.
5824 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
5825 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
5826
58272008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5828
5829 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
5830 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
5831 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
5832 YES/NO.
5833 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
5834 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
5835 * Makefile.in (clean): Clear out build destination dir.
5836
58372008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5838
5839 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
5840 xterm, xselect.
5841 * lisp.h: Remove declaration of hash_remove.
5842 * nsgui.h: Remove redefinitions of hash_remove.
5843 * fns.c (hash_remove): Rename to hash_remove_from_table.
5844
58452008-07-19 Seiji Zenitani <zenitani@mac.com>
5846
5847 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
5848 strdup() the family UTF8String before modifying it.
5849
58502008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
5851
5852 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
5853 NS_FACE_BACKGROUND with 0 instead of nil.
5854 * nsfont.m (nsfont_draw): Same.
5855
58562008-07-19 Chong Yidong <cyd@stupidchicken.com>
5857
5858 * nsfns.m (ns_set_background_color): Fix crash.
5859
58602008-07-18 Chong Yidong <cyd@stupidchicken.com>
5861
5862 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
5863
58642008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
5865
5866 * puresize.h (BASE_PURESIZE): Increase to 1240000.
5867
58682008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5869
5870 * gtkutil.c: Include <config.h> instead of "config.h".
5871
5872 * lisp.h (Foverlay_buffer): Add EXFUN.
5873
5874 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
5875 child process to complete child_setup. Undo 2005-09-21 change.
5876
5877 * s/darwin.h: Mention setsid after vfork.
5878
58792008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5880
5881 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
5882 Depend on macgui.h.
5883
5884 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
5885 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
5886
5887 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
5888 and f19.
5889 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
5890
5891 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
5892 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
5893 Remove enumerators.
5894
5895 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
5896 Check if FACE_FROM_ID returns NULL.
5897
58982008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
5899
5900 * w32inevt.c (change_frame_size): Remove extern declaration.
5901 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
5902 change_frame_size.
5903
59042008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5905
5906 * getloadavg.c: Revert last change (2008-07-15).
5907
59082008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
5909
5910 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
5911 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc) set
5912 from configure.
5913
59142008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
5915
5916 * s/sol2.h:
5917 * s/sol2-4.h: Reorganize conditionals.
5918
5919 * ecrt0.c: Remove code depending on m68000, not used anymore.
5920
5921 * fns.c (hash_remove): Make static.
5922 * lisp.h (hash_remove): Don't prototype.
5923
5924 * m/ibmrs6000.h:
5925 * m/ibms390x.h:
5926 * m/macppc.h: Remove boilerplate comments.
5927
5928 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
5929 Solaris, which does not need them.
5930
5931 * m/vax.h: Remove comments about unsupported systems.
5932
5933 * s/darwin.h: Reorganize ifdefs.
5934
59352008-07-17 Andreas Schwab <schwab@suse.de>
5936
5937 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
5938
59392008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
5940
5941 Use SDATA. Follow coding convention of placing operators at
5942 beginning of next line rather than end of previous line, and placing
5943 spaces around infix operators.
5944
5945 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
5946 in case it was defined already.
5947 USE @GNUSTEP_MAKEFILES@ rather than envvars.
5948 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
5949 ns_default.
5950 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
5951 Lisp_Objects.
5952 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
5953 (ns_defined_color, ns_color_to_lisp): Declare.
5954 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
5955 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
5956 it's accepted even with USE_LISP_UNION_TYPE.
5957 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
5958 (update_frame_tool_bar): Remove apparently obsolete tests for
5959 non-integerness of f->tool_bar_lines.
5960 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
5961 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
5962 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
5963 (nsfont_open): Don't confuse NULL for Qnil.
5964 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
5965 * menu.h (find_and_call_menu_selection):
5966 * menu.c (find_and_call_menu_selection): Use just int for vector size.
5967 (find_and_return_menu_selection): Always return something.
5968 * frame.h: Include dispextern.h for Display_Info.
5969 (display_x_get_resource): Declare.
5970
59712008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
5972
5973 * syntax.c: Remove stdio.h include accidentally introduced in
5974 Emacs.app commit.
5975 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
5976 NS_IMPL_COCOA.
5977 * keyboard.c (handle_async_input, input_available_signal): Remove
5978 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
5979
59802008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
5981
5982 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
5983 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
5984 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
5985 Use SDATA.
5986
5987 * keymap.c: Remove all NS-specific code.
5988 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
5989 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
5990 where_is_preferred_modifier, return a different value depending on how
5991 preferred is the binding.
5992 (where_is_internal): Adjust accordingly.
5993 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
5994 Adjust to new preferred_sequence_p.
5995 (syms_of_keymap): Declare `where-is-preferred-modifier'.
5996 * keyboard.c (parse_solitary_modifier): Not static any more.
5997 * keyboard.h (parse_solitary_modifier): Declare.
5998
59992008-07-16 Andreas Schwab <schwab@suse.de>
6000
6001 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
6002 of easymenu.
6003
60042008-07-16 Chong Yidong <cyd@stupidchicken.com>
6005
6006 * xdisp.c (move_it_in_display_line): Account for word wrap, so
6007 that we don't move off the line.
6008
60092008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
6010
6011 * keyboard.c (Qsuper): Remove.
6012 (parse_menu_item): Don't call where_is_internal specially for NS.
6013
60142008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6015
6016 * s/gnu-linux.h: Remove boilerplate comments.
6017
6018 * m/alpha.h (__ELF__): Consolidate conditions.
6019
6020 * m/m68k.h (linux): Use GNU_LINUX instead.
6021 Remove boilerplate comments.
6022
6023 * m/intel386.h: Undo refactoring from previous change.
6024 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
6025 too, remove dead code.
6026 (linux): Use GNU_LINUX instead.
6027
60282008-07-16 Jason Rumney <jasonr@gnu.org>
6029
6030 * w32gui.h: Repeat 26 June changes lost by last change.
6031
60322008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
6033
6034 * systty.h: Remove code for Aix on 386, unsupported platform.
6035
6036 * s/ms-w32.h: Remove boilerplate comments.
6037 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
6038
6039 * s/gnu-linux.h (TERM): Remove support.
6040 (HAVE_SYSVIPC): Remove, unused.
6041 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
6042 for this system.
6043
6044 * process.c: Remove support for IRIS, unused.
6045 Remove support for TERM, not relevant anymore.
6046
6047 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
6048 used with the definition.
6049
6050 * s/aix4-2.h (static): Do not undef.
6051
6052 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
6053 only used on Aix.
6054 (HAVE_SYSVIPC): Remove, unused.
6055
6056 * m/hp800.h (CANNOT_DUMP): Do not undef.
6057
6058 * m/alpha.h: Fix comment.
6059
6060 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
6061 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
6062 used by this configuration.
6063 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
6064 * unexec.c: Remove code depending on HPUX and
6065 USG_SHARED_LIBRARIES, not used with this file. Remove code
6066 depending on IRIS, unused. Remove if 0-ed code.
6067
6068 * s/template.h: Remove comments about static.
6069
6070 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
6071 Remove if 0-ed code.
6072 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
6073 were the same as the default.
6074 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
6075 Remove boilerplate comments.
6076 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
6077 (HAVE_SYSVIPC): Remove, unused.
6078 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
6079
6080 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6081 Remove boilerplate comments.
6082 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6083 Remove boilerplate comments.
6084 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
6085 Remove boilerplate comments.
6086 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
6087
6088 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
6089 USG systems which do not use DATA_SEG_BITS.
6090 Refactor code. Remove boilerplate comments.
6091
6092 * m/ibms390.h:
6093 * m/m68k.h:
6094 * s/bsd-common.h:
6095 * s/cygwin.h:
6096 * s/darwin.h:
6097 * s/freebsd.h:
6098 * s/gnu.h:
6099 * s/msdos.h: Remove boilerplate comments.
6100
6101 * m/iris4d.h: Remove boilerplate comments and code for systems that
6102 do not use this file.
6103 (IRIS_4D): Remove, unused.
6104
6105 * m/mips.h: Remove boilerplate comments and code for systems that
6106 do not use this file.
6107 (SIGN_EXTEND_CHAR):
6108 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
6109 * unexmips.c: Remove file, unused.
6110
6111 * editfns.c (Fuser_full_name): Replace the only use of
6112 USER_FULL_NAME with its value.
6113 * config.in: Regenerate.
6114
61152008-07-16 David Reitter <david.reitter@gmail.com>
6116
6117 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
6118 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
6119
61202008-07-16 Glenn Morris <rgm@gnu.org>
6121
6122 * emacs.c (system-type): Doc fix.
6123
61242008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
6125
6126 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
6127 If the cache doesn't work, let's fix it, rather than work around it.
6128
61292008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6130
6131 * Makefile.in: Correct additions for nsfont.o in last commit.
6132 * nsfont.m: New file (forgot last commit).
6133
61342008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6135
6136 * callproc.c (set_initial_environment): Initialize
6137 Vprocess_environment under CANNOT_DUMP (fixes crash when
6138 batch-compiling for bootstrap).
6139
61402008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
6141 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6142
6143 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
6144 fix crash due to different init order.
6145
61462008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6147
6148 Changes and additions for NeXTstep windowing system (Cocoa and
6149 GNUstep) support.
6150
6151 * Makefile.in:
6152 * config.in: Support defines and build commands for NS port.
6153 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
6154 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
6155 * dispextern.h: Include nsgui.h and add needed typedefs under NS
6156 windowing.
6157 (struct face): Add synth_ital field.
6158 * dispnew.c: Include nsterm.h when compiling under NS windowing.
6159 (init_display): Initialize Vinitial_window_system to "ns" when so
6160 compiled.
6161 * emacs.c: Include GSConfig.h when compiling under GNUstep.
6162 (display_arg): Use under NS.
6163 (main): Under NS, allocate autorelease pool and handle command line
6164 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
6165 (standard_args): Add NS-specific args.
6166 (shut_down_emacs): Shut down NS terminal if compiled under NS.
6167 * font.c (DEFAULT_ENCODING): New variable.
6168 (font_find_for_lface): Use it.
6169 (syms_of_font): Load syms_of_nsfont under NS.
6170 * font.h: Declare nsfont_driver when compiled under NS.
6171 * fontset.c: When compiling under NS, include nsterm.h.
6172 (fontset_from_font): Autoconstruct fontset under NS.
6173 * frame.c (various): Under NS, include nsterm.h, add Qns window system
6174 symbol, document and use it.
6175 (do_switch_frame): When for_deletion under Cocoa, add
6176 Fraise_frame(Qnil).
6177 (x_set_frame_parameters): Ensure font attribute changes are picked up.
6178 (x_get_arg): Allow "yes" and "no" as boolean values.
6179 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
6180 Qright under Cocoa.
6181 (focus-follows-mouse): Default to 0 under NS.
6182 * frame.h (enum output_method): Add output_ns.
6183 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
6184 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
6185 (FRAME_WINDOW_P): NS-specific definition.
6186 * fringe.c (max_used_fringe_bitmap): Make public.
6187 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
6188 (getloadavg): Use NeXT code under descendant OS's.
6189 * image.c (includes and header section, x_create_bitmap_from_data)
6190 (x_create_bitmap_from_file, free_bitmap_record, image_background)
6191 (image_background_transparent, x_clear_image_1)
6192 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
6193 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
6194 (x_to_xcolors, x_from_xcolors, x_disable_image)
6195 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
6196 other GUIs, including XPM support using code originally written for
6197 Carbon GUI.
6198 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
6199 using NS API.
6200 (image_ascent): Use font metrics macros instead of direct struct field
6201 access.
6202 * keyboard.c (includes): Add nsterm.h when compiling under NS.
6203 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
6204 Also, handle NS as GTK for menu bar purposes.
6205 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
6206 toolkit where they differ.
6207 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
6208 use cachelist, still needed under NS.
6209 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
6210 (struct widget_value): Define it here for menu.c.
6211 * keymap.c (includes): Include modifier internals.
6212 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
6213 NS.
6214 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
6215 support for preferring sequences using certain modifiers, specified by
6216 the FIRSTONLY argument.
6217 * lisp.h (hash_remove): Rename to avoid name clash when compiling
6218 under NS GNUstep implementation.
6219 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
6220 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
6221 * menu.c: Include nsterm.h under NS.
6222 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
6223 (free_menubar_widget_tree_value, update_submenu_strings)
6224 (find_and_call_menu_selection): Treat NS as X and NT.
6225 (find_and_return_menu_selection): New function, used for popup menus.
6226 * nsgui.h:
6227 * nsterm.h:
6228 * nsfns.m:
6229 * nsimage.m:
6230 * nsmenu.m:
6231 * nsselect.m:
6232 * nsterm.m: New files.
6233 * process.c (wait_reading_process_output): Under NS, call ns_select()
6234 instead of plain select().
6235 * syntax.c (char_quoted): Under NS, avoid a crash when called near
6236 beginning of buffer.
6237 * sysselect.h (init_process): Rename when compiling under Cocoa to
6238 avoid name conflict.
6239 * termhooks.h (display_info): Add ns_display_info to union.
6240 * terminal.c (Fterminal_live_p): Add ns to terminal types.
6241 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
6242 COCOA environment.
6243 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
6244 unexec() signature. (Note, this will dump, but the resulting file
6245 crashes; unexosx is used instead; keeping around for reference and
6246 possible aid in getting dump working under GNUstep.)
6247 * w32gui.h (button_type, widget_value): Remove definitions (now in
6248 keyboard.h).
6249 * window.c: Include nsterm.h when compiling under NS.
6250 * xdisp.c (includes): Include nsterm.h when compiling under NS.
6251 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
6252 other GUI windowing systems.
6253 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
6254 GTK.
6255 (x_consider_frame_title): Under NS, set icon type and frame
6256 modified-state indicator; use ns_set_name_as_filename() when using
6257 formatted title.
6258 (update_window_cursor): Make public when compiling under NS.
6259 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
6260 (hourglass_atimer, Vhourglass_delay
6261 * xfaces.c (header section, init_frame_faces, clear_font_table)
6262 (defined_color, unload_color, x_face_list_fonts)
6263 (prepare_face_for_display): Add NS support parallel to other GUIs.
6264 Emulate GCs like other non-X GUIs.
6265 (split_font_name): Don't lowercase font name under NS.
6266 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
6267 under NS.
6268 * s/darwin.h: Add support for compilation under NS.
6269
62702008-07-15 Jason Rumney <jasonr@gnu.org>
6271
6272 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
6273 (w32_show_hourglass): Rename from show_hourglass.
6274 (w32_hide_hourglass): Rename from hide_hourglass.
6275 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
6276 (Vhourglass_delay): Declare extern.
6277 (hourglass_started): Remove.
6278
6279 * xdisp.c (Vhourglass_delay): Remove static.
6280 (hourglass_started, start_hourglass, cancel_hourglass):
6281 Don't include these versions on WINDOWSNT.
6282
62832008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
6284
6285 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
6286 variables (formerly in xfns.c).
6287 (show_hourglass, hide_hourglass): New prototypes (same).
6288 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
6289 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
6290 in xfns.c).
6291 (syms_of_xdisp): Declare/initialize display-hourglass,
6292 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
6293 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
6294 formerly in xfns.c.
6295 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6296 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6297 (start_hourglass, cancel_hourglass): Remove.
6298 (show_hourglass, hide_hourglass): Remove prototypes and static
6299 modifiers.
6300 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
6301 hourglass_atimer, hourglass_shown_p declaration/initialization.
6302 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
6303 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
6304 (start_hourglass, cancel_hourglass): Remove.
6305 (show_hourglass, hide_hourglass): Remove prototypes and static
6306 modifiers.
6307 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
6308 hourglass_atimer, hourglass_shown_p declaration/initialization.
6309 * w32fns.c (display_hourglass_p, Vhourglass_delay)
6310 (DEFAULT_HOURGLASS_DELAY): Remove.
6311 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
6312 hourglass_shown_p declaration/initialization.
6313
63142008-07-14 Jason Rumney <jasonr@gnu.org>
6315
6316 * w32fns.c (w32_get_arg): Remove wrapper function.
6317 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
6318 directly.
6319 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
6320
63212008-07-14 Kenichi Handa <handa@m17n.org>
6322
6323 * xfont.c (xfont_open): Add workaround for X's bug.
6324
63252008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
6326
6327 * fontset.c: Include <stdio.h> unconditionally.
6328
63292008-07-13 Michael Albinus <michael.albinus@gmx.de>
6330
6331 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
6332 for filtering.
6333
63342008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
6335
6336 * s/vms.h: Use __GNUC__ instead of _GNUC_.
6337
6338 * m/macppc.h:
6339 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
6340
6341 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
6342 (SPECIAL_EMACS_INT):
6343 * m/ia64.h (SPECIAL_EMACS_INT):
6344 * m/amdx86-64.h (SPECIAL_EMACS_INT):
6345 * s/gnu.h (NLIST_STRUCT):
6346 * s/aix4-2.h (X11R5_INHIBIT_I18N):
6347 * s/gnu-linux.h (LINUX):
6348 * s/msdos.h (HAVE_FACES):
6349 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
6350
6351 * systty.h:
6352 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
6353 anymore.
6354
63552008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
6356
6357 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
6358 always defined as int.
6359
6360 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
6361 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
6362 * s/gnu-linux.h (HAVE_WAIT_HEADER):
6363 * s/freebsd.h (HAVE_WAIT_HEADER):
6364 * s/bsd-common.h (HAVE_UNION_WAIT):
6365 * s/aix4-2.h (HAVE_WAIT_HEADER):
6366 * m/mips.h (HAVE_UNION_WAIT):
6367 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
6368 (COFF, static): Do not define, they are undefined later in the file.
6369
6370 * process.c (update_status): Don't use a union.
6371 (status_convert):
6372 (sigchld_handler): Use int instead of WAITTYPE.
6373
63742008-07-12 Chong Yidong <cyd@stupidchicken.com>
6375
6376 * indent.c (Fvertical_motion): Restore hscroll before moving to
6377 goal column.
6378
63792008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6380
6381 * lisp.h: Remove left over code.
6382
63832008-07-11 Andreas Schwab <schwab@suse.de>
6384
6385 * lisp.h: Fix logic in last change.
6386
6387 * menu.h: New file.
6388 * menu.c: Include it.
6389 * xmenu.c: Likewise.
6390 * Makefile.in: Update dependencies.
6391
63922008-07-11 Kenichi Handa <handa@m17n.org>
6393
6394 * fontset.c (fontset_from_font): Cancel the previous change.
6395
63962008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
6397
6398 * lisp.h:
6399 * w32heap.c:
6400 * emacs.c:
6401 * alloc.c: Replace all references of NO_UNION_TYPE with
6402 USE_LISP_UNION_TYPE.
6403
6404 * m/xtensa.h (NO_UNION_TYPE):
6405 * m/vax.h (NO_UNION_TYPE):
6406 * m/template.h (NO_UNION_TYPE):
6407 * m/sparc.h (NO_UNION_TYPE):
6408 * m/mips.h (NO_UNION_TYPE):
6409 * m/macppc.h (NO_UNION_TYPE):
6410 * m/m68k.h (NO_UNION_TYPE):
6411 * m/iris4d.h (NO_UNION_TYPE):
6412 * m/intel386.h (NO_UNION_TYPE):
6413 * m/ibms390x.h (NO_UNION_TYPE):
6414 * m/ibms390.h (NO_UNION_TYPE):
6415 * m/ibmrs6000.h (NO_UNION_TYPE):
6416 * m/ia64.h (NO_UNION_TYPE):
6417 * m/hp800.h (NO_UNION_TYPE):
6418 * m/arm.h (NO_UNION_TYPE):
6419 * m/amdx86-64.h (NO_UNION_TYPE):
6420 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
6421 defining it the same.
6422
64232008-07-10 Chong Yidong <cyd@stupidchicken.com>
6424
6425 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
6426
64272008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6428
6429 * fileio.c:
6430 * sysdep.c
6431 * systty.h:
6432 * m/ibmrs6000.h:
6433 * m/iris4d.h:
6434 * s/aix4-2.h:
6435 * s/freebsd.h:
6436 * s/gnu-linux.h:
6437 * s/hpux10-20.h:
6438 * s/hpux11.h:
6439 * s/netbsd.h:
6440 * s/sol2-3.h:
6441 * s/sol2-4.h:
6442 * s/sol2.h:
6443 * s/usg5-4.h:
6444 * s/vms.h: Remove references to unused variables.
6445
64462008-07-10 Andreas Schwab <schwab@suse.de>
6447
6448 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
6449 pattern before matching the generic family.
6450
64512008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
6452
6453 * unexec.c:
6454 * s/vms.h:
6455 * s/usg5-4-2.h:
6456 * s/sol2-5.h:
6457 * s/freebsd.h:
6458 * s/darwin.h: Remove dead code.
6459
6460 * m/template.h:
6461 * m/sparc.h:
6462 * m/mips.h:
6463 * m/m68k.h:
6464 * m/iris4d.h:
6465 * m/intel386.h:
6466 * m/ibms390x.h:
6467 * m/ibms390.h:
6468 * m/ia64.h:
6469 * m/hp800.h:
6470 * m/arm.h:
6471 * m/amdx86-64.h: Remove dead code and references to unused
6472 and compiler defined symbols.
6473
6474 * unexmips.c:
6475 * unexelf.c: Remove references to desupported systems.
6476
6477 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
6478
6479 * m/powermac.h: Remove boilerplate comments.
6480 (NO_REMAP): Remove unused definition.
6481
6482 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
6483 define them.
6484
64852008-07-10 Kenichi Handa <handa@m17n.org>
6486
6487 * xfont.c (xfont_open): Log the reason of failure.
6488
64892008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
6490
6491 * fontset.c (fontset_get_font_group):
6492 * font.c (font_check_otf): Specify argument types.
6493
64942008-07-09 Kenichi Handa <handa@m17n.org>
6495
6496 * coding.c (detect_coding_utf_8): Set detect_info->found only when
6497 non-ASCII char is found.
6498
6499 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
6500 (reorder_font_vector): Change the arg preferred_family to font.
6501 Prefer the spec matching with font.
6502 (fontset_get_font_group): New function.
6503 (fontset_find_font): Change the format of an element of a realized
6504 fontset. Use fontset_get_font_group.
6505 (fontset_font): Try the current fontset, the default fontset, the
6506 fallbacks of the current fontset, and the fallbacks of the default
6507 fontset in this order.
6508 (face_for_char): Delete the shortcut to use the current font.
6509 (fontset_from_font): Don't set fonts for Latin in the fontset.
6510
6511 * font.h (font_make_object, font_match_p): Adjust prototypes.
6512
6513 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
6514
6515 * font.c (font_make_object): New arg entity and pixelsize.
6516 (font_check_otf_features, font_check_otf): New functions.
6517 (font_match_p): Check :lang, :script, and :otf properties.
6518
6519 * xfont.c (xfont_open): Adjust it for the change of
6520 font_make_object.
6521 (xfont_text_extents): Fix initial setting of metrics.
6522
6523 * ftfont.c (struct ftfont_info): New member index, delete member
6524 fc_charset_idx. Make the member order compatible with struct
6525 xftfont_info.
6526 (fc_charset_table): Change charset names to registry names.
6527 (ftfont_pattern_entity): Delete the args registry and
6528 fc_charset_idx. Change the value of :font-entity property
6529 to (FONTNAME . INDEX). Always set :registry property to
6530 `iso10646-1'.
6531 (struct ftfont_cache_data): New struct.
6532 (ftfont_lookup_cache): New arg for_face.
6533 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
6534 (ftfont_driver): Set the member otf_capability.
6535 (ftfont_get_charset): Adjust it for the change of
6536 fc_charset_table.
6537 (OTF_TAG_SYM): New macro.
6538 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
6539 for the change of fc_charset_table.
6540 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
6541 ftfont_pattern_entity. Add FC_INDEX to objset.
6542 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
6543 and ftfont_pattern_entity.
6544 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
6545 font_make_object, struct ftfont_info.
6546 (ftfont_has_char): Use ftfont_get_fc_charset.
6547 (ftfont_otf_features, ftfont_otf_capability): New functions.
6548 (ftfont_shape): Use ftfont_get_otf.
6549 (ftfont_text_extents): Fix initial setting of metrics.
6550
6551 * xftfont.c (struct xftfont_info): New member ft_size. Make the
6552 member order compatible with struct ftfont_info.
6553 (xftfont_open): Add FC_CHARSET to the pattern. Set
6554 xftfont_info->ft_size. Don't unlock the face. Check BDF
6555 properties if appropriate.
6556 (xftfont_close): Unlock the face.
6557 (xftfont_anchor_point, xftfont_shape): Deleted.
6558 (syms_of_xftfont): Don't set members anchor_point and shape of
6559 xftfont_driver.
6560
6561 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
6562 font_make_object.
6563
6564 * w32font.c (w32font_open): Adjust it for the change of
6565 font_make_object.
6566 (w32font_open_internal): Don't set properties of font_object here.
6567
65682008-07-08 Chong Yidong <cyd@stupidchicken.com>
6569
6570 * macfns.c (x_create_tip_frame):
6571 * w32fns.c (x_create_tip_frame):
6572 * xfns.c (x_create_tip_frame): Pass parameter argument to
6573 face-set-after-frame-default.
6574
6575 * xfaces.c (Finternal_merge_in_global_face): Save merged
6576 attributes for the default face back into the face vector.
6577
65782008-07-08 Andreas Schwab <schwab@suse.de>
6579
6580 * fontset.h: Declare fontset_from_font. Don't declare
6581 new_fontset_from_font and fontset_from_font_name.
6582 * xterm.c: Include "fontset.h".
6583 * Makefile.in (xterm.o): Update dependencies.
6584
65852008-07-08 Glenn Morris <rgm@gnu.org>
6586
6587 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
6588 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
6589
65902008-07-07 Chong Yidong <cyd@stupidchicken.com>
6591
6592 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
6593 (x_set_frame_parameters): Don't bind it.
6594
65952008-07-07 Juanma Barranquero <lekktu@gmail.com>
6596
6597 * w32fns.c (map_w32_filename): Declare extern.
6598
65992008-07-07 Jason Rumney <jasonr@gnu.org>
6600
6601 * w32term.c (WS_EX_LAYERED): Define if not already.
6602
66032008-07-06 Chong Yidong <cyd@stupidchicken.com>
6604
6605 * xfaces.c (set_font_frame_param): Don't try to set the font
6606 parameter if it is still unspecified in the lface.
6607
66082008-07-05 Chong Yidong <cyd@stupidchicken.com>
6609
6610 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
6611 face if it didn't already exist.
6612
6613 * xdisp.c (try_window_id): Give up if word-wrapping is on.
6614
66152008-07-05 Andreas Schwab <schwab@suse.de>
6616
6617 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
6618
66192008-07-05 Chong Yidong <cyd@stupidchicken.com>
6620
6621 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
6622 word-wrapping.
6623 (IT_DISPLAYING_WHITESPACE): New macro.
6624 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
6625 when word-wrapping. Simplify word-wrapping logic. Use correct
6626 pixel positions when saving copies of the iterator.
6627 (display_line): Use proper wrap point if the last character on a
6628 line was preceded by whitespace.
6629
66302008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
6631
6632 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
6633
66342008-07-04 Kenichi Handa <handa@m17n.org>
6635
6636 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
6637
6638 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
6639
66402008-07-02 Jason Rumney <jasonr@gnu.org>
6641
6642 * xfns.c (syms_of_xfns): Only define x-select-font when both
2ae37cf0 6643 HAVE_FREETYPE and USE_GTK.
aac0c6e3
MR
6644
6645 * xdisp.c (next_element_from_display_vector): Move assignment out
6646 of if statement.
6647
66482008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
6649
6650 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
6651
6652 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
6653 (syms_of_fileio): Initialize and export them.
6654 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
6655
6656 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
6657 (Fsystem_move_file_to_trash): New function.
6658 (syms_of_w32fns): Export it to lisp.
6659
66602008-07-01 Jason Rumney <jasonr@gnu.org>
6661
6662 * w32font.c (w32font_text_extents): Don't count overhang as part
6663 of width.
6664
66652008-06-30 Miles Bader <miles@gnu.org>
6666
6667 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
6668 Add `avoid_cursor_p' field.
6669
6670 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
6671 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
6672 (append_glyph, append_composite_glyph, produce_image_glyph)
6673 (append_stretch_glyph): Initialize avoid_cursor_p.
6674 (get_it_property): Rename from `get_line_height_property'.
6675 (x_produce_glyphs): Use get_it_property.
6676 (handle_line_prefix, push_display_prop): New functions.
6677 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
6678 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
6679 New variables.
6680 (syms_of_xdisp): Initialize them.
6681
66822008-06-30 Kenichi Handa <handa@m17n.org>
6683
6684 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
6685 XftDefaultSubstitute (they are called in XftFontMatch).
6686 (xftfont_open): Fix args to ftfont_font_format.
6687
6688 * ftfont.c (fc_charset_table): New member lang.
6689 (ftfont_resolve_generic_family): New arg pattern.
60612c8f 6690 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
aac0c6e3
MR
6691 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
6692 (ftfont_open): Fix args to ftfont_font_format.
6693 (ftfont_font_format): New arg filename.
6694
66952008-06-30 Chong Yidong <cyd@stupidchicken.com>
6696
6697 * xfaces.c (Finternal_merge_in_global_face): If default face was
6698 modified, realize it again. Update the font face attribute.
6699
67002008-06-29 Jason Rumney <jasonr@gnu.org>
6701
6702 * w32term.c (x_set_frame_alpha): Fix logic.
6703
67042008-06-29 Kenichi Handa <handa@m17n.org>
6705
6706 * fontset.c (Finternal_char_font): Return font-object instead of
6707 font-name.
6708
6709 * composite.c (get_composition_id): Fix the width calculation for TAB.
6710
67112008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
6712
6713 * indent.c (Fvertical_motion): Properly handle float column arg.
6714
67152008-06-28 Jason Rumney <jasonr@gnu.org>
6716
6717 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
6718 (pfnSetLayeredWindowAttributes): New function pointer.
6719 (w32_initialize): Initialize it when supported.
6720 (x_set_frame_alpha): New function.
6721
6722 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
6723 (w32_frame_parm_handlers): Set alpha handler.
6724
6725 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
6726
67272008-06-27 Jason Rumney <jasonr@gnu.org>
6728
6729 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
6730 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
6731 (w32_to_x_charset, x_to_w32_charset)
6732 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6733 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6734 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6735 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6736 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6737 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6738 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
6739 (Qw32_charset_unicode): Remove.
6740 (syms_of_w32fns): Update for above changes.
6741
6742 * w32font.c (w32_to_x_charset, x_to_w32_charset)
6743 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
6744 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
6745 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
6746 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
6747 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
6748 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
6749 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
6750 (syms_of_w32font): Update for above changes.
6751
67522008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
6753
6754 * s/usg5-4.h: Fix previous change: keep the correct branch of a
6755 removed #if.
6756 (USG_SHARED_LIBRARIES): Remove duplicate definition.
6757
67582008-06-26 Juanma Barranquero <lekktu@gmail.com>
6759 Eli Zaretskii <eliz@gnu.org>
6760
6761 * makefile.w32-in (LOCAL_FLAGS):
6762 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
6763
6764 * sysdep.c (_spawnlp, _getpid):
6765 Declare with explicit _cdecl instead of _CRTAPI1.
6766
6767 * editfns.c (Fget_internal_run_time):
6768 Check for WINDOWSNT with #ifdef, not #if.
6769
67702008-06-26 Jason Rumney <jasonr@gnu.org>
6771
6772 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
6773
6774 * w32term.c (x_draw_glyph_string_foreground)
6775 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
6776 Use FONT_HANDLE macro.
6777 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
6778
6779 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6780 (uniscribe_encode_char): Use FONT_HANDLE macro.
6781
6782 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
6783 (w32font_text_extents): Use precast w32_font.
6784 (w32font_close): Free cached metrics.
6785 (w32font_open_internal): Allocate space for name on stack.
6786
67872008-06-26 Chong Yidong <cyd@stupidchicken.com>
6788
6789 * xdisp.c (extend_face_to_end_of_line): Fix last change.
6790
67912008-06-26 Jason Rumney <jasonr@gnu.org>
6792
6793 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
6794 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
6795
67962008-06-26 Juanma Barranquero <lekktu@gmail.com>
6797
6798 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
6799
68002008-06-26 Jason Rumney <jasonr@gnu.org>
6801
6802 * w32bdf.c, w32bdf.h: Remove obsolete files.
6803
6804 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
6805
6806 * w32gui.h: Don't include w32bdf.h.
6807 (XCharStruct, enum w32_char_font_type, W32FontStruct):
6808 Remove obsolete font support.
6809
6810 * w32font.h (struct w32font_info): Remove compat_w32_font.
6811 Add hfont member.
6812 (FONT_COMPAT): Remove obsolete macro.
6813
6814 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
6815 (w32font_encode_char, w32font_text_extents): Use new hfont member.
6816 (w32font_open_internal): Remove compat code. Set new hfont member.
6817 (Fx_select_font): Use new hfont member.
6818
6819 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
6820 (uniscribe_encode_char): Use new hfont member.
6821
6822 * w32term.c (x_draw_glyph_string_foreground)
6823 (x_draw_composite_glyph_string_foreground): Use new hfont member.
6824 (x_draw_glyph_string): Use metrics in w32font_info.
6825
68262008-06-26 Kenichi Handa <handa@m17n.org>
6827
6828 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
6829
68302008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
6831
6832 * unexnext.c:
6833 * m/ews4800.h:
6834 * m/hp9000s300.h:
6835 * m/ibm370aix.h:
6836 * m/mips-siemens.h:
6837 * m/ncr386.h:
6838 * m/next.h:
6839 * m/pmax.h:
6840 * m/powerpcle.h:
6841 * m/tandem-s2.h:
6842 * s/386bsd.h:
6843 * s/bsd386.h:
6844 * s/bsd4-1.h:
6845 * s/bsd4-2.h:
6846 * s/bsdos2-1.h:
6847 * s/bsdos2.h:
6848 * s/bsdos3.h:
6849 * s/bsdos4.h:
6850 * s/nextstep.h:
6851 * s/ultrix4-3.h:
6852 * s/usg5-0.h:
6853 * s/usg5-2-2.h:
6854 * s/usg5-2.h:
6855 * s/usg5-4-3.h:
6856 * s/ux4800.h:
6857 * s/uxpds.h:
6858 * s/uxpv.h: Remove support for obsolete systems.
6859 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
8f3a3ac2 6860 Remove, insert contents in s/hpux10-20.h.
aac0c6e3
MR
6861 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
6862 Remove, insert contents in s/aix4-2.h.
6863 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
6864 * s/bsd4-3.h: Rename to ...
6865 * s/bsd-common.h: ... this.
6866 * data.c:
6867 * doc.c:
6868 * ecrt0.c:
6869 * emacs.c:
6870 * fileio.c:
6871 * floatfns.c:
6872 * keyboard.c:
6873 * mem-limits.h:
6874 * print.c:
6875 * process.c:
6876 * sysdep.c:
6877 * syssignal.h:
6878 * systty.h:
6879 * syswait.h:
6880 * term.c:
6881 * unexec.c:
6882 * unexelf.c:
6883 * unexhp9k800.c:
6884 * m/hp800.h:
6885 * m/ibmrs6000.h:
6886 * m/mips.h:
6887 * m/vax.h:
6888 * s/darwin.h:
6889 * s/freebsd.h:
6890 * s/gnu.h:
6891 * s/ms-w32.h:
6892 * s/msdos.h:
6893 * s/netbsd.h:
6894 * s/template.h: Remove references to obsolete variables.
6895
6896 * Makefile.in: Add dependencies for all unexec files.
6897 (admindir): Remove unused variable.
6898 (UNEXEC_SRC): Remove references.
6899
69002008-06-25 Chong Yidong <cyd@stupidchicken.com>
6901
6902 * xfns.c (x_default_font_parameter): If Xft is available, first
6903 try Monospace-12 for the default font.
6904
69052008-06-25 Jason Rumney <jasonr@gnu.org>
6906
6907 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
6908
69092008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
6910
6911 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
6912
6913 * buffer.c (syms_of_buffer): Remove default-word-wrap.
6914
69152008-06-25 Juanma Barranquero <lekktu@gmail.com>
6916
6917 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
6918 <scroll-conservatively>: Fix typo in docstring.
6919
6920 * xselect.c (Fx_send_client_event): Doc fix.
6921
69222008-06-25 Kenichi Handa <handa@m17n.org>
6923
6924 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
6925
6926 * font.c (font_parse_fcname): Remove unused variables.
6927 (font_sort_entites): Delete the arg SPEC. Caller changed.
6928 Fix for the case of ! best_only.
6929 (font_delete_unmatched): Check DPI and AVGWIDTH too.
6930
6931 * lisp.h (Fstring_to_unibyte): EXFUN it.
6932
6933 * character.h (str_to_unibyte): Extern it.
6934
6935 * character.c (str_to_unibyte): New function.
6936
6937 * fns.c (Fstring_to_unibyte): New function.
6938 (syms_of_fns): Defsubr it.
6939
69402008-06-24 Kenichi Handa <handa@m17n.org>
6941
6942 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
6943 DPI too.
6944 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
6945
69462008-06-24 Andreas Schwab <schwab@suse.de>
6947
6948 * Makefile.in (${lispsource}loaddefs.el): Rename from
6949 ../lisp/loaddefs.el.
6950 (bootstrap-clean): Do what distclean does but don't remove
6951 Makefile.
6952 (distclean): Depend on bootstrap-clean and remove Makefile.
6953
69542008-06-24 Chong Yidong <cyd@stupidchicken.com>
6955
6956 * buffer.h (struct buffer): New member word_wrap.
6957
6958 * buffer.c (syms_of_buffer): New variables default-word-wrap and
6959 word-wrap.
6960 (init_buffer_once): Initialize them.
6961
6962 * dispextern.h (struct it): Replace bool truncate_lines_p with a
6963 line_wrap enum possessing three possible values.
6964
6965 * termopts.h: Replace truncate_partial_width_windows with
6966 Vtruncate_partial_width_windows.
6967
6968 * dispnew.c (direct_output_for_insert): Avoid direct output when
6969 inserting a space with word wrap on.
6970
6971 * indent.c (compute_motion): Obey integer values of
6972 truncate-partial-width-windows.
6973
6974 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
6975 replacing truncate_partial_width_windows.
6976 (init_iterator): If Vtruncate_partial_width_windows is an integer,
6977 truncate only if the window width is below that integer.
6978 (start_display, resize_mini_window, produce_stretch_glyph)
6979 (display_string, move_it_in_display_line_to): Use line_wrap.
6980 (back_to_previous_visible_line_start, reseat_1): Reset
6981 string_from_display_prop_p.
6982 (display_line): Extend default face to end of line when wrapping.
6983
69842008-06-24 Kim F. Storm <storm@cua.dk>
6985
6986 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
6987 to wrap continued lines at word boundaries.
6988
69892008-06-24 Jason Rumney <jasonr@gnu.org>
6990
6991 * font.c (Ffont_face_attributes): Multiply pixel size before point
6992 conversion to avoid multiplying rounding error.
6993
69942008-06-23 Jason Rumney <jasonr@gnu.org>
6995
6996 * w32term.c (x_draw_glyph_string_background)
6997 (x_draw_glyph_string): Remove old bdf font code.
6998
6999 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
7000
70012008-06-22 Kenichi Handa <handa@m17n.org>
7002
7003 * font.c (font_find_for_lface): Try the adstyle specified in
7004 the property of LFACE_FONT of LFACE (if any).
7005
70062008-06-21 Seiji Zenitani <zenitani@mac.com>
7007 Ryo Yoshitake <ryo@shiftmode.net>
7008
7009 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
7010
70112008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
7012
7013 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
7014 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
7015 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
7016 (witness-emacs): Remove.
7017 (lisp, shortlisp): Move loaddefs.el earlier.
7018 (mostlyclean): Forget about witness-emacs.
7019
70202008-06-22 Glenn Morris <rgm@gnu.org>
7021
7022 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
7023 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
7024
70252008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7026
7027 * Makefile.in (PRECOMP): Remove.
7028 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
7029 (witness-emacs): Run `compile-first'.
7030 (.el.elc): Use the new compile-onefile target.
7031
70322008-06-21 Kenichi Handa <handa@m17n.org>
7033
7034 * xftfont.c (xftfont_open): Handle QCembolden only when
7035 FC_EMBOLDEN is defined.
7036
70372008-06-21 Andreas Schwab <schwab@suse.de>
7038
7039 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
7040 (.el.elc): Likewise.
7041
70422008-06-21 Miles Bader <miles@gnu.org>
7043
7044 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
7045 build dir, not the lisp source dir.
7046
70472008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
7048
7049 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
7050 (bootstrapclean): Remove.
7051 (.el.elc): New rule.
7052 (PRECOMP): New var.
7053 (../lisp/subdirs.el): Remove.
7054 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
7055 (witness-emacs): New target.
7056 (mostlyclean): Remove witness-emacs as well.
7057 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
7058 Add witness-emacs dependency.
7059
70602008-06-20 Chong Yidong <cyd@stupidchicken.com>
7061
7062 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
7063 defined by the font.
7064
70652008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7066
7067 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
7068 (bootstrap-clean): New target that keeps TAGS around.
7069 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
7070 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
7071
70722008-06-20 Jason Rumney <jasonr@gnu.org>
7073
7074 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
7075 Remove obsolete font code.
7076
7077 * w32font.c (font_matches_spec): Use csb bitfield from font signature
7078 to determine language support.
7079
70802008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7081
7082 * sysdep.c (cfsetspeed): New fun extracted from the code.
7083 (cfmakeraw): Move before first use.
7084
70852008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
7086
7087 * sysdep.c (cfmakeraw): Provide fallback implementation.
7088 (serial_configure): Provide fallback implementation of cfsetspeed.
7089
70902008-06-20 Kenichi Handa <handa@m17n.org>
7091
7092 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
7093 the pattern.
7094
7095 * fontset.c (fontset_from_font): Copy font_spec before changing
7096 the elements.
7097
7098 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
7099
71002008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
7101
7102 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
7103 for explicit `font' parameters.
7104
7105 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
7106
71072008-06-19 Kenichi Handa <handa@m17n.org>
7108
7109 * frame.c: Include <ctype.h>.
7110 (x_set_font_backend): Allow spacing characters in the X resource
7111 for FontBackend.
7112
71132008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
7114
7115 * w32fns.c, xfns.c (Qfont_param): New var.
7116 (syms_of_w32fns): Initialize it.
7117 (x_default_font_parameter): Record explicit `font' into
7118 `font-parameter'.
7119
71202008-06-18 Kenichi Handa <handa@m17n.org>
7121
7122 * font.c (font_parse_xlfd): Fix previous change.
7123 (font_parse_fcname): Don't use :fc-unknown-spec.
7124 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
7125 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
7126 (font_add_log): Prepend the driver name to the resulting fonts.
7127
7128 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
7129 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
7130 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
7131
7132 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
7133 (QCembolden): New variables.
7134 (syms_of_xftfont): DEFSYM them.
7135 (xftfont_open): Call XftFontMatch. Don't trust the result of
7136 XftTextExtents8 if the pixel_size is less than 5.
7137
71382008-06-18 Andreas Schwab <schwab@suse.de>
7139
7140 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
7141 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
7142
71432008-06-18 Jason Rumney <jasonr@gnu.org>
7144
7145 * w32font.c (w32font_list, w32font_match): Add logging.
7146
7147 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
7148
71492008-06-17 Chong Yidong <cyd@stupidchicken.com>
7150
7151 * font.c (font_parse_fcname): Store divider characters for
7152 unknown-spec list. For known key symbols, intern using correct
7153 symbol name.
7154
71552008-06-17 Kenichi Handa <handa@m17n.org>
7156
7157 * xfaces.c (realize_default_face): If the frame is not on window
7158 system, set the fontset of face to nil.
7159
71602008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7161
7162 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
7163
71642008-06-16 Juanma Barranquero <lekktu@gmail.com>
7165
7166 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
7167 (build_font_name_from_vector): Delete externs.
7168
7169 * xfaces.c (struct font_name): Don't declare.
7170
71712008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
7172
7173 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
7174
71752008-06-16 Chong Yidong <cyd@stupidchicken.com>
7176
7177 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
7178
71792008-06-16 Juanma Barranquero <lekktu@gmail.com>
7180
7181 * font.c (Ffont_spec): Fix usage in docstring.
7182 (Ffont_face_attributes): Doc fix.
7183
71842008-06-16 Andreas Schwab <schwab@suse.de>
7185
7186 * font.c (Ffont_face_attributes): Fix definition.
7187
71882008-06-16 Jason Rumney <jasonr@gnu.org>
7189
7190 * font.h (font_style_symbolic_from_value): Remove.
7191
7192 * font.c (font_style_symbolic_from_value): Remove.
7193 (font_style_symbolic): Revert to pre 2008-06-13 version.
7194
7195 * w32font.c (w32_to_fc_weight): New function.
7196 (w32font_full_name, logfont_to_fcname): Use it.
7197
71982008-06-16 Kenichi Handa <handa@m17n.org>
7199
7200 * font.c (font_check_object): Delete it.
7201 (font_clear_cache): Check if a font-object is alive.
7202 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
7203 font-object to nil.
7204 (font_close_object): Don't check FONT_CLOSE_OBJECT.
7205 (font_at): Don't call font_check_object.
7206 (Ffont_get): Return a symbol for :weight, :slant, and :width.
7207
72082008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
7209
7210 * puresize.h (BASE_PURESIZE): Increase to 1230000.
7211
72122008-06-16 Chong Yidong <cyd@stupidchicken.com>
7213
7214 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
7215
72162008-06-15 Chong Yidong <cyd@stupidchicken.com>
7217
7218 * font.c (font_parse_fcname): Only one decimal point.
7219 (font_unparse_fcname): Handle data in family and foundry indices
7220 as symbols, not strings.
7221 (font_unparse_gtkname, Ffont_face_attributes): New functions.
7222
7223 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
7224
7225 * font.h (font_unparse_gtkname): Add prototype.
7226
72272008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
7228
7229 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
7230
72312008-06-15 Andreas Schwab <schwab@suse.de>
7232
7233 * font.c (font_update_drivers): Fix crash when no drivers match.
7234
72352008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
7236
7237 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
7238 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
7239
72402008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
7241
7242 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
7243
72442008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
7245
7246 * process.c (Fserial_process_configure, Fprocess_send_eof):
7247 Use EQ to compare Lisp_Objects.
7248
72492008-06-13 Jason Rumney <jasonr@gnu.org>
7250
7251 * w32fns.c (Fw32_select_font): Remove old font API function.
7252
7253 * w32font.c (logfont_to_fcname): New function.
7254 (Fx_select_font): New font dialog function compatible with
7255 GTK/fontconfig version.
7256
7257 * font.c (font_style_symbolic_from_value): New function.
7258 (font_style_symbolic): Use it.
7259
7260 * font.h (font_style_symbolic_from_value): Declare new function.
7261
72622008-06-13 Juanma Barranquero <lekktu@gmail.com>
7263
7264 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
7265 <font-width-table>: Fix typos in docstrings.
7266
72672008-06-13 Daniel Engeler <engeler@gmail.com>
7268
7269 These changes add serial port access.
7270 * process.c: Add HAVE_SERIAL.
7271 (Fdelete_process, Fprocess_status, Fset_process_buffer)
7272 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
7273 (list_processes_1, select_wrapper, Fstop_process)
7274 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
7275 (status_notify): Modify to handle serial processes.
7276 [HAVE_SERIAL] (Fserial_process_configure)
7277 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
7278 New functions.
7279 * process.h (struct Lisp_Process): Add `type'.
7280 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
7281 New functions.
7282 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
7283 serial ports.
b71ac3dd 7284 (serial_open, serial_configure): New functions.
aac0c6e3
MR
7285 * w32.h: Add FILE_SERIAL.
7286 (struct _child_process): Add ovl_read, ovl_write.
7287
72882008-06-13 Kenichi Handa <handa@m17n.org>
7289
7290 * dispextern.h (enum lface_attribute_index): New member
7291 LFACE_FOUNDRY_INDEX.
7292
7293 * font.c (font_score): Delete arg alternate_families. Check only
7294 weight, slant, width, and size. Ignore the difference of alias
7295 style symbols.
7296 (font_sort_entites): Adjust for the above change. Reflect the
7297 order of font-driver to scores.
7298 (font_list_entities): Don't check alternate_familes here.
7299 (font_clear_prop): Handle foundry.
7300 (font_update_lface): Don't parse "foundry-family" form here.
7301 Handle FONT_FOUNDRY_INDEX.
7302 (font_find_for_lface): Likewise. Handle alternate families here.
7303 If registry is nil, try iso8859-1 and ascii-0.
7304 (font_open_for_lface): Pay attention to size in ENTITY.
7305 (font_open_by_name): Simplify by calling font_load_for_lface.
7306 (free_font_driver_list): Delete it.
7307 (font_update_drivers): Preserve the order of backends.
7308 (syms_of_font): Setting of sort_shift_bits adjusted for the change
7309 of font_score and font_sort_entites.
7310 (font_update_sort_order): Likewise.
7311
7312 * xfaces.c (LFACE_FOUNDRY): New macro.
7313 (check_lface_attrs): Check foundry.
7314 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
7315 (merge_face_vectors): Check foundry.
7316 (merge_face_ref): Likewise.
7317 (Finternal_set_lisp_face_attribute): Likewise.
7318 (x_update_menu_appearance): Likewise.
7319 (Finternal_get_lisp_face_attribute): Likewise.
7320 (lface_hash): Likewise.
7321 (lface_same_font_attributes_p): Likewise.
7322 (x_supports_face_attributes_p): Likewise.
7323 (tty_supports_face_attributes_p): Likewise.
7324 (Finternal_set_alternative_font_family_alist): Intern strings.
7325 (Finternal_set_alternative_font_registry_alist): Downcase strings.
7326 (realize_default_face): Set LFACE_FOUNDRY (lface).
7327
7328 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
7329 font-driver at first.
7330
7331 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
7332
73332008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
7334
7335 * lread.c (Fload): Use xfree, not free on saved_doc_string.
7336
73372008-06-12 Jim Meyering <meyering@redhat.com>
7338
7339 Make unexec_free handle NULL the same way free does.
7340 * unexmacosx.c (unexec_free): Ignore a NULL argument.
7341
73422008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
7343
7344 * character.h (CHAR_TO_BYTE_SAFE): New macro.
7345 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
7346 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
7347 (WEAK_ALIAS): Simplify.
7348 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
7349 when searching a unibyte buffer.
7350
73512008-06-12 Chong Yidong <cyd@stupidchicken.com>
7352
7353 * xfns.c (Fx_select_font): Rename from x-font-dialog.
7354
73552008-06-12 Juanma Barranquero <lekktu@gmail.com>
7356
7357 * w32font.c: Include ctype.h.
7358
73592008-06-11 Jason Rumney <jasonr@gnu.org>
7360
7361 * w32font.c (w32font_encode_char): Detect missing glyphs that are
7362 misreported as space.
7363 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
7364 as aliases for registry iso10646-1.
7365
73662008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
7367
7368 * buffer.c (clone_per_buffer_values): Skip `name'.
7369
73702008-06-11 Chong Yidong <cyd@stupidchicken.com>
7371
7372 * font.c (font_parse_fcname): Fix last change; accept decimal
7373 points in font size.
7374
73752008-06-10 Jason Rumney <jasonr@gnu.org>
7376
7377 * w32uniscribe.c (add_opentype_font_name_to_list):
7378 Skip non unicode fonts.
7379
73802008-06-10 Chong Yidong <cyd@stupidchicken.com>
7381
7382 * xfns.c (Fx_font_dialog): New function.
7383
7384 * gtkutil.c (xg_dialog_response_cb): Rename from
7385 xg_file_response_callback.
7386 (pop_down_dialog): Rename from pop_down_file_dialog.
7387 (xg_get_file_name): Callers changed.
7388 (xg_get_font_name): New function.
7389
7390 * gtkutil.h (xg_get_font_name): Insert prototype.
7391
73922008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7393
7394 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
7395 x_underline_minimum_display_offset.
7396 (syms_of_xdisp): Declare it here rather than in xterm.c.
7397 * dispextern.h (underline_minimum_offset): Declare it.
7398 * w32term.c (x_draw_glyph_string): Use it.
7399 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
7400 (syms_of_xterm): Don't declare it any more.
7401 (x_draw_glyph_string): Adjust to the new name.
7402
74032008-06-10 David De La Harpe Golden <david@harpegolden.net> (tiny change)
7404
7405 * xterm.c (x_underline_minimum_display_offset): New var.
7406 (x_draw_glyph_string): Use it.
7407 (syms_of_xterm): Declare it.
7408
74092008-06-10 Chong Yidong <cyd@stupidchicken.com>
7410
7411 * font.c (font_parse_fcname): Accept GTK-style font names too.
7412
74132008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
7414
7415 * dired.c (file_name_completion): Don't return t if the match is exact
7416 but with different capitalization.
7417 * minibuf.c (Ftry_completion): Simplify.
7418
7419 * window.c (Vwindow_point_insertion_type): New var.
7420 (set_window_buffer): Use it.
7421 (syms_of_window): Init and export it to Lisp.
7422
74232008-06-10 Kenichi Handa <handa@m17n.org>
7424
7425 * font.h (font_intern_prop): Prototype adjusted.
7426
7427 * font.c (font_intern_prop): New arg force_symbol.
7428 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
7429 Adjust for the change of font_intern_prop.
7430
7431 * ftfont.c (ftfont_pattern_entity):
7432 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
7433 (w32_registry):
7434 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
7435 the change of font_intern_prop.
7436
74372008-06-09 Juanma Barranquero <lekktu@gmail.com>
7438
7439 * w32menu.c (digest_single_submenu): Declare extern.
7440
74412008-06-09 Jason Rumney <jasonr@gnu.org>
7442
7443 * w32term.c (x_make_frame_visible): Use alternate restore flags.
7444
7445 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
7446 (parse_single_submenu): Remove.
7447 (digest_single_submenu): Remove.
7448 (syms_of_w32menu): Don't initialise variables that have moved
7449 to menu.c.
7450 (set_frame_menubar): Sync with version in xmenu.c.
7451 (w32_menu_show): Sync with xmenu_show in xmenu.c.
7452
7453 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
7454 Make static again.
7455
74562008-06-09 Jason Rumney <jasonr@gnu.org>
7457
7458 Changes to w32 files related to the move of common menu code
7459 to menu.c on 2008-06-08 by Chong Yidong.
7460
7461 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
7462 defs to w32gui.h.
7463 (single_keymap_panes, push_menu_item, push_menu_pane):
7464 Make globally visible.
7465
7466 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
7467 (local_free, malloc_widget_value, free_widget_value)
7468 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
7469 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
7470 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
7471 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
7472 (menu_items, menu_items_allocated, menu_items_used)
7473 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
7474 (init_menu_items, finish_menu_items, discard_menu_items)
7475 (grow_menu_items, push_submenu_start, push_submenu_end)
7476 (push_left_right_boundary, push_menu_pane, push_menu_item)
7477 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
7478 (free_menubar_widget_tree_value, parse_single_submenu)
7479 (update_submenu_strings): Remove functions.
7480 (xmalloc_widget_value): Remove and declare extern.
7481
7482 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
7483 (OBJ1): Build it.
7484
7485 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
7486 (local_heap, local_alloc, local_free, malloc_widget_value)
7487 (free_widget_value): Define here.
7488
74892008-06-09 Kenichi Handa <handa@m17n.org>
7490
7491 * font.h (Qascii_0): Extern it.
7492
7493 * font.c (Qascii_0): New variable.
7494 (syms_of_font): DEFSYM it.
7495 (font_open_by_name): If the registry "iso8859-1" fails, try also
7496 "ascii-0".
7497
7498 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
7499
75002008-06-08 Kenichi Handa <handa@m17n.org>
7501
7502 * .gdbinit (xfont): New command.
7503
75042008-06-08 Andreas Schwab <schwab@suse.de>
7505
7506 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
7507 * Makefile.in (menu.o): Update dependencies.
7508
7509 * Makefile.in (obj): Always add menu.o.
7510 * emacs.c (main): Always call syms_of_menu.
7511 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
7512
75132008-06-08 Chong Yidong <cyd@stupidchicken.com>
7514
7515 * Makefile.in: Compile menu.c.
7516
7517 * lisp.h: Declare syms_of_menu.
7518
7519 * emacs.c (main): Call syms_of_menu.
7520
7521 * keyboard.h: Relocate platform-independent menu definitions from
7522 xmenu.c.
7523
7524 * menu.c: New file. Relocate platform-independent menu
7525 definitions from xmenu.c. Suggested by Adrian Robert.
7526
7527 * xmenu.c: Remove platform-independent menu definitions.
7528 (menu_items menu_items_inuse, menu_items_allocated)
7529 (menu_items_used, menu_items_n_panes)
7530 (menu_items_submenu_depth): Move to keyboard.h.
7531 (init_menu_items, finish_menu_items, unuse_menu_items)
7532 (discard_menu_items, restore_menu_items, save_menu_items)
7533 (grow_menu_items, push_submenu_start, push_submenu_end)
7534 (push_left_right_boundary, push_menu_pane, push_menu_item)
7535 (keymap_panes, single_keymap_panes, single_menu_item)
7536 (list_of_panes, list_of_items, find_and_call_menu_selection)
7537 (xmalloc_widget_value, free_menubar_widget_value_tree)
7538 (parse_single_submenu, digest_single_submenu)
7539 (update_submenu_strings): Move to menu.c.
7540
75412008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
7542
7543 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
7544
75452008-06-06 Miles Bader <miles@gnu.org>
7546
7547 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
7548 face, not frame default.
7549
75502008-06-05 Martin Rudalics <rudalics@gmx.at>
7551
7552 * window.c (pop_up_windows, pop_up_frames)
7553 (display_buffer_reuse_frames, Vpop_up_frame_function)
7554 (Vdisplay_buffer_function, Veven_window_heights)
7555 (Vspecial_display_buffer_names, Vspecial_display_regexps)
7556 (Vspecial_display_function, Vsame_window_buffer_names)
7557 (Vsame_window_regexps, split_height_threshold)
7558 (Vsplit_window_preferred_function): Move those vars to window.el.
7559 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
7560 (Fdisplay_buffer): Move those functions to window.el.
7561 (syms_of_window): Remove corresponding declarations.
7562 (display_buffer): New function.
7563 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
7564 * dispnew.c (Flast_nonminibuf_frame): New function.
7565 * buffer.c (Fpop_to_buffer): Move to window.el.
7566
75672008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7568
7569 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
7570
75712008-06-05 Kenichi Handa <handa@m17n.org>
7572
7573 * coding.c (detect_coding): Fix previous change.
7574 (detect_coding_system): Likewise.
7575
75762008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7577
7578 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
7579
7580 * keymap.c (Vminibuffer_local_filename_must_match_map):
7581 Rename from Vminibuffer_local_must_match_filename_map.
7582 (syms_of_keymap):
7583 * minibuf.c (Fcompleting_read): Adjust accordingly.
7584 * commands.h: Rename declaration as well.
7585
75862008-06-05 Kenichi Handa <handa@m17n.org>
7587
7588 * font.c (Ffont_spec): Don't use font_parse_family_registry for
7589 family name.
7590 (Ffont_put): Likewise.
7591
7592 * fontset.c (fontset_find_font): Call font_open_for_lface with the
7593 current font-spec.
7594
7595 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
7596 is unspecified.
7597
7598 * xfaces.c (realize_x_face): If the font-related face attributes
7599 are the same as those of default face, realize a new fontset from
7600 default->fontset.
7601 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
7602
76032008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
7604
7605 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
7606 (move_it_in_display_line): New wrapper.
7607
7608 * window.c (window_scroll_pixel_based_preserve_x)
7609 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
7610 (window_scroll_pixel_based, window_scroll_line_based):
7611 Use them to preserve column positions.
7612 (syms_of_window): Initialize them.
7613
7614 * indent.c (Fvertical_motion): Extend first arg to allow passing an
7615 (HPOS . VPOS) pair.
7616
7617 * dispextern.h (move_it_in_display_line): Declare.
7618
76192008-06-05 Juanma Barranquero <lekktu@gmail.com>
7620
7621 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
7622 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
7623 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
7624
76252008-06-04 Juanma Barranquero <lekktu@gmail.com>
7626
7627 * window.c (Fset_window_parameter): Doc fix.
7628 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
7629
76302008-06-04 Joakim Verona <joakim@verona.se>
7631
7632 * window.h (struct window): Add new member window_parameters.
7633
7634 * window.c (Fwindow_parameters, Fwindow_parameter)
7635 (Fset_window_parameter): New defuns.
7636 (syms_of_window): Defsubr the new defuns.
7637 (make_window): Initialize window_parameters to nil.
7638
76392008-06-04 John Paul Wallington <jpw@pobox.com>
7640
7641 * eval.c (Fdefmacro): Doc fix.
7642
76432008-06-04 Kenichi Handa <handa@m17n.org>
7644
7645 * coding.c (detect_coding): Fix handling of coding->head_ascii.
7646 Be sure to call setup_coding_system when we find a proper coding system.
7647 (detect_coding_system): Fix handling of coding->head_ascii.
7648
76492008-06-03 Andreas Schwab <schwab@suse.de>
7650
7651 * font.c (font_prop_validate_spacing): Fix last change.
7652
76532008-06-03 Kenichi Handa <handa@m17n.org>
7654
7655 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
7656 (font_parse_fcname): Fix handling of unknown key.
7657
7658 * xfont.c (xfont_list): Try an alias.
7659
7660 * charset.c (char_charset): Return NULL if the arg charset_list is
7661 specified and C doesn't belong to any of them.
7662
76632008-06-02 Chip Coldwell <coldwell@redhat.com>
7664
7665 * font.c (font_pixel_size): Don't take cdr of an integer.
7666
76672008-06-02 Jim Meyering <meyering@redhat.com>
7668
7669 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
7670 * alloc.c (xfree): Return right away for a NULL arg.
7671 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
7672 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
7673 * mac.c (create_apple_event_from_event_ref): Likewise.
7674 (create_apple_event_from_drag_ref, cfstring_create_normalized):
7675 Likewise.
7676 * doprnt.c (doprnt1): Likewise.
7677 * frame.c (frame): Likewise.
7678 * keyboard.c (wipe_kboard): Likewise.
7679 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
7680 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
7681 * term.c (tty_default_color_capabilities, maybe_fatal)
7682 (delete_tty): Likewise.
7683 * w16select.c (string): Likewise.
7684 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
7685 * w32bdf.c (w32_free_bdf_font): Likewise.
7686 * w32fns.c (w32_unload_font): Likewise.
7687 * w32font.c (w32font_close): Likewise.
7688 * window.c (size_window): Likewise.
7689 * xselect.c (receive_incremental_selection): Likewise.
7690 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
7691 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
7692 * w32.c (stat): Likewise.
7693
7694 Remove useless if-before-free tests.
7695 * editfns.c (Fset_time_zone_rule): Likewise.
7696 * lread.c (nosuffix): Likewise.
7697 * ralloc.c (get_bloc): Likewise.
7698 * regex.c (reg_free): Likewise.
7699 * xftfont.c (xftfont_open, xftfont_close): Likewise.
7700 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
7701 * xsmfns.c (smc_save_yourself_CB): Likewise.
7702
77032008-06-02 Kenichi Handa <handa@m17n.org>
7704
7705 * font.c (font_find_for_lface): Handle float font size.
7706 (font_open_for_lface): Likewise.
7707
7708 * xfaces.c (x_supports_face_attributes_p): Check face->font before
7709 comparing the properties.
7710
77112008-06-01 Jason Rumney <jasonr@gnu.org>
7712
7713 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
7714 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
7715 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
7716 Don't add empty script list.
7717 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
7718
77192008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
7720
7721 * Makefile.in (dot, dotdot): Remove, update users.
7722 ".." has been used elsewhere in the file for a long time.
7723 (LIBXT_STATIC): Remove conditional based on unused variable.
7724
77252008-06-01 Miles Bader <miles@gnu.org>
7726
7727 * xfaces.c (Vface_remapping_alist): New variable.
7728 (syms_of_xfaces): Initialize it.
7729 (enum named_merge_point_kind): New type.
7730 (struct named_merge_point): Add `named_merge_point_kind' field.
7731 (push_named_merge_point): Make cycle detection respect different
7732 named-merge-point kinds.
7733 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
7734 Remove face-name alias resolution.
7735 (lface_from_face_name): New definition using
7736 `lface_from_face_name_no_resolve'.
7737 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
7738 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
7739 (get_lface_attributes): New definition that layers face-remapping on
7740 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
7741 (lookup_basic_face): New function.
7742 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
7743 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
7744 `get_lface_attributes'.
7745 (face_at_buffer_position): Use `lookup_basic_face' to lookup
7746 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
7747 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
7748
7749 * xdisp.c (init_iterator): Pass base_face_id through
7750 `lookup_basic_face' when we actually use it as a face-id.
7751 (handle_single_display_prop): Use `lookup_basic_face' to lookup
7752 DEFAULT_FACE_ID.
7753
7754 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
7755 lookup the initial face-id.
7756
7757 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
7758
77592008-06-01 Juanma Barranquero <lekktu@gmail.com>
7760
7761 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
7762 (Fremove_text_properties): Fix typos in docstrings.
7763
77642008-05-31 Kenichi Handa <handa@m17n.org>
7765
7766 * font.c (font_list_entities): Fix the car part of data to be
7767 stored in the cache.
7768
7769 * ftfont.c (ftfont_font_format): Don't use strcasestr.
7770
77712008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7772
7773 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
7774 Add a `test' argument so another predicate than `equal' can be used.
7775 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
7776 (map_char_table): Remove unused vars `c' and `i'.
7777 * lisp.h (Foptimize_char_table): Adjust declaration.
7778 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
7779
77802008-05-30 Kenichi Handa <handa@m17n.org>
7781
7782 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
7783 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
7784 defined.
7785
77862008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
7787
7788 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
7789 (Fmake_variable_frame_local): Disallow mixing buffer-local and
7790 frame-local settings for the same variable.
7791
77922008-05-30 Kenichi Handa <handa@m17n.org>
7793
7794 * fontset.c (Ffont_info): Move to font.c.
7795 (syms_of_fontset): Delete defsubr of Sfont_info.
7796
7797 * font.c (font_style_to_value, font_score): Delete casting of the
7798 args to xstcasecmp.
7799 (register_font_driver): Increment num_font_drivers only when
7800 registering the driver globally.
7801 (Ffont_info): Move from fontset.c. Handle a font object too.
7802 (syms_of_font): Defsubr Sfont_info.
7803
78042008-05-29 Kenichi Handa <handa@m17n.org>
7805
7806 * coding.h (enum define_coding_utf8_arg_index): New enum.
7807 (enum coding_attr_index): Change coding_attr_utf_16_bom to
7808 coding_attr_utf_bom.
7809 (enum utf_bom_type): Rename from utf_16_bom_type.
7810 (struct utf_16_spec): Adjust for the above change.
7811 (struct coding_system): Add utf_8_bom in `spec' union.
7812
7813 * coding.c (CODING_UTF_8_BOM): New macro.
7814 (enum coding_category): Delete coding_category_utf_8, add
7815 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
7816 coding_category_utf_8_sig.
7817 (CATEGORY_MASK_UTF_8): Delete it.
7818 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
7819 (CATEGORY_MASK_UTF_8_SIG): New macros.
7820 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
7821 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
7822 CATEGORY_MASK_UTF_8_SIG.
7823 (CATEGORY_MASK_UTF_8): New macro.
7824 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
7825 (detect_coding_utf_8): Check BOM.
7826 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
7827 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
7828 (encode_coding_utf_16): Likewise.
7829 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
7830 (detect_coding, detect_coding_system): Handle utf-8-auto.
7831 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
7832 (syms_of_coding): Fix setting up of Vcoding_category_table.
7833
78342008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
7835
7836 * process.c (Faccept_process_output): If `millisec' is non-nil,
7837 `seconds' default to 0.
7838 (wait_reading_process_output): Also return non-nil if we read output
7839 from a non-running process.
7840
78412008-05-29 Jason Rumney <jasonr@gnu.org>
7842
7843 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
7844 `raster' specified.
7845 (add_font_entity_to_list): Allow non-opentype truetype fonts back
7846 in the uniscribe backend, but disallow any font that has no
7847 unicode subrange support.
7848
78492008-05-29 Juanma Barranquero <lekktu@gmail.com>
7850
7851 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
7852 Fix typos in docstrings.
7853
78542008-05-29 Kenichi Handa <handa@m17n.org>
7855
7856 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
7857 (Fx_family_fonts): Set frame correctly.
7858
78592008-05-28 Jason Rumney <jasonr@gnu.org>
7860
7861 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
7862
78632008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
7864
7865 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
7866 calling build_annotations.
7867
78682008-05-28 Juanma Barranquero <lekktu@gmail.com>
7869
7870 * coding.c (Fdecode_coding_region, Fencode_coding_region)
7871 (Fencode_coding_string):
7872 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
7873 <latin-extra-code-table>: Fix typos in docstrings.
7874 (syms_of_coding) <coding-system-alist>: Doc fix.
7875 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
7876
78772008-05-28 Kenichi Handa <handa@m17n.org>
7878
7879 * fontset.c (Ffont_info): Don't call font_close_object.
7880
7881 * font.c (font_parse_family_registry): Use Ffont_put to validate
7882 foundry and family.
7883 (font_delete_unmatched): Don't check spacing.
7884 (font_list_entities): Add spacing to the spec to list fonts.
7885
7886 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
7887 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
7888
7889 * coding.c (encode_coding_raw_text): Fix previous change.
7890 (encode_coding_object): When the dst_object is a buffer and is
7891 different from src_object, move gap to PT.
7892
78932008-05-27 Chong Yidong <cyd@stupidchicken.com>
7894
7895 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
7896
78972008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7898
7899 * coding.c (encode_coding_raw_text): Set coding->produced_char for
7900 all branches. Compute it differently.
7901
7902 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
7903
79042008-05-27 Juanma Barranquero <lekktu@gmail.com>
7905
7906 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
7907 into "else if () ... else ...".
7908
79092008-05-27 Jason Rumney <jasonr@gnu.org>
7910
7911 * w32font.c (w32font_open_internal): Determine if glyph indices
7912 are likely to work here.
7913
79142008-05-27 Chong Yidong <cyd@stupidchicken.com>
7915
7916 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
7917 draw overlap glyphs with appropriate highlighting.
7918
79192008-05-27 Kenichi Handa <handa@m17n.org>
7920
7921 * xfont.c (xfont_open): Fix calculation of font->average_width.
7922
79232008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
7924
7925 * casefiddle.c (casify_object): Try to guess better whether the
7926 argument is a byte or a char.
7927
79282008-05-26 Andreas Schwab <schwab@suse.de>
7929
7930 * xselect.c (x_reply_selection_request): Properly handle format == 32.
7931 Always send multiples of format size.
7932
7933 * xterm.c (x_set_frame_alpha): Fix type mismatch.
7934
79352008-05-26 Jason Rumney <jasonr@gnu.org>
7936
7937 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
7938 (compute_metrics): Don't set failure if we just cleared the cache.
7939 (w32_weight_table): Remove unused variable.
7940 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
7941 backwards compatibility.
7942
79432008-05-25 Kenichi Handa <handa@m17n.org>
7944
7945 * w32term.c (x_draw_glyph_string):
7946 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
7947
7948 * xfaces.c: Delete unused function prototypes.
7949 (xstrlwr, font_frame): Delete them.
7950 (clear_face_cache): Delete unused variable.
7951
7952 * xftfont.c (xftfont_open): Delete unused variable.
7953 If underline_thickness is not 1, adjust underline_position.
7954
7955 * ftxfont.c (ftxfont_open): Delete unused variable.
7956
7957 * fontset.c (face_for_char): Optimize for the case of no charset
7958 property.
7959
7960 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
7961 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
7962 (otf_open, font_otf_capability, generate_otf_features)
7963 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
7964 Comment out by surrounding "#if 0" and "#endif" for the moment.
7965 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
7966 (syms_of_font): Codes for accessing above commented out.
7967
79682008-05-24 Eli Zaretskii <eliz@gnu.org>
7969
7970 * w32proc.c: Include dispextern.h.
7971
7972 * w32.c: Include dispextern.h.
7973
79742008-05-23 Juanma Barranquero <lekktu@gmail.com>
7975
7976 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
7977 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
7978 Fix typos in docstrings.
7979
79802008-05-23 Jason Rumney <jasonr@gnu.org>
7981
7982 * xsmfns.c: Remove includes that are already included by config.h.
7983
79842008-05-23 Kenichi Handa <handa@m17n.org>
7985
7986 * charset.c (Qemacs, charset_emacs): New variables.
7987 (char_charset): Fix for non-Unicode characters.
7988 (syms_of_charset): Define charset_emacs.
7989
7990 * w32term.c (x_draw_glyph_string): Be sure to update
7991 s->underline_thickness and s->underline_position. Be sure to draw
7992 underline within the current line area.
7993
7994 * xterm.c (x_draw_glyph_string): Be sure to update
7995 s->underline_thickness and s->underline_position. Be sure to draw
7996 underline within the current line area.
7997
7998 * fontset.c: Delete unused variables and add casting for char *
7999 throughout the file.
8000 (fontset_font): Try the fallback fonts of the current fontset
8001 before consulting the default fontset.
8002
8003 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
8004
8005 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
8006
80072008-05-22 Jason Rumney <jasonr@gnu.org>
8008
8009 * font.c: Don't include strings.h.
8010
8011 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
8012
8013 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
8014 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
8015 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
8016 to call xstrcasecmp.
8017
8018 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
8019
8020 * fontset.c (fs_query_fontset): Use xstrcasecmp.
8021
8022 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
8023
8024 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
8025
80262008-05-22 Kenichi Handa <handa@m17n.org>
8027
8028 * puresize.h (BASE_PURESIZE): Increase to 1220000.
8029
8030 * font.c (font_prop_validate_style): Adjust for the format
8031 change of font_style_table.
8032
8033 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
8034 two args.
8035
8036 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
8037 two args.
8038
80392008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
8040
8041 * minibuf.c (keys_of_minibuf): Delete.
8042 * lisp.h (keys_of_minibuf): Delete.
8043 * emacs.c (main): Don't call keys_of_minibuf.
8044
80452008-05-22 Kenichi Handa <handa@m17n.org>
8046
8047 * ftfont.c (ftfont_resolve_generic_family): Rename from
8048 ftfont_list_generic_family. Return a single family for each
8049 generic family.
8050 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
8051 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
8052 Call font_add_log.
8053 (ftfont_match): Call font_add_log.
8054
8055 * font.h (Ffont_xlfd_name): EXFUN adjusted.
8056 (FONT_DEBUG): Define it.
8057 (font_add_log): Extern it.
8058 (font_assert): Rename from xassert.
8059
8060 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
8061 (xfont_list_family): Call font_add_log.
8062 (xfont_match): Likewise.
8063 (memq_no_quit): Delete.
8064
8065 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
8066 call of Ffont_xlfd_name.
8067
8068 * xfaces.c (struct table_entry, slant_table, weight_table)
8069 (swidth_table): Move to font.c.
8070
8071 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
8072 xassert are changed to font_assert. Delete many unused variables.
8073 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
8074 New variables.
8075 (struct table_entry): Move from xfaces.c and modified.
8076 (weight_table, slant_table, width_table): Move from xfaces.c and
8077 contents adjusted for the change of struct table_entry.
8078 (font_style_to_value, font_style_symbolic): Adjust for the
8079 format change of font_style_table.
8080 (font_parse_family_registry): Don't overwrite existing foundry and
8081 family of font_spec.
8082 (font_score): Fix calculation of diff for sizes.
8083 (font_sort_entites): Call font_add_log.
8084 (font_delete_unmatched): Return a newly created list.
8085 (font_list_entities): Fix previous change. Call font_add_log.
8086 (font_matching_entity, font_open_entity, font_close_entity):
8087 Call font_add_log.
8088 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
8089 (Finternal_set_font_style_table): Delete.
8090 (BUILD_STYLE_TABLE): New macro.
8091 (build_style_table): New function.
8092 (Vfont_log, font_log_env_checked): New variables.
8093 (font_add_log): New function.
8094 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
8095 Declare Lisp variables "font-weight-table", "font-slant-table",
8096 "font-width-table", and "font-log". Initialize font_style_table.
8097
80982008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
8099
8100 * xterm.c (x_set_frame_alpha): Move declarations before statements.
8101
81022008-05-21 Seiji Zenitani <zenitani@mac.com>
8103 Ryo Yoshitake <ryo@shiftmode.net>
8104
8105 * frame.c (Qalpha): Add a new frame parameter `alpha'.
8106 (Vframe_alpha_lower_limit): New variable.
8107 (x_set_alpha): New function.
8108
8109 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
8110
8111 * xfns.c (x-create-frame, Qalpha):
8112 Initialize the frame parameter `alpha'.
8113 * xterm.c (OPAQUE, OPACITY): New.
8114 (x_set_frame_alpha): New function.
8115 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
8116
8117 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
8118 * w32fns.c (w32_frame_parm_handlers): Likewise.
8119
81202008-05-20 Jason Rumney <jasonr@gnu.org>
8121
8122 * w32font.c (add_font_entity_to_list): Don't add non-opentype
8123 truetype fonts to opentype list.
8124
81252008-05-20 Juanma Barranquero <lekktu@gmail.com>
8126
8127 * fontset.c (Ffontset_info): Doc fix.
8128 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
8129 <ignore-relative-composition>: Fix typos in docstrings.
8130
8131 * font.c (syms-of-font) <font-encoding-alist>:
8132 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
8133 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
8134 (Ffont_otf_alternates): Doc fixes.
8135
81362008-05-20 Kenichi Handa <handa@m17n.org>
8137
8138 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
8139 font.h through out the file.
8140 (FONT_DRIVERS): Rename from FONTOBJ.
8141 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
8142 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
8143
8144 * emacs.c (main): Call syms_of_font unconditionally.
8145
8146 * font.h (find_font_encoding): Extern it.
8147
8148 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
8149 fontset.c.
8150 (font_pixel_size)[! HAVE_WINDOW_SYSTEM]: Return 1.
8151 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
8152 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
8153 only when HAVE_WINDOW_SYSTEM is defined.
8154 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
8155 when HAVE_WINDOW_SYSTEM is defined.
8156
8157 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
8158 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
8159
8160 * xfaces.c: Include font.h unconditionally.
8161 (merge_face_ref, merge_face_vectors)
8162 (Finternal_set_lisp_face_attribute): Cancel the previous change.
8163
81642008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
8165
8166 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
8167 indirect_variable.
8168 * eval.c (lisp_indirect_variable): New fun.
8169 (Fuser_variable_p): Use it.
8170
81712008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
8172
8173 * lisp.h (indirect_variable):
8174 * data.c (indirect_variable, let_shadows_buffer_binding_p):
8175 Use Lisp_Symbol pointers rather than Lisp_Object.
8176 Adjust callers.
8177 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
8178 To this end, change calling-convention.
8179
8180 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
8181 if some non-hidden buffers are selected by string&pred.
8182
81832008-05-19 Chong Yidong <cyd@stupidchicken.com>
8184
8185 * process.c (wait_reading_process_output): Always check status
8186 when in batch mode.
8187
81882008-05-19 Kenichi Handa <handa@m17n.org>
8189
8190 * font.c (font_list_entities): Fix handling of cache.
8191 (font_matching_entity): Likewise.
8192
8193 * ftfont.c (cs_iso8859_1): Delete.
8194 (ft_face_cache): New variable.
8195 (struct ftfont_info): New member fc_charset_idx.
8196 (ftfont_build_basic_charsets): Delete.
8197 (fc_charset_table): New variable.
8198 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
8199 . FC_CHARSET_IDX) as :font-entity property in the font entity.
8200 Callers changed.
8201 (ftfont_lookup_cache, ftfont_get_charset): New functions.
8202 (ftfont_spec_pattern): New argument fc_charset_idx.
8203 Check registry more rigidly. Change callers.
8204 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
8205 change of :font-entity property of the font.
8206
8207 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
8208 property of the font.
8209
82102008-05-18 Juanma Barranquero <lekktu@gmail.com>
8211
8212 * coding.c (Fcoding_system_p): Rename argument to match docstring.
8213 (Funencodable_char_position, Fcheck_coding_systems_region)
8214 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
8215 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
8216 (Ffind_operation_coding_system, Fset_coding_system_priority)
8217 (Fcoding_system_eol_type): Doc fixes.
8218
82192008-05-17 Glenn Morris <rgm@gnu.org>
8220
8221 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
8222
82232008-05-16 Eli Zaretskii <eliz@gnu.org>
8224
8225 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
8226 and st_gid.
8227
8228 * frame.c (Fdelete_frame): Don't call font_update_drivers if
8229 HAVE_WINDOW_SYSTEM is not defined.
8230
8231 * xfaces.c (merge_face_ref, merge_face_vectors)
8232 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
8233 HAVE_WINDOW_SYSTEM is defined.
8234 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
8235
82362008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
8237
8238 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
8239
82402008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8241
8242 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
8243
82442008-05-15 Kenichi Handa <handa@m17n.org>
8245
8246 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
8247 preference.
8248
82492008-05-15 Glenn Morris <rgm@gnu.org>
8250
8251 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
8252
82532008-05-15 Chong Yidong <cyd@stupidchicken.com>
8254
8255 * fns.c (init_fns): Don't initialize weak_hash_tables here.
8256 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
8257
8258 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
8259
82602008-05-15 Kenichi Handa <handa@m17n.org>
8261
8262 * ftfont.c (ftfont_list): Downcase family name to check generic
8263 families.
8264
8265 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
8266 font-spec for QCfont value.
8267
8268 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
8269 buffer. Check the return value of it.
8270
82712008-05-14 Jason Rumney <jasonr@gnu.org>
8272
8273 * w32term.c (w32_get_glyph_overhangs): Remove.
8274 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
8275
82762008-05-14 Kenichi Handa <handa@m17n.org>
8277
8278 * font.c (font_prop_validate): Make nil a valid value.
8279 (font_clear_cache): Check if the cached vector of entities is nil
8280 or not.
8281
82822008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8283
8284 * emacs.c (main_thread): Conditionalize on
8285 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8286 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
8287
8288 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
8289 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
8290 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
8291
82922008-05-14 Kenichi Handa <handa@m17n.org>
8293
8294 * coding.c (detect_coding_iso_2022): Ignore a coding category that
8295 has no corresponding coding system.
8296
82972008-05-14 Jason Rumney <jasonr@gnu.org>
8298
8299 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
8300
8301 * w32font.h (w32font_open_internal): Update declaration.
8302
8303 * w32font.c (w32font_open_internal): Change last argument from
8304 w32font_info struct to font object. Fill in font object from
8305 font_entity. Get Outline metrics if possible. Use them to
8306 calculate underline position and thickness. Use xlfd name as name
8307 property. Don't set codepage.
8308 (w32font_open): Pass font_object to w32font_open_internal. Don't
8309 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
8310 (w32font_draw): Use s->font.
8311 (clear_cached_metrics): Don't clear non-existent blocks.
8312
8313 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
8314 font was not found.
8315 (x_draw_glyph_string): Use underline position and thickness from font.
8316
8317 * w32uniscribe.c (uniscribe_open): Pass font_object to
8318 w32font_open_internal.
8319
83202008-05-14 Kenichi Handa <handa@m17n.org>
8321
8322 These changes are to delete all legacy font-handling codes, and
8323 make Emacs use only font-backends.
8324
8325 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
8326 (frame.o, image.o, print.o): Depend on $(FONTSRC).
8327
8328 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
8329
8330 * charset.h (Vcharset_non_preferred_head)
8331 (Vcurrent_iso639_language): Extern them.
8332
8333 * charset.c (Vcharset_non_preferred_head): New variable.
8334 (Vcurrent_iso639_language): New variable.
8335 (syms_of_charset): Declare it as a Lisp variable.
8336 (char_charset): Don't check non preferred charsets. As a last
8337 resort, return charset_unicode.
8338 (Fset_charset_priority): Update Vcharset_non_preferred_head.
8339
8340 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
8341 conditionals. Don't check enable_font_backend. Delete all codes
8342 used only when USE_FONT_BACKEND is not defined.
8343
8344 * dispextern.h (struct glyph_string): Change type of `font' to
8345 `struct font *'.
8346 (struct glyph_string): New member underline_position and
8347 underline_thickness.
8348 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
8349 (struct face): Change type of `font' to `struct font *'. Remove
8350 members `font_name', `font_info_id'.
8351 (per_char_metric, encode_char): Delete externs.
8352 (calc_pixel_width_or_height): Adjust the prototype.
8353
8354 * emacs.c (enable_font_backend): Delete extern.
8355 (main): Don't set enable_font_backend. Don't check the command
8356 line argument "-disable-font-backend".
8357
8358 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
8359 (enum font_property_index): New members FONT_DPI_INDEX,
8360 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
8361 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
8362 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
8363 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
8364 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
8365 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
8366 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
8367 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
8368 (struct font_spec, struct font_entity): New structs.
8369 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
8370 (struct font): Many members from old "struct font_info" moved to
8371 here. Members font and entity deleted.
8372 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
8373 the new font-related objects.
8374 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
8375 (CHECK_FONT_GET_OBJECT): Likewise.
8376 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
8377 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
8378 (struct font_driver): New members case_sensitive anc check. Type
8379 of the member list and open changed.
8380 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
8381 (font_symbolic_width, font_find_object, font_get_spec)
8382 (font_set_lface_from_name): Delete extern.
8383 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
8384
8385 * font.c: Include <strings.h>.
8386 (enable_font_backend): Delete it.
8387 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
8388 (CHECK_VALIDATE_FONT_SPEC): Delete it.
8389 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
8390 (null_string): Delete it.
8391 (null_vector): Make it static.
8392 (font_family_alist): Delete it.
8393 (Qnormal): Extern it.
8394 (QCextra, QClanguage): Delete it.
8395 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
8396 (font_make_spec, font_make_entity, font_make_object)
8397 (font_intern_prop): Renamed from intern_downcase. Don't downcase
8398 the string. Callers changed.
8399 (font_pixel_size): Adjusted for the format change of font-related
8400 objects.
8401 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
8402 (font_style_to_value, font_style_symbolic): New function.
8403 (build_font_family_alist): Delete it.
8404 (font_registry_charsets): Use Fassoc_string instead of
8405 assq_no_quit.
8406 (font_prop_validate_symbol): Don't return null_string.
8407 (font_prop_validate_style): Adjusted for the change of
8408 style-related values in a font vector.
8409 (font_property_table): Delete entries for QClanguage and
8410 QCantialias, add entries for QCavgwidth.
8411 (get_font_prop_index): Delete the 2nd argument FROM.
8412 (font_prop_validate): Arguments changed.
8413 (font_put_extra): Adjusted for the change of font-related objects.
8414 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
8415 (font_parse_fcname, font_unparse_fcname)
8416 (font_prepare_composition): Likewise.
8417 (font_parse_family_registry): Renamed from font_merge_old_spec.
8418 (otf_open): Delete the 1st arg entity.
8419 (font_otf_capability): Adjusted for the above change.
8420 (font_score): New arg alternate_families. Adjusted for the change
8421 of font-related objects.
8422 (font_sort_entites): New arg best_only.
8423 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
8424 Delete them.
8425 (font_match_p): Check alternate families.
8426 (font_find_object): Delete it.
8427 (font_check_object): New function.
8428 (font_clear_cache): Adjusted for the change of font-related objects.
8429 (font_delete_unmatched): New arg.
8430 (font_list_entities): Call font_driver->list with a spec that
8431 doesn't specify style-related properties.
8432 (font_matching_entity): Arguments changed. Caller changed.
8433 (font_open_entity): Adjusted for the change of font-related objects.
8434 (font_close_object, font_has_char, font_encode_char)
8435 (font_get_name, font_get_spec): Likewise.
8436 (font_spec_from_name, font_clear_prop, font_update_lface):
8437 New functions.
8438 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
8439 (font_prepare_for_face, font_done_for_face, font_open_by_name)
8440 (font_at): Adjusted for the change of font-related objects.
8441 (font_range): New function.
8442 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
8443 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
8444 (Fcopy_font_spec, Fmerge_font_spec): New function.
8445 (Ffont_family_list): Renamed from list-families.
8446 (Finternal_set_font_style_table): Arguments changed.
8447 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
8448 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
8449 change of font-related objects.
8450 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
8451
8452 * fontset.h (struct font_info): Delete it. Most members go to
8453 struct font.
8454 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
8455 (enum FONT_SPEC_INDEX): Delete it.
8456 (font_info, list_fonts_func, load_font_func, query_font_func)
8457 (set_frame_fontset_func, find_ccl_program_func)
8458 (get_font_repertory_func, new_fontset_from_font_name): Delete
8459 externs.
8460 (fontset_from_font_name): Extern it.
8461 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
8462 (FONT_INFO_FROM_FACE): Deleted.
8463 (face_for_font): Adjust prototype.
8464
8465 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
8466 conditionals. Don't check enable_font_backend. Delete all codes
8467 used only when USE_FONT_BACKEND is not defined.
8468 (get_font_info_func, list_font_func, load_font_func)
8469 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
8470 (get_font_repertory_func): Delete them.
8471 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
8472 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
8473 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
8474 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
8475 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
8476 (fontset_compare_rfontdef): New function.
8477 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
8478 rfont-defs by qsort. Adjusted for the change of font-group vector.
8479 (load_font_get_repertory): Deleted.
8480 (fontset_find_font): Use new macros to ref/set elements of
8481 font-def and rfont-def.
8482 (fontset_font): Fix the timing of remembering that no font for C.
8483 (free_face_fontset): Do nothing if the face has no fontset.
8484 (face_suitable_for_char_p): Use new macros to ref/set elements of
8485 rfont-def.
8486 (face_for_char): Likewise. Call face_for_char with font_object.
8487 (fs_load_font): Delete. Delete #pragma surrounding it.
8488 (fs_query_fontset): Use strcasecmp instead of strcmp.
8489 (generate_ascii_font_name): Adjusted for the format change of
8490 font-spec.
8491 (Fset_fontset_font): Likewise. Use new macros to set elements of
8492 font-def.
8493 (Fnew_fontset): Use font_unparse_xlfd to generate
8494 FONTSET_ASCII (fontset).
8495 (new_fontset_from_font_name): Deleted.
8496 (fontset_from_font): Renamed from new_fontset_from_font. Check if
8497 a fontset is already created for the font. FIx updating of
8498 Vfontset_alias_alist.
8499 (fontset_ascii_font): Deleted.
8500 (Ffont_info): Adjusted for the format change of font-spec.
8501 (Finternal_char_font): Likewise.
8502 (Ffontset_info): Likewise.
8503 (syms_of_fontset): Don't check load_font_func.
8504
8505 * fns.c (internal_equal): Handle PREV_FONT.
8506
8507 * frame.h: Delete USE_FONT_BACKEND conditional.
8508
8509 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
8510 conditionals. Don't check enable_font_backend. Delete all codes
8511 used only when USE_FONT_BACKEND is not defined.
8512 (x_set_font): Call x_new_font, not x_new_fontset2.
8513 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
8514 already set for the frame.
8515
8516 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
8517 a font-entity by font_make_entity. Use font_intern_prop instead
8518 of intern_downcase. Use FONT_SET_STYLE to set a style-related
8519 font property. If a font is scalable, set avgwidth property to 0.
8520 Set font-entity property by font_put_extra.
8521 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
8522 (ffont_driver): Adjusted for the change of struct font_driver.
8523 (ftfont_spec_pattern): New function.
8524 (ftfont_list): Return a list, not vector.
8525 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
8526 (ftfont_list_family): Don't downcase names.
8527 (ftfont_free_entity): Deleted.
8528 (ftfont_open): Return a font-object. Adjusted for the change of
8529 struct font. Get underline_thickness and underline_position from
8530 font property. Don't update dpyinfo->smallest_font_height and
8531 dpyinfo->smallest_char_width.
8532 (ftfont_close): Don't free `struct font'.
8533 (ftfont_has_char): Adjusted for the format change of font-entity.
8534 (ftfont_encode_char, ftfont_text_extents): Likewise.
8535
8536 * ftxfont.c (ftxfont_list): Return a list, not vector.
8537 (ftxfont_open): Return a font-object. Adjusted for the change of
8538 struct font. Get underline_thickness and underline_position from
8539 font property. Don't update dpyinfo->smallest_font_height and
8540 dpyinfo->smallest_char_width.
8541 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
8542 (ftxfont_draw): Adjusted for the change of struct font.
8543
8544 * image.c (image_ascent): Don't include "charset.h". Include
8545 "character.h" and "font.h".
8546
8547 * lisp.h (enum pvec_type): New member PREV_FONT.
8548 (Fassoc_string): EXFUN it.
8549
8550 * print.c: Include font.h.
8551 (print_object): Handle font-related objects.
8552
8553 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
8554 conditionals. Don't check enable_font_backend. Delete all codes
8555 used only when USE_FONT_BACKEND is not defined.
8556 (handle_auto_composed_prop): Do nothing if it->f is not on a
8557 window system. Check how many following characters can be
8558 displayed by the same font.
8559 (calc_pixel_width_or_height): Type of the 4th arg is changed to
8560 'struct font *'.
8561 (get_char_face_and_encoding): Assign the whole encoding task to
8562 the `encode-char' method of a font driver.
8563 (fill_composite_glyph_string): Adjusted for the change of `struct
8564 face' and `struct glyph_string'.
8565 (fill_glyph_string): Likewise.
8566 (get_per_char_metric): Arguments changed.
8567 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
8568 and `struct glyph_string'.
8569 (produce_stretch_glyph, calc_line_height_property)
8570 (x_produce_glyphs): Likewise.
8571
8572 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
8573 conditionals. Don't check enable_font_backend. Delete all codes
8574 used only when USE_FONT_BACKEND is not defined. Use
8575 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
8576 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
8577 (Qp): Extern them.
8578 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
8579 Deleted.
8580 (struct font_name): Deleted.
8581 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
8582 (compare_fonts_by_sort_order): New function.
8583 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
8584 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
8585 Deleted.
8586 (Fx_family_fonts): Use font_list_entities, and sort fonts by
8587 compare_fonts_by_sort_order.
8588 (Fx_font_family_list): Call Ffont_family_list.
8589 (face_numeric_value, face_numeric_weight, face_numeric_slant)
8590 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
8591 (face_symbolic_slant, face_symbolic_swidth)
8592 (split_font_name_into_vector, build_font_name_from_vector)
8593 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
8594 (font_rescale_ratio, split_font_name, build_font_name)
8595 (free_font_names, sort_fonts, x_face_list_fonts)
8596 (face_font_available_p, sorted_font_list, cmp_font_names)
8597 (font_list_1, concat_font_list, font_list, remove_duplicates):
8598 Deleted.
8599 (Fx_list_fonts): Use Ffont_list.
8600 (LFACE_AVGWIDTH): Deleted.
8601 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
8602 by FONTP.
8603 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
8604 (set_lface_from_font_name): Delete it.
8605 (set_lface_from_font): Renamed from
8606 set_lface_from_font_and_fontset. Caller changed. Don't set
8607 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
8608 for face.
8609 (merge_face_vectors): Copy font-spec if necessary.
8610 Clear properties of the font-spec if necessary.
8611 (merge_face_ref): Clear properties of the font-spec if necessary.
8612 (Finternal_set_lisp_face_attribute): Likewise.
8613 (set_font_frame_param): Use font_load_for_lface to load a
8614 font-object, and call Fmodify_frame_parameters with it.
8615 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
8616 font name by Ffont_xlfd_name.
8617 (Finternal_lisp_face_attribute_values): Don't check QCweight,
8618 QCslant, and QCwidth.
8619 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
8620 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
8621 Compare fonts by EQ.
8622 (lookup_non_ascii_face): Deleted.
8623 (face_for_font): The 2nd argument changed.
8624 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
8625 Check atomic font properties by case insensitive.
8626 (realize_non_ascii_face): Set face->overstrike correctly.
8627 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
8628 (dump_realized_face): Get font name from
8629 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
8630
8631 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
8632 conditionals. Don't check enable_font_backend. Delete all codes
8633 used only when USE_FONT_BACKEND is not defined.
8634 (xic_create_xfontset): Original code deleted and renamed from
8635 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
8636 (x_make_gc): Don't set GCFont in GCs.
8637 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
8638 opened by "fixed".
8639 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
8640 find_ccl_program_func, query_font_func, set_frame_fontset_func,
8641 get_font_repertory_func.
8642
8643 * xfont.c: Include <stdlib.h> and "ccl.h".
8644 (struct xfont_info): New structure.
8645 (xfont_query_font): Deleted.
8646 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
8647 moved from xterm.c.
8648 (xfont_driver): Adjusted for the change of struct font_driver.
8649 (compare_font_names): New function.
8650 (xfont_list_pattern): Sort font names case insensitively. Make
8651 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
8652 (xfont_list): Return a list, not vector.
8653 (xfont_match): If the font doesn't have QCname property, generate
8654 a name from the other font properties.
8655 (xfont_open): Return a font-object. Adjusted for the change of
8656 struct font. Get underline_thickness and underline_position from
8657 font property. Don't update dpyinfo->smallest_font_height and
8658 dpyinfo->smallest_char_width.
8659 (xfont_close): Don't free struct font.
8660 (xfont_prepare_face): Adjusted for the change of struct font.
8661 (xfont_done_face): Deleted.
8662 (xfont_has_char): Adjusted for the change of struct font.
8663 (xfont_encode_char, xfont_draw): Likewise.
8664 (xfont_check): New function.
8665
8666 * xftfont.c (xftfont_list): Adjusted for the change of `list'
8667 callback function.
8668 (xftfont_match): Adjusted for the format change of font-entity.
8669 (xftfont_open): Adjusted for the format change of font-entity and
8670 font-object. Adjusted for the change of struct font. Return a
8671 font-object. Don't update dpyinfo->smallest_font_height and
8672 dpyinfo->smallest_char_width.
8673 (xftfont_close): Block input while calling XftFontClose.
8674 (xftfont_prepare_face): Don't block input while calling
8675 xftfont_get_colors. Adjusted for the change of struct font.
8676 (xftfont_shape): Return value of error case fixed.
8677
8678 * xrdb.c (x_load_resources): Don't setup a fontset resource.
8679
8680 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
8681 conditionals.
8682 (FONT_WIDTH): Return (f)->max_width.
8683 (struct x_display_info): Delete member `font'.
8684 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
8685 (x_find_ccl_program, x_get_font_repertory): Delete externs.
8686 (struct x_output): Change type of `font' to `struct font *'.
8687
8688 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
8689 conditionals. Don't check enable_font_backend. Delete all codes
8690 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
8691 (x_per_char_metric, x_encode_char): Deleted.
8692 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
8693 (x_compute_glyph_string_overhangs): Adjusted for the change of
8694 `struct face'.
8695 (x_draw_glyph_string_foreground)
8696 (x_draw_composite_glyph_string_foreground): Likewise.
8697 (x_draw_glyph_string): Likewise. Use font->underline_position and
8698 font->underline_thickness.
8699 (x_new_font): Renamed from x_new_fontset2.
8700 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
8701 (x_check_font): Call `check' method of a font driver.
8702 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
8703 (x_query_font, x_get_font_repertory): Deleted.
8704 (x_find_ccl_program): Renamed and moved to xfont.c.
8705 (x_redisplay_interface): Adjusted for the change of `struct
8706 redisplay_interface'.
8707
8708 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
8709 conditionals. Don't check enable_font_backend. Delete all codes
8710 used only when USE_FONT_BACKEND is not defined. Surround non-used
8711 code by "#ifdef OLD_FONT" and "endif".
8712 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
8713
8714 * w32font.h (struct w32font_info): New member.
8715 (FONT_COMPAT): New macro.
8716 (w32font_open_internal): Prototype adjusted.
8717
8718 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
8719 OLD_FONT" and "endif".
8720
8721 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
8722 conditionals. Don't check enable_font_backend. Delete all codes
8723 used only when USE_FONT_BACKEND is not defined.
8724 (w32font_open): Return a font-object. Make a font-object by
8725 font_make_object. Adjusted for the change of struct w32font_info.
8726 (w32font_close): Don't free struct font. Adjusted for the change
8727 of struct w32font_info.
8728 (w32font_encode_char, w32font_text_extents, w32font_draw):
8729 Adjusted for the change of struct w32font_info.
8730 (w32font_draw): Likewise.
8731 (w32font_list_internal): Return a list, not vector.
8732 (w32font_open_internal): Change the 4th arg to font-object.
8733 Adjusted for the change of struct w32font_info and font-object format.
8734 (add_font_name_to_list): Don't downcase names.
8735 (w32_enumfont_pattern_entity): Make a font-entity by
8736 font_make_entity. Adjusted for the format change of font-entity.
8737 Use FONT_SET_STYLE to set a style-related font property. If a
8738 font is scalable, set avgwidth property to 0. Set font-entity
8739 property by font_put_extra.
8740 (font_matches_spec): Adjusted for the format change of font-entity.
8741 (w32_weight_table, w32_decode_weight): New variables.
8742 (w32_encode_weight): New function.
8743 (fill_in_logfont): Adjusted for the format change of font-spec.
8744 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
8745 weight value.
8746 (w32font_driver): Adjusted for the change of struct font_driver.
8747
8748 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
8749 conditionals. Don't check enable_font_backend. Surround non-used
8750 code by "#ifdef OLD_FONT" and "endif".
8751 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
8752 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
8753
8754 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
8755 conditionals. Don't check enable_font_backend. Delete all codes
8756 used only when USE_FONT_BACKEND is not defined. Surround non-used
8757 code by "#ifdef OLD_FONT" and "endif".
8758
8759 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
8760 (uniscribe_open): Return value changed to font-object.
8761 Adjusted for the format change of font-object.
8762 (uniscribe_otf_capability): Adjusted for the change of struct font.
8763 (add_opentype_font_name_to_list): Don't downcase names.
8764 (uniscribe_font_driver): Adjusted for the change of struct
8765 font_driver.
8766
87672008-05-13 Chong Yidong <cyd@stupidchicken.com>
8768
8769 * dispnew.c (update_frame_1): Check if tty output is still valid
8770 before flushing it.
8771
87722008-05-13 Jan Djärv <jan.h.d@swipnet.se>
8773
8774 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
8775 to Gtk+ menus.
8776
87772008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8778
8779 * dired.c (file_name_completion): Tweak the code so as to always do it
8780 in a single pass. Tighten the scope of some variables.
8781
8782 * dired.c (Qdefault_directory): New var.
8783 (file_name_completion): Use it instead of Fexpand_file_name.
8784 (syms_of_dired): Initialize it.
8785
87862008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
8787
8788 * fileio.c (double_dollars): Remove dead code.
8789
87902008-05-10 Eli Zaretskii <eliz@gnu.org>
8791
8792 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
8793 Mention w32-get-true-file-attributes in doc string.
8794
8795 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
8796
87972008-05-09 Glenn Morris <rgm@gnu.org>
8798
8799 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
8800 2008-04-23.
8801
88022008-05-09 Eli Zaretskii <eliz@gnu.org>
8803
8804 Support for reporting owner and group of each file on MS-Windows:
8805 * dired.c (stat_uname, stat_gname): New functions, with special
8806 implementation for w32.
8807 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
8808
8809 * w32.c: Rename the_passwd_* to dflt_passwd_*.
8810 (dflt_group_name): New static variable.
8811 (dflt_group): Rename from the_group.
8812 (init_user_info): Init dflt_group fields. Get user's group name
8813 from LookupAccountSid.
8814 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
8815 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
8816 New initialization states.
8817 (globals_of_w32): Initialize them to zero. Initialize the default
8818 group name to "None".
8819 (GetFileSecurity_Name): New global var, the name of the function
8820 to call for GetFileSecurity.
8821 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
8822 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
8823 (get_file_security, get_security_descriptor_owner)
8824 (get_security_descriptor_group, is_valid_sid)
8825 (get_file_security_desc, get_rid, get_name_and_id)
8826 (get_file_owner_and_group): New functions.
8827 (stat): Use get_file_security_desc and get_file_owner_and_group to
8828 report the owner and primary group of each file. Don't ignore the
8829 high 32 bits of file's size, now that st_size is 64-bit wide.
8830 Fix test when to get true file attributes.
8831 (init_user_info): Use get_rid instead of equivalent inline code.
8832 (fstat): Don't ignore the high 32 bits of file's size.
8833
88342008-05-09 Chong Yidong <cyd@stupidchicken.com>
8835
8836 * image.c (png_load): Use correct bit-depth for setting background
8837 color.
8838
88392008-05-08 Eli Zaretskii <eliz@gnu.org>
8840
8841 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
8842 epa-hook.elc.
8843
88442008-05-08 Juanma Barranquero <lekktu@gmail.com>
8845
8846 * font.c (Ffont_match_p): Don't use `iff' in docstring.
8847
88482008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
8849
8850 * macfns.c (Fx_create_frame): Make a copy of frame parameters
8851 because the original parameters are in pure storage now.
8852 (mac_window): Remove unused params. Update callers.
8853
88542008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
8855
8856 * lread.c (substitute_object_recurse): Use lower-level primitives.
8857 Don't signal errors when traversing sub-char-tables.
8858 Don't loop over all the possible characters when traversing char-tables.
8859
8860 * print.c (print_preprocess): Add sub-char-tables to the print-table,
8861 just like we do in print.c.
8862
88632008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
8864
8865 * minibuf.c (Ftry_completion): Remove code left over from when we used
8866 scmp instead of Fcompare_strings.
8867
88682008-05-04 Juanma Barranquero <lekktu@gmail.com>
8869
8870 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
8871
88722008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8873
8874 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
8875 Create bitmap context in native byte order.
8876
8877 * macterm.c (XDrawLine)
8878 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
8879 context in native byte order.
8880
88812008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8882
8883 * config.in: Regenerate.
8884
8885 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
8886 New definitions for Image I/O support.
8887 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
8888 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
8889 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8890 (mac_data_provider_release_data, image_load_image_io)
8891 [USE_MAC_IMAGE_IO]: New functions.
8892 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
8893 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
8894 (init_image_func_pointer) [MAC_OSX]: Remove function.
8895 (image_load_quartz2d) [MAC_OSX]: Check availability of
8896 CGImageCreateWithPNGDataProvider at compile time.
8897 Use lowercase `false' for boolean constant.
8898 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
8899 Use image_load_image_io.
8900 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
8901 Don't check MyCGImageCreateWithPNGDataProvider.
8902 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
8903 Don't call init_image_func_pointer.
8904
8905 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
8906
8907 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
8908 Make variable non-static.
8909 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
8910 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
8911
8912 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
8913 (RED_FROM_ULONG): Mask off higher bits.
8914 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
8915
8916 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
8917 Include AvailabilityMacros.h.
8918 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
8919 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
8920
89212008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
8922
8923 * chartab.c (Fset_char_table_range): If range is t, really set all
8924 chars to that value.
8925
89262008-05-03 Eli Zaretskii <eliz@gnu.org>
8927
8928 * dired.c (Ffile_attributes): Don't allow the device number become
8929 negative.
8930
89312008-05-02 Daiki Ueno <ueno@unixuser.org>
8932
8933 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
8934
89352008-05-02 Juri Linkov <juri@jurta.org>
8936
8937 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
8938 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
8939 DEFAULT argument as a list of default values in docstrings.
8940
89412008-05-01 Chong Yidong <cyd@stupidchicken.com>
8942
8943 * puresize.h (BASE_PURESIZE): Increase to 1210000.
8944
89452008-05-01 Martin Rudalics <rudalics@gmx.at>
8946
8947 * dispnew.c (change_frame_size_1): Preserve small windows when
8948 shrinking frames by calling set_window_height|width with third
8949 arg 2.
8950
8951 * window.h (struct window): Replace field too_small_ok by field
8952 resize_proportionally.
8953
8954 * window.c (make_window): Initialize resize_proportionally.
8955 (enlarge_window): Temporarily set resize_proportionally to make
8956 sure that shrink_windows does scale the window proportionally.
8957 (shrink_windows): When window has resize_proportionally set try
8958 to shrink it proportionally by stealing from other windows.
8959 (struct saved_window, Fset_window_configuration)
8960 (compare_window_configurations): Handle resize_proportionally.
8961 (WINDOW_TOTAL_SIZE): New macro.
8962 (window_min_size, shrink_windows, size_window): Use it.
8963 (check_min_window_sizes): Remove. Invalid values of
8964 window-min-height|width are handled by window_min_size_2 now.
8965 (size_window, Fsplit_window, enlarge_window)
8966 (adjust_window_trailing_edge, grow_mini_window): Don't call
8967 check_min_window_sizes.
8968 (window_min_size_2, window_min_size_1, window_min_size):
8969 New argument safe_p for retrieving "safe" minimum sizes.
8970 (Fdisplay_buffer, Fsplit_window, enlarge_window)
8971 (adjust_window_trailing_edge, grow_mini_window):
8972 Adjust arguments of window_min_size... functions.
8973 (shrink_windows): Argument min_size removed. New argument
8974 safe_p allows shrinking windows to their safe minimum sizes.
8975 Calculate minimum size and decide whether a window shall be
8976 deleted for each window individually.
8977 (size_window): When nodelete_p equals 2, tell shrink_windows to
8978 delete windows only if their new minimum size is no more safe.
8979 (shrink_window_lowest_first): Call window_min_size_1 to make
8980 sure to preserve modeline of bottom-most window when resizing
8981 the minibuffer.
8982 (Fset_window_configuration, Fcurrent_window_configuration)
8983 (compare_window_configurations): Do not handle
8984 window-min-height|width any more.
8985 (syms_of_window): Clarify window-min-height|width doc-strings.
8986
89872008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
8988
8989 * dired.c (file_name_completion): Fix up the encoding/decoding issue
8990 some more. Copy some of the code from Ftry_completions.
8991 Remove special case code that dates back to initial revision when the
8992 slash was only added when necessary and that can't trigger nowadays.
8993
89942008-04-27 Kenichi Handa <handa@m17n.org>
8995
8996 * font.c (font_prop_validate): Signal `error' instead of `font'.
8997
89982008-04-29 Jason Rumney <jasonr@gnu.org>
8999
9000 * w32fns.c (Fw32_battery_status): New defun.
9001 (syms_of_w32fns): Defsubr it.
9002
90032008-04-28 Andreas Schwab <schwab@suse.de>
9004
9005 * dired.c (file_name_completion): Fix another mixing of encoded
9006 and decoded names.
9007
90082008-04-28 Juanma Barranquero <lekktu@gmail.com>
9009
9010 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
9011
90122008-04-27 Juanma Barranquero <lekktu@gmail.com>
9013
9014 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
9015
90162008-04-27 Andreas Schwab <schwab@suse.de>
9017
9018 * dired.c (file_name_completion): Fix inappropriate mixing of
9019 encoded and decoded names.
9020
9021 * xterm.c (XTread_socket): Fix use of uninitialized variable.
9022
9023 * puresize.h (BASE_PURESIZE): Increase to 1200000.
9024
90252008-04-26 Eli Zaretskii <eliz@gnu.org>
9026
9027 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
9028 2008-03-31, it's not needed anymore with `struct stat' definition
9029 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
9030 for the same reasons.
9031
90322008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
9033
9034 * m/sparc.h: Additional redefinitions for GNU/Linux.
9035
90362008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9037
9038 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
9039 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
9040 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
9041 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
9042 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9043 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
9044 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9045 Likewise.
9046
9047 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
9048 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
9049 (mac_ax_number_of_characters): Add externs.
9050 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
9051 [USE_MAC_TSM]: Likewise.
9052 (mac_handle_text_input_event) [MAC_OSX]:
9053 Handle kEventTextInputOffsetToPos for no active input area case.
9054 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9055 (mac_handle_document_access_event)
9056 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
9057 (install_application_handler) [MAC_OSX]: Register handlers for
9058 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
9059 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
9060 Register mac_handle_document_access_event.
9061
9062 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
9063 Make functions non-static.
9064
90652008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
9066
9067 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
9068 (read_file_name_completion_ignore_case, insert_default_directory)
9069 (Qdefault_directory): Move to minibuffer.el.
9070 (Fread_file_name): Call the new `read-file-name' instead.
9071
90722008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9073
9074 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
9075 Make function non-static.
9076 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
9077 Remove function.
9078 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9079 Move to mactoolbox.c.
9080 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
9081
9082 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
9083 (mac_rect_make): New macro.
9084
9085 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
9086 instead of float.
9087 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9088 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
9089 (XSetBackground) [USE_CG_DRAWING]: Likewise.
9090 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
9091 CGRectMake.
9092 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
9093 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
9094 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
9095 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9096 instead of WindowRef in argument type.
9097 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
9098 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
9099 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
9100 instead of DISPLAY. All uses changed.
9101 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
9102 (x_calc_absolute_position): Simplify so as not to use
9103 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
9104
9105 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
9106 instead of WindowRef in argument type.
9107 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
9108 [TARGET_API_MAC_CARBON]: Remove externs.
9109 (create_apple_event, mac_event_parameters_to_lisp)
9110 [TARGET_API_MAC_CARBON]: Add externs.
9111
9112 * mactoolbox.c (Vmac_ts_script_language_on_focus)
9113 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
9114 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
9115 is clicked.
9116 (x_activate_menubar): Remove extern for saved_menu_event_location.
9117 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
9118 Move from mac.c.
9119
91202008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9121
9122 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
9123 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
9124
91252008-04-23 Jason Rumney <jasonr@gnu.org>
9126
9127 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
9128 attributes only for local files.
9129
9130 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
9131 default to Qlocal.
9132
91332008-04-22 Juri Linkov <juri@jurta.org>
9134
9135 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
9136 read-buffer-to-switch instead of using the letter "B".
9137
91382008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9139
9140 * fileio.c (Qdefault_directory): New variable.
9141 (Fread_file_name): Use it to pass `dir' to the completion functions.
9142
91432008-04-20 Chong Yidong <cyd@stupidchicken.com>
9144
9145 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
9146
91472008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
9148
9149 * keyboard.c (Vpre_help_message): Remove.
9150 (show_help_echo): Remove default C code.
9151
9152 * dired.c (directory_files_internal, file_name_completion):
9153 Only call ENCODE_FILE if the string is indeed decoded.
9154
91552008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9156
9157 * Makefile.in (TOOLKIT_DEFINES): Remove.
9158 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
9159
91602008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9161
9162 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
9163 (mactoolbox.o): New target.
9164
9165 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
9166 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
9167
9168 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
9169 Use mac_set_frame_window_background instead of XSetWindowBackground.
9170 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
9171 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
9172 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
9173 instead of SetWindowTitleWithCFString.
9174 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
9175 Move function to mactoolbox.c.
9176 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
9177 Use mac_set_window_modified instead of SetWindowModified.
9178 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
9179 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
9180 (Fx_focus_frame): Use mac_front_non_floating_window instead of
9181 FrontNonFloatingWindow. Use mac_activate_window instead of
9182 ActivateWindow. Use mac_active_non_floating_window instead of
9183 ActiveNonFloatingWindow.
9184 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
9185 Use mac_show_hourglass and mac_hide_hourglass.
9186 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
9187 instead of GetGlobalMouse.
9188 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
9189 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
9190 Use mac_bring_window_to_front instead of BringToFront.
9191 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
9192 mactoolbox.c.
9193 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
9194 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
9195 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
9196 mactoolbox.c.
9197
9198 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
9199 (XtPointer): Move typedef from macmenu.c.
9200 (enum button_type): Move enum from macmenu.c.
9201 (widget_value): Move typedef from macmenu.c.
9202 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
9203 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9204 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9205 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9206 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9207 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9208 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9209 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
9210 (Selection): Move typedef from macselect.c.
9211 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
9212 macterm.c.
9213 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
9214 (mac_is_window_collapsed, mac_bring_window_to_front)
9215 (mac_send_window_behind, mac_hide_window, mac_show_window)
9216 (mac_collapse_window, mac_front_non_floating_window)
9217 (mac_active_non_floating_window, mac_activate_window)
9218 (mac_move_window_structure, mac_move_window, mac_size_window)
9219 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
9220
9221 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
9222 (enum mac_menu_kind): Move enum to mactoolbox.c.
9223 (min_menu_id): Move variable to mactoolbox.c.
9224 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
9225 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
9226 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
9227 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
9228 [TARGET_API_MAC_CARBON]: Likewise.
9229 (XtPointer): Move typedef to macgui.h.
9230 (enum button_type): Move enum to macgui.h.
9231 (widget_value): Move typedef to macgui.h.
9232 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
9233 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
9234 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
9235 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
9236 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
9237 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
9238 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
9239 (popup_activated_flag): Make variable non-static.
9240 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
9241 (add_menu_item, fill_menu, dispose_menus):
9242 Move functions to mactoolbox.c.
9243 (restore_show_help_function, menu_target_item_handler)
9244 (install_menu_target_item_handler, mac_handle_dialog_event)
9245 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
9246 [TARGET_API_MAC_CARBON]: Likewise.
9247 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
9248 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9249 (find_and_call_menu_selection, name_is_separator): Make function
9250 non-static.
9251 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
9252 to mactoolbox.c.
9253 (set_frame_menubar): Don't call install_menu_quit_handler.
9254 (menu_item_selection): New variable.
9255 (mac_menu_show): Use create_and_show_popup_menu.
9256 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
9257 selection but set variable menu_item_selection. All uses changed.
9258 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
9259 Call install_menu_quit_handler. Move to mactoolbox.c.
9260
9261 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
9262 (Selection): Move typedef to macgui.h.
9263 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
9264 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
9265 Make variables non-static.
9266 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9267 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
9268 Make functions non-static.
9269 (Vmac_service_selection) [MAC_OSX]: Likewise.
9270 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
9271 (mac_valid_selection_target_p, mac_clear_selection)
9272 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9273 (mac_put_selection_value, mac_selection_has_target_p)
9274 (mac_get_selection_value, mac_get_selection_target_list)
9275 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
9276 Move functions to mactoolbox.c.
9277 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
9278 Likewise.
9279 (copy_scrap_flavor_data, mac_handle_service_event)
9280 (install_service_handler) [MAC_OSX]: Likewise.
9281 (syms_of_macselect) <Vmac_dnd_known_types>:
9282 Use mac_dnd_default_known_types.
9283
9284 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
9285 Move to mactoolbox.c.
9286 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
9287 (Fx_selection_owner_p): Add EXFUN.
9288 (install_window_handler, remove_window_handler, XSetWindowBackground):
9289 Remove externs.
9290 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
9291 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
9292 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
9293 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
9294 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
9295 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
9296 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
9297 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
9298 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
9299 (create_and_show_popup_menu, mac_get_selection_from_symbol)
9300 (mac_valid_selection_target_p, mac_clear_selection)
9301 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
9302 (mac_put_selection_value, mac_selection_has_target_p)
9303 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
9304 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
9305 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
9306 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
9307 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
9308 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
9309 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
9310 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9311 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
9312
9313 * mactoolbox.c: New file.
9314
93152008-04-18 Jason Rumney <jasonr@gnu.org>
9316
9317 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
9318
93192008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
9320
9321 * character.c (Fmultibyte_char_to_unibyte):
9322 Return latin1 chars unchanged.
9323
9324 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
9325 relocated if it points to `name'.
9326
93272008-04-17 Kenichi Handa <handa@m17n.org>
9328
9329 * data.c (Faset): Allow setting a multibyte character in an
9330 ASCII-only unibyte string.
9331
9332 * lisp.h (STRING_SET_MULTIBYTE): New macro.
9333
93342008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
9335
9336 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
9337 done in config.h.
9338
93392008-04-16 Juanma Barranquero <lekktu@gmail.com>
9340
9341 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
9342 (Fchar_direction): Add usage in the docstring.
9343
93442008-04-15 Chong Yidong <cyd@stupidchicken.com>
9345
9346 * keyboard.c (read_key_sequence): Remove always-true checks.
9347
93482008-04-14 Jason Rumney <jasonr@gnu.org>
9349
9350 * w32font.c (w32font_open_internal): Set max_bounds.descent in
9351 compatibility struct, for better underline positioning.
9352
93532008-04-13 David Hansen <david.hansen@gmx.net>
9354
9355 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
9356 string.
9357
93582008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
9359
9360 * m/hp800.h (XUINT, XSET): Remove.
9361
93622008-04-12 Juanma Barranquero <lekktu@gmail.com>
9363
9364 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
9365 previous change.
9366
93672008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
9368
9369 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
9370 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
9371
93722008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9373
9374 * keymap.h (map_keymap_canonical): Declare.
9375 * xmenu.c (single_keymap_panes): Use it.
9376
93772008-04-11 Glenn Morris <rgm@gnu.org>
9378
9379 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
9380 set the target's value to that of the alias.
9381
93822008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
9383
9384 * term.c (set_tty_color_mode): Left over typo.
9385
93862008-04-10 Michael Albinus <michael.albinus@gmx.de>
9387
9388 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
9389 only after check for file name handler functions. Signal, when
9390 native functionality is not supported.
9391 (syms_of_fileio): Declare it unconditionally.
9392
93932008-04-10 Jason Rumney <jasonr@gnu.org>
9394
9395 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
9396 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
9397
9398 * w32.c (logon_network_drive): Also logon to remote drives that
9399 are mapped to drive letters.
9400
94012008-04-10 Glenn Morris <rgm@gnu.org>
9402
9403 * xdisp.c (truncate-partial-width-windows): Doc fix.
9404
94052008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
9406
9407 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
9408 Move functions to minibuffer.el.
9409 (syms_of_fileio): Don't declare them.
9410
94112008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9412
9413 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
9414 (syms_of_minibuf): Remove its initialization.
9415
9416 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
9417
94182008-04-09 Juanma Barranquero <lekktu@gmail.com>
9419
9420 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
9421
94222008-04-09 Jason Rumney <jasonr@gnu.org>
9423
9424 * makefile.w32-in (distclean): Delete makefile too.
9425 (maintainer-clean): New target.
9426
9427 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
9428
9429 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
9430 for new font backend and composite cases.
9431
94322008-04-09 Jan Djärv <jan.h.d@swipnet.se>
9433
9434 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
9435 Most of the code moved to run_timers.
9436 (do_pending_atimers): Call run_timers.
9437 (run_timers): New function.
9438
9439 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
9440 run atimers.
9441
9442 * process.c (wait_reading_process_output): The same as above.
9443
94442008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9445
9446 * minibuf.c (last_exact_completion): Remove variable.
9447 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
9448 (complete_and_exit_1, complete_and_exit_2)
9449 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
9450 (Fdisplay_completion_list, display_completion_list_1)
9451 (Fminibuffer_completion_help, Fself_insert_and_exit)
9452 (Fexit_minibuffer, Fminibuffer_message): Move functions to
9453 minibuffer.el.
9454 (syms_of_minibuf): Remove corresponding initializations.
9455
9456 * keyboard.c (Qdeactivate_mark): New var.
9457 (command_loop_1): Use it to call `deactivate-mark'.
9458 (syms_of_keyboard): Initialize it.
9459
9460 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
9461 to another frame.
9462 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
9463 Don't call set_tty_color_mode.
9464 (store_frame_param): Reset previous_frame rather than call
9465 set_tty_color_mode.
9466 * term.c (set_tty_color_mode): Rewrite.
9467 * dispextern.h (set_tty_color_mode): New type.
9468 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
9469
94702008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
9471
9472 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
9473 for generic chars, which do not exist any more in emacs-unicode.
9474
94752008-04-08 Michael Albinus <michael.albinus@gmx.de>
9476
9477 * coding.c (detect_coding_emacs_mule)
9478 (Ffind_operation_coding_system): Fix typo.
9479
94802008-04-08 Jason Rumney <jasonr@gnu.org>
9481
9482 * w32uniscribe.c (SNAME): Extract only symbol name.
9483
9484 * w32font.h (struct w32_metric_cache): New struct.
9485 (w32font_info): Use it.
9486 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
9487 (CACHE_BLOCKSIZE): New constants.
9488
9489 * w32font.c (Qja, Qko, Qzh): New symbols.
9490 (syms_of_w32font): Initialise them.
9491 (font_matches_spec): Use them to filter by language.
9492 (recompute_cached_metrics): Remove function.
9493 (compute_metrics, clear_cached_metrics): New functions.
9494 (w32font_encode_char): Use them to manage metric cache.
9495 (w32font_text_extents): Cache metrics for all glyphs on demand.
9496 Delay converting glyph indices to WORD until needed.
9497 (w32font_open_internal): Initialize metric cache to empty.
9498 (registry_to_w32_charset): Charset should always be a symbol.
9499 (fill_in_logfont, list_all_matching_fonts): Family should
9500 always be a symbol.
9501
95022008-04-06 Jason Rumney <jasonr@gnu.org>
9503
9504 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
9505 Give up if glyph indices not supported. Use uniscribe obtained
9506 ABC widths for individual metrics. Map glyph clusters back to
9507 characters using fClusterStart flag. Return number of glyphs
9508 produced, not chars processed.
9509 (uniscribe_shape): Map char at FROM to current glyph.
9510
95112008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9512
9513 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
9514 Use SetMenuItemHierarchicalMenu.
9515
95162008-04-05 Jason Rumney <jasonr@gnu.org>
9517
9518 * image.c (pbm_load): Allow color values up to 65535.
9519 Throw an error if max_color_idx is outside the supported range.
9520 Report an error when image size is invalid.
9521 Read two bytes at a time when raw images have max_color_idx above 255.
9522
95232008-04-05 Eli Zaretskii <eliz@gnu.org>
9524
9525 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9526 cFileName a file name that includes `?' characters, use the 8+3
9527 alias in cAlternateFileName instead.
9528
95292008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
9530
9531 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
9532 append "CCL: Quitted" when the CCL program is quitted.
9533 (setup_ccl_program): Initialize ccl->quit_silently to zero.
9534
9535 * ccl.h (struct ccl_program): New member quit_silently.
9536
95372008-04-05 Chong Yidong <cyd@stupidchicken.com>
9538
9539 * search.c (compile_pattern_1): Treat non-nil and non-string of
9540 search-spaces-regexp as nil.
9541
9542 * minibuf.c (Fassoc_string): Tweak docstring.
9543
95442008-04-05 Eli Zaretskii <eliz@gnu.org>
9545
9546 * dired.c (Ffile_attributes): Support inode numbers wider than 32
9547 bits. Remove ugly WINDOWSNT-specific kludge introduced on
9548 2008-03-14 to force inode be positive.
9549
9550 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
9551 _S_* ones, since we now use our own sys/stat.h.
9552 (stat, fstat): Don't mangle the inode number.
9553 (init_user_info): Don't restrict UID and GID to 0-60000 range.
9554
95552008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
9556
9557 * frame.h (struct frame): Give one more bit to `visible' since we use
9558 values larger than 1 to indicate obscured frames on ttys.
9559
9560 * keymap.c (Qkeymap_canonicalize): New var.
9561 (Fmap_keymap_internal): New fun.
9562 (describe_map): Use keymap-canonicalize.
9563
9564 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
9565 (Fundo_boundary): Set them.
9566 (syms_of_undo): Initialize them.
9567 (record_point): Use them instead of last_point_position*.
9568 (last_undo_buffer): Change type.
9569
95702008-04-04 Jason Rumney <jasonr@gnu.org>
9571
9572 * w32font.c (w32font_text_extents): Use font's ascent and descent.
9573 (recompute_cached_metrics): Don't set ascent and descent per char.
9574
9575 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
9576 (uniscribe_check_otf): Add GC protection before consing.
9577 Rearrange loop for counting features.
9578
95792008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9580
9581 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
9582 buffer with byte-size of source buffer.
9583
95842008-04-03 Chong Yidong <cyd@stupidchicken.com>
9585
9586 * callint.c (Fcall_interactively): Handle temporary region even
9587 when shift-select-mode is off.
9588
95892008-04-03 Jason Rumney <jasonr@gnu.org>
9590
9591 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
9592
95932008-04-03 Kenichi Handa <handa@m17n.org>
9594
9595 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
9596 (CATEGORY_MASK_UTF_16): Likewise.
9597 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
9598 binary file.
9599 (detect_coding): Add null-byte detection for a binary file.
9600 (detect_coding_system): Likewise.
9601
96022008-04-03 Jason Rumney <jasonr@gnu.org>
9603
9604 * w32uniscribe.c: New file.
9605
9606 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
9607
9608 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
9609
9610 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
9611 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
9612 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
9613 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
9614 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
9615 (Qphonetic): New symbols.
9616 (syms_of_w32font): Initialize them.
9617 (font_supported_scripts): Use them.
9618 (w32font_list_family): List all charsets.
9619 (w32font_text_extents, recompute_cached_metrics): Fix metric
9620 calculations.
9621 (w32_enumfont_pattern_entity): Make full_type a DWORD.
9622 Give opentype fonts their own format.
9623 (font_matches_spec): New arguments backend and logfont.
9624 Handle :otf spec for uniscribe backend.
9625 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
9626 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
9627
9628 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
9629 font backend.
9630 (globals_of_w32fns): Initialize uniscribe font backend.
9631
9632 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
9633 dependencies.
9634 (w32uniscribe.$(O)): New file to build.
9635 (FONT_OBJ): Include w32uniscribe.$(O).
9636 (LIBS): Add uniscribe libraries.
9637
9638 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
9639
96402008-04-02 Chong Yidong <cyd@stupidchicken.com>
9641
9642 * callint.c (Vshift_select_mode): New var.
9643 (Finteractive): Document new ^ spec.
9644 (Fcall_interactively): Call handle-shift-selection if the ^ spec
9645 is present.
9646
9647 * keyboard.c (Vthis_command_keys_shift_translated): New var.
9648 (command_loop_1): Avoid running the direct display versions of
9649 forward-char and backward-char if shift-selection may occur.
9650 (read_key_sequence): Set Vthis_command_keys_shift_translated if
9651 shift-translation takes place.
9652
9653 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
9654 avoid clobbering by define-minor-mode.
9655
9656 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
9657 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
9658
9659 * syntax.c (Fforward_word): Add ^ interactive spec.
9660
9661 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
9662 (Fscroll_right): Add ^ interactive spec.
9663
96642008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
9665
9666 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
9667
9668 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
9669
9670 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
9671
96722008-03-31 Juri Linkov <juri@jurta.org>
9673
9674 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
9675
96762008-03-30 Jan Djärv <jan.h.d@swipnet.se>
9677
9678 * gtkutil.c (xg_set_geometry): Fix indentation.
9679 (xg_resize_outer_widget): Remove.
9680 (x_wm_size_hint_off): Fix indentation.
9681 (xg_frame_set_char_size): Call flush_and_sync after
9682 gtk_window_resize.
9683 (x_wm_set_size_hint): Pass NULL as geometry window to
9684 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
9685 Add menu bar and tool bar height to base height.
9686 (xg_update_frame_menubar, free_frame_menubar)
9687 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
9688 (update_frame_tool_bar, free_frame_tool_bar):
9689 Change xg_resize_outer_widget to xg_frame_set_char_size.
9690
96912008-03-30 Michael Albinus <michael.albinus@gmx.de>
9692
9693 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
9694 (Fdbus_call_method): New parameter TIMEOUT.
9695 (dbus-send-signal): Optimize UNGCPRO call.
9696
96972008-03-29 Juri Linkov <juri@jurta.org>
9698
9699 * window.c (Fdisplay_buffer): Move call to
9700 Vsplit_window_preferred_function out of conditions that check
9701 if window is eligible for vertical splitting.
9702 When Vsplit_window_preferred_function is non-nil, call it and use
9703 its non-nil return value as window. Otherwise, continue doing
9704 vertical splitting using Fsplit_window with arg horflag=nil.
9705 (syms_of_window) <Vsplit_window_preferred_function>: Change the
9706 default value from `split-window' to nil.
9707
97082008-03-29 Juri Linkov <juri@jurta.org>
9709
9710 * callint.c (Fcall_interactively): Revert 2008-03-16 change
9711 for interactive code letters 'b' and 'B'.
9712
97132008-03-29 Eli Zaretskii <eliz@gnu.org>
9714
9715 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
9716 multibyte string.
9717
97182008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
9719
9720 * keyboard.c (pending_funcalls): New var.
9721 (timer_check): Run it.
9722 (syms_of_keyboard): Initialize it.
9723 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
9724 (Vdelete_terminal_functions): New vars.
9725 (syms_of_terminal): Initialize them.
9726 (Fdelete_terminal): Run delete-terminal-functions.
9727 * xdisp.c (safe_eval): Rewrite.
9728 (safe_call2): New fun.
9729 * frame.c (Qdelete_frame_functions): New var.
9730 (syms_of_frame): Initialize it.
9731 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
9732 * lisp.h (safe_call2, pending_funcalls): Declare.
9733
97342008-03-28 Andreas Schwab <schwab@suse.de>
9735
9736 * indent.c (Fmove_to_column): Move declaration before statements.
9737
97382008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
9739
9740 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
9741 (struct frame): Use bit fields for boolean vars.
9742
9743 * process.c (server_accept_connection): Simplify naming.
9744 (emacs_get_tty_pgrp): Use SDATA.
9745
9746 * coding.c (decode_coding_object): Fix last change.
9747
97482008-03-27 Jason Rumney <jasonr@gnu.org>
9749
9750 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
9751
97522008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
9753
9754 * charset.c (Fdefine_charset_internal): Change the way of
9755 registering charsets in Vcharset_order_list.
9756 (syms_of_charset): Make the charset `eight-bit' supplementary.
9757
97582008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
9759
9760 * regex.c (EXTEND_BUFFER): Change order of pointer addition
9761 operations, to avoid having the difference between pointers
9762 overflow.
9763
97642008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
9765
9766 * indent.c (check_display_width): New fun.
9767 (scan_for_column): Use it.
9768
9769 * data.c (syms_of_data): Mark most-positive-fixnum and
9770 most-negative-fixnum as constants.
9771
9772 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
9773
9774 * indent.c (scan_for_column): Extract from current_column_1.
9775 Merge with the same code from Fmove_to_column.
9776 (current_column_1, Fmove_to_column): Use it.
9777
97782008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
9779
9780 * keymap.c (map_keymap_internal): New fun.
9781 (map_keymap): Use it.
9782 (Fmap_keymap_internal): New fun.
9783 (Fmap_keymap): Remove left-out test from before make_save_value.
9784
9785 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
9786
9787 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
9788 Use XCAR/XCDR.
9789
9790 * process.h (struct Lisp_Process): Remove filter_multibyte.
9791 * process.c (QCfilter_multibyte): Remove.
9792 (setup_process_coding_systems): Don't use filter_multibyte.
9793 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
9794 (read_process_output): Don't adjust multibyteness to filter_multibyte.
9795 (Fset_process_filter_multibyte): Change the coding-system to
9796 approximate the previous behavior.
9797 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
9798 coding-system.
9799
9800 * coding.c (decode_coding_object): When not decoding into a buffer,
9801 obey the coding system's preference of (uni|multi)byte.
9802
98032008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
9804
9805 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
9806 every char is changed and has a different byte-length.
9807 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
9808 Fix int -> EMACS_INT.
9809
98102008-03-23 David Hansen <david.hansen@gmx.net>
9811
9812 * dbusbind.c (xd_read_message): Remove extra copying of message
9813 strings. Check for NULL `interface' or `member'.
9814
98152008-03-22 Eli Zaretskii <eliz@gnu.org>
9816
9817 * w32.c (readdir): If FindFirstFile/FindNextFile return in
9818 cFileName a file name that includes `?' characters, use the 8+3
9819 alias in cAlternateFileName instead.
9820
98212008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
9822
9823 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
9824
98252008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9826
9827 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
9828 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
9829 work on current_buffer only instead (that was already the case
9830 for some of the code anyway).
9831 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
9832 (temp_set_point, temp_set_point_both): Use EMACS_INT.
9833 (SET_PT, SET_PT_BOTH): Adjust.
9834 * intervals.h (set_point, temp_set_point, set_point_both)
9835 (temp_set_point_both): Remove redundant declarations.
9836
98372008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
9838
9839 * fileio.c (Finsert_file_contents):
9840 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
9841 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
9842 when buffer != current_buffer anyway.
9843
98442008-03-20 Andreas Schwab <schwab@suse.de>
9845
9846 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
9847 as default.
9848
98492008-03-19 Jason Rumney <jasonr@gnu.org>
9850
9851 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
9852 (syms_of_w32fns): Initialize them.
9853 (HOURGLASS_ID): New constant.
9854 (x_window_to_frame): Don't check hourglass_window.
9855 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
9856 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
9857 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
9858 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
9859 Only change the cursor if hourglass is not active.
9860 (Fx_create_frame): Initialize frame's current_cursor.
9861 (hourglass_atimer): Remove.
9862 (hourglass_started): New function.
9863 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
9864 (show_hourglass): Adapt to w32, changing argument to frame.
9865
9866 * w32term.h (struct w32_output): Remove hourglass_window.
9867 Add current_cursor.
9868
9869 * eval.c (call_debugger, Fsignal):
9870 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
9871 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
9872 (Fexecute_extended_command, cancel_hourglass_unwind):
9873 * minibuf.c (read_minibuf):
9874 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
9875
98762008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
9877
9878 * window.c (run_funs): New fun.
9879 (run_window_configuration_change_hook): Use it to run the buffer-local
9880 and the global part of the hook.
9881
9882 * xdisp.c (format_mode_line_unwind_data): Add window argument.
9883 (unwind_format_mode_line): Restore selected window.
9884 (x_consider_frame_title, Fformat_mode_line): Set selected window.
9885
98862008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9887
9888 * editfns.c (Fchar_equal): Check they are valid characters.
9889
9890 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
9891
98922008-03-17 Andreas Schwab <schwab@suse.de>
9893
9894 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
9895 against a charset.
9896
9897 * lisp.h (Fbuffer_list): Declare.
9898
98992008-03-17 Jan Djärv <jan.h.d@swipnet.se>
d6c952f8 9900
aac0c6e3
MR
9901 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
9902 handlebox_widget is != 0.
9903
99042008-03-16 Juri Linkov <juri@jurta.org>
9905
9906 * callint.c (Fcall_interactively): For interactive code letters
9907 'b' and 'B' put the buffer list into the list of default "future"
9908 values of the minibuffer.
9909
99102008-03-16 Andreas Schwab <schwab@suse.de>
9911
9912 * keyboard.c (read_key_sequence): Fix downcasing of letters with
9913 modifiers.
9914
9915 * regex.c (re_match_2_internal): Correct matching of a charset
9916 against latin-1 characters.
9917
99182008-03-16 Kenichi Handa <handa@m17n.org>
9919
9920 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
9921 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
9922 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
9923 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
9924 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
9925 CHAR_STRING_ADVANCE.
9926 (produce_chars): Fix for the case that the source and the
9927 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
9928 instead of CHAR_STRING_ADVANCE.
9929 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
9930 STRING_CHAR_ADVANCE.
9931
99322008-03-15 Andreas Schwab <schwab@suse.de>
9933
9934 * regex.c (re_match_2_internal): Correct matching of eight bit
9935 characters in unibyte strings.
9936
99372008-03-15 Martin Rudalics <rudalics@gmx.at>
9938
9939 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
9940 at end of range when it coincides with the end of the buffer.
9941
99422008-03-14 Eli Zaretskii <eliz@gnu.org>
9943
9944 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
9945
9946 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
9947
99482008-03-14 Jason Rumney <jasonr@gnu.org>
9949
9950 * editfns.c (initial_tz): New variable.
9951 (syms_of_editfns): Initialize it.
9952 (Fset_time_zone_rule): Set it when first called.
9953 Use it when TZSTRING is nil.
9954
9955 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
9956 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
9957 (monitor_from_point_fn, get_monitor_info_fn): New globals.
9958 (globals_of_w32fns): Initialize them.
9959 (compute_tip_xy): Use them to position tooltips.
9960
99612008-03-14 Glenn Morris <rgm@gnu.org>
9962
9963 * emacs.c (main): Revert previous change.
9964 (standard_args): Revert -internal-script back to -scriptload,
9965 and remove the long-option form.
9966
99672008-03-13 Glenn Morris <rgm@gnu.org>
9968
9969 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
9970 Remove option -enable-font-backend.
9971
99722008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
9973
9974 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
9975
99762008-03-11 Jan Djärv <jan.h.d@swipnet.se>
9977
9978 * xterm.c (x_connection_closed): For GTK: If this is the last
9979 terminal just exit without closing the display.
9980
99812008-03-11 Jason Rumney <jasonr@gnu.org>
9982
9983 * w32font.c (w32font_full_name): Use floor to round.
9984
f0131492 99852008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
aac0c6e3
MR
9986
9987 * sound.c (alsa_configure): Declare vol at beginning of block.
9988
9989 * fontset.c (Ffontset_info): Remove extra semicolon.
9990
99912008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
9992
9993 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
9994 size of resulting string.
9995
99962008-03-10 Jason Rumney <jasonr@gnu.org>
9997
9998 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
9999
100002008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10001
10002 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
10003 Don't pretend as if characters with display property haven't been
10004 consumed for string-replacing-string case.
10005
100062008-03-08 Kim F. Storm <storm@cua.dk>
10007
10008 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
10009 (get_next_display_element, next_element_from_string)
10010 (next_element_from_ellipsis, next_element_from_buffer): Use it.
10011
100122008-03-08 Andreas Schwab <schwab@suse.de>
10013
10014 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
10015
100162008-03-06 Jason Rumney <jasonr@gnu.org>
10017
10018 * w32font.c (w32_registry): Take font_type argument. Use ANSI
10019 when charset not specified. Only translate ANSI to unicode when
10020 font_type is truetype.
10021 (w32font_coverage_ok): New function.
10022 (add_font_entity_to_list): Use it to filter unsuitable fonts.
10023
100242008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
10025
10026 * lread.c (Fread_char): Resolve modifiers.
10027 (Fread_char_exclusive): Likewise.
10028
10029 * character.c (char_resolve_modifier_mask): New function.
10030 (char_string): Use char_resolve_modifier_mask.
10031 (Fchar_resolve_modifiers): New function.
10032 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
10033 function.
10034
100352008-03-04 Jason Rumney <jasonr@gnu.org>
10036
10037 * makefile.w32-in: Always include w32font.c in the build.
10038 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
10039
100402008-03-04 Andreas Schwab <schwab@suse.de>
10041
10042 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
10043 (versionclean): Likewise.
10044
100452008-03-04 Juanma Barranquero <lekktu@gmail.com>
10046
10047 * .cvsignore: Add oo.
10048
100492008-03-03 Andreas Schwab <schwab@suse.de>
10050
10051 * coding.c (decode_coding_object): Inhibit gap shrinking while
10052 decoding in place.
10053
100542008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
10055
10056 * w32term.c: Remove unused include "gnu.h".
10057 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
10058
10059 * gnu.h: Rename to ...
10060 * emacs-icon.h: ... this.
10061 * xterm.c: Use emacs-icon.h instead of gnu.h.
10062 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
10063
100642008-03-03 Juanma Barranquero <lekktu@gmail.com>
10065
10066 * w32font.c: Include math.h.
10067
100682008-03-03 Jason Rumney <jasonr@gnu.org>
10069
10070 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
10071 Compute options separately.
10072 (w32font_open_internal): Set glyph_idx before caching metrics.
10073
10074 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
10075 Define if system headers don't.
10076 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
10077 (w32font_encode_char): Don't declare here.
10078
10079 * w32font.c (Quniscribe, QCformat): New symbols.
10080 (syms_of_w32font): Define them.
10081 (w32font_has_char): Indicate uncertainty.
10082 (w32font_encode_char): Encode as glyph point. Make static.
10083 (recompute_cached_metrics): New function.
10084 (w32font_open_internal): Use it. Set font to use glyph points
10085 initially. Set format based on type of font.
10086 (w32font_text_extents, w32font_draw): Optionally use glyph points.
10087 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
10088 on it. Set format based on information available here.
10089 (add_font_entity_to_list): Identify backend based on opentype_only.
10090
100912008-03-02 Andreas Schwab <schwab@suse.de>
10092
10093 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
10094
10095 * coding.c (decode_coding_big5, produce_chars):
10096 Fix typos in last change.
10097
100982008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
10099
10100 * gnu.h: New icon.
10101
101022008-03-02 Kenichi Handa <handa@m17n.org>
10103
10104 * coding.c (decode_coding_utf_8): When eol-type of CODING is
10105 `dos', don't decode '\r' if that is the last in the source.
10106 (decode_coding_utf_16, decode_coding_emacs_mule)
10107 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
10108 (decode_coding_raw_text, decode_coding_charset): Likewise.
10109 (produce_chars): Don't decode EOL here. Use EMACS_INT.
10110
101112008-03-01 Jason Rumney <jasonr@gnu.org>
10112
10113 * w32font.c (w32font_full_name): Report point size for scalable fonts.
10114
101152008-03-01 Kim F. Storm <storm@cua.dk>
10116
10117 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
10118
101192008-03-01 Jason Rumney <jasonr@gnu.org>
10120
10121 * w32font.c (w32font_full_name): New function.
10122 (w32font_open_internal): Use it.
10123
101242008-03-01 Kim F. Storm <storm@cua.dk>
10125
10126 * dispnew.c (line_draw_cost): Fix invalid glyph check.
10127
101282008-03-01 Jason Rumney <jasonr@gnu.org>
10129
10130 * font.c (font_unparse_fcname): Increase len when style is a symbol.
10131
101322008-03-01 Jan Djärv <jan.h.d@swipnet.se>
10133
10134 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
10135 xg_frame_resized when the event is for the edit widget.
10136
10137 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
10138
10139 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
10140 set_char_size.
10141 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
10142 operations on widgets here. Just set frame size if needed.
10143 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
10144 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
10145 (x_wm_set_size_hint): Set size hints on the edit widget only, not
10146 the whole frame.
10147 (xg_create_tool_bar): Move attachment of the tool bar to
10148 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
10149 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
10150
101512008-03-01 Jason Rumney <jasonr@gnu.org>
10152
10153 * w32fns.c (w32_msg_pump): Disable debug code.
10154
101552008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10156
10157 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
10158
101592008-02-29 Chong Yidong <cyd@stupidchicken.com>
10160
10161 * xdisp.c (next_overlay_string): Don't set
10162 overlay_strings_at_end_processed_p if we're currently reading from
10163 a display string.
10164
101652008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
10166
10167 * xdisp.c (get_overlay_strings_1): Fix typo.
10168
101692008-02-29 Chong Yidong <cyd@stupidchicken.com>
10170
10171 * xdisp.c (get_overlay_strings_1): Add missing argument type.
10172
101732008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
10174
10175 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
10176
10177 * xdisp.c (display_mode_element): Cancel the previous change.
10178 (decode_mode_spec): Likewise.
10179 (handle_auto_composed_prop): Don't make composition if it->string
10180 is a string.
10181
101822008-02-27 Kim F. Storm <storm@cua.dk>
10183
10184 * lisp.h (GLYPH): Change type from int to struct with separate char
10185 and face_id members.
10186 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
10187 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
10188 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
10189 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
10190 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
10191 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
10192 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
10193 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
10194 handle new Lisp glyph code encoding, either an integer or a cons.
10195
10196 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
10197 (GLYPH_ALIAS): Delete.
10198 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
10199 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
10200 (GLYPH_FROM_CHAR): Replace macro by ...
10201 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
10202
10203 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
10204 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
10205 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
10206 (GLYPH_INVALID_P): New macro.
10207 (spec_glyph_lookup_face): Update prototype.
10208
10209 * dispnew.c (line_draw_cost): Adapt to new glyph type.
10210 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
10211 new glyph code encoding.
10212 (spec_glyph_lookup_face): No return value; update passed glyph instead.
10213 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
10214
10215 * xdisp.c (get_next_display_element, next_element_from_display_vector):
10216 Adapt to new glyph type and new glyph code encoding.
10217
10218 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
10219
10220 * indent.c (current_column, current_column_1, Fmove_to_column)
10221 (compute_motion): Adapt to new glyph code encoding.
10222
10223 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
10224
102252008-02-27 Chong Yidong <cyd@stupidchicken.com>
10226
10227 * process.c (wait_reading_process_output): Check for window
10228 changes caused by timers.
10229 Suggested by Johan Bockgård.
10230
102312008-02-27 Glenn Morris <rgm@gnu.org>
10232
10233 * emacs.c (USAGE1): Add `--disable-font-backend'.
10234
102352008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
10236
10237 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
10238 is made to the buffer.
10239
102402008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
10241
10242 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
10243 (face_at_string_position):
10244 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
10245 (face_at_string_position):
10246 * xdisp.c (display_string, next_overlay_change):
10247 * buffer.h (overlays_at):
10248 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
10249 Update callers.
10250
102512008-02-26 Chong Yidong <cyd@stupidchicken.com>
10252
10253 * editfns.c (Fformat): Doc fix.
10254
102552008-02-26 Juanma Barranquero <lekktu@gmail.com>
10256
10257 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
10258 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
10259 (Ffont_otf_alternates, Fquery_font): Doc fixes.
10260
102612008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10262
10263 * buffer.c (Fbuffer_swap_text): New function.
10264 (syms_of_buffer): Defsubr it.
10265
102662008-02-25 Chong Yidong <cyd@stupidchicken.com>
10267
10268 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
10269
102702008-02-25 Jason Rumney <jasonr@gnu.org>
10271
10272 * w32font.c (w32font_draw): Draw one character at a time when padding.
10273
102742008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
10275
10276 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
10277 Handle a nil arg. Use run_window_configuration_change_hook.
10278 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
10279 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
10280 Use run_window_configuration_change_hook.
10281
102822008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10283
10284 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
10285 1-pixel width.
10286
102872008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
10288
10289 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
10290 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
10291 if the glyph in the font is zero pixel with.
10292
10293 * dispextern.h (struct glyph_string): New member padding_p.
10294
10295 * w32font.c (w32font_draw): Pay attention to s->padding_p.
10296
10297 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
10298
10299 * xfont.c (xfont_draw): Pay attention to s->padding_p.
10300
10301 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
10302
10303 * font.c: If the font driver doesn't have `shape' function, return Qnil.
10304
103052008-02-25 Jason Rumney <jasonr@gnu.org>
10306
10307 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
10308
103092008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
10310
10311 Allow fine-grained image-cache flushing.
10312 * dispextern.h (struct image): Add `dependencies' field.
10313 (clear_image_caches): Change arg to Lisp_Object.
10314 * image.c (make_image): Initialize `dependencies' field.
10315 (clear_image_cache): Change arg to allow fine-grained flushing.
10316 Perform the flush even if image-cache-eviction-delay is nil.
10317 (clear_image_caches): Change arg to Lisp_Object.
10318 (Fclear_image_cache): Expand meaning of the argument.
10319 (mark_image): Mark `dependencies' field.
10320 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
10321 (lface_hash): Use XHASH rather than XFASTINT.
10322 (face_at_buffer_position): Fix int -> EMACS_INT position.
10323 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
10324 (select_frame_for_redisplay): Remove code duplication.
10325 (redisplay_internal): Adapt arg to call to clear_image_caches.
10326
103272008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
10328
10329 * s/vms4-0.h:
10330 * s/vms4-2.h:
10331 * s/vms4-4.h:
10332 * s/vms5-5.h: Remove, unused.
10333
10334 * s/irix5-2.h:
10335 * s/irix6-0.h:
10336 * s/riscos5.h:
10337 * s/mach-bsd4-3.h:
10338 * m/mips4.h: Remove files for obsolete systems.
10339
10340 * Makefile.in:
10341 * filelock.c:
10342 * unexmips.c:
10343 * m/hp9000s300.h:
10344 * m/iris4d.h:
10345 * s/aix3-1.h:
10346 * s/hpux.h:
10347 * s/msdos.h:
10348 * s/usg5-0.h:
10349 * s/usg5-2-2.h:
10350 * s/usg5-2.h:
10351 * s/usg5-3.h: Remove references to obsolete variables.
10352
10353 * s/irix5-0.h: Remove, move all the contents ...
10354 * s/irix6-5.h: ... here. Simplify.
10355 * config.in: Regenerate.
10356
103572008-02-24 Jason Rumney <jasonr@gnu.org>
10358
10359 * w32term.c (x_draw_glyph_string_background): Clear the background
10360 manually when cleartype is in use.
10361 (x_draw_glyph_string_foreground): Draw text transparently when
10362 cleartype is in use.
10363
10364 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
10365 a font into it unless we have to.
10366
103672008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10368
10369 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
10370 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
d6c952f8 10371
aac0c6e3
MR
103722008-02-18 Jason Rumney <jasonr@gnu.org>
10373
10374 * w32fns.c (Fw32_shell_execute): Encode parameters.
10375
103762008-02-09 Eli Zaretskii <eliz@gnu.org>
10377
10378 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
10379
103802008-02-05 Juanma Barranquero <lekktu@gmail.com>
10381
10382 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
10383
103842008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
10385
10386 * xterm.c (x_set_offset): Don't change the gravity if
10387 CHANGE_GRAVITY is -1.
10388
103892008-02-23 Chong Yidong <cyd@stupidchicken.com>
10390
10391 * fileio.c (auto_save_error_occurred): New var.
10392 (auto_save_error): Set it.
10393 (Fdo_auto_save): Don't overwrite the error message if an auto-save
10394 error occurred.
10395
103962008-02-23 Eli Zaretskii <eliz@gnu.org>
10397
10398 * w32.c (globals_of_w32): Add initializations for
10399 g_b_init_get_sid_sub_authority and
10400 g_b_init_get_sid_sub_authority_count.
10401
104022008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
10403
10404 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
10405 (font_parse_xlfd): Use them for sanity check.
10406 (Finternal_set_font_style_table): Make sure the table is bijective.
10407
10408 Consolidate the image_cache to the terminal struct.
10409 * termhooks.h (P_): Remove redundant def.
10410 (struct terminal): New field `image_cache'.
10411 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
10412 of FRAME_X_IMAGE_CACHE.
10413 * xterm.h (struct x_display_info): Remove image_cache field.
10414 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10415 * w32term.h (struct w32_display_info): Remove image_cache field.
10416 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10417 * macterm.h (struct mac_display_info): Remove image_cache field.
10418 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
10419 * xterm.c (x_term_init):
10420 * w32term.c (w32_term_init):
10421 * macterm.c (mac_term_init): Set the image_cache in the terminal.
10422 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
10423 Remove declarations.
10424 (clear_image_caches, mark_image_cache): New declarations.
10425 * xfaces.c (clear_face_cache):
10426 * xdisp.c (redisplay_internal): Use clear_image_caches.
10427 * image.c (clear_image_cache): Don't check that a frame is on
10428 a window-system before checking if it shares the same cache.
10429 (clear_image_caches): New function.
10430 (Fclear_image_cache): Use it.
10431 (mark_image): Move from allo.c.
10432 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
10433 * alloc.c (mark_image, mark_image_cache): Move to image.c.
10434 (mark_object): Don't call mark_image_cache for frames.
10435 (mark_terminals): Call mark_image_cache.
10436
10437 * lisp.h (Fdelete_terminal): Declare.
10438
10439 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
10440 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
10441 wrong_type_argument.
10442
104432008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
10444
10445 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
10446 malayalam.el, and tamil.el. Add sinhala.el.
10447
104482008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
10449
10450 * xterm.c (x_connection_closed): Consolidate identical tests.
10451 (x_delete_terminal): Don't crash if called via x_connection_closed.
10452
104532008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
10454
10455 * xdisp.c (decode_mode_spec): New arg string.
10456 (display_mode_element): Adjust for the above change.
10457
104582008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10459
10460 * callint.c (Fcall_interactively): Use AREF.
10461
104622008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
10463
10464 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
10465
104662008-02-18 Jan Djärv <jan.h.d@swipnet.se>
10467
10468 * xfns.c (Fx_show_tip): Set string to " " if empty.
10469
104702008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
10471
10472 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
10473 with Qt.
10474
104752008-02-17 Kenichi Handa <handa@m17n.org>
10476
10477 * ftfont.c (ftfont_shape): Return Lispy number.
10478
10479 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
10480 for GCs.
10481 (Finternal_set_font_selection_order): Call font_update_sort_order
10482 only when enable_font_backend is set.
10483 (realize_x_face): Set face->font_info to that of default face only
10484 when enable_font_backend is set.
10485
10486 * xdisp.c (handle_composition_prop): Set it->c to the fist
10487 character of the composed region.
10488 (fill_composite_glyph_string): Set base_face->font_info to
10489 s->font_info. Get a face for ascii from base_face->ascii_face.
10490 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
10491 with a face already decided.
10492 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
10493 non-negative.
10494 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
10495 call font_prepare_composition unconditionally.
10496
10497 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
10498
10499 * xterm.h (struct x_display_info): New member font.
10500
10501 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
10502 (x_set_mouse_face_gc, x_new_font): Likewise.
10503 (x_term_init): Setup display_info->font.
10504 (x_delete_terminal): Free display_info->font.
10505
10506 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
10507
10508 * ftxfont.c (ftxfont_default_fid): Delete it.
10509 (ftxfont_open): Set xfont->fid to 0.
10510 (ftxfont_end_for_frame): Clear data specific to the frame and the
10511 font-driver.
10512
10513 * xftfont.c (xftfont_default_fid): Delete it.
10514 (xftfont_open): Set xfont->fid to 0.
10515
10516 * fontset.c (FONTSET_OBJLIST): New macro.
10517 (fontset_find_font): Update font-object list of the fontset.
10518 (free_realized_fontset): New function.
10519 (free_face_fontset): Call free_realized_fontset.
10520 (Ffont_info): Call font_close_object only when enable_font_backend
10521 is set.
10522
10523 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
10524 [HAVE_NTGUI]: Include w32term.h.
10525 [MAC_OS]: Include macterm.ch.
10526 (font_otf_ValueRecord): Use make_number.
10527 (font_finish_cache): Fix handling of reference count.
10528 (font_clear_cache): Update num_fonts.
10529 (font_open_entity): Update smallest_char_width and
10530 smallest_font_height of the frame.
10531 (font_close_object): Update num_fonts.
10532 (Fclear_font_cache): Fix finding the target cache data.
10533
105342008-02-16 Glenn Morris <rgm@gnu.org>
10535
10536 * fontset.c (Finternal_char_font): Fix compilation warning.
10537
105382008-02-16 Eli Zaretskii <eliz@gnu.org>
10539
10540 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
10541 instead of char arrays. Enlarge the size of array passed to
10542 get_token_information.
10543
10544 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
10545 warnings.
10546
105472008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
10548
10549 * .gdbinit: Don't set `args', it breaks gdb --args.
10550
105512008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
10552
10553 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
10554 within a narrowed buffer.
10555
105562008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
10557
10558 * coding.c (decode_coding_object, encode_coding_object):
10559 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
10560
105612008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
10562
10563 * coding.c (coding_set_destination): Use BEG_BYTE rather than
10564 hardcoding 1.
10565 (detect_coding_system):
10566 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
10567 (string_char_to_byte, string_byte_to_char, insert_from_gap):
10568 * insdel.c (insert_from_gap):
10569 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
10570 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
10571 (string_to_multibyte):
10572 * character.c (chars_in_text, multibyte_chars_in_text):
10573 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
10574
10575 * character.h (FETCH_STRING_CHAR_ADVANCE)
10576 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
10577 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
10578 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
10579
10580 * casefiddle.c (casify_region): Only call after-change and composition
10581 functions on the part of the region that was changed.
10582
10583 * keyboard.c (read_avail_input):
10584 * frame.c (Fdelete_frame): Call Fdelete_terminal.
10585
105862008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10587
10588 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
10589 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
10590
105912008-02-11 Juanma Barranquero <lekktu@gmail.com>
10592
10593 * w32menu.c (push_submenu_start, push_submenu_end)
10594 (push_left_right_boundary, push_menu_pane, push_menu_item):
10595 * keyboard.c (read_key_sequence): Don't pass args with side effects
10596 to AREF, it fails when compiling with -DENABLE_CHECKING.
10597
105982008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
10599
10600 * Makefile.in (${lispsource}international/charprop.el):
10601 Delete this target.
10602
10603 * search.c (boyer_moore): Fix incorrect synching of the trunk and
10604 emacs-unicode-2.
10605
106062008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
10607
10608 * terminal.c (Fdelete_terminal): Clean up the `force' path.
10609
106102008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10611
10612 * frame.c (Qnoelisp): New symbol.
10613 (syms_of_frame): Initialize it.
10614 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
10615 harmless Elisp code, from a strong `force' from x_connection_closed.
10616 * frame.h (Qnoelisp): Declare.
10617 * xterm.c (x_connection_closed): Pass `noelisp'.
10618
10619 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
10620 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
10621 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
10622 rather than `int' for the type of `type'.
10623
106242008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
10625
10626 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
10627
10628 * Makefile.in (GNUC): Remove support for gcc-1.x.
10629
106302008-02-10 Richard Stallman <rms@gnu.org>
10631
10632 * lisp.h (ASET): Use AREF, not ASLOT.
10633
106342008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
10635
10636 * lisp.h (ASET): Check bounds.
10637
106382008-02-10 Glenn Morris <rgm@gnu.org>
10639
10640 * buffer.c (mode-name): Doc fix.
10641
106422008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10643
10644 * Makefile.in:
10645 * emacs.c:
10646 * gmalloc.c:
10647 * keyboard.c:
10648 * lisp.h:
10649 * m/ibm370aix.h:
10650 * process.c:
10651 * regex.c:
10652 * s/hpux.h:
10653 * sysdep.c:
10654 * sysselect.h:
10655 * systty.h:
10656 * unexec.c:
10657 * w32term.c:
10658 * xsmfns.c:
10659 * xterm.c: Remove code that deals with obsolete variables.
10660
10661 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
10662
10663 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
10664 nothing else needs it anymore.
10665
106662008-02-09 Eli Zaretskii <eliz@gnu.org>
10667
10668 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
10669 instead of unibyte_char_to_multibyte.
10670
106712008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
10672
10673 * s/gnu-linux.h: Remove commented out code.
10674
10675 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
10676
10677 * Makefile.in: Update what RMS says about using autoconf.
10678 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
10679 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
10680 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
10681 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
10682
106832008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
10684
10685 * keymap.c (Fkey_description): Move side effect outside of macro call.
10686
10687 * xfaces.c (Finternal_make_lisp_face):
10688 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
10689
10690 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
10691 (syms_of_fontset): Use ASET.
10692
10693 * fns.c (concat): Move side effect outside of macro call.
10694 (hash_clear): Use ASET.
10695
106962008-02-08 Richard Stallman <rms@gnu.org>
10697
10698 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
10699 If FORCE, and frame has a surrogate minibuffer for another frame,
10700 delete the other frame first.
10701
107022008-02-07 Timo Savola <timo.savola@iki.fi>
10703
10704 * xterm.c (x_detect_focus_change): Handle embed client message.
10705 (handle_one_xevent): Ditto.
10706 (handle_one_xevent): If embedded and we get a button press/release,
10707 request focus.
10708 (xembed_set_info, xembed_send_message): New functions.
10709 (x_make_frame_visible): Call xembed_set_info if embedded.
10710 (x_make_frame_invisible): Call xembed_set_info if embedded.
10711 (x_term_init): Initialize Xatom_XEMBED.
10712 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
10713 (x_iconify_frame): Ditto.
10714
10715 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
10716 (enum xembed_info, enum xembed_message, enum xembed_focus)
10717 (enum xembed_modifier, enum xembed_accelerator): New.
10718 (xembed_set_info, xembed_send_message): Declare.
10719 (FRAME_X_EMBEDDED_P): New.
10720
10721 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
10722 gtk_plug_new.
10723
10724 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
10725 window ID of a frame.
10726 (x_window): Reparent frame if embedded.
10727 (Fx_create_frame): Don't set border width if embedded.
10728
10729 * emacs.c (USAGE3): Add --parent-id.
10730 (standard_args): Ditto.
10731
107322008-02-07 Jan Djärv <jan.h.d@swipnet.se>
10733
10734 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
10735
107362008-02-07 Jim Meyering <meyering@redhat.com>
10737
10738 Use "do...while (0)", not "if (1)...else" in macro definitions.
10739 The latter provokes a warning from gcc about the empty else, when
10740 followed by ";". Also, without that trailing semicolon, it would
10741 silently swallow up any following statement.
10742 * syntax.h (SETUP_SYNTAX_TABLE)
10743 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
10744 * buffer.h (DECODE_POSITION): Likewise.
10745 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
10746 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
10747 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
10748 (FETCH_CHAR_ADVANCE): Likewise.
10749 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
10750
107512008-02-07 Jim Meyering <meyering@redhat.com>
10752
10753 * lread.c [lint]: Don't include <sys/inode.h>.
10754
107552008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
10756
10757 * xselect.c (x_handle_dnd_message):
10758 * xmenu.c (digest_single_submenu, xmenu_show):
10759 * xdisp.c (with_echo_area_buffer_unwind_data)
10760 (format_mode_line_unwind_data, unwind_format_mode_line)
10761 (display_menu_bar):
10762 * eval.c (Ffetch_bytecode):
10763 * doc.c (store_function_docstring):
10764 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
10765 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
10766 * buffer.c (add_overlay_mod_hooklist): Use ASET.
10767
107682008-02-07 Kenichi Handa <handa@m17n.org>
10769
10770 * ftxfont.c (ftxfont_open): Don't set
10771 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
10772
10773 * ftfont.c (ftfont_open): Fix previous change.
10774
107752008-02-06 Jason Rumney <jasonr@gnu.org>
10776
10777 * w32font.c (w32font_text_extents): Fill in lbearing metric.
10778 Use cached metrics for ASCII characters.
10779 (w32font_open_internal): Don't set font's owning_frame.
10780 Cache metrics for ASCII characters.
10781
10782 * w32font.h (struct w32font_info): Add ascii_metrics.
10783 Remove owning_frame.
10784
107852008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
10786
10787 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
10788 to negative value.
10789
10790 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
10791
10792 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
10793
10794 * charset.c (syms_of_charset): Set QCtest and Qeq.
10795
107962008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
10797
10798 * process.c (Fstart_process):
10799 * callproc.c (Fcall_process): Handle the case where
10800 Funhandled_file_name_directory returns nil.
10801
10802 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
10803 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
10804 * font.c (check_gstring): Use them and AREF to access the vector before
10805 we know it's really a gstring.
10806 (Ffont_shape_text): Fix typo.
46e722a9 10807 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
aac0c6e3
MR
10808
10809 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
10810 Declare.
10811
10812 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
10813
108142008-02-05 Jason Rumney <jasonr@gnu.org>
10815
10816 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
10817 Set smallest_font_height and smallest_char_width in display info.
10818
108192008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
10820
10821 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
10822
108232008-02-05 Miles Bader <miles@gnu.org>
10824
10825 * xfaces.c (get_lface_attributes, merge_named_face)
10826 (lookup_named_face, lookup_derived_face, realize_named_face):
10827 Revert 2008-02-01 change by cyd@stupidchicken.com.
10828
108292008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
10830
10831 * fontset.c (Ffontset_info): Handle the case of inhibitting the
10832 fallback fonts.
10833 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
10834
108352008-02-04 Jason Rumney <jasonr@gnu.org>
10836
10837 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
10838 set full_name.
10839 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
10840
108412008-02-03 Jason Rumney <jasonr@gnu.org>
10842
10843 * makefile.w32-in (OBJ1): Include font.o here.
10844 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
10845
108462008-02-02 Jason Rumney <jasonr@gnu.org>
10847
10848 * makefile.w32-in (temacs): Bump EMHEAP to 21.
10849
108502008-02-01 Jason Rumney <jasonr@gnu.org>
10851
10852 * s/cygwin.h: Define VIRT_ADDR_VARIES.
10853
10854 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
10855
108562008-02-01 Andreas Schwab <schwab@suse.de>
10857
10858 * Makefile.in (shortlisp, lisp): Update for rename of
10859 ../lisp/language/myanmar.el.
10860
108612008-02-01 Chong Yidong <cyd@stupidchicken.com>
10862
10863 * xfaces.c (get_lface_attributes): Delete function.
10864 (merge_named_face, lookup_named_face, lookup_derived_face)
10865 (realize_named_face): Call lface_from_face_name directly, and use
10866 the fact that merge_face_vectors does not alter its FROM argument.
10867
108682008-02-01 Jason Rumney <jasonr@gnu.org>
10869
10870 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
10871 input in the default locale. Handle non-Unicode multibyte input.
10872
108732008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10874
10875 * fontset.c (reorder_font_vector): Exclude nil elements from the
10876 font group. Don't try multiple fonts.
10877 (fontset_font): Adjust for the above change.
10878 (Finternal_char_font): Return nil if the found font doesn't
10879 contain the character ch.
10880
10881 * Makefile.in (lisp, shortlisp): Add cham.el.
10882
108832008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10884
10885 * font.h (FONTP): Make it return 1 also for a font-object.
10886
10887 * .gdbinit (xfontset): New function.
10888
10889 * font.c (font_find_for_lface): Check if the character C is
10890 supported or not only for the first font.
10891
10892 * fontset.c (reorder_font_vector): Fix typo.
10893 (fontset_find_font): Don't add a font-spec specifying a script.
10894 Use 0 (not Qt) for the indication of empty font-group. Change the
10895 format of RFONT-DEF. Return Qt if no font in the font-group
10896 support the character.
10897 (fontset_font): Adjust for the above change. If no font was
10898 found the character, remember that.
10899 (face_for_char): Adjust for the change of RFONT-DEF.
10900 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
10901 no font for the target.
10902 (Finternal_char_font): Adjust for the change of RFONT-DEF.
10903
109042008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10905
10906 * font.c (font_load_for_face): Handle the case that the font in
10907 face->lface is a string.
10908
109092008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10910
10911 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
10912
109132008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10914
10915 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
10916 Fix previous change. If the frame is not on a window system,
10917 signal an error.
10918
109192008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10920
10921 * coding.c (decode_coding_object, encode_coding_object): Adjust
10922 marker positions after conversion.
10923
10924 * lisp.h (struct Lisp_Marker): New member need_adjustment.
10925
109262008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10927
10928 * font.c (font_find_for_lface): Fix the handling of the return
10929 value of font_has_char.
10930 (Ffont_shape_text): Fix previous change.
10931
10932 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
10933 (fontset_ref_and_range): Delete it.
10934 (fontset_find_font): Call char_table_ref_and_range instead of
10935 FONTSET_REF_AND_RANGE.
10936 (make_fontset): Don't setup font groups of Latin here.
10937 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
10938 (new_fontset_from_font): Make the specified font the default for
10939 all Latin characters.
10940
109412008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10942
10943 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
10944 is on a window system before accessing the fontset of the frame.
10945
109462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10947
10948 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
10949
10950 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
10951 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
10952
10953 * font.c (Ffont_shape_text): If the font driver doesn't have a
10954 shaper function, make zero-width glyphs to have at least one-pixel
10955 width. Fix setting of `to' field of glyphs.
10956
109572008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10958
10959 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
10960 glyphs.
10961
10962 * font.h (struct font_driver): Improve docstring of member `shape'.
10963
109642008-02-01 Kenichi Handa <handa@m17n.org>
10965
10966 * composite.c (syms_of_composite): Fix docstring of
10967 auto-composition-function.
10968
10969 * font.h (LGLYPH_SIZE): New macro.
10970
10971 * font.c (Ffont_fill_gstring): Stop filling when a character not
10972 supported by the font is found.
10973 (Ffont_shape_text): When a shape callback function returns nil,
10974 try at most two more times with larger gstring.
10975 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
10976
10977 * xdisp.c (handle_auto_composed_prop): Change the argument to
10978 auto-composition-function.
10979
10980 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
10981 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
10982 Lispy glyph and store it in the lgstring.
10983
10984 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
10985
10986 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
10987
109882008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
10989
10990 * font.c (Ffont_shape_text): Avoid unnecessary composition.
10991
10992 * fontset.c (Vfont_encoding_charset_alist): New variable.
10993 (syms_of_fontset): DEFVAR it.
10994 (reorder_font_vector, fontset_find_font): Optimize for the case of
10995 no need of reordering.
10996 (face_for_char): Map the charset property by
10997 Vfont_encoding_charset_alist.
10998
109992008-02-01 Jason Rumney <jasonr@gnu.org>
11000
11001 * w32font.c (logfonts_match): Don't check adstyle here.
11002 (font_matches_spec): Check here against physical font instead.
11003 (add_font_entity_to_list): Avoid some substitutions.
11004
11005 * font.c (font_parse_fcname): Default weight and slant to normal.
11006 (font_score): Prefer normal fonts if weight or slant unspecified.
11007 (font_score) [WINDOWSNT]: Scale weight difference down to closer
11008 match freetype scores.
11009
110102008-02-01 Jason Rumney <jasonr@gnu.org>
11011
11012 * w32font.c (w32font_text_extents): Don't use the frame stored in the
11013 font, as it may have been deleted.
11014 (w32_enumfont_pattern_entity): Map generic family to adstyle using
11015 most common hyphenless variation.
11016 (logfonts_match): Check generic family.
11017 (font_matches_spec): Don't check generic family here.
11018 (fill_in_logfont): Set generic family based on adstyle.
11019
11020 * w32font.h (w32font_get_cache): Update declaration.
11021
110222008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11023
11024 * ftfont.c (ftfont_get_cache): Adjust the argument type.
11025
11026 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
11027 If none of the new drivers are available, call font_update_drivers
11028 with the old drivers.
11029
11030 * w32font.c (w32font_get_cache): Adjust the argument type.
11031
11032 * xfont.c (xfont_get_cache): Adjust the argument type.
11033
11034 * font.h (struct font_driver): Change argument type of get_cache.
11035
11036 * xftfont.c (xftfont_start_for_frame): Delete prototype.
11037
11038 * font.c (Ffont_get): Fix arguments to Fassoc.
11039 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
11040 (font_clear_cache): New function.
11041 (font_list_entities, font_matching_entity): Use font_get_cache.
11042 (font_update_drivers): Call font_clear_cache when finishing a driver.
11043
11044 * fontset.c (fontset_find_font): Fix previous change.
11045
110462008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11047
11048 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
11049 dpyinfo->font_table.
11050 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
11051 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
11052
11053 * font.c (font_at): Handle the case that the arg C is negative.
11054 Handle the unibyte case.
11055 (Ffont_at): Call font_at with the arg C -1.
11056
11057 * xdisp.c (handle_auto_composed_prop): Don't get a character at
11058 the position here, and call font_at with the arg C -1.
11059 Don't check the range of the existing composition at the point.
11060
110612008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11062
11063 * fontset.c (fontset_add): New args charset_id and family.
11064 Change caller.
11065 (load_font_get_repertory, fontset_find_font): Assume that
11066 font_spec is always a font-spec object.
11067 (Fset_fontset_font): Always store a font-spec object in a fontset.
11068
11069 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
11070 instead of get_property_and_range.
11071
110722008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11073
11074 * xftfont.c (struct xftfont_info): Delete the member ft_face.
11075 (xftfont_open): Don't keep locking face.
11076 (xftfont_close): Don't unlock face.
11077 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
11078
11079 * fontset.c (fontset_find_font): Don't prefer a font of
11080 supplementary charset.
11081
110822008-02-01 Kenichi Handa <handa@m17n.org>
11083
11084 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
11085 script, langsys_tag to langsys, new member script.
11086 (OTF_TAG_STR): Terminate by '\0'.
867d4bb3 11087 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
aac0c6e3
MR
11088 listing to the script specified in that property. Fix arg to
11089 OTF_check_features.
11090
110912008-02-01 Jason Rumney <jasonr@gnu.org>
11092
11093 * w32font.h: New file.
11094
11095 * w32font.c: Include it.
11096 (struct w32font_info): Add owning_frame field. Move to w32font.h.
11097 (w32font_open): Set owning_frame.
11098 (w32font_text_extents): Use owning_frame.
11099 (struct font_callback_data): Add opentype_only field.
11100 (add_font_entity_to_list): Use it to filter fonts.
11101 Don't check against full name.
11102 (w32font_list_internal): New function.
11103 (w32font_list): Use it.
11104 (w32font_match_internal): New function.
11105 (w32font_match): Use it.
11106 (w32font_open_internal): New function.
11107 (w32font_open): Use it.
11108 (w32font_get_cache, w32font_close, w32font_has_char)
11109 (w32font_encode_char, w32font_text_extents, w32font_draw):
11110 Make non-static.
11111
11112 * makefile.w32-in (w32font.o): Depend on w32font.h.
11113
111142008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11115
11116 * charset.c (Fdefine_charset_internal): Record a supplementary
11117 charset at the tail of Vcharset_order_list.
11118
11119 * font.c (Ffont_shape_text): Fix the return value.
11120
11121 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
11122
11123 * xdisp.c (handle_auto_composed_prop): Fix previous change.
11124
111252008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11126
11127 * ftfont.c (struct OpenTypeSpec): New struct.
11128 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
11129 (ftfont_get_open_type_spec): New function.
11130 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
11131
11132 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
11133
111342008-02-01 Jason Rumney <jasonr@gnu.org>
11135
11136 * w32font.c (add_font_entity_to_list): Compare only the beginning
11137 of full name.
11138
111392008-02-01 Kenichi Handa <handa@m17n.org>
11140
11141 * xdisp.c (handle_auto_composed_prop): Simplify the code.
11142 Never return HANDLED_RECOMPUTE_PROPS.
11143
111442008-02-01 Kenichi Handa <handa@m17n.org>
11145
11146 * font.c (font_gstring_produce): Delete it.
11147
11148 * composite.h (COMPOSITION_METHOD):
11149 Handle COMPOSITION_WITH_GLYPH_STRING.
11150
111512008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11152
11153 * xfont.c (Qx): Delete.
11154 (syms_of_xfont): Don't initialize Qx.
11155
11156 * composite.h (enum composition_method):
11157 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
11158
111592008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11160
11161 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
11162 (choose_face_font): Accept new form of font-spec.
11163
11164 * frame.h (font_driver_list): Declare it unconditionally.
11165 (struct frame): Define members font_driver_list and font_data_list
11166 unconditionally.
11167
11168 * fontset.c: Include "font.h" unconditionally.
11169 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
11170 (Fset_fontset_font): Accept a font-spec object.
11171
11172 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
11173 PIXEL_SIZE part a wild card.
11174
11175 * dispextern.h (struct glyph_string): Define members clip and
11176 num_clips unconditionally.
11177 (struct face): Define members font_info and extra unconditionally.
11178
11179 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
11180 ftfont_info only when HAVE_LIBOTF is defined.
11181
111822008-02-01 Andreas Schwab <schwab@suse.de>
11183
11184 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
11185 and end.
11186
111872008-02-01 Jason Rumney <jasonr@gnu.org>
11188
11189 * w32font.c (w32font_driver): Add new fields.
11190
111912008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11192
11193 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
11194 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
11195 (LIBES): Add @M17N_FLT_CFLAGS@.
11196
11197 * composite.c (compose_text): Don't treat the new style
11198 composition specially.
11199
11200 * emacs.c (main): Call syms_of_font unconditionally.
11201
11202 * font.h (FONT_ENTITY_NOT_LOADABLE)
11203 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
11204 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
11205 (struct font_driver): New member shape.
11206 (font_registry_charsets): Extern it.
11207 (font_find_for_lface, font_prepare_composition): Adjust prototype.
11208 (font_otf_capability, font_drive_otf): Delete their externs.
11209
11210 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
11211 (font_charset_alist, font_registry_charsets): Move from xfont.c
11212 and rename.
11213 (font_prop_validate_otf): New function.
11214 (font_property_table): Register it for QCotf.
11215 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
11216 (font_drive_otf): Delete.
11217 (font_prepare_composition): New arg F. Adjust for the change of
11218 lispy gstring.
11219 (font_find_for_lface): New arg C.
11220 (font_load_for_face): Adjust for the change of font_find_for_lface.
11221 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
11222 lispy gstring.
11223 (Ffont_shape_text): New function.
11224 (Fopen_font): If the font size is not given, use 12-pixel.
11225 (Ffont_at): New arg STRING.
11226 (syms_of_font): Initalize font_charset_alist.
11227 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
11228 conditionally.
11229
11230 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
11231 fonts of the same font-spec. Change the format of RFONT-DEF.
11232 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
11233 Adjust for the change of RFONT-DEF.
11234 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
11235
11236 * ftfont.h: New file.
11237
11238 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
11239 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11240 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11241 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
11242 font_otf_capability and font_drive_otf, set ftfont_shape.
11243 (ftfont_list): Adjust for the change of :otf property value.
11244 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
11245 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
11246 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
11247 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11248 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
11249 (otf_gstring, gstring, m17n_flt_initialized): New variables.
11250
11251 * w32term.c (x_draw_composite_glyph_string_foreground):
11252 Adjust for the change of lispy gstring.
11253
11254 * xdisp.c (handle_composition_prop): Adjust for the change of
11255 lispy gstring. Call a function for auto-composition with the
11256 third arg it->window.
11257 (fill_composite_glyph_string): Adjust for the change of lispy string.
11258 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
11259
11260 * xfaces.c (set_font_frame_param): Adjust for the change of
11261 font_find_for_lface.
11262
11263 * xfont.c (x_font_charset_alist): Move to font.c and rename.
11264 (xfont_registry_charsets): Likewise. Change caller.
11265 (syms_of_xfont): Don't handle x_font_charset_alist.
11266
11267 * xftfont.c: Include "ftfont.h".
11268 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
11269 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
11270 (xftfont_close) [HAVE_LIBOTF]: Close otf.
11271 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
11272 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
11273 Set xftfont_driver.shape to xftfont_shape.
11274
11275 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
11276 the change of lispy gstring.
11277
112782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11279
11280 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
11281
112822008-02-01 Jason Rumney <jasonr@gnu.org>
11283
11284 * w32font.c (w32font_draw): Fill background manually.
11285
112862008-02-01 Jason Rumney <jasonr@gnu.org>
11287
11288 * font.c (Qfontp): Remove unused symbol.
11289 (QCantialias): New symbol.
11290 (syms_of_font): Define it.
11291 (font_property_table): Set a validator for QCantialias.
11292
11293 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
11294 Define if not already.
11295 (QCfamily): Share with xfaces.c.
11296 (Qstandard, Qsubpixel, Qnatural): New symbols.
11297 (syms_of_w32font): Define them. Don't define QCfamily here.
11298 (w32_antialias_type, lispy_antialias_type): New functions.
11299 (w32_enumfont_pattern_entity): New arg requested_font.
11300 Set antialias parameter if non-default was requested.
11301 (fill_in_logfont): Fill in lfQuality if :antialias specified.
11302
113032008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11304
11305 * lread.c (read1): Undo the previous change.
11306
113072008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
11308
11309 * frame.c (Fdelete_frame): Call font_update_drivers only when
11310 USE_FONT_BACKEND is defined.
11311
113122008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11313
11314 * font.h (struct font_bitmap): New member bits_per_pixel.
11315 (struct font_driver): New members start_for_frame and end_for_frame.
11316 (struct font_data_list): New struct.
11317 (font_put_frame_data, font_get_frame_data): Extern them.
11318
11319 * frame.h (struct frame): New member font_data_list.
11320
11321 * font.c (font_update_drivers): Call driver->start_for_frame and
11322 driver->end_for_frame at proper timings.
11323 (font_put_frame_data, font_get_frame_data): New functions.
11324 (Ffont_spec): Add usage in the docstring.
11325
11326 * frame.c (make_frame): Initialize f->font_data_list to NULL.
11327 (Fdelete_frame): Call font_update_drivers.
11328
11329 * xftfont.c (struct xftface_info): Delete the member xft_draw.
11330 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
11331 (xftfont_get_xft_draw): New function.
11332 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
11333 (xftfont_end_for_frame): New function.
11334 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
11335
11336 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
11337 Change argument. Cache GCs in the per-frame data.
11338 (struct ftxfont_frame_data): New struct.
11339 (ftxfont_draw_bitmap): New arg gc_fore and flush.
11340 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
11341 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
11342 (ftxfont_end_for_frame): New function.
11343 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
11344
11345 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
11346
113472008-02-01 Kenichi Handa <handa@m17n.org>
11348
11349 * xselect.c (Vselection_coding_system)
11350 (Vnext_selection_coding_system): Delete them.
11351 (syms_of_xselect): Don't declare selection-coding-system and
11352 next-selection-coding-system. They are declared in select.el.
11353
113542008-02-01 Jason Rumney <jasonr@gnu.org>
11355
11356 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
11357
11358 * w32fns.c: Include imm.h.
11359 (get_composition_string_fn, get_ime_context_fn): New optional
11360 system functions.
11361 (globals_of_w32fns): Load them from imm32.dll.
11362 (ignore_ime_char): New flag.
11363 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
11364 WM_IME_ENDCOMPOSITION messages.
11365
11366 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
11367 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
11368
113692008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11370
11371 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
11372 (READCHAR_REPORT_MULTIBYTE): New macro.
11373 (readchar): New 2nd arg MULTIBYTE.
11374 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
11375 Make symbol's name multibyte according to the multibyteness of the
11376 source.
11377
113782008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11379
11380 * xfaces.c (face_for_overlay_string): Call lookup_face with
11381 correct arguments (fix of synching with the trunk).
11382
113832008-02-01 Kenichi Handa <handa@m17n.org>
11384
11385 * font.c (font_prop_validate_symbol, font_prop_validate_style)
11386 (font_prop_validate_non_neg, font_prop_validate_spacing):
11387 Delete argument prop_index.
11388 (font_property_table): Change arguments to validater. Change Callers.
11389 (font_lispy_object): Delete.
11390 (font_at): Use font_find_object instead fo font_lispy_object.
11391
113922008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
11393
11394 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
11395 and file names.
11396
113972008-02-01 Jason Rumney <jasonr@gnu.org>
11398
11399 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
11400 (font_matches_spec): Remove debug output.
11401 (add_font_entity_to_list): Avoid using substituted fonts.
11402
114032008-02-01 Jason Rumney <jasonr@gnu.org>
11404
11405 * doc.c (Fsnarf_documentation):
11406 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
11407
114082008-02-01 Miles Bader <miles@gnu.org>
11409
11410 * dispextern.h (struct glyph_row): Only define "clip" field if
11411 HAVE_WINDOW_SYSTEM is defined.
11412
114132008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11414
11415 Fix up multi-tty merge.
11416
11417 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
11418 and indentation.
11419
11420 * xfaces.c (free_realized_face, clear_face_gcs):
11421 Include font_done_for_face in the input_blocked section, just in case.
11422
11423 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
11424 (get_char_face_and_encoding): Undo last change and remove the *other*
11425 duplicate definition (i.e. keep the one that's better scoped and that
11426 includes code for the font-backend).
11427
11428 * terminal.c (create_terminal): Default keyboard_coding to
11429 `no-conversion' and terminal_coding to `undecided'.
11430
11431 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
11432
11433 * fontset.c (free_realized_fontsets): Check that the table entry does
11434 contain a fontset before trying to compare it to `base'.
11435
11436 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
11437 syms_of_charset, and syms_of_coding earlier because init_window_once
11438 now needs Vcoding_system_hash_table to be setup.
11439
11440 * coding.h (default_buffer_file_coding): Remove.
11441
11442 * coding.c (default_buffer_file_coding): Remove.
11443 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
11444 than ->symbol, and use the terminal-local coding system.
11445 (syms_of_coding): Don't setup the coding-systems that are not
11446 terminal-local.
11447 (Fdefine_coding_system_internal): Use XCAR/XCDR.
11448
11449 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
11450 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
11451
11452 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
11453 in chartab.c and were re-added here by mistake.
11454 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
11455
11456 * doc.c (Fsnarf_documentation):
11457 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
11458 src to etc.
11459
11460 * ChangeLog.10: Add mistakenly removed entry.
11461
114622008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
11463
11464 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
11465
114662008-02-01 Miles Bader <miles@gnu.org>
11467
11468 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
11469 Add extra args to FACE_FOR_CHAR.
11470
114712008-02-01 Kenichi Handa <handa@m17n.org>
11472
11473 * keymap.c (where_is_internal_1): If key is a cons, store the copy
11474 in sequence.
11475
11476 * chartab.c (map_sub_char_table, map_char_table): If the range
11477 contains just one character, call the function with that character
11478 even if the depth is not 3.
11479
114802008-02-01 Jason Rumney <jasonr@gnu.org>
11481
11482 * w32font.c (w32font_text_extents): Calculate metrics for the
11483 whole string.
11484
114852008-02-01 Jason Rumney <jasonr@gnu.org>
11486
11487 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
11488
114892008-02-01 Jason Rumney <jasonr@gnu.org>
11490
11491 * w32term.c (x_set_glyph_string_clipping): Use
11492 get_glyph_string_clip_rects.
11493 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11494 Adjust for the change of struct glyph_string.
11495
11496 * w32font.c (w32font_draw): Do clipping here.
11497
114982008-02-01 Kenichi Handa <handa@m17n.org>
11499
11500 * xftfont.c (xftfont_draw): Adjust for the change of struct
11501 glyph_string.
11502
11503 * xterm.c (x_set_glyph_string_clipping): Use
11504 get_glyph_string_clip_rects.
11505 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
11506 Adjust for the change of struct glyph_string.
11507
11508 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
11509 the resulting clip(s}.
11510 (expose_overlaps): Add arg r. Change callers. Set it to
11511 row->clip temporarily.
11512 (expose_window): Redraw rows overlapping the exposed area.
11513
11514 * dispextern.h (struct glyph_row): New member clip.
11515 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
11516 clip_height, new member clip, and num_clips.
11517
115182008-02-01 Kenichi Handa <handa@m17n.org>
11519
11520 * data.c (Fchar_or_string_p): Fix docstring.
11521
115222008-02-01 Kenichi Handa <handa@m17n.org>
11523
11524 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
11525 create a temporary XftDraw object.
11526
115272008-02-01 Kenichi Handa <handa@m17n.org>
11528
11529 * font.c (Ffontp): Fix docstring.
11530
11531 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
11532 strong evidence of ISO-2022.
11533
115342008-02-01 Kenichi Handa <handa@m17n.org>
11535
11536 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
11537 SYNTAX_ENTRY_FOLLOW_PARENT.
11538
115392008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
11540
11541 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
11542 its type.
11543 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
11544 Update to the new type of weak_hash_tables and next_weak.
11545
11546 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
11547 a plain C pointer to Lisp_Hash_Table.
11548
11549 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
11550 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
11551 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
11552 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
11553 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
11554 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
11555 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
11556 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
11557 (GC_EQ): Remove since they've been identical to their non-GC_
11558 alter-egos ever since the markbit was eradicated.
11559
11560 * alloc.c:
11561 * buffer.c:
11562 * buffer.h:
11563 * data.c:
11564 * fileio.c:
11565 * filelock.c:
11566 * fns.c:
11567 * frame.h:
11568 * lisp.h:
11569 * macterm.c:
11570 * print.c:
11571 * process.c:
11572 * w32fns.c:
11573 * w32menu.c:
11574 * w32term.c:
11575 * xfns.c:
11576 * xmenu.c:
11577 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
11578
115792008-02-01 Kenichi Handa <handa@m17n.org>
11580
11581 * chartab.c (map_sub_char_table): Make it work for the top-level
11582 char-table. Fix handling of parent char-table.
11583 (map_char_table): Adjust for the above change.
11584
115852008-02-01 Jason Rumney <jasonr@gnu.org>
11586
11587 * w32font.c (Qgdi): Rename from Qw32.
11588
115892008-02-01 Jason Rumney <jasonr@gnu.org>
11590
11591 * w32bdf.c (get_quoted_string): Make function static.
11592
115932008-02-01 Kenichi Handa <handa@m17n.org>
11594
11595 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
11596 bigger ascent and descent than those of the font, use them as
11597 font's ascent and descent.
11598
115992008-02-01 Kenichi Handa <handa@m17n.org>
11600
11601 * Makefile.in (${lispsource}international/charprop.el): Move this
11602 target within "#ifdef HAVE_UNIDATA" and "#endif".
11603
116042008-02-01 Kenichi Handa <handa@m17n.org>
11605
11606 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
11607 (shortlisp): Add ../lisp/language/tai-viet.el.
11608
116092008-02-01 Ulrich Mueller <ulm@gentoo.org>
11610
11611 * Makefile.in (${lispsource}international/charprop.el): Depend on
11612 temacs${EXEEXT}.
11613
116142008-02-01 Jason Rumney <jasonr@gnu.org>
11615
11616 * w32font.c (w32font_close): Delete the GDI font object.
11617
11618 * w32menu.c: Include character.h.
11619
11620 * w32proc.c: Likewise.
11621
11622 * w32select.c: Likewise.
11623
11624 * makefile.w32-in (w32proc.o): Depend on character.h.
11625
116262008-02-01 Jason Rumney <jasonr@gnu.org>
11627
11628 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
11629
11630 * w32menu.c (syms_of_w32menu): Likewise.
11631
11632 * w32proc.c (syms_of_ntproc): Likewise.
11633
11634 * w32select.c (syms_of_w32select): Likewise.
11635
11636 * w32term.c (syms_of_w32term): Likewise.
11637
116382008-02-01 Jason Rumney <jasonr@gnu.org>
11639
11640 * w32font.c (w32font_draw): Delete brush after using it.
11641
116422008-02-01 Jason Rumney <jasonr@gnu.org>
11643
11644 * w32font.c (w32font_open): Don't set font_idx.
11645 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
11646 to font settings.
11647 (w32font_draw): Fill background explicitly.
11648
116492008-02-01 Jason Rumney <jasonr@gnu.org>
11650
11651 * w32term.c (w32_initialize): Don't call w32font_initialize.
11652
11653 * w32font.c (w32font_info): Remove subranges.
11654 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
11655 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
11656 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
11657 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
11658 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
11659 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
11660 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
11661 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
11662 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
11663 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
11664 New symbols.
11665 (font_callback_data): New struct.
11666 (w32font_list, w32font_match): Use it.
11667 (w32font_open): Don't populate subranges.
11668 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
11669 (w32font_encode_char): Always return unicode code-point as-is.
11670 (w32font_text_extents): Supply a transformation matrix to
11671 GetGlyphOutline. Never look up by glyph index. Avoid looping
11672 twice. Use unicode version of GetTexExtentPoint32 instead of
11673 glyph index version.
11674 (set_fonts_frame): Remove.
11675 (w32_enumfont_pattern_entity): Add frame parameter, use it to
11676 set frame parameter. Use backward compatible fake foundries.
11677 Save generic family in extra slot under QCfamily. Make width slot
11678 constant. Save QCspacing value. Save list of scripts instead of
11679 binary subranges.
11680 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
11681 (add_font_entity_to_list): Use font_callback_data struct. Filter
11682 unwanted fonts.
11683 (add_one_font_entity_to_list): Use font_callback_data struct.
11684 (w32_registry): Default to iso10646_1.
11685 (fill_in_logfont): Use dpi from extra slot. Don't bother with
11686 string font registries. Don't fill in font name if it is a generic
11687 family name, fill family instead. Use spacing, family and script
11688 extra info to fill pitch, family and charset fields.
11689 (list_all_matching_fonts): Use font_callback_data struct.
11690 (unicode_range_for_char): Remove.
11691 (font_supported_scripts): New function.
11692 (w32font_initialize): Remove.
11693 (syms_of_w32font): Update which symbols are defined.
11694
116952008-02-01 Jason Rumney <jasonr@gnu.org>
11696
11697 * font.c (font_pixel_size): Reverse assq_no_quit args.
11698
11699 * w32term.h (FONT_WIDTH): Report max width, not average.
11700 (FONT_MAX_WIDTH): Remove.
11701 (FONT_AVG_WIDTH): New macro.
11702
11703 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
11704 redefinition of FONT_WIDTH.
11705
11706 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
11707 (w32_cache_char_metrics): Use FONT_WIDTH.
11708
11709 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
11710
117112008-02-01 Jason Rumney <jasonr@gnu.org>
11712
11713 * w32font.c (w32font_open): Make lfHeight negative.
11714
11715 * w32fns.c (x_default_font_parameter): Use new style font name.
11716 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
11717
117182008-02-01 Jason Rumney <jasonr@gnu.org>
11719
11720 * w32font.c (QCsubranges): New symbol.
11721 (w32font_open, w32font_has_char): Get subranges from subproperty
11722 of extra.
11723 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
11724 (syms_of_w32font): Define :subranges symbol.
11725
11726 * font.c (font_put_extra): Expose externally.
11727
11728 * font.h (font_put_extra): Move declaration from font.c.
11729
11730 * font.c (Ffont_get): Use font driver to determine otf capability.
11731 (adjust_anchor): Check if driver defines anchor_point before using.
11732
11733 * w32font.c (w32font_open): Handle size, height and pixel_size better.
11734 (w32font_draw): Use options.
11735 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
11736 Fix detection of truetype fonts.
11737 (registry_to_w32_charset): Handle charsets other than iso8859-1
11738 expressed as lisp symbols.
11739 (w32_registry): Express charset as lisp symbol.
11740 (fill_in_logfont): Reverse pixel and point height logic.
11741 Don't set width here. Set quality to default.
11742
11743 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
11744 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
11745
11746 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11747 Remove redundant loop and allocation.
11748
11749 * makefile.w32-in (font.o, w32font.o): New objects.
11750 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
11751 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
11752
11753 * xdisp.c (fill_composite_glyph_string): Make the first arg to
11754 STORE_XCHARB a valid l-value.
11755
11756 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
11757 calculations for non-Truetype fonts.
11758 (x_draw_glyph_string): Sync with xterm.c.
11759 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
11760 Remove redundant code.
11761 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
11762
11763 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
11764 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
11765
11766 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
11767 (x_to_w32_charset, w32_to_x_charset): Expose externally.
11768
11769 * w32font.c: New file for w32 font backend.
11770
117712008-02-01 Kenichi Handa <handa@m17n.org>
11772
11773 * term.c: Don't include "buffer.h" twice.
11774
117752008-02-01 Kenichi Handa <handa@m17n.org>
11776
11777 * character.c (Funibyte_string): New function.
11778 (syms_of_character): Defsubr it.
11779
117802008-02-01 Jason Rumney <jasonr@gnu.org>
11781
11782 * w32term.c [USE_FONT_BACKEND]:
11783 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
11784 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
11785 (x_draw_glyph_string, x_draw_glyph_string_foreground)
11786 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
11787 (x_free_frame_resources): Sync with xterm.c.
11788
117892008-02-01 Andreas Schwab <schwab@suse.de>
11790
11791 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
11792 char-table size.
11793
117942008-02-01 Kenichi Handa <handa@m17n.org>
11795
11796 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
11797
117982008-02-01 Kenichi Handa <handa@m17n.org>
11799
11800 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
11801 font_otf_gpos, add font_drive_otf.
11802
11803 * fontset.c (fontset_find_font): Pay attention to font size
11804 specified for a font.
11805 (reorder_font_vector): Check contents of font_def.
11806
11807 * font.c (struct otf_list): Delete it.
11808 (otf_list): Make it a lisp variable.
11809 (otf_open): Use lispy otf_list.
11810 (generate_otf_features): Rename from parse_gsub_gpos_spec.
11811 (check_otf_features): New function.
11812 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11813 New functions.
11814 (font_drive_otf): New function merging font_otf_gsub and
11815 font_otf_gpos.
11816 (font_open_for_lface): New arg spec. Change argument order.
11817 (font_load_for_face): Adjust for the change of font_open_for_lface.
11818 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
11819 Ffont_otf_gpos.
11820 (syms_of_font): Staticpro otf_list. Delete defsubr of
11821 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
11822
11823 * xfaces.c (set_font_frame_param): Adjust for the change of
11824 font_open_for_lface.
11825
11826 * font.h (font_open_for_lface): Adjust prototype.
11827 (struct font_driver): Delete members otf_gsub and otf_gpos, add
11828 member otf_drive.
11829 (font_otf_gsub, font_otf_gpos): Delete externs.
11830 (font_drive_otf): Extern it.
11831
118322008-02-01 Kenichi Handa <handa@m17n.org>
11833
11834 * font.c (font_at): If the window W is not on a window system,
11835 return Qnil.
11836
11837 * coding.c (produce_chars, encode_coding): Don't call
11838 insert_from_gap if no characters to produce.
11839
118402008-02-01 Kenichi Handa <handa@m17n.org>
11841
11842 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
11843 Fclear_face_cache.
11844
11845 * xfaces.c (face_for_font): Check also face->font==font->font.font.
11846
118472008-02-01 Miles Bader <miles@gnu.org>
11848
11849 * emacs.c (main): Change default value of `enable_font_backend' to 1.
11850 Parse "--disable-font-backend" option.
11851 (standard_args): Add "--disable-font-backend" option.
11852
118532008-02-01 Kenichi Handa <handa@m17n.org>
11854
11855 * fontset.c (fontset_find_font): New function.
11856 (fontset_font): Use fontset_find_font.
11857 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
11858 Register the specified font for all Latin characters.
11859 (new_fontset_from_font): Register the specified font for all Latin
11860 characters.
11861 (dump_fontset): For a realized fontset, include the base fontset
11862 name in the returned vector.
11863
118642008-02-01 Kenichi Handa <handa@m17n.org>
11865
11866 * character.h (CHAR_STRING): Cast C to unsigned on calling
11867 char_string.
11868
11869 * character.c (char_string): Type of arg C changed to unsigned.
11870 Signal an error if C is an invalid character code.
11871
11872 * editfns.c (general_insert_function, Fchar_to_string):
11873 Use CHARACTERP, not INTEGERP.
11874
118752008-02-01 Kenichi Handa <handa@m17n.org>
11876
11877 * character.h (MIN_MULTIBYTE_LEADING_CODE)
11878 (MAX_MULTIBYTE_LEADING_CODE): New macros.
11879
11880 * regex.c (analyse_first): Fix for multibyte characters in "case
11881 charset:" and "case categoryspec:".
11882
118832008-02-01 Andreas Schwab <schwab@suse.de>
11884
11885 * Makefile.in (LIBES): Move standard libraries to the end.
11886
118872008-02-01 Kenichi Handa <handa@m17n.org>
11888
11889 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
11890 nonzero, don't shrink the buffer nextb.
11891
11892 * buffer.h (struct buffer_text): New member inhibit_shrinking.
11893
11894 * coding.c (coding_alloc_by_making_gap): New arg offset.
11895 (alloc_destination): Call coding_alloc_by_making_gap with the arg
11896 offset.
11897 (decode_coding_iso_2022): Update coding->safe_charsets.
11898 (decode_coding_gap): Temporarily set
11899 current_buffer->text->inhibit_shrinking to 1.
11900
119012008-02-01 Kenichi Handa <handa@m17n.org>
11902
11903 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
11904 indexing into elements of s->cmp and s->char2b.
11905
119062008-02-01 Juanma Barranquero <lekktu@gmail.com>
11907
11908 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
11909
119102008-02-01 Kenichi Handa <handa@m17n.org>
11911
11912 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
11913 target_multibyte instead of multibyte.
11914 (re_match_2_internal): Call bcmp_translate with target_multibyte.
11915 (bcmp_translate): Change the argument name from multibyte to
11916 target_multibyte.
11917
119182008-02-01 Kenichi Handa <handa@m17n.org>
11919
11920 These changes are to compile a regexp into a pattern that can be
11921 used both for multibyte and unibyte targets.
11922
11923 * Makefile.in (search.o): Depend on charset.h.
11924
11925 * character.c (multibyte_char_to_unibyte_safe): New function.
11926
11927 * search.c: Include "charset.h".
11928 (compile_pattern_1): Delete argument multibyte. Don't set
11929 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
11930 (compile_pattern): Don't compare cp->buf.target_multibyte.
11931 Compare cp->buf.charset_unibyte.
11932 (compile_pattern): Set cp->buf.target_multibyte.
11933
11934 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
11935
11936 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
11937
11938 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
11939 multibyte. Change callers.
11940 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
11941 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
11942 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
11943 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
11944 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
11945 (regex_compile): Make the compiled pattern usable both for
11946 multibyte and unibyte targets.
11947 (analyse_first): Make the fastmap usable both for multibyte and
11948 unibyte targets.
11949 (TRANSLATE_VIA_MULTIBYTE): Delete.
11950 (re_match_2_internal): Pay attention to the case that the
11951 multibyteness of bufp and target may be different.
11952
119532008-02-01 Kenichi Handa <handa@m17n.org>
11954
11955 * xdisp.c (x_produce_glyphs): When a font is not found, make the
11956 empty box occupy at least one column width.
11957
119582008-02-01 Miles Bader <miles@gnu.org>
11959
11960 * Makefile.in: Remove redundant HAVE_XFT clause.
11961
119622008-02-01 Kenichi Handa <handa@m17n.org>
11963
11964 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
11965
119662008-02-01 Kenichi Handa <handa@m17n.org>
11967
11968 * fontset.c (Finternal_char_font): Fix for the case of POSITION
11969 being nil.
11970
119712008-02-01 Kenichi Handa <handa@m17n.org>
11972
11973 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
11974
119752008-02-01 Kenichi Handa <handa@m17n.org>
11976
11977 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
11978
119792008-02-01 Kenichi Handa <handa@m17n.org>
11980
11981 * search.c (simple_search): Fix previous change.
11982
119832008-02-01 Kenichi Handa <handa@m17n.org>
11984
11985 * xftfont.c (ftfont_font_format): Extern declaration.
11986
11987 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
11988
11989 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
11990 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
11991
11992 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
11993 (ftfont_font_format): Fix previous change.
11994
11995 * font.h (Ffont_xlfd_name): EXFUN it.
11996
11997 * font.c (font_parse_xlfd): Fix the array size of `f'.
11998 (register_font_driver): Use EQ to compare driver->type.
11999
12000 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
12001 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
12002 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
12003
120042008-02-01 Kenichi Handa <handa@m17n.org>
12005
12006 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
12007 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
12008
120092008-02-01 Kenichi Handa <handa@m17n.org>
12010
12011 * xfont.c (xfont_open): Set font->format.
12012
12013 * xftfont.c (xftfont_open): Set font->format.
12014
12015 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
12016 (ftfont_list): Include FC_FONTFORMAT in FcObject.
12017 (ftfont_open): Set font->format.
12018 (ftfont_font_format): New function.
12019
12020 * font.h (struct font): New member format.
12021
12022 * font.c (Qopentype): New variable.
12023 (syms_of_font): Defsym it.
12024 (Fquery_font): Change the format of the last element of the return
12025 value.
12026
120272008-02-01 Kenichi Handa <handa@m17n.org>
12028
12029 * xfns.c (xic_create_xfontset): Try the default fontset name as a
12030 last resort.
12031
120322008-02-01 Kenichi Handa <handa@m17n.org>
12033
12034 * coding.c (detect_coding_charset): Fix detection of multi-byte
12035 charset.
12036
120372008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
12038
12039 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
12040
120412008-02-01 Kenichi Handa <handa@m17n.org>
12042
12043 * xdisp.c (get_next_display_element): Set it->face_id for the
12044 first component of a composition.
12045 (x_produce_glyphs): Check if the font is changed or not for composition.
12046
120472008-02-01 Kenichi Handa <handa@m17n.org>
12048
12049 * fontset.c (Qlatin): New variable.
12050 (syms_of_fontset): Define it as a lisp symbol.
12051 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
12052
120532008-02-01 Kenichi Handa <handa@m17n.org>
12054
12055 * font.c (font_unparse_fcname): Pay attention to the case that
12056 some of font property is a null string.
12057
120582008-02-01 Kenichi Handa <handa@m17n.org>
12059
12060 * term.c: Include "composite.h".
12061 (encode_terminal_code): Output all components of composition.
12062 Check the size of encode_terminal_src.
12063 (produce_glyphs): For composition, call produce_composite_glyph.
12064 (append_composite_glyph, produce_composite_glyph): New functions.
12065
12066 * xdisp.c (x_produce_glyphs): In handling composition, if a font
12067 is not found, get font_info from the current ascii face.
12068
120692008-02-01 Kenichi Handa <handa@m17n.org>
12070
12071 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
12072 buffer-file-name to Qnil before calling insert_from_buffer.
12073
12074 * font.c (font_unparse_fcname): Pay attention to the case that
12075 foundry is a null string.
12076
120772008-02-01 Kenichi Handa <handa@m17n.org>
12078
12079 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
12080
12081 * font.c (Qunicode_sip): New variable.
12082 (syms_of_font): Declare it as a Lisp symbol.
12083
12084 * font.h (Qunicode_sip): Extern it.
12085
120862008-02-01 Kenichi Handa <handa@m17n.org>
12087
12088 * composite.c (get_composition_id): Pay attention to TAB component.
12089
12090 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
12091 TAB. Adjust for the change of s->char2b which always points to
12092 the first element of allocated memory.
12093
12094 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
12095
12096 * xdisp.c (handle_composition_prop): Set it->c to the first
12097 non-TAB component.
12098 (fill_composite_glyph_string): Change argument.
12099 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
12100 (x_produce_glyphs): Fix handling of left/right padding.
12101
121022008-02-01 Kenichi Handa <handa@m17n.org>
12103
12104 * coding.c (detect_coding_system): Fix for handling off
12105 inhibit_iso_escape_detection. Fix for the case that no coding
12106 system is defined for a specific coding category.
12107
121082008-02-01 Kenichi Handa <handa@m17n.org>
12109
12110 * font.c (font_matching_entity): Delete unused local var.
12111
12112 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
12113 opening a font.
12114
12115 * fileio.c (Finsert_file_contents): On recovering a file, assume
12116 Unix-like eol.
12117 (choose_write_coding_system): On auto-saving a file, force
12118 Unix-like eol.
12119
12120 * coding.c (setup_coding_system): Fix setting of
12121 coding->common_flags based on eol_type.
12122 (coding_inherit_eol_type): If PARENT is not nil, be sure to
12123 inherit from it.
12124
121252008-02-01 Kenichi Handa <handa@m17n.org>
12126
12127 * alloc.c (NSTATICS): Increas to 0x600.
12128
121292008-02-01 Kenichi Handa <handa@m17n.org>
12130
12131 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
12132 (ftfont_list): Don't check :name property.
12133 (ftfont_match): New function.
12134 (ftfont_pattern_entity): If the pattern doesn't contain
12135 FC_SPACING, don't assume FC_MONO.
12136
12137 * font.h (struct font_driver): New member `match'.
12138 (font_update_drivers): Adjust prototype.
12139
12140 * font.c (font_parse_fcname, font_parse_name): Don't change :name
12141 property of FONT.
12142 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
12143 them unconditionally.
12144 (font_matching_entity): New function.
12145 (font_open_by_name): Try font_matching_entity if exact match is
12146 not found.
12147 (font_update_drivers): Delete the arg FONT. Return a list of
12148 actually used backends. Don't free faces, font caches here.
12149 Don't store data in frame parameters. Don't call x_set_font.
12150 (Ffont_spec): Store :name property as is.
12151 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
12152 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
12153 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
12154 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
12155 Call font->driver->otf_gsub instead of font_otf_gsub.
12156
12157 * frame.c (x_set_font_backend): Do more works that were done in
12158 font_update_drivers before.
12159
12160 * xfont.c (xfont_match): New function.
12161 (xfont_driver): Set xfont_driver.match to xfont_match.
12162 (xfont_draw): Set font in GC if necessary.
12163
12164 * ftxfont.c (ftxfont_match): New function.
12165 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
12166
12167 * xftfont.c (xftfont_match): New function.
12168 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
12169
121702008-02-01 Kenichi Handa <handa@m17n.org>
12171
12172 * font.h (struct font): New member scalable.
12173 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
12174 (font_otf_gsub): Adjust prototype.
12175
12176 * font.c (font_otf_capability): Fix handling of the default langsys.
12177 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
12178 Check the contents of SPEC.
12179 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
12180 (check_gstring): New function.
12181 (REPLACEMENT_CHARACTER): New macro.
12182 (font_otf_gsub): New arg alternate_subst. Be sure to set all
12183 glyph codes of GSTRING.
12184 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
12185 (font_prepare_composition): Set cmp->glyph_len.
12186 (font_open_entity): Set font->scalable.
12187 (Ffont_get): Handle :otf property.
12188 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
12189 functions.
12190 (Fquery_font): Use font->font.full_name.
12191 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
12192 Sfont_otf_alternates.
12193
12194 * ftfont.c (ftfont_open): Set font->font.full_name and
12195 font->font.name properly. Fix calculation of font->font.height
12196 and font->min_width.
12197
12198 * ftxfont.c (ftxfont_create_gcs): New function.
12199 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
12200 (ftxfont_draw_backgrond): Fix filling region.
12201 (ftxfont_default_fid): New function.
12202 (ftxfont_open): Set xfont->fid to the return value of
12203 ftxfont_default_fid.
12204 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
12205 (ftxfont_done_face): Free only GCs that are created by
12206 ftxfont_create_gcs.
12207 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
12208
12209 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
12210 Clip to src->width, etc (not src->clip_XXX).
12211
12212 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
12213 FontBackend frame parameter.
12214
122152008-02-01 Kenichi Handa <handa@m17n.org>
12216
12217 * font.h (struct font_driver_list): New member `on'.
12218 (Fclear_font_cache): EXFUN it.
12219 (font_update_drivers): Extern it.
12220
12221 * font.c (font_unparse_fcname): Fix typo (swidth->width).
12222 (font_list_entities): Check driver_list->on.
12223 (register_font_driver): Initalize `on' member to 0.
12224 (font_update_drivers): New function.
12225 (Fclear_font_cache): Check driver_list->on.
12226
12227 * frame.h (Qfont_backend): Extern it.
12228 (x_set_font_backend): Extern it.
12229
12230 * frame.c (Qfont_backend): New variable.
12231 (frame_parms): New element for font-backend.
12232 (x_set_font_backend): New function.
12233
12234 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
12235 FontBackend frame parameter.
12236 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
12237 x_set_font_backend.
12238
12239 * xfont.c (xfont_list): Don't try listing by :name property if the
12240 name is not for XLFD.
12241
122422008-02-01 Kenichi Handa <handa@m17n.org>
12243
12244 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
12245 (LGLYPH_SET_TO): New macros.
12246 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
12247 element of G is vector or not.
12248 (font_at): Extern it.
12249
12250 * font.c: Include window.h.
12251 (font_lispy_object): New function.
12252 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
12253 end of valid glyph.
12254 (font_close_object): Fix getting (struct font *).
12255 (font_at): New function.
12256 (Ffont_get): If FONT is a font-object, get entity from it.
12257 (Ffont_make_gstring): Initialize elements of glyphs with nil.
12258 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
12259 range check.
12260 (Ffont_at): New function.
12261 (syms_of_font): Defsubr Sfont_at.
12262
12263 * xdisp.c (it_props): Move the entry for Qauto_composed to just
12264 before the entry for Qcomposition.
12265 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
12266 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
12267 the font in gstring.
12268 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
12269 LGLYPH_FORM (g) to detect the end of valid glyph.
12270 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
12271 we are composing with gstring.
12272
12273 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
12274 Check if adjustment is vector or not.
12275
12276 * Makefile.in (font.o): Make it depends on window.h.
12277
122782008-02-01 Kenichi Handa <handa@m17n.org>
12279
12280 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
12281 adjustment is vector or not.
12282
122832008-02-01 Miles Bader <miles@gnu.org>
12284
12285 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
12286
122872008-02-01 Kenichi Handa <handa@m17n.org>
12288
12289 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
12290 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
12291 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
12292
12293 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
12294 (DEVICE_DELTA): Fix typo.
12295 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
12296 LGLYPH format.
12297
12298 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
12299 the change of LGLYPH format.
12300
123012008-02-01 Kenichi Handa <handa@m17n.org>
12302
12303 * ftfont.c (ftfont_list): Fix typo.
12304 (ftfont_build_basic_charsets): Don't include letters with diacritics.
12305
123062008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12307
12308 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
12309
12310 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
12311 xftface_info is non-NULL.
12312
123132008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12314
12315 * ftfont.c (ftfont_list): Move misplaced #endif.
12316
123172008-02-01 Kenichi Handa <handa@m17n.org>
12318
12319 * ftfont.c (ftfont_list): Pay attention to the case that
12320 FC_CAPABILITY is not defined.
12321
123222008-02-01 Kenichi Handa <handa@m17n.org>
12323
12324 * xftfont.c (xftfont_open): Set charset related members to -1.
12325
12326 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
12327 QCname.
12328 (ftfont_open): Set charset related members to -1.
12329
12330 * fontset.c (Votf_script_alist): New variable.
12331 (syms_of_fontset): Initialize it.
12332 (fontset_font): Delete unused variable.
12333
12334 * fontset.h (Votf_script_alist): Extern it.
12335
12336 * font.c (font_find_for_lface): Optimize code.
12337
12338 * font.h (font_close_object, font_merge_old_spec): Extern them.
12339
123402008-02-01 Kenichi Handa <handa@m17n.org>
12341
12342 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
12343 (syms_of_font): Initialize them.
12344 (font_pixel_size): Allow float value in dpi.
12345 (font_prop_validate_type): Delete.
12346 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
12347 Change caller.
12348 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
12349 (font_prop_validate_extra): Delete.
12350 (font_prop_validate_spacing): New function.
12351 (font_property_table): Add elements for all known properties.
12352 (get_font_prop_index): Rename from check_font_prop_name. New
12353 argument FROM. Change caller.
12354 (font_prop_validate): Validate all known properties.
12355 (font_put_extra): Delete argument force. Change caller.
12356 (font_expand_wildcards): Make it static. Fix the way of shrinking
12357 the possible range.
12358 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
12359 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
12360 Change caller.
12361 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
12362 (font_parse_fcname): Delete argument merge. Fix parsing of point
12363 size. Don't validate properties values here. Change caller.
12364 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
12365 (font_open_by_name): Delete unused variable.
12366 (Ffont_spec): Likewise. Validate property values.
12367 (Ffont_match_p): New function.
12368
12369 * font.h (QCscalable): Extern it.
12370 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
12371
12372 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
12373
12374 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
12375 (xfont_list_pattern): New function.
12376 (xfont_list): Use xfont_list_pattern.
12377
123782008-02-01 Kenichi Handa <handa@m17n.org>
12379
12380 * font.h (Flist_fonts): EXFUN it.
12381
123822008-02-01 Jason Rumney <jasonr@gnu.org>
12383
12384 * w32term.c (w32_initialize): Add back smoothing_type and
12385 smoothing_enabled definitions.
12386
123872008-02-01 Kenichi Handa <handa@m17n.org>
12388
12389 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
12390 s->face->font on determining underline position.
12391
123922008-02-01 Kenichi Handa <handa@m17n.org>
12393
12394 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
12395 (font_has_char): Accept font-object too.
12396 (font_find_for_lface): Try at first with a size specified in face.
12397
123982008-02-01 Kenichi Handa <handa@m17n.org>
12399
12400 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
12401 font_open_by_name.
12402
124032008-02-01 Kenichi Handa <handa@m17n.org>
12404
12405 * font.h (QCspacing, QCdpi): Extern them.
12406 (enum font_spacing): New enum.
12407 (FONT_PIXEL_SIZE_QUANTUM): New macro.
12408
12409 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
12410 (QCspacing, QCdpi): New variables.
12411 (syms_of_font): Initialize them.
12412 (font_pixel_size): New function.
12413 (font_put_extra): New function.
12414 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
12415 in FONT_EXTRA.
12416 (font_parse_fcname): Handle enumerated values (e.g. bold).
12417 Fix handling font size. Add QCname property that contains only
12418 unknown properties.
12419 (font_score): Change argument. Change caller. Pay attention to
12420 FONT_PIXEL_SIZE_QUANTUM.
12421 (font_sort_entites, font_list_entities, font_find_for_lface)
12422 (font_open_for_lface, font_open_by_name): Fix handling of font size.
12423 (Ffont_spec): Add QCname property that contains only unknown properties.
12424
12425 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
12426 include weight in listing pattern, instead check weight of each
12427 listed font. Don't include scalable in pattern. Pay attention to
12428 FONT_PIXEL_SIZE_QUANTUM.
12429
124302008-02-01 Kenichi Handa <handa@m17n.org>
12431
12432 * font.c (font_parse_fcname): Fix parsing of point-size.
12433 (font_unparse_fcname): Produce symbolic names for style properties.
12434 (font_list_entities): Handle float size correctly.
12435 (font_open_by_name): Prefer `normal' property values if the name
12436 doesn't specify them.
12437
12438 * fontset.c (Finternal_char_font): Use font_get_name, not
12439 Ffont_xlfd_name.
12440
12441 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
12442 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
12443 pattern. Don't force scalable.
12444
12445 * xftfont.c (xftfont_open): For generating a name, start from
12446 96-byte buffer.
12447
124482008-02-01 Jan Djärv <jan.h.d@swipnet.se>
12449
12450 * frame.h (x_new_fontset2): Fix prototype.
12451
124522008-02-01 Kenichi Handa <handa@m17n.org>
12453
12454 * font.h (struct font_driver): Delete member parse_name.
12455 (font_match_p, font_get_spec, font_parse_fcname)
12456 (font_unparse_fcname): Extern them.
12457 (font_get_name): Adjust prototype.
12458
12459 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
12460 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
12461 (font_expand_wildcards): Fix handling ENCODING field. Avoid
12462 unnecessary checks for weight, slant, and swidth.
12463 (font_parse_fcname): New function.
12464 (font_unparse_fcname): New function.
12465 (font_parse_name): New function.
12466 (font_match_p): New function.
12467 (font_get_name): Change return value to Lisp string.
12468 (font_get_spec): New function.
12469 (Qunspecified, Qignore_defface): Don't extern them.
12470 (font_find_for_lface): Assume that LFACE is fully specified.
12471 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
12472 object, use it for FACE.
12473 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
12474 driver->parse_name.
12475 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
12476
12477 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
12478 prototype.
12479
12480 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
12481 argument F. Don't call Fnew_fontset. Instead, directly call
12482 make_fontset.
12483
12484 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
12485
12486 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
12487 of x_new_fontset2.
12488
12489 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
12490 (Qsans__serif): New variables.
12491 (ftfont_generic_family_list): New variable.
12492 (syms_of_ftfont): Initialize the above variables.
12493 (ftfont_pattern_entity): Delete argument NAME.
12494 (ftfont_list_generic_family): New function.
12495 (ftfont_parse_name): Delete this function.
12496 (ftfont_list): Try generic family only when FcFontList found no font.
12497 (ftfont_list_family): Fix args to FcObjectSetBuild.
12498
12499 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
12500 object in attrs[LFACE_FONT_INDEX].
12501 (set_lface_from_font_name): Cancel all changes for font-backend.
12502 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
12503 function.
12504 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
12505 font object in QCfont attribute.
12506 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
12507 (realize_default_face) [USE_FONT_BACKEND]: Call
12508 set_lface_from_font_and_fontset.
12509
12510 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
12511 "fixed", and signal error here if no suitable font was found.
12512
12513 * xfont.c (xfont_parse_name): Delete this function.
12514
12515 * xftfont.c (xftfont_open): Change coding style of error
12516 handling. Generate fontconfig's fontname pattern.
12517
12518 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
12519 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
12520
12521 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
12522 Both args FONTSET and FONT_OBJECT must be existing ones.
12523
125242008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12525
12526 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
12527
125282008-02-01 Kenichi Handa <handa@m17n.org>
12529
12530 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
12531
12532 * font.h (struct font): Fix typo.
12533
12534 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
12535 XLFD_XXX_INDEX.
12536 (enum xlfd_field_mask): New enum.
12537 (intern_font_field): Changed argument. Change caller. If digits
12538 are followed by non-digits, return a symbol.
12539 (font_expand_wildcards): New function.
12540 (font_parse_xlfd): Fix wildcard handling.
12541 (Ffont_spec): If :name is specified, reflect the info in the other
12542 properties.
12543
12544 * ftfont.c (ftfont_pattern_entity): Fix typo.
12545 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
12546 locale.
12547
125482008-02-01 Kenichi Handa <handa@m17n.org>
12549
12550 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
12551
12552 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
12553 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
12554 registry doesn't specify encoding part.
12555 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
12556 (font_open_by_name): At first try parsing the name.
12557 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
12558 as Lisp symbols.
12559
12560 * fontset.c (reorder_font_vector): Pay attention to the case that
12561 the 3rd element of font_def is nil.
12562 (fontset_font): For the default fontset, append one more fontset
12563 elements for a script-based font specification. Don't add script
12564 attribute on finding a font.
12565 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
12566 font name.
12567 (fontset_ascii_font): If a font can't be opened, return nil.
12568
12569 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
12570 (ftfont_pattern_entity): New function.
12571 (ftfont_get_cache): Assume that freetype_font_cache is already
12572 initialized.
12573 (ftfont_list): Handle the case that a file is specified in font
12574 name. Use ftfont_pattern_entity to generate entities.
12575 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
12576 (syms_of_ftfont): Initialize freetype_font_cache.
12577
12578 * xftfont.c (xftfont_open): Make the font name fontconfig's
12579 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
12580 (xftfont_close): Free font->font.name if not NULL.
12581
12582 * xfont.c (xfont_list): If script is specified for a font, return
12583 null_vector.
12584 (xfont_list_family): Declare argument type.
12585
12586 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
12587 name, set LFACE_FONT (lface) to nil.
12588
12589 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
12590 return Qnil.
12591
125922008-02-01 Kenichi Handa <handa@m17n.org>
12593
12594 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
12595 (standard_args): Add "-enable-font-backend".
12596
125972008-02-01 Kenichi Handa <handa@m17n.org>
12598
12599 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
12600 (struct xftdraw_list, xftdraw_list): Delete them.
12601 (register_xftdraw, check_xftdraw): Delete them.
12602 (xftfont_prepare_face): Don't call register_xftdraw.
12603 (xftfont_done_face): Don't call check_xftdraw.
12604 (xftfont_draw): Get background color only when with_background is
12605 nonzero.
12606
12607 * xfont.c (xfont_encode_char): Fix calculation of char2b.
12608
126092008-02-01 Kenichi Handa <handa@m17n.org>
12610
12611 These changes are for the new font handling codes.
12612
12613 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
12614 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
12615 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
12616 (FONTSRC, FONTOBJ): New variables.
12617 (obj): Add $(FONTOBJ).
12618 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
12619 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
12620 @LIBOTF_LIBS@.
12621 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
12622 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
12623
12624 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
12625
12626 * character.h (Vscript_representative_chars): Extern it.
12627
12628 * character.c (Vscript_representative_chars): New variable.
12629 (syms_of_character): Declare it as a Lisp variable.
12630
12631 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
12632 enable_font_backend is nonzero, accept the composition method
12633 COMPOSITION_WITH_GLYPH_STRING.
12634
12635 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
12636 enumeration COMPOSITION_WITH_GLYPH_STRING.
12637
12638 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
12639 members clip_x, clip_y, clip_width, and clip_height.
12640 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
12641
12642 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
12643 --enable-font-backend. Call syms_of_font.
12644
12645 * fns.c (assoc_no_quit): New function.
12646
12647 * fontset.h (FONT_INFO_FROM_FACE): New macro.
12648 (face_for_font, new_fontset_from_font)
12649 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
12650
12651 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
12652 (fontset_font, fontset_ascii, face_for_char)
12653 (make_fontset_for_ascii_face, Ffont_info)
12654 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
12655 is nonzero, use font-backend mechanism.
12656 (find_font_encoding): Make it non-static.
12657 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
12658 New functions.
12659
12660 * frame.h (struct frame): New members resx and resy.
12661 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
12662 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
12663
12664 * frame.c [USE_FONT_BACKEND]: Include "font.h".
12665 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
12666
12667 * lisp.h (assoc_no_quit): Extern it.
12668
12669 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
12670 Through out the file, use FONT_INFO_FROM_FACE instead of
12671 FONT_INFO_FROM_ID, use get_per_char_metric instead of
12672 rif->per_char_metric.
12673 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
12674 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
12675 (get_glyph_face_and_encoding, fill_composite_glyph_string)
12676 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
12677 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
12678 nonzero, use font-backend mechanism.
12679 (get_per_char_metric): New function.
12680
12681 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
12682 (set_lface_from_font_name)
12683 (set_font_frame_param, free_realized_face)
12684 (prepare_face_for_display, clear_face_gcs)
12685 (Finternal_set_font_selection_order, realize_x_face)
12686 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
12687 font-backend mechanism.
12688 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
12689 (load_face_font) [USE_FONT_BACKEND]: Abort.
12690 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
12691 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
12692
12693 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
12694 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
12695 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
12696 nonzero, register all available font drivers. Call
12697 x_default_font_parameter for deciding a font.
12698 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
12699
12700 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
12701 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
12702 (x_set_glyph_string_clipping_exactly)
12703 (x_compute_glyph_string_overhangs)
12704 (x_draw_glyph_string_foreground)
12705 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
12706 (x_free_frame_resources) [USE_FONT_BACKEND]: If
12707 enable_font_backend is nonzero, use font-backend mechanism.
12708 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
12709
127102008-02-01 Kenichi Handa <handa@m17n.org>
12711
12712 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
12713 system_eol_type.
12714 (syms_of_coding): Initialize system_eol_type.
12715
12716 * process.c (Fset_process_coding_system): Inherit system's eol
12717 format if necessary.
12718
127192008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12720
12721 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
12722
127232008-02-01 Kenichi Handa <handa@m17n.org>
12724
12725 * coding.c (decode_eol): Pay attention to buffer relocation in
12726 del_range_2.
12727 (decode_coding): Call decode_eol before restoring undo_list.
12728
127292008-02-01 Kenichi Handa <handa@m17n.org>
12730
12731 * charset.c (Fdefine_charset_internal): Fix setting of
12732 emacs_mule_bytes.
12733
127342008-02-01 Kenichi Handa <handa@m17n.org>
12735
12736 * keyboard.c (read_char): Check if C is a character or not before
12737 looking up Vkeyboard_translate_table.
12738
127392008-02-01 Kenichi Handa <handa@m17n.org>
12740
12741 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
12742 condition to terminate the loop.
12743
127442008-02-01 Kenichi Handa <handa@m17n.org>
12745
12746 * coding.c (produce_composition): Compare charbuf[i] instead of
12747 args[i] against 0.
12748 (Fterminal_coding_system): Use EQ to compare Lisp objects.
12749
127502008-02-01 Kenichi Handa <handa@m17n.org>
12751
12752 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
12753 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
12754 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
12755 detect_coding.
12756 (emacs_mule_char): Handle old style (Emacs 20) component character
12757 of a composition.
12758 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
12759 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
12760 composition rule.
12761 (decode_coding_emacs_mule): Handle invalid bytes correctly.
12762
127632008-02-01 Kenichi Handa <handa@m17n.org>
12764
12765 * coding.c (encode_coding_ccl): Allocate destination dynamically
12766 when necessary.
12767
127682008-02-01 Kenichi Handa <handa@m17n.org>
12769
12770 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
12771 the loop. When quitted, show a proper error message.
12772
127732008-02-01 Kenichi Handa <handa@m17n.org>
12774
12775 * xterm.c (x_set_glyph_string_clipping_exactly): Set
12776 src->clip_head and src->clip_tail temporarily instead of src->hl.
12777
12778 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
12779 character sequence.
12780 (Fccl_execute_on_string): Use ASET, not XSET.
12781
127822008-02-01 Kenichi Handa <handa@m17n.org>
12783
12784 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
12785
127862008-02-01 Kenichi Handa <handa@m17n.org>
12787
12788 * coding.c (decode_coding): Fix the condition of terminating the
12789 decoding loop.
12790
127912008-02-01 Kenichi Handa <handa@m17n.org>
12792
12793 * data.c (Faset): On setting a character bigger than 255 in a
12794 unibyte string, signal an error instead of make the string multibyte.
12795
127962008-02-01 Kenichi Handa <handa@m17n.org>
12797
12798 * charset.c (map_charset_chars): Fix for ascii-compatible charset
12799 made by a mapping table.
12800
128012008-02-01 Kenichi Handa <handa@m17n.org>
12802
12803 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
12804 not.
12805 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
12806 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
12807
12808 * xterm.c (x_draw_composite_glyph_string_foreground): Check
12809 s->face is NULL or not.
12810
128112008-02-01 Kenichi Handa <handa@m17n.org>
12812
12813 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
12814 (x_draw_glyph_string): Fix drawing of right_overhang and
12815 left_overhang around/on cursor.
12816
12817 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
12818
128192008-02-01 Kenichi Handa <handa@m17n.org>
12820
12821 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
12822
128232008-02-01 Kenichi Handa <handa@m17n.org>
12824
12825 * coding.c (Fdefine_coding_system_internal)
12826 (Fdefine_coding_system_alias): Avoid a duplicated element in
12827 Vcoding_system_alist.
12828
128292008-02-01 Kenichi Handa <handa@m17n.org>
12830
12831 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
12832
12833 * coding.c (Qcoding_system_define_form): New variable.
12834 (syms_of_coding): Intern and staticpro it.
12835 (Fcoding_system_p): Check Qcoding_system_define_form.
12836 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
12837
12838 * coding.h (CODING_SYSTEM_P): If ID is not available, call
12839 Fcoding_system_p.
12840 (CHECK_CODING_SYSTEM): If ID is not available, call
12841 Fcheck_coding_system.
12842 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
12843 Try also Fcheck_coding_system.
12844
128452008-02-01 Kenichi Handa <handa@m17n.org>
12846
12847 * coding.c (code_conversion_restore): GCPRO arg.
12848
128492008-02-01 Kenichi Handa <handa@m17n.org>
12850
12851 * character.c (lisp_string_width): Check multibyteness of STRING.
12852
128532008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12854
12855 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
12856 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
12857 (decode_mac_font_name): Use decode_coding_c_string instead of
12858 decode_coding.
12859 (x_load_font): Initialize fontp->fontset to -1. Set
12860 fontp->encoding_type.
12861
128622008-02-01 Kenichi Handa <handa@m17n.org>
12863
12864 * search.c (search_buffer): Give up BM search on case-fold-search
12865 if one of a target character has a case-equivalence of different
12866 byte length even if that target charcter is an ASCII.
12867 (simple_search): Fix calculation of byte length of matched text.
12868 (boyer_moore): Fix handling of case-equivalent multibyte characters.
12869
128702008-02-01 Kenichi Handa <handa@m17n.org>
12871
12872 * coding.c (decode_coding): Fix handling of invalid bytes.
12873
128742008-02-01 Kenichi Handa <handa@m17n.org>
12875
12876 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
12877 Unicode characters.
12878
128792008-02-01 Kenichi Handa <handa@m17n.org>
12880
12881 * coding.c (encode_coding_object): If a pre-write-conversion
12882 function makes a new buffer, kill it.
12883
128842008-02-01 Kenichi Handa <handa@m17n.org>
12885
12886 * coding.c (QCascii_compatible_p): New variable.
12887 (syms_of_coding): Initialize it.
12888 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
12889 calling string_char.
12890 (record_conversion_result): Add `default:' case.
12891 (coding_charset_list): Delete unused variable `coding_type'.
12892 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
12893 property in the plist of the coding system.
12894 (Fcoding_system_put): Check QCascii_compatible_p.
12895
128962008-02-01 Miles Bader <miles@gnu.org>
12897
12898 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
12899 removed calculation of frame `f', as it's now used.
12900
129012008-02-01 Kenichi Handa <handa@m17n.org>
12902
12903 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
12904 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
12905 (UNIDATA): New variable.
12906 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
12907 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
12908 $(RUN_TEMACS) unconditionally.
12909
129102008-02-01 Kenichi Handa <handa@m17n.org>
12911
12912 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
12913 (admindir): New variable.
12914 ($(lispsource)international/charprop.el): New target.
12915
129162008-02-01 Miles Bader <miles@gnu.org>
12917
12918 * character.c (chars-in-region): Remove obsolete function.
12919 (syms_of_character): Remove its initialization.
12920
129212008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
12922
12923 * w32select.c (validate_coding_system)
12924 (setup_windows_coding_system): New functions.
12925 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
12926 setup_windows_coding_system.
12927 (setup_config, Fw32_get_clipboard_data): Use
12928 validate_coding_system.
12929 (Fx_selection_exists): Move call to setup_config to a place
12930 where signals are allowed.
12931
12932 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
12933 (Fcheck_coding_system): Add declarations.
12934
129352008-02-01 Kenichi Handa <handa@m17n.org>
12936
12937 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
12938
129392008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12940
12941 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
12942 string as the second argument for x_new_fontset.
12943
129442008-02-01 Kenichi Handa <handa@m17n.org>
12945
12946 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
12947 (encode_coding_object): Use safe_call instead of call2.
12948
129492008-02-01 Kenichi Handa <handa@m17n.org>
12950
12951 * fontset.c (Fset_fontset_font): Check family element of a given vector.
12952
12953 * Makefile.in (lisp): Include charprop.el.
12954
129552008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12956
12957 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
12958 Not sure if it's unnecessary.
12959
129602008-02-01 Steven Tamm <steventamm@mac.com>
12961
12962 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
12963 some possibly unnecessary fontset checking code that crashed
12964 when creating a new frame.
12965
129662008-02-01 Kenichi Handa <handa@m17n.org>
12967
12968 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
12969 lookup_face.
12970
12971 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
12972
12973 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
12974
129752008-02-01 Kenichi Handa <handa@m17n.org>
12976
12977 * coding.c: Cancel the change done in HEAD on 2008-02-01.
12978 (coding_charset_list): New function.
12979
12980 * coding.h (coding_charset_list): Extern it.
12981
129822008-02-01 Kenichi Handa <handa@m17n.org>
12983
12984 * fontset.c (Fset_fontset_font): Call find_font_encoding with
12985 concatenation of family and registry.
12986
129872008-02-01 Kenichi Handa <handa@m17n.org>
12988
12989 * character.h (BYTE8_STRING): Fix typo.
12990
12991 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
12992 string to multibyte (sync to HEAD).
12993
12994 * casefiddle.c (casify_region): Handle changes in byte-length
12995 using replace_range_2 (sync to HEAD).
12996
129972008-02-01 Andreas Schwab <schwab@suse.de>
12998
12999 * chartab.c (map_char_table): GCPRO table and arg.
13000
130012008-02-01 Kenichi Handa <handa@m17n.org>
13002
13003 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
13004 already at limit.
13005
130062008-02-01 Kenichi Handa <handa@m17n.org>
13007
13008 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
13009 instead of fast_c_string_match_ignore_case.
13010 (find_font_encoding): Change argument to Lisp_Object. Use
13011 fast_string_match_ignore_case instead of
13012 fast_c_string_match_ignore_case. Change caller.
13013
130142008-02-01 Kenichi Handa <handa@m17n.org>
13015
13016 * xdisp.c (get_next_display_element): In unibyte case, decide to
13017 display in octal form by checking a character by
13018 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
13019
13020 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
13021
13022 * character.c (unibyte_has_multibyte_table): New variable.
13023
13024 * character.h (unibyte_has_multibyte_table): Extern it.
13025 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
13026
130272008-02-01 Kenichi Handa <handa@m17n.org>
13028
13029 * coding.c (encode_coding_iso_2022): Fix handling of charset
13030 annotation.
13031
130322008-02-01 Kenichi Handa <handa@m17n.org>
13033
13034 * coding.c (setup_coding_system): If coding_system is nil, use
13035 Qundecided.
13036 (Fterminal_coding_system): Return nil if terminal coding system is
13037 `undecided'.
13038 (syms_of_coding): Define coding-system `undecided' here. Setup
13039 terminal_coding as `undecided'.
13040
130412008-02-01 Kenichi Handa <handa@m17n.org>
13042
13043 * xdisp.c (message_dolog, set_message_1): Call
13044 unibyte_char_to_multibyte with arg type int.
13045
13046 * lread.c (read1): Fix reading of a char-table.
13047
13048 * print.c (print_object): Include sub char-table in circularities
13049 detection.
13050
130512008-02-01 Kenichi Handa <handa@m17n.org>
13052
13053 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
13054 Append the found sequences in car of ARGS instead of prepending.
13055
130562008-02-01 Kenichi Handa <handa@m17n.org>
13057
13058 * fileio.c (report_file_error): Make a unibyte string from
13059 strerror (errorno).
13060 (Fsubstitute_in_file_name): Fix the arg to
13061 unibyte_char_to_multibyte. It is evaluated twice.
13062
130632008-02-01 Kenichi Handa <handa@m17n.org>
13064
13065 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
13066
130672008-02-01 Kenichi Handa <handa@m17n.org>
13068
13069 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
13070 BOM is not found.
13071 (detect_coding, detect_coding_system): Optimization for ISO-2022
13072 when no 8-bit data is found.
13073
130742008-02-01 Jason Rumney <jasonr@gnu.org>
13075
13076 * w32fns.c (x_to_w32_font): Update to use new coding struct.
13077
130782008-02-01 Kenichi Handa <handa@m17n.org>
13079
13080 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
13081 CHARS.
13082
130832008-02-01 Steven Tamm <steventamm@mac.com>
13084
13085 * macterm.c (mac_encode_char): Add charset argument and update
13086 to use encoding_type.
13087 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
13088 switch to pure fontset.
13089 (decode_mac_font_name): Temporarily remove decoding.
13090 (x_font_name_to_mac_font_name): Temporarily remove encoding.
13091 (x_load_font): Temporarily remove encoding.
13092
130932008-02-01 Kenichi Handa <handa@m17n.org>
13094
13095 * xfaces.c (Fface_font): If frame is not on a window system,
13096 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
13097 refer to face->font.
13098 (split_font_name_into_vector, build_font_name_from_vector)
13099 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
13100 when HAVE_WINDOW_SYSTEM is defined.
13101
131022008-02-01 Kenichi Handa <handa@m17n.org>
13103
13104 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
13105 (x_produce_glyphs): Fix setting of members of cmp in case
13106 cmp->glyph_len is zero.
13107
13108 * fontset.c (Fset_fontset_font): Fix docstring.
13109 (Ffontset_info): Make it backward compatible. New arg ALL.
13110
131112008-02-01 Kim F. Storm <storm@cua.dk>
13112
13113 * process.c (read_process_output): Grow decoding_buf when needed;
13114 this could cause a crash in allocate_string and compact_small_strings.
13115
131162008-02-01 Kenichi Handa <handa@m17n.org>
13117
13118 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
13119
131202008-02-01 Kenichi Handa <handa@m17n.org>
13121
13122 * coding.c (setup_coding_system): Set coding->common_flags
13123 correctly for raw-text.
13124 (consume_chars): On encoding unibyte text by raw-text, don't check
13125 multibyte form.
13126 (encode_coding): On encoding by raw-text, never use translation tables.
13127
13128 * fileio.c (e_write): Short cut for the case of no encoding.
13129
131302008-02-01 Kenichi Handa <handa@m17n.org>
13131
13132 * coding.c (detect_coding, detect_coding_system): Delete unused
13133 variables.
13134
131352008-02-01 Kenichi Handa <handa@m17n.org>
13136
13137 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
13138 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
13139
131402008-02-01 Kenichi Handa <handa@m17n.org>
13141
13142 * coding.c (Ffind_coding_systems_region_internal): Include
13143 raw-text and no-conversion in the result.
13144
131452008-02-01 Kenichi Handa <handa@m17n.org>
13146
13147 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
13148 (load_font_get_repertory): Delete unnecessary check of ENCODING of
13149 FONT_DEF.
13150 (font_def_arg, add_arg, from_arg, to_arg): New args.
13151 (set_fontset_font): Change argument.
13152 (Fset_fontset_font): Fix for the case that TARGET is a script
13153 name and charset name.
13154 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
13155
131562008-02-01 Kenichi Handa <handa@m17n.org>
13157
13158 * fontset.c (fontset_font): Rename from fontset_face. Change return
13159 value.
13160 (face_suitable_for_char_p, face_for_char): Adjust for the change
13161 of fontset_font.
13162 (make_fontset_for_ascii_face): Fix setting of the fontset element
13163 for ASCII.
13164 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
13165 to get a font name.
13166 (Ffontset_info): Adjust for the change of fontset_font.
13167
13168 * coding.c (emacs_mule_char): Check invalid code more rigidly.
13169
13170 * character.h (LEADING_CODE_LATIN_1_MIN)
13171 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
13172
131732008-02-01 Kenichi Handa <handa@m17n.org>
13174
13175 * editfns.c (check_translation): New function.
13176 (Ftranslate_region_internal): Handle M:N mapping.
13177
131782008-02-01 Kenichi Handa <handa@m17n.org>
13179
13180 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
13181
131822008-02-01 Kenichi Handa <handa@m17n.org>
13183
13184 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
13185 goto invalid_code.
13186 (decode_coding_iso_2022): Fix handling of invalid designation.
13187
13188 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
13189 after calling code_conversion_save.
13190
131912008-02-01 Kenichi Handa <handa@m17n.org>
13192
13193 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
13194
13195 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
13196
13197 * fontset.c: Include "intervals.h".
13198 (fontset_face): Fix comparing of Lisp_Objects.
13199 (free_face_fontset, new_fontset_from_font_name): Fix
13200 Lisp_Object/int mixup.
13201
13202 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
13203
13204 * coding.c: Add many prototypes for static functions.
13205 (get_translation_table): Allow max_lookup to be NULL.
13206 (decode_coding, Ffind_coding_systems_region_internal)
13207 (Funencodable_char_position, Fcheck_coding_systems_region): Call
13208 get_translation_table with max_lookup NULL.
13209
132102008-02-01 Kenichi Handa <handa@m17n.org>
13211
13212 * coding.c (get_translation_table): Declare it as Lisp_Object.
13213 (LOOKUP_TRANSLATION_TABLE): New macro.
13214 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
13215 instead of CHAR_TABLE_REF.
13216
132172008-02-01 Kenichi Handa <handa@m17n.org>
13218
13219 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
13220 annotation data format.
13221 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
13222 Change arguments FROM and TO to single argument NCHARS. Change caller.
13223 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
13224 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13225 (decode_coding_ccl, decode_coding_charset): Pay attention to
13226 coding->charbuf_used.
13227 (get_translation): New function.
13228 (produce_chars): New arguments translation_table and last_block.
13229 Translate characters here. Return number of carryover chars.
13230 Change caller.
13231 (produce_composition): New argument pos. Change caller.
13232 Adjust for the change of annotation data format.
13233 (produce_charset, produce_annotation): Likewise.
13234 (decode_coding, encode_coding): Don't call translate_chars.
13235 (consume_chars): New arg translation_table. Change caller.
13236 (translate_chars): Delete.
13237 (syms_of_coding): Make translation-table's number of extra slots 2.
13238
132392008-02-01 Kenichi Handa <handa@m17n.org>
13240
13241 * search.c (simple_search): Fix setting this_pos_byte in backward
13242 search.
13243
13244 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
13245 byte sequence.
13246 (detect_coding_ccl): Fix setting of the variable valids.
13247
132482008-02-01 Kenichi Handa <handa@m17n.org>
13249
13250 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
13251
13252 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
13253
13254 * editfns.c (Ftranslate_region_internal): Rename from
13255 Ftranslate_region. Accept a char-table in TABLE.
13256 (syms_of_editfns): Defsubr Stranslate_region_internal.
13257
13258 * xfaces.c (set_lface_from_font_name): If a font is specified for
13259 a frame, generate a fontset from the font.
13260 (build_scalable_font_name): If the scalable font is requested for
13261 a specific size, don't change that size.
13262 (try_font_list): Try a scalable font also in the case that a
13263 pattern string is specified.
13264
132652008-02-01 Kenichi Handa <handa@m17n.org>
13266
13267 * xfaces.c (Fface_font): New optional arg CHARACTER.
13268
132692008-02-01 Kenichi Handa <handa@m17n.org>
13270
13271 * charset.h (CHARSET_OFFSET): New macro.
13272
132732008-02-01 Kenichi Handa <handa@m17n.org>
13274
13275 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
13276
13277 * fontset.c (fontset_face): Handle the case that repertory is a
13278 char-table.
13279 (find_font_encoding): Return nil for unknown encoding.
13280 (Fset_fontset_font): Ignore a font of unknown encoding.
13281
132822008-02-01 Kenichi Handa <handa@m17n.org>
13283
13284 * keymap.c (describe_vector): Handle default value of a char table.
13285
13286 * fontset.c (fontset_face): Handle fallback fonts correctly.
13287 (Ffontset_info): Return infomation about fallback fonts.
13288
132892008-02-01 Kenichi Handa <handa@m17n.org>
13290
13291 * fontset.c (FONTSET_DEFAULT): New macro.
13292 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
13293 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
13294 the case that it is nil.
13295 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
13296 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
13297
13298 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
13299 subset or superset.
13300
133012008-02-01 Kenichi Handa <handa@m17n.org>
13302
13303 * emacs.c (main): Call init_charset after syms_of_XXX.
13304
13305 * charset.c (Vcharset_map_directory): Delete.
13306 (Vcharset_map_path): New variable.
13307 (load_charset_map_from_file): Use Vcharset_map_path instead.
13308 (init_charset): Initialize Vcharset_map_path.
13309 (syms_of_charset): Delete declaration of "charset-map-directory",
13310 add declaration of "charset-map-path".
13311
133122008-02-01 Kenichi Handa <handa@m17n.org>
13313
13314 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
13315 ASCII only string.
13316
13317 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
13318
13319 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
13320 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
13321
133222008-02-01 Kenichi Handa <handa@m17n.org>
13323
13324 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
13325
13326 * coding.c (QCmnemonic, QCdefalut_char)
13327 (QCdecode_translation_table, QCencode_translation_table)
13328 (QCpost_read_conversion, QCpre_write_conversion): New variables.
13329 (get_translation_table): Return a list of translation tables if
13330 necessary.
13331 (decode_coding): Call get_translation_table with ENCODEP 0.
13332 (char_encodable_p): If translation_table is non-nil, always call
13333 translate_char.
13334 (Fdefine_coding_system_internal): Accept list of translation
13335 tables as :encode-translation-table and :decode-translation-table.
13336 (Fcoding_system_put): New function.
13337 (syms_of_coding): Declare new symbols. Defsubr
13338 Scoding_system_put.
13339 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
13340 typically JISX0212.
13341
13342 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
13343 when the charset is superset type.
13344
13345 * character.c (translate_char): Accept list of translation tables.
13346
133472008-02-01 Kenichi Handa <handa@m17n.org>
13348
13349 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
13350 (CODING_ATTR_TRANS_TBL): New macro.
13351
13352 * coding.c (get_translation_table): New function.
13353 (translate_chars): Fix the bug of skipping annotation data.
13354 (decode_coding, encode_coding): Utilize get_translation_table.
13355 (char_encodable_p, Funencodable_char_position): Translate char if
13356 necessary.
13357 (Ffind_coding_systems_region_internal)
13358 (Fcheck_coding_systems_region): Setup translation table for encode
13359 in a coding system attribute vector in advance.
13360 (Fdefine_coding_system_internal): Allow a symbol as translation
13361 table. For shift-jis type coding system, allow 4th charset.
13362
133632008-02-01 Kenichi Handa <handa@m17n.org>
13364
13365 * coding.c (decode_coding_sjis): Check the first byte rigidly.
13366
13367 * xdisp.c (get_next_display_element): Pass -1 as POS to
13368 FACE_FOR_CHAR if displaying a C-string.
13369
133702008-02-01 Kenichi Handa <handa@m17n.org>
13371
13372 * composite.c (get_composition_id): Handle xoff and yoff in a
13373 composition rule.
13374
13375 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
13376 (struct composition): New member lbearing and rbearing.
13377
13378 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
13379 (x_get_glyph_overhangs): Handle a composition glyph.
13380 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
13381
13382 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
13383 composition glyph.
13384
133852008-02-01 Kenichi Handa <handa@m17n.org>
13386
13387 * print.c: Include charset.h.
13388 (Vprint_charset_text_property): New variable.
13389 (Qdefault): Extern it.
13390 (PRINT_STRING_NON_CHARSET_FOUND)
13391 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
13392 (print_check_string_result): New variable.
13393 (print_check_string_charset_prop): New function.
13394 (print_prune_charset_plist): New variable.
13395 (print_prune_string_charset): New function.
13396 (print_object): Call print_prune_string_charset if
13397 Vprint_charset_text_property is not t.
13398 (print_interval): Print nothing if interval->plist is nil.
13399 (syms_of_print): Declare Vprint_charset_text_property as a lisp
13400 variable. Init and staticpro print_prune_charset_plist.
13401
134022008-02-01 Kenichi Handa <handa@m17n.org>
13403
13404 * fontset.c (new_fontset_from_font_name): Use the specified font
13405 for all characters in the new fontset.
13406
13407 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13408 OBJECT args.
13409
13410 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
13411 OBJECT args for composition too.
13412
13413 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
13414 OBJECT args.
13415
134162008-02-01 Kenichi Handa <handa@m17n.org>
13417
13418 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
13419
13420 * fontset.c (reorder_font_vector): Adjust for the change of
13421 FONT_DEF format.
13422 (fontset_face): New arg id. Change caller.
13423 (face_for_char): New args pos and object.
13424 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
13425 (fs_query_fontset): Check NAME by Fassoc too.
13426 (Fset_fontset_font): Allow non-XLFD font name.
13427 (Ffontset_info): Adjust for the change of FONT_DEF format.
13428
13429 * fontset.h (face_for_char): Adjust prototype.
13430
13431 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
13432 (append_space, extend_face_to_end_of_line)
13433 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
13434 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
13435
13436 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
13437 POS and OBJECT args.
13438
13439 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
13440 POS and OBJECT args.
13441
134422008-02-01 Jason Rumney <jasonr@gnu.org>
13443
13444 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
13445 of GlobalAlloc'ed memory.
13446
134472008-02-01 Kenichi Handa <handa@m17n.org>
13448
13449 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
13450
13451 * charset.h (charset_table_used): Delete extern.
13452
13453 * charset.c (charset_table_used): Make it static.
13454 (map_charset_chars): Fix args to c_function with.
13455
13456 * chartab.c (map_sub_char_table_for_charset): Fix args to
13457 c_function with.
13458
13459 * coding.h (enum coding_result_code): Delete
13460 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
13461
13462 * coding.c (Qinsufficient_source, Qinconsistent_eol)
13463 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
13464 (Vlast_code_conversion_error): New variables.
13465 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
13466 (ONE_MORE_BYTE): Record error if any instead of signaling an
13467 error. If non-ASCII multibyte char is found, return the negative
13468 value of the code. All callers changed to check it.
13469 (ONE_MORE_BYTE_NO_CHECK): Likewise.
13470 (record_conversion_result): New function. Change all codes setting
13471 coding->result to call this function.
13472 (detect_coding_utf_8, decode_coding_utf_8)
13473 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
13474 Don't use the local variable incomplete.
13475 (emacs_mule_char): Change the second arg to `const'.
13476 (decode_coding): Fix of flushing out unprocessed data.
13477 (make_conversion_work_buffer): Fix making of a work buffer.
13478 (decode_coding_object): Return coding->dst_object.
13479
13480 * fontset.c (set_fontset_font): Fix args.
13481
13482 * lisp.h (CHARACTERBITS): Define as 22.
13483
13484 * process.c (send_process): Be sure to set coding->src_multibyte.
13485
13486 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
13487
134882008-02-01 Kenichi Handa <handa@m17n.org>
13489
13490 * xdisp.c (handle_auto_composed_prop): Give limit to
13491 Fnext_single_char_property_change.
13492
134932008-02-01 Kenichi Handa <handa@m17n.org>
13494
13495 * composite.c (syms_of_composite): Don't make the composition hash
13496 table weak.
13497
13498 * fontset.c (Fset_fontset_font): Fix docstring.
13499
13500 * lisp.h (detect_coding_system): Adjust prototype.
13501
13502 * fileio.c (kill_workbuf_unwind): Delete this function.
13503 (Finsert_file_contents): Adjust the call of detect_coding_system.
13504 Get conversion_buffer by code_conversion_save. Use the macro
13505 CODING_MAY_REQUIRE_DECODING. After decoding, update
13506 coding_system.
13507
13508 * coding.h (make_conversion_work_buffer): Delete extern.
13509 (code_conversion_save): Extern it.
13510
13511 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
13512 (CODING_GET_INFO): Delete argument eol_type. Change callers.
13513 (decode_coding_utf_8): Don't do eol converion.
13514 (detect_coding_utf_16): Check coding->src_chars, not
13515 coding->src_bytes. Add heuristics for those that have no signature.
13516 (decode_coding_emacs_mule, decode_coding_iso_2022)
13517 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
13518 Don't do eol converion.
13519 (adjust_coding_eol_type): Return a new coding system.
13520 (detect_coding): Don't detect eol. Fix for utf-16 detection.
13521 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
13522 each change.
13523 (decode_coding): Pay attention to undo_list. Do eol conversion for
13524 all types of coding-systems (if necessary).
13525 (Vcode_conversion_work_buf_list): Delete it.
13526 (Vcode_conversion_reused_workbuf): Rename from
13527 Vcode_conversion_reused_work_buf.
13528 (Vcode_conversion_workbuf_name): New variable.
13529 (reused_workbuf_in_use): New variable.
13530 (make_conversion_work_buffer): Delete the arg DEPTH.
13531 (code_conversion_restore): Change argument to cons.
13532 (code_conversion_save): Delete the argument BUFFER. Change callers.
13533 (detect_coding_system): New argument src_chars. Change callers.
13534 Fix for utf-16 detection.
13535 (init_coding_once): Don't use ISO_carriage_return.
13536 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
13537 reused_workbuf_in_use.
13538
135392008-02-01 Kenichi Handa <handa@m17n.org>
13540
13541 * keymap.c (store_in_keymap): Pay attention to the case that idx
13542 is a cons specifying a character range.
13543
135442008-02-01 Kenichi Handa <handa@m17n.org>
13545
13546 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
13547 HANDLED_RECOMPUTE_PROPS.
13548
13549 * coding.c (Fdefine_coding_system_internal): Fix checking of
13550 ascii compatibility.
13551
135522008-02-01 Kenichi Handa <handa@m17n.org>
13553
13554 * charset.c (find_charsets_in_text): Delete unused locale variable.
13555 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
13556
13557 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
13558 Resync charset_list to Vemacs_mule_charset_list.
13559
13560 * keymap.c (store_in_keymap): Pay attention to the case that idx
13561 is a cons specifying a character range.
13562
135632008-02-01 Kenichi Handa <handa@m17n.org>
13564
13565 * composite.c (update_compositions): Bind inhibit-read-only, etc
13566 to t before calling remove-list-of-text-properties.
13567
13568 * print.c (print_object): Always print ASCII chars as is.
13569
135702008-02-01 Kenichi Handa <handa@m17n.org>
13571
13572 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
13573
13574 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
13575 is a char table.
13576
135772008-02-01 Kenichi Handa <handa@m17n.org>
13578
13579 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
13580
135812008-02-01 Kenichi Handa <handa@m17n.org>
13582
13583 * xfaces.c (set_lface_from_font_name): Fix for the case that
13584 FONTNAME is not fontset name.
13585
135862008-02-01 Kenichi Handa <handa@m17n.org>
13587
13588 * fns.c (base64_encode_1): Fix previous change.
13589
135902008-02-01 Kenichi Handa <handa@m17n.org>
13591
13592 * fontset.c (set_fontset_font): New function.
13593 (Fset_fontset_font): If a font is specified for a charset, use
13594 map_charset_chars to store the font spec in a fontset.
13595
135962008-02-01 Kenichi Handa <handa@m17n.org>
13597
13598 * fontset.c (fontset_face): Create a fallback fontset on demand.
13599 (make_fontset): Don't create a fallback fontset here.
13600 (free_face_fontset): Free a fallback fontset (if any) too.
13601 (n_auto_fontsets): Delete this variable.
13602 (auto_fontset_alist): New variable.
13603 (new_fontset_from_font_name): Check auto_fontset_alist.
13604 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
13605 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
13606 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
13607 Defsubr Sfontset_list_all.
13608
136092008-02-01 Kenichi Handa <handa@m17n.org>
13610
13611 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
13612
136132008-02-01 Kenichi Handa <handa@m17n.org>
13614
13615 * fontset.c (Fnew_fontset): Check NAME more rigidly.
13616
136172008-02-01 Kenichi Handa <handa@m17n.org>
13618
13619 * editfns.c (Fgoto_char): Fix docstring.
13620
136212008-02-01 Kenichi Handa <handa@m17n.org>
13622
13623 * insdel.c (insert_from_gap): Adjust intervals correctly.
13624
136252008-02-01 Jason Rumney <jasonr@gnu.org>
13626
13627 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
13628 (pfnGetFontUnicodeRanges): New dynamically loaded function.
13629 (w32_initialize): Try to load it.
13630 (x_get_font_repertory): Use it if available.
13631 (w32_encode_char): Add shortcut for unicode output.
13632
13633 * w32fns.c (w32_load_system_font): Default charset to -1.
13634 (x_to_w32_charset): Match all fonts for unicode.
13635 (w32_to_x_charset): New parameter matching. Don't return partial
13636 or wildcard charsets.
13637 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
13638 (w32_codepage_for_font): Return CP_UNICODE for unicode.
13639 (w32_to_x_font): Match charset to real charset.
13640 (enum_font_cb2): Always list unicode versions.
13641
13642 * makefile.w32-in (temacs): Increase EMHEAP.
13643
136442008-02-01 Jason Rumney <jasonr@gnu.org>
13645
13646 * w32term.c (w32_encode_char): New charset parameter.
13647 font_info.encoding becomes encoding_type.
13648 (x_get_font_repertory): New function. Warning: stub only!
13649 (x_new_font): Return quickly if font already set.
13650 (x_new_fontset): fontsetname parameter is Lisp_Object.
13651 Use new fs_query_fontset. Try new_fontset_from_font_name.
13652 Use fontset_name for return value.
13653
13654 * w32term.h: Declare x_get_font_repertory.
13655
13656 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
13657 place of find_charset_in_text. Use encode_coding_object in place
13658 of encode_coding.
13659 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
13660 decode_coding.
13661
13662 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
13663 of x_new_fontset.
13664 (w32_load_system_font): Initialize charset as unicode.
13665 font_info.encoding becomes encoding_type.
13666 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
13667 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
13668 (syms_of_w32fns): Set get_font_repertory_func.
13669
13670 * w32console.c: Include character.h. Use terminal_encode_buffer
13671 from term.c.
13672 (write_glyphs): Use new version of encode_terminal_code. Use
13673 encode_coding_object in place of encode_coding.
13674
13675 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
13676 encoding becomes encoding_type.
13677
13678 * term.c (terminal_encode_buffer): Make externally visible.
13679
13680 * makefile.w32-in: Add character.h dependancies.
13681 (character.o, chartab.o): New targets.
13682
136832008-02-01 Kenichi Handa <handa@m17n.org>
13684
13685 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
13686 CODING_ID_EOL_TYPE.
13687
136882008-02-01 Andreas Schwab <schwab@suse.de>
13689
13690 * coding.c (produce_chars): Revert last change.
13691
136922008-02-01 Kenichi Handa <handa@m17n.org>
13693
13694 * charset.h (charset_unicode): Extern it.
13695
13696 * charset.c (string_xstring_p): Check by (C >= 0x100).
13697 (find_charsets_in_text): Change format of the arc CHARSETS. New
13698 arg MULTIBYTE.
13699 (Ffind_charset_region, Ffind_charset_string): Adjust for the
13700 change of find_charsets_in_text.
13701 (Fsplit_char): Fix doc. Never return unknown.
13702
13703 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
13704
13705 * coding.c (Fdefine_coding_system_alias): Update
13706 Vcoding_system_list.
13707
13708 * fontset.c (load_font_get_repertory): Pay attention to the case
13709 that ENCODING of a font is specified by a char-table.
13710
13711 * xterm.c (x_get_font_repertory): Handle the case that the
13712 encoding of font is other than Unicode.
13713
137142008-02-01 Kenichi Handa <handa@m17n.org>
13715
13716 * term.c (encode_terminal_code): Don't handle glyph-table. Check
13717 if a character is encodable by the terminal coding system. If
13718 not, produces proper number of `?'s. Update
13719 terminal_encode_buffer and terminal_encode_buf_size if necessary.
13720 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
13721
137222008-02-01 Kenichi Handa <handa@m17n.org>
13723
13724 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
13725 variables.
13726 (encode_terminal_code): Change argument. Encode multiple
13727 characters at once. Store the result of encoding in
13728 terminal_encode_buffer.
13729 (write_glyphs, insert_glyphs): Adjust for the change of
13730 encode_terminal_code.
13731 (term_init): Initialize terminal_encode_buffer and
13732 terminal_encode_buf_size.
13733
13734 * coding.c (consume_chars): If coding->src_object is nil, don't
13735 check annotation.
13736
137372008-02-01 Kenichi Handa <handa@m17n.org>
13738
13739 * character.c (char_string): Use ASCII_CHAR_P instead of
13740 SINGLE_BYTE_CHAR_P.
13741
137422008-02-01 Kenichi Handa <handa@m17n.org>
13743
13744 * xdisp.c (handle_auto_composed_prop): Check if the last
13745 characters of auto-composed region is newly composed with the
13746 following characters.
13747 (handle_composition_prop): Fix checking of point being inside
13748 composition.
13749
137502008-02-01 Kenichi Handa <handa@m17n.org>
13751
13752 * fns.c (concat): Don't change multibyteness of the result by
13753 concatenating an 8-bit character.
13754
13755 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
13756 multibyteness of the result when newelt is an 8-bit character.
13757
137582008-02-01 Dave Love <fx@gnu.org>
13759
13760 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
13761 EMACS_INT.
13762
13763 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
13764
13765 * xfaces.c (face_numeric_value): Declare dim size_t.
13766 (Finternal_lisp_face_equal_p): Remove unused f.
13767
13768 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
13769 (MATRIX_ROW): Remove unused vars.
13770 (draw_glyphs, x_insert_glyphs, fast_find_position)
13771 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
13772 byte/char counts.
13773
13774 * regex.c (regex_compile): Remove unused var.
13775
13776 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
13777
13778 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13779 (Faccessible_keymaps, where_is_internal): Remove unused vars.
13780
13781 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
13782
13783 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
13784
13785 * fileio.c (Fwrite_region): Remove unused var.
13786
13787 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
13788 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
13789
13790 * composite.c (Fremove_list_of_text_properties): Declare.
13791
13792 * coding.c (inhibit_pre_post_conversion): Remove (unused).
13793 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
13794 (coding_inherit_eol_type): Remove unused attrs.
13795 (detect_coding): Cast arg of detect_eol.
13796
13797 * charset.c (syms_of_charset): Remove unused var p.
13798 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
13799 byte/char counts.
13800
13801 * casetab.c (set_case_table): Remove unused var.
13802
13803 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
13804 unused vars.
13805
138062008-02-01 Dave Love <fx@gnu.org>
13807
13808 * xterm.c (x_bitmap_mask): Declare.
13809
138102008-02-01 Dave Love <fx@gnu.org>
13811
13812 * xterm.c (x_term_init): Fix type error.
13813
13814 * lisp.h: Add Funibyte_char_to_multibyte.
13815
13816 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
13817 (Fset_coding_system_priority): Doc fix.
13818
13819 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
13820
13821 * indent.c (check_composition): Make start and end EMACS_INT.
13822
13823 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
13824
13825 * xdisp.c (handle_composition_prop, check_point_in_composition):
13826 Make buffer positions EMACS_INT.
13827
13828 * composite.c (find_composition, run_composition_function)
13829 (update_compositions, Ffind_composition_internal): Make buffer
13830 positions EMACS_INT.
13831
13832 * composite.h (find_composition, update_compositions): Make
13833 position args EMACS_INT.
13834
13835 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
13836
13837 * intervals.c (get_property_and_range):
13838 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
13839
13840 * unexalpha.c: Don't include varargs.h.
13841
138422008-02-01 Dave Love <fx@gnu.org>
13843
13844 * coding.h (ENCODE_UTF_8): New.
13845
13846 * Makefile.in (gtkutil.o): Depend on coding.h.
13847
13848 * coding.c (Fset_coding_system_priority): Doc fix.
13849
138502008-02-01 Kenichi Handa <handa@m17n.org>
13851
13852 * fileio.c (Finsert_file_contents): Call setup_coding_system in
13853 the case of auto saving.
13854
138552008-02-01 Andreas Schwab <schwab@suse.de>
13856
13857 * chartab.c (map_char_table, map_char_table_for_charset): Protect
13858 `range' from GC.
13859
138602008-02-01 Kenichi Handa <handa@m17n.org>
13861
13862 * coding.c (decode_coding_sjis): Check bytes more rigidly.
13863
138642008-02-01 Kenichi Handa <handa@m17n.org>
13865
13866 * fileio.c (choose_write_coding_system): Return a decided coding system.
13867 (Fwrite_region): Set Vlast_coding_system_used to the return value
13868 of choose_write_coding_system.
13869
138702008-02-01 Kenichi Handa <handa@m17n.org>
13871
13872 * charset.c (Fset_charset_priority): Pay attention to duplicated
13873 arguments.
13874
13875 * coding.c (QCcategory): New variable.
13876 (syms_of_coding): Defsym it. Set all elements of
13877 Vcoding_category_table and their symbol values.
13878 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
13879 coding-category-XXX, and coding-category-list.
13880 (Fdefine_coding_system_internal): Add category in the plist.
13881
138822008-02-01 Kenichi Handa <handa@m17n.org>
13883
13884 * callproc.c (Fcall_process): Handle carryover correctly.
13885
13886 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
13887 (raw_text_coding_system): Check NILP (coding_system).
13888 (coding_inherit_eol_type): Check NILP (coding_system) and
13889 NILP (parent).
13890 (consume_chars): Fix for the case of raw-text.
13891
13892 * process.c (read_process_output): Handle carryover correctly.
13893
138942008-02-01 Dave Love <fx@gnu.org>
13895
13896 * regex.c (re_search_2): Fix last change.
13897
138982008-02-01 Kenichi Handa <handa@m17n.org>
13899
13900 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
13901 target_multibyte. Even in a unibyte case, return a converted
13902 multibyte char.
13903 (GET_CHAR_AFTER): New macro.
13904 (PATFETCH): Translate via multibyte char.
13905 (HANDLE_UNIBYTE_RANGE): Delete this macro.
13906 (SETUP_MULTIBYTE_RANGE): New macro.
13907 (regex_compile): Setup compiled code so that its multibyteness
13908 matches that of a target. Fix the handling of "[X-YZ]" using
13909 SETUP_MULTIBYTE_RANGE.
13910 (analyse_first) <charset>: For filling fastmap for all multibyte
13911 characters, don't check by BASE_LEADING_CODE_P.
13912 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
13913 the same as RE_MULTIBYTE_P (bufp) now.
13914 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
13915 (TARGET_CHAR_AND_LENGTH): Delete this macro.
13916 (TRANSLATE_VIA_MULTIBYTE): New macro.
13917 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
13918 It is the same as RE_MULTIBYTE_P (bufp) now.
13919 <exactn>: Translate via multibyte.
13920 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
13921 translate it.
13922 <charset, charset_not>: Fetch a character by
13923 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
13924 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
13925 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
13926 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
13927 by GET_CHAR_AFTER.
13928 (bcmp_translate): Likewise.
13929
13930 * search.c (compile_pattern): Check the member target_multibyte,
13931 not the member multibyte of buf.
13932
13933 * lread.c (read1): While reading a string, set force_singlebyte
13934 and force_multibyte correctly.
13935
13936 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
13937 up of unibyte_to_multibyte_table.
13938
139392008-02-01 Kenichi Handa <handa@m17n.org>
13940
13941 * coding.c (setup_coding_system): If coding has
13942 post-read-conversion or pre-write-conversion, set
13943 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
13944 respectively.
13945 (decode_coding_gap): Run post-read-conversion if any.
13946
13947 * fileio.c (Finsert_file_contents): Even if we read into a
13948 unibyte buffer, check if we must decode the result or not.
13949
139502008-02-01 Kenichi Handa <handa@m17n.org>
13951
13952 * coding.c (make_conversion_work_buffer): Change the work buffer
13953 name to the same one as that of Emacs 21.
13954
139552008-02-01 Kenichi Handa <handa@m17n.org>
13956
13957 * coding.h (make_conversion_work_buffer): Adjust prototype.
13958 (code_conversion_restore): Don't extern it.
13959
13960 * coding.c (detected_mask): Delete unused variable.
13961 (decode_coding_iso_2022): Pay attention to the byte sequence of
13962 CTEXT extended segment, and retain those bytes as is.
13963 (decode_coding_ccl): Delete unused variable `valids'.
13964 (setup_coding_system): Delete unused variable `category'.
13965 (consume_chars): Delete unused variable `category'. Make it work
13966 for non-multibyte case.
13967 (make_conversion_work_buffer): Change argument.
13968 (saved_coding): Delete unused variable.
13969 (code_conversion_restore): Don't check saved_coding->destination.
13970 (code_conversion_save): New function.
13971 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
13972 instead of record_unwind_protect.
13973 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
13974 (detect_coding_system): Delete unused variable `mask'.
13975 (Fdefine_coding_system_internal): Delete unused variable id.
13976
13977 * fileio.c (kill_workbuf_unwind): New function.
13978 (Finsert_file_contents): On replacing, call
13979 make_conversion_work_buffer with correct args, and call
13980 record_unwind_protect with the first arg kill_workbuf_unwind.
13981
13982 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
13983
139842008-02-01 Kenichi Handa <handa@m17n.org>
13985
13986 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
13987 (fontset_add): Fix for the case that TO is less than TO1.
13988 (Ffontset_info): Don't use fallback fontset on checking the
13989 default fontset.
13990 (dump_fontset): New function for debugging.
13991
13992 * coding.c (Fdefine_coding_system_internal): Fix for the case that
13993 coding_type is Qcharset.
13994
139952008-02-01 Kenichi Handa <handa@m17n.org>
13996
13997 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
13998 (map_char_table): Don't inherit the value from the parent on
13999 initializing VAL. Adjust for the above change.
14000
140012008-02-01 Kenichi Handa <handa@m17n.org>
14002
14003 * coding.c (Qsignature, Qendian): Delete these variables.
14004 (syms_of_coding): Don't initialize them.
14005 (CATEGORY_MASK_UTF_16_AUTO): New macro.
14006 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
14007 detect_info->found.
14008 (decode_coding_utf_16): Don't detect BOM here.
14009 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
14010 is NOT utf_16_without_bom.
14011 (setup_coding_system): For a coding system of type utf-16, check
14012 if the attribute :endian is Qbig or not (not nil or not), and set
14013 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
14014 (detect_coding): If coding type is utf-16 and BOM detection is
14015 required, detect it.
14016 (Fdefine_coding_system_internal): For a coding system of type
14017 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
14018
140192008-02-01 Kenichi Handa <handa@m17n.org>
14020
14021 * coding.c (coding_set_source): Fix for the case that the current
14022 buffer is different from coding->src_object.
14023 (decode_coding_object): Don't use the conversion work buffer if
14024 DST_OBJECT is a buffer.
14025
140262008-02-01 Dave Love <fx@gnu.org>
14027
14028 * lread.c (read_emacs_mule_char) [len==2]: Index
14029 emacs_mule_charset correctly.
14030
140312008-02-01 Dave Love <fx@gnu.org>
14032
14033 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
14034 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
14035 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
14036 treated specially.)
14037 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
14038 (detected_mask): Remove Big5 bits.
14039
140402008-02-01 Kenichi Handa <handa@m17n.org>
14041
14042 The following changes are to make the font rescaling facility
14043 compatible with Emacs 21.
14044
14045 * xfaces.c (Vface_font_rescale_alist): Rename from
14046 Vface_resizing_fonts.
14047 (struct font_name): Rename member resizing_ratio to rescale_ratio.
14048 (font_rescale_ratio): Rename from font_resizing_ratio.
14049 (split_font_name): Set font->rescale_ratio.
14050 (better_font_p): Pay attention to font->rescale_ratio.
14051 (build_scalable_font_name): Likewise. Change RESX, and RESY
14052 fields.
14053 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
14054
140552008-02-01 Kenichi Handa <handa@m17n.org>
14056
14057 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
14058 (Qutf_16_le): Remove these variables.
14059 (syms_of_coding): Don't DEFSYM them.
14060 (decode_coding_utf_16): Fix handling of BOM.
14061 (encode_coding_utf_16): Fix handling of BOM.
14062
140632008-02-01 Kenichi Handa <handa@m17n.org>
14064
14065 * fileio.c (Finsert_file_contents): On replacing, before decoding
14066 the file into the work buffer, set point of the work buffer to the end.
14067
140682008-02-01 Dave Love <fx@gnu.org>
14069
14070 * coding.c (Fcheck_coding_systems_region): Fix type errors.
14071
140722008-02-01 Dave Love <fx@gnu.org>
14073
14074 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14075 and fix C types.
14076
140772008-02-01 Kenichi Handa <handa@m17n.org>
14078
14079 * xdisp.c (SKIP_GLYPHS): New macro.
14080 (set_cursor_from_row): Pay attention to string display properties.
14081
14082 * category.c (copy_category_entry): Fix for the case that RANGE
14083 is an integer.
14084
14085 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
14086
14087 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
14088
140892008-02-01 Kenichi Handa <handa@m17n.org>
14090
14091 * charset.c (Fcharset_id_internal): New function.
14092 (syms_of_charset): Defsubr it.
14093
14094 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
14095 with the last arg charset_list acquired from coding.
14096 (Fdefine_coding_system_internal): For ccl-based coding system, fix
14097 the attribute coding_attr_ccl_valids.
14098
14099 * coding.h (enum define_coding_ccl_arg_index): Set the first
14100 member coding_arg_ccl_decoder to coding_arg_max.
14101
14102 * ccl.h (ccl_driver): Adjust prototype.
14103
14104 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
14105 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
60612c8f 14106 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
aac0c6e3
MR
14107 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
14108 last arg Qnil.
14109
141102008-02-01 Kenichi Handa <handa@m17n.org>
14111
14112 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
14113 call encode_char.
14114
14115 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
14116
141172008-02-01 Dave Love <fx@gnu.org>
14118
14119 * composite.c (syms_of_composite): Make composition_hash_table weak.
14120
141212008-02-01 Kenichi Handa <handa@m17n.org>
14122
14123 * dispextern.h (check_face_attributes, generate_ascii_font_name)
14124 (font_name_registry): Don't extern them.
14125 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
14126
14127 * fontset.h (Qfontset): Don't extern it.
14128 (new_fontset_from_font_name): Extern it.
14129
14130 * fontset.c: Give 8 extra slots to fontset objects.
14131 (Qfontset_info): New variable.
14132 (syms_of_fontset): Defsym it.
14133 (FONTSET_FALLBACK): New macro.
14134 (fontset_face): Try also the default fontset.
14135 (make_fontset): Realize a fallback fontset from the default fontset.
14136 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
14137 using split_font_name_into_vector and build_font_name_from_vector.
14138 (Fset_fontset_font): Access the elements of font_spec by enum
14139 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
14140 name by using split_font_name_into_vector.
14141 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
14142 generate a proper font name from the fontset name. Update
14143 Vfontset_alias_alist.
14144 (n_auto_fontsets): New variable.
14145 (new_fontset_from_font_name): New function.
14146 (Ffont_info): Store the information about fonts generated from the
14147 default fontset in the first extra slot of the returned char-table.
14148
14149 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
14150 (font_name_registry): Delete function.
14151 (split_font_name_into_vector): New function.
14152 (build_font_name_from_vector): New function.
14153 (font_list): The argument REGISTRY is now a list of registry names.
14154 (choose_face_font): If we are choosing an ASCII font, and ATTRS
14155 specifies an explicit font name, return the name as is. Make a
14156 list of registy names.
14157
14158 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
14159 of x_new_fontset.
14160 (Fx_create_frame): Don't call x_new_fontset here. Just use
14161 x_list_fonts to check the existence of fonts.
14162
14163 * xterm.h (x_new_fontset): Adjust prototype.
14164
14165 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
14166 string. Use new_fontset_from_font_name to create a fontset from a
14167 font name.
14168
141692008-02-01 Kenichi Handa <handa@m17n.org>
14170
14171 * syntax.c (Vfind_word_boundary_function_table): New name for
14172 Vnext_word_boundary_function_table.
14173 (find-word-boundary-function-table): New name for
14174 next-word-boundary-function-table.
14175
141762008-02-01 Dave Love <fx@gnu.org>
14177
14178 * Makefile.in: Fix some dependencies.
14179
14180 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
14181 set it to nil before returning.
14182
14183 * composite.c (update_compositions): Fix type error.
14184
14185 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
14186
141872008-02-01 Kenichi Handa <handa@m17n.org>
14188
14189 * xterm.c (x_new_font): Optimize for the case that the font is
14190 already set for the frame.
14191
141922008-02-01 Kenichi Handa <handa@m17n.org>
14193
14194 * chartab.c (char_table_ascii): Check if the char table contents
14195 is sub-char-table or not.
14196 (char_table_set, char_table_set_range): Fix argument to
14197 char_table_ascii.
14198
14199 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
14200 (detect_coding_utf_8, detect_coding_utf_16)
14201 (detect_coding_emacs_mule, detect_coding_iso_2022)
14202 (detect_coding_sjis, detect_coding_big5)
14203 (detect_coding_ccl, detect_coding_charset): Change argument MASK
14204 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
14205 sequence is valid in this coding system. Change callers.
14206 (MAX_ANNOTATION_LENGTH): New macro.
14207 (ADD_ANNOTATION_DATA): New macro.
14208 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
14209 ADD_ANNOTATION_DATA. Change the format of annotation data.
14210 (ADD_CHARSET_DATA): New macro.
14211 (emacs_mule_char): New argument ID. Change callers.
14212 (decode_coding_emacs_mule, decode_coding_iso_2022)
14213 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
14214 Produce charset annotation data in coding->charbuf.
14215 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
14216 to charset annotation data in coding->charbuf.
14217 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
14218 coding->common_flags if the coding system is iso-2022 based and
14219 uses designation.
14220 (produce_composition): Adjust for the new annotation data format.
14221 (produce_charset): New function.
14222 (produce_annotation): Handle charset annotation.
14223 (handle_composition_annotation, handle_charset_annotation): New
14224 functions.
14225 (consume_chars): Handle charset annotation. Utilize the above two
14226 functions.
14227 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
14228 buffer, get the deleted text as a string and set
14229 coding->src_object to that string.
14230 (detect_coding, detect_coding_system): Use the new struct
14231 coding_detection_info.
14232
14233 * coding.h (struct coding_detection_info): New structure.
14234 (struct coding_system): Adjust prototype of the member `detector'.
14235 (CODING_ANNOTATE_CHARSET_MASK): New macro.
14236
142372008-02-01 Kenichi Handa <handa@m17n.org>
14238
14239 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
14240
142412008-02-01 Dave Love <fx@gnu.org>
14242
14243 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
14244 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
14245 to new local and nullify apropos_accumulate before returning.
14246 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
14247
142482008-02-01 Kenichi Handa <handa@m17n.org>
14249
14250 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
14251 correctly.
e3eea1fc 14252
aac0c6e3
MR
142532008-02-01 Dave Love <fx@gnu.org>
14254
14255 * fns.c (Flanginfo): Call synchronize_system_time_locale.
14256
142572008-02-01 Kenichi Handa <handa@m17n.org>
14258
14259 The following changes are to make character composition happen
14260 automatically on displaying.
14261
14262 * Makefile.in (lisp, shortlisp): Add composite.elc.
14263
14264 * composite.h (Qauto_composed, Vauto_composition_function)
14265 (Qauto_composition_function): Extern them.
14266
14267 * composite.c (Vcomposition_function_table)
14268 (Qcomposition_function_table): Delete variables.
14269 (Qauto_composed, Vauto_composition_function)
14270 (Qauto_composition_function): New variables.
14271 (run_composition_function): Don't call
14272 compose-chars-after-function.
14273 (update_compositions): Clear `auto-composed' text property.
14274 (compose_chars_in_text): Delete this function.
14275 (syms_of_composite): Staticpro Qauto_composed and
14276 Qauto_composition_function. Declare Vauto_composition_function as
14277 a Lisp variable.
14278
14279 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
14280
14281 * xdisp.c (it_props): Add an entry for Qauto_composed.
14282 (handle_auto_composed_prop): New function.
14283
14284 * xselect.c (selection_data_to_lisp_data): Don't call
14285 compose_chars_in_text.
14286
142872008-02-01 Dave Love <fx@gnu.org>
14288
14289 * keyboard.c (read_char): Modify checking around use of
14290 Vkeyboard_translate_table.
14291
14292 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
14293 and fix C types.
14294
142952008-02-01 Kenichi Handa <handa@m17n.org>
14296
14297 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
14298 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14299 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
14300 the case that the last byte is '\r' correctly.
14301 (decode_coding): Flush out the unprocessed data correctly.
14302 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
14303
143042008-02-01 Dave Love <fx@gnu.org>
14305
14306 * xterm.c (XTread_socket): Fix changes for defined keysyms.
14307 Add XK_ISO... case.
14308 (xaw_scroll_callback): Revert last change.
14309
143102008-02-01 Kenichi Handa <handa@m17n.org>
14311
14312 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
14313
143142008-02-01 Kenichi Handa <handa@m17n.org>
14315
14316 * xfaces.c (Vface_resizing_fonts): New variable.
14317 (struct font_name): New member `resizing_ratio'.
14318 (font_resizing_ratio): New function.
14319 (split_font_name): Set font->resizing_ratio.
14320 (better_font_p): Pay attention to font->resizing_ratio.
14321 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
14322 RESX, and RESY fields.
14323 (try_alternative_families): Try scalable fonts if
14324 Vscalable_fonts_allowed is not Qt.
14325 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
14326
143272008-02-01 Dave Love <fx@gnu.org>
14328
14329 * xterm.c (xaw_scroll_callback): Cast correctly.
14330
143312008-02-01 Dave Love <fx@gnu.org>
14332
14333 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
14334 (lispy_kana_keys): Comment out.
14335 (make_lispy_event) [XK_kana_A]: Comment out.
14336
14337 * xterm.c (xaw_scroll_callback): Cast call_data.
14338 (XTread_socket): Deal with ASCII keysyms.
14339 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
14340
143412008-02-01 Dave Love <fx@gnu.org>
14342
14343 * xterm.c (Vx_keysym_table): New.
14344 (syms_of_xterm): Initialize it.
14345 (XTread_socket): Use it.
14346 From head: Eliminate incorrect optimization that tried to avoid
14347 decoding the output of X*LookupString.
14348 (x_get_font_repertory): Delete charset declaration.
14349
143502008-02-01 Kenichi Handa <handa@m17n.org>
14351
14352 * coding.c (detect_coding_charset): If only ASCII bytes are found,
14353 return 0.
14354 (Fdefine_coding_system_internal): Setup
14355 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
14356
143572008-02-01 Dave Love <fx@gnu.org>
14358
14359 * coding.c (Fcheck_coding_system): Doc fix.
14360
14361 * editfns.c (Finsert_byte): Return a proper value.
14362
143632008-02-01 Kenichi Handa <handa@m17n.org>
14364
14365 * coding.c (decode_coding): Fix args to translate_chars. Pay
14366 attention to Vstandard_translation_table_for_decode.
14367 (encode_coding): Fix args to translate_chars. Pay attention to
14368 Vstandard_translation_table_for_encode.
14369
14370 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
14371 SINGLE_BYTE_CHAR_P.
14372
14373 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
14374 not by SINGLE_BYTE_CHAR_P.
14375
14376 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
14377 SINGLE_BYTE_CHAR_P.
14378
14379 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
14380 SINGLE_BYTE_CHAR_P.
14381
14382 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
14383 by SINGLE_BYTE_CHAR_P.
14384
14385 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
14386 SINGLE_BYTE_CHAR_P.
14387
143882008-02-01 Dave Love <fx@gnu.org>
14389
14390 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
14391
143922008-02-01 Dave Love <fx@gnu.org>
14393
14394 * fns.c (Flanginfo): Fix typo.
14395
14396 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
14397
143982008-02-01 Kenichi Handa <handa@m17n.org>
14399
14400 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
14401 (detect_coding_emacs_mule, detect_coding_iso_2022)
14402 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
14403 incomplete byte sequence. Don't update *mask when correctly detected.
14404 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
14405 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
14406 (detect_coding, detect_coding_system): Adjust for the changes above.
14407
144082008-02-01 Kenichi Handa <handa@m17n.org>
14409
14410 * character.c (char_string): Rename from
14411 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
14412 (string_char): Rename from string_char.
14413
14414 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
14415 if C is greater than MAX_3_BYTE_CHAR.
14416 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
14417 string_char instead of string_char_with_unification.
14418
144192008-02-01 Dave Love <fx@gnu.org>
14420
14421 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
14422
144232008-02-01 Kenichi Handa <handa@m17n.org>
14424
14425 * keymap.c (push_key_description): Pay attention to force_multibyte.
14426
14427 * regex.c (re_search_2): Fix for the case of unibyte buffer.
14428
144292008-02-01 Dave Love <fx@gnu.org>
14430
14431 * charset.c (define_charset_internal): Rename `supprementary'.
14432
14433 * Makefile.in (lisp, shortlisp): Remove latin-N.
14434
144352008-02-01 Dave Love <fx@gnu.org>
14436
14437 * xfns.c (x_window, x_window): Use use_xim.
14438
14439 * xterm.c (use_xim): Initialize.
14440 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14441 (x_term_init): Maybe set use_xim.
14442
14443 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14444
144452008-02-01 Kenichi Handa <handa@m17n.org>
14446
14447 * search.c (search_buffer): Fix case-fold-search of multibyte
14448 characters.
14449 (boyer_moore): Rename the last argument to char_high_bits.
14450
144512008-02-01 Kenichi Handa <handa@m17n.org>
14452
14453 * xdisp.c (display_string): Fix for the case of zero width glyph.
14454
14455 * xfns.c (x_set_font): Change the error message of the case that
14456 x_new_fontset returns Qt.
14457
14458 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
14459 (Finternal_set_lisp_face_attribute): Use signal_error for the
14460 error of invalid fontset.
14461
14462 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
14463 fontset, return Qt.
14464
144652008-02-01 Dave Love <fx@gnu.org>
14466
14467 * unexelf.c (unexec): Make .got handling not SGI-specific.
14468
14469 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
14470
14471 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
14472
14473 * keyboard.c (read_key_sequence): Fix type error.
14474
14475 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
14476 type error.
14477
14478 * fontset.c (fontset_add): Return Lisp_Object.
14479
144802008-02-01 Dave Love <fx@gnu.org>
14481
14482 * charset.h (charset_ordered_list_tick): Declare extern.
14483
144842008-02-01 Kenichi Handa <handa@m17n.org>
14485
14486 The following changes (and some of 2008-02-01 changes of mine) are
14487 for handling syntax, category, and case conversion for unibyte
14488 characters by converting them to multibyte on the fly. With these
14489 changes, we don't have to setup syntax and case tables for unibyte
14490 characters in each language environment.
14491
14492 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
14493 multibyte if necessary.
14494
14495 * bytecode.c (Fbyte_code): Likewise.
14496
14497 * character.h (LEADING_CODE_LATIN_1_MIN)
14498 (LEADING_CODE_LATIN_1_MAX): New macros.
14499 (unibyte_to_multibyte_table): Extern it.
14500 (unibyte_char_to_multibyte): New macro.
14501 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
14502 (CHAR_LEADING_CODE): New macro.
14503 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
14504
14505 * character.c (unibyte_to_multibyte_table): New variable.
14506 (unibyte_char_to_multibyte): Move to character.h and define as macro.
14507 (multibyte_char_to_unibyte): If C is an eight-bit character,
14508 convert it to the corresponding byte value.
14509
14510 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
14511 not 1, signals an error. Update the elements of
14512 unibyte_to_multibyte_table.
14513 (init_charset_once): Initialize unibyte_to_multibyte_table.
14514 (syms_of_charset): Define the charset `iso-8859-1'.
14515
14516 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
14517 as is without converting it to unibyte. In a unibyte buffer,
14518 convert C to multibyte before checking the syntax.
14519
14520 * lisp.h (unibyte_char_to_multibyte): Delete extern.
14521
14522 * minibuf.c (Fminibuffer_complete_word): Use the macro
14523 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
14524
14525 * regex.h (struct re_pattern_buffer): New member target_multibyte.
14526
14527 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
14528 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
14529 that is zero, convert an eight-bit char to multibyte.
14530 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
14531 non-emacs case.
14532 (PATFETCH): Convert an eight-bit char to multibyte.
14533 (HANDLE_UNIBYTE_RANGE): New macro.
14534 (regex_compile): Setup the compiled pattern for multibyte chars
14535 even if the given regex string is unibyte. Use PATFETCH_RAW
14536 instead of PATFETCH in many places. To handle `charset'
14537 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
14538 only for ASCII chars.
14539 (analyse_first) <exactn>: Simplify because the compiled pattern
14540 is multibyte.
14541 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
14542 <charset>: Use CHAR_LEADING_CODE to get leading codes.
14543 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
14544 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
14545 multibyte always 1.
14546 (re_search_2): In emacs, set the locale variable multibyte to 1,
14547 otherwise to 0. New local variable target_multibyte. Check it
14548 to decide the multibyteness of STR1 and STR2. If
14549 target_multibyte is zero, convert unibyte chars to multibyte
14550 before translating and checking fastmap.
14551 (TARGET_CHAR_AND_LENGTH): New macro.
14552 (re_match_2_internal): In emacs, set the locale variable multibyte
14553 to 1, otherwise to 0. New local variable target_multibyte. Check
14554 it to decide the multibyteness of STR1 and STR2. Use
14555 TARGET_CHAR_AND_LENGTH to fetch a character from D.
14556 <charset, charset_not>: If multibyte is nonzero, check fastmap
14557 only for ASCII chars. Call bcmp_translate with
14558 target_multibyte, not with multibyte.
14559 <begline>: Declare the local variable C as `unsigned'.
14560 (bcmp_translate): Change the last arg name to target_multibyte.
14561
14562 * search.c (compile_pattern_1): Don't adjust the multibyteness of
14563 the regexp pattern and the matching target. Set cp->buf.multibyte
14564 to the multibyteness of the regexp pattern. Set
14565 cp->but.target_multibyte to the multibyteness of the matching target.
14566 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
14567 FETCH_STRING_CHAR_ADVANCE.
14568 (Freplace_match): Convert unibyte chars to multibyte.
14569
14570 * syntax.c (char_quoted, back_comment, scan_words)
14571 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
14572 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
14573 unibyte chars to multibyte.
14574 (skip_chars): Delete the arg syntaxp, and move the code for
14575 handling syntaxes to skip_syntaxes. Change callers.
14576 Fix the case that the multibyteness of STRING and the current
14577 buffer doesn't match.
14578 (skip_syntaxes): New function.
14579 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
14580 SINGLE_BYTE_CHAR_P.
14581
145822008-02-01 Kenichi Handa <handa@m17n.org>
14583
14584 * xfaces.c (QCfontset): New variable.
14585 (LFACE_FONTSET): New macro.
14586 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
14587 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
14588 (Finternal_set_lisp_face_attribute)
14589 (Finternal_get_lisp_face_attribute): Handle QCfontset.
14590 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
14591 check also LFACE_FONTSET_INDEX.
14592 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
14593 attrs[LFACE_FONT_INDEX].
14594 (syms_of_xfaces): Intern and staticpro QCfontset.
14595
14596 * dispextern.h (enum lface_attribute_index): New member
14597 LFACE_FONTSET_INDEX.
14598
14599 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
14600
146012008-02-01 Kenichi Handa <handa@m17n.org>
14602
14603 * coding.c (coding_set_destination): Fix coding->destination for
14604 the case converting a region.
14605 (encode_coding_utf_8): Encode eight-bit chars as single byte.
14606 (encode_coding_object): Fix coding->dst_pos and
14607 coding->dst_pos_byte for the case converting a region.
14608
14609 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
14610
14611 * character.h (BYTE8_STRING): New macro.
14612
14613 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
14614
146152008-02-01 Kenichi Handa <handa@m17n.org>
14616
14617 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
14618 characters by octal form.
14619
14620 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
14621
14622 * buffer.h (_fetch_multibyte_char_len): Delete extern.
14623 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
14624 _fetch_multibyte_char_len.
14625 (FETCH_CHAR_AS_MULTIBYTE): New macro.
14626
14627 * casetab.c (set_canon, set_identity, shuffle): Simplify.
14628
14629 * casefiddle.c (casify_object): Simplify. Handle the case that
14630 the case conversion change the byte length.
14631 (casify_region): Likewise.
14632
14633 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
14634
14635 * character.c (_fetch_multibyte_char_len): Delete this variable.
14636 (syms_of_character): Setup Vprintable_chars.
14637
14638 * editfns.c (Fchar_equal): Fix for the unibyte case.
14639 (Finsert_byte): New function.
14640 (syms_of_editfns): Defsubr it.
14641
14642 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
14643 of direct code 0x3ffff.
14644
14645 * search.c (Freplace_match): Fix for the unibyte case.
14646
146472008-02-01 Kenichi Handa <handa@m17n.org>
14648
14649 * lread.c (safe_to_load_p): Fix the logic.
14650
14651 * syntax.c (scan_words): Don't treat characters belonging to
14652 different scripts as constituting a word.
14653
14654 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14655
14656 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
14657
14658 * emacs.c (main): In the case of --unibyte, instead of aborting on
14659 finding non-empty buffer, make it unibyte.
14660
146612008-02-01 Kenichi Handa <handa@m17n.org>
14662
14663 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
14664 to create a fontset.
14665
146662008-02-01 Dave Love <fx@gnu.org>
14667
14668 * character.c (Funibyte_char_to_multibyte): Doc fix.
14669
14670 * xfns.c [HAVE_STDLIB_H]: Fix last change.
14671
146722008-02-01 Kenichi Handa <handa@m17n.org>
14673
14674 * fontset.c (fontset_add): Make the type `int'.
14675 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
14676
14677 * character.c (unibyte_char_to_multibyte)
14678 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
14679 charset_unibyte, not charset_primary.
14680
14681 * charset.h (charset_unibyte): Extern it instead of charset_primary.
14682
14683 * charset.c (charset_unibyte): Rename from charset_primary.
14684 (Funibyte_charset): Rename from Fprimary_charset.
14685 (Fset_unibyte_charset): Rename from Fset_primary_charset.
14686 (syms_of_charset): Adjust for the above changes.
14687
14688 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14689 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14690 it->multibyte_p is zero.
14691
14692 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
14693 Delete extern.
14694
146952008-02-01 Kenichi Handa <handa@m17n.org>
14696
14697 * coding.c (Fdefine_coding_system_internal): Fix category setting
14698 for a coding system of type iso-2022.
14699
147002008-02-01 Kenichi Handa <handa@m17n.org>
14701
14702 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
14703
147042008-02-01 Kenichi Handa <handa@m17n.org>
14705
14706 * syntax.c (Vnext_word_boundary_function_table): New variable.
14707 (next-word-boundary-function-table): Declare it as a Lisp variable
14708 in syms_of_syntax.
14709 (scan_words): Call functions in Vnext_word_boundary_function_table
14710 if any.
14711
14712 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
14713
14714 * fontset.c (fs_load_font): If fontp->charset is not negative,
14715 return fontp without setting its members.
14716
147172008-02-01 Dave Love <fx@gnu.org>
14718
14719 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
14720
14721 * m/sparc.h (HAVE_ALLOCA): Delete.
14722
14723 * s/irix6-5.h: Don't include strings.h.
14724 (bcopy, bzero, bcmp): Don't undef.
14725
14726 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
14727
14728 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
14729 (TIOCSIGSEND): Don't test IRIX6.
14730 (bcopy, bzero, bcmp): Define conditionally.
14731
147322008-02-01 Kenichi Handa <handa@m17n.org>
14733
14734 * buffer.c (Qas, Qmake, Qto): New variables.
14735 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
14736 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
14737
14738 * callproc.c (Fcall_process): Don't call insert_1_both directly if
14739 we are inserting a process output into a multibyte buffer.
14740
14741 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
14742 multibyte_char_to_unibyte.
14743
14744 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
14745 by the primary charset, make it eight-bit char.
14746 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
14747
14748 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
14749 (charset_8_bit__control, charset_8_bit_graphic)
14750 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
14751 (define_charset_internal): New function.
14752 (syms_of_charset): Call define_charset_internal for pre-defined
14753 charsets.
14754
14755 * charset.h (charset_8_bit): Extern it.
14756
14757 * coding.c (make_conversion_work_buffer): Adjust for the change
14758 of Fset_buffer_multibyte.
14759 (encode_coding_raw_text): Increment p0 in the loop.
14760
14761 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
14762
14763 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
14764 for the change of Fset_buffer_multibyte.
14765
14766 * fns.c (Fstring_to_multibyte): New function.
14767 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
14768
147692008-02-01 Dave Love <fx@gnu.org>
14770
14771 * xfns.c (x_put_x_image): Declare args.
14772
14773 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
14774 (try_font_list): Declare an arg.
14775
14776 * xdisp.c (message2_nolog, set_message): Declare an arg.
14777
14778 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
14779
14780 * syntax.c (scan_sexps_forward): Declare an arg.
14781
14782 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
14783 Declare an arg.
14784
14785 * lisp.h (Fnew_fontset): Declare.
14786
14787 * keymap.c (push_key_description): Call CHARACTERP correctly.
14788
14789 * fontset.c (fontset_add): Declare args. Call make_number correctly.
14790 (face_for_char): Delete unused vars.
14791 (Fset_fontset_font): Doc fix. Delete unused vars.
14792
14793 * doc.c (Fsubstitute_command_keys): Delete unused vars.
14794
14795 * composite.c (update_compositions): Declare arg.
14796
14797 * cm.c (calccost, cmgoto): Declare args.
14798
14799 * charset.c: Remove `emacs' conditional. Doc fixes.
14800 (map_char_table_for_charset): Declare.
14801
14802 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
14803
14804 * ccl.c: Remove `emacs' conditional.
14805
148062008-02-01 Kenichi Handa <handa@m17n.org>
14807
14808 The following changes are to allow specifying multiple font
14809 patterns for a character range (specified by script or charset).
14810
14811 * Makefile.in (abbrev.o): Depend on syntax.h.
14812 (xfaces.o): Depend on charset.h.
14813
14814 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
14815 SINGLE_BYTE_CHAR_P.
14816
14817 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
14818
14819 * character.h (Vchar_script_table): Extern it.
14820
14821 * character.c (Vscript_alist): Delete.
14822 (Vchar_script_table, Qchar_script_table): New variable.
14823 (syms_of_character): Declare Vchar_script_table as a lisp variable
14824 and initialize it.
14825
14826 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
14827 have property char-table-extra-slots, make no extra slot.
14828
14829 * dispextern.h (struct face): Delete member `charset'.
14830 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
14831 SINGLE_BYTE_CHAR_P.
14832 (choose_face_font, lookup_non_ascii_face, font_name_registry):
14833 Add prototypes.
14834 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
14835 (generate_ascii_font_name): Rename from generate_ascii_font.
14836
14837 * fontset.h (get_font_repertory_func): New prototype.
14838 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
14839 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
14840
14841 * fontset.c (Qprepend, Qappend): New variables.
14842 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
14843 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
14844 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
14845 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
14846 (fontset_ref_and_range, fontset_add, reorder_font_vector)
14847 (load_font_get_repertory): New functions.
14848 (fontset_set): Delete.
14849 (fontset_face): New arg FACE. Return face ID, not face.
14850 Complete re-write to handle new fontset structure. Change caller.
14851 (free_face_fontset): Use ASET istead of AREF (X) = Y.
14852 (face_for_char): Don't call lookup_face.
14853 (make_fontset_for_ascii_face): New arg FACE.
14854 (fs_load_font): New arg CHARSET_ID. Don't check
14855 Vfont_encoding_alist here.
14856 (find_font_encoding): New function.
14857 (list_fontsets): Use STRINGP, not ! NILP.
14858 (accumulate_script_ranges): New function.
14859 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
14860 re-written to handle new fontset structure.
14861 (Ffontset_font): Return a copy of element.
14862 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
14863 docstring of font-encoding-alist.
14864
14865 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
14866 (Fset_fotset_font): Fix arguments to 5.
14867
14868 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
14869
14870 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
14871 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14872 (highlight_trailing_whitespace): Adjust for the change of
14873 lookup_named_face.
14874
14875 * xfaces.c: Include charset.h.
14876 (load_face_font): Delete argument C. Change caller.
14877 (generate_ascii_font_name): Rename from generate_ascii_font.
14878 (font_name_registry): New function.
14879 (cache_face): Store ascii faces before non-ascii faces in buckets.
14880 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
14881 Lookup only ascii faces.
14882 (lookup_non_ascii_face): New function.
14883 (lookup_named_face): Delete argument C. Change caller.
14884 (lookup_derived_face): Delete argument C. Change caller.
14885 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
14886 a string, just call font_list with it.
14887 (choose_face_font): Delete arguments FACE and C. New arg
14888 FONT_SPEC. Change caller.
14889 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
14890 Change caller.
14891 (realize_non_ascii_face): New function.
14892 (realize_x_face): Call load_face_font here.
14893 (realize_tty_face): Delete argument C. Change caller.
14894 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
14895 get a face ID.
14896 (dump_realized_face): Don't print charset of FACE.
14897
14898 * xfns.c (x_set_font): Always call x_new_fontset and
14899 store_frame_parameter.
14900 (Fx_create_frame): Call x_new_fontset, not x_new_font.
14901 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
14902
14903 * xterm.h (x_get_font_repertory): Extern it.
14904
14905 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
14906 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
14907 it->multibyte_p is zero.
14908 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
14909 (x_new_fontset): If FONTSETNAME doesn't match any existing
14910 fontsets, create a new one.
14911 (x_get_font_repertory): New function.
14912
149132008-02-01 Kenichi Handa <handa@m17n.org>
14914
14915 * coding.c (Ffind_coding_systems_region_internal): Detect an
14916 ASCII only string correctly.
14917
14918 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
14919 version is 0.
14920
149212008-02-01 Kenichi Handa <handa@m17n.org>
14922
14923 * lread.c: Include "coding.h".
14924 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
14925 (load_each_byte, unread_char): New variables.
14926 (readchar_backlog): Delete.
14927 (readchar): Return a character unless load_each_byte is nonzero.
14928 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
14929 cons. If unread_char is not -1, simply return it.
14930 (unreadchar): Handle the case that readcharfun is
14931 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
14932 (read_multibyte): Delete.
14933 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
14934 (read_emacs_mule_char): New functions.
14935 (Fload): Even if the file doesn't have the extension ".elc", if
14936 safe_to_load_p returns a positive version number, assume that the
14937 file contains bytecompiled code. If the version is less than 22,
14938 load the file while decoding multibyte sequences by emacs-mule.
14939 (readevalloop): Don't use readchar_backlog.
14940 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
14941 (Fread_from_string): Pay attention to the case that STREAM is a cons.
14942 (read_escape): Delete the arg BYTEREP.
14943 (read1): Set load_each_byte to 1 temporarily while handling
14944 #@NUMBER. Don't call read_multibyte.
14945 (read_vector): Call Fread with a cons. If readcharfun is
14946 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
14947 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
14948 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
14949 and Qload_force_doc_strings.
14950
149512008-02-01 Kenichi Handa <handa@m17n.org>
14952
14953 * xdisp.c (face_before_or_after_it_pos): Call
14954 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
14955
149562008-02-01 Kenichi Handa <handa@m17n.org>
14957
14958 * character.h (TRAILING_CODE_P): New macro.
14959 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
14960 (string_char_with_unification): Fix prototype.
14961 (Vscript_alist): Extern it.
14962
14963 * character.c (Vscript_alist): New variable.
14964 (string_char_with_unification, str_as_unibyte)
14965 (string_escape_byte8): Add `const' to local variables.
14966 (syms_of_character): Declare script-alist as a Lisp variable.
14967
14968 * charset.h (Vcharset_ordered_list): Extern it.
14969 (charset_ordered_list_tick): Extern it.
14970 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
14971 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
14972 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
14973 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
14974 (Funify_charset): Adjust for the change of Funify_charset.
14975
14976 * charset.c (charset_ordered_list_tick): New variable.
14977 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
14978 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
14979 deunify intead of unify a charset.
14980 (string_xstring_p): Add `const' to local variables.
14981 (find_charsets_in_text): Add `const' to arguments and local variables.
14982 (encode_char): Adjust for the change of Funify_charset. Fix
14983 detecting of invalid code.
14984 (Fset_charset_priority): Increment charset_ordered_list_tick.
14985 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
14986 and TO_CODE.
14987
14988 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
14989 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
14990 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
14991 (decode_coding_ccl, consume_chars)
14992 (Ffind_coding_systems_region_internal)
14993 (Fcheck_coding_systems_region): Add `const' to local variables.
14994
14995 * print.c (print_object): Use octal form for printing the
14996 contents of a bool vector.
14997
149982008-02-01 Dave Love <fx@gnu.org>
14999
15000 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
15001 <version == 20>: Refuse to load.
15002
150032008-02-01 Dave Love <fx@gnu.org>
15004
15005 * fns.c: Move coding.h.
15006 (Qcodeset, Qdays, Qmonths): New.
15007 (concat): Use CHARACTERP instead of INTEGERP.
15008 (Flocale_codeset): Delete.
15009 (Flanginfo): New function.
15010 (syms_of_fns): Change accordingly.
15011
15012 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
15013
150142008-02-01 Dave Love <fx@gnu.org>
15015
15016 * casetab.c (init_casetab_once, init_casetab_once): Fix
15017 CHAR_TABLE_SET call.
15018
15019 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
15020
15021 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
15022
15023 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
15024 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
15025 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
15026
15027 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
15028
15029 * coding.c (ENCODE_DESIGNATION, decode_eol)
15030 (make_conversion_work_buffer, code_conversion_restore)
15031 (Fdefine_coding_system_internal): Convert Lisp types.
15032 (code_conversion_restore): Use EQ, not ==.
15033 (Fencode_coding_string): Fix code_convert_string call.
15034
15035 * coding.h (code_convert_region): Fix prototype.
15036
15037 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
15038
15039 * fontset.c (fontset_ref, fontset_set, fs_load_font)
15040 (Ffontset_info): Convert Lisp types.
15041
15042 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
15043
15044 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
15045
15046 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
15047
15048 * chartab.c: Include "...h", not <...h> in some cases.
15049
15050 * callproc.c (Fcall_process): Remove unused variables.
15051
150522008-02-01 Dave Love <fx@gnu.org>
15053
15054 * coding.c (Fset_coding_system_priority): Allow null arg list.
15055
150562008-02-01 Dave Love <fx@gnu.org>
15057
15058 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
15059 (Fself_insert_and_exit): Use CHARACTERP.
15060
15061 * callproc.c (Fcall_process): Remove unused vars.
15062
15063 * xterm.c (XTread_socket): Add extra dead keysyms.
15064
15065 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
15066
15067 * dispextern.h: Remove prototypes for redraw_frame,
15068 redraw_garbaged_frames.
15069
15070 * cmds.c (Fself_insert_command): Use CHARACTERP.
15071
15072 * chartab.c (make_sub_char_table): Remove unused var.
15073 (Fset_char_table_default, Fmap_char_table): Doc fix.
15074
15075 * keymap.c (access_keymap): Remove generic char code.
15076 (push_key_description): Use CHARACTERP.
15077
150782008-02-01 Dave Love <fx@gnu.org>
15079
15080 * charset.c: Doc fixes.
15081 (Funify_charset): Extra checking.
15082
150832008-02-01 Dave Love <fx@gnu.org>
15084
15085 * lread.c: Remove some unused variables.
15086 (safe_to_load_p): If safe, return the magic number version byte.
15087 (Fload): Maybe use load-with-code-conversion.
15088
150892008-02-01 Kenichi Handa <handa@m17n.org>
15090
15091 * category.c (Fmodify_category_entry): Don't modify the contents
15092 of category_set for characters out of the range. Avoid
15093 unnecessary modification.
15094
15095 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
15096 Vchar_unify_table. The default value of the table is now nil.
15097
15098 * character.c (syms_of_character): Setup Vchar_width_table for
15099 eight-bit-control and raw-byte chars.
15100
15101 * charset.h (enum define_charset_arg_index): Delete
15102 charset_arg_parents and add charset_arg_subset and
15103 charset_arg_superset.
15104 (enum charset_attr_index): Delete charset_parents and add
15105 charset_subset and charset_superset.
15106 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
15107 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
15108 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
15109 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
15110 (CHARSET_SUPERSET): New macros.
15111 (charset_work): Extern it.
15112 (ENCODE_CHAR): Use charset_work.
15113 (CHAR_CHARSET_P): Adjust for the change of encoder format.
15114 (map_charset_chars): Extern it.
15115
15116 * charset.c (load_charset_map): Set the default value of encoder
15117 and deunifier char-tables to nil.
15118 (map_charset_chars): Change argument. Change callers. Use
15119 map_char_table_for_charset instead of map_char_table.
15120 (Fmap_charset_chars): New optional args from_code and to_code.
15121 (Fdefine_charset_internal): Adjust for the change of
15122 `define-charset' (:parents -> :subset or :superset).
15123 (charset_work): New variable.
15124 (encode_char, syms_of_charset): Adjust for the change of
15125 Fdefine_charset_internal.
15126 (Ffind_charset_string): Setup the vector `charsets' correctly.
15127
15128 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
15129 the previous change.
15130 (char_table_ref_and_range): Adjust for the above change.
15131 (map_sub_char_table_for_charset): New function.
15132 (map_char_table_for_charset): New function.
15133
15134 * keymap.c (describe_vector): Handle a char-table directly here.
15135 (describe_char_table): Delete.
15136
15137 * lisp.h (map_charset_chars): Delete.
15138
151392008-02-01 Dave Love <fx@gnu.org>
15140
15141 * fns.c (count_combining): Comment out (unused).
15142 (Flocale_codeset): New.
15143 (syms_of_fns): Defsubr it.
15144
15145 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
15146 (size_t): Remove.
15147
151482008-02-01 Dave Love <fx@gnu.org>
15149
15150 * Makefile.in (chartab.o): Depend on charset.h.
15151
151522008-02-01 Kenichi Handa <handa@m17n.org>
15153
15154 * character.c (syms_of_character): Set the default value of
15155 Vprintable_chars to Qnil.
15156
151572008-02-01 Dave Love <fx@gnu.org>
15158
15159 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
15160
151612008-02-01 Kenichi Handa <handa@m17n.org>
15162
15163 * charset.c (load_charset_map): Handle the case that from < to
15164 correctly.
15165
15166 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
15167 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
15168 Pay attention to raw-8-bit chars.
15169
151702008-02-01 Kenichi Handa <handa@m17n.org>
15171
15172 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
15173 It is not bytecompiled now.
15174
15175 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
15176 (charset_jisx0208): New variables.
15177 (Fdefine_charset_internal): Setup them if appropriate.
15178 (init_charset_once): Initialize them to -1.
15179
15180 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
15181 (charset_jisx0208): Extern them.
15182
15183 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
15184 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
15185 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
15186 (setup_iso_safe_charsets): Fix arguments to Fassq.
15187 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
15188 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
15189 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
15190 (encode_coding_iso_2022): Change the 1st arg to
15191 ENCODE_ISO_CHARACTER to a variable.
15192
151932008-02-01 Kenichi Handa <handa@m17n.org>
15194
15195 * charset.h (enum define_charset_arg_index): New enums
15196 charset_arg_min_code and charset_arg_max_code.
15197 (struct charset): New member char_index_offset.
15198
15199 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
15200 Take charset->char_index_offset into account.
15201 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
15202 args[charset_arg_max_code]. Setup charset.char_index_offset.
15203 (syms_of_charset): Fix args to Fdefine_charset_internal.
15204
152052008-02-01 Dave Love <fx@gnu.org>
15206
15207 * coding.c (decode_coding_utf_8): Reject overlong sequences.
15208
152092008-02-01 Dave Love <fx@gnu.org>
15210
15211 * coding.c: Doc fixes.
15212 (Fcoding_system_aliases): Fix return value.
15213 (Qmac): Remove (duplicated) definition.
15214
152152008-02-01 Dave Love <fx@gnu.org>
15216
15217 * charset.c (Fcharset_priority_list, Fset_charset_priority): New
15218 functions.
15219
15220 * character.c (Fstring): Doc fix.
15221
15222 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
15223
15224 * fontset.c (Ffontset_info): Doc fix. Return charset names, not
15225 ids.
15226 (font-encoding-alist): Doc fix.
15227
152282008-02-01 Dave Love <fx@gnu.org>
15229
15230 * term.c (costs_set): Declare static, non-initialized for pcc.
15231 (encode_terminal_code): Remove unused var.
15232
15233 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
15234 for K&R.
15235
15236 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
15237
15238 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
15239 (suffixes): Move out of make_subsidiaries for K&R.
15240
15241 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
15242
15243 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
15244
152452008-02-01 Dave Love <fx@gnu.org>
15246
15247 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
15248
15249 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
15250
152512008-02-01 Yong Lu <lyongu@asia-infonet.com>
15252
15253 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
15254
15255 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
15256
152572008-02-01 Kenichi Handa <handa@m17n.org>
15258
15259 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
15260 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
15261
152622008-02-01 Kenichi Handa <handa@m17n.org>
15263
15264 * coding.c (decode_coding_charset): Adjust for the change of
15265 Fdefine_coding_system_internal.
15266 (Fdefine_coding_system_internal): For a coding system of
15267 `charset' type, store a list of charset IDs in
15268 `charset_attr_charset_valids' element of coding attributes.
15269
152702008-02-01 Kenichi Handa <handa@m17n.org>
15271
15272 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
15273 (emacs_mule_char): New arg src. Delete arg `composition'. Change
15274 caller. Handle 2-byte and 3-byte charsets correctly.
15275 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
15276 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
15277 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
15278 (DECODE_EMACS_MULE_21_COMPOSITION): Call
15279 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
15280 sequence.
15281 (decode_coding_emacs_mule): Handle composition correctly. Rewind
15282 `src' and `consumed_chars' correctly before calling emacs_mule_char.
15283 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
15284 and alt&rule composition.
15285 (decode_coding_iso_2022): Handle composition correctly.
15286 (init_coding_once): Setup emacs_mule_bytes for private charsets.
15287
15288 * charset.c (Fdefine_charset_internal): Fix bug for the case of
15289 re-defining a charset. If the charset has :emacs-mule-id, setup
15290 emacs_mule_bytes.
15291 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
15292
152932008-02-01 Kenichi Handa <handa@m17n.org>
15294
15295 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
15296 (encode_coding_big5, encode_coding_charset): If coding requires safe
15297 encoding, produce a character specified by
15298 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
15299
153002008-02-01 Dave Love <fx@gnu.org>
15301
15302 * xterm.c (XSetIMValues): Declare.
15303
15304 * process.c: Conditionally include sys/wait.h, pty.h.
15305
15306 * print.c (print_object): Fix print format for 64-bit systems.
15307
15308 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
15309
15310 * buffer.c (emacs_strerror): Declare.
15311
15312 * fontset.c (Fclear_face_cache): Declare.
15313 (accumulate_font_info): Comment-out (unused).
15314 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
15315 variables.
15316
15317 * character.h (string_escape_byte8): Declare.
15318
15319 * charset.c (load_charset_map, load_charset_map_from_file): Remove
15320 unused vars.
15321 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
15322 (Fmap_charset_chars): Doc fix.
15323
15324 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
15325 (Fset_coding_system_priority, Fset_coding_system_priority)
15326 (Fdefine_coding_system_internal): Doc fix.
15327
153282008-02-01 Dave Love <fx@gnu.org>
15329
15330 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
15331
153322008-02-01 Kenichi Handa <handa@m17n.org>
15333
15334 * character.c (string_escape_byte8): Make multibyte string with
15335 correct size.
15336
15337 * charset.c (Fmake_char): Delete unnecessary code.
15338
153392008-02-01 Kenichi Handa <handa@m17n.org>
15340
15341 * xfns.c (x_encode_text): Allocate coding.destination here, and
15342 call encode_coding_object with dst_object Qnil.
15343
15344 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
15345 multibyte form correctly.
15346
15347 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
15348 against Vfont_encoding_alist.
15349
15350 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
15351 handling of charset list.
15352 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
15353 (decode_coding_object): Move point to coding->dst_pos before
15354 calling post-read-conversion function.
15355 (encode_coding_object): Give correct arguments to
15356 pre-write-conversion. Ignore the return value of
15357 pre-write-conversion function. Pay attention to the case that
15358 pre-write-conversion changes the current buffer. If dst_object is
15359 Qt, even if coding->src_bytes is zero, allocate at least one byte
15360 to coding->destination.
15361
15362 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
15363
15364 * charset.c (Fmake_char): Make it more backward compatible.
15365 (Fmap_charset_chars): Fix docstring.
15366
153672008-02-01 Dave Love <fx@gnu.org>
15368
15369 * coding.c: Doc fixes.
15370 (Fdefine_coding_system_alias): Use names, not symbols, in
15371 coding-system-alist.
15372
153732008-02-01 Kenichi Handa <handa@m17n.org>
15374
15375 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
15376 of calling free_realized_face.
15377
153782008-02-01 Yong Lu <lyongu@asia-infonet.com>
15379
15380 * charset.c (read_hex): Don't treat SPC as a comment starter.
15381 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
15382 (Fdecode_char): Fix typo.
15383
153842008-02-01 Kenichi Handa <handa@m17n.org>
15385
15386 * charset.h (struct charset): New member `code_space_mask'.
15387
15388 * coding.c (coding_set_source): Delete the local variable beg_byte.
15389 (encode_coding_charset, Fdefine_coding_system_internal):
15390 Delete the local variable charset.
15391 (Fdefine_coding_system_internal): Setup
15392 attrs[coding_attr_charset_valids] correctly.
15393
15394 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
15395 member to check if CODE is valid or not.
15396 (Fdefine_charset_internal): Initialize `code_space_mask' member.
15397 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
15398 is within the range of charset->min_code and carset->max_code.
15399
154002008-02-01 Dave Love <fx@gnu.org>
15401
15402 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
15403
15404 * dispextern.h (generate_ascii_font): Fix return type.
15405
15406 * xfaces.c (generate_ascii_font): Fix arg declaration.
15407
15408 * coding.c (coding_inherit_eol_type)
15409 (Fset_terminal_coding_system_internal)
15410 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
15411
154122008-02-01 Kenichi Handa <handa@m17n.org>
15413
15414 * coding.c (decode_coding_charset, encode_coding_charset): Handle
15415 multiple charsets correctly.
15416
154172008-02-01 Kenichi Handa <handa@m17n.org>
15418
15419 * search.c (boyer_moore): Fix handling of multibyte character
15420 translation.
15421
15422 * xdisp.c (display_mode_element): When the variable `elt' is
15423 changed, update `this' and `lisp_string'.
15424
154252008-02-01 Kenichi Handa <handa@m17n.org>
15426
15427 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
15428
15429 * callproc.c (Fcall_process): Be sure to give the current buffer
15430 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
15431
15432 * charset.c (struct charset_map_entries): New struct.
15433 (load_charset_map): Rename from parse_charset_map. New args
15434 entries and n_entries. Change caller.
15435 (load_charset_map_from_file): Rename from load_charset_map.
15436 Change caller. New arg control_flag. Call load_charset_map at
15437 the tail.
15438 (load_charset_map_from_vector): New function.
15439 (Fdefine_charset_internal): Setup charset.compact_codes_p.
15440 (encode_char): If the charset is compact, change a character index
15441 to a code point.
15442
15443 * coding.c (coding_alloc_by_making_gap): Check the case that the
15444 source and destination are the same correctly.
15445 (decode_coding_raw_text): Set coding->consumed_char and
15446 coding->consumed to 0.
15447 (produce_chars): If coding->chars_at_source is nonzero, update
15448 coding->consumed_char and coding->consumed before calling
15449 alloc_destination.
15450 (Fdefine_coding_system_alias): Register ALIAS in
15451 Vcoding_system_alist.
15452 (syms_of_coding): Define `no-conversion' coding system at the tail.
15453
15454 * fileio.c (Finsert_file_contents): Set coding_system instead of
15455 val. If the current buffer is multibyte, always call
15456 decode_coding_gap.
15457
15458 * xfaces.c (try_font_list): Give higher priority to fontset's
15459 family than face's family.
15460
154612008-02-01 Kenichi Handa <handa@m17n.org>
15462
15463 * callproc.c (Fcall_process): Be sure to give the current buffer
15464 to decode_coding_c_string.
15465
15466 * xfaces.c (try_font_list): Give a family specified in a fontset
15467 higher priority than a family specified in a face.
15468
154692008-02-01 Kenichi Handa <handa@m17n.org>
15470
15471 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
15472 Fix arguments to insert_from_buffer.
15473
15474 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
15475
154762008-02-01 Kenichi Handa <handa@m17n.org>
15477
15478 * coding.c (produce_chars): Set the variable `multibytep' correctly.
15479 (decode_coding_gap): Set coding->dst_multibyte correctly.
15480
154812008-02-01 Kenichi Handa <handa@m17n.org>
15482
15483 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
15484 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
15485 (encode_coding_utf_16): Substitute coding->default_char for
15486 non-Unicode characters.
15487 (decode_coding): Don't call record_insert here.
15488 (setup_coding_system): Initialize `surrogate' of
15489 coding->spec.utf_16 to 0.
15490 (EMIT_ONE_BYTE): Fix for multibyte case.
15491
15492 * insdel.c (insert_from_gap): Call record_insert.
15493
154942008-02-01 Kenichi Handa <handa@m17n.org>
15495
15496 * casefiddle.c (casify_region): Fix multibyte case.
15497
15498 * character.c (c_string_width): Add return type `int'.
15499 (char_string_with_unification): Delete arg ADVANCED.
15500
15501 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
15502 (CHAR_STRING): Adjust for the change of char_string_with_unification.
15503 (CHAR_STRING_ADVANCE): Make it do-while statement.
15504
15505 * chartab.c (sub_char_table_set_range): Optimize for the case
15506 DEPTH == 3. Add workaround code for a GCC optimization bug.
15507
15508 * charset.c (parse_charset_map): Remove an unused variable.
15509
15510 * coding.c: Delete unused variables.
15511
15512 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
15513 earlier. If inserted is zero and the coding system doesn't
15514 require flushing, don't call decode_coding_gap.
15515
15516 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
15517
155182008-02-01 Kenichi Handa <handa@m17n.org>
15519
15520 The following changes are for using Unicode as an internal
15521 character model, and use UTF-8 format for buffer/string
15522 representation.
15523
15524 * .gdbinit (xchartable): Adjust for the change of char table structure.
15525 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
15526
15527 * Makefile.in (obj): Add character.o and chartab.o.
15528 (lisp, shortlisp): Remove utf-8.elc.
15529 (*.o): For many files, change dependency on charset.h to
15530 character.h, and add dependency on character.h.
15531 (character.o, chartab.o): New targets.
15532
15533 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
15534 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
15535 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
15536 of "charset.h".
15537
15538 * dired.c, filelock.c: Include "character.h".
15539
15540 * alloc.c: Include "character.h" instead of "charset.h".
15541 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
15542 (syms_of_alloc): Remove defsubr for Smake_char_table.
15543
15544 * buffer.c: Include "character.h" instead of "charset.h", don't
15545 include "coding.h".
15546 (Fset_buffer_multibyte): Adjust for UTF-8.
15547
15548 * buffer.h: EXFUN Fbuffer_live_p.
15549
15550 * callproc.c: Include "character.h" instead of "charset.h".
15551 (Fcall_process): Big change for the new code-conversion APIs.
15552
15553 * casetab.c: Include "character.h" instead of "charset.h".
15554 (set_canon, set_identity, shuffle): Adjust for the new
15555 map_char_table spec.
15556 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
15557 accessing the char table structure.
15558
15559 * chartab.c: New file that implements char table.
15560
15561 * category.c: Include "character.h".
15562 (copy_category_entry): New function.
15563 (copy_category_table): Call map_char_table and copy_category_entry.
15564 (Fmake_category_table): Initialize all top-level slots.
15565 (char_category_set): New function.
15566 (modify_lower_category_set): Delete.
15567 (Fmodify_category_entry): Call char_table_ref_and_range.
15568
15569 * category.h (CATEGORY_SET): Just call char_category_set.
15570
15571 * ccl.c: Include "character.h".
15572 (Qccl, Qcclp): New variables.
15573 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
15574 it's less than 256.
15575 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
15576 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
15577 and DST type.
15578 (ccl_driver): Change types of argument, adjust code accordingly.
15579 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
15580 ccl_driver.
15581 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
15582
15583 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
15584 New members src_multibyte, dst_multibyte, consumed, and produced.
15585 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
15586 (CODING_SPEC_CCL_PROGRAM): New macro.
15587 (ccl_driver): Update prototype.
15588 (Qccl, Qcclp, Fccl_program_p): Extern them.
15589 (CHECK_CCL_PROGRAM): New macro.
15590
15591 * character.c, character.h, chartab.c: New files.
15592
15593 * charset.c: Mostly re-written. Move character and multibyte sequence
15594 handling codes to character.c.
15595
15596 * charset.h: Mostly re-written. Move character and multibyte sequence
15597 handling codes to character.h.
15598
15599 * coding.c, coding.h: Mostly re-written.
15600
15601 * composite.c: Include "character.h" instead of "charset.h".
15602 (CHAR_WIDTH): Move to character.h.
15603 (HASH_KEY, HASH_VALUE): Delete.
15604
15605 * composite.h (enum composition_method): Change order of enumeration
15606 symbols.
15607
15608 * data.c: Include "character.h" instead of "charset.h".
15609 (Faref): Call CHAR_TABLE_REF for a char table.
15610 (Faset): Call CHAR_TABLE_SET for a char table.
15611
15612 * dispextern.h (free_realized_face, check_face_attribytes)
15613 (generate_ascii_font): Extern them.
15614 (free_realized_multibyte_face): Delete extern.
15615
15616 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
15617 table structure.
15618
15619 * editfns.c: Include "character.h" instead of "charset.h".
15620 (Fchar_to_string): Always call CHAR_STRING.
15621
15622 * emacs.c (main): Call init_charset_once, init_charset,
15623 syms_of_chartab, and syms_of_character.
15624
15625 * fileio.c: Include "character.h" instead of "charset.h".
15626 (Finsert_file_contents): Big change for the new code-conversion API.
15627 (choose_write_coding_system, Fwrite_region): Likewise.
15628 (build_annotations_2): Delete.
15629 (e_write): Big change for the new code-conversion API.
15630
15631 * fns.c: Include "character.h" instead of "charset.h".
15632 (copy_sub_char_table): Move to chartab.c.
15633 (Fcopy_sequence): Call copy_char_table for a char table.
15634 (concat): Delete codes calling count_multibyte.
15635 (string_char_to_byte, string_byte_to_char): Adjust for the new
15636 multibyte form.
15637 (internal_equal): Adjust for the change of char table structure.
15638 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
15639 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
15640 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
15641 (char_table_translate, optimize_sub_char_table)
15642 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
15643 chartab.c.
15644 (char_table_ref_and_index): Delete.
15645 (HASH_KEY, HASH_VALUE): Move to lisp.h.
15646 (Fmd5): Call preferred_coding_system instead of accessing
15647 Vcoding_category_list. Adjust for the new code-conversion API.
15648 (syms_of_fns): Move defsubr for char table related functions to
15649 chartab.c.
15650
15651 * fontset.c: Mostly re-written.
15652
15653 * fontset.h (struct font_info): Change type of the member encoding_type.
15654 (enum FONT_SPEC_INDEX): New enum.
15655 (fontset_font_pattern, fs_load_font): Update prototype.
15656 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
15657
15658 * indent.c: Include "character.h" instead of "charset.h".
15659 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
15660
15661 * insdel.c: Include "character.h" instead of "charset.h".
15662 (copy_text): Don't refer to Vnonascii_translation_table.
15663 (insert_from_gap): New function.
15664
15665 * keyboard.c: Include "character.h" instead of "charset.h".
15666 (command_loop_1): Never call direct_output_forward_char before
15667 a non-ASCII character.
15668 (read_char): If Vkeyboard_translate_table is a char table, always
15669 translate a character.
15670
15671 * keymap.c: Include "character.h".
15672 (store_in_keymap): Handle the case that IDX is a cons.
15673 (Fdefine_key): Handle the case that KEY is a cons and the car part
15674 is also a cons (range).
15675 (push_key_description): Adjust for the new character code.
15676 (describe_vector): Call describe_char_table for a char table.
15677 (describe_char_table): New function.
15678
15679 * keymap.h (describe_char_table): Extern it.
15680
15681 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
15682 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
15683 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
15684 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
15685 Delete.
15686 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
15687 structure.
15688 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
15689 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
15690 (CHARTAB_SIZE_BITS_3): New macros.
15691 (chartab_size): Extern it.
15692 (struct Lisp_Char_Table): Re-design.
15693 (struct Lisp_Sub_Char_Table): New structure.
15694 (HASH_KEY, HASH_VALUE): Move from fns.c.
15695 (CHARACTERBITS): Define as 22.
15696 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
15697 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
15698 (GC_SUB_CHAR_TABLE_P): New macro.
15699 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
15700 (code_convert_string_norecord): Deleted extern.
15701 (init_character_once, syms_of_character, init_charset)
15702 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
15703
15704 * lread.c: Include "character.h".
15705 (read_multibyte): New arg NBYTES.
15706 (read_escape): Change the meaning of returned *BYTEREP.
15707 (to_multibyte): Delete.
15708 (read1): Adjust the handling of char table and string.
15709
15710 * print.c: Include "character.h" instead of "charset.h".
15711 (print_string): Convert 8-bit raw bytes to octal form by
15712 string_escape_byte8.
15713 (print_object): Adjust for the new multibyte form. Print 8-bit
15714 raw bytes always in octal form. Handle sub char table correctly.
15715
15716 * process.c: Include "character.h" instead of "charset.h".
15717 (read_process_output, send_process): Adjust for the new
15718 code-conversion API.
15719
15720 * puresize.h (BASE_PURESIZE): Increase.
15721
15722 * regex.c: Include "character.h" instead of "charset.h".
15723 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
15724 (regex_compile): Accept a range whose starting and ending
15725 character have different leading bytes.
15726 (analyse_first): Adjust for the above change.
15727
15728 * search.c: Include "character.h" instead of "charset.h".
15729 (search_buffer, boyer_moore): Adjust for the new multibyte form.
15730 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
15731
15732 * syntax.c: Include "character.h" instead of "charset.h".
15733 (syntax_parent_lookup): Delete.
15734 (Fmodify_syntax_entry): Accept a cons as CHAR.
15735 (skip_chars): Adjust for the new multibyte form.
15736 (init_syntax_once): Call char_table_set_range instead of directly
15737 accessing the structure of a char table.
15738
15739 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
15740 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
15741 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
15742 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
15743
15744 * term.c: Include "buffer.h" and "character.h".
15745 (encode_terminal_code, write_glyphs): Adjust for the new
15746 code-conversion API.
15747 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
15748
15749 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
15750
15751 * xdisp.c: Include "character.h".
15752 (get_next_display_element): Adjust for the new multibyte form.
15753 (disp_char_vector): Adjust for the new char table structure.
15754 (decode_mode_spec_coding): Adjust for the new structure of
15755 coding system.
15756 (decode_mode_spec): Adjust for the new code-conversion API.
15757
15758 * xfaces.c: Include "character.h" instead of "charset.h".
15759 (load_face_font): Adjust for the change of choose_face_font and
15760 FS_LOAD_FONT.
15761 (generate_ascii_font): New function.
15762 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
15763 (set_font_frame_param): Adjust for the change of choose_face_font.
15764 (free_realized_face): Make it public.
15765 (free_realized_faces_for_fontset): Rename from
15766 free_realized_multibyte_face. Free also faces realized for ASCII.
15767 (choose_face_font): Change arguments. Adjust for the change of
15768 fontset_font_pattern and FS_LOAD_FONT.
15769
15770 * xfns.c: Include "character.h".
15771 (x_encode_text): Adjust for the new code-conversion API.
15772
15773 * xselect.c: Don't include "charset.h".
15774 (selection_data_to_lisp_data): Adjust for the new code conversion API.
15775
15776 * xterm.c: Include "character.h".
15777 (x_encode_char): New argument CHARSET. Change caller.
15778 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
15779 Call ENCODE_CHAR instead of SPLIT_CHAR.
15780 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
15781 CHAR_WIDTH instead of CHARSET_WIDTH.
15782 (XTread_socket): Adjust for the new code-conversion API.
15783 (x_new_font): Adjust for the change of FS_LOAD_FONT.
15784 (x_load_font): Adjust for the change of struct font.
15785
157862008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15787
15788 * xfaces.c (face_at_buffer_position): Remove unused vars.
15789
157902008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15791
15792 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
15793 Fix overflow checking.
15794
157952008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15796
15797 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
15798 Cancel previous change.
15799
158002008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15801
15802 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
15803 ccl->eight_bit_control. Fix check for buffer overflow.
15804 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
15805 (ccl_driver): Initialize extra_bytes to 0.
15806
158072008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
15808
15809 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
15810 return it ORed with ctrl_modifier.
15811
158122008-01-29 Miles Bader <miles@gnu.org>
15813
15814 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
15815
158162008-01-28 Jason Rumney <jasonr@gnu.org>
15817
15818 * w32.c (stat): Don't double check for networked drive.
15819
158202008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
15821
15822 * window.c (run_window_configuration_change_hook): New function.
15823 Code extracted from set_window_buffer. Set the selected frame.
15824 (set_window_buffer): Use it.
15825 * window.h (run_window_configuration_change_hook): Declare.
15826 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
15827
15828 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
15829
158302008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
15831
15832 * Makefile.in: Remove references to unused macros.
15833
158342008-01-26 Eli Zaretskii <eliz@gnu.org>
15835
15836 * w32.c (g_b_init_get_sid_sub_authority)
15837 (g_b_init_get_sid_sub_authority_count): New static variables.
15838 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
15839 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
15840 (init_user_info): Use them to retrieve uid and gid.
15841 Use 500/513, the Windows defaults, as Administrator's uid/gid.
15842 (fstat): Use pw_uid and pw_gid from the_passwd structure for
15843 st_uid and st_gid of the file.
15844
158452008-01-26 Jason Rumney <jasonr@gnu.org>
15846
15847 * w32.c (logon_network_drive): New function.
15848 (stat): Use it.
15849
158502008-01-26 Chong Yidong <cyd@stupidchicken.com>
15851
15852 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
15853 invisible text covered with an ellipsis.
15854
158552008-01-25 Richard Stallman <rms@gnu.org>
15856
15857 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
15858 jump back to beginning. Move some other initializations after that.
15859 (Qwindow_text_change_functions, Vwindow_text_change_functions):
15860 New variables.
15861 (syms_of_xdisp): Init them.
15862
15863 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
15864
15865 * buffer.c (reset_buffer_local_variables):
15866 Implement `permanent-local-hook'.
15867 (Qpermanent_local_hook): New variable.
15868 (syms_of_buffer): Init and staticpro it.
15869
158702008-01-25 Michael Albinus <michael.albinus@gmx.de>
15871
15872 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
15873
158742008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
15875
15876 * fns.c (Fclrhash): Return TABLE.
15877
158782008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15879
15880 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
15881 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
15882 is set even without positional changes.
15883 (x_scroll_bar_clear): Set bar->redraw_needed_p.
15884
15885 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
15886
158872008-01-23 Jason Rumney <jasonr@gnu.org>
15888
15889 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
15890
15891 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
15892 the unicode range available in MULE by locale-coding-system.
15893 Improve dbcs lead byte detection. Set event timestamp and modifiers
15894 earlier.
15895
158962008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15897
15898 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
15899 [MAC_OSX] (init_mac_osx_environment): Initialize it.
15900 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
15901 when used on child processes.
15902
159032008-01-21 Michael Albinus <michael.albinus@gmx.de>
15904
15905 * dbusbind.c (Fdbus_method_return_internal): Rename from
15906 Fdbus_method_return.
15907 (Fdbus_unregister_object): Move to dbus.el.
15908 (Fdbus_call_method, Fdbus_method_return_internal)
15909 (Fdbus_send_signal): Improve debug messages.
15910
159112008-01-20 Martin Rudalics <rudalics@gmx.at>
15912
15913 * undo.c (undo_inhibit_record_point): New variable.
15914 (syms_of_undo): Initialize it.
15915 (record_point): Don't record point when undo_inhibit_record_point
15916 is set.
15917
159182008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
15919
15920 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
15921
15922 * xdisp.c (Qauto_hscroll_mode): New var.
15923 (syms_of_xdisp): Initialize it.
15924 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
15925 window's buffer.
15926 (hscroll_windows): Don't check automatic_hscrolling_p here.
15927
15928 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
15929 vscroll if we're setting window-buffer to the value it already has.
15930
159312008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
15932
15933 * m/intel386.h: Remove references to XENIX.
15934
159352008-01-17 Andreas Schwab <schwab@suse.de>
15936
15937 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
15938 instead of HAVE_X86_64_LIB64_DIR.
15939 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
15940
159412008-01-17 Glenn Morris <rgm@gnu.org>
15942
15943 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
15944 to HAVE_X86_64_LIB64_DIR.
15945
159462008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
15947
15948 * s/irix3-3.h:
15949 * s/irix4-0.h:
15950 * s/386-ix.h:
15951 * s/domain.h:
15952 * s/hpux9-x11r4.h:
15953 * s/hpux9shxr4.h: Remove files for systems no longer supported.
15954
15955 * sysdep.c: Remove code containing references to symbols defined
15956 by unsupported systems.
15957
159582008-01-16 Glenn Morris <rgm@gnu.org>
15959
15960 * coding.c (select-safe-coding-system-function): Doc fix.
15961
159622008-01-15 Glenn Morris <rgm@gnu.org>
15963
15964 * config.in: Revert 2008-01-13 change: this is a generated file.
15965
159662008-01-13 Tom Tromey <tromey@redhat.com>
15967
15968 * lisp.h: Fix typo.
15969
159702008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15971
15972 * m/sequent-ptx.h:
15973 * m/sequent.h:
15974 * s/ptx.h:
15975 * s/ptx4-2.h:
15976 * s/ptx4.h: Remove files for systems no longer supported.
15977
15978 * callproc.c (Fcall_process): Fix previous change.
15979
159802008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
15981
15982 * unexsunos4.c: Remove file, system not supported anymore.
15983
15984 * m/mips.h:
15985 * m/intel386.h:
15986 * callproc.c:
15987 * config.in:
15988 * ecrt0.c:
15989 * emacs.c:
15990 * fileio.c:
15991 * frame.c:
15992 * getpagesize.h:
15993 * keyboard.c:
15994 * lread.c:
15995 * process.c:
15996 * puresize.h:
15997 * sysdep.c:
15998 * systty.h:
15999 * syswait.h:
16000 * unexec.c:
16001 * xdisp.c:
16002 * alloc.c: Remove code containing references to symbols defined by
16003 unsupported systems.
16004
160052008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
16006
16007 * coding.c (detect_coding_mask): Fix previous change.
16008
160092008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
16010
16011 * coding.c (detect_coding_iso2022): New arg
16012 latin_extra_code_state. Allow Latin extra codes only
16013 when *latin_extra_code_state is nonzero.
16014 (detect_coding_mask): If there is a NULL byte, detect the encoding
16015 as UTF-16 or binary. If Latin extra codes exist, detect the
16016 encoding as ISO-2022 only when there's no other proper encoding is
16017 found.
16018
160192008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16020
16021 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
16022 #ifdef MAC_OS.
16023
160242008-01-08 Richard Stallman <rms@gnu.org>
16025
16026 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
16027
160282008-01-06 Nick Roberts <nickrob@snap.net.nz>
16029
16030 * keyboard.c (parse_menu_item): Don't enclose key bindings on
16031 menu bar in parentheses.
16032
160332008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
16034
16035 * m/7300.h:
16036 * m/acorn.h:
16037 * m/alliant-2800.h:
16038 * m/alliant.h:
16039 * m/alliant1.h:
16040 * m/alliant4.h:
16041 * m/altos.h:
16042 * m/amdahl.h:
16043 * m/apollo.h:
16044 * m/att3b.h:
16045 * m/aviion-intel.h:
16046 * m/aviion.h:
16047 * m/celerity.h:
16048 * m/clipper.h:
16049 * m/cnvrgnt.h:
16050 * m/convex.h:
16051 * m/cydra5.h:
16052 * m/delta88k.h:
16053 * m/dpx2.h:
16054 * m/dual.h:
16055 * m/elxsi.h:
16056 * m/f301.h:
16057 * m/gould-np1.h:
16058 * m/gould.h:
16059 * m/i860.h:
16060 * m/ibmps2-aix.h:
16061 * m/ibmrt-aix.h:
16062 * m/ibmrt.h:
16063 * m/irist.h:
16064 * m/is386.h:
16065 * m/isi-ov.h:
16066 * m/mega68.h:
16067 * m/mg1.h:
16068 * m/news-r6.h:
16069 * m/news-risc.h:
16070 * m/news.h:
16071 * m/nh3000.h:
16072 * m/nh4000.h:
16073 * m/ns16000.h:
16074 * m/ns32000.h:
16075 * m/nu.h:
16076 * m/orion.h:
16077 * m/orion105.h:
16078 * m/paragon.h:
16079 * m/pfa50.h:
16080 * m/plexus.h:
16081 * m/pyramid.h:
16082 * m/pyrmips.h:
16083 * m/sh3el.h:
16084 * m/sps7.h:
16085 * m/sr2k.h:
16086 * m/stride.h:
16087 * m/sun1.h:
16088 * m/sun2.h:
16089 * m/sun3-68881.h:
16090 * m/sun3-fpa.h:
16091 * m/sun3-soft.h:
16092 * m/sun3.h:
16093 * m/sun386.h:
16094 * m/symmetry.h:
16095 * m/tad68k.h:
16096 * m/tahoe.h:
16097 * m/targon31.h:
16098 * m/tek4300.h:
16099 * m/tekxd88.h:
16100 * m/tower32.h:
16101 * m/tower32v3.h:
16102 * m/ustation.h:
16103 * m/wicat.h:
16104 * m/xps100.h:
16105 * s/cxux.h:
16106 * s/cxux7.h:
16107 * s/dgux.h:
16108 * s/dgux4.h:
16109 * s/dgux5-4-3.h:
16110 * s/dgux5-4r2.h:
16111 * s/esix.h:
16112 * s/esix5r4.h:
16113 * s/hiuxmpp.h:
16114 * s/hiuxwe2.h:
16115 * s/iris3-5.h:
16116 * s/iris3-6.h:
16117 * s/isc2-2.h:
16118 * s/isc3-0.h:
16119 * s/isc4-0.h:
16120 * s/isc4-1.h:
16121 * s/newsos5.h:
16122 * s/newsos6.h:
16123 * s/osf1.h:
16124 * s/osf5-0.h:
16125 * s/riscix1-1.h:
16126 * s/riscix12.h:
16127 * s/sco4.h:
16128 * s/sco5.h:
16129 * s/sunos4-0.h:
16130 * s/sunos4-1.h:
16131 * s/sunos413.h:
16132 * s/sunos4shr.h:
16133 * s/umax.h:
16134 * s/unipl5-2.h:
16135 * s/xenix.h:
16136 * cxux-crt0.s:
16137 * unexapollo.c:
16138 * unexconvex.c:
16139 * unexenix.c:
16140 * unexsni.c: Remove files for systems no longer supported.
16141
16142 * m/intel386.h: Remove references to unsupported systems.
16143
16144 * w32.c (get_emacs_configuration): Remove reference to i860.
16145
16146 * sysdep.c: Remove dead code.
16147
161482008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
16149
16150 * s/rtu.h:
16151 * m/masscomp.h: Remove files. Platform is obsolete.
16152
161532008-01-04 Michael Albinus <michael.albinus@gmx.de>
16154
16155 * dbusbind.c (Fdbus_method_return): New function.
16156 (xd_read_message): Add the serial number to the event.
16157 (Fdbus_register_method): Activate the function.
16158
161592008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
16160
16161 * keyboard.c (read_key_sequence): Fix typo.
16162
161632008-01-03 Michael Albinus <michael.albinus@gmx.de>
16164
16165 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
16166 (xd_signature, xd_append_arg): Handle element type detection for
16167 empty arrays.
16168 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
16169 SDATA () calls; this must be solved more general.
16170 (Fdbus_register_signal): Use SBYTES instead of strlen.
16171
161722008-01-03 Magnus Henoch <magnus@zemdatav>
16173
16174 * dbusbind.c (xd_append_arg): Use unsigned char instead of
16175 unsigned int for byte values (necessary for big-endian platform).
16176 (Fdbus_call_method): Handle the case of no returned arguments.
16177
161782007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
16179
16180 * dbusbind.c (xd_read_message): Use non-static input_event struct.
16181
161822007-12-31 Magnus Henoch <mange@freemail.hu>
16183
16184 * dbusbind.c (xd_signature): Signature of variant is just "v".
16185
161862007-12-30 Michael Albinus <michael.albinus@gmx.de>
16187
16188 * dbusbind.c: Fix several errors and compiler warnings.
16189 Reported by Tom Tromey <tromey@redhat.com>.
16190 (XD_ERROR, XD_DEBUG_MESSAGE)
16191 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
16192 (xd_append_arg): Part for basic D-Bus types rewritten.
16193 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
16194 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
16195 appropriate.
16196 (xd_read_message): Return Qnil. Don't signal an error; it is not
16197 useful during event reading.
16198 (Fdbus_register_signal): Signal an error if the check for
16199 FUNCTIONP fails.
16200 (Fdbus_register_method): New function. The implementation is not
16201 complete, the call of the function signals an error therefore.
16202 (Fdbus_unregister_object): New function, renamed from
16203 Fdbus_unregister_signal. The initial check signals an error, if
16204 the object is not well formed.
16205
162062007-12-30 Richard Stallman <rms@gnu.org>
16207
16208 * textprop.c (get_char_property_and_overlay):
16209 Signal error if POSITION is out of range in a buffer.
16210
162112007-12-29 Martin Rudalics <rudalics@gmx.at>
16212
16213 * w32fns.c (Fx_create_frame): Make copy of frame parameters
16214 because the original parameters are in pure storage now.
16215
162162007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16217
16218 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
16219
162202007-12-22 Eli Zaretskii <eliz@gnu.org>
16221
16222 * callint.c (syms_of_callint) <command-history>: Add reference to
16223 history-length in the doc string.
16224
162252007-12-17 Jason Rumney <jasonr@gnu.org>
16226
16227 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
16228 before passing as wParam.
16229
162302007-12-22 Michael Albinus <michael.albinus@gmx.de>
16231
16232 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
16233 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
16234 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
16235 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
16236 as number.
16237 (Fdbus_call_method): Fix docstring.
16238
162392007-12-21 Michael Albinus <michael.albinus@gmx.de>
16240
16241 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
16242 New macros.
16243 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
16244 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
16245 Simplify.
16246 (xd_signature): New function.
16247 (xd_append_arg): Compute also signatures. Major rewrite.
16248 (xd_retrieve_arg): Make debug messages friendly.
16249 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
16250 Check for signatures of arguments.
16251
162522007-12-19 Michael Albinus <michael.albinus@gmx.de>
16253
16254 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
16255 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
16256 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
16257 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
16258 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
16259 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
16260 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
16261 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
16262 (xd_retrieve_value): Remove. Functionality included in ...
16263 (xd_append_arg): New function.
16264 (Fdbus_call_method, Fdbus_send_signal): Apply it.
16265
162662007-12-16 Michael Albinus <michael.albinus@gmx.de>
16267
16268 * dbusbind.c (top): Include <stdio.h>.
16269 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
16270 dbus_message_new_method_call and dbus_message_new_signal.
16271 (Fdbus_register_signal): Rename unique_name to uname.
16272 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
16273 non-existing unique name. Fix typos in matching rule. Return an
16274 object which is useful in Fdbus_unregister_signal.
16275 (Fdbus_unregister_signal): Reimplementation, in order to remove
16276 only the corresponding entry.
16277 (Vdbus_registered_functions_table): Change the order of entries.
16278 Apply these changes in xd_read_message and Fdbus_register_signal.
16279
162802007-12-16 Andreas Schwab <schwab@suse.de>
16281
16282 * fileio.c (Finsert_file_contents): Fix overflow check to not
16283 depend on undefined integer overflow.
16284
162852007-12-14 Jason Rumney <jasonr@gnu.org>
16286
16287 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
16288 for characters above 127.
16289
162902007-12-13 Jason Rumney <jasonr@gnu.org>
16291
16292 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
16293 before dereferencing array.
16294 (lookup_vk_code): Remove zero comparison.
16295
162962007-12-14 Michael Albinus <michael.albinus@gmx.de>
16297
16298 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
16299 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
16300 Use `unsigned int' instead of `uint'.
16301 (xd_read_message, Fdbus_register_signal): Split expressions into
16302 multiple lines before operators "&&" and "||", according to the
16303 GNU Coding Standards.
16304
163052007-12-14 Eli Zaretskii <eliz@gnu.org>
16306
16307 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
16308
163092007-12-12 Juri Linkov <juri@jurta.org>
16310
16311 * buffer.c (Frename_buffer): In interactive spec replace
16312 `read-buffer' with `read-string' that uses `buffer-name-history'
16313 as history, and the current buffer's name as default.
16314
163152007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
16316
16317 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
16318 manipulating the backtrace manually.
16319 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
16320 (struct backtrace, backtrace_list): Remove.
16321 (command_loop_1): Remove dead var `no_direct'.
16322
16323 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
16324 preserve non-built-in buffer-local variables.
16325 (Fkill_all_local_variables): Don't re-create&re-set permanent
16326 buffer-local variables.
16327
163282007-12-09 Juri Linkov <juri@jurta.org>
16329
16330 * buffer.c (Frename_buffer): Change interactive spec from "s" to
16331 Lisp code that uses `read-buffer' with current buffer as default.
16332
163332007-12-08 Michael Albinus <michael.albinus@gmx.de>
16334
16335 * dbusbind.c (xd_read_message): Generate an event for every
16336 registered handler. There might be several handlers registered
16337 for the same signal.
16338 (Fdbus_register_signal): Don't overwrite a registration for the
16339 same signal. Add a new registration if handlers are different.
16340 (Vdbus_registered_functions_table): Rework doc string.
16341
163422007-12-07 Michael Albinus <michael.albinus@gmx.de>
16343
16344 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
16345 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
16346 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
16347 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
16348 Unify argument lists.
16349 (xd_read_message, Fdbus_register_signal): Reorder and extend event
16350 arguments and hash table keys. Use unique name for service.
16351 (Fdbus_unregister_signal): Remove checks.
16352 (Vdbus_registered_functions_table): Fix doc string.
16353
163542007-12-05 Magnus Henoch <mange@freemail.hu>
16355
16356 * process.c (make_process): Initialize pty_flag to 0.
16357
163582007-12-05 Jason Rumney <jasonr@gnu.org>
16359
16360 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
16361 specified XBMs.
16362
163632007-12-05 Richard Stallman <rms@gnu.org>
16364
16365 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
16366
163672007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16368
16369 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
16370 New variable.
16371 (mac_try_close_socket) [MAC_OSX]: New function.
16372 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
16373 Update cfsockets_for_select. Replace invalid CFRunLoop source.
16374
16375 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
16376 Use mac_try_close_socket.
16377
163782007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16379
16380 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
16381 reloc_base.
16382 (copy_dysymtab): Compute relocation base here.
16383 (rebase_reloc_address) [__ppc64__]: New function.
16384 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
16385 changed.
16386
163872007-12-05 Jason Rumney <jasonr@gnu.org>
16388
16389 * w32proc.c (sys_spawnve): Quote args with wildcards.
16390
163912007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16392
16393 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
16394 __objc_* sections.
16395 (unrelocate) [_LP64]: Set relocation base to address of data segment.
16396
163972007-12-05 Michael Albinus <michael.albinus@gmx.de>
16398
16399 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
16400 Move check for Vdbus_registered_functions_table to
16401 xd_read_queued_messages.
16402 (xd_read_queued_messages): Protect xd_read_message calls by
16403 internal_condition_case_1.
16404
164052007-12-04 Michael Albinus <michael.albinus@gmx.de>
16406
16407 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
16408 Qdbus_system_bus and Qdbus_session_bus, respectively.
16409 (Vdbus_intern_symbols): Remove.
16410 (Vdbus_registered_functions_table): New hash table.
16411 (XD_SYMBOL_INTERN_SYMBOL): Remove.
16412 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
16413 Rewrite in order to manage registered functions by hash table
16414 Vdbus_registered_functions_table.
16415
164162007-12-03 Jan Djärv <jan.h.d@swipnet.se>
16417
16418 * xterm.c: Update URL to Window Manager Specification in comment.
16419
164202007-12-02 Michael Albinus <michael.albinus@gmx.de>
16421
16422 * config.in (HAVE_DBUS): Add.
16423
16424 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
16425 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
16426 (obj): Add $(DBUS_OBJ).
16427 (LIBES): Add $(DBUS_LIBS).
16428 (dbusbind.o): New target.
16429
16430 * dbusbind.c: New file.
16431
16432 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
16433
16434 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
16435 (Qdbus_event): New Lisp symbol.
16436 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
16437 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
b97439ce 16438 (keys_of_keyboard): Define dbus-event.
aac0c6e3
MR
16439
16440 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
16441
164422007-12-01 Richard Stallman <rms@gnu.org>
16443
16444 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
16445
164462007-11-30 Jason Rumney <jasonr@gnu.org>
16447
16448 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
16449 (w32con_reset_terminal_modes): Clear screen buffer.
16450 (w32_face_attributes): Don't use color indexes that are out of range.
16451 Only reverse the default colors.
16452
16453 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
16454 WINDOWSNT.
16455
16456 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
16457
164582007-11-29 Jason Rumney <jasonr@gnu.org>
16459
16460 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
16461 (w32_face_attributes): Use Vtty_defined_color_alist to determine
16462 if the terminal colors are initialized.
16463 (unspecified_fg, unspecified_bg): Remove unused declarations.
16464
164652007-11-29 Andreas Schwab <schwab@suse.de>
16466
16467 * keyboard.c (apply_modifiers): Fix typo.
16468
164692007-11-29 Richard Stallman <rms@gnu.org>
16470
16471 * keymap.c (Fcurrent_local_map): Doc fix.
16472
164732007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
16474
16475 * s/gnu-kfreebsd.h: New file.
16476
164772007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
16478
16479 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
16480 Don't cast redundantly.
16481
16482 * keyboard.c (KEY_TO_CHAR): New macro.
16483 (parse_modifiers, apply_modifiers): Accept integer arguments.
16484 (read_key_sequence): Use them to unify the "shift->unshift" mapping
16485 for chars and symbol keys.
16486 After doing such remapping, apply function-key-map again.
16487
164882007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
16489
16490 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
16491 compiled anymore.
16492
164932007-11-26 Andreas Schwab <schwab@suse.de>
16494
16495 * process.c (list_processes_1): Fix indentation level of the
16496 command column.
16497
164982007-11-23 Andreas Schwab <schwab@suse.de>
16499
16500 * editfns.c (Fformat): Handle %c specially since it requires the
16501 argument to be of type int.
16502
165032007-11-23 Markus Triska <markus.triska@gmx.at>
16504
16505 * emacs.c (main): Call init_editfns before init_process, since
16506 init_process sets Vprocess_connection_type depending on OS release.
16507
165082007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
16509
16510 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
16511 (find_symbol_value): Use do_symval_forwarding.
16512
16513 * data.c (set_internal): Set the value in the `cons-cell' (for
16514 Buffer_Local_values) not only for frame-local variables.
16515
165162007-11-22 Andreas Schwab <schwab@suse.de>
16517
16518 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
16519 values to sprintf.
16520 * keymap.c (Fsingle_key_description): Likewise.
16521 * print.c (print_object): Likewise.
16522
165232007-11-22 Jan Djärv <jan.h.d@swipnet.se>
16524
16525 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
16526 file for image is nil.
16527
165282007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
16529
16530 * term.c: Include stdarg.h.
16531 (fatal): Implement using varargs.
16532 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
16533
165342007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16535
16536 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
16537 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
16538 Update call to buffer_slot_type_mismatch.
16539 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
16540 (buffer_slot_type_mismatch): Update.
16541 * buffer.c (buffer_local_types): Remove.
16542 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
16543 (defvar_per_buffer): Set the type in the buffer_objfwd.
16544
165452007-11-21 Jason Rumney <jasonr@gnu.org>
16546
16547 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
16548 CreateFileMapping returns NULL on failure.
16549
165502007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
16551
16552 * search.c (Fset_match_data): Remove the `evaporate' feature.
16553 (unwind_set_match_data): Don't use the `evaporate' feature.
16554
165552007-11-21 Jason Rumney <jasonr@gnu.org>
16556
16557 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
16558
16559 * w32console.c (w32con_write_glyphs): Remove unused variables.
16560
165612007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
16562
16563 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
16564
16565 * s/darwin.h (MULTI_KBOARD): Remove.
16566
16567 * macfns.c (x_create_tip_frame, Fx_create_frame)
16568 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
16569
165702007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
16571
16572 * buffer.c (Fbuffer_local_value): Remove redundant test.
16573 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
16574 than in `current-buffer' to match the comment.
16575 Do the swap using swap_in_global_binding.
16576
16577 * data.c (store_symval_forwarding, set_internal):
16578 * eval.c (specbind): Remove dead code.
16579
16580 * coding.c (detect_coding, Fupdate_coding_systems_internal):
16581 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
16582 Since we do not want to see internal Lisp_*fwd objects here.
16583
165842007-11-18 Jan Djärv <jan.h.d@swipnet.se>
16585
16586 * sysdep.c (init_system_name): Use getaddrinfo if available.
16587
16588 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
16589 (x_scroll_bar_note_movement): start, end, with, height in struct
16590 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
16591
165922007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
16593
16594 * puresize.h (BASE_PURESIZE): Increase to 1190000.
16595
165962007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
16597
16598 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
16599 This undoes Richard's change of 14-Oct-2002.
16600
16601 * alloc.c (allocate_other_vector):
16602 * lisp.h (allocate_other_vector): Remove.
16603
16604 * window.c (struct save_window_data): Move non-lisp data to the end
16605 and make it `int' rather than Lisp_Object.
16606 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
16607 Done wrap/unwrap integer values.
16608 (Fset_window_configuration, compare_window_configurations):
16609 Update use of fields to their new types.
16610
16611 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
16612 Turn integer fields into `int'. Merge x_window_low and x_window_high.
16613 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
16614 (SET_SCROLL_BAR_X_WINDOW): Remove.
16615 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
16616 Access the new x_window field directly.
16617 * xterm.c (x_scroll_bar_create): Use a pseudovector.
16618 Don't wrap/unwrap integers into Lisp_Objects.
16619 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
16620 (x_scroll_bar_report_motion):
16621 Don't wrap/unwrap integers into Lisp_Objects.
16622 (x_term_init): Use SDATA.
16623 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
16624 (x_scroll_bar_set_handle, x_scroll_bar_remove)
16625 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
16626 (x_scroll_bar_report_motion, x_scroll_bar_clear):
16627 * xfns.c (x_set_background_color):
16628 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
16629 Access the new x_window field directly.
16630
16631 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
16632 (allocate_pseudovector): Make non-static.
16633
16634 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
16635 (allocate_pseudovector): Declare.
16636 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
16637
166382007-11-15 Andreas Schwab <schwab@suse.de>
16639
16640 * editfns.c (Fformat): Correctly format EMACS_INT values.
16641 Also take precision into account when formatting an integer.
16642
16643 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
16644
166452007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
16646
16647 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
16648 (syms_of_keyboard): Defsubr it.
16649
16650 * data.c (swap_in_global_binding): Fix longstanding bug where
16651 store_symval_forwarding was not called with the right second argument,
16652 thus causing objfwd-ing from being dropped.
16653
166542007-11-14 Juanma Barranquero <lekktu@gmail.com>
16655
16656 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
16657 (Fx_display_pixel_height, Fx_display_planes)
16658 (Fx_display_color_cells, Fx_server_max_request_size)
16659 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16660 (Fx_display_visual_class, Fx_display_save_under):
16661 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
16662 (Fx_display_pixel_height, Fx_display_planes)
16663 (Fx_display_color_cells, Fx_server_max_request_size)
16664 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
16665 (Fx_display_mm_height, Fx_display_mm_width)
16666 (Fx_display_backing_store, Fx_display_visual_class)
16667 (Fw32_select_font, Fx_display_save_under):
16668 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
16669 (Fx_display_pixel_height, Fx_display_planes)
16670 (Fx_display_color_cells, Fx_server_max_request_size)
16671 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
16672 (Fx_display_save_under): Fix typos in docstrings.
16673
166742007-11-14 Juanma Barranquero <lekktu@gmail.com>
16675
16676 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
16677 corresponding to deleted entries; they are an implementation detail.
16678 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
16679 Remove variables.
16680 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
16681 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
16682 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
16683 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
16684 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
16685 (Fw32_define_rgb_color, Fw32_load_color_file)
16686 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
16687 Fix typos in docstrings.
16688 (Fx_server_version): Reflow docstring.
16689 (Fw32_shell_execute): Doc fixes.
16690
166912007-11-13 Juanma Barranquero <lekktu@gmail.com>
16692
16693 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
16694 if w32_parse_hot_key returned nil.
16695
166962007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
16697
16698 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
16699
167002007-11-09 Jason Rumney <jasonr@gnu.org>
d6c952f8 16701
aac0c6e3
MR
16702 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
16703
16704 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
16705
16706 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
16707 Remove W32_SCROLL_BAR_CLICK_EVENT.
16708
16709 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
16710 Add MULTIMEDIA_KEY_EVENT.
16711
16712 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
16713 (lispy_multimedia_keys) [WINDOWSNT]: New array.
16714 (make_lispy_event) [WINDOWSNT]: Use it to translate
16715 MULTIMEDIA_KEY_EVENT.
16716
16717 * w32term.h (WM_APPCOMMAND): Define if not already.
16718 (GET_APPCOMMAND_LPARAM): Likewise.
16719
16720 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
16721 WM_APPCOMMAND.
16722
16723 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
16724 (syms_of_w32fns): Export and initialize it.
16725 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
16726
167272007-11-09 Chong Yidong <cyd@stupidchicken.com>
16728
16729 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
16730 twice.
16731
16732 * xdisp.c (handle_face_prop): Fix last change.
16733
167342007-11-09 Richard Stallman <rms@gnu.org>
16735
16736 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
16737 not just for after-strings and before-strings.
16738 Call face_for_overlay_string and pass the overlay to it.
16739 (handle_display_prop): Determine whether property came from an overlay.
16740 Pass OVERLAY arg to handle_single_display_spec.
16741 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
16742 (load_overlay_strings): Fill in it->string_overlays.
16743 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
16744
16745 * xfaces.c (face_for_overlay_string): Function renamed from
16746 face_at_buffer_position_no_overlays, and add arg OVERLAY.
16747
16748 * dispextern.h (struct it): New elt string_overlays.
16749 New elt from_overlay, also in stack.
16750 Rearrange a few elements.
16751 (face_for_overlay_string): Decl renamed from
16752 face_at_buffer_position_no_overlays, and add argument.
16753
167542007-11-09 Richard Stallman <rms@gnu.org>
16755
16756 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
16757 to get the base face for an overlay string.
16758
16759 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
16760
16761 * xfaces.c (face_at_buffer_position_no_overlays): New function.
16762
16763 * xdisp.c (handle_stop): Move some code out of loop.
16764
167652007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16766
16767 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
16768 Fix conversion from Lisp object to ATSUFontID.
16769
167702007-11-09 Jason Rumney <jasonr@gnu.org>
16771
16772 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
16773
167742007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16775
16776 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
16777 Don't assume regions are aligned to page boundary.
16778 (print_load_command_name): Add LC_UUID if defined.
16779
167802007-11-09 Richard Stallman <rms@gnu.org>
16781
16782 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
16783
167842007-11-07 Jason Rumney <jasonr@gnu.org>
16785
16786 * s/windows95.h: Remove.
16787
167882007-11-06 Jan Djärv <jan.h.d@swipnet.se>
16789
16790 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
16791 abort with a message on unhandled store_type values.
16792
167932007-11-01 Jan Djärv <jan.h.d@swipnet.se>
16794
16795 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
16796 Remove HAVE_X11R5 and HAVE_X11R4.
16797
167982007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16799
16800 * Makefile.in: Remove references to sunfns.c and sunfns.o.
16801
168022007-11-01 Johan Bockgård <bojohan@gnu.org>
16803
16804 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
16805 Don't set s->stippled_p here, since it has already been set by
16806 x_set_glyph_string_gc from x_draw_glyph_string.
16807
168082007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
16809
16810 * sunfns.c: Remove file.
16811
16812 * m/sun386.h:
16813 * m/sun2.h:
16814 * m/sparc.h: Remove Sun windows code.
16815
168162007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
16817
16818 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
16819 (init_keyboard): Set current_kboard's window-system to nil.
16820 (tty_read_avail_input): Typo.
16821 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
16822
168232007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
16824
16825 * s/usg5-4.h:
16826 * s/usg5-3.h:
16827 * s/ptx.h:
16828 * m/is386.h:
16829 * m/ibmps2-aix.h:
16830 * Makefile.in: Remove all mentions of X10.
16831
16832 * dispnew.c (syms_of_display): Don't mention version 10.
16833
168342007-10-28 Juanma Barranquero <lekktu@gmail.com>
16835
16836 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
16837 ($(BLD)/abbrev.$(O)): Remove.
16838
168392007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
16840
16841 Rewrite abbrev.c in Elisp.
16842 * image.c (Qcount): Don't declare as extern.
16843 (syms_of_image): Initialize and staticpro `Qcount'.
16844 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
16845 * emacs.c (main): Don't call syms_of_abbrev.
16846 * Makefile.in (obj): Remove abbrev.o.
16847 (abbrev.o): Remove.
16848 * abbrev.c: Remove.
16849
168502007-10-26 Martin Rudalics <rudalics@gmx.at>
16851
16852 * window.c (window_min_size_2): Don't count header-line.
16853
168542007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
16855
16856 * frame.h (struct frame): Move all bit fields after the first bit
16857 field to take advantage of the available space. Group all the
16858 chars together to reduce wasted space due to padding.
16859
168602007-10-26 Juanma Barranquero <lekktu@gmail.com>
16861
16862 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
16863
16864 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
16865 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
16866 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
16867 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
16868 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
16869 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
16870 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
16871 (last_marked, mark_object_loop_halt): Make static.
16872
16873 * frame.c (syms_of_frame) <delete-frame-functions>:
16874 Fix typo in docstring.
16875
168762007-10-25 Juanma Barranquero <lekktu@gmail.com>
16877
16878 * w32.c (init_environment): Fix tiny memory leak.
16879 (w32_get_resource): Remove unused variable `ok'.
16880
168812007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
16882
16883 Make `window-system' into a keyboard-local variable (rather than
16884 frame-local as done originally by multi-tty).
16885
16886 * keyboard.h (struct kboard): Add Vwindow_system.
16887 * keyboard.c (init_kboard): Set a default for Vwindow_system.
16888 (mark_kboards): Mark Vwindow_system.
16889
16890 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
16891 (init_display): Don't set the obsolete `window-system' frame-param.
16892
16893 * xterm.c (x_term_init):
16894 * w32term.c (w32_create_terminal):
16895 * term.c (init_tty): Set Vwindow_system.
16896 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
16897 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
16898
16899 * xfns.c (Fx_create_frame, x_create_tip_frame):
16900 * w32fns.c (Fx_create_frame, x_create_tip_frame):
16901 * macfns.c (Fx_create_frame):
16902 Don't set the obsolete `window-system' frame-param.
16903
16904 * frame.h (Qwindow_system): Remove.
16905 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
16906 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
16907
169082007-10-24 Richard Stallman <rms@gnu.org>
16909
16910 * frame.c (x_figure_window_size): For fullscreen case,
16911 set USPosition | PPosition without clobbering rest of window_prompting.
16912
16913 * keyboard.c (Fcurrent_idle_time): Doc fix.
16914
16915 * print.c (Fwith_output_to_temp_buffer): Doc fix.
16916
169172007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
16918
16919 * process.c (unwind_request_sigio): Only define if __ultrix__.
16920
16921 * callproc.c (child_setup): Remove spurious *.
16922
16923 * lisp.h (Fget_text_property): Declare.
16924 (have_menus_p): Declare it here rather than in sys-dep header files.
16925 * macterm.h (have_menus_p):
16926 * msdos.h (have_menus_p):
16927 * xterm.h (have_menus_p): Remove.
16928
16929 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
16930 (Fmake_variable_frame_local): Just check the variable's const-ness
16931 rather than checking nil or t.
16932
169332007-10-22 Jason Rumney <jasonr@gnu.org>
16934
16935 * w32fns.c: Include math.h.
16936 (w32_abort): Declaration moved to nt/config.nt.
16937
16938 * s/ms-w32.h (HAVE_STDLIB_H): Define.
16939 (abort): Redefinition moved to nt/config.nt.
16940
16941 * m/windowsnt.h: Remove.
16942
169432007-10-22 Juanma Barranquero <lekktu@gmail.com>
16944
16945 * emacs.c (Fdump_emacs): Fix typo in message.
16946 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
16947 <installation-directory>: Reflow docstring.
16948
169492007-10-22 Juri Linkov <juri@jurta.org>
16950
16951 * minibuf.c: Allow minibuffer default to be a list of default values.
16952 With empty input use the first element of this list as returned default.
16953 (string_to_object)
16954 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
16955 (read_minibuf): If defalt is cons, set histstring to its car.
16956 (Fread_string): If default_value is cons, set val to its car.
16957 (Fread_buffer): If def is cons, use its car.
16958 (Fcompleting_read): If defalt is cons, set val to its car.
16959
169602007-10-21 Michael Albinus <michael.albinus@gmx.de>
16961
16962 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
16963
169642007-10-20 Juanma Barranquero <lekktu@gmail.com>
16965
16966 * doc.c (Fdocumentation): Check for advice in all cases.
16967
169682007-10-19 Chong Yidong <cyd@stupidchicken.com>
16969
16970 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
16971
169722007-10-19 Richard Stallman <rms@gnu.org>
16973
16974 * doc.c (Fdocumentation): Check for and handle an advised function.
16975
169762007-10-19 Juanma Barranquero <lekktu@gmail.com>
16977
16978 * process.c (Fset_process_filter): Doc fix.
16979
169802007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
16981
16982 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
16983 which caused key-translation-map to applied repeatedly (thus breaking
16984 double-mode).
16985
169862007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
16987
16988 * xselect.c (x_own_selection, x_handle_selection_clear)
16989 (x_clear_frame_selections):
16990 * w32menu.c (list_of_panes, list_of_items):
16991 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
16992 * textprop.c (validate_plist, interval_has_all_properties)
16993 (interval_has_some_properties, interval_has_some_properties_list)
16994 (add_properties, text_property_list):
16995 * process.c (Fget_buffer_process, list_processes_1, status_notify):
16996 * minibuf.c (Fassoc_string):
16997 * macselect.c (x_own_selection, x_clear_frame_selections)
16998 (Fx_disown_selection_internal):
16999 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
17000 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
17001
170022007-10-17 Chong Yidong <cyd@stupidchicken.com>
17003
17004 * process.c: Link to libs for calling res_init() if available.
17005 (Fmake_network_process): Call res_init() before getaddrinfo or
17006 gethostbyname, if possible.
17007
170082007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
17009
17010 * lread.c (read1): Set pvectype for char_tables.
17011
17012 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
17013 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
17014 Add type checks.
17015 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
17016
17017 * alloc.c (free_misc): Use XMISCTYPE.
17018 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
17019
170202007-10-17 Glenn Morris <rgm@gnu.org>
17021
17022 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
17023 (syms_of_minibuf): Add Qcompletion_ignore_case.
17024 * dired.c (Qcompletion_ignore_case): Change to external.
17025 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
17026 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
17027 (Fread_file_name): Use it rather than intern'ing.
17028
17029 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
17030 (Fread_coding_system): Ignore case of user input.
17031
170322007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17033
17034 * xdisp.c (handle_display_prop): Ignore display specs after
17035 replacing one when string text is being replaced.
17036 (handle_single_display_spec): Pretend as if characters with display
17037 property haven't been consumed only when buffer text is being replaced.
17038
170392007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
17040
17041 * xfns.c (Fx_create_frame, Fx_display_list):
17042 * window.c (window_fixed_size_p, enlarge_window)
17043 (shrink_window_lowest_first):
17044 * macterm.c (init_font_name_table):
17045 * macfns.c (Fx_create_frame, Fx_display_list):
17046 * lread.c (close_load_descs):
17047 * keyboard.c (read_char_x_menu_prompt):
17048 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
17049 * coding.c (code_convert_region_unwind): Test the type of an object
17050 rather than just !NILP before extracting data from it.
17051
17052 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
17053
17054 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
17055 (XMISCANY): New macro.
17056 (XMISCTYPE): Use it.
17057 (struct Lisp_Misc_Any): New type.
17058 (union Lisp_Misc): Use it.
17059 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
17060 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
17061 (find_symbol_value, set_internal, default_value, Fset_default)
17062 (Fmake_variable_buffer_local, Fmake_local_variable)
17063 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
17064 (Flocal_variable_if_set_p, Fvariable_binding_locus):
17065 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
17066 * alloc.c (allocate_buffer): Set the size and tag.
17067 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
17068 Use XMISCANY.
17069 (die): Follow the GNU convention for error messages.
17070 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
17071 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
17072 tag any more.
17073 (set_buffer_internal_1):
17074 * frame.c (store_frame_param):
17075 * eval.c (specbind):
17076 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
17077
17078 * doc.c (Fsnarf_documentation): Simplify.
17079
170802007-10-14 Juanma Barranquero <lekktu@gmail.com>
17081
17082 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
17083 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
17084
170852007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
17086
17087 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
17088
170892007-10-14 Juanma Barranquero <lekktu@gmail.com>
17090
17091 * eval.c (do_autoload): Don't save autoloads.
17092
17093 * data.c (Ffset): Save autoload of the function being set.
17094
170952007-10-07 John Paul Wallington <jpw@pobox.com>
17096
17097 * xfns.c (x_create_tip_frame): Set the `display-type' frame
17098 parameter before setting up faces.
17099
171002007-10-13 Eli Zaretskii <eliz@gnu.org>
17101
17102 * ccl.c (Fregister_code_conversion_map):
17103 * keyboard.c (append_tool_bar_item): Reformat last change.
17104
17105 * lisp.h (eabs): Rename from `abs'. All callers changed.
17106
171072007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
17108
17109 * buffer.c (add_overlay_mod_hooklist):
17110 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
17111 * fontset.c (make_fontset):
17112 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
17113 (append_tool_bar_item):
17114 * macmenu.c (grow_menu_items):
17115 * w32menu.c (grow_menu_items):
17116 * xmenu.c (grow_menu_items): Use larger_vector.
17117
171182007-10-13 Eli Zaretskii <eliz@gnu.org>
17119
17120 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
17121 selected frame'' on MSDOS).
17122
171232007-10-12 Martin Rudalics <rudalics@gmx.at>
17124
17125 * frame.c (Qexplicit_name): New variable.
17126 (x_report_frame_params): Report it in parameter alist.
17127 (syms_of_frame): Intern and staticpro it.
17128
171292007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
17130
17131 * macfns.c (x_create_tip_frame): Set terminal for frame.
17132
171332007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
17134
17135 * frame.c (Qenvironment): Remove.
17136 (syms_of_frame) <Qenvironment>: Don't initialize.
17137 (Fdelete_frame): Don't treat the `environment' param specially.
17138 * frame.h (Qenvironment): Don't declare.
17139 * callproc.c (set_initial_environment): Don't set unused frame param.
17140
17141 * frame.c (Fframe_with_environment): Remove.
17142 (syms_of_frame) <Sframe_with_environment>: Don't declare.
17143
17144 * lisp.h (Fframe_with_environment): Don't declare.
17145
171462007-10-10 Juanma Barranquero <lekktu@gmail.com>
17147
17148 * indent.c (indent_tabs_mode, last_known_column)
17149 (last_known_column_modified): Make static.
17150 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
17151
171522007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
17153
17154 * puresize.h (BASE_PURESIZE): Increase to 1170000.
17155
171562007-10-09 Jason Rumney <jasonr@gnu.org>
17157
17158 * w32term.c (x_set_window_size): Disable code that attempts to tell
17159 Lisp code about a size change before it actually happens.
17160
171612007-10-09 Richard Stallman <rms@gnu.org>
17162
17163 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
17164 return HANDLED_RETURN.
17165
171662007-10-08 Martin Rudalics <rudalics@gmx.at>
17167
17168 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
17169 when there's an unread command event.
17170
17171 * frame.c (focus_follows_mouse): Move here from frame.el to allow
17172 window autoselection act appropriately when leaving selected frame.
17173 (syms_of_frame): Initialize focus_follows_mouse.
17174 * frame.h (focus_follows_mouse): Extern it.
17175 * macterm.c (XTread_socket): When focus_follows_mouse is nil
17176 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
17177 * msdos.c (dos_rawgetc): Likewise.
17178 * w32term.c (w32_read_socket): Likewise.
17179 * xterm.c (handle_one_xevent): Likewise.
17180 * xdisp.c (syms_of_xdisp): In doc-string of
17181 mouse-autoselect-window mention focus-follows-mouse.
17182
171832007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
17184
17185 * macterm.c (mac_load_query_font): Fix missing return value.
17186 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
17187 Add BLOCK_INPUT.
17188
171892007-10-08 Richard Stallman <rms@gnu.org>
17190
17191 * xdisp.c (get_window_cursor_type): Implement documented behavior
17192 for cursor-in-non-selected-windows = t.
17193
171942007-10-08 Jason Rumney <jasonr@gnu.org>
17195
17196 * w32.c (w32_get_resource): Always close registry keys.
17197
171982007-10-08 Jason Rumney <jasonr@gnu.org>
17199
17200 * makefile.w32-in (LIBS): Add COMCTL32.
17201
17202 * w32fns.c (globals_of_w32fns): Init common controls.
17203
172042007-10-08 Richard Stallman <rms@gnu.org>
17205
17206 * image.c (our_memory_buffer): Rename from omfib_buffer.
17207
172082007-10-08 Richard Stallman <rms@gnu.org>
17209
17210 * buffer.c (Foverlays_at): Doc fix.
17211
172122007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
17213
17214 * fns.c (Fplist_put): Preserve uneven tail data.
17215
172162007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
17217
17218 * termhooks.h (enum event_kind): Remove trailing comma.
17219
17220 * frame.h (enum): Remove trailing comma.
17221
172222007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
17223
17224 * w32proc.c (delete_child): Don't terminate threads of zombies.
17225
172262007-10-08 Martin Rudalics <rudalics@gmx.at>
17227
17228 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
17229
17230 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
17231 last-repeatable-command.
17232 (init_kboard): Initialize Vlast_repeatable_command.
17233 (command_loop_1): Set it to real_this_command unless that was
17234 bound to an input event.
17235 (mark_kboards): Mark it.
17236
172372007-10-08 Richard Stallman <rms@gnu.org>
17238
17239 * eval.c (condition-case): Doc fix.
17240
172412007-10-08 Masatake YAMATO <jet@gyve.org>
17242
17243 * xfaces.c (tty_supports_face_attributes_p): Fix code
17244 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
17245 was copied and not edited.
17246
172472007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
17248
17249 Add new `input-decode-map' keymap and use it for terminal
17250 escape sequences.
17251 * keyboard.h (struct kboard): Add Vinput_decode_map.
17252 Remove Vlocal_key_translation_map.
17253 * keyboard.c (read_key_sequence): Add support for input-decode-map.
17254 (init_kboard): Init input-decode-map.
17255 Replace local-key-translation-map back with key-translation-map.
17256 (syms_of_keyboard): Declare input-decode-map.
17257 Remove local-key-translation-map. Update docstrings.
17258 (mark_kboards): Mark Vinput_decode_map.
17259 Don't mark Vlocal_key_translation_map.
17260 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
17261 Replace local-key-translation-map back with key-translation-map.
17262 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
17263 Bind in input-decode-map rather than function-key-map.
17264
17265 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
17266 This was made redundant by the previous introduction of XSETPVECTYPE.
17267
172682007-10-09 Richard Stallman <rms@gnu.org>
17269
17270 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
17271
172722007-09-29 Richard Stallman <rms@gnu.org>
17273
17274 * eval.c (internal_condition_case_2, internal_condition_case_1)
17275 (internal_condition_case): Reenable abort if x_catching_errors ()
17276 to see if that really happens and why.
17277
172782007-10-06 Andreas Schwab <schwab@suse.de>
17279
17280 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
17281
172822007-10-04 Juanma Barranquero <lekktu@gmail.com>
17283
17284 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
17285
172862007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
17287
17288 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
17289
172902007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
17291
17292 * window.h (struct window):
17293 * window.c (struct save_window_data, struct saved_window):
17294 * termhooks.h (struct terminal):
17295 * process.h (struct Lisp_Process):
17296 * frame.h (struct frame):
17297 * buffer.h (struct buffer):
17298 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
17299 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
17300 The size field of (pseudo)vectors is now unsigned.
17301 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
17302
17303 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
17304 Turn `count' into an integer.
17305
17306 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
17307 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
17308 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
17309 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
17310 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
17311
17312 * alloc.c (allocate_pseudovector): New fun.
17313 (ALLOCATE_PSEUDOVECTOR): New macro.
17314 (allocate_window, allocate_terminal, allocate_frame)
17315 (allocate_process): Use it.
17316 (mark_vectorlike): New function.
17317 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
17318 (mark_terminals): Use it.
17319 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
17320 (Fmake_byte_code): Use XSETPVECTYPE.
17321
17322 * frame.c (Fframe_parameters): Minor simplification.
17323
17324 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
17325
17326 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
17327
17328 * buffer.c (Fget_buffer_create, init_buffer_once):
17329 * lread.c (defsubr):
17330 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
17331
17332 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
17333 defined differently in the m/*.h files.
17334 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
17335 (XSETPVECTYPE): New macro.
17336 (XSETPSEUDOVECTOR): Use it.
17337
17338 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
17339 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
17340
17341 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
17342 * lread.c (defvar_per_buffer):
17343 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
17344
17345 * window.c (candidate_window_p): Only consider as visible frames that
17346 are on the same terminal.
17347
17348 * m/ibms390x.h (MARKBIT): Remove unused macro.
17349
173502007-10-01 Juanma Barranquero <lekktu@gmail.com>
17351
17352 * lread.c (Fload): Fix typo in docstring.
17353
173542007-10-01 Michaël Cadilhac <michael@cadilhac.name>
17355
17356 * floatfns.c (Fexpt): Manually check for overflows, so that a power
17357 of a non-zero value can't yield zero.
17358
173592007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
17360
17361 * term.c (term_clear_mouse_face, term_mouse_highlight)
17362 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
17363
17364 * print.c (safe_debug_print): Use XHASH.
17365
17366 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
17367 Lisp elements such as tags.
17368 (XHASH): New macro.
17369 (EQ): Use it.
17370 (SREF, SSET, STRING_COPYIN): Use SDATA.
17371 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
17372
17373 * alloc.c (mark_terminal): Remove left-over declaration.
17374 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
17375 (allocate_vectorlike): Remove type argument. Adjust callers.
17376 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
17377 Only handle the one remaining MEM_TYPE_VECTORLIKE.
17378
17379 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
17380 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
17381 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
17382 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
17383 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
17384 Use them.
17385
17386 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
17387 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
17388 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
17389
173902007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
17391
17392 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
17393 loaded by default.
17394
173952007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
17396
17397 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
17398 on this tty.
17399 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
17400
17401 * term.c (mouse_face_window): Rename from Qmouse_face_window.
17402 Update all users.
17403 (handle_one_term_event): Use Gpm_DrawPointer.
17404 (Fgpm_mouse_start): Rename from Fterm_open_connection.
17405 Signal errors instead of returning nil. Always return nil.
17406 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
17407 Make it a noop if gpm-mouse was not activated.
17408 (syms_of_term): Update names.
17409
174102007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
17411
17412 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
17413 (init_sys_modes): Check that gpm_tty is the current tty.
17414
17415 * alloc.c (allocate_terminal): Set the vector size to only count the
17416 lisp fields. Initialize those to nil.
17417 (mark_object): Don't treat terminals specially.
17418 (mark_terminal): Remove.
17419 (mark_terminals): Use mark_object instead.
17420
17421 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
17422 the GC to the beginning.
17423
17424 * indent.h:
17425 * indent.c: Use EMACS_INT for ints coming from Elisp data.
17426
17427 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
17428
174292007-09-25 Jason Rumney <jasonr@gnu.org>
17430
17431 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
17432
17433 * w32console.c (create_w32cons_output): Remove.
17434
17435 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
17436
17437 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
17438 (reset_sys_modes): Use reset_terminal_modes_hook.
17439
174402007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
17441
17442 * eval.c (do_autoload): Don't output any message.
17443
174442007-09-24 Juri Linkov <juri@jurta.org>
17445
17446 * emacs.c (standard_args): Change priority of "--no-splash"
17447 from 40 to 3. Add "--no-desktop" with the same priority.
17448
174492007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
17450
17451 * alloc.c (gc_sweep): Check cons cell mark bits word by word
17452 and optimize the case where they are all 1.
17453
174542007-09-23 Johannes Weiner <hannes@saeurebad.de>
17455
17456 * lisp.h (abs): Define if not defined.
17457 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
17458 Don't define `abs', since it's defined in lisp.h.
17459
174602007-09-22 Eli Zaretskii <eliz@gnu.org>
17461
17462 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
17463 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
17464 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
17465 (init_tty): Use DEV_TTY instead of "/dev/tty".
17466 [WINDOWSNT]: No need to protect from NAME arg being null.
17467
174682007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
17469
17470 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
17471 up the tty state.
17472
174732007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17474
17475 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
17476 (gpm_tty): Change its type.
17477 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
17478 (gpm_tty): Change its type and initialize it.
17479 (Fterm_open_connection): Check the frame is indeed a tty.
17480 Use the new gpm_tty.
17481 (Fterm_close_connection): Use the new gpm_tty.
17482 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
17483 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
17484
174852007-09-21 Juanma Barranquero <lekktu@gmail.com>
17486
17487 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
17488 underline_color, to draw strike-through.
17489
174902007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
17491
17492 * lisp.h (allocate_terminal): Declare.
17493
17494 * window.c (candidate_window_p): Consider frames that are being placed
17495 by the user as somewhere between visible and iconified.
17496 (window_loop): Prefer windows on the current frame.
17497 (Fselect_window): Move the use of select-frame to the beginning so we
17498 can just delegate all the work (it'll call us back anyway).
17499
17500 * frame.c (Qdisplay_environment_variable):
17501 * frame.h (Qdisplay_environment_variable): Delete.
17502
17503 * .gdbinit (xbacktrace): Print the arg's address rather than the value
17504 of the first arg, since that value may be a union.
17505
17506 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
17507 parameter rather than Qdisplay_environment_variable. If all else
17508 fails, look for DISPLAY in initial-environment.
17509
175102007-09-21 Glenn Morris <rgm@gnu.org>
17511
17512 * Makefile.in (emacstool): Remove target.
17513 (lisp, shortlisp): Remove termdev.elc.
17514
175152007-09-21 Markus Triska <markus.triska@gmx.at>
17516
17517 * xterm.c (x_delete_display): Compile session management conditionally.
17518
175192007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
17520
17521 * callproc.c (getenv_internal_1): New function.
17522 (getenv_internal): Use it.
17523 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
17524
17525 * terminal.c (get_terminal): Don't accept ints to represent terminals.
17526 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
17527 (Fset_terminal_parameter): Work with dead terminals as well.
17528 (Fmodify_terminal_parameters): Remove.
17529
17530 * terminal.c (get_terminal): Handle terminals.
17531 Make sure the terminal returned is live.
17532 (create_terminal): Use allocate_terminal.
17533 (mark_terminals): Move to alloc.c.
17534 (delete_terminal): Use terminal->name as liveness status.
17535 NULL out fields after freeing their contents.
17536 Don't deallocate the object.
17537 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
17538 rather than an int.
17539 (Fterminal_live_p): Accept non-integer arguments.
17540 (Fterminal_list): Return terminal objects rather than an ints.
17541
17542 * alloc.c (enum mem_type): New member for `terminal' objects.
17543 (allocate_terminal): New function.
17544 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
17545 Handle terminals.
17546 (mark_terminal): New fun.
17547 (mark_terminals): Move from terminal.c.
17548
17549 * term.c (get_tty_terminal): Don't treat output_initial specially.
17550 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
17551 (delete_tty): Use terminal->name as liveness status.
17552
17553 * termhooks.h (struct terminal): Make it into a pseudovector.
17554 Remove `deleted' replaced by checking `name's nullness.
17555
17556 * print.c (print_object): Handle terminals.
17557
17558 * lisp.h (enum pvec_type): New `terminal' pseudovector.
17559 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
17560
17561 * frame.c (make_terminal_frame):
17562 * keyboard.c (tty_read_avail_input):
17563 * w32term.c (x_delete_terminal):
17564 * xfns.c (Fx_create_frame, x_create_tip_frame):
17565 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
17566
175672007-09-20 Glenn Morris <rgm@gnu.org>
17568
17569 * process.c (Fmake_network_process): Doc fix.
17570
175712007-09-19 Jason Rumney <jasonr@gnu.org>
17572
17573 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
17574
175752007-09-19 Michaël Cadilhac <michael@cadilhac.name>
17576
17577 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
17578 Fix a C warning regarding variable constness.
17579
17580 * xterm.c (handle_one_xevent): Fix a C warning.
17581
175822007-09-18 Jason Rumney <jasonr@gnu.org>
17583
17584 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
17585
175862007-09-17 Jan Djärv <jan.h.d@swipnet.se>
17587
17588 * gtkutil.c (gdpy_def): New variable.
17589 (xg_initialize): Initialize gdpy_def.
17590 (xg_display_close): If no other display exists, set gdpy_def to a
17591 new connection.
17592
175932007-09-16 Jan Djärv <jan.h.d@swipnet.se>
17594
17595 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
17596 when we have no file name for the icon.
17597 (xg_tool_bar_expose_callback): Remove.
17598 (xg_create_tool_bar): Don't connect expose signal to
17599 xg_tool_bar_expose_callback.
17600 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
17601
176022007-09-16 Andreas Schwab <schwab@suse.de>
17603
17604 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
17605 values instead of zapping them.
17606
176072007-09-14 Glenn Morris <rgm@gnu.org>
17608
17609 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
17610 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
17611 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
17612 scope and rename to omfib_buffer for clarity.
17613 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
17614
176152007-09-14 Kenichi Handa <handa@m17n.org>
17616
17617 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
17618
176192007-09-13 Jason Rumney <jasonr@gnu.org>
17620
17621 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
17622
17623 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
17624
17625 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
17626 (mac_term_init): Call here instead, passing rif.
17627
176282007-09-13 Glenn Morris <rgm@gnu.org>
17629
17630 * s/hpux.h: No longer define `static' as nothing.
17631
176322007-09-13 Johan Bockgård <bojohan@gnu.org>
17633
17634 * callint.c (Fcall_interactively): Remove unused var `fun'.
17635
176362007-09-12 Romain Francoise <romain@orebokech.com>
17637
17638 * window.c (prefer_window_split_horizontally, display_buffer):
17639 Revert 2007-09-08 change.
17640
176412007-09-12 Glenn Morris <rgm@gnu.org>
17642
17643 * alloca.c: Remove file.
17644 * Makefile.in (alloca): Do not undef.
17645 (allocaobj, alloca.o): Remove.
17646 (otherobj): Remove allocaobj.
17647 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
17648 * regex.c (C_ALLOCA): Remove all references and code that was only
17649 used when this was defined.
17650 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
17651 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
17652 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
17653
17654 * Makefile.in (SOURCES, unlock, relock): Delete.
17655
17656 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
17657 (menu_grab_callback): All uses changed.
17658
17659 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
17660 (x_reply_selection_request): All uses changed.
17661
176622007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
17663
17664 * lread.c (load_warn_old_style_backquotes): Change message to look
17665 better when it appears in the middle of byte-compiler messages.
17666
176672007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
17668
17669 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
17670
17671 * xterm.c (x_create_terminal): Add comment.
17672
17673 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
17674
176752007-09-10 Richard Stallman <rms@gnu.org>
17676
17677 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
17678
176792007-09-10 Michaël Cadilhac <michael@cadilhac.name>
17680
17681 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
17682 (DEFUN): Document `intspec', use it instead of `prompt'.
17683
17684 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
17685
17686 * data.c (Finteractive_form): If the interactive specification starts
17687 with a `(', use it as a Lisp form.
17688
17689 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
17690 name and file modes.
17691
17692 * callint.c (Fcall_interactively): Comment fixes.
17693
176942007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
17695
17696 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
17697 and compiled functions.
17698
176992007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
17700
17701 * window.c (prefer_window_split_horizontally): New variable.
17702 (display_buffer): Consider splitting window horizontally depending
17703 on prefer_window_split_horizontally.
17704
177052007-09-08 Eli Zaretskii <eliz@gnu.org>
17706
17707 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
17708
177092007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17710
17711 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
17712
17713 * frame.c (x_set_frame_parameters): Check number is positive before
17714 using XFASTINT.
17715
17716 * window.c (freeze_window_start): Don't presume selected_window holds
17717 a window object.
17718 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
17719
177202007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
17721
17722 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
17723
177242007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
17725
17726 * window.c (Vsplit_window_preferred_function): New var.
17727 (Fdisplay_buffer): Use it.
17728 (syms_of_window): Export, and initialize it.
17729
177302007-09-06 Pixel <pixel@mandriva.com> (tiny change)
17731
17732 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
17733
177342007-09-06 Glenn Morris <rgm@gnu.org>
17735
17736 * gtkutil.c (menu_grab_callback) <cnt>:
17737 * xselect.c (x_reply_selection_request) <cnt>: Move static
17738 variable to file scope.
17739
177402007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
17741
17742 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
17743 consistent values of selected_frame and selected_window.
17744
177452007-09-04 Jason Rumney <jasonr@gnu.org>
17746
17747 * w32console.c (initialize_w32_display): Zero unused hooks.
17748
177492007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17750
17751 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
17752 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
17753
177542007-09-04 Jason Rumney <jasonr@gnu.org>
17755
17756 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
17757 in w32console.c. Set up input. Remove XXX comments that have been
17758 confirmed as correct.
17759
17760 * s/ms-w32.h (MULTI_KBOARD): Define.
17761
17762 * w32console.c (one_and_only_w32cons): Remove.
17763 (initialize_w32_display): Take terminal argument.
17764
17765 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
17766 initialize_w32_display.
17767 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
17768
17769 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
17770
17771 * keyboard.c (discard_mouse_events): Discard it.
17772 (make_lispy_event): Translate it to a lisp event.
17773 (lispy_wheel_names): Add wheel-left and right events.
17774 (syms_of_keyboard): Enlarge wheel_syms.
17775
17776 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
17777 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
17778
17779 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
17780
17781 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
17782 from WM_MOUSEHWHEEL.
17783 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
17784
17785 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
17786 terminal.
17787
17788 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
17789 keyboard for the terminal.
17790
177912007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
17792
17793 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
17794 (Vresume_tty_hook): Rename from Vresume_tty_functions.
17795 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
17796 and resume-tty-function to resume-tty-hook.
17797 (Fsuspend_tty, Fresume_tty): Use new names.
17798
177992007-09-02 Jan Djärv <jan.h.d@swipnet.se>
17800
17801 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
17802 if it starts with "n:".
17803
178042007-08-31 Jan Djärv <jan.h.d@swipnet.se>
17805
17806 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
17807
178082007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
17809
17810 * frame.h:
17811 * frame.c (Qterm_environment_variable): Remove.
17812 (syms_of_frame): Don't init and staticpro it.
17813
17814 * callproc.c (getenv_internal): Remove special case for $TERM.
17815
17816 * callproc.c (Vinitial_environment): New variable.
17817 (set_initial_environment): Initialize it.
17818 (syms_of_callproc): Declare it.
17819 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
17820 TERM under which a process runs is never related to the TERM in which
17821 Emacs is running.
17822
178232007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17824
17825 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
17826 * s/darwin.h: ... do it here.
17827
178282007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
17829
17830 * lisp.h (set_initial_environment): Rename from set_global_environment.
17831
17832 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
17833 removed by mistake on the multi-tty branch.
17834
17835 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
17836 (Fmodify_frame_parameters): Return a value.
17837
17838 * image.c (png_load): Comment-out var only used in commented-out code.
17839
17840 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
17841 before passing it to mark_object.
17842
17843 * xfaces.c (internal_resolve_face_name): Return a value.
17844 (internal_resolve_face_name, resolve_face_name_error): Comment out.
17845
17846 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
17847 (x_icon): Comment-out var only used in commented-out code.
17848
178492007-08-29 Romain Francoise <romain@orebokech.com>
17850
17851 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
17852 QUIT hasn't been provided.
17853
178542007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
17855
17856 * callproc.c (child_setup, getenv_internal): Use the
17857 display-environment-variable and term-environment-variable frame params.
17858 (set_initial_environment): Initialise Vprocess_environment.
17859
17860 * config.in: Disable multi-keyboard support on a mac.
17861
17862 * frame.c (Qterm_environment_variable)
17863 (Qdisplay_environment_variable): New variables.
17864 (syms_of_frame): Intern and staticpro them.
17865 (Fmake_terminal_frame): Disable output method test.
17866
17867 * frame.h: Declare them here.
17868
17869 * macfns.c (x_set_mouse_color): Get rif from the frame.
17870 (x_set_tool_bar_lines): Don't use updating_frame.
17871 (mac_window): Add 2 new parameters for consistency with other systems.
17872 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
17873 frame parameters following what is done in X11 and w32. Don't use
17874 FRAME_MAC_DISPLAY_INFO.
17875 (Fx_open_connection, start_hourglass): Remove window-system check.
17876 (x_create_tip_frame): Get the keyboard from the terminal.
17877
17878 * macmenu.c: Reorder includes.
17879 (Fx_popup_menu): Use terminal specific mouse_position_hook.
17880
17881 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
17882 terminal parameter.
17883 (x_clear_frame): Add a frame parameter.
17884 (note_mouse_movement): Get rif from the frame.
17885 (mac_term_init): Initialize the terminal.
17886 (mac_initialize): Make static and move terminal initialization ...
17887 (mac_create_terminal): ... to this new function.
17888
17889 * macterm.h (struct mac_display_info): Add terminal.
17890 (mac_initialize): Delete declaration.
17891
17892 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
17893
17894 * sysdep.c: Comment out text after #endif.
17895
17896 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
17897 is defined. Better initialize ttys in windows. Use terminal
17898 specific mouse_position_hook.
17899
17900 * termhooks.h (union display_info): Add mac_display_info.
17901
17902 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
17903 Set the default minibuffer frame, window_system and the rest of the
17904 frame parameters following what is done in X11.
17905
17906 * w32term.c (w32_initialize): Make static.
17907
17908 * xselect.c (x_handle_selection_clear): Only access
17909 terminal->kboard when MULTI_KBOARD is defined.
17910
17911 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
17912 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
17913
179142007-08-29 Jason Rumney <jasonr@gnu.org>
17915
17916 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
17917 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
17918
17919 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
17920 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
17921
17922 * keyboard.c (restore_kboard_configuration): Only define when
17923 MULTI_KBOARD defined.
17924
17925 * makefile.w32-in: Update dependancies from Makefile.in.
17926 (OBJ1): Add terminal.$(O)
17927
17928 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
17929 Don't define function body.
17930 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
17931
17932 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
17933
17934 * w32.c (request_sigio, unrequest_sigio): Remove.
17935
17936 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
17937 (w32con_clear_frame, w32con_clear_end_of_line)
17938 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
17939 (w32con_delete_glyphs, w32con_set_terminal_window)
17940 (scroll_line, w32_sys_ring_bell): Add frame arg.
17941 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
17942 Add terminal arg.
17943 (PICK_FRAME): Remove.
17944 (w32con_write_glyphs): Use frame specific terminal coding.
17945 (one_and_only_w32cons): New global variable.
17946 (initialize_w32_display): Use it for storing hooks.
17947 (create_w32cons_output): New function.
17948
17949 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
17950 arg a frame.
17951
17952 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
17953 Set window_system.
17954 (x_set_tool_bar_lines): Don't use updating_frame.
17955 (Fx_create_frame): Set terminal and ref count.
17956 (Fx_open_connection): Remove window-system check.
17957
17958 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
17959
17960 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
17961 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
17962 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
17963 Add frame arg.
17964 (x_delete_terminal, w32_create_terminal): New functions.
17965 (w32_term_init): Create a terminal.
17966 (w32_initialize): Move terminal specific initialization to
17967 w32_create_terminal.
17968
17969 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
17970 (w32_clear_rect, w32_clear_area): Use background from frame.
17971 (w32_display_info): Add terminal.
17972 (w32_sys_ring_bell, x_delete_display): Declare here.
17973
17974 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
17975
17976 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
17977
179782007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
17979
17980 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
17981 Fix get_named_tty calls for the controlling tty.
17982
179832007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
17984
17985 * term.c (dissociate_if_controlling_tty)[USG]: Fix parse error.
17986
179872007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
17988
17989 * term.c (tty_insert_glyphs): Add missing first parameter.
17990
179912007-08-29 Károly Lőrentey <karoly@lorentey.hu>
17992
17993 * buffer.c (Fbuffer_list, Fbury_buffer):
17994 Take frame->buried_buffer_list into account.
17995
17996 * cm.c (current_tty): New variable, for cmputc().
17997 (cmputc): Use it.
17998 (cmcheckmagic): Add tty parameter, look up terminal streams there.
17999 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
18000 (cmgoto): Add tty parameter. Pass it on to calccost().
18001 Use emacs_tputs() instead of tputs().
18002
18003 * cm.h (emacs_tputs): New macro to set current_tty, and then call
18004 tputs().
18005 (current_tty): New variable, for cmputc().
18006 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
18007
18008 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
18009 (internal_condition_case, internal_condition_case_1)
18010 (internal_condition_case_2): Don't abort when x_catching_errors.
18011
18012 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
18013 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
18014 prevent crashes caused by bogus longjmps in read_char.
18015
18016 * keymap.h (Fset_keymap_parent): Add EXFUN.
18017
18018 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
18019 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18020 Remove redundant definition.
18021
18022 * macfns.c (x_set_mouse_color, x_make_gc):
18023 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18024
18025 * w32term.c (x_free_frame_resources):
18026 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18027 (w32_initialize): Use the accessor macros for terminal characteristics.
18028
18029 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
18030 Use the accessor macros for terminal characteristics.
18031 * msdos.c (internal_terminal_init): Use the accessor macros for
18032 terminal characteristics.
18033 (ScreenVisualBell, internal_terminal_init):
18034 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18035
18036 * termopts.h (no_redraw_on_reenter): Declare.
18037
18038 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
18039 (mark_terminals, mark_ttys): Declare.
18040 (Fgarbage_collect): Call them.
18041 (mark_object): Mark buried_buffer_list.
18042
18043 * prefix-args.c: Include stdlib.h for exit.
18044
18045 * syssignal.h: Add comment.
18046
18047 * indent.c: Include stdio.h.
18048
18049 * window.h (Vinitial_window_system): Declare.
18050 (Vwindow_system): Delete declaration.
18051
18052 * fontset.c (Finternal_char_font): Use FRAME_RIF.
18053
18054 * image.c (lookup_image): Don't initialize `c' until the xasserts
18055 have been run.
18056
18057 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
18058 FRAME_FOREGROUND_PIXEL.
18059
18060 * print.c (print_preprocess): Don't lose print_depth levels while
18061 iterating.
18062
18063 * widget.c (update_from_various_frame_slots):
18064 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18065
18066 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
18067 frames.
18068 (window_internal_height): Remove bogus make_number call.
18069 (init_window_once): Call make_terminal_frame with two zero parameters.
18070
18071 * fileio.c (Fread_file_name): Update comment.
18072
18073 * callint.c (Fcall_interactively):
18074 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
18075 Make sure it is correctly unwound.
18076
18077 * xsmfns.c (x_session_close): New function.
18078
18079 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
18080 Delete declarations.
18081
18082 * xterm.h: Remove declaration for x_fully_uncatch_errors.
18083 (x_output): Remove background_pixel and foreground_pixel fields.
18084 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
18085 (x_delete_device, x_session_close): Declare.
18086
18087 * lread.c: Include setjmp.h. Update declaration of `read_char'.
18088 (read_filtered_event): Call `read_char' with a local
18089 `wrong_kboard_jmpbuf'.
18090
18091 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
18092 Don't call single_kboard_state. Use FRAME_RIF.
18093
18094 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
18095 systems.
18096
18097 * lisp.h (set_process_environment): Rename to `set_global_environment'.
18098 (Fframe_with_environment, Fset_input_meta_mode)
18099 (Fset_quit_char): EXFUN.
18100 (x_create_device, tty_output, terminal, tty_display_info): Declare.
18101 (init_sys_modes, reset_sys_modes): Update prototypes.
18102 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
18103
18104 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
18105 Vlocal_key_translation_map, and Vkeyboard_translate_table.
18106 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
18107 Delete declarations.
18108 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
18109 (temporarily_switch_to_single_kboard, tty_read_avail_input):
18110 New declarations.
18111
18112 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
18113 already does that during init_display(). Call syms_of_keymap
18114 before syms_of_keyboard. Call `syms_of_terminal'.
18115 Call set_initial_environment, not set_process_environment.
18116 (shut_down_emacs): Call reset_all_sys_modes() instead of
18117 reset_sys_modes().
18118
18119 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
18120 (internal_resolve_face_name, resolve_face_name_error): New functions.
18121 (resolve_face_name): Protect against loops and errors thrown by Fget.
18122 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
18123 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
18124
18125 * scroll.c: Replace CURTTY() with local variables throughout the
18126 file (where applicable).
18127 (calculate_scrolling, calculate_direct_scrolling)
18128 (scrolling_1, scroll_cost): Use the accessor macros for terminal
18129 characteristics.
18130
18131 * keymap.c (Vfunction_key_map): Remove.
18132 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
18133 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
18134 (Vkey_translation_map): Remove.
18135 (syms_of_keymap): Remove DEFVAR for key-translation-map.
18136 (Fdescribe_buffer_bindings)
18137 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
18138 Update for terminal-local key-translation-map.
18139
18140 * Makefile.in (callproc.o): Update dependencies.
18141 (lisp, shortlisp): Add termdev.elc.
18142 (obj): Add terminal.o.
18143 (terminal.o): Add dependencies.
18144 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
18145 (data.o, fns.o): Add termhooks.h dependency.
18146 (SOME_MACHINE_LISP): Add dnd.elc.
18147 (minibuf.o): Fix typo.
18148 Update dependencies.
18149
18150 * data.c (do_symval_forwarding, store_symval_forwarding)
18151 (find_symbol_value): Use the selected frame's keyboard, not
18152 current_kboard.
18153
18154 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
18155 Vwindow_system.
18156
18157 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
18158 Fmenu_bar_open.
18159 (syms_of_xmenu): Update defsubr.
18160 (mouse_position_for_popup, Fx_popup_menu)
18161 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
18162 (set_frame_menubar, free_frame_menubar)
b97439ce 18163 (create_and_show_popup_menu, xmenu_show)
aac0c6e3
MR
18164 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
18165 an X frame.
18166
18167 * xselect.c (x_own_selection): Abort if not an X frame.
18168 (some_frame_on_display): Check if it is an X frame.
18169 (x_handle_selection_clear): Deal with MULTI_KBOARD.
18170
18171 * coding.c: Include frame.h and termhooks.h.
18172 (terminal_coding, keyboard_coding): Delete.
18173 (Fset_terminal_coding_system_internal)
18174 (Fset_keyboard_coding_system_internal)
18175 (Fkeyboard_coding_system)
18176 (Fterminal_coding_system): Add a terminal parameter.
18177 Get terminal_coding from the terminal.
18178 (init_coding_once): Don't call setup_coding_system here.
18179
18180 * dispextern.h (set_scroll_region, turn_off_insert)
18181 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
18182 (tty_clear_end_of_line, tty_setup_colors)
18183 (delete_tty, updating_frame)
18184 (produce_special_glyphs, produce_glyphs, write_glyphs)
18185 (insert_glyphs): Remove.
18186 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
18187 (tty_turn_off_highlight, get_tty_size): Add declaration.
18188 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
18189
18190 * frame.h (enum output_method): Add output_initial.
18191 (struct x_output): Delete.
18192 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
18193 Access foreground_pixel and background_pixel directly from the frame.
18194 (tty_display): Delete.
18195 (struct frame): Add buried_buffer_list, foreground_pixel,
18196 background_pixel and terminal. Delete kboard.
18197 (union output_data): Add tty.
18198 (FRAME_KBOARD): Get the kboard from the terminal.
18199 (FRAME_INITIAL_P): New macro.
18200 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
18201 (Qterm_environment_variable, Qdisplay_environment_variable)
18202 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
18203 New declarations.
18204
18205 * termchar.h (tty_output, tty_display_info): New structures.
18206 (tty_list): Declare.
18207 (FRAME_TTY, CURTTY): New macros.
18208 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
18209 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
18210 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
18211 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
18212
18213 * callproc.c: Include frame.h and termhooks.h, for terminal
18214 parameters.
18215 (add_env): New function.
18216 (child_setup): Use it.
18217 (child_setup, getenv_internal): Handle the new Vprocess_environment.
18218 (getenv_internal): Fix get_terminal_param call.
18219 (Fgetenv_internal, egetenv): Update doc.
18220 (syms_of_callproc): Initialize Vprocess_environment to nil.
18221 Register and initialize them. Remove obsolete defvars. Update doc
18222 strings.
18223 (child_setup): Handle Vlocal_environment_variables.
18224 (getenv_internal): Add terminal parameter.
18225 Handle Vlocal_environment_variables.
18226 (Fgetenv_internal): Add terminal parameter.
18227 (child_setup, getenv_internal, Fgetenv_internal): Store the local
18228 environment in a frame (not terminal) parameter. Update doc strings.
18229 (set_initial_environment): Rename from set_global_environment.
18230 Store Emacs environment in initial frame parameter.
18231
18232 * xdisp.c (redisplay_internal): Update references to
18233 `previous_terminal_frame'.
18234 (display_mode_line, Fformat_mode_line): Replace calls to
18235 `push_frame_kboard' with `push_kboard'.
18236 (get_glyph_string_clip_rects): Add extra parentheses and
18237 braces to prevent compiler warnings.
18238 (calc_pixel_width_or_height): Add xassert to check that the
18239 frame is alive. Don't call `lookup_image' on a termcap frame.
18240 (message2_nolog, message3_nolog, redisplay_internal)
18241 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
18242 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
18243 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
18244 (Fx_display_pixel_width, Fx_display_pixel_height)
18245 (Fx_display_planes, Fx_display_color_cells)
18246 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
18247 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
18248 (Fx_display_backing_store, Fx_display_visual_class)
18249 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
18250 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
18251
18252 * xfns.c (x_set_foreground_color x_set_background_color)
18253 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
18254 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18255 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
18256 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
18257 terminal that is being deleted.
18258 (Fx_create_frame): Use `store_frame_param' to set `window-system'
18259 frame parameter, and make sure it overrides any user-supplied setting.
18260 (Fx_close_connection, Fx_synchronize): Unify argument names with
18261 the rest of the DEFUNs.
18262
18263 * dispnew.c (Fsend_string_to_terminal): Update call to
18264 `get_tty_terminal'.
18265 (Fredraw_frame, Fsend_string_to_terminal)
18266 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
18267 FRAME_TERMCAP_P and FRAME_TTY.
18268 (window_change_signal): Don't believe width/height values that are
18269 impossibly small.
18270 (Vinitial_window_system): Rename from Vwindow_system.
18271 (termscript, Wcm, rif): Delete.
18272
18273 * termhooks.h (struct terminal): New struct containing the
18274 previously global text display hooks and new members NAME,
18275 DELETED and PARAM_ALIST.
18276 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
18277 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
18278 (FRAME_RIF): New macros.
18279 (get_terminal_param, get_device): New declarations.
18280 (termscript): Delete declaration.
18281
18282 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
18283 (XTflash, x_free_frame_resources, x_scroll_bar_create)
18284 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
18285 FRAME_FOREGROUND_PIXEL.
18286 (x_fully_uncatch_errors): Disable definition.
18287 (x_scroll_bar_expose): Fix reference to foreground pixel.
18288 (XTread_socket): Disable loop on all X displays.
18289 (x_delete_terminal): Don't set terminal->deleted and let
18290 delete_terminal delete the frames on the terminal.
18291 (x_delete_display): Doc update to reflect changes in
18292 delete_terminal.
18293 (x_display_info) <terminal>: Move member earlier in the struct.
18294 (deleting_tty): Remove old variable.
18295 (Fsuspend_tty): Call clear_tty_hooks.
18296 (Fresume_tty, init_tty): Call set_tty_hooks.
18297 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
18298 errors on X frames.
18299 (x_catch_errors_unwind): Abort if x_error_message is NULL.
18300 (handle_one_xevent): Initialize `f' to NULL.
18301 (x_delete_terminal, x_create_terminal): New functions.
18302 (XTset_terminal_modes, XTreset_terminal_modes)
18303 (XTread_socket, x_connection_closed, x_term_init)
18304 (x_term_init, x_delete_display): Add terminal parameter.
18305 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
18306 X connections.
18307
18308 * frame.c: Include termchar.h.
18309 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
18310 (Qwindow_system, Qenvironment, Qterm_environment_variable)
18311 (Qdisplay_environment_variable): New vars.
18312 (Fframep): Deal with output_initial.
18313 (Fframe-live-p): Doc fix.
18314 (Fwindow-system): New function.
18315 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
18316 (make_terminal_frame): Don't create frames on a terminal that is
18317 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
18318 (store_frame_param): Check for found_for_frame before calling XFRAME.
18319 (Fmake_terminal_frame): Handle NULL tty names correctly.
18320 (syms_of_frame): Enhance doc string of `default-frame-alist'.
18321 (Fdelete_frame): Remove unused variable `count'. Don't allow other
18322 frames to refer to a deleted frame in their 'environment parameter.
18323 (Fframe_with_environment): New function.
18324 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
18325 (get_future_frame_param): New function.
18326 (Fmake_terminal_frame): Use it.
18327 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
18328
18329 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
18330 * sysdep.c (reset_sys_modes): Update for renames.
18331
18332 * keyboard.c (tty_read_avail_input): New function.
18333 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
18334 (syms_of_keyboard): Defsubr them.
18335 (Fset_input_meta_mode, Fset_quit_char): New functions.
18336 (Fset_input_mode): Split to above functions.
18337 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
18338 parameter. Use it in call to `read_char'.
18339 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
18340 Set wrong_kboard_jmpbuf correctly in recursive calls.
18341 Use current_kboard to access Vkeyboard_translate_table.
18342 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
18343 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
18344 Update longjmp invocations. Remember the original current_kboard,
18345 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
18346 changes it. Comment out unnecessary calls to
18347 `record_single_kboard_state' and `any_kboard_state'.
18348 Update recursive calls.
18349 (wrong_kboard_jmpbuf): Remove global variable.
18350 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
18351 Handle deleted interrupted_kboards correctly; that is a legal
18352 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
18353 and read_char calls. Abort if interrupted_kboard died in read_char.
18354 (any_kboard_state, single_kboard_state)
18355 (push_frame_kboard): Remove function.
18356 (pop_kboard): Switch out of single_kboard mode if the kboard has
18357 been deleted. Remove unused variable. Help debugging by not
18358 changing current_kboard unnecessarily. Set current_kboard to the
18359 kboard of the selected frame when the stored kboard object has
18360 been deleted before pop_kboard.
18361 (temporarily_switch_to_single_kboard): Change first parameter to a
18362 frame pointer. Throw an error when caller wants to change kboards
18363 while in single_kboard mode. Don't push_kboard if we weren't in
18364 single kboard state. Don't pop_kboard if we popped into any
18365 kboard state.
18366 (restore_kboard_configuration): Abort if pop_kboard changed the
18367 kboard in single_kboard mode. Call pop_kboard only after setting
18368 up single_kboard mode.
18369 (Frecursive_edit): Switch to single_kboard mode only in nested
18370 command loops.
18371 (cmd_error, command_loop, command_loop_1, timer_check):
18372 Comment out unnecessary call to `any_kboard_state' and
18373 `record_single_kboard_state'.
18374 (delete_kboard): Exit single_kboard mode if we have just deleted
18375 that kboard. Use FRAME_KBOARD.
18376 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
18377 `fatal_error_signal'.
18378 (record_single_kboard_state): Don't push_kboard if we weren't in
18379 single kboard state. Don't pop_kboard if we popped into any
18380 kboard state.
18381 (push_frame_kboard): Rename to push_kboard.
18382 (kbd_buffer_get_event): Use FRAME_TERMINAL.
18383 (read_avail_input): Read input from all terminals.
18384 (mark_kboards): Also mark Vkeyboard_translate_table.
18385 (kbd_buffer_store_event_hold): Simplify condition.
18386 (read_key_sequence): Reinitialize fkey and keytran at each replay.
18387 (Vkeyboard_translate_table): Move to struct kboard.
18388 (init_kboard): Initialize Vkeyboard_translate_table.
18389 (syms_of_keyboard): Use DEFVAR_KBOARD to define
18390 Vkeyboard_translate_table. Update doc strings. Update docs of
18391 local-function-key-map and function-key-map.
18392
18393 * terminal.c: New file.
18394
18395 * term.c: Include errno.h.
18396 (Vring_bell_function, device_list, initial_device)
18397 (next_device_id, ring_bell, update_begin, update_end)
18398 (set_terminal_window, cursor_to, raw_cursor_to)
18399 (clear_to_end, clear_frame, clear_end_of_line)
18400 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
18401 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
18402 (syms_of_term): Move their initialization to terminal.c.
18403 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
18404 (Ftty_display_color_cells)
18405 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
18406 (clear_tty_hooks, set_tty_hooks)
18407 (init_tty, maybe_fatal): New functions.
18408 (Ftty_type): Return nil if terminal is not on a tty instead of
18409 throwing an error. Doc update.
18410 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
18411 Doc update. Initialize new subrs and variables.
18412 (delete_tty): Use terminal->deleted.
18413 (tty_set_terminal_modes): Rename from set_terminal_modes.
18414 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
18415 (set_scroll_region): Rename to `tty_set_scroll_region'.
18416 (turn_on_insert): Rename to `tty_turn_on_insert'.
18417 (turn_off_insert): Rename to `tty_turn_off_insert'.
18418 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
18419 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
18420 (toggle_highligh): Rename to `tty_toggle_highlight'.
18421 (background_highlight): Rename to `tty_background_highlight'.
18422 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
18423 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
18424 (tty_set_scroll_region, tty_background_highlight)
18425 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
18426 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
18427 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
18428 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
18429 Add static modifier.
18430 (tty_reset_terminal_modes, tty_set_terminal_window)
18431 (tty_set_scroll_region, tty_background_highlight)
18432 (tty_highlight_if_desired, tty_cursor_to)
18433 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
18434 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
18435 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
18436 renames.
18437
184382007-08-28 Jan Djärv <jan.h.d@swipnet.se>
18439
18440 * keyboard.c: Qrtl is new.
18441 (parse_tool_bar_item): Handle :rtl keyword.
18442 (syms_of_keyboard): Intern :rtl keyword.
18443
18444 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
18445
18446 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
18447 so no Lisp code is executed.
18448 (file_for_image, find_rtl_image): New functions.
18449 (xg_get_image_for_pixmap): Use file_for_image.
18450 (update_frame_tool_bar): If direction is RTL, use RTL image if
18451 defined. Use Gtk stock images if defined.
18452
184532007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18454
18455 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
18456 for nonexistent or zero-width glyph in composition glyph.
18457
184582007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
18459
18460 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
18461
18462 * xdisp.c (Finvisible_p): New function.
18463 (syms_of_xdisp): defsubr it.
18464
184652007-08-24 Juanma Barranquero <lekktu@gmail.com>
18466
18467 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
18468 Doc fixes.
18469
184702007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18471
18472 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
18473
184742007-08-24 Martin Rudalics <rudalics@gmx.at>
18475
18476 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
18477 whether decoding has modified buffer contents.
18478
184792007-08-24 Jason Rumney <jasonr@gnu.org>
18480
18481 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
18482 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
18483 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
18484 (init_svg_functions) [HAVE_NTGUI]: New function.
18485 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
18486 (svg_load_image): Use them.
18487 (svg_load_image) [HAVE_NTGUI]: Implement background.
18488
184892007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18490
18491 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
18492 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
18493 (LIBX): Remove @RSVG_LIBS@.
18494 (LIBES): Add $(RSVG_LIBS).
18495
18496 * image.c (svg_load_image): Blend with specified background if exists.
18497 Use IMAGE_BACKGROUND. Add Mac OS Support.
18498
18499 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
18500 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
18501 Remove macros.
18502 [MAC_OSX] (socket_callback): Do nothing.
18503 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
18504 ReceiveNextEvent.
18505 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
18506 socket_callback.
18507 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
18508
185092007-08-22 Glenn Morris <rgm@gnu.org>
18510
18511 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
18512
185132007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
18514
18515 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
18516
18517 * image.c: Add support for SVG images. Some additional comments
18518 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
18519 (svg_image_p): New function to test for SVG image.
18520 (svg_load): New function to load SVG image.
18521 (svg_load_image): New function, helper for svg_load.
18522 (Qsvg): New Lisp_object.
18523 (svg_keyword_index): New enum.
18524 (svg_format): New static `image_keyword' struct.
18525 (svg_type): New static `image_type' struct.
18526 (librsvg/rsvg.h): Include it.
18527
185282007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
18529
18530 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
18531
185322007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
18533
18534 * lread.c (Qold_style_backquotes): New var.
18535 (syms_of_lread): Init and staticpro it.
18536 (load_warn_old_style_backquotes): New fun.
18537 (Fload): Use them to warn about old style backquotes.
18538 (end_of_file_error, Fload): Remove unused vars.
18539
18540 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
18541
18542 * lread.c (Vold_style_backquotes): New var.
18543 (syms_of_lread): Init and export it to Elisp.
18544 (read1): Set it when we find an old-style (back)quote.
18545
185462007-08-22 Jason Rumney <jasonr@gnu.org>
18547
18548 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
18549
185502007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
18551
18552 * puresize.h (BASE_PURESIZE): Increase to 1140000.
18553
185542007-08-19 Richard Stallman <rms@gnu.org>
18555
18556 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
18557
185582007-08-19 Andreas Schwab <schwab@suse.de>
18559
18560 * alloc.c (pure): Round PURESIZE up.
18561
185622007-08-17 Jan Djärv <jan.h.d@swipnet.se>
18563
18564 * xterm.c (handle_one_xevent): Remove check that mouse click is in
18565 active frame.
18566
185672007-08-16 Richard Stallman <rms@gnu.org>
18568
18569 * eval.c (Fcommandp): Add parens to clarify.
18570
18571 * minibuf.c (Fall_completions): Use enum for type of table.
18572
18573 * emacs.c (USAGE2): Improve text.
18574
185752007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
18576
18577 * term.c (tty_default_color_capabilities): Declare static
18578 variables in file scope, to avoid HPUX compiler problem.
18579
185802007-08-13 Jan Djärv <jan.h.d@swipnet.se>
18581
18582 * gtkutil.c (update_frame_tool_bar): Use -1 as index
18583 to gtk_toolbar_insert.
18584
185852007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
18586
18587 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
18588
18589 * insdel.c (reset_var_on_error): New fun.
18590 (signal_before_change, signal_after_change):
18591 Use it to reset (after|before)-change-functions to nil in case of error.
18592 Bind inhibit-modification-hooks to t.
18593 Don't bind (after|before)-change-functions to nil while they run.
18594
185952007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18596
18597 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
18598 filling pixmap with stippled background.
18599
186002007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18601
18602 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
18603 Don't use invisible frame as parent window for repositioning.
18604
186052007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
18606
18607 * print.c (new_backquote_output): Rename from old_backquote_output.
18608 (print): Inverse its logic (according to its name) so as to match the
18609 behavior of new_backquote_flag in lread.c.
18610
186112007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18612
18613 * gmalloc.c (posix_memalign): New function.
18614
18615 * macterm.c (frame_highlight, frame_unhighlight): Don't call
18616 ActivateControl/DeactivateControl here.
18617 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
18618 frame-notice-user-settings is non-nil.
18619 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
18620 for kEventParamFMFontStyle.
18621 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
18622 mac_pass_command_to_system and mac_pass_control_to_system here.
18623 (XTread_socket): Call ActivateControl/DeactivateControl here.
18624 (XTread_socket) [TARGET_API_MAC_CARBON]:
18625 Check mac_pass_command_to_system and mac_pass_control_to_system here.
18626 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
18627 for window repositioning.
18628
186292007-08-08 Glenn Morris <rgm@gnu.org>
18630
18631 * Replace `iff' in doc-strings and comments.
18632
186332007-08-07 Chong Yidong <cyd@stupidchicken.com>
18634
18635 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
18636
186372007-08-07 Martin Rudalics <rudalics@gmx.at>
18638
18639 * fileio.c (Finsert_file_contents): Run format-decode and
18640 after_insert_file_functions on entire buffer when REPLACE is
18641 non-nil and inhibit modification_hooks and point_motion_hooks.
18642 For consistency, run after_insert_file_functions iff something
18643 got inserted. Move signal_after_change and update_compositions
18644 after code running after_insert_file_functions. Make sure that
18645 undo_list doesn't record intermediate steps of the decoding process.
18646
186472007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18648
18649 * emacs.c (main)
18650 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
18651 Call malloc_enable_thread on interactive startup.
18652
18653 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
18654 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
18655 [USE_PTHREAD]: Conditionalize with it.
18656 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
18657 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
18658 New functions.
18659
186602007-08-06 Chong Yidong <cyd@stupidchicken.com>
18661
18662 * xdisp.c (redisplay_window): When restoring original buffer
18663 position, make sure it is still valid.
18664
18665 * image.c (png_load): Ignore png-supplied background color.
18666
186672007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18668
18669 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
18670 Use kCFAbsoluteTimeIntervalSince1970.
18671
18672 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
18673 New variable.
18674 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
18675 event loop should be quit.
18676 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
18677 Quit dialog event loop if quit_dialog_event_loop is set.
18678
18679 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
18680 (Selection): New typedef. Use instead of ScrapRef.
18681 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
18682 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
18683 (mac_clear_selection): Rename from clear_scrap.
18684 (get_flavor_type_from_symbol): New argument SEL and subsume function of
18685 scrap_has_target_type. All uses changed.
18686 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
18687 (mac_selection_has_target_p): New functions.
18688 (mac_put_selection_value): Rename from put_scrap_string.
18689 (mac_get_selection_value): Rename from get_scrap_string.
18690 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
18691 (put_scrap_private_timestamp, scrap_has_target_type)
18692 (get_scrap_private_timestamp): Remove functions.
18693 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
18694 (x_own_selection, x_get_local_selection):
18695 Use mac_valid_selection_value_p.
18696 (x_own_selection): Don't use put_scrap_private_timestamp.
18697 Record OWNERSHIP-INFO into Vselection_alist instead.
18698 (x_get_local_selection): Don't check type if request is local.
18699 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
18700 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
18701
187022007-08-04 Jan Djärv <jan.h.d@swipnet.se>
18703
18704 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
18705 add comment explaining why.
18706
187072007-08-03 Richard Stallman <rms@gnu.org>
18708
18709 * fileio.c (Fvisited_file_modtime): Use make_time.
18710
187112007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
18712
18713 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
18714 build.
18715
187162007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
18717
18718 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
18719
187202007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
18721
18722 * puresize.h (BASE_PURESIZE): Increase to 1130000.
18723
187242007-07-30 Richard Stallman <rms@gnu.org>
18725
18726 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
18727
187282007-07-29 Jan Djärv <jan.h.d@swipnet.se>
18729
18730 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
18731
187322007-07-28 Nick Roberts <nickrob@snap.net.nz>
18733
18734 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
18735 remote default-directory.
18736
18737 * buffer.c (mode-line-format): Update doc string.
18738
187392007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18740
18741 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
18742 scroll bar gap.
18743 (x_scroll_bar_create): Set bar->fringe_extended_p.
18744 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
18745 on frame edge. Check fringe background extension. Don't clear
18746 extended fringe background area.
18747
18748 * w32term.h (struct scroll_bar): New member fringe_extended_p.
18749 (w32_fill_area): Enclose multiple statements with do ... while (0).
18750
18751 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
18752 Extend fringe background to scroll bar gap.
18753 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
18754 Set bar->fringe_extended_p.
18755 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18756 Put leftmost/rightmost scroll bars on frame edge. Check fringe
18757 background extension. Don't clear extended fringe background area.
18758
18759 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
18760 New member fringe_extended_p.
18761
187622007-07-25 Glenn Morris <rgm@gnu.org>
18763
18764 * Relicense all FSF files to GPLv3 or later.
18765
18766 * COPYING: Switch to GPLv3.
18767
187682007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
18769
18770 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
18771
18772 * data.c (Finteractive_form): Check for the presence of an
18773 `interactive-form' symbol property more thoroughly.
18774
18775 * data.c (Finteractive_form): Use an `interactive-form' property if
18776 present, analogous to the function-documentation property.
18777
187782007-07-24 Jason Rumney <jasonr@gnu.org>
18779
18780 * w32fns.c (x_real_positions): Get real position from OS instead of
18781 calculating it.
18782
187832007-07-23 Jason Rumney <jasonr@gnu.org>
18784
18785 * filelock.c (current_lock_owner): Allow for @ sign in username.
18786
187872007-07-22 Nick Roberts <nickrob@snap.net.nz>
18788
18789 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
18790 remote default-directory.
18791
18792 * buffer.c (mode-line-format): Describe above case in doc string.
18793
187942007-07-20 Eli Zaretskii <eliz@gnu.org>
18795
18796 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
18797 Define if not defined.
18798
187992007-07-18 Jason Rumney <jasonr@gnu.org>
18800
18801 * w32proc.c (w32_executable_type): Handle 64 bit executables.
18802
188032007-07-18 Richard Stallman <rms@gnu.org>
18804
18805 * data.c (Fsetq_default): Doc fix.
18806
18807 * eval.c (Fsetq): Doc fix.
18808
188092007-07-18 Juanma Barranquero <lekktu@gmail.com>
18810
18811 * coding.c (Ffind_operation_coding_system):
18812 * eval.c (For, Fand): Doc fixes.
18813 Reported by Johan Bockgård.
18814
188152007-07-18 Jan Djärv <jan.h.d@swipnet.se>
18816
18817 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
18818
18819 * xterm.h: Declare x_ewmh_activate_frame.
18820
18821 * xterm.c (x_ewmh_activate_frame): New function.
18822 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
18823
188242007-07-17 Martin Rudalics <rudalics@gmx.at>
18825
18826 * window.c (Fdisplay_buffer): If largest or LRU window is the
18827 only window, split it even if it is not eligible for splitting.
18828 This restores the original behavior broken by the 2007-07-15
18829 change.
18830
188312007-07-17 Glenn Morris <rgm@gnu.org>
18832
18833 * abbrev.c (abbrev_check_chars): New function.
18834 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
18835 Call abbrev_check_chars to check abbrev characters are word
18836 constituents. Doc fix.
18837
188382007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
18839
18840 * process.c (Fstart_process, Fmake_network_process)
18841 (read_process_output): Fix up last changes.
18842
188432007-07-16 Eli Zaretskii <eliz@gnu.org>
18844
18845 * makefile.w32-in (clean): Don't delete *~.
18846
188472007-07-16 Andreas Schwab <schwab@suse.de>
18848
18849 * window.c (Fdisplay_buffer): Use NILP.
18850 (Fset_window_scroll_bars): Likewise.
18851
188522007-07-15 Martin Rudalics <rudalics@gmx.at>
18853
18854 * window.c (window_min_size_2): New function.
18855 (window_min_size_1, size_window, Fdisplay_buffer)
18856 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
18857 windows without mode- or header-lines when window-min-height is
18858 too small.
18859 (size_window): Reset nodelete_p after testing it, following an
18860 earlier note by Kim F. Storm.
18861 (display_buffer): Do not set split_height_threshold to twice the
18862 value of window_min_height to avoid changing the value of a
18863 customizable variable. Rather explicitly check whether the
18864 height of the window that shall be splitted is at least as large
18865 as split_height_threshold.
18866 (Fwindow_full_width_p): New defun.
18867 (syms_of_window): Defsubr it.
18868
18869 * window.h: Add EXFUN for Fwindow_full_width_p.
18870
188712007-07-14 Jason Rumney <jasonr@gnu.org>
18872
18873 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
18874
188752007-07-14 Richard Stallman <rms@gnu.org>
18876
18877 * eval.c (maybe_call_debugger): New function.
18878 (find_handler_clause): Use maybe_call_debugger.
18879 Call it when the handler says `debug'.
18880 Eliminate DEBUGGER_VALUE_PTR.
18881 (Fsignal): Eliminate debugger_value.
18882 (Qdebug): New variable.
18883 (syms_of_eval): Initialize it.
18884
188852007-07-14 Juanma Barranquero <lekktu@gmail.com>
18886
18887 * eval.c (Fprogn):
18888 * keyboard.c (Ftrack_mouse):
18889 * print.c (Fwith_output_to_temp_buffer):
18890 * window.c (Fsave_window_excursion): Doc fix.
18891
188922007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
18893
18894 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
18895
188962007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
18897
18898 * process.h (struct Lisp_Process): Turn slots infd, outfd,
18899 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
18900 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
18901 read_output_delay, and read_output_skip from Lisp_Objects to ints.
18902 Remove unused encoding_carryover.
18903 * process.c: Adjust all functions accordingly.
18904
189052007-07-12 Richard Stallman <rms@gnu.org>
18906
18907 * term.c: Include unistd.h only if HAVE_UNISTD_H.
18908
189092007-07-11 Jason Rumney <jasonr@gnu.org>
18910
18911 * makefile.w32-in (LIBS): Include OLE32.
18912
18913 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
18914 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
18915
189162007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
18917
18918 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
18919 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
18920 from a Lisp_Object into a bare pointer.
18921 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
18922 Adjust the code correspondingly.
18923
18924 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
18925
18926 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
18927 (term_show_mouse_face): Remove unused var `j'.
18928 (handle_one_term_event): Remove unused vars `i' and `j'.
18929 Don't cast return value of ttyname since it's not necessary.
18930
189312007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
18932
18933 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
18934 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
18935
18936 * fns.c (map_char_table): Use an array of int for `indices' rather than
18937 an array of Lisp_Objects (which are only ever integers anyway).
18938 (Fmap_char_table): Update caller.
18939 * lisp.h: Update prototype.
18940 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
18941 * fontset.c (Ffontset_info):
18942 * casetab.c (set_case_table): Update callers.
18943
18944 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
18945
18946 * keymap.c (struct accessible_keymaps_data)
18947 (struct where_is_internal_data): New structures.
18948 (accessible_keymaps_1, where_is_internal_1): Use them to change
18949 interface to adhere to the one used by map_keymap.
18950 (Faccessible_keymaps, where_is_internal): Use map_keymap.
18951 (accessible_keymaps_char_table, where_is_internal_2): Remove.
18952
18953 * keymap.h (map_keymap_function_t): More informative prototype.
18954
189552007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
18956
18957 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
18958 (looking_at_1): Don't change search_regs and last_thing_searched
18959 if `inhibit-changing-match-data' is non-nil.
18960 (string_match_1, search_buffer, set_search_regs): Likewise.
18961 (syms_of_search): Add Lisp level definition for
18962 `inhibit-changing-match-data' and set it to nil.
18963 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
18964 start and end of the match, instead of using values in search_regs.
18965
189662007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
18967
18968 * minibuf.c (Fcompleting_read): New value `confirm-only'
18969 for `require-match'.
18970
189712007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
18972
18973 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
18974 part of the 2007-06-27 change to syms_of_fileio.
18975
189762007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18977
18978 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
18979 Check WINDOWP before using XWINDOW. Consolidate return statements.
18980
189812007-06-27 Richard Stallman <rms@gnu.org>
18982
18983 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
18984
189852007-06-27 Juanma Barranquero <lekktu@gmail.com>
18986
18987 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
18988
189892007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
18990
18991 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
18992 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
18993 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
18994 (_free_internal, memalign): Use them.
18995 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
18996 Initialize to PTHREAD_MUTEX_INITIALIZER.
18997 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
18998 (morecore_nolock): Rename from morecore. All uses changed.
18999 Use only nolock versions of internal allocation functions.
19000 (_malloc_internal_nolock, _realloc_internal_nolock)
19001 (_free_internal_nolock): New functions created from
19002 _malloc_internal, _realloc_internal, and _free_internal.
19003 (_malloc_internal, _realloc_internal, _free_internal): Use them.
19004 Copy hook value to automatic variable before its use.
19005 (memalign): Copy hook value to automatic variable before its use.
19006
190072007-06-26 Kenichi Handa <handa@m17n.org>
19008
19009 * coding.c (Ffind_operation_coding_system): Docstring improved.
19010 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
19011
190122007-06-25 David Kastrup <dak@gnu.org>
19013
19014 * keymap.c (Fcurrent_active_maps): Add `position' argument.
19015 (Fwhere_is_internal): Adjust call to `current-active-maps' to
19016 cater for additional parameter.
19017
19018 * keymap.h: Adjust number of parameters to `current-active-maps'.
19019
19020 * doc.c (Fsubstitute_command_keys): Adjust call of
19021 `current-active-maps'.
19022
190232007-06-25 David Kastrup <dak@gnu.org>
19024
19025 * callint.c (Fcall_interactively): Make the parsing of interactive
19026 specs somewhat more readable.
19027
190282007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19029
19030 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
19031 to scroll bar gap also when bitmap fills fringe. Draw only foreground
19032 if extended background has already been filled.
19033
190342007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19035
19036 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
19037 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
19038
19039 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
19040 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
19041 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
19042 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
19043 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
19044 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
19045 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
19046 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
19047 Run timers during dialog popup.
19048 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
19049
190502007-06-21 Jason Rumney <jasonr@gnu.org>
19051
19052 * image.c (convert_mono_to_color_image): Swap fore and background.
19053
190542007-06-20 Jason Rumney <jasonr@gnu.org>
19055
19056 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
19057 (w32_free_bdf_font): Unmap memory not handle.
19058
190592007-06-20 Sam Steingold <sds@gnu.org>
19060
19061 * gmalloc.c (__morecore): Fix the declaration to comply with the
19062 definition.
19063
190642007-06-20 Juanma Barranquero <lekktu@gmail.com>
19065
19066 * w32term.c (w32_delete_display): Remove leftover declaration.
19067 (w32_define_cursor, w32_initialize): Make static.
19068
19069 * w32.c (_wsa_errlist): Fix typo in error message.
19070 (init_environment): Ignore any environment variable from the
19071 registry having a null value.
19072
190732007-06-20 Glenn Morris <rgm@gnu.org>
19074
19075 * Makefile.in (LIBGIF): Default to -lgif.
19076
190772007-06-17 Jason Rumney <jasonr@gnu.org>
19078
19079 * w32menu.c (add_menu_item): Don't use multibyte string functions on
19080 unicode strings.
19081
190822007-06-16 Juanma Barranquero <lekktu@gmail.com>
19083
19084 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
19085 Fix typo in docstring.
19086
190872007-06-16 Eli Zaretskii <eliz@gnu.org>
19088
19089 * w32menu.c (add_menu_item): Escape `&' characters in menu items
19090 and their keybindings.
19091
190922007-06-15 Chong Yidong <cyd@stupidchicken.com>
19093
19094 * composite.c (update_compositions): Fix last fix.
19095
190962007-06-14 Jason Rumney <jasonr@gnu.org>
19097
19098 * w32.c (get_process_times_fn): New function pointer.
19099 (globals_of_w32): Intialize it if present in kernel32.dll.
19100 (w32_get_internal_run_time): New function.
19101
19102 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
19103
191042007-06-14 Kenichi Handa <handa@etlken.m17n.org>
19105
19106 * composite.c (update_compositions): Check the validness of
19107 compositions.
19108
191092007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19110
19111 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
19112 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
19113
19114 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
19115 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
19116
19117 * macgui.h (USE_MAC_TOOLBAR): New define.
19118
19119 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19120 Return immediately unless popup is activated.
19121
19122 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
19123 background to scroll bar gap.
19124 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
19125 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
19126 scroll bars on frame edge. Check fringe background extension.
19127 Don't clear extended fringe background area.
19128 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
19129 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
19130 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
19131 [USE_MAC_TOOLBAR]: New macros.
19132 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
19133 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
19134 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
19135 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
19136 [USE_MAC_TOOLBAR]: New functions.
19137 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
19138 manually if previous repositioning has failed.
19139 (mac_handle_keyboard_event): Use precomputed event kind.
19140 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
19141 as tool bar item click. Handle mouse movement over tool bar items.
19142
19143 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
19144 toolbar_win_gravity.
19145 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
19146 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
19147 Add externs.
19148
19149 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
19150 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
19151
191522007-06-14 Chong Yidong <cyd@stupidchicken.com>
19153
19154 * image.c (search_image_cache): Remove unused variable.
19155
191562007-06-13 Chong Yidong <cyd@stupidchicken.com>
19157
19158 * xfns.c, xmenu.c: Link to xaw3d if available.
19159
191602007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19161
19162 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
19163 frame_foreground and frame_background.
19164
19165 * image.c (lookup_image): Save frame foreground and background colors.
19166 (search_image_cache): Check if saved and current frame colors match.
19167
191682007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
19169
19170 * regex.c (regex_compile): Remove the `regnum' counter.
19171 Use bufp->re_nsub instead. Add support for \(?N:RE\).
19172
191732007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
19174
19175 * term.c: Include intervals.h to declare Fget_text_property.
19176
191772007-06-10 Jason Rumney <jasonr@gnu.org>
19178
19179 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
19180
191812007-06-08 Juanma Barranquero <lekktu@gmail.com>
19182
19183 * callint.c (Fcall_interactively):
19184 * editfns.c (Fdelete_and_extract_region):
19185 * fileio.c (Fread_file_name):
19186 * fns.c (Fmapconcat):
19187 * keyboard.c (cmd_error_internal):
19188 * keymap.c (Fkey_description):
19189 * lread.c (openp):
19190 * minibuf.c (read_minibuf):
19191 * search.c (wordify):
19192 * sunfns.c (sel_read):
19193 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
19194 * xfns.c (x_default_scroll_bar_color_parameter):
19195 * xmenu.c (menu_help_callback):
19196 * xselect.c (Fx_get_atom_name):
19197 * xterm.c (x_term_init): Use empty_unibyte_string.
19198
191992007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
19200
19201 * alloc.c (init_strings): Initialize canonical empty strings.
19202 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
19203 canonical empty string when the requested size is 0.
19204
19205 * emacs.c (empty_unibyte_string): Rename from empty_string.
19206 (empty_multibyte_string): New canonical empty string.
19207 (syms_of_emacs): Don't initialize empty_string.
19208
19209 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
19210 string, if appropriate.
19211 (empty_unibyte_string, empty_multibyte_string): New externs.
19212 (empty_string): Remove extern.
19213
19214 * lread.c (syms_of_lread): Use empty_unibyte_string.
19215
192162007-06-07 Jason Rumney <jasonr@gnu.org>
19217
19218 * s/ms-w32.h: Don't define HAVE_TZNAME.
19219
19220 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
19221
192222007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19223
19224 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
19225
19226 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
19227 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
19228
19229 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
19230 Don't call next handler.
19231 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
19232 Remove argument. Install handler to application.
19233 (set_frame_menubar): Don't change deep_p.
19234 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
19235 FRAME_OUTER_TO_INNER_DIFF_Y.
19236 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
19237 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
19238 [HAVE_DIALOGS]: New macros.
19239 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
19240 Use them.
19241 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
19242
19243 * macselect.c [MAC_OSX] (install_service_handler): Rename from
19244 init_service_handler. All callers changed. Return OSStatus value.
19245
19246 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
19247 All callers changed so as not to call SetPortWindowPort.
19248 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
19249 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
19250 mac_draw_string_common.
19251 (mac_draw_image_string_qd): Likewise.
19252 (mac_draw_string_common): Use them. Add INLINE.
19253 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
19254 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
19255 GetGlobalMouse.
19256 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
19257 and FRAME_OUTER_TO_INNER_DIFF_Y.
19258 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
19259 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
19260 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
19261 repositioning window to mac_handle_window_event.
19262 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
19263 saving window location to mac_handle_window_event
19264 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
19265 (install_menu_target_item_handler): Remove argument in extern.
19266 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
19267 Also accept command events.
19268 (do_keystroke): New function created from XTread_socket.
19269 (init_command_handler): Remove functions.
19270 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
19271 and save window location by kEventWindowShowing and kEventWindowHiding
19272 handlers here. Don't call next handler for window state change and
19273 focus events.
19274 (mac_handle_application_event, mac_handle_keyboard_event)
19275 [TARGET_API_MAC_CARBON]: New functions.
19276 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
19277 kEventWindowShowing and kEventWindowHiding events. Move installation
19278 of mouse, font, text input and menu target item handlers to
19279 install_application_handler.
19280 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
19281 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19282 New function.
19283 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
19284 Register it.
19285 (XTread_socket) [TARGET_API_MAC_CARBON]:
19286 Consolidate SendEventToEventTarget calls.
19287 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
19288 Move application activation handler to mac_handle_application_event.
19289 Move keyboard handler to mac_handle_keyboard_event.
19290 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
19291 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
19292 init_command_handler. Call install_application_handler.
19293
19294 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
19295 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
19296
192972007-06-07 Glenn Morris <rgm@gnu.org>
19298
19299 * emacs.c (main): Use `emacs-copyright' in --version output.
19300
193012007-06-06 Chong Yidong <cyd@stupidchicken.com>
19302
19303 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
19304
193052007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19306
19307 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
19308
19309 * macgui.h: Replace WindowPtr with WindowRef.
19310
19311 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19312 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19313 Replace ControlHandle with ControlRef.
19314 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
19315
19316 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
19317 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
19318 Replace ControlHandle with ControlRef.
19319 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
19320 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
19321
19322 * macterm.h (struct scroll_bar): Rename member control_handle_low
19323 and control_handle_high to control_ref_low and control_ref_high.
19324 All uses changed.
19325 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
19326 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
19327 respectively. All uses changed.
19328 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
19329 (install_window_handler, remove_window_handler): Replace WindowPtr
19330 with WindowRef in externs.
19331
193322007-06-05 Juanma Barranquero <lekktu@gmail.com>
19333
19334 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
19335
193362007-06-03 Nick Roberts <nickrob@snap.net.nz>
19337
19338 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
19339
19340 * frame.c (Fmouse_position, Fmouse_pixel_position):
19341 Condition on HAVE_GPM too.
19342
19343 * term.c (term_mouse_highlight): Remove unused variables.
19344 (Fterm_open_connection): Set gpm_zerobased to 1.
19345 (term_mouse_movement, term_mouse_click, handle_one_term_event):
19346 Use zero based co-ordinates.
19347 (handle_one_term_event): Report a drag as mouse movement too.
19348
19349 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
19350
193512007-06-03 Chong Yidong <cyd@stupidchicken.com>
19352
19353 * image.c (search_image_cache): New function. Require background
19354 color match if background color is unspecified in the image spec.
19355 (uncache_image, lookup_image): Use it.
19356
193572007-06-01 Juanma Barranquero <lekktu@gmail.com>
19358
19359 * window.c (Fshrink_window): Reflow docstring.
19360
193612007-06-02 Chong Yidong <cyd@stupidchicken.com>
19362
19363 * Version 22.1 released.
19364
193652007-06-01 Richard Stallman <rms@gnu.org>
19366
19367 * xfns.c (x_encode_text): Add GCPRO.
19368
193692007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19370
19371 * xfns.c (x_set_name_internal): Save encoded name before
19372 x_encode_text in case string data is relocated.
19373
193742007-05-31 Richard Stallman <rms@gnu.org>
19375
19376 * buffer.c (syms_of_buffer): Doc fix.
19377
193782007-05-30 Nick Roberts <nickrob@snap.net.nz>
19379
19380 * sysdep.c (init_sys_modes): Add rather than replace with
19381 O_NONBLOCK.
19382
19383 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
19384 term_mouse_moveto.
19385
19386 * termhooks.h (term_mouse_moveto): New extern.
19387
19388 * term.c (mouse_face_window): Rename...
19389 (Qmouse_face_window): ...to this.
19390 (term_show_mouse_face, term_clear_mouse_face)
19391 (term_mouse_highlight): Use Qmouse_face_window.
19392 (term_mouse_moveto): New function.
19393 (term_mouse_position): Make it work.
19394 (syms_of_term): Uncomment assignment to mouse_position_hook.
19395 Staticpro Qmouse_face_window.
19396
193972007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19398
19399 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
19400 around current_column call.
19401
194022007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
19403
19404 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
19405 * xdisp.c (next_element_from_buffer):
19406 * window.c (delete_window):
19407 * term.c (term_mouse_highlight):
19408 * msdos.c (getdefdir):
19409 * macterm.c (mac_create_bitmap_from_bitmap_data)
19410 (init_font_name_table):
19411 * fns.c (Fsxhash):
19412 * data.c (Fmake_local_variable):
19413 * ccl.c (ccl_driver): Likewise.
19414
194152007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19416
19417 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
19418 Call mac_wakeup_from_rne on window size change.
19419
194202007-05-25 Chong Yidong <cyd@stupidchicken.com>
19421
19422 * image.c (uncache_image): Fix typo.
19423
194242007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
19425
19426 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
19427
194282007-05-22 Richard Stallman <rms@gnu.org>
19429
19430 * xterm.c (x_connection_closed): Remove NO_RETURN.
19431
194322007-05-22 Martin Rudalics <rudalics@gmx.at>
19433
19434 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
19435
194362007-05-21 Chong Yidong <cyd@stupidchicken.com>
19437
19438 * image.c (uncache_image): New function.
19439 (Fimage_refresh): New function.
19440
194412007-05-20 Jan Djärv <jan.h.d@swipnet.se>
19442
19443 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
19444
194452007-05-20 Nick Roberts <nickrob@snap.net.nz>
19446
19447 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
19448 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
19449
194502007-05-20 Nick Roberts <nickrob@snap.net.nz>
19451
19452 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
19453 conditional on [HAVE_GPM_H].
19454
194552007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
19456
19457 * syntax.c (skip_chars): Update syntax-table only after we checked that
19458 the new location is valid.
19459
194602007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19461
19462 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
19463 mac_get_window_bounds.
19464
194652007-05-20 Nick Roberts <nickrob@snap.net.nz>
19466
19467 * Makefile.in (LIBGPM): Allow it to be set from configure.
19468 If set then link Emacs with it.
19469
19470 * config.in: Regenerate.
19471
19472 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
19473 New externs.
19474
19475 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
19476 Include gpm.h.
19477 (handle_one_term_event, term_gpm): New externs.
19478
19479 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
19480 and allow it to be interrupted by SIGIO.
19481
19482 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
19483 (wait_reading_process_output): Wait on gpm_fd too.
19484 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
19485 (add_gpm_wait_descriptor_called_flag): New variable.
19486 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
19487
19488 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
19489 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
19490 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
19491 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
19492 (make_lispy_event): Add case GPM_CLICK_EVENT.
19493 (read_avail_input): Handle mouse input.
19494
19495 * term.c (write_glyphs_with_face): New function.
19496 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
19497 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
19498 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
19499 (mouse_face_face_id, term_gpm, pos_x, pos_y)
19500 (last_mouse_x, last_mouse_y): New variables.
19501 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
19502 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
19503 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
19504 (Fterm_close_connection): New functions.
19505 (term_init): Initialise mouse_face_window.
19506
195072007-05-19 Chong Yidong <cyd@stupidchicken.com>
19508
19509 * xdisp.c (redisplay_window): If first window line is a
19510 continuation line, recompute the new window start instead of
19511 recentering.
19512
195132007-05-18 Glenn Morris <rgm@gnu.org>
19514
19515 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
19516 Suggested by Alfred M. Szmidt <ams@gnu.org>.
19517
195182007-05-17 Glenn Morris <rgm@gnu.org>
19519
19520 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
19521
195222007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19523
19524 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
19525 dead key repeat and up events.
19526
195272007-05-14 Chong Yidong <cyd@stupidchicken.com>
19528
19529 * image.c (pbm_load): Check image size for monochrome pbm.
19530
195312007-05-13 Chong Yidong <cyd@stupidchicken.com>
19532
19533 * xterm.c (XTread_socket): Revert last change.
19534
195352007-05-12 Chong Yidong <cyd@stupidchicken.com>
19536
19537 * image.c (pbm_load): Correctly check image size for greyscale pbm.
19538
19539 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
19540
195412007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19542
19543 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
19544 mixup (YAILOM).
19545
195462007-05-07 Andreas Schwab <schwab@suse.de>
19547
19548 * keymap.c (Flookup_key): Fix typo in last change.
19549
195502007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
19551
19552 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
19553 mapping for unibyte strings.
19554
195552007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19556
19557 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
19558 (Fx_popup_dialog) [MAC_OSX]: Likewise.
19559
195602007-04-29 Richard Stallman <rms@gnu.org>
19561
19562 * insdel.c (replace_range): For undo, record insertion first.
19563
195642007-04-29 Andreas Schwab <schwab@suse.de>
19565
19566 * lisp.h (VECSIZE): Use OFFSETOF.
19567
195682007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19569
19570 * xdisp.c (try_window_reusing_current_matrix): Fix number of
19571 disabled lines.
19572
195732007-04-28 Richard Stallman <rms@gnu.org>
19574
19575 * lread.c (read_escape): In a string, \s is always space.
19576
195772007-04-27 Jan Djärv <jan.h.d@swipnet.se>
19578
19579 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
19580
19581 * gtkutil.c (xg_update_menubar, create_menus): Create empty
19582 submenu for menu bar items.
19583
19584See ChangeLog.10 for earlier changes.
19585
19586;; Local Variables:
19587;; coding: utf-8
19588;; add-log-time-zone-rule: t
aac0c6e3
MR
19589;; End:
19590
76b6f707 19591 Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc.
aac0c6e3
MR
19592
19593 This file is part of GNU Emacs.
19594
19595 GNU Emacs is free software: you can redistribute it and/or modify
19596 it under the terms of the GNU General Public License as published by
19597 the Free Software Foundation, either version 3 of the License, or
19598 (at your option) any later version.
19599
19600 GNU Emacs is distributed in the hope that it will be useful,
19601 but WITHOUT ANY WARRANTY; without even the implied warranty of
19602 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19603 GNU General Public License for more details.
19604
19605 You should have received a copy of the GNU General Public License
19606 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
19607
19608;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40