On msdos, set LIBS_SYSTEM with config.bat, not cpp.
[bpt/emacs.git] / src / ChangeLog
1 2010-05-11 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
4 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
5
6 2010-05-10 Eli Zaretskii <eliz@gnu.org>
7
8 * xdisp.c (init_iterator): Don't turn on bidi reordering in
9 unibyte buffers. See
10 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
11
12 2010-05-10 Glenn Morris <rgm@gnu.org>
13
14 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
15 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
16 (LIBES): Use LIBS_SYSTEM as a variable.
17 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
18 * s/aix4-2.h (LIBS_SYSTEM):
19 * s/freebsd.h (LIBS_SYSTEM):
20 * s/hpux10-20.h (LIBS_SYSTEM):
21 * s/sol2-6.h (LIBS_SYSTEM):
22 * s/unixware.h (LIBS_SYSTEM):
23 Move to configure.
24
25 * s/aix4-2.h (MAIL_USE_LOCKF):
26 * s/bsd-common.h (MAIL_USE_FLOCK):
27 * s/darwin.h (MAIL_USE_FLOCK):
28 * s/gnu-linux.h (MAIL_USE_FLOCK):
29 * s/irix6-5.h (MAIL_USE_FLOCK):
30 * s/template.h (MAIL_USE_FLOCK):
31 Move to configure.
32
33 2010-05-08 Chong Yidong <cyd@stupidchicken.com>
34
35 * Version 23.2 released.
36
37 2010-05-08 Andreas Schwab <schwab@linux-m68k.org>
38
39 * composite.c (autocmp_chars): Save point as marker before calling
40 auto-composition-function (Bug#5984).
41
42 * lisp.h (restore_point_unwind): Add prototype.
43
44 * fileio.c (restore_point_unwind): Remove static attribute.
45
46 2010-05-08 Kenichi Handa <handa@m17n.org>
47
48 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
49 new feature of libotf and m17n-flt.
50 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
51 Call OTF_check_features even if no specific feature is given.
52 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
53 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
54 that OUT is NULL. Use OTF_drive_gsub_with_log and
55 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
56 OTF_drive_gpos.
57 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
58 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
59 Setup mflt_enable_new_feature and mflt_try_otf.
60
61 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
62
63 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
64
65 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
66 box and toolbar (Bug #6139).
67 (xg_create_tool_bar): Remove comment (Bug #6139).
68 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
69 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
70
71 2010-05-08 Juanma Barranquero <lekktu@gmail.com>
72
73 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
74 Update dependencies.
75
76 2010-05-08 Eli Zaretskii <eliz@gnu.org>
77
78 * fringe.c (update_window_fringes): Set up truncation bitmaps for
79 R2L lines.
80
81 2010-05-08 Glenn Morris <rgm@gnu.org>
82
83 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
84
85 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
86 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
87 (termcapobj): Replace with TERMCAP_OBJ.
88 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
89 (LIBES): Use LIBS_TERMCAP as a variable.
90
91 * s/freebsd.h (osreldate.h): No longer include, since this file
92 does not use __FreeBSD_version any more.
93
94 * s/aix4-2.h (TERMINFO):
95 * s/cygwin.h (TERMINFO):
96 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
97 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
98 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
99 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
100 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
101 * s/irix6-5.h (TERMINFO):
102 * s/netbsd.h (LIBS_TERMCAP):
103 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
104 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
105 * s/usg5-4.h (TERMINFO):
106 Move to configure.
107
108 2010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
109
110 * eval.c (unbind_to): Don't unbind a local binding into the global
111 binding when the local binding disappeared. Inversely, don't unbind
112 a global binding into a newly created local binding.
113 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
114 can specify the frame to use, when applicable. Adjust callers.
115
116 2010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
117 Stefan Monnier <monnier@iro.umontreal.ca>
118
119 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
120
121 2010-05-07 Eli Zaretskii <eliz@gnu.org>
122
123 * w32fns.c: Include w32.h.
124 (Fw32_shell_execute): Decode the error message before passing it
125 to `error'. (Bug#6126)
126
127 * msdos.c (dos_set_window_size):
128 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
129 instead of `XSYMBOL (foo)->value'.
130
131 2010-05-07 Eli Zaretskii <eliz@gnu.org>
132
133 Fix the MS-DOS build, broken by autoconfiscation.
134
135 * Makefile.in: Don't use Make-style comments past the "start of
136 cpp stuff" line.
137 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
138
139 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
140 edited directly by msdos/sed1v2.inp).
141
142 2010-05-07 Glenn Morris <rgm@gnu.org>
143
144 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
145 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
146 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
147 move out of cpp section.
148 * s/freebsd.h (LD_SWITCH_SYSTEM):
149 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
150 * s/netbsd.h (LD_SWITCH_SYSTEM):
151 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
152
153 2010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
154
155 Define LIB_STANDARD and START_FILES using autoconf.
156 * s/usg5-4.h (LIB_STANDARD):
157 * s/netbsd.h (START_FILES):
158 * s/irix6-5.h (LIB_STANDARD):
159 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
160 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
161 * s/freebsd.h (START_FILES):
162 * s/darwin.h (START_FILES):
163 * s/cygwin.h (START_FILES):
164 * s/aix4-2.h (LIB_STANDARD):
165 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
166 * Makefile.in (STARTFILES): Rename to START_FILES, define using
167 autoconf, not cpp.
168
169 2010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
170
171 Remove NEED_BSDTTY and NEED_UNISTD_H.
172 * s/hpux10-20.h (NEED_BSDTTY): Remove.
173 * s/aix4-2.h (NEED_UNISTD_H): Remove.
174 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
175 <sys/ptyio.h> and <unistd.h>.
176
177 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
178
179 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
180 * s/gnu.h (START_FILES): Remove empty definition.
181
182 2010-05-06 Jan Djärv <jan.h.d@swipnet.se>
183
184 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
185
186 2010-05-06 Glenn Morris <rgm@gnu.org>
187
188 * Makefile.in (CPP, LN_S): Remove unused variables.
189
190 2010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
191
192 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
193
194 2010-05-05 Lawrence Mitchell <wence@gmx.li>
195
196 * m/sparc.h: Fix typo in earlier change.
197
198 2010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
199
200 Misc tweaks.
201 * eval.c (Fdefvaralias): Remove unintended nested if.
202 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
203
204 2010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
205
206 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
207
208 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
209
210 Remove BSD_PGRPS.
211 * s/bsd-common.h (BSD_PGRPS): Remove undef.
212 * s/gnu-linux.h (BSD_PGRPS): Remove.
213 * term.c (dissociate_if_controlling_tty):
214 * sysdep.c (narrow_foreground_group, widen_foreground_group)
215 (init_sys_modes, reset_sys_modes):
216 * emacs.c (main):
217 * callproc.c (Fcall_process, child_setup): Remove code depending
218 on BSD_PGRPS.
219
220 Remove POSIX_SIGNALS.
221 * s/usg5-4.h (POSIX_SIGNALS):
222 * s/netbsd.h (POSIX_SIGNALS):
223 * s/msdos.h (POSIX_SIGNALS):
224 * s/ms-w32.h (POSIX_SIGNALS):
225 * s/hpux11.h (POSIX_SIGNALS):
226 * s/gnu.h (POSIX_SIGNALS):
227 * s/gnu-linux.h (POSIX_SIGNALS):
228 * s/freebsd.h (POSIX_SIGNALS):
229 * s/darwin.h (POSIX_SIGNALS):
230 * s/cygwin.h (POSIX_SIGNALS):
231 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
232 * s/unixware.h:
233 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
234 * process.c (create_process):
235 * syssignal.h:
236 * sysdep.c (wait_for_termination, init_signals):
237 * process.c (create_process):
238 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
239 remove all code that assumes the contrary.
240
241 2010-05-04 Glenn Morris <rgm@gnu.org>
242
243 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
244 variable.
245 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
246 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
247 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
248 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
249 LD_SWITCH_SYSTEM_tmp.
250 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
251 New variables, set by configure.
252
253 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
254 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
255 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
256 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
257 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
258
259 * s/aix4-2.h (C_SWITCH_SYSTEM):
260 * m/alpha.h (C_SWITCH_MACHINE):
261 Move to configure.in.
262 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
263 New variables, set by configure.
264 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
265 $c_switch_machine and $c_switch_system.
266
267 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
268
269 * s/hpux10-20.h (LIB_STANDARD): New definition.
270 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
271 on it, not used anymore.
272
273 2010-05-03 Chong Yidong <cyd@stupidchicken.com>
274
275 * eval.c (internal_condition_case_n): Rename from
276 internal_condition_case_2.
277 (internal_condition_case_2): New function.
278
279 * xdisp.c (safe_call): Use internal_condition_case_n.
280
281 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
282 (internal_delete_file, Frename_file): Callers changed.
283
284 * buffer.c (Fkill_buffer):
285 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
286
287 * lisp.h: Update prototypes.
288
289 2010-05-03 Glenn Morris <rgm@gnu.org>
290
291 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
292 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
293 (LIBXT): Set with configure, not cpp.
294 (LIBX): Remove.
295 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
296
297 2010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
298
299 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
300 The FreeBSD is not needed, the default works, Solaris version is
301 not needed, and the remaining case is not supported by configure.
302
303 2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
304
305 * xsmfns.c (CHDIR_OPT): New define.
306 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
307 restarting emacs.
308
309 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
310 shut_down_emacs.
311
312 * emacs.c (USAGE1): Mention --chdir.
313 (main): Handle --chdir.
314 (standard_args): Add --chdir.
315 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
316 #5552).
317
318 2010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
319
320 Remove LD_SWITCH_MACHINE.
321 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
322 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
323
324 Clean up IRIX code.
325 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
326 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
327
328 Clean up AIX code.
329 * m/ibmrs6000.inp: Remove file, unused.
330 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
331 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
332 definition ...
333 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
334
335 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
336 unused.
337
338 2010-05-01 Eli Zaretskii <eliz@gnu.org>
339
340 Emulate POSIX_SIGNALS on MS-Windows.
341
342 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
343 (SIG_SETMASK, SIG_UNBLOCK): Define.
344
345 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
346 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
347 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
348
349 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
350 New stubs.
351
352 Miscellaneous fixes of bidi display.
353
354 * xdisp.c (find_row_end): New function, refactored from display_line.
355 (display_line): Use it.
356 (extend_face_to_end_of_line): In almost-filled rows, extend only
357 if the row is R2L and not continued.
358 (display_line): Fix prepending of truncation glyphs to R2L rows.
359 Preserve overlay and string info in row->end.
360 (insert_left_trunc_glyphs): Support addition of left truncation
361 glyphs to R2L rows.
362 (set_cursor_from_row): Don't place cursor on the vertical border
363 glyph between adjacent windows. Fix a crash when a display string
364 is continued to the next line. Don't return zero if cursor was
365 found by `cursor' property of a display string.
366 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
367 test for that explicitly.
368
369 2010-05-01 Glenn Morris <rgm@gnu.org>
370
371 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
372 for clarity.
373 (OTHER_OBJ): Remove.
374 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
375 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
376
377 2010-05-01 Karel Klíč <kklic@redhat.com>
378
379 * fileio.c (Ffile_selinux_context): Context functions may return null.
380
381 2010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
382
383 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
384
385 2010-04-30 Glenn Morris <rgm@gnu.org>
386
387 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
388 (OTHER_OBJ): Define as a separate variable, for clarity.
389
390 2010-04-30 Jan Djärv <jan.h.d@swipnet.se>
391
392 * xsettings.c: include limits.h and update file comment.
393
394 2010-04-30 Glenn Morris <rgm@gnu.org>
395
396 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
397 Set with configure, not cpp.
398 (LIBW): Remove, replace with $TOOLKIT_LIBW.
399
400 * Makefile.in (mallocobj): Remove.
401 (otherobj): Simplify using @OTHER_OBJ@.
402
403 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
404 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
405 Don't bother making nsgui.h dependency platform-specific.
406
407 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
408
409 2010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
410
411 * process.c (read_process_output, exec_sentinel): Don't burp if the
412 sentinel/filter kills the current buffer (bug#6060).
413
414 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
415 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
416 Remove unused var `args'.
417 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
418 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
419 * doc.c (store_function_docstring): Use XSETCAR.
420
421 2010-04-28 Glenn Morris <rgm@gnu.org>
422
423 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
424 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
425
426 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
427
428 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
429 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
430
431 * Makefile.in (FONT_OBJ): New, set by configure.
432 (FONT_DRIVERS): Use $FONT_OBJ.
433
434 * Makefile.in (LIBXMU): Set with configure, not cpp.
435 * s/aix4-2.h (LIBXMU):
436 * s/hpux10-20.h (LIBXMU):
437 Remove definition, now set in configure.
438
439 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
440
441 * m/amdx86-64.h [i386]: Move this test to configure.in.
442
443 2010-04-27 Glenn Morris <rgm@gnu.org>
444
445 * Makefile.in (LIBXTR6): Set with configure, not cpp.
446 * s/unixware.h (NEED_LIBW): Remove definition.
447
448 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
449 (TOOLKIT_LIBW): New, set by configure.
450 (@X_TOOLKIT_TYPE@): No longer define it.
451
452 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
453 (MOTIF_LIBW): Set with configure, not cpp.
454 * s/aix4-2.h (LIB_MOTIF):
455 * s/gnu-linux.h (LIB_MOTIF):
456 * s/unixware.h (LIB_MOTIF): Move to configure.in.
457
458 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
459
460 Reduce CPP usage.
461 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
462 (obj): Use autoconf for unexec instead of cpp.
463 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
464 definitions and undefs. Inline definitions in the only user.
465 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
466
467 2010-04-27 Glenn Morris <rgm@gnu.org>
468
469 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
470 since the defaults (set by the system file) are fine in most cases.
471 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
472 * m/ibms390x.h (START_FILES, LIB_STANDARD):
473 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
474 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
475 Remove definitions, since they are set correctly in s/gnu-linux.h.
476 * s/freebsd.h (START_FILES, LIB_STANDARD):
477 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
478 * s/hpux10-20.h (START_FILES):
479 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
480 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
481
482 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
483 (MOTIF_LIBW): Use $LIBXP.
484 (otherobj): Use $WIDGET_OBJ.
485
486 2010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
487
488 * Makefile.in (LIBS_MACHINE): Remove, unused.
489
490 Use autoconf instead of cpp for LIB_MATH.
491 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
492 * s/cygwin.h (LIB_MATH): Likewise.
493 * Makefile.in (LIB_MATH): Do not define with cpp.
494 (LIBES): Use autoconf for LIB_MATH.
495
496 2010-04-26 Kenichi Handa <handa@m17n.org>
497
498 * composite.c (Ffind_composition_internal): Fix the return value
499 for an automatic composition.
500
501 2010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
502
503 Remove all NO_ARG_ARRAY uses.
504 * fns.c (concat2, concat3, nconc2):
505 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
506 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
507 * m/xtensa.h (NO_ARG_ARRAY):
508 * m/template.h (NO_ARG_ARRAY):
509 * m/sparc.h (NO_ARG_ARRAY):
510 * m/sh3.h (NO_ARG_ARRAY):
511 * m/mips.h (NO_ARG_ARRAY):
512 * m/macppc.h (NO_ARG_ARRAY):
513 * m/iris4d.h (NO_ARG_ARRAY):
514 * m/intel386.h (NO_ARG_ARRAY):
515 * m/ibms390x.h (NO_ARG_ARRAY):
516 * m/ibms390.h (NO_ARG_ARRAY):
517 * m/ibmrs6000.h (NO_ARG_ARRAY):
518 * m/ia64.h (NO_ARG_ARRAY):
519 * m/hp800.h (NO_ARG_ARRAY):
520 * m/arm.h (NO_ARG_ARRAY):
521 * m/amdx86-64.h (NO_ARG_ARRAY):
522 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
523
524 2010-04-25 Eli Zaretskii <eliz@gnu.org>
525
526 * xdisp.c (display_line): Don't assume 2nd call to
527 get_next_display_element cannot return zero. (Bug#6030)
528 (iterate_out_of_display_property): New function, body from pop_it.
529 (pop_it): Use it.
530
531 2010-04-24 Glenn Morris <rgm@gnu.org>
532
533 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
534 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
535 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
536 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
537
538 2010-04-24 Eli Zaretskii <eliz@gnu.org>
539
540 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
541 use `get_next_display_element' and `set_iterator_to_next' to
542 advance to the next character, when looking for the character that
543 begins the next row.
544
545 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
546 definition of "struct Lisp_Symbol".
547
548 2010-04-24 Glenn Morris <rgm@gnu.org>
549
550 * Makefile.in (CRT_DIR): New variable, set by configure.
551 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
552 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
553
554 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
555
556 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
557
558 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
559
560 Remove redundant flags.
561 * s/freebsd.h (C_SWITCH_SYSTEM):
562 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
563 * s/netbsd.h (C_SWITCH_SYSTEM):
564 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
565 of these.
566
567 Simplify m/intel386.h.
568 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
569 user: ecrt0.c.
570 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
571 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
572 the only user: s/unixware.h.
573 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
574 from m/intel386.h.
575 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
576 moved here from m/intel386.h.
577
578 * m/mips.h: Remove #if 0 code.
579
580 2010-04-23 Eli Zaretskii <eliz@gnu.org>
581
582 Fix display of composed characters from L2R scripts in bidi buffers.
583 * xdisp.c (set_iterator_to_next, next_element_from_composition):
584 After advancing IT past the composition, resync the bidi iterator
585 with IT's position. (Bug#5977)
586
587 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
588
589 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
590 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
591
592 2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
593
594 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
595
596 2010-04-23 Eli Zaretskii <eliz@gnu.org>
597
598 Support `display' text properties and overlay strings in bidi buffers.
599 * xdisp.c (pop_it): When the stack is popped after displaying
600 from a string, bidi-iterate to exit from the text portion covered
601 by the `display' property or overlay. (Bug#5988, bug#5920)
602
603 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
604
605 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
606 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
607
608 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
609 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
610
611 Simplify STARTFILES definition.
612 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
613 relying on Makefile.in to define it.
614 * s/cygwin.h (START_FILES): Likewise.
615 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
616
617 Clean up Solaris code.
618 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
619 (LIB_MOTIF): Remove, configure takes care of this.
620 (NOT_USING_MOTIF): Remove, unused.
621 * xrdb.c: Remove #if 0-ed #include.
622 (SYSV): Remove conditional for old SysV.
623 * sysdep.c (closedir): Remove conditional code for Solaris,
624 Solaris has closedir.
625
626 2010-04-22 Jan Djärv <jan.h.d@swipnet.se>
627
628 * xsettings.c (read_and_apply_settings): Check if current_font is
629 NULL before strcmp (Bug#6001).
630
631 2010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
632
633 Clean up HP-UX files.
634 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
635 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
636 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
637 * s/hpux10-20.h: ... to the only user, here.
638
639 2010-04-21 Eli Zaretskii <eliz@gnu.org>
640
641 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
642 use buffer-local values of paragraph-start and paragraph-separate.
643 <paragraph_start_re, paragraph_separate_re>: Rename from
644 fallback_paragraph_start_re and fallback_paragraph_separate_re.
645 (Bug#5992)
646
647 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
648
649 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
650 current_tool_bar_style are new.
651 (store_config_changed_event): Rename from store_font_changed_event.
652 (XSETTINGS_TOOL_BAR_STYLE): New define.
653 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
654 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
655 HAVE_XFT.
656 (something_changedCB): store_font_changed_event is now
657 store_config_changed_event
658 (parse_settings): Rename from parse_xft_settings. Read
659 non-xft xsettings outside #ifdef HAVE_XFT.
660 (read_settings): Renamed from read_xft_settings.
661 (apply_xft_settings): Take current settings as parameter. Do not
662 call read_(xft)_settings.
663 (read_and_apply_settings): New function.
664 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
665 read_and_apply_settings if there are settings to be read.
666 (init_xsettings): Renamed from init_xfd_settings.
667 Call read_and_apply_settings unconditionally.
668 (xsettings_initialize): Call init_xsettings.
669 (Ftool_bar_get_system_style): New function.
670 (syms_of_xsettings): Define Qmonospace_font_name and
671 Qtool_bar_style. Initialize current_tool_bar_style to nil.
672 defsubr Stool_bar_get_system_style. Fprovide on
673 dynamic-setting.
674 Move misplaced HAVE_GCONF
675
676 * xsettings.h (Ftool_bar_get_system_style): Declare.
677
678 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
679 Qtext, Qboth, Qboth_horiz are new.
680 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
681 Vtool_bar_style, tool_bar_max_label_size.
682
683 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
684
685 * keyboard.c: QClabel is new.
686 (parse_tool_bar_item): Take out QClabel from tool bar items.
687 Try to construct a label if ther is no QClabel.
688 (syms_of_keyboard): Intern :label as QClabel.
689
690 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
691 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
692 New.
693
694 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
695 dynamic-setting.el.
696
697 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
698 (xg_make_tool_item, xg_show_toolbar_item): New function.
699 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
700 Call xg_make_tool_item to make a tool bar item.
701 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
702
703 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
704 into account for toolbars.
705
706 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
707
708 * data.c (make_blv): Declarations before code (Bug#5993).
709
710 2010-04-21 Glenn Morris <rgm@gnu.org>
711
712 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
713 Define using autoconf, not cpp.
714 (LIBXSM): New variable, set by autoconf.
715 (LIBXT): Use $LIBXSM.
716
717 2010-04-21 Dan Nicolaescu <local_user@dannlt>
718
719 Remove NOMULTIPLEJOBS, unused.
720 * s/template.h (NOMULTIPLEJOBS):
721 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
722
723 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
724 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
725 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
726 detects -znocombreloc and passes it to the linker
727 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
728
729 2010-04-21 Glenn Morris <rgm@gnu.org>
730
731 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
732
733 2010-04-21 Karel Klíč <kklic@redhat.com>
734
735 * Makefile.in (LIBSELINUX_LIBS): New.
736 (LIBES): Add $LIBSELINUX_LIBS.
737 * eval.c, lisp.h (call7): New function.
738 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
739 (Ffile_selinux_context, Fset_file_selinux_context):
740 New functions.
741 (Fcopy_file): New parameter preserve-selinux-context.
742 (Frename_file): Preserve selinux context when renaming by copy-file.
743
744 2010-04-21 Juanma Barranquero <lekktu@gmail.com>
745 Eli Zaretskii <eliz@gnu.org>
746
747 Don't depend on cm.c or termcap.c on Windows, use stubs.
748 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
749 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
750 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
751 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
752 (sys_tputs, sys_tgetstr): New stubs.
753 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
754 (tputs, tgetstr): New; define to sys_*.
755
756 2010-04-20 Juanma Barranquero <lekktu@gmail.com>
757
758 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
759
760 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
761
762 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
763 Just signal a warning rather than an error when inside a let.
764 (Fmake_variable_frame_local): Add the same test.
765
766 * font.c (syms_of_font): Make the style table vars read-only.
767
768 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
769 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
770
771 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
772
773 2010-04-20 Eli Zaretskii <eliz@gnu.org>
774
775 Fix R2L paragraph display on TTY.
776
777 * xdisp.c (unproduce_glyphs): New function.
778 (display_line): Use it when produced glyphs are discarded from R2L
779 glyph rows.
780 (append_composite_glyph): In R2L rows, prepend the glyph rather
781 than appending it.
782
783 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
784 rather than append it. Set up the resolved_level and bidi_type
785 attributes of the appended glyph.
786 (produce_special_glyphs): Mirror the backslash continuation
787 character in R2L lines.
788
789 Implement display of R2L paragraphs in GUI sessions.
790
791 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
792 append_stretch_glyph.
793 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
794 off-by-one error in computing x at end of text in the row.
795 (append_stretch_glyph): In reversed row, prepend the glyph rather
796 than append it. Set resolved_level and bidi_type of the glyph.
797 (extend_face_to_end_of_line): If the row is reversed, prepend a
798 stretch glyph whose width is such that the rightmost glyph will be
799 drawn at the right margin of the window. Fix off-by-one error on
800 TTY frames in testing whether a line needs face extension. Fix
801 face extension at ZV. If this is the last glyph row, use
802 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
803 region face.
804 (set_cursor_from_row, display_line): Use
805 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
806 row->continuation_lines_width.
807 (next_element_from_buffer): Don't call bidi_paragraph_init if we
808 are at ZV. Fixes a crash when reseated to ZV by
809 try_window_reusing_current_matrix.
810 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
811 which happens with R2L glyph rows. Fixes a crash when inserting a
812 character at end of an R2L line.
813 (set_cursor_from_row): Don't be fooled by truncated rows: don't
814 treat them as having zero-width characters. Improve comments.
815 Don't reverse pos_before and pos_after for reversed glyph rows.
816 Set cursor.x to negative value when the cursor might be on the
817 left fringe.
818 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
819 left fringe, not the right one.
820 (notice_overwritten_cursor, draw_phys_cursor_glyph)
821 (erase_phys_cursor): For reversed cursor_row, support cursor on
822 the left fringe.
823
824 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
825 of continuation indicators on the fringes.
826 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
827 left fringe.
828
829 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
830 draw cursor on the left fringe.
831
832 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
833 cursor on the left fringe.
834
835 * dispnew.c (update_text_area): Handle reversed desired rows when
836 the cursor is on the left fringe.
837 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
838 below, not by 0, for when the cursor is on the left fringe.
839
840 2010-04-20 Jan Djärv <jan.h.d@swipnet.se>
841
842 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
843 widget is a scrollbar.
844
845 2010-04-20 Kenichi Handa <handa@m17n.org>
846
847 * charset.c (char_charset): Consider Vcharset_non_preferred_head
848 only when the arg CHARSET_LIST is nil.
849
850 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
851
852 Make variable forwarding explicit rather the using special values.
853 Basically, this makes the structure of buffer-local values and object
854 forwarding explicit in the type of Lisp_Symbols rather than use
855 special Lisp_Objects for that. This tends to lead to slightly more
856 verbose code, but is more C-like, simpler, and makes it easier to make
857 sure we handled all cases, among other things by letting the compiler
858 help us check it.
859 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
860 Removing forwarding objects.
861 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
862 (struct Lisp_Symbol): Make the various forms of variable-forwarding
863 explicit rather than hiding them inside Lisp_Object "values".
864 (XFWDTYPE): New macro.
865 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
866 (XBUFFER_LOCAL_VALUE): Remove.
867 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
868 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
869 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
870 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
871 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
872 Remove the Lisp_Misc_* header.
873 (struct Lisp_Buffer_Local_Value): Redefine.
874 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
875 (struct Lisp_Misc_Any): Add filler to get the right size.
876 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
877 Lisp_Intfwd.
878 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
879 (DEFVAR_KBOARD): Allocate a forwarding object.
880 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
881 (let_shadows_global_binding_p): New function.
882 (union Lisp_Val_Fwd): New type.
883 (make_blv): New function.
884 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
885 (store_symval_forwarding, swap_in_global_binding, Fboundp)
886 (swap_in_symval_forwarding, find_symbol_value, Fset)
887 (let_shadows_buffer_binding_p, set_internal, default_value)
888 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
889 (Fkill_local_variable, Fmake_variable_frame_local)
890 (Flocal_variable_p, Flocal_variable_if_set_p)
891 (Fvariable_binding_locus):
892 * xdisp.c (select_frame_for_redisplay):
893 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
894 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
895 * frame.c (store_frame_param):
896 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
897 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
898 value structure.
899 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
900 (clone_per_buffer_values): Only adjust markers into the current buffer.
901 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
902 (Fbuffer_local_value, set_buffer_internal_1)
903 (swap_out_buffer_local_variables):
904 Adapt to the new symbol value structure.
905 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
906 (defvar_per_buffer): Take a new arg for the fwd object.
907 (buffer_lisp_local_variables): Return a proper alist (different fix
908 for bug#4138).
909 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
910 (Fgarbage_collect): Don't handle buffer_defaults specially.
911 (mark_object): Handle new symbol value structure rather than the old
912 special Lisp_Misc_* objects.
913 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
914 * term.c (set_tty_color_mode):
915 * bidi.c (bidi_initialize): Don't access the ->value field directly.
916 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
917 a buffer_local_flags.
918 * print.c (print_object): Get rid of impossible forwarding objects.
919
920 2010-04-19 Eli Zaretskii <eliz@gnu.org>
921
922 * bidi.c (bidi_get_type, bidi_get_category)
923 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
924 (bidi_type_of_next_char, bidi_level_of_next_char):
925 Declare static. Use `INLINE' rather than `inline'.
926
927 2010-04-19 Juanma Barranquero <lekktu@gmail.com>
928
929 * dired.c (Ffile_attributes): Fix typo in docstring.
930
931 2010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
932
933 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
934 NSInteger (Bug#5811).
935
936 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
937
938 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
939 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
940
941 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
942
943 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
944
945 2010-04-19 Chong Yidong <cyd@stupidchicken.com>
946
947 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
948 terminal frames (Bug#5837).
949
950 2010-04-19 Eli Zaretskii <eliz@gnu.org>
951
952 * .gdbinit (xsubchartable): New command.
953
954 2010-04-19 Eli Zaretskii <eliz@gnu.org>
955
956 * xdisp.c (display_line): Don't write beyond the last glyph row in
957 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
958 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
959 and
960 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
961
962 2010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
963
964 * alloc.c (Fpurecopy): Hash-cons if requested.
965 (syms_of_alloc): Update purify-flag docstring.
966
967 2010-04-18 Jan Djärv <jan.h.d@swipnet.se>
968
969 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
970 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
971
972 2010-04-17 Eli Zaretskii <eliz@gnu.org>
973
974 Fix a crash when an NSM character is inserted at BEGV.
975
976 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
977 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
978 NEUTRAL_B or UNKNOWN_BT.
979
980 2010-04-16 Eli Zaretskii <eliz@gnu.org>
981
982 * xdisp.c (set_cursor_from_row): Don't consider possibility of
983 other rows with cursor unless they are different from this row and
984 this row is part of a continued line. (Bug#5943)
985
986 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
987
988 * s/freebsd.h: Restore osreldate.h include.
989 Suggested by Naohiro Aota.
990
991 2010-04-16 Jan Djärv <jan.h.d@swipnet.se>
992
993 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
994
995 2010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
996
997 * s/cygwin.h: Avoid linking against static libgcc.
998
999 2010-04-15 Juri Linkov <juri@jurta.org>
1000
1001 * window.c: Add Qscroll_command.
1002 Remove Vscroll_preserve_screen_position_commands.
1003 (window_scroll_pixel_based, window_scroll_line_based): Check the
1004 `scroll-command' property on the last command instead of searching
1005 the last command in Vscroll_preserve_screen_position_commands.
1006 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1007 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1008 (scroll-preserve-screen-position): Doc fix.
1009 (Vscroll_preserve_screen_position_commands): Remove variable.
1010
1011 2010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1012
1013 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1014
1015 2010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1016
1017 Reduce cpp use in Makefile.in.
1018 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1019 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1020 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1021 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1022 (CRT0_COMPILE): Remove, inline it in the only user.
1023
1024 2010-04-14 Juri Linkov <juri@jurta.org>
1025
1026 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1027 `scroll-up-command' and `M-v' from `scroll-down' to
1028 `scroll-down-command'.
1029
1030 2010-04-14 Juri Linkov <juri@jurta.org>
1031
1032 * window.c (Vscroll_preserve_screen_position_commands): New variable
1033 with the default value as the list of Qscroll_down and Qscroll_up.
1034 (window_scroll_pixel_based, window_scroll_line_based): Search the
1035 last command in the list Vscroll_preserve_screen_position_commands
1036 instead of comparing with Qscroll_up and Qscroll_down.
1037
1038 2010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1039
1040 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1041 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1042 does that.
1043
1044 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1045 to zero.
1046
1047 2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1048
1049 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1050
1051 Try to solve the problem of spurious EOF chars in long lines of text
1052 sent to interactive subprocesses.
1053 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1054 (system_process_attributes): Remove unused var `ttotal'.
1055 * process.c (send_process): Don't bother breaking long line with EOF
1056 chars when talking to ttys any more.
1057 (wait_reading_process_output): Output a warning when called in such
1058 a way that it could block without being interruptible.
1059
1060 Try to detect file modification within the same second.
1061 * buffer.h (struct buffer): New field modtime_size.
1062 * buffer.c (reset_buffer): Initialize it.
1063 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1064 (Fverify_visited_file_modtime): Check it.
1065 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1066 (Fset_visited_file_modtime): Set (or clear) it.
1067
1068 2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1069
1070 * process.c (status_notify): Remove unused var `ro'.
1071
1072 2010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1073
1074 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1075 more than one visual (Bug#5938).
1076
1077 2010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1078
1079 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1080 Undefine.
1081
1082 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1083
1084 Remove C_SWITCH_SYSTEM_TEMACS.
1085 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1086 (malloc, realloc, free): Use emacs, not temacs for conditional
1087 definition.
1088
1089 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1090 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1091
1092 Use autoconf, not cpp for some variables.
1093 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1094 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1095 (ALL_CFLAGS): Use them as make variables.
1096 (really-lwlib, really-oldXMenu): Do not pass them.
1097
1098 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1099
1100 * xmenu.c (apply_systemfont_to_dialog): New.
1101 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1102
1103 2010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1104
1105 * process.c (exec_sentinel): Preserve current-buffer.
1106
1107 * process.c (read_process_output): Move the save-current-buffer to
1108 apply to both the filter and the non-filter branches.
1109
1110 2010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1111
1112 * s/msdos.h (UNEXEC): New definition.
1113
1114 2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1115
1116 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1117 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1118
1119 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1120 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1121 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1122 TRY_WINDOW_CHECK_MARGINS.
1123
1124 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
1125 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1126 width only when it is for padding.
1127
1128 2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1129
1130 * xfns.c (Fx_show_tip): Call try_window in a loop until
1131 fonts_changed_p is zero (Bug#2423).
1132
1133 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1134
1135 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1136 the end of TEXT_AREA. (Bug#5856)
1137
1138 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1139
1140 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1141 HAVE_GCONF.
1142
1143 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1144
1145 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1146 prev.orig_type, for resolving type of NSM. (Bug#5858)
1147
1148 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1149
1150 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1151 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1152 in current_font.
1153 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
1154 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1155 New functions.
1156 (syms_of_xsettings): Initialize current_font.
1157 defsubr Sfont_get_system_normal_font.
1158
1159 * xsettings.h (Ffont_get_system_normal_font,
1160 xsettings_get_system_normal_font): Declare.
1161
1162 * xfns.c (extern xlwmenu_default_font): Remove.
1163 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1164 to xlwmenu.c.
1165
1166 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1167 menu items in UTF-8.
1168
1169 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1170 (apply_systemfont_to_menu): New function.
1171 (set_frame_menubar, create_and_show_popup_menu): Call
1172 apply_systemfont_to_menu.
1173
1174 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1175
1176 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1177 FRAME_LINE_TO_PIXEL_Y.
1178
1179 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1180 pixelwidth/height.
1181
1182 2010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1183
1184 Simplify code for HP machines.
1185 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1186 for GNU_LINUX, not needed.
1187 (UNEXEC, NEED_BSDTTY): Move definitions...
1188 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1189
1190 * m/iris4d.h (UNEXEC): Move definition ...
1191 * s/irix6-5.h (UNEXEC): ... here.
1192
1193 2010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1194
1195 * xfns.c (set_machine_and_pid_properties): New function.
1196 (Fx_create_frame): Call set_machine_and_pid_properties.
1197
1198 2010-04-03 Eli Zaretskii <eliz@gnu.org>
1199
1200 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1201 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1202 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1203
1204 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1205 in this function. (Bug#5703)
1206
1207 2010-04-03 Chong Yidong <cyd@stupidchicken.com>
1208
1209 * nsterm.h: Fix last change.
1210
1211 2010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1212
1213 * m/intel386.h (NO_REMAP): Move definition ...
1214 * s/msdos.h (NO_REMAP): ... here.
1215
1216 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1217
1218 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1219 used on those platforms.
1220
1221 2010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1222
1223 Remove extern errno declarations.
1224 * xterm.c:
1225 * xrdb.c:
1226 * w32term.c:
1227 * unexec.c:
1228 * unexaix.c:
1229 * sysdep.c:
1230 * process.c:
1231 * lread.c:
1232 * keyboard.c:
1233 * floatfns.c:
1234 * filelock.c:
1235 * fileio.c:
1236 * emacs.c (main):
1237 * ecrt0.c:
1238 * dispnew.c:
1239 * callproc.c:
1240 * buffer.c: Remove errno extern declarations.
1241 * s/netbsd.h (NEED_ERRNO): Remove.
1242
1243 2010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1244
1245 Remove all uses of LIBX11_SYSTEM.
1246 * Makefile.in (LIBX11_SYSTEM): Remove.
1247 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1248 instead.
1249
1250 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1251
1252 Remove support for DJGPP v1.x (bug#5813).
1253
1254 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
1255 * s/msdos.h:
1256 * unexec.c (make_hdr, copy_text_and_data):
1257 * sysdep.c (wait_for_termination, sys_subshell):
1258 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
1259 (IT_set_terminal_modes, __write, _rename, gethostname)
1260 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1261 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1262 the value of __DJGPP__.
1263 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1264 compatibility code.
1265 * lread.c:
1266 * gmalloc.c (memalign):
1267 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1268 * emacs.c (main):
1269 * dosfns.c (init_dosfns):
1270 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1271
1272 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1273
1274 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1275 string with `cursor' property comes from an `after-string'
1276 overlay. (Bug#5816)
1277
1278 2010-04-01 Glenn Morris <rgm@gnu.org>
1279
1280 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1281 Define as Makefile variables.
1282 (LIBX): Use above variables rather than directly using autoconf.
1283
1284 2010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1285
1286 Clean up BSD_SYSTEM use.
1287 * xterm.c:
1288 * process.c:
1289 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1290 for including <sys/ioctl.h>.
1291 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1292 code is only used for MSDOS.
1293
1294 2010-03-31 Juri Linkov <juri@jurta.org>
1295
1296 * image.c: Add `Qextension_data'.
1297 (syms_of_image): Initialize and staticpro `Qextension_data'.
1298 (Fimage_metadata): Rename from `Fimage_extension_data'.
1299 (gif_load): Put GIF extension data to the property
1300 `Qextension_data'.
1301
1302 2010-04-05 Chong Yidong <cyd@stupidchicken.com>
1303
1304 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1305 terminal frames (Bug#5837).
1306
1307 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1308
1309 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1310 * nsterm.h: Fix prototype.
1311
1312 2010-03-31 Eli Zaretskii <eliz@gnu.org>
1313
1314 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1315 trailing whitespace in right-to-left rows.
1316
1317 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1318
1319 Get rid of the direct_output optimizations.
1320 * keyboard.c (nonundocount): Remove extern declaration.
1321 (command_loop_1): Remove brittle optimisation for cheap and
1322 common operations.
1323 * xdisp.c (redisplay_internal): Don't bother checking
1324 redisplay_performed_directly_p any more.
1325 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1326 any more.
1327 * dispnew.c (redisplay_performed_directly_p)
1328 (direct_output_for_insert, direct_output_forward_char):
1329 * dispextern.h (redisplay_performed_directly_p)
1330 (direct_output_for_insert, direct_output_forward_char): Remove.
1331 * cmds.c (nonundocount): Make it static.
1332
1333 2010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
1334
1335 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1336
1337 2010-03-31 Jan Djärv <jan.h.d@swipnet.se>
1338
1339 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1340 invisible (Bug#5766).
1341
1342 2010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
1343
1344 * xdisp.c (x_consider_frame_title, update_window_cursor):
1345 Remove HAVE_NS conditionals.
1346 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
1347
1348 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1349 filename for the title.
1350 (ns_set_doc_edited): Do nothing if the selected window is a
1351 minibuffer window.
1352
1353 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1354 ns_set_doc_edited.
1355
1356 * nsterm.m: Remove unneeded prototype.
1357
1358 2010-03-31 Glenn Morris <rgm@gnu.org>
1359
1360 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1361 in the DOC file. (Bug#5336)
1362
1363 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1364
1365 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1366
1367 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1368
1369 * window.c (keys_of_window): Remove redundant/overridden bindings.
1370
1371 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1372
1373 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1374 Restore original behavior when the iterator is not bidi_p.
1375
1376 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1377
1378 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1379
1380 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1381
1382 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1383 are outside the range of cached character positions.
1384
1385 2010-03-30 Juanma Barranquero <lekktu@gmail.com>
1386
1387 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1388
1389 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1390
1391 Initial support for bidirectional editing.
1392
1393 * Makefile.in (obj): Include bidi.o.
1394 (bidi.o): New target.
1395
1396 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1397 ($(BLD)/bidi.$(O)): New target.
1398
1399 * bidi.c: New file.
1400
1401 * buffer.h (struct buffer): New members bidi_display_reordering
1402 and bidi_paragraph_direction.
1403
1404 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1405 and bidi_paragraph_direction.
1406 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1407 and bidi-paragraph-direction.
1408 (Fbuffer_swap_text): Swap the values of
1409 bidi_display_reordering and bidi_paragraph_direction.
1410
1411 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1412 (bidi_type_t, bidi_dir_t): New types.
1413 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1414 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1415 prev_stop, base_level_stop, and eol_pos.
1416 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1417 (IT_STACK_SIZE): Enlarge to 5.
1418 (struct glyph_row): New member reversed_p.
1419 <string_buffer_position>: Update prototype.
1420 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1421 glyph_row if bidi_it.paragraph_dir == R2L.
1422 (struct glyph): New members resolved_level and bidi_type.
1423
1424 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1425 processing or buffer's direction is right-to-left.
1426 (prepare_desired_row): Preserve the reversed_p flag.
1427 (row_equal_p): Compare the reversed_p attributes as well.
1428
1429 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1430 bidi_init_it and set it->paragraph_embedding from the current
1431 buffer's value of bidi_paragraph_direction.
1432 (reseat_1): Initialize bidi_it.first_elt.
1433 (set_iterator_to_next, next_element_from_buffer): Use the value of
1434 paragraph_embedding to determine the paragraph direction.
1435 (set_iterator_to_next): Under bidi reordering, call
1436 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1437 new_paragraph flag is set in the bidi iterator.
1438 (next_element_from_buffer): If bidi_it.first_elt is set,
1439 initialize paragraph direction and find the first character to
1440 display in the visual order. If reseated to a middle of a line,
1441 prime the bidi iterator starting at the line's beginning. Handle
1442 the situation where we overstepped stop_charpos due to
1443 non-linearity of the bidi iteration. Likewise for when we back up
1444 beyond the previous stop_charpos. When moving across stop_charpos,
1445 record it in prev_stop.
1446 (display_line): Set row->end and it->start for the next row to the
1447 next character in logical order. Always extend reversed_p rows to
1448 the end of line, even if they end at ZV. Copy the reversed_p flag
1449 to the next glyph row. Keep calling set_cursor_from_row for
1450 bidi-reordered rows even if we already have a possible candidate
1451 for cursor position. Set row_end after all the row's glyphs have
1452 been produced, by looping over the glyphs. Record the position
1453 after EOL in it->eol_pos, and use it to set end_pos of the last
1454 row produced for a continued line.
1455 <Qright_to_left, Qleft_to_right>: New variables.
1456 (syms_of_xdisp): Initialize and staticpro them.
1457 (string_buffer_position_lim): New function.
1458 (string_buffer_position): Most of code moved to
1459 string_buffer_position_lim. Last argument and return value are
1460 now EMACS_INT; all callers changed.
1461 (set_cursor_from_row): Rewritten to support bidirectional text and
1462 reversed glyph rows.
1463 (text_outside_line_unchanged_p, try_window_id): Disable
1464 optimizations if we are reordering bidirectional text and the
1465 paragraph direction can be affected by the change.
1466 (append_glyph, append_composite_glyph)
1467 (produce_image_glyph, append_stretch_glyph): Set the
1468 resolved_level and bidi_type members of each glyph.
1469 (append_glyph): If the glyph row is reversed, prepend the glyph
1470 rather than appending it.
1471 (handle_stop_backwards): New function.
1472 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1473 (reseat): call handle_stop_backwards to recompute prev_stop and
1474 base_level_stop for the new position.
1475 (handle_invisible_prop): Under bidi iteration, skip invisible text
1476 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1477 paragraph direction. Update IT->prev_stop after skipping
1478 invisible text.
1479 (move_it_in_display_line_to): New variables prev_method
1480 and prev_pos. Compare for strict equality in
1481 BUFFER_POS_REACHED_P.
1482 (try_cursor_movement): Examine all the candidate rows that occlude
1483 point, to return the best match. If rows are bidi-reordered
1484 and point moved backwards, back up to the row that is not a
1485 continuation line, and start looking for a suitable row from
1486 there.
1487
1488 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1489 rather than appending, if the glyph_row's reversed_p flag is set.
1490 Set the resolved_level and bidi_type members of each glyph.
1491
1492 * .gdbinit (pbiditype): New command.
1493 (pgx): Use it to display bidi level and type of the glyph.
1494 (pitx): Display some bidi information about the iterator.
1495 (prowlims, pmtxrows): New commands.
1496
1497 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1498
1499 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1500 * s/usg5-4.h (LIBS_DEBUG):
1501 * s/irix6-5.h (C_DEBUG_SWITCH):
1502 * s/gnu-linux.h (LIBS_DEBUG):
1503 * s/darwin.h (LIBS_DEBUG):
1504 * s/bsd-common.h (LIBS_DEBUG):
1505 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1506 * m/iris4d.h (LIBS_DEBUG):
1507 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1508
1509 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1510 (LIBS_DEBUG): Remove definition.
1511
1512 2010-03-27 Chong Yidong <cyd@stupidchicken.com>
1513
1514 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1515 Windows.
1516
1517 2010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1518
1519 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1520 `connect' (Bug#5723).
1521
1522 2010-03-25 Helmut Eller <eller.helmut@gmail.com>
1523
1524 * process.c (Fmake_network_process): Call `select' for interrupted
1525 `connect' rather than creating new socket (Bug#5173).
1526
1527 2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
1528
1529 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1530
1531 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1532
1533 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1534
1535 2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1536
1537 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1538 XLoadQueryFont.
1539
1540 2010-03-24 Kenichi Handa <handa@m17n.org>
1541
1542 * coding.c (decode_coding_ccl): Fix previous change for the
1543 multibyte case.
1544 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1545 case that the output buffer is fullfilled.
1546 (encode_coding): Setup ccl program here.
1547
1548 2010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
1549
1550 * editfns.c (Fformat): Account for string precision when computing
1551 field width (Bug#5710).
1552
1553 2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1554
1555 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1556
1557 Simplify LIBS_MACHINE definitions.
1558 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1559 * m/iris4d.h (LIBS_MACHINE): Likewise.
1560 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1561 * s/aix4-2.h (LIBS_SYSTEM): ... here.
1562 * s/netbsd.h: Remove commented out code.
1563
1564 2010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1565
1566 Remove dead code dealing with POSIX_SIGNALS.
1567 * atimer.c (set_alarm): Remove dead code, all USG systems define
1568 POSIX_SIGNALS.
1569 * data.c (arith_error): Likewise.
1570 * keyboard.c (input_available_signal, handle_user_signal)
1571 (interrupt_signal): Likewise.
1572 * process.c (sigchld_handler): Likewise.
1573 (create_process): Remove if 0 code. Remove HPUX conditional when
1574 !defined (POSIX_SIGNALS), it cannot be true.
1575 * syssignal.h: Remove USG5_4 and USG conditionals when
1576 !POSIX_SIGNALS, they cannot be true.
1577
1578 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1579 NO_SOCK_SIGIO, not used anymore.
1580
1581 2010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1582
1583 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1584 support vax on BSDs.
1585
1586 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1587 * s/aix4-2.h (ORDINARY_LINK): ... here.
1588
1589 2010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1590
1591 * Makefile.in (abs_builddir): Define.
1592 (bootstrap_exe): Use it.
1593 (VPATH): Use $(srcdir) instead of @srcdir@.
1594
1595 2010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1596
1597 * Makefile.in (bootstrap_exe): Use an absolute name.
1598
1599 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1600
1601 Remove support for old GNU/Linux using libc version 5.
1602 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1603 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1604
1605 Consolidate redundant definitions in s/bsd-common.h.
1606 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1607 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1608 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1609 doing it in all files that include this one.
1610 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1611 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1612 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1613 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1614 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1615 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1616 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1617 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1618 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1619
1620 Consolidate redundant definitions.
1621 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1622 it's undefined in all files that include this one.
1623 (POSIX_SIGNALS): Define here instead of doing it in all files that
1624 include this one.
1625 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1626 (POSIX_SIGNALS): Do not define.
1627 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1628 (POSIX_SIGNALS): Do not define.
1629 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1630 (POSIX_SIGNALS): Do not define.
1631
1632 Remove support for old UNIX System V systems.
1633 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1634 * s/usg-5-4-2.h: Remove.
1635
1636 Remove support for Solaris on PPC and for old versions.
1637 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1638 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1639 that cancel each other.
1640 * s/sol2-3.h:
1641 * s/sol2-4.h:
1642 * s/sol2-5.h: Remove.
1643 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1644 (NO_REMAP): Remove, unused.
1645 (UNEXEC): Move definition ...
1646 * s/aix4-2.h (UNEXEC): ... here.
1647
1648 * s/openbsd.h: Remove support for non-ELF and for systems that do
1649 not support shared libraries.
1650 * s/netbsd.h:
1651 * s/freebsd.h: Likewise.
1652
1653 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1654
1655 Remove non-working support for lynxos 3.0.
1656 * s/lynxos.h: Remove file.
1657
1658 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1659 COFF_BSD_SYMBOLS, nothing defines it anymore.
1660
1661 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1662
1663 Remove obsolete uses of HAVE_SHM.
1664 * emacs.c (standard_args):
1665 (Fdump_emacs):
1666 (syms_of_emacs): Remove code depending on HAVE_SHM.
1667
1668 * alloc.c: Remove HAVE_SHM dependent definition.
1669
1670 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1671
1672 2010-03-18 Glenn Morris <rgm@gnu.org>
1673
1674 * emacs.c (USAGE4): Hard-code bug address.
1675 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1676 (bug_reporting_address): Remove.
1677 (main): Don't call bug_reporting_address.
1678
1679 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1680 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1681
1682 2010-03-15 Chong Yidong <cyd@stupidchicken.com>
1683
1684 * xfns.c (Fx_create_frame):
1685 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1686 on left.
1687
1688 2010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1689
1690 * editfns.c (Fformat): Account for string precision when computing
1691 field width (Bug#5710).
1692
1693 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
1694
1695 * xfns.c (Fx_create_frame): Set default to Qright.
1696
1697 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1698 all window systems.
1699
1700 2010-03-12 Eli Zaretskii <eliz@gnu.org>
1701
1702 These changes remove termcap.c from the build on Posix platforms.
1703 * Makefile.in (termcapobj): Move termcap.o from here...
1704 (MSDOS_OBJ): ...to here.
1705 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1706 now identical to when LIBS_TERMCAP is defined.
1707
1708 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1709
1710 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1711
1712 * config.in: Regenerated. (See top-level ChangeLog.)
1713
1714 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
1715
1716 * Branch for 23.2.
1717
1718 2010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1719
1720 Cleanup setup of gl_state in various parts of the code.
1721 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1722 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1723 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1724 (skip_chars):
1725 * regex.c (regex_compile): Use it.
1726 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1727 it's now set in regex_compile when/if we need it.
1728
1729 2010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1730
1731 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1732 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1733 (QUIT): Use it to consolidate code and remove redundancy.
1734 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1735
1736 * regex.c (regex_compile): Setup gl_state as well.
1737
1738 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1739 (in_classes): Use CONSP before XCAR/XCDR.
1740
1741 2010-03-03 Chong Yidong <cyd@stupidchicken.com>
1742
1743 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1744 definitions, so that keyboard macros are correctly handled
1745 (Bug#5481).
1746
1747 2010-03-02 Eli Zaretskii <eliz@gnu.org>
1748
1749 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1750 text that could be relocated inside the call to emacs_mule_char.
1751 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1752 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1753
1754 2010-03-02 Kenichi Handa <handa@m17n.org>
1755
1756 * character.c (parse_str_as_multibyte): Fix handling of the
1757 multibyte form of raw-bytes.
1758 (str_as_multibyte): Likewise.
1759
1760 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1761 form of raw-bytes.
1762
1763 2010-02-28 Chong Yidong <cyd@stupidchicken.com>
1764
1765 * charset.c (load_charset_map_from_file)
1766 (load_charset_map_from_vector): Zero out allocated
1767 charset_map_entries before using them.
1768
1769 2010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1770
1771 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1772
1773 2010-02-27 Chong Yidong <cyd@stupidchicken.com>
1774
1775 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1776 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
1777
1778 2010-02-26 Kenichi Handa <handa@m17n.org>
1779
1780 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1781
1782 * xdisp.c (reseat_to_string): Fix previous change.
1783
1784 2010-02-26 David Reitter <david.reitter@gmail.com>
1785
1786 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1787 Lisp_Object (Bug#4736).
1788
1789 2010-02-25 Kenichi Handa <handa@m17n.org>
1790
1791 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1792
1793 2010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1794
1795 * xterm.c (XTflash): Move declarations before statements.
1796
1797 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1798 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1799 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1800 (xg_create_tool_bar): Remove unused variables.
1801 (x_wm_set_size_hint): Move declarations before statements.
1802 (xg_create_frame_widgets): Remove variable grav,
1803
1804 2010-02-21 Chong Yidong <cyd@stupidchicken.com>
1805
1806 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1807
1808 2010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1809
1810 * term.c (fatal): Add a final \n if needed (bug#5596).
1811
1812 2010-02-18 Chong Yidong <cyd@stupidchicken.com>
1813
1814 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1815
1816 2010-02-18 Glenn Morris <rgm@gnu.org>
1817
1818 * callint.c (Finteractive): Doc fix.
1819
1820 2010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
1821
1822 * coding.c (record_conversion_result):
1823 Handle CODING_RESULT_INSUFFICIENT_DST.
1824 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
1825 memory allocation error.
1826
1827 2010-02-17 Kenichi Handa <handa@m17n.org>
1828
1829 * coding.c (decode_coding_ccl): Don't setup ccl program here.
1830 Fix for the case that the output buffer is fullfilled.
1831 (decode_coding): Setup ccl program here. Keep looping when the
1832 decoder stopped because the output buffer is
1833 fullfilled (bug#5534).
1834
1835 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
1836
1837 2010-02-13 Jan Djärv <jan.h.d@swipnet.se>
1838
1839 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
1840 bug #5571.
1841 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
1842 overdrawn.
1843
1844 2010-02-10 Jan Djärv <jan.h.d@swipnet.se>
1845
1846 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
1847 doing_interact here.
1848 (ice_connection_closed): New function.
1849 (x_session_check_input, smc_die_CB, ice_io_error_handler)
1850 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
1851 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
1852 returns I/O error.
1853 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
1854 bug #5512.
1855
1856 2010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
1857
1858 * nsfont.m (nsfont_open): The system's value for the font descent
1859 is negative, so round it down to avoid clipping.
1860
1861 2010-02-06 Chong Yidong <cyd@stupidchicken.com>
1862
1863 * charset.c (load_charset_map_from_file)
1864 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
1865 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
1866
1867 2010-02-05 Chong Yidong <cyd@stupidchicken.com>
1868
1869 * charset.c (load_charset_map_from_file): Allocate large
1870 charset_map_entries structure on the heap rather than the stack.
1871 (Bug#5526).
1872
1873 2010-01-31 Kenichi Handa <handa@m17n.org>
1874
1875 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
1876 size in NAME is invalid, return -1 (Bug#5396).
1877
1878 2010-01-31 Chong Yidong <cyd@stupidchicken.com>
1879
1880 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
1881 <deactivated@gmail.com> (Bug#3605).
1882
1883 2010-01-31 David De La Harpe Golden <david@harpegolden.net>
1884
1885 * fileio.c (Frename_file): Correctly rename symlinks to
1886 directories (Bug#5496).
1887
1888 2010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
1889
1890 * nsterm.m (ns_ring_bell): Handle visible bell like X.
1891
1892 2010-01-30 Andreas Schwab <schwab@linux-m68k.org>
1893
1894 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
1895
1896 2010-01-29 Chong Yidong <cyd@stupidchicken.com>
1897
1898 * frame.c (DEFAULT_ROWS): Change default to 35.
1899
1900 * xfns.c (x_default_font_parameter): Change default XFT font to
1901 monospace-10 (Bug#3643).
1902
1903 2010-01-29 Eli Zaretskii <eliz@gnu.org>
1904
1905 * w32inevt.c (key_event): Remove unnecessary comparison of
1906 event->uChar.AsciiChar with 128.
1907
1908 2010-01-28 Chong Yidong <cyd@stupidchicken.com>
1909
1910 * fileio.c (Frename_file): Fix last change (Bug#5487).
1911
1912 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
1913
1914 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
1915
1916 2010-01-28 Jan Djärv <jan.h.d@swipnet.se>
1917
1918 * xfns.c (Fx_create_frame): Remove window size matching code from
1919 2010-01-15.
1920 (x_get_current_desktop, x_get_desktop_workarea): Remove
1921
1922 2010-01-27 Jason Rumney <jasonr@gnu.org>
1923
1924 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
1925 (key_event): Use unicode for characters 128 and higher (Bug#4567).
1926
1927 2010-01-27 Kenichi Handa <handa@m17n.org>
1928
1929 * regex.c (analyse_first): Fix setting of fastmap for unibyte
1930 pattern string (Bug#4209).
1931
1932 2010-01-27 David De La Harpe Golden <david@harpegolden.net>
1933
1934 * fileio.c (Frename_file): Call copy-directory and
1935 delete-directory for directories, in order to handle cross-device
1936 renaming (Bug#3353).
1937
1938 2010-01-25 Jan Djärv <jan.h.d@swipnet.se>
1939
1940 * xfns.c (Fx_create_frame): If frame height is too big, try
1941 sizes 24 and 10. Bug #3643.
1942
1943 2010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1944
1945 Try and fix bug#788, hopefully for real this time.
1946 * keymap.c (shadow_lookup): Add `remap' arg.
1947 (describe_map, describe_vector): Update calls to shadow_lookup.
1948 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
1949 `remapped' so this flag is applicable to `sequence'. Be careful to
1950 perform remapping during shadow_lookup check of remapped_sequences.
1951
1952 2010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
1953
1954 * image.c (png_load): Use png_sig_cmp instead of the obsolete
1955 png_check_sig, which has been removed in libpng 1.4.
1956
1957 2010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1958
1959 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
1960 lacks this header file).
1961
1962 2010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1963
1964 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
1965 as in Emacs 22.
1966
1967 2010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1968
1969 * lisp.h (make_pure_string): String pointer arg now points to const.
1970
1971 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
1972 args now point to const.
1973
1974 2010-01-22 Eli Zaretskii <eliz@gnu.org>
1975
1976 * lread.c (Fload): Don't treat files without .elc extension as
1977 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
1978 them. (bug#5303)
1979
1980 2010-01-20 Kenichi Handa <handa@m17n.org>
1981
1982 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
1983 treat the source as actual byte sequence.
1984
1985 2010-01-19 Alan Mackenzie <acm@muc.de>
1986
1987 Fix spurious before-change-functions invocation from (insert ?\n).
1988 * textprop.c (set_text_properties): Rename parameter
1989 `signal_after_change_p' to `coherent_change_p', and make the
1990 invocation of `modify_region' conditional on it.
1991
1992 2010-01-19 Jan Djärv <jan.h.d@swipnet.se>
1993
1994 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
1995 for debug purpose.
1996 (syms_of_xsettings): Declare xft-settings.
1997
1998 2010-01-18 Chong Yidong <cyd@stupidchicken.com>
1999
2000 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2001
2002 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2003
2004 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2005
2006 2010-01-16 Chong Yidong <cyd@stupidchicken.com>
2007
2008 * emacs.c (standard_args): Adjust arg priorities to reflect how
2009 they are processed in startup.el.
2010
2011 2010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2012
2013 * Makefile.in (lisp, shortlisp): Update.
2014
2015 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2016
2017 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2018 code, link the new kboard into all_kboard before running Lisp code,
2019 and protect the new terminal with GCPRO (Bug#5365).
2020 (x_term_init): Remove unused var `atom'.
2021 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2022
2023 2010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2024
2025 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2026 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2027 to find out usable size of the desktop. Don't make frames larger than
2028 this. Bug #3643.
2029
2030 2010-01-15 Kenichi Handa <handa@m17n.org>
2031
2032 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2033
2034 2010-01-15 Chong Yidong <cyd@stupidchicken.com>
2035
2036 * nsterm.m (Qnone): Define.
2037
2038 * nsfns.m (Qnone): Move definition to nsterm.m.
2039
2040 2010-01-14 Kenichi Handa <handa@m17n.org>
2041
2042 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2043 systems.
2044
2045 2010-01-14 Kenichi Handa <handa@m17n.org>
2046
2047 Make auto-composition work on all buffers even if they are
2048 fundamental mode.
2049
2050 * composite.c (Vauto_composition_mode): New variable.
2051 (composition_compute_stop_pos): Check Vauto_composition_mode
2052 instead of Vauto_composition_function.
2053 (composition_adjust_point, Ffind_composition_internal): Likewise.
2054 (syms_of_composite): Declare Lisp variable
2055 "auto-composition-mode" here.
2056
2057 2010-01-13 Chong Yidong <cyd@stupidchicken.com>
2058
2059 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2060 during call to vendor-specific-keysyms (Bug#5365).
2061
2062 2010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2063
2064 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2065 Call SIGNAL_THREAD_CHECK (Bug#5333).
2066
2067 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2068 Call SIGNAL_THREAD_CHECK.
2069
2070 2010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2071
2072 Try to fix bug#5314. This is probably not the final word, tho.
2073 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2074 recent-auto-save-p as a side-effect.
2075 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2076 * buffer.c (Fkill_buffer, reset_buffer):
2077 * editfns.c (Fsubst_char_in_region):
2078 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2079 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2080
2081 2010-01-13 Kenichi Handa <handa@m17n.org>
2082
2083 Display buffer name, etc. in mode line by composing correctly.
2084
2085 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2086 STRING is not nil.
2087 (display_mode_element): Adjust for the change of
2088 decode_mode_spec and display_line.
2089 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2090 (display_string): Handle the case that STRING is non-null and
2091 LISP_STRING is not nil.
2092
2093 * xterm.c (x_draw_composite_glyph_string_foreground):
2094 Pay attention to s->face->overstrike.
2095
2096 * composite.c (composition_reseat_it): Don't check PT if STRING is
2097 non nil.
2098
2099 2010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2100
2101 * keyboard.c (read_char): Don't apply previous change when current
2102 buffer is unchanged by command execution.
2103
2104 2010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2105
2106 * keyboard.c (read_char): Return after executing from special map.
2107
2108 2010-01-12 Glenn Morris <rgm@gnu.org>
2109
2110 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2111 bug-gnu-emacs rather than emacs-pretest-bug.
2112
2113 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
2114
2115 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2116 initializing the Lisp variables that depend on them.
2117
2118 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2119
2120 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2121 Clear areas that will not be updated after change of menu bar lines.
2122 Clear the menu bar window's current matrix when the window gets empty.
2123
2124 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
2125
2126 * intervals.h, textprop.c (extend_property_ranges): Return value
2127 and args changed. Discard properties that begin at or after the
2128 new end (Bug#5306).
2129
2130 * editfns.c (Fformat): Caller changed.
2131
2132 * nsterm.m (ns_set_default_prefs): Delete function.
2133 (syms_of_nsterm): Initialize ns_command_modifier,
2134 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2135 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2136
2137 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2138 position (Bug#4040).
2139
2140 2010-01-09 Eli Zaretskii <eliz@gnu.org>
2141
2142 * editfns.c (Ffloat_time): Doc fix.
2143
2144 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2145
2146 * xfns.c (Fx_create_frame): Don't create frame larger than display
2147 by default bug#3643.
2148
2149 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2150
2151 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2152 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2153 windows above internal border.
2154
2155 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2156 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2157 windows above internal border.
2158
2159 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2160 tool bar windows specially.
2161
2162 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2163
2164 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2165 specially.
2166 (XTflash): Take account of menu bar height.
2167
2168 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2169 specially.
2170
2171 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2172
2173 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
2174 also be true before we can return early (bug #5339).
2175
2176 2010-01-06 David Reitter <david.reitter@gmail.com>
2177
2178 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2179 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2180 (Bug#3233).
2181
2182 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2183
2184 * font.c (font_open_entity): Enable chache and call cached_font_ok
2185 for the driver if defined.
2186 (QCuser_spec): New symbol.
2187 (font_spec_from_name): Save name as user-spec.
2188 (font_load_for_lface): Keep user-spec instead of name.
2189 (font_open_by_name): Save name as user-spec.
2190 (syms_of_font): Initialize QCuser_spec.
2191 (font_clear_prop): Clear name if it exists in font (bug#5157).
2192
2193 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2194 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2195 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2196
2197 * font.h (struct font_driver): Add cached_font_ok.
2198
2199 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2200
2201 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2202
2203 * xterm.c (x_new_font): Move code for setting rows/cols before
2204 resizing ...
2205 (x_set_window_size): ... to here. Bug #2568.
2206
2207 * gtkutil.c (xg_clear_under_internal_border): New function.
2208 (xg_frame_resized, xg_frame_set_char_size):
2209 Call xg_clear_under_internal_border.
2210 (xg_update_scrollbar_pos): Clear under old scroll bar position.
2211
2212 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
2213
2214 * keyboard.c (read_key_sequence): Catch keyboard switch after
2215 making a new tty frame (Bug#5095).
2216
2217 2010-01-05 Kenichi Handa <handa@m17n.org>
2218
2219 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2220
2221 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2222
2223 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2224 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2225 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2226
2227 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
2228
2229 * dbusbind.c (xd_add_watch): Improve debug message.
2230 (xd_remove_watch): Improve debug message. If DATA is the session
2231 bus, unset D-Bus session environment.
2232 (Fdbus_init_bus): Pass the bus as argument to
2233 dbus_connection_set_watch_functions. (Bug#5283)
2234
2235 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
2236
2237 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2238
2239 * lread.c (syms_of_lread): Make it clearer that these are the
2240 names of loaded files (Bug#5068).
2241
2242 * eval.c (run_hook_with_args): Handle the case where the global
2243 value has the obsolete single-function form (Bug#5026).
2244
2245 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
2246
2247 * minibuf.c (Fall_completions): Minor optimization.
2248
2249 2009-12-26 Eli Zaretskii <eliz@gnu.org>
2250
2251 * .gdbinit (pgx): Fix display of composite glyphs.
2252 Display cmp.from and cmp.to as well.
2253 (pitx): Fix last change.
2254
2255 2009-12-25 Kenichi Handa <handa@m17n.org>
2256
2257 * composite.h (composition_adjust_point): Update prototype.
2258
2259 * composite.c (composition_reseat_it): Don't make a composition
2260 spanning over point.
2261 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2262 composable characters.
2263 (composition_adjust_point): New arg NEW_PT. Callers changed.
2264
2265 * keyboard.c (command_loop_1): Force redisplay if the last point
2266 was within a composition.
2267 (adjust_point_for_property): Don't adjust point for automatic
2268 composition when called after buffer modification.
2269
2270 2009-12-19 Eli Zaretskii <eliz@gnu.org>
2271
2272 * .gdbinit (pitx): Don't use enum names, use their values.
2273 Remove reference to non-existing value GET_FROM_COMPOSITION.
2274 (pgx): Don't use enum names, use their values.
2275 (pitmethod): New helper command.
2276 (pitx): Use it to display iteration method.
2277 (pgrowit): New command.
2278
2279 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2280
2281 Update dependencies in Makefile.in.
2282
2283 * Makefile.in (alloc.o): Depend on termhooks.h.
2284 (atimer.o): Depend on blockinput.h.
2285 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2286 and frame.h.
2287 (callint.o): Depend on systime.h, coding.h, and composite.h.
2288 (callproc.o): Depend on buffer.h.
2289 (casefiddle.o): Don't depend on charset.h.
2290 (casetab.o): Depend on character.h.
2291 (ccl.o): Depend on composite.h.
2292 (chartab.o): Depend on ccl.h.
2293 (cm.o): Depend on dispextern.h.
2294 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2295 (coding.o): Don't depend on $(INTERVALS_H).
2296 (composite.o): Don't depend on dispextern.h explicitly (it's in
2297 $(INTERVALS_H)). Depend on ccl.h.
2298 (data.o): Depend on systime.h, coding.h, composite.h,
2299 dispextern.h, font.h, and ccl.h.
2300 (dired.o): Depend on composite.h.
2301 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2302 composite.h (it's in $(INTERVALS_H)).
2303 (doc.o): Depend on systime.h, coding.h, and composite.h.
2304 (editfns.o): Don't depend explicitly on dispextern.h.
2305 (emacs.o): Depend on frame.h and coding.h.
2306 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2307 (fileio.o): Depend on frame.h and commands.h. Don't depend
2308 explicitly on dispextern.h.
2309 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2310 composite.h.
2311 (fns.o): Don't depend on termhooks.h.
2312 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2313 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2314 coding.h, $(INTERVALS_H), window.h, xterm.h.
2315 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2316 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2317 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2318 fontset.h, ccl.h, and ftfont.h.
2319 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2320 (gtkutil.o): Depend on dispextern.h and composite.h.
2321 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2322 termhooks.h, and ccl.h.
2323 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2324 (intervals.o): Depend on systime.h and coding.h.
2325 (keyboard.o): Depend on composite.h and coding.h.
2326 (keymap.o): Depend on coding.h and frame.h.
2327 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2328 (macros.o): Depend on systime.h, coding.h, and composite.h.
2329 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2330 and atimer.h.
2331 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2332 dispextern.h explicitly.
2333 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2334 Don't depend explicitly on dispextern.h and composite.h.
2335 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2336 (regex.o): Don't depend on charset.h.
2337 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2338 (search.o): Don't depend explicitly on composite.h.
2339 (sound.o): Depend on atimer.h and systime.h.
2340 (syntax.o): Don't depend explicitly on composite.h.
2341 (sysdep.o): Depend on coding.h and composite.h.
2342 (term.o): Depend on xterm.h and buffer.h.
2343 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2344 (textprop.o): Don't depend on dispextern.h explicitly.
2345 (undo.o): Depend on dispextern.h.
2346 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2347 dispextern.h and composite.h explicitly.
2348 (xdisp.o): Depend on ccl.h.
2349 (xfaces.o): Depend on coding.h and ccl.h.
2350 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2351 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2352 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2353 ftfont.h.
2354 (xgselect.o): New dependency.
2355 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2356 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2357 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2358 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2359 (xsmfns.o): Depend on frame.h and dispextern.h.
2360 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2361 sysselect.h.
2362
2363 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2364
2365 * font.c (Fclear_font_cache): Pass correct cache argument to
2366 font_clear_cache.
2367
2368 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2369
2370 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2371 twice.
2372
2373 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
2374
2375 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2376 calling file-remote-p. Reported by Jim Meyering.
2377
2378 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
2379
2380 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
2381 avoid compiler warnings. (Bug #5217)
2382
2383 2009-12-14 Kenichi Handa <handa@m17n.org>
2384
2385 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2386 in 8-bit encoding.
2387
2388 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
2389
2390 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2391 tooltip windows.
2392
2393 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2394
2395 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2396 Xatom_net_window_type.
2397
2398 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2399 Xatom_net_window_type.
2400
2401 * xterm.c (my_log_handler): New function.
2402 (x_term_init): Set my_log_handler as log handler during gtk_init
2403 so we can filter out buggy messages. (Bug #5120).
2404
2405 * xterm.c (xg_scroll_callback): Parameter list changed,
2406 use parameter GtkScrollType to determine scroll/line/page.
2407 Only allow dragging if a button < 4 is grabbed (bug #5177).
2408 (xg_end_scroll_callback): New function.
2409 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2410 xg_create_scroll_bar.
2411
2412 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2413 (scroll_end_callback): Remove.
2414 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2415 button-release-event. Replace value-changed event with change-value,
2416 bug #5177,
2417 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2418 bug #5177.
2419
2420 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2421 (xg_create_scroll_bar): Add GCallback end_callback.
2422
2423 * xftfont.c (QClcdfilter): New variable.
2424 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2425 (syms_of_xftfont): Initialize QClcdfilter.
2426
2427 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2428
2429 * xsettings.c (struct xsettings): Add member seen.
2430 (parse_xft_settings): Update member seen with what we have read.
2431 Return non-zero if Xft-settings have been parsed, 0 otherwise.
2432 (apply_xft_settings): Only update Xft settings with what member seen
2433 indicates as new.
2434
2435 2009-12-12 Eli Zaretskii <eliz@gnu.org>
2436
2437 * dispextern.h (struct text_pos): Use EMACS_INT;
2438 (struct glyph): Use EMACS_INT for charpos.
2439 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2440 region_beg_charpos, region_end_charpos,
2441 redisplay_end_trigger_charpos, and also for
2442 iterator_stack_entry.end_charpos and
2443 iterator_stack_entry.stop_charpos.
2444
2445 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2446
2447 * gtkutil.c (scroll_end_callback): New function (bug #5177).
2448 (xg_create_scroll_bar): Call scroll_end_callback on button release
2449 event (bug #5177).
2450 (xg_event_is_for_scrollbar): != replaced with ==.
2451
2452 2009-12-12 Kenichi Handa <handa@m17n.org>
2453
2454 * ftfont.c (struct ftfont_info): New member matrix.
2455 (ftfont_open): Setup xftfont_info->matrix.
2456 (MFLTFontFT): New member matrix.
2457 (FLOOR, CEIL, ROUND): New macros.
2458 (ftfont_get_metrics): Handle matrix transformation.
2459 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2460
2461 * xftfont.c (struct xftfont_info): New member matrix.
2462 (xftfont_open): Setup xftfont_info->matrix.
2463
2464 2009-12-10 Kenichi Handa <handa@m17n.org>
2465
2466 * xdisp.c (append_space_for_newline): Consider face-remapping.
2467
2468 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2469
2470 * xsettings.c: Include "keyboard.h".
2471
2472 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2473
2474 Fix implicit function declarations.
2475 * cmds.c: Include "frame.h".
2476 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2477 * frame.h: Move declaration of delete_frame outside of
2478 HAVE_WINDOW_SYSTEM.
2479
2480 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2481
2482 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2483
2484 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2485 GTK builds.
2486
2487 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2488
2489 * unexelf.c (unexec): Don't search for .data twice.
2490
2491 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
2492
2493 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2494 if push failed.
2495 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2496 of push_display_prop (Bug#5000).
2497
2498 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2499 value of font_list_entities (Bug#5085).
2500
2501 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
2502
2503 Fix `string-to-number' to deal consistently with integers and floats.
2504 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2505 trailing characters, not just whitespace.
2506 (read1): Pass new arg 0 to keep old behavior.
2507 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2508 trailing chars, as it is already done for integers. Doc fixes.
2509 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2510
2511 2009-12-04 Eli Zaretskii <eliz@gnu.org>
2512
2513 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2514 Delete unused enumeration value.
2515
2516 2009-12-03 Eli Zaretskii <eliz@gnu.org>
2517
2518 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2519
2520 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2521
2522 * process.c (Fmake_network_process): Fix up the tests for
2523 "connectionless socket", so they DTRT for seqpacket sockets as well.
2524
2525 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2526
2527 * process.c (Qseqpacket): New symbol.
2528 (HAVE_SEQPACKET): New macro.
2529 (Fmake_network_process): Accept new :type `seqpacket'.
2530 (init_process): Add `seqpacket' feature when applicable.
2531 (syms_of_process): Initialize Qseqpacket.
2532
2533 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2534
2535 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2536 if entity is Qnil.
2537
2538 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2539
2540 * print.c (print_preprocess): Preprocess the key_and_value table of
2541 hashtables, even tho they're "hidden" (bug#5082).
2542
2543 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2544
2545 * frame.c (frame_make_pointer_invisible)
2546 (frame_make_pointer_visible): Declare f before statements.
2547
2548 2009-11-28 Eli Zaretskii <eliz@gnu.org>
2549
2550 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2551 omitted dependencies on lisp.h.
2552
2553 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2554
2555 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2556 is NULL.
2557
2558 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2559
2560 * frame.c (frame_make_pointer_invisible)
2561 (frame_make_pointer_visible): Just return if there isn't any selected
2562 frame.
2563
2564 * search.c (simple_search): Remove warning by making *p const.
2565
2566 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2567
2568 * xdisp.c (power_letter): Remove duplicate const.
2569
2570 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2571
2572 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2573
2574 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
2575 defaults (bug #5025).
2576
2577 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2578
2579 * insdel.c (adjust_markers_for_delete): Move it in the
2580 right direction! (bug#4803)
2581
2582 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2583
2584 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2585
2586 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2587
2588 2009-11-24 Glenn Morris <rgm@gnu.org>
2589
2590 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2591
2592 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2593
2594 * Makefile.in: Must create deps for ecrt0.o in its rule.
2595
2596 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2597 because that is what Gtk+ font dialog understands.
2598
2599 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2600 of Fcopy_sequence.
2601 (font_open_by_name): Put name given into QCname for font-object returned.
2602
2603 * frame.c (x_set_font): Save original font name as frame parameter
2604 font-parameter.
2605
2606 * xsettings.c (set_default_xft_settings): New function.
2607 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2608 is found.
2609
2610 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2611
2612 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2613 searching backwards through multibyte buffer.
2614
2615 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2616
2617 * xterm.c: #include xgselect.h.
2618 (x_initialize): Call xgselect_initialize.
2619
2620 * xsettings.c (something_changedCB): C++ comments => C comments.
2621 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2622 does that now.
2623
2624 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2625 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2626 (scroll_bar_button_cb): Remove.
2627 (create_menus): C++ comments => C comments. Don't bind grab-notify
2628 event.
2629 (xg_create_scroll_bar): Don't bind button-press-event and
2630 button-release-event.
2631
2632 * process.c: Include xgselect.h if defined (USE_GTK) ||
2633 defined (HAVE_GCONF).
2634 (wait_reading_process_output): Call xg_select for the same condition.
2635
2636 * xgselect.c (xg_select): New function to better integrate with
2637 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2638
2639 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2640
2641 * Makefile.in (XOBJ): Add xgselect.o.
2642
2643 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2644
2645 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2646 Remove ignored second argument. All callers changed.
2647 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2648 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2649 * xdisp.c (string_char_and_length): Likewise.
2650
2651 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2652
2653 * xterm.c (x_new_font):
2654 * print.c (print_object):
2655 * cmds.c (Fself_insert_command): Move declarations before statements.
2656
2657 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2658
2659 * s/cygwin.h: Remove unneeded linker flags.
2660
2661 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2662
2663 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2664
2665 * xsettings.h: Declare xsettings_get_system_font.
2666
2667 * xsettings.c (xsettings_get_system_font): New function.
2668 (init_gconf): No use initiating gconf unless we have Xft also.
2669 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2670 HAVE_GCONF.
2671
2672 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2673 add a blank entry so it doesn't collapse into nothing.
2674
2675 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2676
2677 * lread.c (Funintern): Comment out last change.
2678
2679 2009-11-19 Richard Stallman <rms@gnu.org>
2680
2681 * lread.c (Funintern): Error if symbol is t or nil.
2682
2683 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2684
2685 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2686 representation of Lisp integers.
2687 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2688
2689 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2690
2691 * lisp.h: Remove declaration of Ffont_get_system_font.
2692 * xfns.c: Move include of "xsettings.h".
2693 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2694
2695 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2696
2697 * xsettings.c (something_changedCB, Ffont_get_system_font):
2698 Check use_system_font.
2699 (syms_of_xsettings): DEFVAR font-use-system-font.
2700
2701 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2702
2703 * xfns.c (x_default_font_parameter): Remove dead assignment.
2704
2705 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2706
2707 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2708
2709 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
2710 not have FC_LCD_*. #define them if not there.
2711
2712 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
2713
2714 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2715
2716 * xterm.c (handle_one_xevent): Call xft_settings_event for
2717 ClientMessage, PropertyNotify and DestroyNotify.
2718 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2719 Call xsettings_initialize.
2720
2721 * xftfont.c (xftfont_fix_match): New function.
2722 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2723 Call xftfont_fix_match after XftFontMatch.
2724
2725 * xfont.c (xfont_driver): Initialize all members.
2726
2727 * xfns.c (x_default_font_parameter):
2728 Try font from Ffont_get_system_font.
2729 Do not get font from x_default_parameter if we got one from
2730 Ffont_get_system_font.
2731 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
2732
2733 * w32font.c (w32font_driver): Initialize all members.
2734
2735 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2736
2737 * lisp.h: Declare syms_of_xsettings.
2738
2739 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2740 Handle CONFIG_CHANGED_EVENT.
2741
2742 * ftfont.c (ftfont_filter_properties): New function.
2743
2744 * frame.c (x_set_font): Remove unused variable lval.
2745
2746 * font.h (struct font_driver): Add filter_properties.
2747
2748 * font.c (font_put_extra): Don't return if val is nil, it means
2749 boolean option is off.
2750 (font_parse_fcname): Collect all extra properties in extra_props
2751 and call filter_properties for all drivers with extra_props and
2752 font as parameter.
2753 (font_open_entity): Do not use cache, it does not pick up new
2754 fontconfig settings like hinting.
2755 (font_load_for_lface): If spec had a name in it, store it in entity.
2756
2757 * emacs.c (main): Call syms_of_xsettings
2758
2759 * config.in: HAVE_GCONF is new.
2760
2761 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2762 xsettings.o is new.
2763
2764 2009-11-17 Kenichi Handa <handa@m17n.org>
2765
2766 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2767 back to the default font in case that no suitable font is found.
2768
2769 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2770
2771 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2772 Suggested by Chad Brown <yandros@mit.edu>.
2773 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2774
2775 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2776
2777 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2778
2779 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2780
2781 * Makefile.in: Ignore errors from mkdir when creating deps directory.
2782
2783 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2784
2785 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2786 has a parent.
2787
2788 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
2789 dependency files in deps/. Include those files into Makefile.
2790
2791 * config.in: Generated (AUTO_DEPEND).
2792
2793 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
2794
2795 * dbusbind.c (Vdbus_registered_objects_table): Rename from
2796 Vdbus_registered_functions_table, because it contains also
2797 properties. Fix docstring.
2798 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
2799
2800 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2801
2802 * alloc.c (mark_object): Don't reprocess marked strings.
2803 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2804 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2805
2806 2009-11-13 Kenichi Handa <handa@m17n.org>
2807
2808 * category.c (word_boundary_p): Adjust for the change of the
2809 semantics of Vword_combining_categories.
2810 (Vword_combining_categories): Describe the slight change of the
2811 semantics.
2812
2813 2009-11-13 Eli Zaretskii <eliz@gnu.org>
2814
2815 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2816
2817 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
2818
2819 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
2820
2821 * xdisp.c (syms_of_xdisp): Fix typo in last change.
2822
2823 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
2824
2825 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
2826
2827 2009-11-11 David Reitter <david.reitter@gmail.com>
2828
2829 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
2830 variables to fix 2009-11-09 change.
2831
2832 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
2833
2834 * process.c (ifflag_def): Make flag_sym constant.
2835 (Fnetwork_interface_info): Use a constant pointer.
2836 (ifflag_table):
2837 * xfns.c (cursor_bits):
2838 * xdisp.c (power_letter):
2839 * termcap.c (speeds, esctab):
2840 * sysdep.c (baud_convert):
2841 * keyboard.c (lispy_accent_codes, modifier_names):
2842 * image.c (xbm_format, xpm_format, pbm_format, png_format)
2843 (jpeg_format, tiff_format, gif_format, svg_format)
2844 (interlace_start, interlace_increment, gs_format):
2845 * gtkutil.c (separator_names):
2846 * fringe.c (swap_nibble):
2847 * fns.c (base64_value_to_char, base64_char_to_value):
2848 * fileio.c (make_temp_name_tbl):
2849 * coding.c (suffixes): Make constant.
2850
2851 * frame.c (make_initial_frame):
2852 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
2853 build_string.
2854 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
2855
2856 * s/freebsd.h:
2857 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
2858
2859 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
2860 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
2861
2862 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
2863 * xterm.c (syms_of_xterm):
2864 * xfaces.c (syms_of_xfaces):
2865 * xdisp.c (syms_of_xdisp):
2866 * lread.c (syms_of_lread):
2867 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
2868 build_string.
2869
2870 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
2871
2872 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2873
2874 * fns.c (Fplist_get): Merge the active and the commented out code.
2875
2876 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2877
2878 * keyboard.h: Declare timer_check.
2879
2880 * keyboard.c (timer_check_2): New function that does what the old
2881 timer_check did.
2882 (timer_check): Call timer_check_2 until -1 or a non-zero time is
2883 returned, i.e. don't return -1 with timers pending.
2884
2885 * process.c: Remove extern declaration of timer_check.
2886
2887 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
2888 even if timer_check returned -1.
2889
2890 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
2891 xg_dialog_data.
2892 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
2893 the event loop.
2894 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
2895 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
2896 Destroy the dialog after xg_dialog_run.
2897
2898 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
2899
2900 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
2901
2902 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
2903
2904 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
2905
2906 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
2907
2908 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
2909
2910 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
2911
2912 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
2913 w32menu.c, and nsmenu.m.
2914 Simplify the obsolete case where position is nil.
2915 (cleanup_popup_menu): New function, moved from nsmenu.m.
2916 (struct skp): Remove slot `notreal'.
2917 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
2918 adjust callers.
2919 (single_menu_item): Adjust call to parse_menu_item.
2920 (syms_of_menu): Defsubr x-popup-menu.
2921 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
2922 (keymap_panes): Don't export any more.
2923 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
2924 (xmenu_show): Declare.
2925 * keyboard.c (parse_menu_item): Remove arg `notreal'.
2926 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
2927 * keyboard.h (parse_menu_item): Update declaration.
2928 * xmenu.c (Fx_popup_menu): Remove.
2929 (syms_of_xmenu): Don't defsubr x-popup-menu.
2930 * w32menu.c (Fx_popup_menu): Remove.
2931 (syms_of_w32menu): Don't defsubr x-popup-menu.
2932 * nsmenu.m (cleanup_popup_menu): Remove.
2933 (ns_menu_show): Rename from ns_popup_menu and remove all the code
2934 moved to menu.c's Fx_popup_menu.
2935 (Fx_popup_menu): Remove.
2936 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
2937 menu_items (it's done in menu.c already).
2938
2939 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
2940
2941 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
2942 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
2943
2944 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
2945
2946 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
2947 xmenu_show. Hide any tooltip before opening a menu.
2948 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
2949 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
2950
2951 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
2952
2953 Let integers use up 2 tags to give them one extra bit and thus double
2954 their range.
2955 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
2956 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
2957 New macros.
2958 (enum Lisp_Type): Use them. Give explicit values.
2959 (Lisp_Type_Limit): Remove.
2960 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
2961 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
2962 Pay attention to USE_2_TAGS_FOR_INTS.
2963 (INTEGERP): Use LISP_INT_TAG_P.
2964 * fns.c (internal_equal): Simplify the default case.
2965 (sxhash): Use case_Lisp_Int.
2966 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
2967 any more.
2968 (Ftype_of): Use case_Lisp_Int.
2969 (store_symval_forwarding): Take into account the fact that Ints can
2970 now have more than one tag.
2971 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
2972 buffer_slot_type_mismatch):
2973 * xfaces.c (face_attr_equal_p):
2974 * print.c (print_object):
2975 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
2976 Use case_Lisp_Int.
2977
2978 2009-11-06 Eli Zaretskii <eliz@gnu.org>
2979
2980 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
2981
2982 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
2983 warning.
2984
2985 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
2986
2987 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
2988
2989 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
2990
2991 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
2992 ButtonPressRelease and MotionNotify (bug#4870).
2993
2994 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
2995
2996 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
2997
2998 * xterm.c (syms_of_xterm):
2999 * xselect.c (syms_of_xselect):
3000 * xmenu.c (syms_of_xmenu):
3001 * xfns.c (syms_of_xfns):
3002 * xfaces.c (syms_of_xfaces):
3003 * xdisp.c (syms_of_xdisp):
3004 * window.c (syms_of_window):
3005 * w32fns.c (syms_of_w32fns):
3006 * undo.c (syms_of_undo):
3007 * textprop.c (syms_of_textprop):
3008 * terminal.c (syms_of_terminal):
3009 * syntax.c (syms_of_syntax):
3010 * sound.c (syms_of_sound):
3011 * search.c (syms_of_search):
3012 * print.c (syms_of_print):
3013 * minibuf.c (syms_of_minibuf):
3014 * macros.c (syms_of_macros):
3015 * keymap.c (syms_of_keymap, initial_define_key)
3016 (initial_define_lispy_key):
3017 * keyboard.c (syms_of_keyboard):
3018 * insdel.c (syms_of_insdel):
3019 * image.c (syms_of_image):
3020 * fringe.c (syms_of_fringe):
3021 * frame.c (syms_of_frame):
3022 * fontset.c (syms_of_fontset):
3023 * fns.c (syms_of_fns):
3024 * fns.c (syms_of_fns):
3025 * fileio.c (syms_of_fileio):
3026 * fileio.c (syms_of_fileio):
3027 * eval.c (syms_of_eval):
3028 * doc.c (syms_of_doc):
3029 * dispnew.c (syms_of_display):
3030 * dired.c (syms_of_dired):
3031 * dbusbind.c (syms_of_dbusbind):
3032 * data.c (syms_of_data):
3033 * composite.c (syms_of_composite):
3034 * coding.c (syms_of_coding):
3035 * cmds.c (syms_of_cmds):
3036 * charset.c (define_charset_internal, syms_of_character):
3037 * ccl.c (syms_of_ccl):
3038 * category.c (syms_of_category, init_category_once):
3039 * casetab.c (syms_of_casetab):
3040 * casefiddle.c (syms_of_casefiddle):
3041 * callint.c (syms_of_callint):
3042 * bytecode.c (syms_of_bytecode):
3043 * buffer.c (keys_of_buffer, syms_of_buffer):
3044 * alloc.c (syms_of_alloc):
3045 * process.c (syms_of_process, init_process):
3046 * lread.c (syms_of_lread, init_obarray):
3047 * font.c (build_style_table):
3048 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3049 intern_c_string, calls to make_pure_string with
3050 make_pure_c_string. Use pure_cons instead of Fcons.
3051
3052 * process.c (socket_options): Make it const.
3053 (set_socket_option, init_process): Use a const pointer.
3054
3055 * lread.c (intern_c_string): New function.
3056 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3057 (defvar_int): Uset it. Make the name const char*.
3058
3059 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3060 (defvar_int): Update prototypes.
3061 (DEFUN, EXFUN): Support for prototypes is now required.
3062 (intern_c_string): New prototype.
3063 (struct Lisp_Subr): Make symbol_name constant.
3064
3065 * font.c (struct table_entry): Remove unused member. Make NAMES
3066 constant.
3067 (weight_table, slant_table, width_table): Make constant.
3068
3069 * emacs.c (struct standard_args): Make name and longname constant.
3070
3071 * character.h (DEFSYM): Use intern_c_string.
3072
3073 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3074
3075 * alloc.c (make_pure_c_string): New function.
3076
3077 * eval.c (Fautoload): Purecopy all arguments.
3078
3079 2009-11-05 Kenichi Handa <handa@m17n.org>
3080
3081 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3082 the buffer in case of replace.
3083
3084 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3085
3086 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3087
3088 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3089
3090 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3091 when applicable (bug#4851).
3092
3093 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3094 (P_): Support for prototypes is now required.
3095
3096 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
3097
3098 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3099 (Bug#4827).
3100
3101 2009-10-30 Eli Zaretskii <eliz@gnu.org>
3102
3103 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
3104
3105 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3106
3107 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3108
3109 * lread.c (Fload): Purecopy the file name when building
3110 Vpreloaded_file_list.
3111
3112 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3113
3114 * w32fns.c (syms_of_w32fns): Change default value of
3115 w32-scroll-lock-modifier to nil. (Bug#2827)
3116
3117 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3118
3119 * minibuf.c (Fall_completions): Fix typos in docstring.
3120
3121 2009-10-26 Andreas Schwab <schwab@redhat.com>
3122
3123 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3124
3125 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3126
3127 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3128 For delta < 0, skip check that only makes sense when the mini-window
3129 is going to be enlarged. (Bug#4534)
3130
3131 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
3132
3133 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3134 string in menu maps (Bug#4471).
3135
3136 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
3137
3138 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3139 FRAME_NS_VIEW on terminal frames (Bug#4765).
3140
3141 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3142
3143 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3144 DBUS_TYPE_UINTnn separately to get proper sign extension.
3145
3146 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3147 can properly handle unsigned types.
3148 (make_uid, make_gid): Remove.
3149
3150 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3151 types again.
3152
3153 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
3154 (system_process_attributes): Likewise.
3155
3156 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3157
3158 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3159
3160 * eval.c (Fautoload): Purecopy the filename. Simplify.
3161
3162 * category.c (Fdefine_category): Purecopy docstring.
3163
3164 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3165
3166 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3167
3168 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3169
3170 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
3171
3172 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3173 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3174 (Bug#4775).
3175
3176 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3177
3178 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3179 (init_fileio_once):
3180 * lisp.h (init_fileio_once): Remove.
3181 * emacs.c (main): Don't call init_fileio_once.
3182
3183 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3184
3185 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3186
3187 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3188
3189 * doprnt.c (doprnt): Fix overflow check.
3190
3191 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3192
3193 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3194
3195 * xterm.h (x_wait_for_event): Declare it.
3196
3197 * xterm.c (pending_event_wait): New variable.
3198 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3199 see pending_event_wait.eventtype.
3200 (handle_one_xevent): Don't change gravity when parent changes.
3201 (x_new_font): Call change_frame_size with new rows/columns before we
3202 try to resize the frame.
3203 (x_wait_for_event): New function.
3204 (x_set_window_size_1): Don't change gravity unless change_gravity
3205 is set.
3206 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3207 don't change frame size, instead wait for the ConfigureNotify.
3208 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3209 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3210 (x_initialize): Initialize pending_event_wait.
3211
3212 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3213 size.
3214
3215 * widget.c (EmacsFrameSetValues): Add comment.
3216 (EmacsFrameSetCharSize): Just call x_set_window_size.
3217
3218 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3219 x_wait_for_event.
3220 (flush_and_sync): Remove again.
3221 (xg_get_font_name): Suggest monospace if no previous font is known.
3222
3223 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3224
3225 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
3226 8th bit, since that only made sense in the ASCII world (bug#4751).
3227
3228 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3229
3230 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3231 processing pending events when event is filtered for input method.
3232 (Bug#3681)
3233
3234 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
3235
3236 * fns.c: Add #endif accidentally removed in previous change.
3237
3238 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3239
3240 * fns.c: Remove code for unsupported system: MAC_OS.
3241 * image.c: Likewise. Include setjmp.h.
3242
3243 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3244
3245 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3246 pixel -1 (bug #4742).
3247
3248 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3249
3250 * process.c (create_pty): Remove conditionals for no longer
3251 supported systems: UNIPLUS and RTU.
3252
3253 * xterm.c:
3254 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3255
3256 * alloc.c: Do not define struct catchtag.
3257 * eval.c: Move struct catchtag definition ...
3258 * lisp.h: ... here.
3259
3260 * image.c: Move png.h #include earlier to avoid warnings.
3261
3262 * xterm.c:
3263 * xsmfns.c:
3264 * xselect.c:
3265 * xrdb.c:
3266 * xmenu.c:
3267 * xftfont.c:
3268 * xfont.c:
3269 * xfns.c:
3270 * xfaces.c:
3271 * xdisp.c:
3272 * window.c:
3273 * widget.c:
3274 * w32xfns.c:
3275 * w32uniscribe.c:
3276 * w32term.c:
3277 * w32select.c:
3278 * w32reg.c:
3279 * w32proc.c:
3280 * w32menu.c:
3281 * w32inevt.c:
3282 * w32heap.c:
3283 * w32font.c:
3284 * w32fns.c:
3285 * w32console.c:
3286 * w32.c:
3287 * w16select.c:
3288 * vm-limit.c:
3289 * unexsol.c:
3290 * unexec.c:
3291 * unexcw.c:
3292 * unexaix.c:
3293 * undo.c:
3294 * tparam.c:
3295 * textprop.c:
3296 * terminfo.c:
3297 * terminal.c:
3298 * termcap.c:
3299 * term.c:
3300 * syntax.c:
3301 * sound.c:
3302 * sheap.c:
3303 * search.c:
3304 * scroll.c:
3305 * region-cache.c:
3306 * regex.c:
3307 * ralloc.c:
3308 * process.c:
3309 * print.c:
3310 * nsterm.m:
3311 * nsselect.m:
3312 * nsmenu.m:
3313 * nsimage.m:
3314 * nsfont.m:
3315 * nsfns.m:
3316 * msdos.c:
3317 * minibuf.c:
3318 * menu.c:
3319 * marker.c:
3320 * macros.c:
3321 * keymap.c:
3322 * keyboard.c:
3323 * intervals.c:
3324 * insdel.c:
3325 * indent.c:
3326 * gtkutil.c:
3327 * ftxfont.c:
3328 * ftfont.c:
3329 * fringe.c:
3330 * frame.c:
3331 * fontset.c:
3332 * font.c:
3333 * fns.c:
3334 * floatfns.c:
3335 * filelock.c:
3336 * fileio.c:
3337 * emacs.c:
3338 * editfns.c:
3339 * dosfns.c:
3340 * doprnt.c:
3341 * doc.c:
3342 * dispnew.c:
3343 * dired.c:
3344 * dbusbind.c:
3345 * data.c:
3346 * composite.c:
3347 * coding.c:
3348 * cmds.c:
3349 * cm.c:
3350 * chartab.c:
3351 * charset.c:
3352 * character.c:
3353 * ccl.c:
3354 * category.c:
3355 * casetab.c:
3356 * casefiddle.c:
3357 * callproc.c:
3358 * callint.c:
3359 * bytecode.c:
3360 * buffer.c:
3361 * atimer.c: Include setjmp.h. (Bug#4643)
3362
3363 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3364
3365 Remove leftover table unibyte_to_multibyte_table.
3366 * character.c (unibyte_to_multibyte_table): Remove.
3367 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3368 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3369 * character.h (UNIBYTE_TO_CHAR): New macro.
3370 (MAKE_CHAR_MULTIBYTE): Use it.
3371 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3372 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3373 (message_dolog, set_message_1):
3374 * search.c (Freplace_match):
3375 * editfns.c (Fcompare_buffer_substrings):
3376 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3377 (concat):
3378 * insdel.c (copy_text, count_size_as_multibyte):
3379 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3380 * term.c (produce_glyphs):
3381 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3382 * regex.c (RE_CHAR_TO_MULTIBYTE):
3383 * cmds.c (internal_self_insert):
3384 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3385
3386 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3387
3388 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3389
3390 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3391
3392 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
3393
3394 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3395
3396 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3397
3398 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3399 still needed under Tiger.
3400
3401 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3402
3403 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3404 __Apple__.
3405
3406 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3407
3408 2009-10-15 Kenichi Handa <handa@m17n.org>
3409
3410 * print.c (print_object): Escape a symbol like "2E10" too.
3411
3412 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
3413
3414 Cleanups and changes for 64-bit compile under Snow Leopard.
3415 Based on suggestions by Erik Charlebois.
3416
3417 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3418
3419 * nsfont.m (ns_char_width): Replace deprecated call.
3420 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3421 cast argument.
3422 (nsfont_open): Use ns_char_width() everywhere.
3423 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
3424
3425 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3426
3427 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3428 where appropriate.
3429
3430 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3431 where appropriate.
3432 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3433 Use stringWithUTF8String.
3434 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3435
3436 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3437 Add formal protocol mention to inheritance.
3438 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3439
3440 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3441 Fix printf format.
3442 (ns_query_color): Use CGFloat where appropriate.
3443 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
3444 (EmacsScroller-mouseDown:): Use long format in printf, and cast
3445 argument.
3446
3447 * config.in (NS_HAVE_NSINTEGER): Drop.
3448
3449 * dbusbind.c (dbus-method-return-internal)
3450 (dbus-method-error-internal): Use long format in printf, and cast
3451 argument.
3452
3453 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3454 in printf, and cast argument.
3455
3456 * process.c (list_processes_1): Use long format in printf, and
3457 cast argument.
3458
3459 2009-10-11 Glenn Morris <rgm@gnu.org>
3460
3461 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3462
3463 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3464
3465 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3466 menu bar with a small width so it doesn't enlarge the frame.
3467
3468 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
3469
3470 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3471
3472 2009-10-06 Glenn Morris <rgm@gnu.org>
3473
3474 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3475 SOME_MACHINE_LISP (this enters indirectly via DOC).
3476
3477 2009-10-05 Eli Zaretskii <eliz@gnu.org>
3478
3479 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3480
3481 2009-10-04 Eli Zaretskii <eliz@gnu.org>
3482
3483 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3484 Doc fix.
3485
3486 2009-10-03 Martin Rudalics <rudalics@gmx.at>
3487
3488 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3489
3490 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
3491
3492 * lisp.h (Qdelete_directory_internal): Remove, because it is not
3493 used anymore outside fileio.c.
3494
3495 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3496
3497 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
3498
3499 * lisp.h (Qdelete_directory_internal):
3500 Declare, instead of Qdelete_directory.
3501
3502 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3503
3504 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3505
3506 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3507
3508 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
3509
3510 * fileio.c (Fdelete_directory_internal): Rename from
3511 Fdelete_directory. It is not a command anymore. It has no file
3512 name handler.
3513
3514 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3515
3516 * xdisp.c (get_next_display_element): Use an enum in last change.
3517
3518 2009-09-28 Kenichi Handa <handa@m17n.org>
3519
3520 * xdisp.c (get_next_display_element): Pay attention to
3521 unibyte_display_via_language_environment in handling
3522 Vnobreak_char_display.
3523
3524 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3525
3526 * nsterm.h (ns_app_name): New extern variable.
3527
3528 * nsterm.m (ns_app_name): New variable.
3529 (ns_term_init): Set and use it.
3530 (ns_term_shutdown): Use it.
3531
3532 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3533 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3534
3535 * nsfns.m (ns_set_name_iconic, ns_set_name)
3536 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3537 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3538
3539 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3540 Remove double-casting in client_data comparison.
3541
3542 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3543
3544 * keyboard.c (make_lispy_event): Remember last wheel direction.
3545 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3546
3547 2009-09-26 Glenn Morris <rgm@gnu.org>
3548
3549 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3550 internal.elc. Add term/pc-win.elc.
3551 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3552 term/x-win.elc.
3553 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3554 term/w32-win.elc.
3555 (NS_SUPPORT): New.
3556 (lisp): Add NS_SUPPORT.
3557 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3558
3559 2009-09-25 David Reitter <david.reitter@gmail.com>
3560
3561 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3562 on Mac OS X 10.6+ (bug#4513).
3563
3564 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3565
3566 * frame.c (xrdb_get_resource): Return nil for empty string resources;
3567 some parts of Emacs code (like font selection) don't grok them.
3568 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
3569
3570 2009-09-24 Andreas Schwab <schwab@redhat.com>
3571
3572 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3573
3574 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3575
3576 * dired.c (Fdirectory_files): Fix typo in docstring.
3577
3578 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3579
3580 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3581 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3582 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3583 under GNUstep.
3584 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3585
3586 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3587 glyph advancement.
3588
3589 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3590
3591 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
3592 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
3593
3594 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3595 deleted (bug #4492).
3596
3597 * nsfont.m (Vns_reg_to_script): New lisp variable.
3598 (syms_of_nsfont): Declare it.
3599 (ns_registry_to_script): New function.
3600 (ns_get_req_script): Call it.
3601 (ns_findfonts): Don't give up on non-unicode registry.
3602
3603 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3604
3605 2009-09-20 Tom Tromey <tromey@redhat.com>
3606
3607 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3608 batch mode (bug#4228).
3609
3610 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
3611
3612 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
3613 carefully. (Bug #4339)
3614
3615 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
3616
3617 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
3618
3619 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3620
3621 * emacs.c (inhibit_x_resources): Update doc string for NS.
3622 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
3623 legacy code for -NXHost. Fix error printf in daemon case.
3624
3625 * nsterm.h (ns_no_defaults): Remove.
3626
3627 * nsterm.m (ns_no_defaults): Remove.
3628 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3629 (ns_use_qd_smoothing): Remove legacy variable.
3630 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3631 don't update the NSWindow itself.
3632 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
3633 state detection and store user rect ourselves. (Bug #3581)
3634
3635 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3636 ns_use_qd_smoothing.
3637
3638 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3639 platform versions. Drop support for emacs-20-style face specs.
3640 (x-close-connection): Drop PSFlush() under OS X.
3641 (x-focus-frame): Activate the app first. (Bug #4180)
3642
3643 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
3644
3645 * emacs.c (inhibit_x_resources): New variable.
3646 (main) [HAVE_NS]: Don't process --quick command line option.
3647 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3648
3649 * lisp.h (inhibit_x_resources): Declare it extern.
3650
3651 * w32reg.c (x_get_string_resource):
3652 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3653
3654 2009-09-17 Eli Zaretskii <eliz@gnu.org>
3655
3656 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3657 Add lisp/term/internal.elc.
3658
3659 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3660
3661 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3662 (bug#4461).
3663
3664 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3665
3666 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3667
3668 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3669 (OBJECTS_MACHINE): Remove, unused.
3670
3671 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3672
3673 * frame.c (x_get_resource_string): Remove unused.
3674
3675 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3676
3677 * xterm.c (x_new_font): Call change_frame_size before calling
3678 x_set_window_size, in case frame size won't change.
3679
3680 * frame.c (x_set_font): Remove dead code.
3681
3682 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3683
3684 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3685
3686 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3687
3688 * lread.c (Fload): Don't output a message after loading an obsolete
3689 package any more (done in Lisp now).
3690
3691 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
3692
3693 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3694
3695 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3696
3697 * keymap.c (Fwhere_is_internal): Use nconc2.
3698
3699 2009-09-11 Alan Mackenzie <acm@muc.de>
3700
3701 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3702 batch mode.
3703
3704 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3705
3706 * xdisp.c (display_mode_element): Detect cycles.
3707
3708 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3709
3710 * keymap.c (where_is_internal): Don't erroneously return nil right after
3711 filling the cache.
3712 (where_is_internal_1): Fix up typo.
3713
3714 2009-09-11 Glenn Morris <rgm@gnu.org>
3715
3716 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3717 share a common doc-string.
3718
3719 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3720
3721 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3722 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3723
3724 * keymap.c (QCadvertised_binding): New constant.
3725 (syms_of_keymap): Initialize it.
3726 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3727 if applicable.
3728
3729 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3730
3731 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3732 (parse_menu_item): Streamline since bindings are recomputed all the
3733 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3734 more and don't support lmenu's menu-alias any more either.
3735
3736 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3737 (where_is_internal): Strip it down to only traverse the keymaps.
3738 Move the cache handling from Fwhere_is_internal to here.
3739 (Fwhere_is_internal): Move the handling of remapping and the choice of
3740 the best binding from where_is_internal to here.
3741 Unify the cached/noncached paths, so remapping is also handled
3742 correctly when the cache is used, and so the cache can be used to
3743 speed up remap-handling when applicable.
3744 Give preference to non-remapped bindings.
3745 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3746 non-remapped bindings.
3747 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3748 command remapping.
3749
3750 * xdisp.c (display_mode_element): Move list length limit from 50 to
3751 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3752
3753 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
3754
3755 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3756
3757 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3758
3759 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3760 (Bug#4334)
3761
3762 * keymap.c (where_is_internal): Filter out shadowed remappings.
3763 Assume that where_is_internal returns unshadowed bindings to simplify
3764 the code and get rid of the gotos. Use ASIZE.
3765
3766 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3767
3768 * xterm.c (x_focus_changed): If we get a focusout and pointer
3769 is invisible, make it visible.
3770
3771 * xterm.h: Remove condition for declaration of
3772 x_*_window_to_frame.
3773
3774 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3775
3776 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3777 initial terminal as well.
3778
3779 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3780
3781 * xterm.h: Rename x_non_menubar_window_to_frame to
3782 x_menubar_window_to_frame.
3783
3784 * xterm.c: Remove declarations also in xterm.h.
3785 (XTmouse_position): Do not return valid positions
3786 for clicks in the menubar and the toolbar for Gtk+.
3787
3788 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3789 if the widget for the event has the same top level as a frame,
3790 return the frame.
3791 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3792 internal windows, bug #4122.
3793 (x_non_menubar_window_to_frame): Remove.
3794
3795 2009-09-02 Glenn Morris <rgm@gnu.org>
3796
3797 * buffer.c (default-major-mode): Move most of the doc from here...
3798 (major-mode): ... to here.
3799
3800 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
3801
3802 * process.c (wait_reading_process_output): Keep the descriptor
3803 when pty is used by a non-child process, e.g., in I/O buffer of
3804 GDB this allows inferior to be restarted.
3805
3806 2009-08-29 Eli Zaretskii <eliz@gnu.org>
3807
3808 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3809 both branches into one.
3810
3811 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3812
3813 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3814 (main): Use enable-multibyte-characters rather than
3815 default-enable-multibyte-characters. Output a warning message when
3816 running a unibyte session.
3817
3818 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3819
3820 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
3821 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
3822 (copy_data_segment): Also copy __program_vars section.
3823 (copy_dyld_info) [LC_DYLD_INFO]: New function.
3824 (dump_it) [LC_DYLD_INFO]: Use it.
3825
3826 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
3827
3828 2009-08-28 Eli Zaretskii <eliz@gnu.org>
3829
3830 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
3831 $(SRC)/buildobj.h.
3832 (buildobj.h): Renamed from $(SRC)/buildobj.h.
3833 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
3834 $(SRC)/buildobj.h.
3835 (clean): Add buildobj.h.
3836
3837 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
3838
3839 * print.c (print_object): Set escapeflag to 1 when printing
3840 hashtable keys and values.
3841
3842 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
3843
3844 * lread.c (read_integer): Use doubles (and potentially return a float
3845 number) as we do in string-to-number.
3846 (read1): Use strtol to read integers, signal errors on strtol's
3847 overflow and use floats if strtol's output is too large for
3848 Elisp integers.
3849
3850 2009-08-27 Eli Zaretskii <eliz@gnu.org>
3851
3852 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
3853 (make-buildobj-SH): Fix last change.
3854 (SRC): Move to before where it's first used.
3855
3856 2009-08-27 Kenichi Handa <handa@m17n.org>
3857
3858 * process.c (send_process): Use encode_coding_object instead of
3859 encode_coding_string to perform eol-conversion even if the string
3860 is unibyte.
3861
3862 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
3863 character.
3864
3865 * cmds.c (Fself_insert_command): Avoid unnecessay
3866 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
3867
3868 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
3869
3870 * callproc.c (Fcall_process): Remove always true #if.
3871
3872 * lisp.h: Replace #if 0 code for checking with text pointing to
3873 the --enable-checking configure flag.
3874
3875 * emacs.c (main): Mention the --enable-profiling configure flag
3876 instead of using CFLAGS.
3877
3878 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
3879
3880 * Makefile.in (buildobj.h): New target.
3881 (doc.o): Depend on it.
3882 (temacs${EXEEXT}): Don't generate buildobj.lst.
3883 (mostlyclean): Delete buildobj.h, not buildobj.lst.
3884 * makefile.w32-in ($(SRC)/buildobj.h): New target.
3885 ($(BLD)/doc.$(O)): Depend on it.
3886 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
3887 provided by Eli Zaretskii.)
3888 ($(TEMACS)): Don't generate buildobj.lst.
3889 * doc.c: Include buildobj.h.
3890 (buildobj): New static variable.
3891 (Fsnarf_documentation): Use it, instead of opening and reading
3892 buildobj.lst.
3893
3894 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
3895
3896 * dbusbind.c (Fdbus_call_method)
3897 (Fdbus_call_method_asynchronously): Use English numeric format for
3898 timeout values in doc string.
3899
3900 2009-08-25 Kenichi Handa <handa@m17n.org>
3901
3902 * alloc.c (mark_char_table): New function.
3903 (mark_object): Use mark_char_table for a char-table.
3904
3905 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
3906 (CHAR_TABLE_REF): Use it.
3907
3908 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
3909
3910 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
3911 before invoking the newly build emacs to check for load-path
3912 shadowing.
3913
3914 2009-08-22 Glenn Morris <rgm@gnu.org>
3915
3916 * Makefile.in (bootstrap_exe): New variable.
3917 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
3918 Use ${bootstrap_exe}.
3919
3920 2009-08-22 Eli Zaretskii <eliz@gnu.org>
3921
3922 * coding.h (encode_coding_string): Don't encode unibyte strings.
3923 (Bug#4047)
3924
3925 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
3926
3927 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
3928
3929 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
3930 intended as hotfix only.
3931 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
3932
3933 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
3934
3935 * nsterm.m (ns_get_color): Update documentation properly for last
3936 change, and clean up loose ends in the code left by it. Fix
3937 longstanding bug with 16-bit hex parsing, and add support for
3938 yet another X11 format (rgb:r/g/b) for compatibility.
3939 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
3940 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
3941
3942 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
3943
3944 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
3945
3946 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
3947
3948 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
3949 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
3950 (xd_initialize, xd_pending_messages): Check, whether
3951 $DBUS_SESSION_BUS_ADDRESS is set.
3952
3953 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3954
3955 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
3956
3957 * nsterm.m (ns_get_color): Remove incompatible color formats again.
3958
3959 2009-08-20 Glenn Morris <rgm@gnu.org>
3960
3961 * emacs.c (system-type): Doc fix.
3962
3963 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
3964
3965 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
3966 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
3967
3968 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
3969
3970 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
3971 New functions.
3972 (xd_initialize): Revert change from 2009-08-16.
3973
3974 2009-08-18 Kenichi Handa <handa@m17n.org>
3975
3976 * fontset.c (Ffontset_font): If a nil element is found in a
3977 font-group vector, return nil.
3978
3979 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
3980
3981 * process.c (status_notify): Don't perform redisplay.
3982 (Fdelete_process, list_processes_1, process_send_signal):
3983 Expliticly perform redisplay.
3984 (wait_reading_process_output): Always check process status, but
3985 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
3986
3987 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
3988
3989 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
3990 (XFLOAT_INIT): New macro for storing a float value.
3991 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
3992 * fns.c (sxhash): Copy out the value of a float in order to
3993 examine its bytes.
3994 * dbusbind.c (xd_append_arg): Likewise.
3995
3996 * emacs.c (main): Don't call syms_of_data twice.
3997
3998 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
3999
4000 * dbusbind.c (xd_initialize): Add connection file descriptor to
4001 input_wait_mask, in order to let select() detect, whether a new
4002 message has been arrived.
4003 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
4004
4005 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
4006
4007 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4008 New functions.
4009
4010 * lisp.h (xd_pending_messages): Declare.
4011
4012 * keyboard.c (readable_events): Call xd_pending_messages.
4013
4014 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
4015
4016 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
4017
4018 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4019
4020 * buffer.c (set_buffer_internal_1)
4021 (swap_out_buffer_local_variables): Check for unbound local
4022 variables (Bug#4138).
4023
4024 2009-08-14 Eli Zaretskii <eliz@gnu.org>
4025
4026 * process.c (create_pty): Fix last change.
4027
4028 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
4029
4030 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4031 (xbm_load_image): Caller changed.
4032 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
4033
4034 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
4035
4036 * process.c (create_pty): New function.
4037 (Fstart_process): Use it to allow Emacs to just associate a pty
4038 with the buffer. See associated change in gdb-mi.el.
4039 (list_processes_1): Deal with no program name.
4040 (start_process_unwind): Use pid == -2 to mean no process.
4041
4042 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4043
4044 * cmds.c (nonundocount): New global variable.
4045 (keys_of_cmds): Initialize it.
4046 (Fself_insert_command): Use it to combine upto 20 sequential chars
4047 into a single undo entry, just like the Qself_insert_command code in
4048 keyboard.c does.
4049 Call frame_make_pointer_invisible, also like the Qself_insert_command
4050 code in keyboard.c does.
4051 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4052 than its own local replacement for it.
4053
4054 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
4055
4056 * fns.c (concat): Don't re-set string length to its current value.
4057
4058 * coding.h (decode_coding_string, encode_coding_string):
4059 Use SBYTES macro.
4060
4061 * doprnt.c (doprnt_lisp): Delete unused function.
4062 (doprnt): Merge with doprnt1, discarding lispstrings code.
4063 * lisp.h (doprnt_lisp): Don't declare.
4064
4065 2009-08-07 Juri Linkov <juri@jurta.org>
4066
4067 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4068
4069 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4070
4071 * print.c (syms_of_print): Undo previous change.
4072
4073 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4074
4075 * lread.c (read1, syms_of_lread): Read hashtables back from the
4076 readable format.
4077
4078 * print.c (print_preprocess, print_object): Print hashtables fully
4079 and readably.
4080 (syms_of_print): Provide 'hashtable-print-readable.
4081
4082 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4083
4084 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4085 no family set.
4086 (nsfont_open): Handle case when entity has no family.
4087
4088 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4089
4090 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4091 element, not a list, for match case.
4092
4093 2009-07-28 Kenichi Handa <handa@m17n.org>
4094
4095 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4096 rigidly.
4097
4098 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4099 font_parse_xlfd. Check font properties more rigidly.
4100
4101 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4102
4103 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4104 bsd-common.h.
4105
4106 2009-07-27 Kenichi Handa <handa@m17n.org>
4107
4108 * xfaces.c (face_with_height): Call font_clear_prop.
4109
4110 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
4111
4112 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4113
4114 * xterm.c (x_term_init): Use Qx.
4115
4116 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4117
4118 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4119 (ns_get_color): Revert 2009-07-16 change.
4120
4121 2009-07-25 Eli Zaretskii <eliz@gnu.org>
4122
4123 * lread.c (syms_of_lread) <force_load_messages>: New variable.
4124 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
4125
4126 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
4127
4128 * coding.h (decode_coding_string, encode_coding_string):
4129 Use SCHARS macro.
4130
4131 * lread.c: Rewrite 2009-07-21 changes.
4132 (load_depth): Delete.
4133 (Qload_in_progress): New variable.
4134 (load_unwind): Don't reference load_depth or load_in_progress.
4135 (Fload): Likewise; specbind Qload_in_progress instead.
4136 (init_lread): Don't initialize load_depth.
4137 (syms_of_lread): Initialize and protect Qload_in_progress.
4138
4139 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4140
4141 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4142
4143 2009-07-23 Yavor Doganov <yavor@gnu.org>
4144
4145 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4146
4147 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4148
4149 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
4150 Bugs 3792, 3720, 2402.
4151 (ns_lookup_indexed_color): Check for bad index.
4152 (ns_index_color): Init unused slot to 0.
4153 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4154 Bug 3714, possibly 3082.
4155
4156 2009-07-22 Jason Rumney <jasonr@gnu.org>
4157
4158 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4159 Position IME window at cursor (Bug#2570).
4160 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4161 (globals_of_w32fns): Dynamically load functions required above.
4162
4163 * w32term.c (w32_draw_window_cursor): Send message to reposition
4164 any IME window.
4165
4166 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4167
4168 * fileio.c: Revert 2009-07-16 changes.
4169 (Vauto_save_include_big_deletions): New variable.
4170 (Fdo_auto_save): Disable auto-save only if
4171 auto-save-include-big-deletions is nil.
4172
4173 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4174
4175 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4176 the overflowed pixels into account (Bug#3879).
4177
4178 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
4179
4180 * lread.c (load_depth): New variable.
4181 (Fload, load_unwind, init_lread): Set it to the load recursion
4182 depth; set load_in_progress as a simple boolean based on the
4183 current load_depth. (Bug#3892)
4184
4185 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4186
4187 * nsfont.m (ns_has_attribute): Remove.
4188 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4189
4190 2009-07-18 Juri Linkov <juri@jurta.org>
4191
4192 * process.c (Fset_process_query_on_exit_flag): Mention killing
4193 a buffer in docstring.
4194
4195 2009-07-17 Kenichi Handa <handa@m17n.org>
4196
4197 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4198
4199 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4200
4201 * nsfns.m (Fns_set_alpha): Remove function.
4202 (syms_of_nsfns): Don't defsubr it.
4203
4204 * nsterm.m (ns_get_color): Remove incompatible color formats.
4205 (ns_color_to_lisp): Generate #rrggbb color format string.
4206
4207 2009-07-16 Richard Stallman <rms@gnu.org>
4208
4209 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4210 (Fset_buffer_auto_saved): Handle save_length = -2.
4211
4212 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
4213
4214 * xterm.c (Qx_gtk_map_stock): New var.
4215
4216 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4217 of calling intern each time.
4218
4219 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4220
4221 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4222 does tiling.
4223
4224 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4225
4226 2009-07-14 Kenichi Handa <handa@m17n.org>
4227
4228 * font.c (font_vconcat_entity_vectors): New function.
4229 (struct font_sort_data): New member font_driver_preference.
4230 (font_compare): Check font_driver_preference.
4231 (font_sort_entities): The format of the first argument changed.
4232 (font_delete_unmatched): Likewise.
4233 (font_list_entities): The return type changed.
4234 (font_select_entity): The format of the second argument changed.
4235 (font_find_for_lface): Adjuste for the above changes.
4236 Don't suppress the checking of C even if the repertory supports it.
4237 (Flist_fonts): Adjust for the above changes.
4238
4239 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4240 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
4241 Reject a font who has adstyle property that is different from a
4242 langname derived from registry property.
4243 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
4244
4245 2009-07-13 Eli Zaretskii <eliz@gnu.org>
4246
4247 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4248 local copy of dirfilename.
4249
4250 2009-07-13 Kenichi Handa <handa@m17n.org>
4251
4252 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4253 against max_char.
4254
4255 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4256 calling XSYMBOL (sym).
4257
4258 2009-07-11 Eli Zaretskii <eliz@gnu.org>
4259
4260 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4261 New function.
4262 (directory_files_internal) [WINDOWSNT]:
4263 Bind w32-get-true-file-attributes to either t or nil, depending whether
4264 the filesystem of the directory is fast or slow.
4265
4266 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4267 file name.
4268 (is_slow_fs): New function.
4269 (stat): Use it to determine whether to issue more system calls to
4270 get accurate file attributes, when w32-get-true-file-attributes is
4271 `local'.
4272
4273 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4274
4275 * xfns.c (Fx_select_font): Remember last font selected in
4276 x_last_font_name and use that the next time. Also try the frame
4277 parameter font-parameter as default to the font dialog.
4278
4279 2009-07-10 Kenichi Handa <handa@m17n.org>
4280
4281 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4282
4283 2009-07-09 Eli Zaretskii <eliz@gnu.org>
4284
4285 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
4286
4287 * w32.c (stat): Treat UNC file names as residing on remote
4288 drives. (Bug#3542)
4289
4290 2009-07-09 Kenichi Handa <handa@m17n.org>
4291
4292 * fontset.c (fontset_find_font): Fix previous change.
4293
4294 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
4295
4296 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4297 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4298 error flag.
4299
4300 2009-07-08 Kenichi Handa <handa@m17n.org>
4301
4302 * fontset.c (fontset_find_font): Fix the logic of handling
4303 charset_matched.
4304 (font_for_char): Delete unused var.
4305 (generate_ascii_font_name): Delete it.
4306
4307 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4308
4309 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4310 (encode_coding_sjis): Fix the code range check.
4311
4312 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
4313
4314 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4315 (Fexpand_file_name): Copy string data properly (Bug#3772).
4316
4317 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4318
4319 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4320 first MapNotify.
4321
4322 2009-07-07 Kenichi Handa <handa@m17n.org>
4323
4324 * character.h (unibyte_has_multibyte_table): Delete extern.
4325 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4326
4327 * charset.c (Fset_charset_priority): Update charset_unibyte.
4328 (syms_of_charset): Initialize charset_unibyte.
4329
4330 * character.c (unibyte_has_multibyte_table): Delete it.
4331 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4332 charset_unibyte.
4333 (multibyte_char_to_unibyte_safe): Likewise.
4334 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4335
4336 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
4337 (x_produce_glyphs): Likewise.
4338
4339 * .gdbinit (xcharset): Fix the treating $arg0.
4340
4341 2009-07-04 Eli Zaretskii <eliz@gnu.org>
4342
4343 Emulation of `getloadavg' on MS-Windows.
4344 * w32.c: Include float.h.
4345 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4346 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4347 (get_native_system_info, get_system_times): New functions.
4348 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4349 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4350 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4351 g_b_init_get_system_times, and num_of_processors.
4352
4353 2009-07-03 Jason Rumney <jasonr@gnu.org>
4354
4355 * w32term.c (w32_initialize): Use standard types.
4356
4357 2009-07-03 Eli Zaretskii <eliz@gnu.org>
4358
4359 * dired.c (Ffile_attributes): Decode user and group names by the
4360 locale's encoding. (Bug#3443)
4361
4362 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4363
4364 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4365 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4366
4367 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4368
4369 * term.c (init_tty): Remove spurious #ifdef.
4370
4371 * m/mips.h: Mention this file is also used for netbsd.
4372 * m/pmax.h: Remove file.
4373
4374 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4375
4376 * xterm.h (struct x_display_info): Add invisible_cursor.
4377 (struct x_output): Add current_cursor.
4378
4379 * xterm.c (XTtoggle_invisible_pointer): New function.
4380 (x_define_frame_cursor): Don't define cursor if invisible or the
4381 same as before. Set current_cursor.
4382 (x_create_terminal): Set toggle_invisible_pointer_hook.
4383
4384 * xfns.c (make_invisible_cursor): New function.
4385 (x_set_mouse_color): Call make_invisible_cursor.
4386 Set current_cursor.
4387 (x_window): Set current_cursor.
4388
4389 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4390
4391 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4392 inserting a character.
4393 (read_avail_input): Call frame_make_pointer_visible.
4394
4395 * frame.c (Vmake_pointer_invisible): New variable.
4396 (frame_make_pointer_invisible, frame_make_pointer_visible):
4397 New functions.
4398 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4399
4400 * frame.h: Declare frame_make_pointer_invisible and
4401 frame_make_pointer_visible.
4402 (struct frame): Add pointer_invisible.
4403
4404 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4405
4406 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4407 frame isn't visible.
4408 (xg_frame_resized): If width/height is -1, get size of window
4409 from X server.
4410
4411 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4412 for MapNotify.
4413
4414 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
4415 here or call change_frame_size. Just call flush_and_sync.
4416 (flush_and_sync): Reintroduce.
4417
4418 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
4419
4420 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
4421
4422 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4423 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4424
4425 * frame.h: Declare Qsticky.
4426
4427 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4428
4429 * nsfns.m (ns_frame_parm_handlers): Ditto.
4430
4431 * frame.c: Declare Qsticky.
4432 (frame_parms): Add sticky.
4433
4434 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4435
4436 * xterm.h: Declare x_set_sticky.
4437
4438 * xterm.c (x_set_sticky): New function.
4439
4440 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4441 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4442 xg_tool_bar_proxy_help_callback.
4443
4444 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4445
4446 * frame.c: Qmaximized is new.
4447 (x_set_frame_parameters): Do not handle fullscreen specially.
4448 Only set width and height if explicitly set.
4449 (x_set_fullscreen): Handle Qmaximized.
4450 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4451 (syms_of_frame): Initialize Qmaximized.
4452
4453 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4454 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
4455
4456 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
4457 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4458 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
4459 set gravity to NorthWestGravity when USE_GTK.
4460 (set_wm_state): New function.
4461 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
4462 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4463 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
4464 or the case when no window manager is running. That means remove calls
4465 to x_real_positions and x_fullscreen_adjust.
4466
4467 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4468 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4469 flush_and_sync.
4470 (xg_height_changed): New function.
4471 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
4472 and gtk_window_set_policy. Set frame gravity after parsing the
4473 geometry string.
4474 (xg_update_frame_menubar, free_frame_menubar)
4475 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4476 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4477 Remove calls to xg_frame_set_char_size.
4478
4479 2009-07-01 Kenichi Handa <handa@m17n.org>
4480
4481 * keyboard.c (decode_keyboard_code): New function.
4482 (tty_read_avail_input): Decode the input bytes if necessary.
4483
4484 * coding.c (setup_coding_system):
4485 Initialize coding->carryover_bytes to 0.
4486 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4487 use Qno_conversion.
4488
4489 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4490
4491 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4492
4493 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
4494
4495 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
4496
4497 2009-06-30 Jason Rumney <jasonr@gnu.org>
4498
4499 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4500 is already loaded.
4501 Set user model ID if supported (bug#1849).
4502
4503 2009-06-29 Jim Meyering <meyering@redhat.com>
4504
4505 Remove useless if-before-xfree test.
4506 * nsfont.m (nsfont_close): Remove useless test.
4507 * term.c (delete_tty): Likewise.
4508 * w32.c (system_process_attributes): Likewise.
4509 * w32font.c (w32font_close): Likewise.
4510 * xfaces.c (x_free_gc): Likewise.
4511 * xselect.c (buffer): Likewise.
4512
4513 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4514
4515 * process.c (send_process): Keep decoded string in a local
4516 variable and protect it from GC. (Bug#3521)
4517
4518 2009-06-28 Eli Zaretskii <eliz@gnu.org>
4519
4520 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4521 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4522
4523 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
4524
4525 * xdisp.c (start_display, handle_face_prop)
4526 (move_it_vertically_backward, cursor_row_fully_visible_p)
4527 (redisplay_window, try_window_id, produce_image_glyph):
4528 Delete some #ifdef-ed out code chunks that are now obsolete.
4529
4530 * xterm.c (x_update_window_begin, x_new_focus_frame)
4531 (x_scroll_bar_handle_click, handle_one_xevent)
4532 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4533 (x_make_frame_visible, x_make_frame_invisible)
4534 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4535 code chunks that are now obsolete.
4536
4537 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
4538
4539 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4540 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4541 for hours, when optimzation is enabled.
4542 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4543 (xd_read_message): Make them static.
4544
4545 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4546
4547 * term.c (turn_on_face): Allow simultaneously bold and dim
4548 terminal faces (Bug#3530).
4549
4550 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
4551
4552 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4553
4554 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4555 truncation glyphs (Bug#3686).
4556
4557 2009-06-27 Glenn Morris <rgm@gnu.org>
4558
4559 * m/pmax.h: Restore file, with only netbsd portions.
4560
4561 2009-06-26 David Reitter <david.reitter@gmail.com>
4562
4563 * nsterm.m (keydown): Avoid infinite loop.
4564
4565 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4566
4567 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4568 the arg FORCE_SYMBOL.
4569
4570 2009-06-25 Kenichi Handa <handa@m17n.org>
4571
4572 * fontset.c (fontset_find_font): When a usable rfont_def is found
4573 in a fallback font-group, make it the first element of the group.
4574
4575 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
4576
4577 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4578
4579 2009-06-24 Kenichi Handa <handa@m17n.org>
4580
4581 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4582 set for C.
4583 (fontset_font): Record the availability of a font for C both in
4584 the realized fontsets of the current one and the default one.
4585
4586 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4587
4588 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4589 conditional, it is always defined on AIX.
4590
4591 2009-06-23 Miles Bader <miles@gnu.org>
4592
4593 * window.c (Vrecenter_redisplay): New variable.
4594 (syms_of_window): Initialize it.
4595 (Qtty): New extern declaration.
4596 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4597
4598 2009-06-23 Jim Meyering <meyering@redhat.com>
4599
4600 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4601 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
4602 pointer dereferences are guaranteed to be valid.
4603
4604 2009-06-23 Kenichi Handa <handa@m17n.org>
4605
4606 * emacs.c (main): Call init_font ().
4607
4608 * font.h (Vfont_log): Extern it.
4609 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4610
4611 * font.c (font_sort_entities, font_list_entities)
4612 (font_matching_entity, font_open_entity)
4613 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4614 (Vfont_log): Delete static.
4615 (font_log_env_checked): Delete this variable.
4616 (font_add_log): Don't check font_log_env_checked.
4617 (font_deferred_log): Check Vfont_log.
4618 (init_font): New function.
4619
4620 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4621
4622 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4623
4624 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4625
4626 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4627
4628 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4629 (face_for_char): Don't call font_deferred_log here.
4630 (font_for_char): Likewise.
4631
4632 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
4633
4634 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4635 rather than its background_width for drawing the overline and
4636 underline (Bug#489).
4637
4638 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4639 rather than its background_width for drawing the overline and
4640 underline (Bug#489).
4641 (xg_default_icon_file): New variable.
4642 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4643 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
4644
4645 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4646 (load_overlay_strings): Remove externs.
4647 (fast_find_position): Function deleted.
4648 (mouse_face_from_buffer_pos): New function, based on
4649 fast_find_position. Correctly handle before-strings,
4650 display-strings, and after-strings (Bug#1220).
4651 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4652
4653 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4654
4655 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4656 (move_it_in_display_line_to, move_it_in_display_line_to)
4657 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4658
4659 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4660
4661 * Branch for 23.1.
4662
4663 2009-06-21 Jason Rumney <jasonr@gnu.org>
4664
4665 * w32term.c (keyboard_codepage): New static variable.
4666 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4667 (w32_read_socket) [WM_CHAR]: Use it to decode character
4668 input (bug#3237).
4669 (w32_initialize): Initialize it.
4670 (codepage_for_locale): New function.
4671
4672 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
4673
4674 * process.c (status_message): Pass Faset index argument as a lisp
4675 object, so as to work with USE_LISP_UNION_TYPE.
4676
4677 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4678
4679 * coding.c (Ffind_coding_systems_region_internal):
4680 Cache checked characters.
4681
4682 2009-06-18 Kenichi Handa <handa@m17n.org>
4683
4684 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
4685
4686 2009-06-18 Andreas Schwab <aschwab@redhat.com>
4687
4688 * xdisp.c (redisplay_internal): Check that the frame is still
4689 live after redisplay of its windows.
4690 (redisplay_windows): Check that the window is still live.
4691
4692 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4693
4694 * coding.c (detect_coding_utf_16): Fix previous change.
4695
4696 2009-06-16 Kenichi Handa <handa@m17n.org>
4697
4698 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4699 UTF-16 by checking the dispersion of Eth and Oth bytes.
4700
4701 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4702
4703 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4704
4705 2009-06-15 Kenichi Handa <handa@m17n.org>
4706
4707 * process.c (status_message): Fix previous change. Be sure to
4708 decode a localized string.
4709
4710 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4711
4712 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4713 add comment explaining why.
4714
4715 2009-06-14 Sidney Markowitz <sidney@sidney.com>
4716
4717 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
4718
4719 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4720
4721 * nsfont.m (ns_attribute_value): Remove.
4722 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4723 (ns_has_attribute): Shrink the normal range.
4724 (ns_findfonts): Don't worry about requested spec in determining
4725 need for synthItal.
4726 (ns_get_covering_families): Retain scriptToFamilies.
4727
4728 2009-06-14 Seiji Zenitani <zenitani@mac.com>
4729
4730 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4731
4732 2009-06-11 Kenichi Handa <handa@m17n.org>
4733
4734 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4735 overhang for the static composition case.
4736
4737 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4738
4739 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4740 overhang for the automatic composition case.
4741
4742 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4743 composition case.
4744
4745 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
4746
4747 * xdisp.c (get_next_display_element): When handling wrap-prefix
4748 and line-prefix, treat \n as a control character (bug#3502).
4749
4750 2009-06-10 Kenichi Handa <handa@m17n.org>
4751
4752 * font.c (font_parse_family_registry): Fix for one-char foundry.
4753 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4754
4755 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4756
4757 * process.c (status_message): Fix handling of multibyte signal
4758 string (Bug#3499).
4759
4760 2009-06-09 Jim Meyering <meyering@redhat.com>
4761
4762 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4763 color name is missing.
4764
4765 2009-06-09 Kenichi Handa <handa@m17n.org>
4766
4767 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4768 FROM-CODE and TO-CODE are codepoints of CHARSET.
4769
4770 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4771
4772 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4773
4774 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4775
4776 Changes to support :script/:lang/:otf in NS font driver.
4777 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4778 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4779 indicate not part of font driver interface, and change callers.
4780 (ns_get_family): Remove pointless null check.
4781 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4782 ns_spec_to_descriptor, ns_descriptor_to_entity.
4783 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4784 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4785 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4786 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4787 (ns_get_req_script, ns_accumulate_script_ranges)
4788 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4789 New functions.
4790 (nsfont_list, nsfont_match): Use ns_findfonts.
4791 (nsfont_open): Use font descriptor instead of traits.
4792 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4793 (dump_glyphstring): Rename to ns_dump_glyphstring.
4794
4795 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4796
4797 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4798
4799 * fontset.c (fontset_from_font): Remove NS-specific code.
4800
4801 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
4802
4803 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4804 nonactive windows.
4805
4806 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
4807
4808 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
4809
4810 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4811
4812 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4813
4814 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
4815
4816 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
4817 account for the overflowing of newlines into the last glyph on the
4818 display line (Bug#3482).
4819
4820 2009-06-05 David Reitter <david.reitter@gmail.com>
4821
4822 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
4823 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
4824 Fns_selection_exists_p, Fns_selection_owner_p.
4825
4826 2009-06-03 Jason Rumney <jasonr@gnu.org>
4827
4828 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
4829 available. (Bug#3379)
4830
4831 2009-05-29 Kenichi Handa <handa@m17n.org>
4832
4833 * coding.c (get_translation_table):
4834 Check Venable_character_translation.
4835
4836 2009-05-26 David Reitter <david.reitter@gmail.com>
4837
4838 * nsterm.m (ns_raise_frame): Only raise frame if visible.
4839 (x_make_frame_visible): Move frame to front rather than calling
4840 ns_raise_frame().
4841 (keyDown:): Do not swallow events that aren't re-sent if frame
4842 isn't key window.
4843 (drawRect:): Do not set visibility/iconified flags because
4844 drawRect may be called by NSView even if the frame is hidden.
4845
4846 * nsfns.m (Fx_create_frame): Follow other ports in
4847 determining visibility; default to t. Ensure async_visible is set.
4848
4849 2009-05-23 Eli Zaretskii <eliz@gnu.org>
4850
4851 * dired.c (Ffile_attributes): Doc fix.
4852
4853 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
4854
4855 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
4856
4857 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
4858
4859 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
4860 and xfont_scratch_props.
4861 (syms_of_xfont): Do it here instead.
4862 (xfont_find_ccl_program): Delete, unused.
4863 (xfont_open): Delete unused var `i'.
4864
4865 2009-05-21 Kenichi Handa <handa@m17n.org>
4866
4867 * fontset.c (Qlatin): Don't make it static.
4868
4869 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
4870 New functions.
4871 (xfont_scripts_cache, xfont_scratch_props): New variables.
4872 (Qlatin, Vscalable_fonts_allowed): Extern it.
4873 (xfont_list_pattern): Argument changed. Callers changed.
4874 Check Vscalable_fonts_allowed. Check the support of a script.
4875 (xfont_list): Don't reject a font spec with :script property.
4876 (xfont_has_char): Fix setting of encoding.
4877 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
4878 xfont_scratch_props.
4879
4880 2009-05-19 Kenichi Handa <handa@m17n.org>
4881
4882 * font.c (font_sort_entities): Rename from font_sort_entites.
4883 Callers changed.
4884
4885 2009-05-18 Kenichi Handa <handa@m17n.org>
4886
4887 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
4888
4889 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
4890
4891 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
4892 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
4893
4894 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4895
4896 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
4897 (x_delete_terminal): Dissociate resource database from display and
4898 then call XrmDestroyDatabase before closing display.
4899
4900 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
4901
4902 * nsterm.m (ns_read_socket): Remove unused variable.
4903 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
4904 whether selected frame is viable before raising it (based on patch
4905 by David Reitter), and improve commentary.
4906 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
4907
4908 2009-05-15 Kenichi Handa <handa@m17n.org>
4909
4910 * font.c (Ffont_spec): Check arguments.
4911
4912 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
4913
4914 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
4915 weight when testing attributes (Bug#3282).
4916
4917 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4918
4919 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
4920 what we expect to get in the next ConfigureNotify event.
4921
4922 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
4923 before Xft one (Bug#1696).
4924
4925 2009-05-07 David Reitter <david.reitter@gmail.com>
4926
4927 * nsfns.m (Fx_display_planes): Compute bitplanes using
4928 NSBitsPerPixelFromDepth (Bug#3207).
4929
4930 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
4931
4932 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
4933
4934 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
4935
4936 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
4937
4938 2009-05-07 David Reitter <david.reitter@gmail.com>
4939
4940 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
4941 Respect mouse face background.
4942
4943 2009-05-07 David Reitter <david.reitter@gmail.com>
4944
4945 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
4946 Mouse movement/highlight: bracket drawing operations
4947 in ns_update_begin and ns_update_end.
4948
4949 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4950
4951 * nsfns.m (ns_get_screen): Rewrite.
4952 Don't presume selected-frame is of type `ns'.
4953
4954 * font.c (font_update_drivers): Sanity fallback to avoid disabling
4955 all drivers.
4956
4957 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
4958
4959 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4960
4961 * keyboard.h (add_user_signal): Fix typo in extern.
4962
4963 * lisp.h (add_user_signal): Remove extern.
4964
4965 * unexelf.c (unexec): Consider a section to precede the .bss section
4966 if its addresses overlap that of .bss.
4967 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
4968 instead of dumping process.
4969
4970 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4971
4972 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
4973
4974 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
4975
4976 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
4977
4978 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
4979
4980 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
4981 any statements.
4982
4983 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
4984
4985 * process.c (read_process_output): Make sure the current buffer is
4986 always restored.
4987
4988 * coding.c (record_conversion_result): Don't modify
4989 Vlast_code_conversion_error for successful result.
4990 (alloc_destination): Don't clobber conversion result. (Bug#1650)
4991
4992 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
4993
4994 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
4995 (load_charset_map): Remove unnecessary code.
4996
4997 2009-04-30 David Reitter <david.reitter@gmail.com>
4998
4999 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
5000 through f24.
5001
5002 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
5003
5004 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5005
5006 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5007 face_at_buffer_position.
5008 (face_before_or_after_it_pos, get_next_display_element)
5009 (note_mouse_highlight): Update face_at_buffer_position call.
5010
5011 * term.c (term_mouse_highlight):
5012 * msdos.c (IT_note_mouse_highlight):
5013 * fontset.c (Finternal_char_font):
5014 * font.c (font_at, font_range): Update face_at_buffer_position call.
5015
5016 * dispextern.h (face_at_buffer_position): Update prototype.
5017
5018 2009-04-30 Kenichi Handa <handa@m17n.org>
5019
5020 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
5021
5022 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5023
5024 * callproc.c (Fcall_process): Fix GC protection. Make sure
5025 current buffer is always restored.
5026
5027 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5028
5029 * atimer.c (init_atimer): Also clear stopped_atimers.
5030
5031 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5032
5033 * process.c (create_process): Clean up merger residues of
5034 2008-07-17 change.
5035
5036 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
5037
5038 * lread.c (Vread_circle): New variable.
5039 (read1): Disable recursive read if Vread_circle is nil.
5040
5041 2009-04-29 Kenichi Handa <handa@m17n.org>
5042
5043 * fontset.h (set_default_ascii_font): Delete extern.
5044
5045 * fontset.c (set_default_ascii_font): Delete this unused function.
5046
5047 * frame.c (x_set_font): When ARG is a font-object, check if the
5048 font-object matches with the ASCII font-spec of the frame's
5049 fontset. If not, create a new fontset for the frame. (Bug #3075)
5050
5051 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5052
5053 * fns.c (Flocale_info): Protect vector from GC during decoding.
5054
5055 * process.c (Fstart_process): Protect argv strings from GC during
5056 encoding.
5057
5058 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5059
5060 * sysdep.c: Include <ctype.h>.
5061
5062 2009-04-27 David Reitter <david.reitter@gmail.com>
5063
5064 * nsfont.m (nsfont_open): Remove unused variable shrink.
5065 Remove commented-out code.
5066
5067 2009-04-26 Johan Bockgård <bojohan@gnu.org>
5068
5069 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5070
5071 2009-04-25 Jason Rumney <jasonr@gnu.org>
5072
5073 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5074
5075 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5076
5077 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5078 Swap bytes in short integer if fringe bitmap width > 8.
5079
5080 2009-04-23 Kenichi Handa <handa@m17n.org>
5081
5082 * xfaces.c (Fx_list_fonts): If a font size is specified in
5083 PATTERN, set it in returned scalable fonts.
5084
5085 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
5086
5087 * keyboard.c (Fset_input_meta_mode): Doc fix.
5088
5089 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5090
5091 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
5092
5093 * coding.c (Fterminal_coding_system): Doc fix.
5094
5095 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5096 (Fx_display_pixel_height, Fx_display_planes)
5097 (Fx_display_color_cells, Fx_server_max_request_size)
5098 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5099 (Fx_display_mm_height, Fx_display_mm_width)
5100 (Fx_display_backing_store, Fx_display_visual_class)
5101 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5102 Doc fixes, replacing "terminal id" with "terminal object".
5103 (check_x_display_info): Handle terminal objects instead of
5104 terminal ids.
5105
5106 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5107 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
5108 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5109 Doc fixes, replacing "terminal id" with "terminal object".
5110
5111 2009-04-21 Kenichi Handa <handa@m17n.org>
5112
5113 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
5114 (font_score): Check AVGWIDTH too.
5115
5116 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5117 worst case.
5118 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5119 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
5120
5121 2009-04-19 Jason Rumney <jasonr@gnu.org>
5122
5123 The following changes fix Bug#3005 for wide glyphs on each platform,
5124 without reintroducing Bug#1258 for stretch glyphs.
5125
5126 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5127 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5128 get_phys_cursor_geometry.
5129
5130 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
5131 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5132 using get_phys_cursor_geometry.
5133
5134 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5135 correctly calculated.
5136
5137 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5138
5139 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5140 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
5141 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5142 is deprecated.
5143
5144 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5145
5146 * font.c (font_put_frame_data): Use xfree instead of free.
5147
5148 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
5149
5150 * w32font.c (Qja, Qko): Remove declarations.
5151 (syms_of_w32font): Don't DEFSYM them.
5152
5153 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
5154
5155 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5156
5157 * font.h (Qja, Qko): Extern them.
5158
5159 * ftfont.c (Qja, Qko): Remove declarations.
5160
5161 * xfont.c (Qja, Qko): Remove declarations.
5162
5163 2009-04-17 Kenichi Handa <handa@m17n.org>
5164
5165 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5166 string from a vector to handle Latin-1 characters correctly.
5167
5168 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5169 entity even if the cache hits.
5170
5171 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5172
5173 * search.c (boyer_moore): Use zero as marker value for a possible
5174 match instead of depending on overflow behavior. (Bug#2844)
5175
5176 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5177 * lisp.h: Adjust prototypes.
5178
5179 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
5180
5181 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5182 change (Bug#3003).
5183
5184 2009-04-16 Kenichi Handa <handa@m17n.org>
5185
5186 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
5187
5188 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5189 adstyle.
5190
5191 * ftfont.c (Qja, Qko): Don't make them static.
5192 (enum ftfont_cache_for): New enum.
5193 (fc_charset_table): Undo the previous change.
5194 (ftfont_get_latin1_charset): Delete it.
5195 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5196 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
5197 non-scarable font, try to get AVERAGE_WIDTH.
5198 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5199 Change ft_face_cache from a list of a hash-table. Don't check
5200 `ja' and `ko' adstyle here.
5201 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5202 FTFONT_CACHE_FOR_CHARET.
5203 (ftfont_get_charset): Undo the previous change.
5204 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
5205 (ftfont_close): Likewise.
5206 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5207
5208 * font.c (font_sort_entites): Change the meaning of the arg
5209 BEST-ONLY. Don't optimize for VEC of lenght 1.
5210 (font_select_entity): Just return the value of font_sort_entites.
5211
5212 * xfaces.c (merge_face_vectors): Reflect font properties in
5213 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5214 font_clear_prop if a face attribute doesn't change.
5215
5216 * charset.h (charset_ksc5601): Extern it.
5217
5218 * charset.c (charset_ksc5601): New variable.
5219 (Fdefine_charset_internal): Set charset_ksc5601.
5220 (init_charset_once): Initialize charset_ksc5601 to -1.
5221
5222 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5223
5224 * fileio.c (history_delete_duplicates): Remove unused declaration.
5225
5226 * callint.c (history_delete_duplicates): New declaration.
5227 (Fcall_interactively): Remove command history duplicates when
5228 history_delete_duplicates is true.
5229
5230 2009-04-14 Eli Zaretskii <eliz@gnu.org>
5231
5232 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5233
5234 2009-04-14 Kenichi Handa <handa@m17n.org>
5235
5236 * font.c (Ffont_info): Fix docstring. Fix the second element of
5237 the returned value (bug#2949).
5238
5239 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
5240
5241 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5242
5243 2009-04-14 Kenichi Handa <handa@m17n.org>
5244
5245 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5246 encoding charset is ascii_compatible.
5247
5248 * charset.c (Fdefine_charset_internal): Make charset
5249 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5250 code_offset is 0, and covers all ASCII characters.
5251
5252 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5253
5254 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5255 (ns_string_to_pasteboard_internal):
5256 * nsmenu.m (process_dialog):
5257 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5258 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5259 * lisp.h (Fx_load_color_file): Declare.
5260
5261 2009-04-13 Kenichi Handa <handa@m17n.org>
5262
5263 * font.c (font_delete_unmatched): Preserve the order of list elements.
5264 (font_select_entity): Suppress the code to optimize for the same
5265 kind of fonts.
5266 (font_load_for_lface): Get a font that supports at least ASCII
5267 characters.
5268
5269 * ftfont.c (Qja, Qko): New variables.
5270 (fc_charset_table): Delete uniquifier data for iso8859-1.
5271 (ftfont_get_latin1_charset): New function.
5272 (get_adstyle_property): New function.
5273 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5274 bitmap fonts.
5275 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5276 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5277 `ko' or `ja'.
5278 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
5279 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
5280 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5281 property.
5282 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5283 (syms_of_ftfont): DEFSYM Qja and Qko.
5284
5285 2009-04-09 Kenichi Handa <handa@m17n.org>
5286
5287 * charset.c (map_charset_chars): For a charset of `superset'
5288 method, fix calculation of code range.
5289
5290 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5291 from the list of extra properties.
5292 (font_clear_prop): Be sure to delete `:name' font property.
5293
5294 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5295
5296 * dispnew.c (redraw_overlapping_rows): Fix detection of
5297 overlapping for topmost and bottommost rows.
5298
5299 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
5300
5301 2009-04-06 Jason Rumney <jasonr@gnu.org>
5302
5303 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5304
5305 2009-04-06 Kenichi Handa <handa@m17n.org>
5306
5307 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5308
5309 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5310
5311 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5312
5313 * ftfont.c (ftfont_open): Fix checking of the return value of
5314 FT_Load_Char. Fix setting font->underline_thickness.
5315
5316 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
5317
5318 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5319 (Fterminal_parameters, Fterminal_parameter)
5320 (Fset_terminal_parameter): In doc string, refer to terminal
5321 objects rather than terminal ids.
5322
5323 2009-04-04 Eli Zaretskii <eliz@gnu.org>
5324
5325 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5326 ret_lim_data. (Bug#2867)
5327
5328 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
5329
5330 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5331 so they don't get wider than the window, matching 2006-01-23
5332 change to the partner function in xdisp.c (Bug#2800).
5333
5334 2009-04-03 Kenichi Handa <handa@m17n.org>
5335
5336 * print.c (print_object): Make each lowest sub_char_table start a
5337 new line (Bug#2866).
5338
5339 2009-04-02 Kenichi Handa <handa@m17n.org>
5340
5341 * fontset.c (fontset_font): Record no-font when a fontset
5342 explicitly tells not to try another font-specs.
5343
5344 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5345
5346 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5347
5348 2009-03-30 Kenichi Handa <handa@m17n.org>
5349
5350 * fontset.c (fontset_from_font): Specify only registry in a
5351 font-spec for all characters supported by that registry.
5352
5353 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5354 even if HAVE_M17N_FLT is not defined.
5355
5356 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5357
5358 * ftfont.c: Conditionalize prototyping and use of
5359 ftfont_variation_glyphs.
5360
5361 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5362
5363 * frame.c (delete_frame): Work around compiler bug.
5364
5365 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5366 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5367 Some more EMACS_INT.
5368 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5369
5370 * xdisp.c (dump_glyph): Fix typo.
5371
5372 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5373 (adjust_markers_gap_motion, adjust_markers_for_delete)
5374 (adjust_markers_for_insert, adjust_point)
5375 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5376 (make_gap, copy_text, count_size_as_multibyte, insert)
5377 (insert_and_inherit, insert_before_markers)
5378 (insert_before_markers_and_inherit, insert_1)
5379 (count_combining_before, count_combining_after, insert_1_both)
5380 (insert_from_string, insert_from_string_before_markers)
5381 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5382 (insert_from_buffer_1, adjust_after_replace)
5383 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5384 (replace_range_2, del_range, del_range_1, del_range_byte)
5385 (del_range_both, del_range_2, modify_region)
5386 (prepare_to_modify_buffer, signal_before_change)
5387 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5388 for buffer positions and sizes.
5389 * lisp.h: Adjust prototypes accordingly.
5390
5391 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5392 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5393 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5394
5395 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5396
5397 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5398
5399 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5400 lines and columns so we keep the same pixel height and width.
5401
5402 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5403 the property _NET_WM_STATE has changed.
5404 (x_handle_net_wm_state): New function to update frame parameter
5405 fullscreen.
5406 (x_term_init): Initialize atoms for _NET_WM_STATE.
5407
5408 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5409
5410 2009-03-27 Kevin Ryde <user42@zip.com.au>
5411
5412 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5413 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5414 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5415 (Fgpm_mouse_stop): Pass that new parameter.
5416 * termhooks.h (close_gpm): Adjust prototype.
5417
5418 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5419
5420 * lisp.h (Fx_focus_frame): Declare.
5421
5422 * callint.c (Fcall_interactively): For '^' just delegate the work to
5423 handle-shift-selection.
5424 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5425
5426 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
5427
5428 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5429
5430 * data.c (Qinteractive_form): New variable.
5431 (Finteractive_form): Use it.
5432
5433 * eval.c (Fcommandp): Use Qinteractive_form.
5434
5435 2009-03-24 Jason Rumney <jasonr@gnu.org>
5436
5437 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5438 Calculate total size precisely. Decode environment variables
5439 before substituting. (Bug#38)
5440
5441 2009-03-24 Kenichi Handa <handa@m17n.org>
5442
5443 * font.c (find_font_encoding): Return Qnil for unsupported
5444 encoding (Bug#2722).
5445
5446 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5447
5448 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5449 that gdpy is set.
5450
5451 2009-03-22 Alan Mackenzie <acm@muc.de>
5452
5453 * callint.c (Finteractive): Clarify the doc string - even
5454 promptless elements need \n separators.
5455
5456 2009-03-22 Jason Rumney <jasonr@gnu.org>
5457
5458 * w32term.c (syms_of_w32term): Doc fix for
5459 x-use-underline-position-properties.
5460
5461 2009-03-21 Eli Zaretskii <eliz@gnu.org>
5462
5463 * w32.c (getpwuid): Change argument type to unsigned.
5464 (struct w32_id): Change type of `rid' member to unsigned.
5465 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5466 argument ID to unsigned. All callers changed.
5467 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5468
5469 2009-03-20 Eli Zaretskii <eliz@gnu.org>
5470
5471 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5472 negative, produce a float value.
5473
5474 * dired.c (make_uid, make_gid): New functions.
5475 (Ffile_attributes): Use them to avoid negative UID and GID.
5476
5477 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
5478
5479 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5480 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5481 Fix typos in docstrings.
5482
5483 2009-03-19 Kenichi Handa <handa@m17n.org>
5484
5485 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
5486 changed, use font_load_for_lface to get a new font object.
5487 Call free_realized_fontset after handling ASCII font change.
5488
5489 * frame.c (x_set_font): Handle the case that ARG is a cons.
5490
5491 2009-03-19 Glenn Morris <rgm@gnu.org>
5492
5493 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5494
5495 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
5496
5497 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5498
5499 2009-03-19 Kenichi Handa <handa@m17n.org>
5500
5501 * charset.c (load_charset_map_from_file): When a mapfile can't be
5502 loaded, signal an error.
5503
5504 2009-03-18 Eli Zaretskii <eliz@gnu.org>
5505
5506 * dired.c (Ffile_attributes): Make sure UID and GID are always
5507 positive, even if the value is too large for a positive EMACS_INT.
5508 Doc fix.
5509
5510 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5511
5512 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5513
5514 * xmenu.c (xdialog_show): Move Fredisplay call ...
5515 (Fx_popup_dialog): ... here.
5516
5517 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5518
5519 * dired.c (file_name_completion): Disable the first optimization just
5520 installed, since it is not implemented correctly.
5521
5522 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5523
5524 * dired.c (file_name_completion): Check completion-ignored-extensions
5525 only if the entry can affect bestmatch.
5526 Stop the search early, as Ftry_completion already does.
5527
5528 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
5529
5530 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
5531
5532 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
5533
5534 * keyboard.c (parse_menu_item): Don't display remappings as menu
5535 equivalent bindings (Bug#788).
5536
5537 2009-03-15 Jason Rumney <jasonr@gnu.org>
5538
5539 * w32term.h (WM_EMACS_PAINT): New message.
5540 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5541 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5542 before passing to lisp thread. (Bug#950)
5543
5544 2009-03-14 David Reitter <david.reitter@gmail.com>
5545
5546 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5547 variable as it was never reset.
5548 (ns_term_init): Remove initialization of Lisp-settable defaults
5549 and ns_expand_space.
5550 (-setPanelFromDefaultValues): Remove ns_expand_space.
5551 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5552 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
5553 i.e. no additional spacing, similar to Carbon port.
5554
5555 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5556 * nsfns.m (ns-popup-prefs-panel): Remove.
5557
5558 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5559
5560 * sound.c (alsa_configure): Remove call to deprecated
5561 snd_pcm_sw_params_set_xfer_align.
5562
5563 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
5564
5565 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5566 after clicking in a detached tool bar.
5567 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5568
5569 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5570
5571 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5572 int/Lisp_Object mixup).
5573
5574 2009-03-13 Kenichi Handa <handa@m17n.org>
5575
5576 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
5577 Handle NAME nil and t correctly. Callers changed.
5578 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5579 (set_fontset_font): Change ARG to a vector. Handle range_list in
5580 ARG correctly.
5581 (Fset_fontset_font): Fix the case that TARGET is both a script
5582 name and charset name. Adjust the arg to set_fontset_font for
5583 the above change.
5584 (fontset_from_font): Fix previous change.
5585 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
5586 entry. If FONTSET is the default fontset, don't set the extra
5587 slot of the returning char-table.
5588
5589 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
5590
5591 * nsfns.m (Fx_close_connection): Doc fix.
5592 (Fns_do_applescript): Reflow docstring.
5593 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5594 (Fx_display_pixel_width, Fx_display_pixel_height)
5595 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5596 Fix typos in docstrings.
5597 (Fns_set_alpha): Fix typos in error messages.
5598
5599 2009-03-12 David Reitter <david.reitter@gmail.com>
5600
5601 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
5602 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5603 were used for such events.
5604
5605 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5606 (toggleToolbar, performDragOperation, runHelp): Use it.
5607
5608 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
5609 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5610
5611 2009-03-11 Kenichi Handa <handa@m17n.org>
5612
5613 * font.h (font_open_by_spec): Extern it.
5614
5615 * font.c (font_open_by_spec): New function.
5616 (font_open_by_name): Use font_open_by_spec.
5617
5618 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5619 fontset of the frame.
5620
5621 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5622 modify the default font of frames that use this fontset.
5623 (num_auto_fontsets): New variable.
5624 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5625 name. Be sure to set FONTSET_ASCII to the correct font name.
5626 (update_auto_fontset_alist): New function.
5627
5628 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
5629
5630 * makefile.w32-in: Update dependencies.
5631
5632 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5633
5634 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5635
5636 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5637
5638 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5639
5640 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
5641
5642 * lread.c (Feval_buffer): Doc fix.
5643
5644 2009-03-09 Kenichi Handa <handa@m17n.org>
5645
5646 * charset.c (Qfile_name_handler_alist): Extern it.
5647 (load_charset_map_from_file): Temporarily bind
5648 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5649
5650 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
5651
5652 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5653 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
5654
5655 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5656
5657 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5658 (x_set_window_size): Change back to calculated method of setting
5659 toolbar height under Cocoa. (Bug#2546)
5660 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5661 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5662
5663 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5664
5665 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5666 accelerator in parens under GNUstep.
5667
5668 2009-03-06 Kenichi Handa <handa@m17n.org>
5669
5670 These changes are to detect incorrect composition sequence without
5671 looking ahead the source. (Bug#2370)
5672
5673 * coding.h: Include "composite.h".
5674 (enum compisition_state): New enum.
5675 (struct compisition_status): New struct.
5676 (struct iso_2022_spec): New member cmp_status.
5677 (struct emacs_mule_spec): New struct.
5678 (struct coding_system): New members ctext_extended_segment_len and
5679 embedded_utf_8. Change the union member
5680 spec.emacs_mule_full_support to spec.emacs_mule.
5681
5682 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5683 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
5684 (MAX_ANNOTATION_LENGTH): Define to 5.
5685 (ADD_COMPOSITION_DATA): New arg nbytes.
5686 (emacs_mule_char): New arg cmp_status.
5687 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5688 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5689 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5690 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5691 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5692 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5693 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5694 (EMACS_MULE_COMPOSITION_END): New macro.
5695 (emacs_mule_finish_composition): New function.
5696 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5697 (decode_coding_emacs_mule): Avoid long looking ahead while
5698 handling composition.
5699 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5700 (ENCODE_COMPOSITION_RULE): New macro.
5701 (finish_composition): New function.
5702 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5703 (DECODE_COMPOSITION_START): New implementation.
5704 (DECODE_COMPOSITION_END): Likewise.
5705 (STORE_COMPOSITION_RULE): New macro.
5706 (decode_coding_iso_2022): Avoid long looking ahead while handling
5707 composition, CTEXT extended segment, and embedded UTF-8.
5708 (setup_coding_system): For a coding of type iso-2022, reset
5709 CODING_ISO_EXTSEGMENT_LEN (coding) and
5710 CODING_ISO_EMBEDDED_UTF_8 (coding).
5711 (get_translation): Delete arguments last_block, from_nchars,
5712 to_nchars. Callers changed.
5713 (produce_chars): Don't modify charbuf. Adjusted for the change of
5714 get_translation.
5715 (produce_composition): Adjust for the new annotation sequence.
5716 (handle_composition_annotation): Likewise.
5717 (consume_chars): Adjust for the change of get_translation.
5718
5719 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5720
5721 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
5722
5723 2009-03-05 Kenichi Handa <handa@m17n.org>
5724
5725 * font.c (font_select_entity): New function.
5726 (font_find_for_lface): Use font_select_entity to select a font.
5727
5728 * fontset.c (fontset_find_font): If a font found without
5729 restricting to the characters C doesn't support C, try to find a
5730 font with C restriction.
5731
5732 2009-03-04 Nikolaj Schumacher <me@nschum.de>
5733
5734 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
5735
5736 2009-03-04 Jason Rumney <jasonr@gnu.org>
5737
5738 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
5739 characters that have already been read. (Bug#2569)
5740
5741 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5742 Log an error message if check_image_size failed.
5743 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
5744 (gs_load): Mention max-image-size in size error message. (Bug#2560)
5745
5746 2009-03-02 Eli Zaretskii <eliz@gnu.org>
5747
5748 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5749 when decoding process output.
5750
5751 2009-03-01 Richard M Stallman <rms@gnu.org>
5752
5753 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5754
5755 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5756
5757 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5758
5759 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5760 (decode_coding_emacs_mule, decode_coding_iso_2022)
5761 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5762 (decode_coding_raw_text, decode_coding_charset)
5763 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5764 Honor inhibit-eol-conversion. (Bug #2186)
5765
5766 2009-02-28 Jason Rumney <jasonr@gnu.org>
5767
5768 * coding.c (detect_coding_charset): If not checking latin extra,
5769 fail on characters between 0x80 and 0xA0. (Bug#2354)
5770
5771 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5772
5773 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
5774 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
5775
5776 2009-02-27 Glenn Morris <rgm@gnu.org>
5777
5778 * callint.c (Finteractive): Doc fix.
5779
5780 2009-02-27 Kenichi Handa <handa@m17n.org>
5781
5782 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5783
5784 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
5785
5786 * font.c (font_style_to_value): Set value for unknown symbols to
5787 100 instead of 255.
5788 (weight_table, slant_table, width_table): Treat "unspecified" as
5789 the default value.
5790
5791 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
5792
5793 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5794
5795 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
5796
5797 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5798 error as soon as a recursive load is detected.
5799
5800 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5801
5802 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5803 before caching.
5804
5805 2009-02-24 Kenichi Handa <handa@m17n.org>
5806
5807 * fontset.c (fontset_find_font): Fix the condition for checking
5808 unavailable font.
5809
5810 2009-02-24 Glenn Morris <rgm@gnu.org>
5811
5812 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5813 whitespace that confuses documentation.
5814
5815 2009-02-23 Miles Bader <miles@gnu.org>
5816
5817 * process.c (Flist_system_processes, Fprocess_attributes)
5818 (syms_of_process): Rename `system-process-attributes' to
5819 `process-attributes'.
5820
5821 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
5822
5823 * coding.h (struct coding_system): Make safe_charsets a pointer to
5824 unsigned char.
5825 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
5826 being 255.
5827 (SAFE_CHARSET_P): Likewise.
5828 (setup_iso_safe_charsets): Properly setup safe_charsets.
5829 (Fdefine_coding_system_internal): Likewise.
5830 (setup_coding_system): Likewise. Remove unneeded casts.
5831 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
5832 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
5833 unneeded casts.
5834
5835 * insdel.c (del_range_2): Don't modify gap contents when called
5836 from decode_coding_object. (Bug#1809)
5837
5838 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
5839
5840 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
5841 Qfont_object.
5842 (Ftype_of): Recognize font objects.
5843
5844 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
5845
5846 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
5847 moved to data.c.
5848
5849 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
5850
5851 * nsterm.m (x_make_frame_invisible): Unset async_visible,
5852 async_iconified. Based on a patch by Christian Lynbech
5853 <christian.lynbech@tieto.com>.
5854 (EmacsView-windowDidMiniaturize:): Unset async_visible.
5855
5856 2009-02-20 Glenn Morris <rgm@gnu.org>
5857
5858 * syntax.c (Fskip_chars_forward): Fix doc typo.
5859
5860 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
5861
5862 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
5863
5864 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
5865
5866 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
5867
5868 2009-02-19 Kenichi Handa <handa@m17n.org>
5869
5870 * coding.c (detect_coding): Preserve coding->mode.
5871 Don't overflow coding->carryover. (Bug#2370)
5872
5873 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
5874
5875 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
5876
5877 2009-02-18 Kenichi Handa <handa@m17n.org>
5878
5879 * font.c (font_check_otf_features): Fix handling of `nil' element.
5880 (Ffont_spec): Describe :lang and :otf in the docstring.
5881
5882 2009-02-16 Andreas Schwab <schwab@suse.de>
5883
5884 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
5885 string.
5886
5887 2009-02-16 Kenichi Handa <handa@m17n.org>
5888
5889 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
5890 (Bug#1723)
5891
5892 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
5893
5894 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
5895
5896 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
5897 (handle_line_prefix): Suppress wrapping of wrap prefixes.
5898
5899 2009-02-14 Eli Zaretskii <eliz@gnu.org>
5900
5901 * msdos.c (MAX_SCREEN_BUF): New macro.
5902 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
5903 Encode the entire run of glyphs sharing the same face, instead of
5904 doing that one glyph at a time (fixes a bug with displaying
5905 double-size characters).
5906
5907 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
5908
5909 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
5910
5911 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
5912 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
5913 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
5914
5915 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
5916 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
5917
5918 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
5919
5920 * keyboard.c (adjust_point_for_property): Allow stopping between two
5921 invisible areas.
5922
5923 2009-02-12 Jason Rumney <jasonr@gnu.org>
5924
5925 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
5926 (add_font_entity_to_list): Call check_face_name even when family
5927 is unspecified.
5928
5929 * w32term.c (x_display_pixel_height, x_display_pixel_width):
5930 Release DC when finished. Use NULL window to refer to desktop.
5931 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
5932
5933 * w32font.c (add_font_entity_to_list): Fix check for substituted
5934 raster fonts. (Bug#2219)
5935
5936 2009-02-12 Kenichi Handa <handa@m17n.org>
5937
5938 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
5939 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
5940 (autocmp_chars): Use fast_looking_at. Don't compose more
5941 characters than MAX_COMPOSITION_COMPONENTS.
5942 (find_automatic_composition): While looking forward and backward,
5943 check static composition. Fix where to stop looking forward.
5944 (composition_adjust_point): Fix checking of static composition.
5945 (Fcomposition_get_gstring): Pay attention to
5946 MAX_COMPOSITION_COMPONENTS.
5947
5948 * lisp.h (fast_looking_at): Extern it.
5949
5950 * search.c (fast_looking_at): New function.
5951
5952 * term.c (encode_terminal_code): Adjust for the change of
5953 <struct glyph>.u.cmp.to.
5954 (append_composite_glyph): Likewise.
5955
5956 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
5957 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
5958 composition.
5959 (append_composite_glyph): Adjust for the change of
5960 <strcut glyph>.u.cmp.to.
5961
5962 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
5963
5964 * casetab.c (init_casetab_once):
5965 * coding.c (ALLOC_CONVERSION_WORK_AREA):
5966 * font.c (font_update_lface):
5967 * fontset.c (Fnew_fontset):
5968 * ftfont.c (ftfont_drive_otf):
5969 * xfont.c (xfont_open):
5970 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
5971
5972 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
5973
5974 * fileio.c (Fwrite_region): !NILP -> CONSP.
5975
5976 2009-02-10 Andreas Schwab <schwab@suse.de>
5977
5978 * process.c (send_process): Properly relocate pointer into data
5979 when using encoded data. (Bug#2272)
5980
5981 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
5982
5983 * coding.c (detect_coding_charset): Fix previous change.
5984
5985 2009-02-08 Jason Rumney <jasonr@gnu.org>
5986
5987 * w32fns.c (w32_hide_hourglass): Handle case where frame
5988 disappeared while hourglass was displayed. (Bug #2193)
5989
5990 2009-02-07 Andreas Schwab <schwab@suse.de>
5991
5992 * unexelf.c (unexec): Fix error message.
5993
5994 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
5995
5996 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
5997 when modal window is active. (Bug #2152)
5998 (applicationShouldTerminate:): Remove now-unneeded while loop
5999 around NSRunAlertPanel.
6000
6001 * nsmenu.m (popupSession): New file-global variable.
6002 (pop_down_menu): End the popupSession before closing dialog.
6003 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6004 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6005 don't query NSApp for events (just sleep instead).
6006
6007 2009-02-07 Eli Zaretskii <eliz@gnu.org>
6008
6009 * coding.c (syms_of_coding) <translation-table-for-input>:
6010 Modify doc string to discourage use for character code unification.
6011
6012 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6013
6014 * atimer.c (run_timers): Update pending_atimers.
6015
6016 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
6017
6018 * image.c (svg_load_image): Fix last change.
6019
6020 * xfns.c (Fx_create_frame): Signal an error if no font is
6021 found (Bug#2147).
6022
6023 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
6024
6025 * character.c (syms_of_character) <script-representative-chars>:
6026 Fix typo in docstring.
6027
6028 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6029
6030 * nsmenu.m (pop_down_menu): New function.
6031 (ns_popup_dialog): Call it on unwind.
6032 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6033 call timer_check() (Bug#2154).
6034 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6035 handling_signal is set.
6036 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6037
6038 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
6039
6040 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6041
6042 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6043
6044 * keyboard.c (poll_for_input_1, handle_async_input):
6045 Set handling_signal under HAVE_NS.
6046
6047 2009-02-04 Glenn Morris <rgm@gnu.org>
6048
6049 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6050
6051 2009-02-04 Kenichi Handa <handa@m17n.org>
6052
6053 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6054
6055 * charset.c (Fchar_charset): New optional arg restriction.
6056
6057 * coding.h (coding_system_charset_list): Extern it.
6058
6059 * coding.c (coding_system_charset_list): New function.
6060
6061 * composite.c: Include coding.h and termhooks.h.
6062 (composition_gstring_p): Fix for the terminal case.
6063 (composition_gstring_width): Likewise.
6064 (fill_gstring_body): Likewise.
6065 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6066 the frame.
6067 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6068 is within a composition.
6069 (Fcomposition_get_gstring): Fix the terminal case.
6070
6071 * term.c (encode_terminal_code): Fix handling of composition.
6072 (produce_composite_glyph): For static composition, get pixel_width
6073 from struct composition.
6074
6075 2009-02-02 Andreas Schwab <schwab@suse.de>
6076
6077 * unexelf.c (unexec): Handle unaligned bss offset.
6078
6079 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6080
6081 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6082 XT,w32read_socket changes to ns_read_socket.
6083
6084 * keyboard.c (handle_interrupt): Don't call
6085 quit_throw_to_read_char() under NS.
6086
6087 * blockinput.h: Remove NS-specific code.
6088
6089 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6090
6091 * dispnew.c (window_change_signal): Don't try to get the size of a
6092 suspended tty frame.
6093 * term.c (Fresume_tty): Resize if the size has changed while the
6094 tty was suspended.
6095
6096 * alloc.c (mark_stack): Properly conditionalize previous change.
6097
6098 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6099
6100 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6101 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6102 Remove; this code is not used on Windows.
6103
6104 2009-01-30 Eli Zaretskii <eliz@gnu.org>
6105
6106 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6107 EOLs that also has stray ^M characters.
6108
6109 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6110
6111 * atimer.c (run_timers, alarm_signal_handler):
6112 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6113 * w32inevt.c (w32_console_read_socket):
6114 * w32term.c (w32_read_socket):
6115 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6116
6117 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
6118
6119 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6120 Initialize it as a relative filename pattern.
6121 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6122 (Fcall_process_region): Simplify temp file creation using
6123 temporary-file-directory.
6124
6125 2009-01-29 Eli Zaretskii <eliz@gnu.org>
6126
6127 * msdos.c: Rename pending_signals to msdos_pending_signals.
6128 (sig_suspender, sigprocmask): Adjust.
6129
6130 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
6131
6132 * keyboard.c (pending_signals): New var.
6133 (poll_for_input, input_available_signal, init_keyboard): Set it.
6134 (process_pending_signals): New function.
6135
6136 * lisp.h (QUIT): Check pending_signals instead of
6137 interrupt_input_pending. Use process_pending_signals.
6138
6139 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
6140
6141 * process.c (wait_reading_process_output): Use process_pending_signals.
6142
6143 * sysdep.c (emacs_write): Use process_pending_signals.
6144
6145 * xterm.c (XTread_socket): Update pending_signals.
6146
6147 * w32term.c (w32_read_socket): Update pending_signals.
6148
6149 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6150
6151 2009-01-29 Kenichi Handa <handa@m17n.org>
6152
6153 * xftfont.c (xftfont_has_char): New function.
6154 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6155
6156 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6157
6158 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6159 under GNUstep.
6160 (ns_query_color): New declaration.
6161
6162 * nsterm.m (ns_confirm_quit): New variable.
6163 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6164 (EmacsApp-applicationShouldTerminate:): Use it.
6165 (EmacsPrefsController): Let user set it.
6166 (ns_query_color): New function.
6167 (ns_defined_color): Use it.
6168 (ns_initialize): Drop.
6169 (ns_term_init): Add two lines from ns_initialize(), and set
6170 input_interrupt_mode to nil.
6171
6172 * image.c (svg_load_image): Don't right-shift background RGB when
6173 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
6174
6175 2009-01-28 Kenichi Handa <handa@m17n.org>
6176
6177 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6178 (fontset_get_font_group): Remember that no font-group is specified
6179 for C.
6180
6181 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
6182
6183 * fns.c (concat): Check for string overflow (bug#1787).
6184
6185 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6186 Quadruple undo limits (bug#1501).
6187
6188 2009-01-27 Kenichi Handa <handa@m17n.org>
6189
6190 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6191 directly use GT_Get_Char_index.
6192
6193 * xftfont.c (struct xftfont_info): New member `index'.
6194
6195 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6196 (Ffontset_font): Adjust for the change of fontset entry.
6197
6198 2009-01-26 Kenichi Handa <handa@m17n.org>
6199
6200 * fontset.c (fontset_find_font): Fix handling of non-cons return
6201 value of fontset_get_font_group.
6202 (fontset_font): Revert last change.
6203
6204 2009-01-26 Jason Rumney <jasonr@gnu.org>
6205
6206 * w32font.c (w32font_list_internal): Return quickly if registry is
6207 unknown. Simplify final return.
6208 (add_font_entity_to_list): Break complex logic down into more
6209 manageable chunks. Move unknown registry check to
6210 w32font_list_internal.
6211
6212 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6213
6214 Changes to remove Feval calls from GUI under NS.
6215
6216 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6217 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
6218 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6219
6220 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6221 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6222 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6223 instead of NON_ASCII_KEYSTROKE_EVENT.
6224 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6225 (EmacsApp-applicationShouldTerminate:): Query user.
6226 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6227 instead of Feval.
6228
6229 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6230
6231 * keyboard.c (kbd_buffer_get_event): Check for it.
6232 (keys_of_keyboard): Define lispy keys for
6233 ns-put/unput-working-text.
6234
6235 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6236 versions.
6237 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6238
6239 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
6240
6241 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
6242 setting current_buffer directly. (Bug#2044)
6243
6244 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
6245
6246 * fontset.c (fontset_font): If we know there is no font, don't do
6247 any work. (Bug#1952, bug#1990).
6248
6249 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
6250
6251 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6252
6253 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
6254 (ns_no_defaults): New declaration.
6255 (main): Use it.
6256
6257 * nsterm.h (ns_no_defaults): New declaration.
6258
6259 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
6260
6261 * nsterm.m (ns_no_defaults): New variable.
6262 (ns_initialize): Don't read defaults when ns_no_defaults.
6263 (EmacsView-readSelectionFromPasteboard:)
6264 (writeSelectionToPasteboard:types:): New stubbed-out methods for
6265 NSServicesRequests protocol. (Bug#1435)
6266 (ns_dumpglyphs_stretch): New function.
6267 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
6268 of 2008-11-15 to other terms. (Bug#615)
6269
6270 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6271
6272 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6273
6274 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6275 call for Sparc64.
6276
6277 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6278
6279 * nsfns.m:
6280 * nsgui.h:
6281 * nsmenu.m:
6282 * nsselect.m:
6283 * nsterm.h:
6284 * nsterm.m: Remove '23' comments that indicated code added during
6285 update from emacs-20 -> emacs-23.
6286
6287 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6288
6289 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
6290 ns_alternate_modifier. (Bug#1217)
6291
6292 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6293 Display all shortcuts, including those w/o super modifier.
6294
6295 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6296
6297 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
6298
6299 * fileio.c (Vwrite_region_post_annotation_function)
6300 (Vwrite_region_annotation_buffers): New vars.
6301 (build_annotations_unwind): Just reset
6302 Vwrite_region_annotation_buffers.
6303 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6304 Call write-region-post-annotation-function.
6305 (build_annotations): Add to Vwrite_region_annotation_buffers if
6306 buffer changes.
6307
6308 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6309
6310 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6311 Tiger.
6312 * nsfns.m (ns_do_applescript):
6313 Conditionalize typeUTF16ExternalRepresentation on Tiger.
6314
6315 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6316
6317 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6318
6319 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6320
6321 * nsmenu.m (NSMENUPROFILE): Change #if style.
6322
6323 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6324
6325 * nsterm.m (x_set_frame_alpha): Add prototype.
6326 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6327 handle Ctrl-tab. (Bug#1841)
6328 (ns_get_color): Use unsigned long long for scanned hex string value.
6329 (ns_term_shutdown): Abort on non SIGTERM signals.
6330 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6331 (EmacsPrefsController-setPanelFromDefaultValues): New function.
6332 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
6333 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
6334 (ns_defined_color): Fix settings of the XColor variable fields:
6335 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
6336
6337 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
6338 DPI. (Bug#1316)
6339 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6340 values in onTiger section.
6341
6342 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
6343
6344 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6345 Check return value of font_spec_from_name.
6346 (Fx_list_fonts): Doc fix. (Bug#1951)
6347
6348 * font.c (font_spec_from_name): Return Qnil if font name could not
6349 be parsed.
6350 (font_parse_name): Treat a `?' character as part of an XLFD.
6351
6352 * fns.c (Fsubstring): Doc fix.
6353
6354 2009-01-19 Kenichi Handa <handa@m17n.org>
6355
6356 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
6357 (ftfont_list): Likewise.
6358
6359 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
6360
6361 * dbusbind.c (Fdbus_register_signal):
6362 * process.c (conv_sockaddr_to_lisp):
6363 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6364
6365 * callproc.c (Fgetenv_internal): Doc fix.
6366
6367 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
6368
6369 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6370 it is not even used.
6371
6372 2009-01-16 Glenn Morris <rgm@gnu.org>
6373
6374 * font.c (Ffont_variation_glyphs): Silence compiler.
6375
6376 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
6377
6378 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6379 Reported by David Robinow <drobinow@gmail.com>.
6380
6381 2009-01-15 Kenichi Handa <handa@m17n.org>
6382
6383 * coding.c (detect_coding_system): Fix handling of null_byte_found.
6384
6385 2009-01-14 Jason Rumney <jasonr@gnu.org>
6386
6387 * frame.c (x_set_font): Always store a font to the font parameter,
6388 never a fontset. (Bug#1562)
6389
6390 2009-01-14 Kenichi Handa <handa@m17n.org>
6391
6392 * coding.c (TWO_MORE_BYTES): New macro.
6393 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
6394
6395 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
6396
6397 * font.c (font_clear_prop): If clearing the family, clear the font
6398 width index too.
6399
6400 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
6401
6402 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
6403
6404 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6405 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6406 functions, use sizeof.
6407
6408 2009-01-12 Martin Rudalics <rudalics@gmx.at>
6409
6410 * keyboard.c (read_char): Fix case where last_nonmenu_event
6411 returned a bad value with submenus. (Bug#447)
6412
6413 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
6414
6415 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6416 family, clear the font width index too.
6417
6418 2009-01-11 Jason Rumney <jasonr@gnu.org>
6419
6420 * keyboard.c (cmd_error_internal): Exit when errors occur before
6421 frame creation and not in daemon mode. (Bug#1836)
6422
6423 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
6424
6425 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6426 of a display vector, backtrack.
6427 (try_window_reusing_current_matrix): Check glyph type before
6428 referencing charpos member.
6429
6430 2009-01-10 Eli Zaretskii <eliz@gnu.org>
6431
6432 Fix Bug #876:
6433
6434 * coding.c (inhibit_null_byte_detection): New variable.
6435 (detect_coding, detect_coding_system): Don't pay attention to null
6436 bytes if inhibit_null_byte_detection is non-zero.
6437 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
6438 <inhibit-iso-escape-detection>: Doc fix.
6439
6440 2009-01-09 Jason Rumney <jasonr@gnu.org>
6441
6442 * w32font.c (add_font_entity_to_list): Don't report unknown
6443 Windows charset as any unrecognized registry. (Bug#1548)
6444 Only report Unicode Plane 2 fonts as unicode-sip.
6445
6446 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
6447
6448 * xfaces.c (Fx_font_family_list): Delete function.
6449 Move compatibility version to faces.el.
6450
6451 * font.c (Ffont_family_list): Return a list of strings, not symbols.
6452
6453 2009-01-09 Martin Rudalics <rudalics@gmx.at>
6454
6455 * frame.c (x_set_frame_parameters): Remember requested value for
6456 fullscreen before it's reset by the parameter handler.
6457
6458 2009-01-09 Glenn Morris <rgm@gnu.org>
6459
6460 * keyboard.c (last_command_char): For clarity, rename to...
6461 (last_command_event): ... and update all users.
6462 (last_input_char): For clarity, rename to...
6463 (last_input_event): ... and update all users.
6464 (last-command-char, last-input-char): Move to subr.el as aliases.
6465 * cmds.c, commands.h: Update for last_command_char rename.
6466
6467 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
6468
6469 * font.c (font_open_for_lface): Handle unspecified height attribute.
6470
6471 2009-01-08 Jason Rumney <jasonr@gnu.org>
6472
6473 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6474 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6475 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6476 Don't declare.
6477 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
6478 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6479
6480 2009-01-07 Kenichi Handa <handa@m17n.org>
6481
6482 * fileio.c (Finsert_file_contents): In the case of replace,
6483 remember the coding system used for decoding in
6484 coding_system (Bug#1039).
6485
6486 * coding.c (decode_coding_utf_8): Check byte_after_cr before
6487 breaking the loop. (Bug#870)
6488 (decode_coding_utf_16, decode_coding_emacs_mule)
6489 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6490 (decode_coding_charset): Likewise.
6491
6492 2009-01-05 Martin Rudalics <rudalics@gmx.at>
6493
6494 * frame.c (x_set_frame_parameters): Make sure height (width) get
6495 applied when fullwidth (fullheight) is set. (Bug#1522)
6496
6497 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
6498
6499 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6500 (utc_base): Declare as ULONGLONG, not long double.
6501 (convert_time_raw): Delete.
6502 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6503 (initialize_utc_base): New function.
6504 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6505 (convert_from_time_t): Use initialize_utc_base; compute result with
6506 64-bit arithmetic.
6507 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6508
6509 2009-01-03 Eli Zaretskii <eliz@gnu.org>
6510
6511 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
6512 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6513 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6514 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6515 [!subprocesses]: Define.
6516 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6517 (Flist_system_processes, Fsystem_process_attributes)
6518 [!subprocesses]: Call list_system_processes and
6519 system_process_attributes instead of returning Qnil.
6520
6521 * dosfns.c (system_process_attributes, list_system_processes):
6522 New functions.
6523
6524 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6525
6526 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6527 Don't use the default (no-op) implementation.
6528
6529 2009-01-03 Jason Rumney <jasonr@gnu.org>
6530
6531 * keyboard.c (parse_modifiers_uncached): Wheel events are
6532 clicks (bug#687).
6533
6534 * w32term.c (x_query_colors, x_query_color): New functions.
6535
6536 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6537 (svg_load_image): Cast returned pointers from dynamically loaded
6538 functions. Eliminate W32 specific code.
6539
6540 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6541
6542 * nsfns.m (x_set_foreground_color, x_set_background_color)
6543 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6544 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6545 x_ prefix instead of ns_. Update references.
6546 (syms_of_nsfns): Add a FIXME comment.
6547
6548 * nsterm.m (x_set_cursor_type): New prototype.
6549 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6550
6551 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6552 for Solaris instead of incorrectly providing Qutime and Qcutime.
6553
6554 2009-01-02 Eli Zaretskii <eliz@gnu.org>
6555
6556 * w32.c (process_times): Compute sum of utime and stime.
6557 (system_process_attributes): Add Qtime to the alist.
6558
6559 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6560 and add them to the alist.
6561
6562 * process.c (top level) <Qtime, Qctime>: New variables.
6563 (syms_of_process): staticpro them.
6564 (Fsystem_process_attributes): Add their documentation to the doc
6565 string.
6566
6567 * process.h: Declare Qtime and Qctime.
6568
6569 2009-01-02 Jason Rumney <jasonr@gnu.org>
6570
6571 * image.c (Qgobject): New symbol.
6572 (syms_of_image): Initialize it.
6573 (init_svg_functions): Load some functions from gobject library.
6574
6575 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6576
6577 * frame.c (make_terminal_frame): Remove redundant code and useless
6578 block.
6579
6580 2009-01-01 Andreas Schwab <schwab@suse.de>
6581
6582 * process.c (conv_sockaddr_to_lisp): Add workaround for
6583 getsockname bug on BSD.
6584
6585 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
6586
6587 * xfns.c (x_create_tip_frame): Set border width of the X window.
6588
6589 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
6590
6591 2009-01-01 Jason Rumney <jasonr@gnu.org>
6592
6593 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
6594 Don't block input, as per earlier xterm.c changes.
6595
6596 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6597
6598 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6599 (ns_appkit_version_int): New function.
6600 (x-server-version): Use ns_appkit_version_int and follow 21+
6601 convention of returning 3 integers.
6602
6603 2008-12-30 Kenichi Handa <handa@m17n.org>
6604
6605 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6606 (CHAR_SURROGATE_PAIR_P): New macro.
6607
6608 * font.h (struct font_driver): New member get_variation_glyphs.
6609
6610 * font.c (font_range): Don't require a font for a variation selector.
6611 (Ffont_variation_glyphs): New function.
6612 (syms_of_font): Defsubr it.
6613
6614 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6615 ftfont_variation_glyphs.
6616 (setup_otf_gstring): New function.
6617 (ftfont_drive_otf): Use it.
6618 (ftfont_shape_by_flt): Handle variation selector.
6619 (ftfont_variation_glyphs): New function.
6620
6621 2008-12-30 Martin Rudalics <rudalics@gmx.at>
6622
6623 * frame.c (Vemacs_iconified): Remove.
6624
6625 2008-12-30 Jason Rumney <jasonr@gnu.org>
6626
6627 * frame.c (store_frame_param, x_get_arg): Enable newer code on
6628 WINDOWSNT too, as related changes have already been synced. (Bug#117)
6629
6630 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
6631
6632 * indent.c (Fvertical_motion): Don't advance iterator if we have
6633 reseated to the desired position.
6634
6635 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6636 checking for pos match.
6637
6638 2008-12-30 Kenichi Handa <handa@m17n.org>
6639
6640 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6641 just get the low 8-bit of the code.
6642
6643 * font.c (font_intern_prop): Validate str as multibyte.
6644
6645 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6646
6647 * dispextern.h (struct face): Move lface and hash from the middle
6648 of bitfields.
6649
6650 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6651
6652 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6653
6654 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6655 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6656 instead of intervals.h.
6657
6658 2008-12-26 Andreas Schwab <schwab@suse.de>
6659
6660 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6661 cons.
6662
6663 2008-12-26 Martin Rudalics <rudalics@gmx.at>
6664
6665 * textprop.c (Qminibuffer_prompt): New variable.
6666 (syms_of_textprop): Initialize it.
6667 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6668 in minibuffer-prompt face. (Bug#1662)
6669
6670 2008-12-25 Jason Rumney <jasonr@gnu.org>
6671
6672 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6673
6674 2008-12-24 Jason Rumney <jasonr@gnu.org>
6675
6676 * ralloc.c (r_alloc_reset_variable): New function.
6677
6678 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
6679 record of what points where. (Bug#716)
6680
6681 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6682
6683 * minibuf.c (read_minibuf): Follow the non-interactive case when
6684 running as a daemon, before detaching.
6685
6686 2008-12-22 Andreas Schwab <schwab@suse.de>
6687
6688 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6689 * gtkutil.c (free_widget_value): Use xfree instead of free.
6690
6691 2008-12-22 Martin Rudalics <rudalics@gmx.at>
6692
6693 * frame.c (delete_frame): New function derived from
6694 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6695 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6696 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6697 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6698 * frame.h: Extern delete_frame.
6699 * window.c (window_loop):
6700 * terminal.c (delete_terminal):
6701 * xterm.c (x_connection_closed):
6702 * xfns.c (Fx_hide_tip):
6703 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
6704
6705 2008-12-21 Jason Rumney <jasonr@gnu.org>
6706
6707 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6708 when character maps to .notdef character.
6709
6710 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6711
6712 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6713
6714 2008-12-20 Jason Rumney <jasonr@gnu.org>
6715
6716 * frame.c (Fmake_terminal_frame): Raise an error when called from
6717 a graphical frame on Windows. (Bug#1325)
6718
6719 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6720
6721 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6722
6723 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
6724
6725 * minibuf.c (Fread_buffer): Doc fix.
6726
6727 2008-12-20 Jason Rumney <jasonr@gnu.org>
6728
6729 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
6730 server name in UNC paths. (Bug#719)
6731
6732 * coding.c (decode_coding): Clear chars_at_source flag when using
6733 charbuf. (Bug#1035)
6734
6735 2008-12-19 Daniel Engeler <engeler@gmail.com>
6736
6737 * sysdep.c (serial_configure): Fix typo.
6738
6739 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6740
6741 * sysdep.c: Include alloca.h.
6742 (system_process_attributes): Add implementation for Solaris.
6743
6744 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
6745
6746 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6747
6748 Reorganize implementation of Flist_system_processes and
6749 Fsystem_process_attributes. No functional changes.
6750 * process.c: Don't #include pwd.h, grp.h and limits.h.
6751 (Flist_system_processes): Just call list_system_processes.
6752 (Fsystem_process_attributes): Just call system_process_attributes.
6753 (procfs_list_system_processes, time_from_jiffies)
6754 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6755 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6756
6757 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6758 (list_system_processes): Rename from
6759 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6760 Provide a do nothing implementation.
6761 (system_process_attributes): Rename from
6762 procfs_list_system_processes.
6763 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6764 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
6765
6766 * w32.c (list_system_processes): Rename from
6767 w32_list_system_processes.
6768 (system_process_attributes): Rename from
6769 w32_system_process_attributes.
6770
6771 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6772
6773 * process.h (w32_list_system_processes)
6774 (w32_system_process_attributes): Remove.
6775 (list_system_processes, system_process_attributes):
6776 New prototypes.
6777
6778 2008-12-19 Kenichi Handa <handa@m17n.org>
6779
6780 * xfont.c (xfont_decode_coding_xlfd): New function.
6781 (xfont_encode_coding_xlfd): New function.
6782 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6783 (xfont_list): Decode and encode XLFD by iso-8859-1.
6784 (xfont_match): Likewise.
6785 (xfont_list_family): Likewise.
6786 (xfont_open): Likewise.
6787
6788 * ftfont.c (ftfont_open): Generate a multibyte string if given
6789 names are utf-8.
6790
6791 * xftfont.c (xftfont_open): Generate a multibyte string if given
6792 names are utf-8.
6793
6794 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6795
6796 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6797 changed.
6798 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6799 clicked on a detached tool bar button.
6800
6801 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6802
6803 * emacs.c (main): Print and error and exit when no data is read
6804 from the pipe.
6805
6806 2008-12-17 Jason Rumney <jasonr@gnu.org>
6807
6808 * w32font.c (w32font_has_char): Always return -1.
6809
6810 2008-12-16 Kenichi Handa <handa@m17n.org>
6811
6812 * font.c (font_open_entity): Fix previous change.
6813
6814 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6815
6816 * process.c: Include <limits.h>.
6817
6818 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
6819
6820 * font.c (font_update_drivers): Fix mistake in reconstructing the
6821 driver list.
6822
6823 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
6824
6825 * font.c (font_clear_cache): Fix format of font cache data.
6826
6827 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
6828
6829 * xftfont.c (xftfont_open): Free Xft font pattern if
6830 XftFontOpenPattern fails.
6831
6832 * xterm.c (x_free_frame_resources): Remove extraneous call to
6833 free_frame_faces.
6834
6835 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6836
6837 * xterm.c (x_delete_display): Move xim_close_dpy call to
6838 x_delete_terminal.
6839 (x_delete_terminal): Call xim_close_dpy.
6840
6841 2008-12-13 Jason Rumney <jasonr@gnu.org>
6842
6843 * w32font.c (intern_font_name): New function.
6844 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
6845 (w32font_open_internal, Fx_select_font): Decode font name.
6846 (fill_in_logfont, list_all_matching_fonts): Encode font name.
6847
6848 * w32font.h (intern_font_name): Declare new function.
6849
6850 * w32uniscribe.c (add_opentype_font_name_to_list):
6851 Use intern_font_name.
6852
6853 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6854
6855 * frame.c (Fdelete_frame): Call free_font_driver_list.
6856
6857 * font.c (free_font_driver_list): Implement missing function.
6858
6859 * w32term.c (w32_term_init): Don't initialize the image cache
6860 here; it will be done in init_frame_faces.
6861
6862 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
6863 (struct x_display_info): Remove unused member null_pixel. New
6864 member xim_callback_data.
6865
6866 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
6867 (xim_initialize): Save pointer to callback function data.
6868 (xim_close_dpy): Free callback function data. Call XCloseIM,
6869 reverting 2008-11-04 change by David Smith.
6870 (x_term_init): Don't initialize the image cache here; it will be
6871 done in init_frame_faces. Remove ancient "null_pixel" cruft.
6872 (x_delete_display): Free x_dnd_atoms member.
6873
6874 2008-12-13 Kenichi Handa <handa@m17n.org>
6875
6876 * font.c (font_rescale_ratio): Moved from xfaces.c.
6877 Argument type changed. Handle a font-spec too.
6878 (font_score): Check Vface_font_rescale_alist.
6879 (font_open_entity): Likewise. (Bug#1547)
6880
6881 * xfaces.c (font_rescale_ratio): Moved to font.c.
6882
6883 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
6884
6885 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
6886
6887 2008-12-12 Jason Rumney <jasonr@gnu.org>
6888
6889 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
6890 Vwindow_system_version to the real w32 major version.
6891
6892 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
6893
6894 * term.c (init_tty): Move setting the terminal name before the
6895 potential user: maybe_fatal.
6896
6897 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
6898
6899 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
6900 all callers changed. Call free_frame_faces to free the face cache.
6901
6902 2008-12-11 Jason Rumney <jasonr@gnu.org>
6903
6904 * w32font.c (fill_in_logfont): Don't assume symbol script means
6905 SYMBOL_CHARSET. (Bug#547)
6906
6907 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
6908 size for surrogates. (Bug#1096, bug#872)
6909
6910 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
6911
6912 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
6913
6914 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
6915
6916 * process.c (Fsystem_process_attributes, syms_of_process):
6917 Fix typo in name of Ssystem_process_attributes.
6918 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
6919
6920 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
6921
6922 * syntax.c (Fmodify_syntax_entry): Doc fix.
6923
6924 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
6925
6926 * font.c (Ffont_spec): Move usage to end of docstring.
6927
6928 2008-12-10 Jason Rumney <jasonr@gnu.org>
6929
6930 * w32font.c (Qcham): New symbol.
6931 (font_supported_scripts): Add cham, and comments for other new
6932 scripts in bitfield from OpenType spec.
6933 (add_font_entity_to_list): Limit unicode-sip fonts to those that
6934 contain characters beyond the bmp.
6935
6936 2008-12-10 Kenichi Handa <handa@m17n.org>
6937
6938 * ftfont.c (fc_charset_table): Add "unicode-sip".
6939 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
6940 Qunicode_sip.
6941
6942 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
6943
6944 * coding.c (QCdefault_char): Rename from QCdefalut_char.
6945 (Fcoding_system_put): Use QCdefault_char.
6946 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
6947
6948 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
6949
6950 * xftfont.c (syms_of_xftfont): Fix typo.
6951
6952 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
6953
6954 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
6955
6956 * emacs.c (main): Close daemon_pipe on exec.
6957
6958 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
6959
6960 * termchar.h (struct tty): New members termcap_term_buffer and
6961 termcap_strings_buffer.
6962
6963 * term.c (encode_terminal_code): Free any previous memory blocks
6964 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
6965 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
6966 All callers changed.
6967 (init_tty): Store termcap data and string buffers in new struct
6968 tty members termcap_term_buffer and termcap_strings_buffer.
6969 (delete_tty): Free them.
6970 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
6971
6972 2008-12-07 Seiji Zenitani <zenitani@mac.com>
6973
6974 * nsfns.m (ns_set_background_color): Remove code duplication.
6975 It was a substitute for face-transparency on OS X 10.3.
6976
6977 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
6978
6979 * coding.c (make_conversion_work_buffer): Disable buffer
6980 modification hooks in the work buffer.
6981
6982 2008-12-05 Eli Zaretskii <eliz@gnu.org>
6983
6984 * process.c (procfs_system_process_attributes): If `nread' has a
6985 negative value, assign zero to it.
6986
6987 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
6988
6989 * eval.c (Vdebug_on_error): Doc fix.
6990
6991 2008-12-05 Kenichi Handa <handa@m17n.org>
6992
6993 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
6994 second character is a combining character.
6995
6996 2008-12-05 Eli Zaretskii <eliz@gnu.org>
6997
6998 * process.c (procfs_system_process_attributes): Don't use cmd,
6999 cmdsize, and q without initializing them first.
7000
7001 2008-12-04 Jason Rumney <jasonr@gnu.org>
7002
7003 * w32font.c (w32font_draw): Initialize orig_clip before getting
7004 it, and delete it when finished.
7005
7006 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7007
7008 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7009 case when running as a daemon before detaching.
7010
7011 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
7012
7013 * w32.c (init_environment): Don't unload library shell32.dll.
7014
7015 2008-12-03 Kenichi Handa <handa@m17n.org>
7016
7017 * font.c (font_at): Set `multibyte' at first.
7018
7019 * coding.c (decode_coding_charset): Check type of an element of
7020 vector VALIDS.
7021 (encode_coding_emacs_mule): Be sure to set `code'.
7022
7023 * fontset.c (face_for_char): Handle invalid charset property correctly.
7024 (font_for_char): Likewise.
7025
7026 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
7027
7028 * font.c (Fopen_font): Compute pixel size correctly.
7029 (font_update_lface): Handle fonts with corrupted size specs,
7030 i.e. non-int and non-float.
7031
7032 * ftfont.c (ftfont_match): Initialize entity variable.
7033 (ftfont_resolve_generic_family): Avoid using uninitialized var.
7034 (ftfont_list_family): Initialize list var earlier.
7035
7036 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7037
7038 * xterm.c (x_draw_glyph_string): Fall back on
7039 underline_minimum_offset for underline position.
7040
7041 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7042
7043 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7044
7045 * character.c (c_string_width): Specify the type for LEN.
7046
7047 2008-12-03 Kenichi Handa <handa@m17n.org>
7048
7049 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
7050 (decode_coding_utf_8): Likewise.
7051 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
7052 (produce_chars): Initialize consumed_chars to 0.
7053
7054 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7055
7056 * keyboard.c (make_lispy_position): Only use PT if the selected
7057 window is current.
7058
7059 2008-12-02 Andreas Schwab <schwab@suse.de>
7060
7061 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7062
7063 * doprnt.c (doprnt1): Fix size of charbuf.
7064
7065 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7066
7067 * keyboard.c (timer_check): Revert last change.
7068
7069 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
7070
7071 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7072
7073 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
7074
7075 * makefile.w32-in: Update dependencies.
7076 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7077
7078 2008-12-01 Andreas Schwab <schwab@suse.de>
7079
7080 * font.c (register_font_driver): Use xmalloc.
7081 (font_put_frame_data): Likewise.
7082
7083 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
7084
7085 * xfaces.c (realize_x_face): Make abort condition clearer.
7086
7087 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7088
7089 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
7090
7091 * keyboard.c (timer_check): After a timer runs, ensure that the
7092 selected window's buffer is current.
7093
7094 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
7095
7096 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7097 It was accidentally restored by the Unicode merge.
7098
7099 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7100
7101 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
7102
7103 * w32proc.c: Include "coding.h".
7104 (Fw32_short_file_name): Encode filename passed to Windows API.
7105 (Fw32_long_file_name): Encode filename passed to Windows API and
7106 decode back the result. (Bug#1433)
7107
7108 2008-11-29 Kenichi Handa <handa@m17n.org>
7109
7110 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7111 not before accessing it.
7112
7113 * charset.c (Fdefine_charset_internal): After calculating
7114 min_char, max_char, and fastmap, copy the charset structure again.
7115 (encode_char): Fix the previous change.
7116
7117 2008-11-28 Seiji Zenitani <zenitani@mac.com>
7118
7119 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7120
7121 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7122
7123 * nsterm.m (x_set_frame_alpha): New function.
7124
7125 2008-11-27 Eli Zaretskii <eliz@gnu.org>
7126
7127 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7128
7129 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
7130
7131 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7132 pointer to check_face_name.
7133
7134 2008-11-27 Kenichi Handa <handa@m17n.org>
7135
7136 * category.h (SET_CATEGORY_SET): Call set_category_set.
7137 (set_category_set): Extern it.
7138
7139 * category.c (hash_get_category_set): New function.
7140 (Fmodify_category_entry): Adjusted for the change of
7141 char_table_ref_and_range. Call hash_get_category_set to get a
7142 category set to store in the table.
7143
7144 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7145 Funify_charset.
7146
7147 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
7148 (DECODE_CHAR): Check if the decoder vector is ready.
7149 (ENCODE_CHAR): Check if the encoder char-table is ready.
7150 (maybe_unify_char): Extern it.
7151
7152 * charset.c (Vchar_unified_charset_table): Delete it.
7153 (inhibit_load_charset_map): New variable.
7154 (temp_charset_work): New variable.
7155 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7156 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7157 New macros.
7158 (load_charset_map): Meaning of control_flag changed. If
7159 inhibit_load_charset_map is nonzero, setup a table in
7160 temp_charset_work.
7161 (load_charset): New argument control_flag.
7162 (map_charset_for_dump): New function.
7163 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7164 map_charset_for_dump.
7165 (Fdefine_charset_internal): If the charset method is MAP, load
7166 mapping tables by calling load_charset.
7167 (Funify_charset): Don't load a mapping table but directly set
7168 Vchar_unify_table.
7169 (maybe_unify_char): New function.
7170 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7171 Handle the case of inhibit_load_charset_map being nonzero.
7172 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7173 Handle the case of inhibit_load_charset_map being nonzero.
7174 (Fclear_charset_maps): Just free temp_charset_work.
7175 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7176 variable.
7177
7178 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7179 change of char_table_ref_and_range.
7180 (char_table_ref_and_range): Change the meaning of argument FROM
7181 and TO. Now the caller must provide initial values for *FROM
7182 and *TO.
7183
7184 * fontset.c (fontset_add): Adjusted for the change of
7185 char_table_ref_and_range.
7186 (fontset_get_font_group): Likewise.
7187 (Ffontset_info): Likewise.
7188
7189 * keymap.c (describe_vector): Adjusted for the change of
7190 char_table_ref_and_range. For char-table, put boundary between
7191 non-ASCII and 8-bit characters.
7192
7193 * print.c (print_object): For bool-vector, delete unnecessary
7194 check of ASCII_BYTE_P.
7195
7196 2008-11-26 Jason Rumney <jasonr@gnu.org>
7197
7198 * w32font.c (w32font_open_internal): Don't include external
7199 leading in font height. (Bug#879)
7200
7201 2008-11-26 Glenn Morris <rgm@gnu.org>
7202
7203 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7204 redefinition with ifdef. (Bug#1383)
7205
7206 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7207
7208 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7209
7210 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
7211
7212 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7213 New EmacsView methods.
7214 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7215 Fixes bug #1048,1357,1414.
7216
7217 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7218
7219 Fix bug #1362.
7220 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7221 is not an indexed color.
7222 * nsterm.m (free_indexed_color): Add argument checking.
7223 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7224
7225 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
7226
7227 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7228 Document confirm-after-completion value for
7229 minibuffer-completion-confirm.
7230
7231 2008-11-24 Jason Rumney <jasonr@gnu.org>
7232
7233 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7234 warning.
7235
7236 2008-11-23 Jason Rumney <jasonr@gnu.org>
7237
7238 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7239 restored before returning.
7240
7241 * w32font.c (check_face_name): New function.
7242 (add_font_entity_to_list): Use it to filter out common substituted
7243 fonts. (Bug#642)
7244
7245 2008-11-22 Martin Rudalics <rudalics@gmx.at>
7246
7247 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7248 confirm-nonexistent-file-or-buffer in doc-string.
7249
7250 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7251
7252 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7253 Fix copy/paste typo. Add checks.
7254
7255 2008-11-21 Kenichi Handa <handa@m17n.org>
7256
7257 * coding.c (detect_coding_iso_2022): Reject invalid composition
7258 sequence.
7259 (DECODE_COMPOSITION_START): If the current source is the last
7260 block, and the current composition doesn't end, regard this
7261 sequence as invalid.
7262 (decode_coding_iso_2022): Handle invalid composition sequence.
7263
7264 2008-11-20 Martin Rudalics <rudalics@gmx.at>
7265
7266 * window.c (coordinates_in_window): Don't return
7267 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7268 line when the window is not the rightmost one. (Bug#1372)
7269
7270 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7271
7272 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7273
7274 2008-11-15 Eli Zaretskii <eliz@gnu.org>
7275
7276 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7277 and bright_bg if noninteractive is non-zero.
7278
7279 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7280
7281 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7282 x_draw_glyph_string_background.
7283
7284 * w32term.c (x_draw_glyph_string): Likewise.
7285
7286 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
7287
7288 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7289 the next glyph string once past the overhang width.
7290
7291 * nsterm.m (ns_draw_glyph_string): Likewise.
7292
7293 * w32term.c (x_draw_glyph_string): Likewise.
7294
7295 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7296
7297 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7298 double file close.
7299
7300 2008-11-14 Martin Rudalics <rudalics@gmx.at>
7301
7302 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7303 dedicated status of window before attempting to display another
7304 buffer in it.
7305
7306 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
7307
7308 * msdos.c (Fmsdos_long_file_names):
7309 (syms_of_msdos) <dos-unsupported-char-glyph>:
7310 * dosfns.c (Fint86): Fix typos in docstrings.
7311
7312 2008-11-14 Eli Zaretskii <eliz@gnu.org>
7313
7314 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7315
7316 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7317
7318 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7319
7320 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7321
7322 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7323
7324 * frame.h: Negative alpha means "don't touch".
7325
7326 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7327
7328 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7329
7330 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7331
7332 * hftctl.c:
7333 * chpdef.h:
7334 * acldef.h: Remove files used only for systems no longer supported.
7335
7336 * Makefile.in: Fix .o alphabetical ordering.
7337 (hftctl.o): Remove dependency, file removed.
7338 (keymap.o, print.o): Depend on charset.h.
7339
7340 2008-11-10 Kenichi Handa <handa@m17n.org>
7341
7342 * character.c (Fget_byte): Fix and make it faster for unibyte target.
7343
7344 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
7345
7346 * dired.c (file_name_completion): If completion_ignore_case is
7347 enabled, ignore case when checking completion-regexp-list.
7348
7349 2008-11-08 Eli Zaretskii <eliz@gnu.org>
7350
7351 * vm-limit.c (get_lim_data): Fix last change.
7352
7353 2008-11-08 Kenichi Handa <handa@m17n.org>
7354
7355 * character.c (Fget_byte): New function.
7356 (syms_of_character): Defsubr Fget_byte.
7357
7358 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
7359
7360 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7361 cursor position is valid after scrolling.
7362
7363 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
7364
7365 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7366
7367 2008-11-06 Glenn Morris <rgm@gnu.org>
7368
7369 * xterm.c (handle_one_xevent): Don't let popup menus cause
7370 mouse-autoselect-window related window switching. (Bug#1261)
7371
7372 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7373
7374 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7375
7376 2008-11-04 Andreas Schwab <schwab@suse.de>
7377
7378 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7379
7380 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
7381
7382 * xfns.c (Fx_wm_set_size_hint): New function.
7383
7384 2008-11-03 Martin Rudalics <rudalics@gmx.at>
7385
7386 * textprop.c (Fprevious_single_char_property_change): Return 0
7387 when there's no change in a string. (Bug#1301)
7388
7389 2008-11-02 Martin Rudalics <rudalics@gmx.at>
7390
7391 * frame.c (do_switch_frame): New argument NORECORD passed to
7392 Fselect_window.
7393 (Fselect_frame): New argument NORECORD passed to
7394 do_switch_frame.
7395 (Fset_frame_selected_window): New argument NORECORD passed to
7396 Fselect_frame.
7397 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7398 in call of do_switch_frame.
7399 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7400 Handle NORECORD argument in call of Fselect_frame.
7401 * lisp.h (do_switch_frame, Fselect_frame)
7402 (Fset_frame_selected_window): Adjust declarations.
7403 * window.c (select_frame_norecord): New function.
7404 (run_window_configuration_change_hook): Use it and call
7405 Fselect_frame with NORECORD set.
7406 (Fselect_window): Pass NORECORD to Fselect_frame.
7407 (Fset_window_configuration): Handle NORECORD argument in call of
7408 do_switch_frame.
7409 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7410 Fset_frame_selected_window.
7411 * keyboard.c (command_loop_1): Handle NORECORD in call of
7412 Fselect_frame (currently ifdefd).
7413
7414 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7415
7416 * emacs.c (USAGE2): Untabify.
7417
7418 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7419
7420 * composite.c (fill_gstring_header): Fix copy/paste typo.
7421
7422 2008-10-31 Martin Rudalics <rudalics@gmx.at>
7423
7424 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7425 (Fother_window): Rename argument and rewrite doc-string.
7426 (select_window_norecord): Fix return value. (Bug#1276)
7427
7428 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
7429
7430 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7431 new frames overriding foreground for tooltips. Based on similar patch
7432 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7433
7434 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
7435
7436 * emacs.c (Fdaemon_initialized): Initialize nfd.
7437
7438 2008-10-29 Martin Rudalics <rudalics@gmx.at>
7439
7440 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7441 (Fwindow_text_height): Clarify doc-strings.
7442 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7443 doc-string of window-scroll-functions.
7444
7445 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7446
7447 * category.c (syms_of_category): Fix typo in docstring.
7448
7449 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
7450
7451 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7452 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7453 Fix typos in docstrings.
7454
7455 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7456
7457 * emacs.c (daemon_pipe): Make non-static.
7458 (IS_DAEMON): Move definition ...
7459 * lisp.h (IS_DAEMON): ... here.
7460 (daemon_pipe): Declare.
7461 (is_daemon): Remove.
7462 * dispnew.c (init_display): Use IS_DAEMON.
7463
7464 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7465
7466 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7467 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7468
7469 * emacs.c (is_daemon): Remove.
7470 (main): Don't set is_daemon.
7471 (IS_DAEMON): New macro.
7472 (Fdaemonp, Fdaemon_initialized): Use it.
7473 (Fdaemon_initialized): Write a char into the pipe to make sure the
7474 parent exits.
7475 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7476
7477 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
7478
7479 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7480 over-sized glyph, draw it with the default glyph width.
7481
7482 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7483 glyph, draw it with the default glyph width.
7484
7485 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7486 glyph, draw it with the default glyph width.
7487
7488 * xdisp.c (try_scrolling): When computing the distance from the
7489 scroll margin to PT, try moving some distance past the window
7490 bottom before giving up.
7491
7492 2008-10-27 Martin Rudalics <rudalics@gmx.at>
7493
7494 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7495 (Fset_window_buffer): Explain in doc-string that a window can be
7496 "strongly" dedicated to its buffer.
7497
7498 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7499
7500 * emacs.c (daemon_name): New variable.
7501 (main): Deal with --daemon=SERVER_NAME.
7502 (Fdaemonp): Return a name if one was passed to --daemon.
7503
7504 2008-10-26 Romain Francoise <romain@orebokech.com>
7505
7506 * emacs.c (daemon_pipe): New variable.
7507 (main): Create a pipe before forking, make the parent exit only after
7508 the child has closed its end of the pipe. Move closing the
7509 descriptors ...
7510 (Fdaemon_initialized): ... here. New function.
7511
7512 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7513
7514 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7515 the previous unoptimized table.
7516
7517 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7518 the distinction between non-nil and non-t value of `dedicated'.
7519
7520 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
7521
7522 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
7523 read_char_minibuf_menu_text is large enough to hold the menu string.
7524
7525 2008-10-25 Martin Rudalics <rudalics@gmx.at>
7526
7527 * window.c (Fget_buffer_window, Fdelete_windows_on)
7528 (Freplace_buffer_in_windows): Make buffer argument optional and
7529 rename to buffer_or_name.
7530
7531 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
7532
7533 * xdisp.c (handle_single_display_spec, handle_display_prop):
7534 Undo 2005-05-16 change.
7535 (handle_stop): Pop iterator if it's loaded with an empty string.
7536 (get_overlay_strings_1): Don't save iterator if it's loaded with
7537 an empty string (bug#1201).
7538
7539 2008-10-24 Kenichi Handa <handa@m17n.org>
7540
7541 * ftfont.c (ftfont_otf_features): Fix previous change.
7542 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7543 calling ftfont_otf_features.
7544
7545 2008-10-24 Kenichi Handa <handa@m17n.org>
7546
7547 * font.c (font_match_p): Fix for the case that a vector of
7548 characters is in script-representative-chars.
7549
7550 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
7551
7552 * dbusbind.c (xd_in_read_queued_messages): New variable.
7553 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
7554 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7555 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
7556 macro. (Bug#1186)
7557
7558 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
7559
7560 * s/sol2-10.h: New file.
7561
7562 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7563
7564 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7565 poor beast has survived 9+ years and the jump from xterm.c!).
7566
7567 2008-10-23 Martin Rudalics <rudalics@gmx.at>
7568
7569 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7570 Reword doc-string.
7571 (Fbury_buffer): In doc-string say what happens to the buffer's window.
7572
7573 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7574
7575 * character.c (syms_of_character) <script-representative-chars>:
7576 <unicode-category-table>: Doc fixes.
7577
7578 2008-10-23 Noah Friedman <friedman@splode.com>
7579
7580 * coding.c (make_conversion_work_buffer): Check that
7581 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7582 Fget_buffer_create.
7583
7584 2008-10-23 Kenichi Handa <handa@m17n.org>
7585
7586 * font.c (font_add_log): Check the values of extra properties.
7587
7588 2008-10-22 Martin Rudalics <rudalics@gmx.at>
7589
7590 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7591 Reword doc-string.
7592 (Fset_window_parameter): Use NILP.
7593 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
7594 (Frecenter): Use "selected" instead of "current" window in doc-strings.
7595
7596 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7597
7598 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7599
7600 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7601
7602 * nsfns.m (ns_appkit_version): New function.
7603 (x-server-version): Use it.
7604 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7605 (x-server-vendor): Don't check_ns().
7606
7607 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7608
7609 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7610
7611 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7612 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7613
7614 2008-10-22 Kenichi Handa <handa@m17n.org>
7615
7616 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7617 scripts.
7618
7619 * category.c (word_boundary_p): Check scripts instead of charset.
7620 Handle nil value in word-separating-categories and
7621 word-combining-categories.
7622 (syms_of_category): Fix docstrings of word-separating-categories
7623 and word-combining-categories.
7624
7625 2008-10-21 Eli Zaretskii <eliz@gnu.org>
7626
7627 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7628 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7629
7630 2008-10-21 Martin Rudalics <rudalics@gmx.at>
7631
7632 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7633 Rename arg "buffer" to "buffer_or_name".
7634 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7635 it optional.
7636 (no_switch_window): Remove since the return value is not used.
7637 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
7638 Consider window as dedicated when Fwindow_dedicated_p returns a
7639 non-nil value.
7640 * lisp.h: Remove prototype for no_switch_window.
7641
7642 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7643
7644 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
7645 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
7646
7647 2008-10-21 Kenichi Handa <handa@m17n.org>
7648
7649 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7650 check Vlatin_extra_code_table.
7651
7652 2008-10-20 Eli Zaretskii <eliz@gnu.org>
7653
7654 * fileio.c (Fset_file_modes): Doc fix.
7655
7656 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
7657
7658 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7659 in arrays.
7660
7661 2008-10-19 Martin Rudalics <rudalics@gmx.at>
7662
7663 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7664 Mention kill-buffer in doc-string.
7665 (Fset_window_buffer): Reinsert tem check removed in last commit.
7666 (Fenlarge_window, Fshrink_window): Have argument names and
7667 doc-string follow Elisp manual more closely.
7668
7669 2008-10-18 Eli Zaretskii <eliz@gnu.org>
7670
7671 * fileio.c (Fset_file_modes): Doc fix.
7672
7673 2008-10-18 Martin Rudalics <rudalics@gmx.at>
7674
7675 * window.c (Fwindow_width, Fset_window_start)
7676 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
7677 (Fdelete_windows_on, Freplace_buffer_in_windows):
7678 Make doc-strings follow code and Elisp manual more closely.
7679 (Fwindow_dedicated_p): Make window argument optional.
7680 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7681 (Fset_window_buffer): Respect any non-nil dedicated value for
7682 window. Rename "buffer" argument to "buffer_or_name".
7683
7684 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
7685
7686 * m/sh3.h: New file, machine description for SuperH.
7687
7688 2008-10-17 Martin Rudalics <rudalics@gmx.at>
7689
7690 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7691
7692 2008-10-17 Kenichi Handa <handa@m17n.org>
7693
7694 * ftfont.c (ftfont_otf_features): Fix indexing
7695 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7696
7697 2008-10-16 Magnus Henoch <mange@freemail.hu>
7698
7699 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7700 (Fdbus_call_method_asynchronously): Ditto.
7701 This change makes C-h f display the argument list.
7702
7703 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
7704
7705 * fileio.c (Fexpand_file_name): Doc fix.
7706
7707 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7708 of :foreground and :background equivalent to unspecified (20.x
7709 compatibility).
7710
7711 2008-10-15 Eli Zaretskii <eliz@gnu.org>
7712
7713 * buffer.c (syms_of_buffer): Doc fix.
7714
7715 2008-10-14 Kenichi Handa <handa@m17n.org>
7716
7717 * font.c (font_clear_prop): When clearing font width, clear the
7718 average width field too.
7719
7720 2008-10-12 Andreas Schwab <schwab@suse.de>
7721
7722 * ftfont.c (ftfont_shape_by_flt): Make static.
7723 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7724
7725 * font.c: Don't include <m17n-flt.h>.
7726
7727 2008-10-10 Eli Zaretskii <eliz@gnu.org>
7728
7729 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7730
7731 2008-10-09 Eli Zaretskii <eliz@gnu.org>
7732
7733 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7734 away code.
7735
7736 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
7737
7738 * dispnew.c (update_text_area): Avoid looping due to large glyph
7739 overhangs (bug#1070).
7740
7741 2008-10-09 Kenichi Handa <handa@m17n.org>
7742
7743 * fontset.c (face_for_char): If face->fontset is negative, just
7744 return ascii_face.
7745
7746 * font.c (font_delete_unmatched): Fix previous change.
7747 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
7748
7749 2008-10-09 Martin Rudalics <rudalics@gmx.at>
7750
7751 * frame.c (Fraise_frame): On text-only terminals select frame in
7752 order to make it visible. (Bug#1061)
7753
7754 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
7755
7756 * fontset.c (fontset_find_font): Check frame validity.
7757
7758 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
7759
7760 * gtkutil.c (xg_display_open): Reset default display if none exists.
7761 (xg_display_close): Allow Emacs to close all displays (bug#985).
7762
7763 2008-10-06 Andreas Schwab <schwab@suse.de>
7764
7765 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
7766
7767 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
7768
7769 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
7770
7771 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
7772
7773 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7774 during initialization.
7775
7776 2008-10-04 Eli Zaretskii <eliz@gnu.org>
7777
7778 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7779 whole thing on MSDOS frames as well as on a TTY.
7780
7781 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7782 well as for TTY.
7783 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7784 well as on a TTY.
7785
7786 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7787 as well as for TTY.
7788
7789 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7790
7791 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7792 MSDOS frames as well.
7793
7794 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7795
7796 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7797 correct arguments.
7798 * menu.c (find_and_return_menu_selection): Add cast.
7799
7800 2008-10-03 Glenn Morris <rgm@gnu.org>
7801
7802 * emacs.c (USAGE1): Add --daemon.
7803
7804 2008-10-02 Eli Zaretskii <eliz@gnu.org>
7805
7806 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7807 100, so it's in percents as advertised.
7808
7809 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7810
7811 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7812 (ns_output.current_cursor, ns_output.desired_cursor)
7813 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7814 (FRAME_NEW_CURSOR_COLOR): Remove.
7815
7816 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
7817 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
7818 enumeration (HOLLOW_BOX_CURSOR, etc.).
7819
7820 * nsterm.m (ns_frame_rehighlight): Remove commented code.
7821 (draw_window_cursor): Simplify code.
7822 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
7823 Don't change cursor type. In latter, call rehighlight instead of doing
7824 updates manually.
7825 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
7826 Use core Emacs cursor types.
7827
7828 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
7829
7830 2008-10-02 Martin Rudalics <rudalics@gmx.at>
7831
7832 * process.c (Faccept_process_output): Fix doc-string.
7833
7834 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
7835
7836 * gmalloc.c (__sbrk): Also define for uClibc.
7837
7838 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
7839 for uClibc.
7840
7841 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7842
7843 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
7844 styles.
7845 (nsfont_open): Reenable the cache.
7846
7847 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
7848
7849 * font.c (font_matching_entity): Reflect ATTRS in font selection.
7850 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
7851
7852 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
7853
7854 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
7855 a suspended terminal.
7856
7857 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
7858
7859 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
7860
7861 2008-09-30 Eli Zaretskii <eliz@gnu.org>
7862
7863 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
7864
7865 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
7866
7867 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
7868 in a continued line coincides with a line beginning.
7869
7870 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
7871
7872 * nsfont.m (nsfont_trait_distance): Fix bug.
7873 (nsfont_list): Return a list rather than a vector (syncs with Handa
7874 changes of 2008-05-14).
7875 (nsfont_open): Improve logging.
7876
7877 2008-09-29 Andreas Schwab <schwab@suse.de>
7878
7879 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
7880
7881 2008-09-28 Martin Rudalics <rudalics@gmx.at>
7882
7883 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
7884 name as char-resolve-modifiers.
7885 Reported by: Markus Triska <markus.triska@gmx.at>
7886
7887 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
7888
7889 * dispnew.c (init_display): Return earlier when running as a daemon.
7890
7891 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
7892
7893 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
7894
7895 2008-09-27 Eli Zaretskii <eliz@gnu.org>
7896
7897 * composite.c (Fcomposition_get_gstring)
7898 (Fcompose_region_internal, Fcompose_string_internal)
7899 (Ffind_composition_internal): Doc fix.
7900 (syms_of_composite) <compose-chars-after-function>: Doc fix.
7901 (syms_of_composite) <auto-composition-function>: Doc fix.
7902 (syms_of_composite) <composition-function-table>: Doc fix.
7903
7904 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
7905
7906 * search.c (wordify): New argument for lax word-ends.
7907 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
7908
7909 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
7910
7911 * lisp.h (is_daemon): Declare.
7912 * dispnew.c (init_display): Do not try to initialize the terminal
7913 when running as a daemon.
7914
7915 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
7916
7917 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
7918 x_display_pixel_height.
7919
7920 2008-09-22 Martin Rudalics <rudalics@gmx.at>
7921
7922 * undo.c (record_point): Don't call Fundo_boundary for first
7923 change. (Bug#731)
7924
7925 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
7926
7927 * emacs.c (Fdaemonp): Doc fix.
7928
7929 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
7930
7931 * emacs.c (main): Place #ifdef in the proper place.
7932
7933 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
7934
7935 * emacs.c (standard_args): Add --daemon.
7936 (main): Disconnect from the terminal when --daemon is passed.
7937 (is_daemon): New variable.
7938 (Fdaemonp): New function.
7939 (syms_of_emacs): Defsubr it.
7940
7941 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
7942
7943 * xdisp.c (get_next_display_element): Handle string display
7944 correctly when checking for the end of a box run.
7945
7946 2008-09-20 Glenn Morris <rgm@gnu.org>
7947
7948 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
7949 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
7950 (Frename_file): Avoid copying to trash if a rename involves
7951 a delete. (Bug#964).
7952
7953 2008-09-20 Eli Zaretskii <eliz@gnu.org>
7954
7955 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
7956 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
7957 frames as well as termcap frames.
7958 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
7959 get_named_tty.
7960
7961 2008-09-19 Eli Zaretskii <eliz@gnu.org>
7962
7963 * process.c (procfs_system_process_attributes): Fix cmdline in
7964 case /proc/PID/cmdline is empty.
7965
7966 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
7967 x_display_pixel_height.
7968
7969 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
7970
7971 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
7972
7973 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
7974 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
7975
7976 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
7977
7978 * dispextern.h (struct it): Move line_wrap away from the middle of
7979 bitfields. Move voffset in struct iterator_stack_entry after the
7980 bitfields. Move tab_width near after another short.
7981
7982 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
7983
7984 * frame.h (struct frame): Move alpha from the middle of bitfields.
7985
7986 * window.h (struct window): Move frozen_window_start_p after the
7987 rest of the bitfields to reduce padding.
7988
7989 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
7990
7991 * xterm.h (x_display_info): Remove `height' and `width' members.
7992
7993 * nsterm.h (ns_display_info): Remove `height' and `width' members.
7994
7995 * w32term.h (w32_display_info): Remove `height', `width',
7996 `height_in', and `width_in' members.
7997
7998 * xterm.c (x_display_pixel_height, x_display_pixel_width):
7999 New functions.
8000 (x_calc_absolute_position): Use them.
8001 (x_term_init): Omit removed `height' and `width' members.
8002
8003 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8004 New functions.
8005 (w32_read_socket, x_calc_absolute_position): Use them.
8006 (w32_initialize_display_info, w32_term_init): Omit removed members
8007 of w32_display_info.
8008
8009 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8010 New functions.
8011 (ns_initialize_display_info): Omit removed members of ns_display_info.
8012
8013 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8014 New functions.
8015 (x_calc_absolute_position): Use them.
8016 (x_term_init): Omit removed `height' and `width' members.
8017
8018 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8019 (compute_tip_xy):
8020 * frame.c (x_fullscreen_adjust):
8021 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8022 x_display_pixel_width.
8023
8024 2008-09-18 Kenichi Handa <handa@m17n.org>
8025
8026 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8027 (composition_compute_stop_pos): Fix handling of static composition.
8028 (Fcomposition_get_gstring): Check FROM and TO at first.
8029
8030 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8031
8032 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
8033 mixup (YAILOM).
8034
8035 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
8036
8037 * indent.c (Fvertical_motion): Use position reported by iterator
8038 instead of PT for determining screen motion (bug#943).
8039
8040 2008-09-17 Romain Francoise <romain@orebokech.com>
8041
8042 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8043
8044 2008-09-17 Kenichi Handa <handa@m17n.org>
8045
8046 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8047
8048 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8049 if necessary.
8050
8051 2008-09-16 Kenichi Handa <handa@m17n.org>
8052
8053 * coding.c (make_conversion_work_buffer): Avoid calling
8054 Fget_buffer_create if it is not necessary.
8055
8056 2008-09-15 Martin Rudalics <rudalics@gmx.at>
8057
8058 * window.c (Fselect_window): Don't update window_select_count and
8059 use_time when norecord is not nil.
8060
8061 2008-09-14 Kenichi Handa <handa@m17n.org>
8062
8063 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8064 specpdl_ptr.
8065
8066 2008-09-12 Kenichi Handa <handa@m17n.org>
8067
8068 * indent.c (scan_for_column): Don't handle automatic composition
8069 if the current buffer is not associated with a window.
8070
8071 * composite.c (composition_reseat_it): If the current buffer is
8072 not associated with a window, ignore the automatic composition.
8073 (find_automatic_composition): Likewise.
8074
8075 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8076
8077 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8078 (Fgpm_mouse_stop): Use it.
8079 * termhooks.h (close_gpm): Declare.
8080 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8081 connection if Gpm_GetEvent fails.
8082
8083 * window.c (set_window_buffer): Always preserve current-buffer.
8084
8085 2008-09-12 Glenn Morris <rgm@gnu.org>
8086
8087 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8088
8089 2008-09-11 Glenn Morris <rgm@gnu.org>
8090
8091 * charset.c (charset-map-path): Doc fix.
8092
8093 2008-09-10 Kenichi Handa <handa@m17n.org>
8094
8095 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8096
8097 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8098 compose a grapheme cluster with the preceding base glyph.
8099
8100 * composite.c (composition_compute_stop_pos): Fix previous change.
8101 Reset cmp_it->id to -1 at first.
8102
8103 2008-09-10 Glenn Morris <rgm@gnu.org>
8104
8105 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8106
8107 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
8108
8109 * keyboard.c (read_key_sequence): Reapply translation maps when
8110 switching keyboards.
8111
8112 2008-09-09 Kenichi Handa <handa@m17n.org>
8113
8114 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8115 characters.
8116
8117 * composite.c (FORWARD_CHAR): Fix calculation
8118 of (POSITION).pos_byte.
8119 (composition_compute_stop_pos): Limit the search of composition to
8120 at most 500 characters ahead. If we reach the limit or find a
8121 newline, set cmp_it->ch to -2 and return 0.
8122 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8123
8124 2008-09-08 Kenichi Handa <handa@m17n.org>
8125
8126 * indent.c (Fvertical_motion): Be sure to set
8127 it_overshoot_expected if it.cmp_it.id is non-negative.
8128
8129 2008-09-07 Andreas Schwab <schwab@suse.de>
8130
8131 * callproc.c (Fcall_process): Don't hold references to string data
8132 across garbage collection. Move initialisation of new_argv down
8133 to avoid compiler bug.
8134
8135 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8136
8137 * process.c (Fsystem_process_attributes): Doc fix.
8138
8139 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
8140
8141 * callproc.c (Fcall_process): Canonicalize current directory name.
8142
8143 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8144 iterator advances to the next line if the current line ends in a
8145 continued tab.
8146
8147 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8148
8149 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8150 member to point to cmp_from.
8151
8152 * xdisp.c: Doc fix for references to gidx data member.
8153
8154 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8155
8156 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8157
8158 2008-09-07 Kenichi Handa <handa@m17n.org>
8159
8160 * composite.c (FORWARD_CHAR): Check STOP after
8161 incrementing (POSITION).pos.
8162
8163 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8164
8165 * process.c (Fsystem_process_attributes): Doc fix.
8166
8167 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
8168
8169 * keyboard.c (Ftop_level): Doc fix.
8170
8171 2008-09-06 Eli Zaretskii <eliz@gnu.org>
8172
8173 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8174 minibuffer, don't let lower part of menu invade the echo area.
8175
8176 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8177 "char *q" to access menu text and advance through it. Revert the
8178 change that displayed ">" instead of ASCII character 0x10.
8179
8180 2008-09-05 Eli Zaretskii <eliz@gnu.org>
8181
8182 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8183 toggle boxes and radio buttons on MS-DOS as well.
8184
8185 2008-09-05 Kenichi Handa <handa@m17n.org>
8186
8187 * composite.c (autocmp_chars): Check lookback count.
8188 (composition_compute_stop_pos): Set cmp_it->lookback.
8189 (composition_reseat_it): Check lookback count.
8190 (struct position_record): New struct.
8191 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8192 (find_automatic_composition): New function.
8193 (composition_adjust_point): Use find_automatic_composition.
8194
8195 * dispextern.h (struct composition_it): New member lookback.
8196
8197 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
8198
8199 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8200 if moving by a single line.
8201
8202 2008-09-02 Andreas Schwab <schwab@suse.de>
8203
8204 * xterm.c (x_delete_display): Fix merge error.
8205
8206 * fileio.c (Fexpand_file_name): Remove unused variables.
8207
8208 2008-09-02 Eli Zaretskii <eliz@gnu.org>
8209
8210 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8211 storage on all platforms, not just on DOS_NT.
8212
8213 2008-09-02 Jason Rumney <jasonr@gnu.org>
8214
8215 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8216 Ensure mouse is not grabbed after menu is finished.
8217
8218 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
8219
8220 * xfaces.c (Finternal_set_alternative_font_family_alist)
8221 (Finternal_set_alternative_font_registry_alist): Properly copy
8222 entire alist structure.
8223
8224 2008-09-01 Kenichi Handa <handa@m17n.org>
8225
8226 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
8227 representative chars of the script is a vector.
8228 (ftfont_list): Handle the case where the representative chars of
8229 the script is a vector.
8230
8231 * character.c (syms_of_character): Docstring of
8232 script-representative-chars fixed.
8233
8234 2008-08-31 Eli Zaretskii <eliz@gnu.org>
8235
8236 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8237 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8238 the menu. Allocate larger buffer for `text', to account for
8239 possible ^C characters.
8240
8241 2008-08-31 Martin Rudalics <rudalics@gmx.at>
8242
8243 * xdisp.c (prepare_menu_bars): Don't call
8244 Vwindow_size_change_functions with arg Qt.
8245
8246 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8247
8248 * font.h (font_range):
8249 * fileio.c (report_file_error):
8250 * composite.c (composition_update_it): Yet another int/Lisp_Object
8251 mixup (YAILOM).
8252
8253 2008-08-30 Glenn Morris <rgm@gnu.org>
8254
8255 * data.c (Fmake_variable_frame_local): Doc fix.
8256
8257 * frame.c (Fmodify_frame_parameters): Doc fix.
8258
8259 2008-08-30 Eli Zaretskii <eliz@gnu.org>
8260
8261 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8262 needed by GetTokenInformation.
8263 (w32_system_process_attributes): Check return values of all system
8264 APIs.
8265
8266 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8267 only when the state changes.
8268 (IT_update_begin, IT_update_end): Add termscript trace.
8269
8270 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8271 clipboard is unavailable. Set dst to NULL if it doesn't point to
8272 malloc'ed data.
8273 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8274 passing random values to xfree.
8275
8276 * dispnew.c (init_display): Set `tty's association in frame's
8277 parameters alist to the name of the terminal device, if that is known.
8278
8279 2008-08-29 Jason Rumney <jasonr@gnu.org>
8280
8281 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8282
8283 2008-08-29 Eli Zaretskii <eliz@gnu.org>
8284
8285 * composite.c (fill_gstring_body): Avoid compiler warnings.
8286
8287 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8288 LGLYPH_SET_CODE to avoid compiler warnings.
8289
8290 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
8291
8292 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8293
8294 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8295 LGLYPH_SET_CODE.
8296
8297 2008-08-29 Kenichi Handa <handa@m17n.org>
8298
8299 * fileio.c (report_file_error): Don't downcase the first character
8300 of errstring if it is still unibyte.
8301
8302 2008-08-29 Kenichi Handa <handa@m17n.org>
8303
8304 These changes are to re-implement the automatic composition so
8305 that it doesn't use text properties.
8306
8307 * Makefile.in (ftfont.o): Depend on composite.h.
8308 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8309
8310 * character.h (Vunicode_category_table): Extern it.
8311
8312 * character.c (Vunicode_category_table): New variable.
8313 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8314
8315 * chartab.c (optimize_sub_char_table): Perform more greedy
8316 optimization.
8317
8318 * composite.h (enum composition_method):
8319 Delete COMPOSITION_WITH_GLYPH_STRING.
8320 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8321 (Vcomposition_function_table): Extern it.
8322 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8323 (composition_gstring_put_cache, composition_gstring_from_id)
8324 (composition_gstring_p, composition_gstring_width)
8325 (composition_compute_stop_pos, composition_reseat_it)
8326 (composition_update_it, composition_adjust_point): Extern them.
8327 (Fcomposition_get_gstring): EXFUN it.
8328
8329 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
8330 (Vcomposition_function_table)
8331 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
8332 (gstring_hash_table, gstring_work, gstring_work_headers):
8333 New variables.
8334 (gstring_lookup_cache, composition_gstring_put_cache)
8335 (composition_gstring_from_id, composition_gstring_p)
8336 (composition_gstring_width, fill_gstring_header)
8337 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8338 (composition_reseat_it, composition_update_it)
8339 (composition_adjust_point, Fcomposition_get_gstring): New functions.
8340 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8341 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8342 Defsubr compostion_get_gstring.
8343
8344 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8345 cmp_id.
8346 (struct glyph_string): Delete the member gidx. New members
8347 cmp_id, cmp_from, and cmp_to.
8348 (enum it_method): Delete GET_FROM_COMPOSITION.
8349 (struct composition_it): New struct.
8350 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8351 Delete c, len, cmp_id, cmp_len in u.comp.
8352
8353 * font.h (enum lgstring_indices): Delete it.
8354 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
8355 (enum lglyph_indices): Likewise.
8356 (font_range): Adjust extern.
8357 (font_fill_lglyph_metrics): Extern it.
8358
8359 * font.c (QCf): New variable.
8360 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8361 (font_prepare_composition): Delete this function.
8362 (font_range): Type and arguments changed.
8363 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8364 (font_fill_lglyph_metrics): New function.
8365 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
8366 (syms_of_font): DEFSYM QCf. Delete defsubr for
8367 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8368 Defsubr Sfont_shape_gstring.
8369
8370 * fontset.h (font_for_char): Extern it.
8371
8372 * fontset.c (font_for_char): New function.
8373
8374 * ftfont.c: Include composite.h.
8375 (ftfont_resolve_generic_family): Add langset "en" to pattern.
8376 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8377
8378 * indent.c: Include composite.h and dispextern.h.
8379 (check_composition): Delete this function.
8380 (scan_for_column): Handle composition by
8381 composition_compute_stop_pos, composition_reseat_it, and
8382 composition_update_it.
8383 (compute_motion): Likewise.
8384 (Fvertical_motion): Fix checking of composition.
8385
8386 * keyboard.c (adjust_point_for_property): Check composition by
8387 composition_adjust_point.
8388
8389 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
8390 struct glyph_string.
8391
8392 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8393 (append_composite_glyph): Adjust for the change of struct it and
8394 struct glyph.
8395 (produce_composite_glyph): Likewise.
8396
8397 * w32term.c (x_draw_composite_glyph_string_foreground):
8398 Adjust for the change of struct glyph_string.
8399 (x_draw_glyph_string): Likewise.
8400
8401 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8402 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8403
8404 * xdisp.c: Include font.h.
8405 (it_props): Delete the entry for Qauto_composed.
8406 (init_iterator): Initialize it->cmp_it.id to -1.
8407 (compute_stop_pos): Call composition_compute_stop_pos.
8408 (face_before_or_after_it_pos): Adjust for the change of struct it.
8409 (handle_auto_composed_prop): Delete it.
8410 (handle_composition_prop): Handle only static composition.
8411 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8412 from xassert. Initialize it->cmp_it.stop_pos.
8413 (push_it): Adjust for the change of struct it.
8414 (pop_it): Likewise.
8415 (get_next_element): Delete next_element_from_composition.
8416 (CHAR_COMPOSED_P): New macro.
8417 (get_next_display_element): For automatic composition, get a face
8418 from the font in the glyph-string.
8419 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
8420 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
8421 (next_element_from_string): Check if the character at the current
8422 position is composed by CHAR_COMPOSED_P.
8423 (next_element_from_buffer): Likewise.
8424 (next_element_from_composition): Adjust for the change of struct it.
8425 Update it->cmp_it.
8426 (dump_glyph): Adjust for the change of struct glyph.
8427 (fill_composite_glyph_string): Adjust for the change of struct
8428 it and struct glyph. Don't handle automatic composition here.
8429 (fill_gstring_glyph_string): New function.
8430 (x_get_glyph_overhangs): Handle automatic composition.
8431 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
8432 (BUILD_GSTRING_GLYPH_STRING): New macro.
8433 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8434 automatic composition.
8435 (append_composite_glyph): Adjust for the change of struct it and
8436 struct glyph.
8437 (x_produce_glyphs): Adjust for the change of struct it.
8438
8439 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8440 the change of struct glyph_string.
8441 (x_draw_glyph_string): Likewise.
8442
8443 2008-08-29 Glenn Morris <rgm@gnu.org>
8444
8445 * buffer.c (word-wrap): Doc fix.
8446 * xdisp.c (truncate-partial-width-windows): Doc fix.
8447 Increase default to 50.
8448
8449 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
8450
8451 * xdisp.c (update_tool_bar_unwind): New function.
8452 (update_tool_bar): Temporarily set selected frame before building
8453 tool-bar items.
8454
8455 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
8456
8457 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8458 snprintf, respectively.
8459 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8460
8461 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
8462
8463 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8464 LDFLAGS to GNUstep CC invocation.
8465
8466 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
8467
8468 * indent.c (Fvertical_motion): Revert last change. Handle the
8469 general case where we are moving forward, and PT spans multiple
8470 screen lines.
8471
8472 * eval.c (find_handler_clause): Temporarily increase
8473 max-lisp-eval-depth while printing the backtrace buffer, to
8474 guarantee that help-mode code can run.
8475
8476 2008-08-27 Eli Zaretskii <eliz@gnu.org>
8477
8478 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8479 colors under -rv.
8480 (IT_set_frame_parameters): Don't swap foreground and background
8481 colors if `(reverse . t)' is present in the frame properties.
8482 (internal_terminal_init): Call init_frame_faces only for the
8483 initial frame.
8484
8485 2008-08-27 Andreas Schwab <schwab@suse.de>
8486
8487 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8488
8489 2008-08-27 Andreas Schwab <schwab@suse.de>
8490
8491 * search.c (search_buffer): Set char_base to zero only at the end.
8492
8493 2008-08-27 Kenichi Handa <handa@m17n.org>
8494
8495 * fileio.c (report_file_error): Fix handling of multibyte error string.
8496
8497 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8498
8499 * xterm.c (x_term_init): Temporarily hide the partially
8500 initialized terminal while calling vendor-specific-keysyms.
8501
8502 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8503
8504 * msdos.c (internal_terminal_init): Most initializations done only
8505 once, especially initial_screen_colors[] and termscript open.
8506
8507 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8508
8509 * eval.c (Fcondition_case): Doc fix.
8510
8511 * widgetprv.h (EmacsFramePart): Change font member to the new font
8512 struct.
8513
8514 * widget.c: Include character.h and font.h for XSETFONT.
8515 (setup_frame_gcs): Compute X font id from font struct, just once.
8516
8517 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8518
8519 * term.c (get_named_tty): Fix last change.
8520
8521 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8522
8523 * indent.c (Fvertical_motion): If moving forward starting from a
8524 multi-line string, move the iterator to the last line of that string.
8525
8526 2008-08-25 Eli Zaretskii <eliz@gnu.org>
8527
8528 * frame.c (do_switch_frame): Mark previously displayed frame as
8529 obscured for FRAME_MSDOS_P frames as well.
8530
8531 2008-08-24 Eli Zaretskii <eliz@gnu.org>
8532
8533 * frame.c (make_terminal_frame): Initialize f->terminal,
8534 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8535 Set the top frame to newly created frame.
8536 (Fmake_terminal_frame): Reuse the_only_display_info.
8537
8538 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8539 estimating available memory.
8540
8541 2008-08-23 David Reitter <david.reitter@gmail.com>
8542
8543 * nsterm.m (ns_draw_window_cursor): Don't call
8544 NSDisableScreenUpdates and NSEnableScreenUpdates on
8545 non-NS_IMPL_COCOA systems.
8546
8547 2008-08-23 Andreas Schwab <schwab@suse.de>
8548
8549 * process.c (procfs_system_process_attributes): Fix use of
8550 uninitialized variables.
8551
8552 2008-08-23 Eli Zaretskii <eliz@gnu.org>
8553
8554 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8555
8556 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8557 calling tty-set-up-initial-frame-faces.
8558
8559 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8560 Allow MSDOS frames along with X frames.
8561
8562 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8563 addition to output_termcap.
8564
8565 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8566
8567 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8568 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8569 highlight.
8570
8571 * process.c [!subprocesses]: Define QCname.
8572 (syms_of_process): Intern and staticpro it.
8573
8574 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
8575 Adjust for changes in encoding/decoding routines.
8576 Use encode_coding_object and decode_coding_object instead of
8577 encode_coding and decode_coding.
8578
8579 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
8580
8581 * dosfns.c: Include frame.h before termhooks.h.
8582 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8583 variable termscript.
8584
8585 * s/msdos.h (USER_FULL_NAME): Define.
8586 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8587
8588 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8589 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8590 pw->pw_gecos.
8591
8592 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8593 SELECTED_FRAME as additional (1st) argument.
8594 (tty_read_avail_input): Handle output_msdos_raw in
8595 addition to output_termcap.
8596
8597 * msdos.c: Include frame.h before termhooks.h.
8598 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8599 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8600 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8601 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8602 (IT_set_terminal_modes, IT_reset_terminal_modes)
8603 (IT_set_frame_parameters): Use tty->termscript instead of a global
8604 variable termscript.
8605 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8606 global variable terminal_coding. Don't refer to
8607 Vnonascii_translation_table.
8608 (internal_terminal_init): Set Vwindow_system in current_kboard.
8609 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8610 Announce date and time of session start, if termscript is open.
8611 Don't zero out the_only_display_info (it is done in
8612 term.c:init_tty). Open termscript only of not already open.
8613 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
8614 here instead of dos_ttraw. Don't initialize display if this is an
8615 initial tty. Don't set FRAME_FONT.
8616 (Vwindow_system_version): Bump to 23.
8617 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8618 is available, set up mouse_position_hook.
8619 (dos_ttraw, IT_set_terminal_modes): If called with initial
8620 terminal, do nothing.
8621 (IT_set_frame_parameters): Handle the Qtty_type frame
8622 parameter by calling internal_terminal_init.
8623 (dos_set_window_size, show_mouse_face)
8624 (clear_mouse_face, IT_note_mode_line_highlight)
8625 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8626 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8627 (initialize_msdos_display): New function.
8628 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8629 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8630 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8631 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
8632 Accept additional argument: a pointer to a frame. Update all callers.
8633 (request_sigio, unrequest_sigio): Don't define, now defined on
8634 sysdep.c.
8635 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8636
8637 * term.c [MSDOS]: Include msdos.h.
8638 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8639 conditional to DOS_NT. Allow only one call to this function in a
8640 session. Don't allocate a new struct tty_display_info; instead,
8641 reuse the_only_display_info. Call get_tty_size to get screen
8642 dimensions. Call init_baud_rate to set bad_rate.
8643 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8644 (Fsuspend_tty) [MSDOS]: Don't close input and output.
8645 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
8646 (get_tty_terminal, get_named_tty, Ftty_type)
8647 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8648 output_termcap.
8649 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8650 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
8651 only when subprocesses are supported.
8652
8653 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8654 f->output_data.x.
8655 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8656 terminal devices.
8657
8658 * msdos.h: Remove definition of struct x_display_info and struct
8659 x_output.
8660 (FRAME_FONT): Use output_data.tty.
8661 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
8662 (struct x_display_info): Rename from display_info. Update all users in
8663 msdos.c.
8664 (struct x_output): Remove background_pixel and foreground_pixel.
8665 (the_only_display_info): Rename from the_only_x_display.
8666 (dos_ttraw): Update prototype.
8667
8668 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8669 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8670
8671 2008-08-23 Jason Rumney <jasonr@gnu.org>
8672
8673 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8674 (fn_TIFFSetDirectory): New library function used.
8675 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8676 (tiff_load): Use :index to select among multiple images. Set count
8677 property when multiple images exist.
8678 (gif_format): Use :index, not :image.
8679
8680 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
8681
8682 * xdisp.c (try_scrolling): Check INT_MAX instead of
8683 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8684 to obtain INT_MAX.
8685
8686 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8687
8688 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8689
8690 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8691
8692 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8693 GNUstep library location.
8694
8695 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
8696
8697 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8698 before using it.
8699
8700 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8701
8702 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8703
8704 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8705 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8706 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8707 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8708 (EmacsApp-cursor_blink_handler): Remove declaration.
8709 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8710 match 01 Feb 2008 changes in xterm.c.
8711 (ns_read_socket): Add cast to avoid warning.
8712 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8713 GNUstep.
8714
8715 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
8716
8717 * xselect.c (x_get_foreign_selection): Return nil if desired
8718 selection could not be obtained, instead of signalling an error.
8719
8720 2008-08-20 David Reitter <david.reitter@gmail.com>
8721
8722 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8723 * nsterm.m: Remove ns-specific code for cursor blinking.
8724 (ns_draw_window_cursor): Clear cursor properly rather than
8725 redrawing the area. Respect width of bar cursors.
8726 These changes enable the use of generic blink-cursor-mode and
8727 generic cursor types in NS and support smooth cursor movements (do
8728 not blink off after command).
8729 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8730 Nextstep, too.
8731
8732 2008-08-19 Kenichi Handa <handa@m17n.org>
8733
8734 * font.c (Vfont_log_deferred): New variable.
8735 (font_add_log): Check Vfont_log_deferred.
8736 (font_deferred_log): New function.
8737
8738 * font.h (font_deferred_log): Extern it.
8739
8740 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8741 for sorting.
8742 (face_for_char): Use deferred log.
8743
8744 2008-08-18 Kenichi Handa <handa@m17n.org>
8745
8746 * fontset.c (face_for_char): Add font log.
8747
8748 * font.c (font_add_log): Add the font properties :script, :lang,
8749 and :otf in the log.
8750
8751 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
8752
8753 * xdisp.c: Remove dead code.
8754 (handle_invisible_prop, next_overlay_string): Defer call to
8755 setup_for_ellipsis.
8756 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8757
8758 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
8759
8760 * xfaces.c (lookup_derived_face): Properly handle possible zero
8761 return value of get_lface_attributes.
8762 (merge_faces): Don't tell lookup_derived_face to signal an error
8763 if face is not found.
8764
8765 * dired.c (Fdirectory_files): Doc fix.
8766
8767 * process.c (make_process): Initialize kill_without_query struct
8768 member.
8769
8770 2008-08-15 Eli Zaretskii <eliz@gnu.org>
8771
8772 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8773 Alternative calculation of totphys for Visual Studio 6.
8774
8775 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8776
8777 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8778 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8779 All users changed.
8780 (stat): Only root directory passed to GetDriveType. Allow RAM
8781 disk as well as local fixed disk when w32-get-true-file-attributes
8782 is set to `local'.
8783 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8784 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8785 (w32_cached_id, w32_add_to_cache): New functions.
8786 (get_name_and_id): Look account names in the cache before calling
8787 lookup_account_sid.
8788 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8789 New initialization flags.
8790 (globals_of_w32): Initialize them to zero.
8791 (w32_system_process_attributes): Use w32_cached_id and
8792 w32_add_to_cache.
8793
8794 2008-08-14 Lawrence Mitchell <wence@gmx.li>
8795
8796 * lread.c (Fread_char, Fread_char_exclusive): If no character
8797 event is read before timeout is reached, return nil, rather than
8798 converting to a number.
8799
8800 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
8801
8802 * fns.c (use_dialog_box): Doc fix.
8803
8804 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8805 on OS X.
8806
8807 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
8808
8809 * frame.c (Qns_parse_geometry): New var.
8810 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8811
8812 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
8813
8814 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8815 space character in calculating tabs.
8816
8817 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
8818
8819 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
8820
8821 2008-08-10 Glenn Morris <rgm@gnu.org>
8822
8823 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
8824 silence gcc "limited range of data type" warnings in some
8825 make_fixnum_or_float calls.
8826
8827 2008-08-09 Eli Zaretskii <eliz@gnu.org>
8828
8829 * w32.c (w32_system_process_attributes): If the process does not
8830 exist, return nil.
8831
8832 * w32.c: Include thelp32.h, psapi.h and coding.h.
8833 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
8834 declarations.
8835 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
8836 (Process32Next_Proc): New typedefs.
8837 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
8838 (g_b_init_process32_next, g_b_init_open_thread_token)
8839 (g_b_init_impersonate_self, g_b_init_revert_to_self)
8840 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
8841 (g_b_init_get_process_working_set_size)
8842 (g_b_init_global_memory_status_ex): New static variables.
8843 (globals_of_w32): Initialize them.
8844 (create_toolhelp32_snapshot, process32_first, process32_next)
8845 (open_thread_token, impersonate_self, revert_to_self)
8846 (get_process_memory_info, get_process_working_set_size)
8847 (global_memory_status, global_memory_status_ex): New wrapper
8848 functions.
8849 (w32_list_system_processes, w32_system_process_attributes)
8850 (enable_privilege, restore_privilege, ltime, process_times):
8851 New functions.
8852 (convert_time_raw): New function.
8853 (convert_time): Remove conversion of FILETIME into time in 100
8854 nsec units, call convert_time_raw instead.
8855
8856 * process.h (w32_list_system_processes, w32_system_process_attributes):
8857 Add prototypes.
8858 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
8859 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
8860 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
8861 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
8862
8863 * process.c (Fsystem_process_attributes): Doc fix.
8864
8865 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
8866
8867 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
8868 a continued multi-char glyph; if so, advance to the actual glyph.
8869
8870 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
8871
8872 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
8873
8874 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
8875 (.m.o): Use it.
8876 * config.in: Regenerate.
8877
8878 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
8879
8880 * xdisp.c (redisplay_window): Revert last change.
8881 (try_window): Check bottom scroll margin too.
8882
8883 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8884
8885 * config.in: Regenerate.
8886
8887 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
8888 -list-load-path-shadows'.
8889 (nsgui.h): Reduce number of things depending on it.
8890
8891 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
8892
8893 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
8894 instead of window-end which does the wrong thing at eob.
8895 (try_cursor_movement): Minor optimization.
8896 (redisplay_window): If scroll margin is defined, don't assume
8897 window doesn't need scrolling.
8898
8899 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
8900
8901 * config.in: Regenerate.
8902
8903 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
8904 (mostlyclean): Don't delete *.d under NS.
8905
8906 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
8907
8908 2008-08-06 Kenichi Handa <handa@m17n.org>
8909
8910 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
8911
8912 2008-08-06 Andreas Schwab <schwab@suse.de>
8913
8914 * config.in: Regenerate.
8915
8916 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
8917
8918 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
8919 forcing a window start.
8920
8921 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
8922 (auto_save_1): Update modtime when auto-save-list-file-name is on.
8923
8924 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8925
8926 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
8927 argument.
8928
8929 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
8930
8931 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
8932 <scroll-down-aggressively, before-change-functions>:
8933 <after-change-functions>: Reflow docstrings.
8934
8935 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8936 Ken Raeburn <raeburn@gnu.org>
8937
8938 Dock menu customization, based on a patch by Ken Raeburn, plus some
8939 other fixes.
8940 * nsmenu.m (dockMenu): New variable.
8941 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
8942
8943 * nsterm.h (dockMenu): Declare.
8944
8945 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
8946 (ns_term_init): Initialize dockMenu.
8947 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
8948 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
8949 left.
8950
8951 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
8952
8953 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
8954
8955 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
8956
8957 * config.in: Regenerate.
8958
8959 2008-08-04 Seiji Zenitani <zenitani@mac.com>
8960
8961 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
8962
8963 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
8964
8965 * nsterm.h (find_and_call_menu_selection): Fix prototype.
8966
8967 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
8968
8969 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
8970
8971 * keyboard.h: Comment an #endif.
8972
8973 * lisp.h (have_menus_p): Adjust comment.
8974
8975 * menu.c (find_and_return_menu_selection): Fix comparison with
8976 client_data.
8977
8978 * nsmenu.m (popup_activated_flag): New variable.
8979 (popup_activated): New function.
8980 (menu-or-popup-active-p): New exported lisp definition.
8981 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
8982 when popup done.
8983 (ns_popup_dialog): Set popup_activated_flag.
8984
8985 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
8986 version for GNUstep (handled by conditional typedef in nsterm.m).
8987 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
8988 in rgb.txt).
8989
8990 * process.c (init_process): Use DARWIN_OS, not DARWIN.
8991
8992 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
8993
8994 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
8995
8996 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
8997 shortcircuit if popup_activated like GTK and X toolkit.
8998
8999 * m/inter386.h: Change DARWIN to DARWIN_OS.
9000
9001 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9002 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9003 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9004 comment on NO_SOCK_SIGIO.
9005
9006 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
9007
9008 * nsterm.m (windowDidResize): Remove stopModal call.
9009
9010 2008-08-03 Andreas Schwab <schwab@suse.de>
9011
9012 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9013 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9014
9015 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
9016
9017 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9018 Don't use uninitialized pointer variable when using getrlimit.
9019
9020 2008-08-02 Jason Rumney <jasonr@gnu.org>
9021
9022 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9023
9024 2008-08-02 Eli Zaretskii <eliz@gnu.org>
9025
9026 * alloc.c (NSTATICS): Bump to 0x640.
9027
9028 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9029
9030 * lisp.h: Add prototype for directory_files_internal.
9031
9032 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9033 New functions.
9034 (syms_of_process): Defsubr them. Add initializations for various
9035 Q* symbols used in procfs_system_process_attributes.
9036 (procfs_list_system_processes, procfs_system_process_attributes)
9037 [HAVE_PROCFS]: New functions.
9038 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9039 (procfs_get_total_memory): New functions.
9040
9041 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9042
9043 * xfaces.c (Fx_load_color_file): Fix previous change;
9044 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9045
9046 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
9047
9048 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9049
9050 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9051
9052 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9053
9054 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
9055
9056 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9057
9058 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9059 define NSApplicationDelegateReplySuccess.
9060 (EmacsView -converstationIdentifier): Use long instead of
9061 NSInteger for GNUstep, since it doesn't have NSInteger.
9062
9063 * xmenu.c: Revert last change.
9064
9065 * keyboard.h: Fix last change.
9066
9067 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9068
9069 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9070 on Windows.
9071
9072 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9073
9074 Warning clearing and clean-up in NS port.
9075 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9076 Add prototypes.
9077 * nsgui.h (FACE_DEFAULT): Remove, unused.
9078 (XGCValues): Change colors to unsigned long.
9079 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9080 nsterm.m.
9081 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9082 (ns_list_fonts): Remove, unused.
9083 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9084 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9085 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9086 (nsfont_draw): Compare face colors to 0, not nil.
9087 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9088 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9089 (-addSubmenuWithTitle:): Use NSMenuItem class.
9090 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9091 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9092 (ns_clip_to_row): Make gc arg a BOOL.
9093 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9094 ns_clip_to_row() call.
9095 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9096 used). Cast FRAME_FONT assignments.
9097 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9098 (ns_string_to_lispmod): Change arg to const char.
9099 (ns_term_init): Use NSMenuItem class.
9100 (EmacsApp -openFile:): Move to different section of file.
9101 (EmacsApp -application:openFiles:): Don't return a value, call
9102 -replyToOpenOrPrint:.
9103 (EmacsView -keyDown:): Fix up cast.
9104 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9105 (EmacsView -menuDown:): Cast tag in call to
9106 find_and_call_menu_selection().
9107 (ns_list_fonts): Remove, unused.
9108 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9109 (ns_fontname_to_xlfd): Make static.
9110 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9111 Remove prototypes (now in keyboard.h).
9112 (next_menubar_widget_id): Remove, unused.
9113 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9114 Remove prototypes (now in keyboard.h).
9115 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9116
9117 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9118
9119 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9120 (floatfns.o): Depend on syssignal.h.
9121 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9122
9123 * systty.h: Fix previous change that removed BSD_TERMIOS.
9124 Add comments to #ifdefs.
9125
9126 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9127
9128 * w32fns.c (w32-load-color-file): Remove.
9129 (x-open-connection): Use renamed Fx_load_color_file.
9130 * xfaces.c (x-load-color-file): Add.
9131 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9132 Emacs.clr.
9133 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9134
9135 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
9136
9137 * dbusbind.c (Fdbus_call_method_asynchronously)
9138 (Fdbus_method_error_internal): New defuns.
9139 (xd_read_message): Handle also reply messages.
9140 (Vdbus_registered_functions_table): Extend docstring.
9141
9142 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
9143
9144 * keyboard.c (gobble_input): Fix previous change.
9145
9146 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9147
9148 * bitmaps/README:
9149 * xfns.c:
9150 * termcap.c:
9151 * term.c:
9152 * syswait.h:
9153 * systty.h:
9154 * systime.h:
9155 * syssignal.h:
9156 * sysdep.c:
9157 * process.h:
9158 * process.c:
9159 * print.c:
9160 * ndir.h:
9161 * lread.c:
9162 * keyboard.c:
9163 * getpagesize.h:
9164 * floatfns.c:
9165 * fileio.c:
9166 * emacs.c:
9167 * doc.c:
9168 * dispnew.c:
9169 * dired.c:
9170 * data.c:
9171 * callproc.c:
9172 * buffer.c:
9173 * README:
9174 * Makefile.in:
9175 * s/template.h:
9176 * s/msdos.h:
9177 * m/vax.h: Remove VMS support.
9178 * s/vms.h:
9179 * vlimit.h:
9180 * uaf.h:
9181 * temacs.opt:
9182 * param.h:
9183 * ioctl.h: Remove file.
9184
9185 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9186
9187 * s/ms-w32.h (MULTI_KBOARD): Remove.
9188 * xterm.c:
9189 * xselect.c:
9190 * xfns.c:
9191 * window.c:
9192 * w32term.c:
9193 * w32fns.c:
9194 * terminal.c:
9195 * termhooks.h:
9196 * term.c:
9197 * sysdep.c:
9198 * keyboard.h:
9199 * keyboard.c:
9200 * frame.h:
9201 * frame.c:
9202 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9203 * config.in: Regenerate.
9204
9205 2008-07-30 Jason Rumney <jasonr@gnu.org>
9206
9207 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9208
9209 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9210 (w32font_open_internal): Get unicode version of textmetrics.
9211 Don't enable or disable glyph indices here.
9212 (w32font_open): Disable use of glyph indices.
9213
9214 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9215
9216 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
9217
9218 * minibuf.c (Vread_buffer_function): Doc fix.
9219
9220 2008-07-30 John Paul Wallington <jpw@pobox.com>
9221
9222 * minibuf.c (read_buffer_completion_ignore_case): New var.
9223 (Fread_buffer): Use it.
9224
9225 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9226
9227 * systty.h (sensemode): Remove empty #if. Remove reference to
9228 BSD_TERMIOS, unused.
9229
9230 * sysdep.c: Remove reference to DGUX.
9231 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9232
9233 * config.in: Regenerate.
9234
9235 2008-07-30 Jason Rumney <jasonr@gnu.org>
9236
9237 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9238
9239 2008-07-29 Jason Rumney <jasonr@gnu.org>
9240
9241 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9242 is populated.
9243 (uniscribe_encode_char): Always use uniscribe.
9244 Avoid using context if cache is populated.
9245
9246 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9247
9248 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9249 open menu.
9250
9251 * gtkutil.c (menu_nav_ended): Remove.
9252 (create_menus): Remove signal connect for menu_nav_ended.
9253
9254 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
9255
9256 * xdisp.c (redisplay_window): Check return value of
9257 compute_window_start_on_continuation_line before forcing a window
9258 start.
9259
9260 2008-07-28 Jason Rumney <jasonr@gnu.org>
9261
9262 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9263
9264 * w32term.c (w32_enable_unicode_output, cleartype_active):
9265 Remove obsolete display options.
9266 (x_draw_glyph_string_background): Don't use old cleartype_active
9267 workaround.
9268 (w32_initialize): Remove cleartype_active initialization.
9269 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9270
9271 2008-07-28 Andreas Schwab <schwab@suse.de>
9272
9273 * lisp.h (init_weak_hash_tables, syms_of_font)
9274 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9275 (remove_hash_entry): Don't declare.
9276 * eval.c (maybe_call_debugger): Make static and move before use.
9277 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9278 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9279 * xterm.h (x_set_frame_alpha): Declare.
9280
9281 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9282
9283 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9284 (create_menus): Connect selection-done to menu_nav_ended.
9285
9286 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9287
9288 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9289 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9290 parameter with read of 'alpha' one.
9291 (Qns_frame_parameter): Remove.
9292 * nsselect.m (selection-coding-system)
9293 (next-selection-coding-system, Vselection_coding_system)
9294 (Vnext_selection_coding_system): Drop.
9295
9296 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9297
9298 * nsfns.m (do-applescript, do_applescript): Rename to
9299 ns-do-applescript, ns_do_applescript, and move within file.
9300
9301 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9302
9303 Remove support for Mac Carbon.
9304 * mactoolbox.c:
9305 * macterm.h:
9306 * macterm.c:
9307 * macselect.c:
9308 * macmenu.c:
9309 * macgui.h:
9310 * macfns.c:
9311 * mac.c: Remove file.
9312 * s/darwin.h:
9313 * m/intel386.h:
9314 * xfaces.c:
9315 * xdisp.c:
9316 * window.c:
9317 * tparam.c:
9318 * termhooks.h:
9319 * termcap.c:
9320 * term.c:
9321 * syssignal.h:
9322 * sysselect.h:
9323 * sysdep.c:
9324 * process.c:
9325 * lread.c:
9326 * lisp.h:
9327 * keyboard.c:
9328 * image.c:
9329 * fringe.c:
9330 * frame.h:
9331 * frame.c:
9332 * fontset.c:
9333 * font.h:
9334 * font.c:
9335 * fns.c:
9336 * fileio.c:
9337 * emacs.c:
9338 * dispnew.c:
9339 * dispextern.h:
9340 * config.in:
9341 * atimer.c:
9342 * Makefile.in: Remove code for Carbon.
9343
9344 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9345
9346 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9347
9348 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9349
9350 * macterm.h (kCGBitmapByteOrder32Host): New define for
9351 non-universal SDKs.
9352
9353 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9354 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9355
9356 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9357 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9358
9359 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9360
9361 * w32inevt.c: Include dispextern.h.
9362
9363 2008-07-26 Andreas Schwab <schwab@suse.de>
9364
9365 * print.c (print_object): Fix off-by-one in last change.
9366
9367 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
9368
9369 * term.c (syms_of_term): Don't initialize default_orig_pair,
9370 default_set_foreground and default_set_background on Windows.
9371
9372 2008-07-25 Jason Rumney <jasonr@gnu.org>
9373
9374 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9375 ScriptItemize. Clean up return value checking. Remove unused
9376 variables.
9377 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9378 shaping engine.
9379
9380 * w32font.c (w32font_has_char): Handle the case where we can't
9381 determine the script for a character.
9382
9383 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9384
9385 * term.c (syms_of_term): Initialize default_orig_pair,
9386 default_set_foreground, and default_set_background.
9387
9388 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9389 clash (bug#86).
9390 (getloadavg): Callers changed.
9391
9392 * image.c (svg_load_image): Fix last change.
9393 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9394 image size is valid. Use g_object_unref instead of deprecated
9395 rsvg_handle_free to free rsvg handle.
9396 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9397
9398 2008-07-25 Jason Rumney <jasonr@gnu.org>
9399
9400 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9401 surrogates before looking up glyph index.
9402 (w32font_text_extents): Encode as surrogates if falling back to
9403 functions that need UTF-16 wide chars.
9404
9405 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9406 BMP as surrogates before looking up glyph index.
9407
9408 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9409
9410 * image.c (svg_load_image): Check for failure in return value of
9411 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9412
9413 2008-07-25 Jason Rumney <jasonr@gnu.org>
9414
9415 * w32font.c (Fx_select_font): Reverse sense of second arg.
9416
9417 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9418
9419 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9420 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9421
9422 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9423 (PURESIZE): Use it.
9424
9425 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9426
9427 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9428 * m/alpha.h (TEXT_END):
9429 * m/ibmrs6000.h (TEXT_END):
9430 * m/macppc.h (TEXT_END):
9431 * s/darwin.h (TEXT_END):
9432 * s/msdos.h (TEXT_END): Remove, unused.
9433 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9434 * s/cygwin.h: Remove comment.
9435
9436 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9437 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9438 * m/intel386.h (DOT_GLOBAL_START):
9439 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9440 (USG): Remove, file not used on USG platforms.
9441
9442 * Makefile.in (HAVE_X11): Remove empty #else.
9443
9444 2008-07-24 Andreas Schwab <schwab@suse.de>
9445
9446 * fileio.c (Finsert_file_contents): Properly adjust undo list
9447 after format conversion.
9448
9449 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9450
9451 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9452 (menu_nav_ended): Remove.
9453 (create_menus): Remove signal connect for menu_nav_ended.
9454 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9455 create_menus.
9456 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9457
9458 2008-07-23 Jason Rumney <jasonr@gnu.org>
9459
9460 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9461 with opened font.
9462 (w32font_open): Set font type to gdi.
9463
9464 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9465
9466 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9467
9468 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9469 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9470 defines it.
9471 * unexec.c (ADDR_CORRECT): Define unconditionally.
9472
9473 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9474
9475 * unexec.c: Remove code depending on !COFF and USG, the file is
9476 not used for such systems.
9477
9478 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9479 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9480 (LD_SWITCH_SYSTEM_1): Remove, update users.
9481
9482 * s/darwin.h (DATA_END):
9483 * m/intel386.h (DATA_END):
9484 * m/ibmrs6000.h (DATA_END):
9485 * m/alpha.h (DATA_END): Remove, unused.
9486
9487 * config.in: Regenerate.
9488 * s/ms-w32.h (subprocesses): Define unconditionally.
9489 * s/template.h (subprocesses): Update comment.
9490 * s/vms.h (subprocesses):
9491 * s/usg5-4.h (subprocesses):
9492 * s/hpux10-20.h (subprocesses):
9493 * s/gnu-linux.h (subprocesses):
9494 * s/cygwin.h (subprocesses):
9495 * s/bsd-common.h (subprocesses):
9496 * s/aix4-2.h (subprocesses):
9497 * s/darwin.h (subprocesses): Do not define, defined by default now.
9498
9499 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9500 Remove all references.
9501 (temacs): Add GNUstep specific ld flags.
9502
9503 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9504 similarly to what X does.
9505
9506 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9507
9508 * nsfns.m (x-list-fonts): Remove.
9509 (syms_of_nsfns): Drop the x-list-fonts declaration.
9510 * nsterm.m: Get rid of remaining "//" comments.
9511
9512 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
9513
9514 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9515
9516 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9517 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9518 (Fns_own_selection_internal, Fx_disown_selection_internal)
9519 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9520
9521 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9522 ... */' style of docstrings. Doc fixes.
9523
9524 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9525
9526 * terminfo.c (UP, BC, PC): Undo previous change.
9527
9528 * nsfns.m: Rename ns prefixed functions/variables to the
9529 corresponding x versions. Update references.
9530
9531 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9532
9533 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9534
9535 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9536
9537 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9538 Remove forwarding functions.
9539 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9540 non-static.
9541 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9542 non-static.
9543 (ns_frame_parm_handlers): Use the new names.
9544 (syms_of_nsfns): Move to the end of file.
9545
9546 * nsterm.m (syms_of_nsterm): Move to the end of file.
9547
9548 * dispnew.c (init_display): Remove code for X10.
9549
9550 2008-07-22 Jason Rumney <jasonr@gnu.org>
9551
9552 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9553 bare drive.
9554
9555 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9556
9557 * nsterm.m (syms_of_nsterm): Remove debugging println.
9558
9559 2008-07-22 David Reitter <david.reitter@gmail.com>
9560
9561 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9562 Carbon implementation of the same functionality: execute arbitrary
9563 AppleScript code.
9564
9565 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9566
9567 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9568 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9569 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9570 (Fx_display_mm_height, Fx_display_mm_width)
9571 (Fx_display_backing_store, Fx_display_visual_class)
9572 (Fx_display_save_under, Fx_open_connection)
9573 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9574 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9575 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9576 (Fx_display_pixel_width, Fx_display_pixel_height)
9577 (Fx_display_usable_bounds, Fx_display_planes)
9578 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9579 ... */' style of docstrings.
9580
9581 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9582
9583 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9584 on this platform.
9585 (mips):
9586 * m/iris4d.h (mips): Do not define.
9587 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9588
9589 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9590
9591 * image.c:
9592 * nsfns.m:
9593 * nsselect.m:
9594 * nsterm.h:
9595 * nsterm.m: Rename ns prefixed functions/variables to the
9596 corresponding x versions. Update references.
9597
9598 * m/ibms390x.h (NO_REMAP): Do not undefine.
9599
9600 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9601
9602 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
9603
9604 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9605 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9606 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9607 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9608 (Fns_display_mm_height, Fns_display_mm_width)
9609 (Fns_display_backing_store, Fns_display_visual_class)
9610 (Fns_display_save_under, Fns_open_connection)
9611 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9612 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9613 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9614 (Fns_display_pixel_width, Fns_display_pixel_height)
9615 (Fns_display_usable_bounds, Fx_display_planes)
9616 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9617
9618 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9619
9620 * print.c (print_object): Check print_depth before searching for
9621 circularities.
9622
9623 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
9624
9625 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9626 only sprintf.
9627
9628 2008-07-21 Kenichi Handa <handa@m17n.org>
9629
9630 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9631
9632 2008-07-20 Andreas Schwab <schwab@suse.de>
9633
9634 * syntax.c (find_start_pos, find_start_value)
9635 (find_start_value_byte, find_start_begv, find_defun_start)
9636 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9637
9638 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9639
9640 * s/sol2-3.h: Insert contents of s/sol2.h.
9641 (LD_SWITCH_SYSTEM): Remove redundant definition.
9642 * s/sol2.h: Remove, unused.
9643
9644 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9645
9646 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9647
9648 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9649
9650 * Makefile.in (ns_appdir): Fix typo in find command.
9651
9652 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9653
9654 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9655
9656 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9657 added not supported anymore.
9658
9659 * s/usg5-4-2.h (LIBS_SYSTEM):
9660 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9661
9662 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9663 * s/lynxos.h (GETPGRP_NO_ARG):
9664 * s/hpux10-20.h (NO_SIOCTL_H):
9665 * s/gnu.h (GETPGRP_NO_ARG):
9666 * s/gnu-linux.h (NO_SIOCTL_H):
9667 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9668 * s/cygwin.h (GETPGRP_NO_ARG):
9669 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9670 (C_DEBUG_SWITCH): Remove duplicate definition.
9671
9672 * m/ibms390.h: Remove boilerplate comments.
9673
9674 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9675
9676 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9677 (wait_reading_process_output): Remove code for SunOS, platform not
9678 supported anymore. Use SOLARIS2 instead of sun.
9679
9680 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9681
9682 * font.c (font_open_by_name): Under NS, default lface height to zero.
9683 (font_open_for_lface): Under NS, set size based on frame fontsize.
9684 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9685 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9686
9687 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9688
9689 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9690 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9691 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9692 YES/NO.
9693 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9694 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9695 * Makefile.in (clean): Clear out build destination dir.
9696
9697 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9698
9699 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9700 xterm, xselect.
9701 * lisp.h: Remove declaration of hash_remove.
9702 * nsgui.h: Remove redefinitions of hash_remove.
9703 * fns.c (hash_remove): Rename to hash_remove_from_table.
9704
9705 2008-07-19 Seiji Zenitani <zenitani@mac.com>
9706
9707 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9708 strdup() the family UTF8String before modifying it.
9709
9710 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9711
9712 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9713 NS_FACE_BACKGROUND with 0 instead of nil.
9714 * nsfont.m (nsfont_draw): Same.
9715
9716 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
9717
9718 * nsfns.m (ns_set_background_color): Fix crash.
9719
9720 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
9721
9722 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9723
9724 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9725
9726 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9727
9728 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9729
9730 * gtkutil.c: Include <config.h> instead of "config.h".
9731
9732 * lisp.h (Foverlay_buffer): Add EXFUN.
9733
9734 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9735 child process to complete child_setup. Undo 2005-09-21 change.
9736
9737 * s/darwin.h: Mention setsid after vfork.
9738
9739 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9740
9741 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9742 Depend on macgui.h.
9743
9744 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9745 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9746
9747 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9748 and f19.
9749 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9750
9751 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9752 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9753 Remove enumerators.
9754
9755 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9756 Check if FACE_FROM_ID returns NULL.
9757
9758 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9759
9760 * w32inevt.c (change_frame_size): Remove extern declaration.
9761 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9762 change_frame_size.
9763
9764 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9765
9766 * getloadavg.c: Revert last change (2008-07-15).
9767
9768 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9769
9770 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
9771 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
9772 from configure.
9773
9774 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9775
9776 * s/sol2.h:
9777 * s/sol2-4.h: Reorganize conditionals.
9778
9779 * ecrt0.c: Remove code depending on m68000, not used anymore.
9780
9781 * fns.c (hash_remove): Make static.
9782 * lisp.h (hash_remove): Don't prototype.
9783
9784 * m/ibmrs6000.h:
9785 * m/ibms390x.h:
9786 * m/macppc.h: Remove boilerplate comments.
9787
9788 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9789 Solaris, which does not need them.
9790
9791 * m/vax.h: Remove comments about unsupported systems.
9792
9793 * s/darwin.h: Reorganize ifdefs.
9794
9795 2008-07-17 Andreas Schwab <schwab@suse.de>
9796
9797 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9798
9799 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9800
9801 Use SDATA. Follow coding convention of placing operators at
9802 beginning of next line rather than end of previous line, and placing
9803 spaces around infix operators.
9804
9805 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9806 in case it was defined already.
9807 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9808 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9809 ns_default.
9810 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9811 Lisp_Objects.
9812 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9813 (ns_defined_color, ns_color_to_lisp): Declare.
9814 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9815 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9816 it's accepted even with USE_LISP_UNION_TYPE.
9817 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
9818 (update_frame_tool_bar): Remove apparently obsolete tests for
9819 non-integerness of f->tool_bar_lines.
9820 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
9821 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
9822 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
9823 (nsfont_open): Don't confuse NULL for Qnil.
9824 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
9825 * menu.h (find_and_call_menu_selection):
9826 * menu.c (find_and_call_menu_selection): Use just int for vector size.
9827 (find_and_return_menu_selection): Always return something.
9828 * frame.h: Include dispextern.h for Display_Info.
9829 (display_x_get_resource): Declare.
9830
9831 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
9832
9833 * syntax.c: Remove stdio.h include accidentally introduced in
9834 Emacs.app commit.
9835 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
9836 NS_IMPL_COCOA.
9837 * keyboard.c (handle_async_input, input_available_signal): Remove
9838 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
9839
9840 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9841
9842 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
9843 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
9844 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
9845 Use SDATA.
9846
9847 * keymap.c: Remove all NS-specific code.
9848 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
9849 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
9850 where_is_preferred_modifier, return a different value depending on how
9851 preferred is the binding.
9852 (where_is_internal): Adjust accordingly.
9853 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
9854 Adjust to new preferred_sequence_p.
9855 (syms_of_keymap): Declare `where-is-preferred-modifier'.
9856 * keyboard.c (parse_solitary_modifier): Not static any more.
9857 * keyboard.h (parse_solitary_modifier): Declare.
9858
9859 2008-07-16 Andreas Schwab <schwab@suse.de>
9860
9861 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
9862 of easymenu.
9863
9864 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
9865
9866 * xdisp.c (move_it_in_display_line): Account for word wrap, so
9867 that we don't move off the line.
9868
9869 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
9870
9871 * keyboard.c (Qsuper): Remove.
9872 (parse_menu_item): Don't call where_is_internal specially for NS.
9873
9874 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9875
9876 * s/gnu-linux.h: Remove boilerplate comments.
9877
9878 * m/alpha.h (__ELF__): Consolidate conditions.
9879
9880 * m/m68k.h (linux): Use GNU_LINUX instead.
9881 Remove boilerplate comments.
9882
9883 * m/intel386.h: Undo refactoring from previous change.
9884 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
9885 too, remove dead code.
9886 (linux): Use GNU_LINUX instead.
9887
9888 2008-07-16 Jason Rumney <jasonr@gnu.org>
9889
9890 * w32gui.h: Repeat 26 June changes lost by last change.
9891
9892 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
9893
9894 * systty.h: Remove code for Aix on 386, unsupported platform.
9895
9896 * s/ms-w32.h: Remove boilerplate comments.
9897 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
9898
9899 * s/gnu-linux.h (TERM): Remove support.
9900 (HAVE_SYSVIPC): Remove, unused.
9901 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
9902 for this system.
9903
9904 * process.c: Remove support for IRIS, unused.
9905 Remove support for TERM, not relevant anymore.
9906
9907 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
9908 used with the definition.
9909
9910 * s/aix4-2.h (static): Do not undef.
9911
9912 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
9913 only used on Aix.
9914 (HAVE_SYSVIPC): Remove, unused.
9915
9916 * m/hp800.h (CANNOT_DUMP): Do not undef.
9917
9918 * m/alpha.h: Fix comment.
9919
9920 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
9921 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
9922 used by this configuration.
9923 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
9924 * unexec.c: Remove code depending on HPUX and
9925 USG_SHARED_LIBRARIES, not used with this file. Remove code
9926 depending on IRIS, unused. Remove if 0-ed code.
9927
9928 * s/template.h: Remove comments about static.
9929
9930 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
9931 Remove if 0-ed code.
9932 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
9933 were the same as the default.
9934 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
9935 Remove boilerplate comments.
9936 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
9937 (HAVE_SYSVIPC): Remove, unused.
9938 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
9939
9940 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9941 Remove boilerplate comments.
9942 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9943 Remove boilerplate comments.
9944 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
9945 Remove boilerplate comments.
9946 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
9947
9948 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
9949 USG systems which do not use DATA_SEG_BITS.
9950 Refactor code. Remove boilerplate comments.
9951
9952 * m/ibms390.h:
9953 * m/m68k.h:
9954 * s/bsd-common.h:
9955 * s/cygwin.h:
9956 * s/darwin.h:
9957 * s/freebsd.h:
9958 * s/gnu.h:
9959 * s/msdos.h: Remove boilerplate comments.
9960
9961 * m/iris4d.h: Remove boilerplate comments and code for systems that
9962 do not use this file.
9963 (IRIS_4D): Remove, unused.
9964
9965 * m/mips.h: Remove boilerplate comments and code for systems that
9966 do not use this file.
9967 (SIGN_EXTEND_CHAR):
9968 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
9969 * unexmips.c: Remove file, unused.
9970
9971 * editfns.c (Fuser_full_name): Replace the only use of
9972 USER_FULL_NAME with its value.
9973 * config.in: Regenerate.
9974
9975 2008-07-16 David Reitter <david.reitter@gmail.com>
9976
9977 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
9978 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
9979
9980 2008-07-16 Glenn Morris <rgm@gnu.org>
9981
9982 * emacs.c (system-type): Doc fix.
9983
9984 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
9985
9986 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
9987 If the cache doesn't work, let's fix it, rather than work around it.
9988
9989 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
9990
9991 * Makefile.in: Correct additions for nsfont.o in last commit.
9992 * nsfont.m: New file (forgot last commit).
9993
9994 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
9995
9996 * callproc.c (set_initial_environment): Initialize
9997 Vprocess_environment under CANNOT_DUMP (fixes crash when
9998 batch-compiling for bootstrap).
9999
10000 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10001 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10002
10003 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10004 fix crash due to different init order.
10005
10006 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10007
10008 Changes and additions for NeXTstep windowing system (Cocoa and
10009 GNUstep) support.
10010
10011 * Makefile.in:
10012 * config.in: Support defines and build commands for NS port.
10013 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10014 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10015 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10016 windowing.
10017 (struct face): Add synth_ital field.
10018 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10019 (init_display): Initialize Vinitial_window_system to "ns" when so
10020 compiled.
10021 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10022 (display_arg): Use under NS.
10023 (main): Under NS, allocate autorelease pool and handle command line
10024 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10025 (standard_args): Add NS-specific args.
10026 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10027 * font.c (DEFAULT_ENCODING): New variable.
10028 (font_find_for_lface): Use it.
10029 (syms_of_font): Load syms_of_nsfont under NS.
10030 * font.h: Declare nsfont_driver when compiled under NS.
10031 * fontset.c: When compiling under NS, include nsterm.h.
10032 (fontset_from_font): Autoconstruct fontset under NS.
10033 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10034 symbol, document and use it.
10035 (do_switch_frame): When for_deletion under Cocoa, add
10036 Fraise_frame(Qnil).
10037 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10038 (x_get_arg): Allow "yes" and "no" as boolean values.
10039 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10040 Qright under Cocoa.
10041 (focus-follows-mouse): Default to 0 under NS.
10042 * frame.h (enum output_method): Add output_ns.
10043 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10044 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10045 (FRAME_WINDOW_P): NS-specific definition.
10046 * fringe.c (max_used_fringe_bitmap): Make public.
10047 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10048 (getloadavg): Use NeXT code under descendant OS's.
10049 * image.c (includes and header section, x_create_bitmap_from_data)
10050 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10051 (image_background_transparent, x_clear_image_1)
10052 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10053 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10054 (x_to_xcolors, x_from_xcolors, x_disable_image)
10055 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10056 other GUIs, including XPM support using code originally written for
10057 Carbon GUI.
10058 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10059 using NS API.
10060 (image_ascent): Use font metrics macros instead of direct struct field
10061 access.
10062 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10063 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10064 Also, handle NS as GTK for menu bar purposes.
10065 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10066 toolkit where they differ.
10067 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10068 use cachelist, still needed under NS.
10069 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10070 (struct widget_value): Define it here for menu.c.
10071 * keymap.c (includes): Include modifier internals.
10072 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10073 NS.
10074 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10075 support for preferring sequences using certain modifiers, specified by
10076 the FIRSTONLY argument.
10077 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10078 under NS GNUstep implementation.
10079 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10080 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10081 * menu.c: Include nsterm.h under NS.
10082 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10083 (free_menubar_widget_tree_value, update_submenu_strings)
10084 (find_and_call_menu_selection): Treat NS as X and NT.
10085 (find_and_return_menu_selection): New function, used for popup menus.
10086 * nsgui.h:
10087 * nsterm.h:
10088 * nsfns.m:
10089 * nsimage.m:
10090 * nsmenu.m:
10091 * nsselect.m:
10092 * nsterm.m: New files.
10093 * process.c (wait_reading_process_output): Under NS, call ns_select()
10094 instead of plain select().
10095 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10096 beginning of buffer.
10097 * sysselect.h (init_process): Rename when compiling under Cocoa to
10098 avoid name conflict.
10099 * termhooks.h (display_info): Add ns_display_info to union.
10100 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10101 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10102 COCOA environment.
10103 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10104 unexec() signature. (Note, this will dump, but the resulting file
10105 crashes; unexosx is used instead; keeping around for reference and
10106 possible aid in getting dump working under GNUstep.)
10107 * w32gui.h (button_type, widget_value): Remove definitions (now in
10108 keyboard.h).
10109 * window.c: Include nsterm.h when compiling under NS.
10110 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10111 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10112 other GUI windowing systems.
10113 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10114 GTK.
10115 (x_consider_frame_title): Under NS, set icon type and frame
10116 modified-state indicator; use ns_set_name_as_filename() when using
10117 formatted title.
10118 (update_window_cursor): Make public when compiling under NS.
10119 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10120 (hourglass_atimer, Vhourglass_delay
10121 * xfaces.c (header section, init_frame_faces, clear_font_table)
10122 (defined_color, unload_color, x_face_list_fonts)
10123 (prepare_face_for_display): Add NS support parallel to other GUIs.
10124 Emulate GCs like other non-X GUIs.
10125 (split_font_name): Don't lowercase font name under NS.
10126 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10127 under NS.
10128 * s/darwin.h: Add support for compilation under NS.
10129
10130 2008-07-15 Jason Rumney <jasonr@gnu.org>
10131
10132 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10133 (w32_show_hourglass): Rename from show_hourglass.
10134 (w32_hide_hourglass): Rename from hide_hourglass.
10135 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10136 (Vhourglass_delay): Declare extern.
10137 (hourglass_started): Remove.
10138
10139 * xdisp.c (Vhourglass_delay): Remove static.
10140 (hourglass_started, start_hourglass, cancel_hourglass):
10141 Don't include these versions on WINDOWSNT.
10142
10143 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10144
10145 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10146 variables (formerly in xfns.c).
10147 (show_hourglass, hide_hourglass): New prototypes (same).
10148 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10149 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10150 in xfns.c).
10151 (syms_of_xdisp): Declare/initialize display-hourglass,
10152 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10153 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10154 formerly in xfns.c.
10155 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10156 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10157 (start_hourglass, cancel_hourglass): Remove.
10158 (show_hourglass, hide_hourglass): Remove prototypes and static
10159 modifiers.
10160 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10161 hourglass_atimer, hourglass_shown_p declaration/initialization.
10162 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10163 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10164 (start_hourglass, cancel_hourglass): Remove.
10165 (show_hourglass, hide_hourglass): Remove prototypes and static
10166 modifiers.
10167 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10168 hourglass_atimer, hourglass_shown_p declaration/initialization.
10169 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10170 (DEFAULT_HOURGLASS_DELAY): Remove.
10171 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10172 hourglass_shown_p declaration/initialization.
10173
10174 2008-07-14 Jason Rumney <jasonr@gnu.org>
10175
10176 * w32fns.c (w32_get_arg): Remove wrapper function.
10177 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10178 directly.
10179 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10180
10181 2008-07-14 Kenichi Handa <handa@m17n.org>
10182
10183 * xfont.c (xfont_open): Add workaround for X's bug.
10184
10185 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10186
10187 * fontset.c: Include <stdio.h> unconditionally.
10188
10189 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
10190
10191 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10192 for filtering.
10193
10194 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10195
10196 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10197
10198 * m/macppc.h:
10199 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10200
10201 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10202 (SPECIAL_EMACS_INT):
10203 * m/ia64.h (SPECIAL_EMACS_INT):
10204 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10205 * s/gnu.h (NLIST_STRUCT):
10206 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10207 * s/gnu-linux.h (LINUX):
10208 * s/msdos.h (HAVE_FACES):
10209 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10210
10211 * systty.h:
10212 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10213 anymore.
10214
10215 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10216
10217 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10218 always defined as int.
10219
10220 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10221 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10222 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10223 * s/freebsd.h (HAVE_WAIT_HEADER):
10224 * s/bsd-common.h (HAVE_UNION_WAIT):
10225 * s/aix4-2.h (HAVE_WAIT_HEADER):
10226 * m/mips.h (HAVE_UNION_WAIT):
10227 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10228 (COFF, static): Do not define, they are undefined later in the file.
10229
10230 * process.c (update_status): Don't use a union.
10231 (status_convert):
10232 (sigchld_handler): Use int instead of WAITTYPE.
10233
10234 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
10235
10236 * indent.c (Fvertical_motion): Restore hscroll before moving to
10237 goal column.
10238
10239 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10240
10241 * lisp.h: Remove left over code.
10242
10243 2008-07-11 Andreas Schwab <schwab@suse.de>
10244
10245 * lisp.h: Fix logic in last change.
10246
10247 * menu.h: New file.
10248 * menu.c: Include it.
10249 * xmenu.c: Likewise.
10250 * Makefile.in: Update dependencies.
10251
10252 2008-07-11 Kenichi Handa <handa@m17n.org>
10253
10254 * fontset.c (fontset_from_font): Cancel the previous change.
10255
10256 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10257
10258 * lisp.h:
10259 * w32heap.c:
10260 * emacs.c:
10261 * alloc.c: Replace all references of NO_UNION_TYPE with
10262 USE_LISP_UNION_TYPE.
10263
10264 * m/xtensa.h (NO_UNION_TYPE):
10265 * m/vax.h (NO_UNION_TYPE):
10266 * m/template.h (NO_UNION_TYPE):
10267 * m/sparc.h (NO_UNION_TYPE):
10268 * m/mips.h (NO_UNION_TYPE):
10269 * m/macppc.h (NO_UNION_TYPE):
10270 * m/m68k.h (NO_UNION_TYPE):
10271 * m/iris4d.h (NO_UNION_TYPE):
10272 * m/intel386.h (NO_UNION_TYPE):
10273 * m/ibms390x.h (NO_UNION_TYPE):
10274 * m/ibms390.h (NO_UNION_TYPE):
10275 * m/ibmrs6000.h (NO_UNION_TYPE):
10276 * m/ia64.h (NO_UNION_TYPE):
10277 * m/hp800.h (NO_UNION_TYPE):
10278 * m/arm.h (NO_UNION_TYPE):
10279 * m/amdx86-64.h (NO_UNION_TYPE):
10280 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10281 defining it the same.
10282
10283 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
10284
10285 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10286
10287 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10288
10289 * fileio.c:
10290 * sysdep.c:
10291 * systty.h:
10292 * m/ibmrs6000.h:
10293 * m/iris4d.h:
10294 * s/aix4-2.h:
10295 * s/freebsd.h:
10296 * s/gnu-linux.h:
10297 * s/hpux10-20.h:
10298 * s/hpux11.h:
10299 * s/netbsd.h:
10300 * s/sol2-3.h:
10301 * s/sol2-4.h:
10302 * s/sol2.h:
10303 * s/usg5-4.h:
10304 * s/vms.h: Remove references to unused variables.
10305
10306 2008-07-10 Andreas Schwab <schwab@suse.de>
10307
10308 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10309 pattern before matching the generic family.
10310
10311 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10312
10313 * unexec.c:
10314 * s/vms.h:
10315 * s/usg5-4-2.h:
10316 * s/sol2-5.h:
10317 * s/freebsd.h:
10318 * s/darwin.h: Remove dead code.
10319
10320 * m/template.h:
10321 * m/sparc.h:
10322 * m/mips.h:
10323 * m/m68k.h:
10324 * m/iris4d.h:
10325 * m/intel386.h:
10326 * m/ibms390x.h:
10327 * m/ibms390.h:
10328 * m/ia64.h:
10329 * m/hp800.h:
10330 * m/arm.h:
10331 * m/amdx86-64.h: Remove dead code and references to unused
10332 and compiler defined symbols.
10333
10334 * unexmips.c:
10335 * unexelf.c: Remove references to desupported systems.
10336
10337 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10338
10339 * m/powermac.h: Remove boilerplate comments.
10340 (NO_REMAP): Remove unused definition.
10341
10342 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10343 define them.
10344
10345 2008-07-10 Kenichi Handa <handa@m17n.org>
10346
10347 * xfont.c (xfont_open): Log the reason of failure.
10348
10349 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10350
10351 * fontset.c (fontset_get_font_group):
10352 * font.c (font_check_otf): Specify argument types.
10353
10354 2008-07-09 Kenichi Handa <handa@m17n.org>
10355
10356 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10357 non-ASCII char is found.
10358
10359 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10360 (reorder_font_vector): Change the arg preferred_family to font.
10361 Prefer the spec matching with font.
10362 (fontset_get_font_group): New function.
10363 (fontset_find_font): Change the format of an element of a realized
10364 fontset. Use fontset_get_font_group.
10365 (fontset_font): Try the current fontset, the default fontset, the
10366 fallbacks of the current fontset, and the fallbacks of the default
10367 fontset in this order.
10368 (face_for_char): Delete the shortcut to use the current font.
10369 (fontset_from_font): Don't set fonts for Latin in the fontset.
10370
10371 * font.h (font_make_object, font_match_p): Adjust prototypes.
10372
10373 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10374
10375 * font.c (font_make_object): New arg entity and pixelsize.
10376 (font_check_otf_features, font_check_otf): New functions.
10377 (font_match_p): Check :lang, :script, and :otf properties.
10378
10379 * xfont.c (xfont_open): Adjust it for the change of
10380 font_make_object.
10381 (xfont_text_extents): Fix initial setting of metrics.
10382
10383 * ftfont.c (struct ftfont_info): New member index, delete member
10384 fc_charset_idx. Make the member order compatible with struct
10385 xftfont_info.
10386 (fc_charset_table): Change charset names to registry names.
10387 (ftfont_pattern_entity): Delete the args registry and
10388 fc_charset_idx. Change the value of :font-entity property
10389 to (FONTNAME . INDEX). Always set :registry property to
10390 `iso10646-1'.
10391 (struct ftfont_cache_data): New struct.
10392 (ftfont_lookup_cache): New arg for_face.
10393 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10394 (ftfont_driver): Set the member otf_capability.
10395 (ftfont_get_charset): Adjust it for the change of
10396 fc_charset_table.
10397 (OTF_TAG_SYM): New macro.
10398 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10399 for the change of fc_charset_table.
10400 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10401 ftfont_pattern_entity. Add FC_INDEX to objset.
10402 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10403 and ftfont_pattern_entity.
10404 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10405 font_make_object, struct ftfont_info.
10406 (ftfont_has_char): Use ftfont_get_fc_charset.
10407 (ftfont_otf_features, ftfont_otf_capability): New functions.
10408 (ftfont_shape): Use ftfont_get_otf.
10409 (ftfont_text_extents): Fix initial setting of metrics.
10410
10411 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10412 member order compatible with struct ftfont_info.
10413 (xftfont_open): Add FC_CHARSET to the pattern. Set
10414 xftfont_info->ft_size. Don't unlock the face. Check BDF
10415 properties if appropriate.
10416 (xftfont_close): Unlock the face.
10417 (xftfont_anchor_point, xftfont_shape): Deleted.
10418 (syms_of_xftfont): Don't set members anchor_point and shape of
10419 xftfont_driver.
10420
10421 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10422 font_make_object.
10423
10424 * w32font.c (w32font_open): Adjust it for the change of
10425 font_make_object.
10426 (w32font_open_internal): Don't set properties of font_object here.
10427
10428 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
10429
10430 * macfns.c (x_create_tip_frame):
10431 * w32fns.c (x_create_tip_frame):
10432 * xfns.c (x_create_tip_frame): Pass parameter argument to
10433 face-set-after-frame-default.
10434
10435 * xfaces.c (Finternal_merge_in_global_face): Save merged
10436 attributes for the default face back into the face vector.
10437
10438 2008-07-08 Andreas Schwab <schwab@suse.de>
10439
10440 * fontset.h: Declare fontset_from_font. Don't declare
10441 new_fontset_from_font and fontset_from_font_name.
10442 * xterm.c: Include "fontset.h".
10443 * Makefile.in (xterm.o): Update dependencies.
10444
10445 2008-07-08 Glenn Morris <rgm@gnu.org>
10446
10447 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10448 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10449
10450 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
10451
10452 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10453 (x_set_frame_parameters): Don't bind it.
10454
10455 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
10456
10457 * w32fns.c (map_w32_filename): Declare extern.
10458
10459 2008-07-07 Jason Rumney <jasonr@gnu.org>
10460
10461 * w32term.c (WS_EX_LAYERED): Define if not already.
10462
10463 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
10464
10465 * xfaces.c (set_font_frame_param): Don't try to set the font
10466 parameter if it is still unspecified in the lface.
10467
10468 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10469
10470 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10471 face if it didn't already exist.
10472
10473 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10474
10475 2008-07-05 Andreas Schwab <schwab@suse.de>
10476
10477 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10478
10479 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10480
10481 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10482 word-wrapping.
10483 (IT_DISPLAYING_WHITESPACE): New macro.
10484 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10485 when word-wrapping. Simplify word-wrapping logic. Use correct
10486 pixel positions when saving copies of the iterator.
10487 (display_line): Use proper wrap point if the last character on a
10488 line was preceded by whitespace.
10489
10490 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10491
10492 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10493
10494 2008-07-04 Kenichi Handa <handa@m17n.org>
10495
10496 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10497
10498 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10499
10500 2008-07-02 Jason Rumney <jasonr@gnu.org>
10501
10502 * xfns.c (syms_of_xfns): Only define x-select-font when both
10503 HAVE_FREETYPE and USE_GTK.
10504
10505 * xdisp.c (next_element_from_display_vector): Move assignment out
10506 of if statement.
10507
10508 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10509
10510 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10511
10512 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10513 (syms_of_fileio): Initialize and export them.
10514 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10515
10516 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10517 (Fsystem_move_file_to_trash): New function.
10518 (syms_of_w32fns): Export it to lisp.
10519
10520 2008-07-01 Jason Rumney <jasonr@gnu.org>
10521
10522 * w32font.c (w32font_text_extents): Don't count overhang as part
10523 of width.
10524
10525 2008-06-30 Miles Bader <miles@gnu.org>
10526
10527 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10528 Add `avoid_cursor_p' field.
10529
10530 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10531 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10532 (append_glyph, append_composite_glyph, produce_image_glyph)
10533 (append_stretch_glyph): Initialize avoid_cursor_p.
10534 (get_it_property): Rename from `get_line_height_property'.
10535 (x_produce_glyphs): Use get_it_property.
10536 (handle_line_prefix, push_display_prop): New functions.
10537 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10538 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10539 New variables.
10540 (syms_of_xdisp): Initialize them.
10541
10542 2008-06-30 Kenichi Handa <handa@m17n.org>
10543
10544 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10545 XftDefaultSubstitute (they are called in XftFontMatch).
10546 (xftfont_open): Fix args to ftfont_font_format.
10547
10548 * ftfont.c (fc_charset_table): New member lang.
10549 (ftfont_resolve_generic_family): New arg pattern.
10550 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
10551 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10552 (ftfont_open): Fix args to ftfont_font_format.
10553 (ftfont_font_format): New arg filename.
10554
10555 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
10556
10557 * xfaces.c (Finternal_merge_in_global_face): If default face was
10558 modified, realize it again. Update the font face attribute.
10559
10560 2008-06-29 Jason Rumney <jasonr@gnu.org>
10561
10562 * w32term.c (x_set_frame_alpha): Fix logic.
10563
10564 2008-06-29 Kenichi Handa <handa@m17n.org>
10565
10566 * fontset.c (Finternal_char_font): Return font-object instead of
10567 font-name.
10568
10569 * composite.c (get_composition_id): Fix the width calculation for TAB.
10570
10571 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10572
10573 * indent.c (Fvertical_motion): Properly handle float column arg.
10574
10575 2008-06-28 Jason Rumney <jasonr@gnu.org>
10576
10577 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10578 (pfnSetLayeredWindowAttributes): New function pointer.
10579 (w32_initialize): Initialize it when supported.
10580 (x_set_frame_alpha): New function.
10581
10582 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10583 (w32_frame_parm_handlers): Set alpha handler.
10584
10585 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10586
10587 2008-06-27 Jason Rumney <jasonr@gnu.org>
10588
10589 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10590 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10591 (w32_to_x_charset, x_to_w32_charset)
10592 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10593 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10594 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10595 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10596 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10597 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10598 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10599 (Qw32_charset_unicode): Remove.
10600 (syms_of_w32fns): Update for above changes.
10601
10602 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10603 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10604 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10605 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10606 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10607 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10608 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10609 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10610 (syms_of_w32font): Update for above changes.
10611
10612 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10613
10614 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10615 removed #if.
10616 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10617
10618 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10619 Eli Zaretskii <eliz@gnu.org>
10620
10621 * makefile.w32-in (LOCAL_FLAGS):
10622 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10623
10624 * sysdep.c (_spawnlp, _getpid):
10625 Declare with explicit _cdecl instead of _CRTAPI1.
10626
10627 * editfns.c (Fget_internal_run_time):
10628 Check for WINDOWSNT with #ifdef, not #if.
10629
10630 2008-06-26 Jason Rumney <jasonr@gnu.org>
10631
10632 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10633
10634 * w32term.c (x_draw_glyph_string_foreground)
10635 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10636 Use FONT_HANDLE macro.
10637 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10638
10639 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10640 (uniscribe_encode_char): Use FONT_HANDLE macro.
10641
10642 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10643 (w32font_text_extents): Use precast w32_font.
10644 (w32font_close): Free cached metrics.
10645 (w32font_open_internal): Allocate space for name on stack.
10646
10647 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
10648
10649 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10650
10651 2008-06-26 Jason Rumney <jasonr@gnu.org>
10652
10653 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10654 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10655
10656 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10657
10658 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10659
10660 2008-06-26 Jason Rumney <jasonr@gnu.org>
10661
10662 * w32bdf.c, w32bdf.h: Remove obsolete files.
10663
10664 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10665
10666 * w32gui.h: Don't include w32bdf.h.
10667 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10668 Remove obsolete font support.
10669
10670 * w32font.h (struct w32font_info): Remove compat_w32_font.
10671 Add hfont member.
10672 (FONT_COMPAT): Remove obsolete macro.
10673
10674 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10675 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10676 (w32font_open_internal): Remove compat code. Set new hfont member.
10677 (Fx_select_font): Use new hfont member.
10678
10679 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10680 (uniscribe_encode_char): Use new hfont member.
10681
10682 * w32term.c (x_draw_glyph_string_foreground)
10683 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10684 (x_draw_glyph_string): Use metrics in w32font_info.
10685
10686 2008-06-26 Kenichi Handa <handa@m17n.org>
10687
10688 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10689
10690 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10691
10692 * unexnext.c:
10693 * m/ews4800.h:
10694 * m/hp9000s300.h:
10695 * m/ibm370aix.h:
10696 * m/mips-siemens.h:
10697 * m/ncr386.h:
10698 * m/next.h:
10699 * m/pmax.h:
10700 * m/powerpcle.h:
10701 * m/tandem-s2.h:
10702 * s/386bsd.h:
10703 * s/bsd386.h:
10704 * s/bsd4-1.h:
10705 * s/bsd4-2.h:
10706 * s/bsdos2-1.h:
10707 * s/bsdos2.h:
10708 * s/bsdos3.h:
10709 * s/bsdos4.h:
10710 * s/nextstep.h:
10711 * s/ultrix4-3.h:
10712 * s/usg5-0.h:
10713 * s/usg5-2-2.h:
10714 * s/usg5-2.h:
10715 * s/usg5-4-3.h:
10716 * s/ux4800.h:
10717 * s/uxpds.h:
10718 * s/uxpv.h: Remove support for obsolete systems.
10719 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
10720 Remove, insert contents in s/hpux10-20.h.
10721 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10722 Remove, insert contents in s/aix4-2.h.
10723 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10724 * s/bsd4-3.h: Rename to ...
10725 * s/bsd-common.h: ... this.
10726 * data.c:
10727 * doc.c:
10728 * ecrt0.c:
10729 * emacs.c:
10730 * fileio.c:
10731 * floatfns.c:
10732 * keyboard.c:
10733 * mem-limits.h:
10734 * print.c:
10735 * process.c:
10736 * sysdep.c:
10737 * syssignal.h:
10738 * systty.h:
10739 * syswait.h:
10740 * term.c:
10741 * unexec.c:
10742 * unexelf.c:
10743 * unexhp9k800.c:
10744 * m/hp800.h:
10745 * m/ibmrs6000.h:
10746 * m/mips.h:
10747 * m/vax.h:
10748 * s/darwin.h:
10749 * s/freebsd.h:
10750 * s/gnu.h:
10751 * s/ms-w32.h:
10752 * s/msdos.h:
10753 * s/netbsd.h:
10754 * s/template.h: Remove references to obsolete variables.
10755
10756 * Makefile.in: Add dependencies for all unexec files.
10757 (admindir): Remove unused variable.
10758 (UNEXEC_SRC): Remove references.
10759
10760 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
10761
10762 * xfns.c (x_default_font_parameter): If Xft is available, first
10763 try Monospace-12 for the default font.
10764
10765 2008-06-25 Jason Rumney <jasonr@gnu.org>
10766
10767 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10768
10769 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10770
10771 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10772
10773 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10774
10775 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
10776
10777 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10778 <scroll-conservatively>: Fix typo in docstring.
10779
10780 * xselect.c (Fx_send_client_event): Doc fix.
10781
10782 2008-06-25 Kenichi Handa <handa@m17n.org>
10783
10784 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10785
10786 * font.c (font_parse_fcname): Remove unused variables.
10787 (font_sort_entites): Delete the arg SPEC. Caller changed.
10788 Fix for the case of ! best_only.
10789 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10790
10791 * lisp.h (Fstring_to_unibyte): EXFUN it.
10792
10793 * character.h (str_to_unibyte): Extern it.
10794
10795 * character.c (str_to_unibyte): New function.
10796
10797 * fns.c (Fstring_to_unibyte): New function.
10798 (syms_of_fns): Defsubr it.
10799
10800 2008-06-24 Kenichi Handa <handa@m17n.org>
10801
10802 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10803 DPI too.
10804 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10805
10806 2008-06-24 Andreas Schwab <schwab@suse.de>
10807
10808 * Makefile.in (${lispsource}loaddefs.el): Rename from
10809 ../lisp/loaddefs.el.
10810 (bootstrap-clean): Do what distclean does but don't remove
10811 Makefile.
10812 (distclean): Depend on bootstrap-clean and remove Makefile.
10813
10814 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
10815
10816 * buffer.h (struct buffer): New member word_wrap.
10817
10818 * buffer.c (syms_of_buffer): New variables default-word-wrap and
10819 word-wrap.
10820 (init_buffer_once): Initialize them.
10821
10822 * dispextern.h (struct it): Replace bool truncate_lines_p with a
10823 line_wrap enum possessing three possible values.
10824
10825 * termopts.h: Replace truncate_partial_width_windows with
10826 Vtruncate_partial_width_windows.
10827
10828 * dispnew.c (direct_output_for_insert): Avoid direct output when
10829 inserting a space with word wrap on.
10830
10831 * indent.c (compute_motion): Obey integer values of
10832 truncate-partial-width-windows.
10833
10834 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
10835 replacing truncate_partial_width_windows.
10836 (init_iterator): If Vtruncate_partial_width_windows is an integer,
10837 truncate only if the window width is below that integer.
10838 (start_display, resize_mini_window, produce_stretch_glyph)
10839 (display_string, move_it_in_display_line_to): Use line_wrap.
10840 (back_to_previous_visible_line_start, reseat_1): Reset
10841 string_from_display_prop_p.
10842 (display_line): Extend default face to end of line when wrapping.
10843
10844 2008-06-24 Kim F. Storm <storm@cua.dk>
10845
10846 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
10847 to wrap continued lines at word boundaries.
10848
10849 2008-06-24 Jason Rumney <jasonr@gnu.org>
10850
10851 * font.c (Ffont_face_attributes): Multiply pixel size before point
10852 conversion to avoid multiplying rounding error.
10853
10854 2008-06-23 Jason Rumney <jasonr@gnu.org>
10855
10856 * w32term.c (x_draw_glyph_string_background)
10857 (x_draw_glyph_string): Remove old bdf font code.
10858
10859 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
10860
10861 2008-06-22 Kenichi Handa <handa@m17n.org>
10862
10863 * font.c (font_find_for_lface): Try the adstyle specified in
10864 the property of LFACE_FONT of LFACE (if any).
10865
10866 2008-06-21 Seiji Zenitani <zenitani@mac.com>
10867 Ryo Yoshitake <ryo@shiftmode.net>
10868
10869 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
10870
10871 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
10872
10873 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
10874 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
10875 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
10876 (witness-emacs): Remove.
10877 (lisp, shortlisp): Move loaddefs.el earlier.
10878 (mostlyclean): Forget about witness-emacs.
10879
10880 2008-06-22 Glenn Morris <rgm@gnu.org>
10881
10882 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
10883 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
10884
10885 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10886
10887 * Makefile.in (PRECOMP): Remove.
10888 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
10889 (witness-emacs): Run `compile-first'.
10890 (.el.elc): Use the new compile-onefile target.
10891
10892 2008-06-21 Kenichi Handa <handa@m17n.org>
10893
10894 * xftfont.c (xftfont_open): Handle QCembolden only when
10895 FC_EMBOLDEN is defined.
10896
10897 2008-06-21 Andreas Schwab <schwab@suse.de>
10898
10899 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
10900 (.el.elc): Likewise.
10901
10902 2008-06-21 Miles Bader <miles@gnu.org>
10903
10904 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
10905 build dir, not the lisp source dir.
10906
10907 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
10908
10909 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
10910 (bootstrapclean): Remove.
10911 (.el.elc): New rule.
10912 (PRECOMP): New var.
10913 (../lisp/subdirs.el): Remove.
10914 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
10915 (witness-emacs): New target.
10916 (mostlyclean): Remove witness-emacs as well.
10917 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
10918 Add witness-emacs dependency.
10919
10920 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
10921
10922 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
10923 defined by the font.
10924
10925 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10926
10927 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
10928 (bootstrap-clean): New target that keeps TAGS around.
10929 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
10930 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
10931
10932 2008-06-20 Jason Rumney <jasonr@gnu.org>
10933
10934 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
10935 Remove obsolete font code.
10936
10937 * w32font.c (font_matches_spec): Use csb bitfield from font signature
10938 to determine language support.
10939
10940 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10941
10942 * sysdep.c (cfsetspeed): New fun extracted from the code.
10943 (cfmakeraw): Move before first use.
10944
10945 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
10946
10947 * sysdep.c (cfmakeraw): Provide fallback implementation.
10948 (serial_configure): Provide fallback implementation of cfsetspeed.
10949
10950 2008-06-20 Kenichi Handa <handa@m17n.org>
10951
10952 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
10953 the pattern.
10954
10955 * fontset.c (fontset_from_font): Copy font_spec before changing
10956 the elements.
10957
10958 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
10959
10960 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
10961
10962 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
10963 for explicit `font' parameters.
10964
10965 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
10966
10967 2008-06-19 Kenichi Handa <handa@m17n.org>
10968
10969 * frame.c: Include <ctype.h>.
10970 (x_set_font_backend): Allow spacing characters in the X resource
10971 for FontBackend.
10972
10973 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
10974
10975 * w32fns.c, xfns.c (Qfont_param): New var.
10976 (syms_of_w32fns): Initialize it.
10977 (x_default_font_parameter): Record explicit `font' into
10978 `font-parameter'.
10979
10980 2008-06-18 Kenichi Handa <handa@m17n.org>
10981
10982 * font.c (font_parse_xlfd): Fix previous change.
10983 (font_parse_fcname): Don't use :fc-unknown-spec.
10984 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
10985 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
10986 (font_add_log): Prepend the driver name to the resulting fonts.
10987
10988 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
10989 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
10990 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
10991
10992 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
10993 (QCembolden): New variables.
10994 (syms_of_xftfont): DEFSYM them.
10995 (xftfont_open): Call XftFontMatch. Don't trust the result of
10996 XftTextExtents8 if the pixel_size is less than 5.
10997
10998 2008-06-18 Andreas Schwab <schwab@suse.de>
10999
11000 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11001 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11002
11003 2008-06-18 Jason Rumney <jasonr@gnu.org>
11004
11005 * w32font.c (w32font_list, w32font_match): Add logging.
11006
11007 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11008
11009 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
11010
11011 * font.c (font_parse_fcname): Store divider characters for
11012 unknown-spec list. For known key symbols, intern using correct
11013 symbol name.
11014
11015 2008-06-17 Kenichi Handa <handa@m17n.org>
11016
11017 * xfaces.c (realize_default_face): If the frame is not on window
11018 system, set the fontset of face to nil.
11019
11020 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11021
11022 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11023
11024 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11025
11026 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11027 (build_font_name_from_vector): Delete externs.
11028
11029 * xfaces.c (struct font_name): Don't declare.
11030
11031 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11032
11033 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11034
11035 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11036
11037 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11038
11039 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11040
11041 * font.c (Ffont_spec): Fix usage in docstring.
11042 (Ffont_face_attributes): Doc fix.
11043
11044 2008-06-16 Andreas Schwab <schwab@suse.de>
11045
11046 * font.c (Ffont_face_attributes): Fix definition.
11047
11048 2008-06-16 Jason Rumney <jasonr@gnu.org>
11049
11050 * font.h (font_style_symbolic_from_value): Remove.
11051
11052 * font.c (font_style_symbolic_from_value): Remove.
11053 (font_style_symbolic): Revert to pre 2008-06-13 version.
11054
11055 * w32font.c (w32_to_fc_weight): New function.
11056 (w32font_full_name, logfont_to_fcname): Use it.
11057
11058 2008-06-16 Kenichi Handa <handa@m17n.org>
11059
11060 * font.c (font_check_object): Delete it.
11061 (font_clear_cache): Check if a font-object is alive.
11062 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11063 font-object to nil.
11064 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11065 (font_at): Don't call font_check_object.
11066 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11067
11068 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11069
11070 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11071
11072 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11073
11074 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11075
11076 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
11077
11078 * font.c (font_parse_fcname): Only one decimal point.
11079 (font_unparse_fcname): Handle data in family and foundry indices
11080 as symbols, not strings.
11081 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11082
11083 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11084
11085 * font.h (font_unparse_gtkname): Add prototype.
11086
11087 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11088
11089 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11090
11091 2008-06-15 Andreas Schwab <schwab@suse.de>
11092
11093 * font.c (font_update_drivers): Fix crash when no drivers match.
11094
11095 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11096
11097 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11098 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11099
11100 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11101
11102 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11103
11104 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11105
11106 * process.c (Fserial_process_configure, Fprocess_send_eof):
11107 Use EQ to compare Lisp_Objects.
11108
11109 2008-06-13 Jason Rumney <jasonr@gnu.org>
11110
11111 * w32fns.c (Fw32_select_font): Remove old font API function.
11112
11113 * w32font.c (logfont_to_fcname): New function.
11114 (Fx_select_font): New font dialog function compatible with
11115 GTK/fontconfig version.
11116
11117 * font.c (font_style_symbolic_from_value): New function.
11118 (font_style_symbolic): Use it.
11119
11120 * font.h (font_style_symbolic_from_value): Declare new function.
11121
11122 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
11123
11124 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11125 <font-width-table>: Fix typos in docstrings.
11126
11127 2008-06-13 Daniel Engeler <engeler@gmail.com>
11128
11129 These changes add serial port access.
11130 * process.c: Add HAVE_SERIAL.
11131 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11132 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11133 (list_processes_1, select_wrapper, Fstop_process)
11134 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11135 (status_notify): Modify to handle serial processes.
11136 [HAVE_SERIAL] (Fserial_process_configure)
11137 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11138 New functions.
11139 * process.h (struct Lisp_Process): Add `type'.
11140 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11141 New functions.
11142 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11143 serial ports.
11144 (serial_open, serial_configure): New functions.
11145 * w32.h: Add FILE_SERIAL.
11146 (struct _child_process): Add ovl_read, ovl_write.
11147
11148 2008-06-13 Kenichi Handa <handa@m17n.org>
11149
11150 * dispextern.h (enum lface_attribute_index): New member
11151 LFACE_FOUNDRY_INDEX.
11152
11153 * font.c (font_score): Delete arg alternate_families. Check only
11154 weight, slant, width, and size. Ignore the difference of alias
11155 style symbols.
11156 (font_sort_entites): Adjust for the above change. Reflect the
11157 order of font-driver to scores.
11158 (font_list_entities): Don't check alternate_familes here.
11159 (font_clear_prop): Handle foundry.
11160 (font_update_lface): Don't parse "foundry-family" form here.
11161 Handle FONT_FOUNDRY_INDEX.
11162 (font_find_for_lface): Likewise. Handle alternate families here.
11163 If registry is nil, try iso8859-1 and ascii-0.
11164 (font_open_for_lface): Pay attention to size in ENTITY.
11165 (font_open_by_name): Simplify by calling font_load_for_lface.
11166 (free_font_driver_list): Delete it.
11167 (font_update_drivers): Preserve the order of backends.
11168 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11169 of font_score and font_sort_entites.
11170 (font_update_sort_order): Likewise.
11171
11172 * xfaces.c (LFACE_FOUNDRY): New macro.
11173 (check_lface_attrs): Check foundry.
11174 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11175 (merge_face_vectors): Check foundry.
11176 (merge_face_ref): Likewise.
11177 (Finternal_set_lisp_face_attribute): Likewise.
11178 (x_update_menu_appearance): Likewise.
11179 (Finternal_get_lisp_face_attribute): Likewise.
11180 (lface_hash): Likewise.
11181 (lface_same_font_attributes_p): Likewise.
11182 (x_supports_face_attributes_p): Likewise.
11183 (tty_supports_face_attributes_p): Likewise.
11184 (Finternal_set_alternative_font_family_alist): Intern strings.
11185 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11186 (realize_default_face): Set LFACE_FOUNDRY (lface).
11187
11188 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11189 font-driver at first.
11190
11191 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11192
11193 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11194
11195 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11196
11197 2008-06-12 Jim Meyering <meyering@redhat.com>
11198
11199 Make unexec_free handle NULL the same way free does.
11200 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11201
11202 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11203
11204 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11205 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11206 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11207 (WEAK_ALIAS): Simplify.
11208 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11209 when searching a unibyte buffer.
11210
11211 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
11212
11213 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11214
11215 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
11216
11217 * w32font.c: Include ctype.h.
11218
11219 2008-06-11 Jason Rumney <jasonr@gnu.org>
11220
11221 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11222 misreported as space.
11223 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11224 as aliases for registry iso10646-1.
11225
11226 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11227
11228 * buffer.c (clone_per_buffer_values): Skip `name'.
11229
11230 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
11231
11232 * font.c (font_parse_fcname): Fix last change; accept decimal
11233 points in font size.
11234
11235 2008-06-10 Jason Rumney <jasonr@gnu.org>
11236
11237 * w32uniscribe.c (add_opentype_font_name_to_list):
11238 Skip non unicode fonts.
11239
11240 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11241
11242 * xfns.c (Fx_font_dialog): New function.
11243
11244 * gtkutil.c (xg_dialog_response_cb): Rename from
11245 xg_file_response_callback.
11246 (pop_down_dialog): Rename from pop_down_file_dialog.
11247 (xg_get_file_name): Callers changed.
11248 (xg_get_font_name): New function.
11249
11250 * gtkutil.h (xg_get_font_name): Insert prototype.
11251
11252 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11253
11254 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11255 x_underline_minimum_display_offset.
11256 (syms_of_xdisp): Declare it here rather than in xterm.c.
11257 * dispextern.h (underline_minimum_offset): Declare it.
11258 * w32term.c (x_draw_glyph_string): Use it.
11259 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11260 (syms_of_xterm): Don't declare it any more.
11261 (x_draw_glyph_string): Adjust to the new name.
11262
11263 2008-06-10 David De La Harpe Golden <david@harpegolden.net>
11264
11265 * xterm.c (x_underline_minimum_display_offset): New var.
11266 (x_draw_glyph_string): Use it.
11267 (syms_of_xterm): Declare it.
11268
11269 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11270
11271 * font.c (font_parse_fcname): Accept GTK-style font names too.
11272
11273 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11274
11275 * dired.c (file_name_completion): Don't return t if the match is exact
11276 but with different capitalization.
11277 * minibuf.c (Ftry_completion): Simplify.
11278
11279 * window.c (Vwindow_point_insertion_type): New var.
11280 (set_window_buffer): Use it.
11281 (syms_of_window): Init and export it to Lisp.
11282
11283 2008-06-10 Kenichi Handa <handa@m17n.org>
11284
11285 * font.h (font_intern_prop): Prototype adjusted.
11286
11287 * font.c (font_intern_prop): New arg force_symbol.
11288 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11289 Adjust for the change of font_intern_prop.
11290
11291 * ftfont.c (ftfont_pattern_entity):
11292 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11293 (w32_registry):
11294 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11295 the change of font_intern_prop.
11296
11297 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
11298
11299 * w32menu.c (digest_single_submenu): Declare extern.
11300
11301 2008-06-09 Jason Rumney <jasonr@gnu.org>
11302
11303 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11304
11305 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11306 (parse_single_submenu): Remove.
11307 (digest_single_submenu): Remove.
11308 (syms_of_w32menu): Don't initialise variables that have moved
11309 to menu.c.
11310 (set_frame_menubar): Sync with version in xmenu.c.
11311 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11312
11313 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11314 Make static again.
11315
11316 2008-06-09 Jason Rumney <jasonr@gnu.org>
11317
11318 Changes to w32 files related to the move of common menu code
11319 to menu.c on 2008-06-08 by Chong Yidong.
11320
11321 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11322 defs to w32gui.h.
11323 (single_keymap_panes, push_menu_item, push_menu_pane):
11324 Make globally visible.
11325
11326 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11327 (local_free, malloc_widget_value, free_widget_value)
11328 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11329 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11330 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11331 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11332 (menu_items, menu_items_allocated, menu_items_used)
11333 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11334 (init_menu_items, finish_menu_items, discard_menu_items)
11335 (grow_menu_items, push_submenu_start, push_submenu_end)
11336 (push_left_right_boundary, push_menu_pane, push_menu_item)
11337 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11338 (free_menubar_widget_tree_value, parse_single_submenu)
11339 (update_submenu_strings): Remove functions.
11340 (xmalloc_widget_value): Remove and declare extern.
11341
11342 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11343 (OBJ1): Build it.
11344
11345 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11346 (local_heap, local_alloc, local_free, malloc_widget_value)
11347 (free_widget_value): Define here.
11348
11349 2008-06-09 Kenichi Handa <handa@m17n.org>
11350
11351 * font.h (Qascii_0): Extern it.
11352
11353 * font.c (Qascii_0): New variable.
11354 (syms_of_font): DEFSYM it.
11355 (font_open_by_name): If the registry "iso8859-1" fails, try also
11356 "ascii-0".
11357
11358 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11359
11360 2008-06-08 Kenichi Handa <handa@m17n.org>
11361
11362 * .gdbinit (xfont): New command.
11363
11364 2008-06-08 Andreas Schwab <schwab@suse.de>
11365
11366 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11367 * Makefile.in (menu.o): Update dependencies.
11368
11369 * Makefile.in (obj): Always add menu.o.
11370 * emacs.c (main): Always call syms_of_menu.
11371 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11372
11373 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
11374
11375 * Makefile.in: Compile menu.c.
11376
11377 * lisp.h: Declare syms_of_menu.
11378
11379 * emacs.c (main): Call syms_of_menu.
11380
11381 * keyboard.h: Relocate platform-independent menu definitions from
11382 xmenu.c.
11383
11384 * menu.c: New file. Relocate platform-independent menu
11385 definitions from xmenu.c. Suggested by Adrian Robert.
11386
11387 * xmenu.c: Remove platform-independent menu definitions.
11388 (menu_items menu_items_inuse, menu_items_allocated)
11389 (menu_items_used, menu_items_n_panes)
11390 (menu_items_submenu_depth): Move to keyboard.h.
11391 (init_menu_items, finish_menu_items, unuse_menu_items)
11392 (discard_menu_items, restore_menu_items, save_menu_items)
11393 (grow_menu_items, push_submenu_start, push_submenu_end)
11394 (push_left_right_boundary, push_menu_pane, push_menu_item)
11395 (keymap_panes, single_keymap_panes, single_menu_item)
11396 (list_of_panes, list_of_items, find_and_call_menu_selection)
11397 (xmalloc_widget_value, free_menubar_widget_value_tree)
11398 (parse_single_submenu, digest_single_submenu)
11399 (update_submenu_strings): Move to menu.c.
11400
11401 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11402
11403 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11404
11405 2008-06-06 Miles Bader <miles@gnu.org>
11406
11407 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11408 face, not frame default.
11409
11410 2008-06-05 Martin Rudalics <rudalics@gmx.at>
11411
11412 * window.c (pop_up_windows, pop_up_frames)
11413 (display_buffer_reuse_frames, Vpop_up_frame_function)
11414 (Vdisplay_buffer_function, Veven_window_heights)
11415 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11416 (Vspecial_display_function, Vsame_window_buffer_names)
11417 (Vsame_window_regexps, split_height_threshold)
11418 (Vsplit_window_preferred_function): Move those vars to window.el.
11419 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11420 (Fdisplay_buffer): Move those functions to window.el.
11421 (syms_of_window): Remove corresponding declarations.
11422 (display_buffer): New function.
11423 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11424 * dispnew.c (Flast_nonminibuf_frame): New function.
11425 * buffer.c (Fpop_to_buffer): Move to window.el.
11426
11427 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11428
11429 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11430
11431 2008-06-05 Kenichi Handa <handa@m17n.org>
11432
11433 * coding.c (detect_coding): Fix previous change.
11434 (detect_coding_system): Likewise.
11435
11436 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11437
11438 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11439
11440 * keymap.c (Vminibuffer_local_filename_must_match_map):
11441 Rename from Vminibuffer_local_must_match_filename_map.
11442 (syms_of_keymap):
11443 * minibuf.c (Fcompleting_read): Adjust accordingly.
11444 * commands.h: Rename declaration as well.
11445
11446 2008-06-05 Kenichi Handa <handa@m17n.org>
11447
11448 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11449 family name.
11450 (Ffont_put): Likewise.
11451
11452 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11453 current font-spec.
11454
11455 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11456 is unspecified.
11457
11458 * xfaces.c (realize_x_face): If the font-related face attributes
11459 are the same as those of default face, realize a new fontset from
11460 default->fontset.
11461 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11462
11463 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11464
11465 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11466 (move_it_in_display_line): New wrapper.
11467
11468 * window.c (window_scroll_pixel_based_preserve_x)
11469 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11470 (window_scroll_pixel_based, window_scroll_line_based):
11471 Use them to preserve column positions.
11472 (syms_of_window): Initialize them.
11473
11474 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11475 (HPOS . VPOS) pair.
11476
11477 * dispextern.h (move_it_in_display_line): Declare.
11478
11479 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
11480
11481 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11482 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11483 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11484
11485 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
11486
11487 * window.c (Fset_window_parameter): Doc fix.
11488 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11489
11490 2008-06-04 Joakim Verona <joakim@verona.se>
11491
11492 * window.h (struct window): Add new member window_parameters.
11493
11494 * window.c (Fwindow_parameters, Fwindow_parameter)
11495 (Fset_window_parameter): New defuns.
11496 (syms_of_window): Defsubr the new defuns.
11497 (make_window): Initialize window_parameters to nil.
11498
11499 2008-06-04 John Paul Wallington <jpw@pobox.com>
11500
11501 * eval.c (Fdefmacro): Doc fix.
11502
11503 2008-06-04 Kenichi Handa <handa@m17n.org>
11504
11505 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11506 Be sure to call setup_coding_system when we find a proper coding system.
11507 (detect_coding_system): Fix handling of coding->head_ascii.
11508
11509 2008-06-03 Andreas Schwab <schwab@suse.de>
11510
11511 * font.c (font_prop_validate_spacing): Fix last change.
11512
11513 2008-06-03 Kenichi Handa <handa@m17n.org>
11514
11515 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11516 (font_parse_fcname): Fix handling of unknown key.
11517
11518 * xfont.c (xfont_list): Try an alias.
11519
11520 * charset.c (char_charset): Return NULL if the arg charset_list is
11521 specified and C doesn't belong to any of them.
11522
11523 2008-06-02 Chip Coldwell <coldwell@redhat.com>
11524
11525 * font.c (font_pixel_size): Don't take cdr of an integer.
11526
11527 2008-06-02 Jim Meyering <meyering@redhat.com>
11528
11529 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11530 * alloc.c (xfree): Return right away for a NULL arg.
11531 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11532 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11533 * mac.c (create_apple_event_from_event_ref): Likewise.
11534 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11535 Likewise.
11536 * doprnt.c (doprnt1): Likewise.
11537 * frame.c (frame): Likewise.
11538 * keyboard.c (wipe_kboard): Likewise.
11539 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11540 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11541 * term.c (tty_default_color_capabilities, maybe_fatal)
11542 (delete_tty): Likewise.
11543 * w16select.c (string): Likewise.
11544 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11545 * w32bdf.c (w32_free_bdf_font): Likewise.
11546 * w32fns.c (w32_unload_font): Likewise.
11547 * w32font.c (w32font_close): Likewise.
11548 * window.c (size_window): Likewise.
11549 * xselect.c (receive_incremental_selection): Likewise.
11550 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11551 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11552 * w32.c (stat): Likewise.
11553
11554 Remove useless if-before-free tests.
11555 * editfns.c (Fset_time_zone_rule): Likewise.
11556 * lread.c (nosuffix): Likewise.
11557 * ralloc.c (get_bloc): Likewise.
11558 * regex.c (reg_free): Likewise.
11559 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11560 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11561 * xsmfns.c (smc_save_yourself_CB): Likewise.
11562
11563 2008-06-02 Kenichi Handa <handa@m17n.org>
11564
11565 * font.c (font_find_for_lface): Handle float font size.
11566 (font_open_for_lface): Likewise.
11567
11568 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11569 comparing the properties.
11570
11571 2008-06-01 Jason Rumney <jasonr@gnu.org>
11572
11573 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11574 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11575 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11576 Don't add empty script list.
11577 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11578
11579 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11580
11581 * Makefile.in (dot, dotdot): Remove, update users.
11582 ".." has been used elsewhere in the file for a long time.
11583 (LIBXT_STATIC): Remove conditional based on unused variable.
11584
11585 2008-06-01 Miles Bader <miles@gnu.org>
11586
11587 * xfaces.c (Vface_remapping_alist): New variable.
11588 (syms_of_xfaces): Initialize it.
11589 (enum named_merge_point_kind): New type.
11590 (struct named_merge_point): Add `named_merge_point_kind' field.
11591 (push_named_merge_point): Make cycle detection respect different
11592 named-merge-point kinds.
11593 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11594 Remove face-name alias resolution.
11595 (lface_from_face_name): New definition using
11596 `lface_from_face_name_no_resolve'.
11597 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11598 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11599 (get_lface_attributes): New definition that layers face-remapping on
11600 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11601 (lookup_basic_face): New function.
11602 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11603 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11604 `get_lface_attributes'.
11605 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11606 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11607 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11608
11609 * xdisp.c (init_iterator): Pass base_face_id through
11610 `lookup_basic_face' when we actually use it as a face-id.
11611 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11612 DEFAULT_FACE_ID.
11613
11614 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11615 lookup the initial face-id.
11616
11617 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11618
11619 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
11620
11621 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11622 (Fremove_text_properties): Fix typos in docstrings.
11623
11624 2008-05-31 Kenichi Handa <handa@m17n.org>
11625
11626 * font.c (font_list_entities): Fix the car part of data to be
11627 stored in the cache.
11628
11629 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11630
11631 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11632
11633 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11634 Add a `test' argument so another predicate than `equal' can be used.
11635 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11636 (map_char_table): Remove unused vars `c' and `i'.
11637 * lisp.h (Foptimize_char_table): Adjust declaration.
11638 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11639
11640 2008-05-30 Kenichi Handa <handa@m17n.org>
11641
11642 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11643 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11644 defined.
11645
11646 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11647
11648 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11649 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11650 frame-local settings for the same variable.
11651
11652 2008-05-30 Kenichi Handa <handa@m17n.org>
11653
11654 * fontset.c (Ffont_info): Move to font.c.
11655 (syms_of_fontset): Delete defsubr of Sfont_info.
11656
11657 * font.c (font_style_to_value, font_score): Delete casting of the
11658 args to xstcasecmp.
11659 (register_font_driver): Increment num_font_drivers only when
11660 registering the driver globally.
11661 (Ffont_info): Move from fontset.c. Handle a font object too.
11662 (syms_of_font): Defsubr Sfont_info.
11663
11664 2008-05-29 Kenichi Handa <handa@m17n.org>
11665
11666 * coding.h (enum define_coding_utf8_arg_index): New enum.
11667 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11668 coding_attr_utf_bom.
11669 (enum utf_bom_type): Rename from utf_16_bom_type.
11670 (struct utf_16_spec): Adjust for the above change.
11671 (struct coding_system): Add utf_8_bom in `spec' union.
11672
11673 * coding.c (CODING_UTF_8_BOM): New macro.
11674 (enum coding_category): Delete coding_category_utf_8, add
11675 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11676 coding_category_utf_8_sig.
11677 (CATEGORY_MASK_UTF_8): Delete it.
11678 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11679 (CATEGORY_MASK_UTF_8_SIG): New macros.
11680 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11681 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11682 CATEGORY_MASK_UTF_8_SIG.
11683 (CATEGORY_MASK_UTF_8): New macro.
11684 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11685 (detect_coding_utf_8): Check BOM.
11686 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11687 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11688 (encode_coding_utf_16): Likewise.
11689 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11690 (detect_coding, detect_coding_system): Handle utf-8-auto.
11691 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11692 (syms_of_coding): Fix setting up of Vcoding_category_table.
11693
11694 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11695
11696 * process.c (Faccept_process_output): If `millisec' is non-nil,
11697 `seconds' default to 0.
11698 (wait_reading_process_output): Also return non-nil if we read output
11699 from a non-running process.
11700
11701 2008-05-29 Jason Rumney <jasonr@gnu.org>
11702
11703 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11704 `raster' specified.
11705 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11706 in the uniscribe backend, but disallow any font that has no
11707 unicode subrange support.
11708
11709 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
11710
11711 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11712 Fix typos in docstrings.
11713
11714 2008-05-29 Kenichi Handa <handa@m17n.org>
11715
11716 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11717 (Fx_family_fonts): Set frame correctly.
11718
11719 2008-05-28 Jason Rumney <jasonr@gnu.org>
11720
11721 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11722
11723 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11724
11725 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11726 calling build_annotations.
11727
11728 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
11729
11730 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11731 (Fencode_coding_string):
11732 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11733 <latin-extra-code-table>: Fix typos in docstrings.
11734 (syms_of_coding) <coding-system-alist>: Doc fix.
11735 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11736
11737 2008-05-28 Kenichi Handa <handa@m17n.org>
11738
11739 * fontset.c (Ffont_info): Don't call font_close_object.
11740
11741 * font.c (font_parse_family_registry): Use Ffont_put to validate
11742 foundry and family.
11743 (font_delete_unmatched): Don't check spacing.
11744 (font_list_entities): Add spacing to the spec to list fonts.
11745
11746 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11747 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11748
11749 * coding.c (encode_coding_raw_text): Fix previous change.
11750 (encode_coding_object): When the dst_object is a buffer and is
11751 different from src_object, move gap to PT.
11752
11753 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11754
11755 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11756
11757 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11758
11759 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11760 all branches. Compute it differently.
11761
11762 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11763
11764 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
11765
11766 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11767 into "else if () ... else ...".
11768
11769 2008-05-27 Jason Rumney <jasonr@gnu.org>
11770
11771 * w32font.c (w32font_open_internal): Determine if glyph indices
11772 are likely to work here.
11773
11774 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11775
11776 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11777 draw overlap glyphs with appropriate highlighting.
11778
11779 2008-05-27 Kenichi Handa <handa@m17n.org>
11780
11781 * xfont.c (xfont_open): Fix calculation of font->average_width.
11782
11783 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11784
11785 * casefiddle.c (casify_object): Try to guess better whether the
11786 argument is a byte or a char.
11787
11788 2008-05-26 Andreas Schwab <schwab@suse.de>
11789
11790 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11791 Always send multiples of format size.
11792
11793 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11794
11795 2008-05-26 Jason Rumney <jasonr@gnu.org>
11796
11797 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11798 (compute_metrics): Don't set failure if we just cleared the cache.
11799 (w32_weight_table): Remove unused variable.
11800 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11801 backwards compatibility.
11802
11803 2008-05-25 Kenichi Handa <handa@m17n.org>
11804
11805 * w32term.c (x_draw_glyph_string):
11806 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11807
11808 * xfaces.c: Delete unused function prototypes.
11809 (xstrlwr, font_frame): Delete them.
11810 (clear_face_cache): Delete unused variable.
11811
11812 * xftfont.c (xftfont_open): Delete unused variable.
11813 If underline_thickness is not 1, adjust underline_position.
11814
11815 * ftxfont.c (ftxfont_open): Delete unused variable.
11816
11817 * fontset.c (face_for_char): Optimize for the case of no charset
11818 property.
11819
11820 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
11821 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
11822 (otf_open, font_otf_capability, generate_otf_features)
11823 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
11824 Comment out by surrounding "#if 0" and "#endif" for the moment.
11825 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
11826 (syms_of_font): Codes for accessing above commented out.
11827
11828 2008-05-24 Eli Zaretskii <eliz@gnu.org>
11829
11830 * w32proc.c: Include dispextern.h.
11831
11832 * w32.c: Include dispextern.h.
11833
11834 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
11835
11836 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
11837 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
11838 Fix typos in docstrings.
11839
11840 2008-05-23 Jason Rumney <jasonr@gnu.org>
11841
11842 * xsmfns.c: Remove includes that are already included by config.h.
11843
11844 2008-05-23 Kenichi Handa <handa@m17n.org>
11845
11846 * charset.c (Qemacs, charset_emacs): New variables.
11847 (char_charset): Fix for non-Unicode characters.
11848 (syms_of_charset): Define charset_emacs.
11849
11850 * w32term.c (x_draw_glyph_string): Be sure to update
11851 s->underline_thickness and s->underline_position. Be sure to draw
11852 underline within the current line area.
11853
11854 * xterm.c (x_draw_glyph_string): Be sure to update
11855 s->underline_thickness and s->underline_position. Be sure to draw
11856 underline within the current line area.
11857
11858 * fontset.c: Delete unused variables and add casting for char *
11859 throughout the file.
11860 (fontset_font): Try the fallback fonts of the current fontset
11861 before consulting the default fontset.
11862
11863 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
11864
11865 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
11866
11867 2008-05-22 Jason Rumney <jasonr@gnu.org>
11868
11869 * font.c: Don't include strings.h.
11870
11871 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
11872
11873 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
11874 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
11875 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
11876 to call xstrcasecmp.
11877
11878 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
11879
11880 * fontset.c (fs_query_fontset): Use xstrcasecmp.
11881
11882 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
11883
11884 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
11885
11886 2008-05-22 Kenichi Handa <handa@m17n.org>
11887
11888 * puresize.h (BASE_PURESIZE): Increase to 1220000.
11889
11890 * font.c (font_prop_validate_style): Adjust for the format
11891 change of font_style_table.
11892
11893 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
11894 two args.
11895
11896 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
11897 two args.
11898
11899 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
11900
11901 * minibuf.c (keys_of_minibuf): Delete.
11902 * lisp.h (keys_of_minibuf): Delete.
11903 * emacs.c (main): Don't call keys_of_minibuf.
11904
11905 2008-05-22 Kenichi Handa <handa@m17n.org>
11906
11907 * ftfont.c (ftfont_resolve_generic_family): Rename from
11908 ftfont_list_generic_family. Return a single family for each
11909 generic family.
11910 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
11911 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
11912 Call font_add_log.
11913 (ftfont_match): Call font_add_log.
11914
11915 * font.h (Ffont_xlfd_name): EXFUN adjusted.
11916 (FONT_DEBUG): Define it.
11917 (font_add_log): Extern it.
11918 (font_assert): Rename from xassert.
11919
11920 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
11921 (xfont_list_family): Call font_add_log.
11922 (xfont_match): Likewise.
11923 (memq_no_quit): Delete.
11924
11925 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
11926 call of Ffont_xlfd_name.
11927
11928 * xfaces.c (struct table_entry, slant_table, weight_table)
11929 (swidth_table): Move to font.c.
11930
11931 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
11932 xassert are changed to font_assert. Delete many unused variables.
11933 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
11934 New variables.
11935 (struct table_entry): Move from xfaces.c and modified.
11936 (weight_table, slant_table, width_table): Move from xfaces.c and
11937 contents adjusted for the change of struct table_entry.
11938 (font_style_to_value, font_style_symbolic): Adjust for the
11939 format change of font_style_table.
11940 (font_parse_family_registry): Don't overwrite existing foundry and
11941 family of font_spec.
11942 (font_score): Fix calculation of diff for sizes.
11943 (font_sort_entites): Call font_add_log.
11944 (font_delete_unmatched): Return a newly created list.
11945 (font_list_entities): Fix previous change. Call font_add_log.
11946 (font_matching_entity, font_open_entity, font_close_entity):
11947 Call font_add_log.
11948 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
11949 (Finternal_set_font_style_table): Delete.
11950 (BUILD_STYLE_TABLE): New macro.
11951 (build_style_table): New function.
11952 (Vfont_log, font_log_env_checked): New variables.
11953 (font_add_log): New function.
11954 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
11955 Declare Lisp variables "font-weight-table", "font-slant-table",
11956 "font-width-table", and "font-log". Initialize font_style_table.
11957
11958 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
11959
11960 * xterm.c (x_set_frame_alpha): Move declarations before statements.
11961
11962 2008-05-21 Seiji Zenitani <zenitani@mac.com>
11963 Ryo Yoshitake <ryo@shiftmode.net>
11964
11965 * frame.c (Qalpha): Add a new frame parameter `alpha'.
11966 (Vframe_alpha_lower_limit): New variable.
11967 (x_set_alpha): New function.
11968
11969 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
11970
11971 * xfns.c (x-create-frame, Qalpha):
11972 Initialize the frame parameter `alpha'.
11973 * xterm.c (OPAQUE, OPACITY): New.
11974 (x_set_frame_alpha): New function.
11975 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
11976
11977 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
11978 * w32fns.c (w32_frame_parm_handlers): Likewise.
11979
11980 2008-05-20 Jason Rumney <jasonr@gnu.org>
11981
11982 * w32font.c (add_font_entity_to_list): Don't add non-opentype
11983 truetype fonts to opentype list.
11984
11985 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
11986
11987 * fontset.c (Ffontset_info): Doc fix.
11988 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
11989 <ignore-relative-composition>: Fix typos in docstrings.
11990
11991 * font.c (syms-of-font) <font-encoding-alist>:
11992 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
11993 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
11994 (Ffont_otf_alternates): Doc fixes.
11995
11996 2008-05-20 Kenichi Handa <handa@m17n.org>
11997
11998 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
11999 font.h through out the file.
12000 (FONT_DRIVERS): Rename from FONTOBJ.
12001 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12002 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12003
12004 * emacs.c (main): Call syms_of_font unconditionally.
12005
12006 * font.h (find_font_encoding): Extern it.
12007
12008 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12009 fontset.c.
12010 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
12011 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12012 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12013 only when HAVE_WINDOW_SYSTEM is defined.
12014 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12015 when HAVE_WINDOW_SYSTEM is defined.
12016
12017 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12018 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12019
12020 * xfaces.c: Include font.h unconditionally.
12021 (merge_face_ref, merge_face_vectors)
12022 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12023
12024 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12025
12026 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12027 indirect_variable.
12028 * eval.c (lisp_indirect_variable): New fun.
12029 (Fuser_variable_p): Use it.
12030
12031 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12032
12033 * lisp.h (indirect_variable):
12034 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12035 Use Lisp_Symbol pointers rather than Lisp_Object.
12036 Adjust callers.
12037 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12038 To this end, change calling-convention.
12039
12040 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12041 if some non-hidden buffers are selected by string&pred.
12042
12043 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
12044
12045 * process.c (wait_reading_process_output): Always check status
12046 when in batch mode.
12047
12048 2008-05-19 Kenichi Handa <handa@m17n.org>
12049
12050 * font.c (font_list_entities): Fix handling of cache.
12051 (font_matching_entity): Likewise.
12052
12053 * ftfont.c (cs_iso8859_1): Delete.
12054 (ft_face_cache): New variable.
12055 (struct ftfont_info): New member fc_charset_idx.
12056 (ftfont_build_basic_charsets): Delete.
12057 (fc_charset_table): New variable.
12058 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12059 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12060 Callers changed.
12061 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12062 (ftfont_spec_pattern): New argument fc_charset_idx.
12063 Check registry more rigidly. Change callers.
12064 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12065 change of :font-entity property of the font.
12066
12067 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12068 property of the font.
12069
12070 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
12071
12072 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12073 (Funencodable_char_position, Fcheck_coding_systems_region)
12074 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12075 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12076 (Ffind_operation_coding_system, Fset_coding_system_priority)
12077 (Fcoding_system_eol_type): Doc fixes.
12078
12079 2008-05-17 Glenn Morris <rgm@gnu.org>
12080
12081 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12082
12083 2008-05-16 Eli Zaretskii <eliz@gnu.org>
12084
12085 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12086 and st_gid.
12087
12088 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12089 HAVE_WINDOW_SYSTEM is not defined.
12090
12091 * xfaces.c (merge_face_ref, merge_face_vectors)
12092 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12093 HAVE_WINDOW_SYSTEM is defined.
12094 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12095
12096 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12097
12098 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12099
12100 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12101
12102 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12103
12104 2008-05-15 Kenichi Handa <handa@m17n.org>
12105
12106 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12107 preference.
12108
12109 2008-05-15 Glenn Morris <rgm@gnu.org>
12110
12111 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12112
12113 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
12114
12115 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12116 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12117
12118 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12119
12120 2008-05-15 Kenichi Handa <handa@m17n.org>
12121
12122 * ftfont.c (ftfont_list): Downcase family name to check generic
12123 families.
12124
12125 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12126 font-spec for QCfont value.
12127
12128 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12129 buffer. Check the return value of it.
12130
12131 2008-05-14 Jason Rumney <jasonr@gnu.org>
12132
12133 * w32term.c (w32_get_glyph_overhangs): Remove.
12134 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12135
12136 2008-05-14 Kenichi Handa <handa@m17n.org>
12137
12138 * font.c (font_prop_validate): Make nil a valid value.
12139 (font_clear_cache): Check if the cached vector of entities is nil
12140 or not.
12141
12142 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12143
12144 * emacs.c (main_thread): Conditionalize on
12145 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12146 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12147
12148 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12149 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12150 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12151
12152 2008-05-14 Kenichi Handa <handa@m17n.org>
12153
12154 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12155 has no corresponding coding system.
12156
12157 2008-05-14 Jason Rumney <jasonr@gnu.org>
12158
12159 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12160
12161 * w32font.h (w32font_open_internal): Update declaration.
12162
12163 * w32font.c (w32font_open_internal): Change last argument from
12164 w32font_info struct to font object. Fill in font object from
12165 font_entity. Get Outline metrics if possible. Use them to
12166 calculate underline position and thickness. Use xlfd name as name
12167 property. Don't set codepage.
12168 (w32font_open): Pass font_object to w32font_open_internal. Don't
12169 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12170 (w32font_draw): Use s->font.
12171 (clear_cached_metrics): Don't clear non-existent blocks.
12172
12173 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12174 font was not found.
12175 (x_draw_glyph_string): Use underline position and thickness from font.
12176
12177 * w32uniscribe.c (uniscribe_open): Pass font_object to
12178 w32font_open_internal.
12179
12180 2008-05-14 Kenichi Handa <handa@m17n.org>
12181
12182 These changes are to delete all legacy font-handling codes, and
12183 make Emacs use only font-backends.
12184
12185 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12186 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12187
12188 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12189
12190 * charset.h (Vcharset_non_preferred_head)
12191 (Vcurrent_iso639_language): Extern them.
12192
12193 * charset.c (Vcharset_non_preferred_head): New variable.
12194 (Vcurrent_iso639_language): New variable.
12195 (syms_of_charset): Declare it as a Lisp variable.
12196 (char_charset): Don't check non preferred charsets. As a last
12197 resort, return charset_unicode.
12198 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12199
12200 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12201 conditionals. Don't check enable_font_backend. Delete all codes
12202 used only when USE_FONT_BACKEND is not defined.
12203
12204 * dispextern.h (struct glyph_string): Change type of `font' to
12205 `struct font *'.
12206 (struct glyph_string): New member underline_position and
12207 underline_thickness.
12208 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12209 (struct face): Change type of `font' to `struct font *'. Remove
12210 members `font_name', `font_info_id'.
12211 (per_char_metric, encode_char): Delete externs.
12212 (calc_pixel_width_or_height): Adjust the prototype.
12213
12214 * emacs.c (enable_font_backend): Delete extern.
12215 (main): Don't set enable_font_backend. Don't check the command
12216 line argument "-disable-font-backend".
12217
12218 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12219 (enum font_property_index): New members FONT_DPI_INDEX,
12220 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12221 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12222 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12223 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12224 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12225 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12226 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12227 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12228 (struct font_spec, struct font_entity): New structs.
12229 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12230 (struct font): Many members from old "struct font_info" moved to
12231 here. Members font and entity deleted.
12232 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12233 the new font-related objects.
12234 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12235 (CHECK_FONT_GET_OBJECT): Likewise.
12236 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12237 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12238 (struct font_driver): New members case_sensitive anc check. Type
12239 of the member list and open changed.
12240 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12241 (font_symbolic_width, font_find_object, font_get_spec)
12242 (font_set_lface_from_name): Delete extern.
12243 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12244
12245 * font.c: Include <strings.h>.
12246 (enable_font_backend): Delete it.
12247 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12248 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12249 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12250 (null_string): Delete it.
12251 (null_vector): Make it static.
12252 (font_family_alist): Delete it.
12253 (Qnormal): Extern it.
12254 (QCextra, QClanguage): Delete it.
12255 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12256 (font_make_spec, font_make_entity, font_make_object)
12257 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12258 the string. Callers changed.
12259 (font_pixel_size): Adjusted for the format change of font-related
12260 objects.
12261 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12262 (font_style_to_value, font_style_symbolic): New function.
12263 (build_font_family_alist): Delete it.
12264 (font_registry_charsets): Use Fassoc_string instead of
12265 assq_no_quit.
12266 (font_prop_validate_symbol): Don't return null_string.
12267 (font_prop_validate_style): Adjusted for the change of
12268 style-related values in a font vector.
12269 (font_property_table): Delete entries for QClanguage and
12270 QCantialias, add entries for QCavgwidth.
12271 (get_font_prop_index): Delete the 2nd argument FROM.
12272 (font_prop_validate): Arguments changed.
12273 (font_put_extra): Adjusted for the change of font-related objects.
12274 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12275 (font_parse_fcname, font_unparse_fcname)
12276 (font_prepare_composition): Likewise.
12277 (font_parse_family_registry): Renamed from font_merge_old_spec.
12278 (otf_open): Delete the 1st arg entity.
12279 (font_otf_capability): Adjusted for the above change.
12280 (font_score): New arg alternate_families. Adjusted for the change
12281 of font-related objects.
12282 (font_sort_entites): New arg best_only.
12283 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12284 Delete them.
12285 (font_match_p): Check alternate families.
12286 (font_find_object): Delete it.
12287 (font_check_object): New function.
12288 (font_clear_cache): Adjusted for the change of font-related objects.
12289 (font_delete_unmatched): New arg.
12290 (font_list_entities): Call font_driver->list with a spec that
12291 doesn't specify style-related properties.
12292 (font_matching_entity): Arguments changed. Caller changed.
12293 (font_open_entity): Adjusted for the change of font-related objects.
12294 (font_close_object, font_has_char, font_encode_char)
12295 (font_get_name, font_get_spec): Likewise.
12296 (font_spec_from_name, font_clear_prop, font_update_lface):
12297 New functions.
12298 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12299 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12300 (font_at): Adjusted for the change of font-related objects.
12301 (font_range): New function.
12302 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12303 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12304 (Fcopy_font_spec, Fmerge_font_spec): New function.
12305 (Ffont_family_list): Renamed from list-families.
12306 (Finternal_set_font_style_table): Arguments changed.
12307 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12308 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12309 change of font-related objects.
12310 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12311
12312 * fontset.h (struct font_info): Delete it. Most members go to
12313 struct font.
12314 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12315 (enum FONT_SPEC_INDEX): Delete it.
12316 (font_info, list_fonts_func, load_font_func, query_font_func)
12317 (set_frame_fontset_func, find_ccl_program_func)
12318 (get_font_repertory_func, new_fontset_from_font_name): Delete
12319 externs.
12320 (fontset_from_font_name): Extern it.
12321 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12322 (FONT_INFO_FROM_FACE): Deleted.
12323 (face_for_font): Adjust prototype.
12324
12325 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12326 conditionals. Don't check enable_font_backend. Delete all codes
12327 used only when USE_FONT_BACKEND is not defined.
12328 (get_font_info_func, list_font_func, load_font_func)
12329 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12330 (get_font_repertory_func): Delete them.
12331 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12332 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12333 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12334 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12335 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12336 (fontset_compare_rfontdef): New function.
12337 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12338 rfont-defs by qsort. Adjusted for the change of font-group vector.
12339 (load_font_get_repertory): Deleted.
12340 (fontset_find_font): Use new macros to ref/set elements of
12341 font-def and rfont-def.
12342 (fontset_font): Fix the timing of remembering that no font for C.
12343 (free_face_fontset): Do nothing if the face has no fontset.
12344 (face_suitable_for_char_p): Use new macros to ref/set elements of
12345 rfont-def.
12346 (face_for_char): Likewise. Call face_for_char with font_object.
12347 (fs_load_font): Delete. Delete #pragma surrounding it.
12348 (fs_query_fontset): Use strcasecmp instead of strcmp.
12349 (generate_ascii_font_name): Adjusted for the format change of
12350 font-spec.
12351 (Fset_fontset_font): Likewise. Use new macros to set elements of
12352 font-def.
12353 (Fnew_fontset): Use font_unparse_xlfd to generate
12354 FONTSET_ASCII (fontset).
12355 (new_fontset_from_font_name): Deleted.
12356 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12357 a fontset is already created for the font. FIx updating of
12358 Vfontset_alias_alist.
12359 (fontset_ascii_font): Deleted.
12360 (Ffont_info): Adjusted for the format change of font-spec.
12361 (Finternal_char_font): Likewise.
12362 (Ffontset_info): Likewise.
12363 (syms_of_fontset): Don't check load_font_func.
12364
12365 * fns.c (internal_equal): Handle PREV_FONT.
12366
12367 * frame.h: Delete USE_FONT_BACKEND conditional.
12368
12369 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12370 conditionals. Don't check enable_font_backend. Delete all codes
12371 used only when USE_FONT_BACKEND is not defined.
12372 (x_set_font): Call x_new_font, not x_new_fontset2.
12373 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12374 already set for the frame.
12375
12376 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12377 a font-entity by font_make_entity. Use font_intern_prop instead
12378 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12379 font property. If a font is scalable, set avgwidth property to 0.
12380 Set font-entity property by font_put_extra.
12381 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12382 (ffont_driver): Adjusted for the change of struct font_driver.
12383 (ftfont_spec_pattern): New function.
12384 (ftfont_list): Return a list, not vector.
12385 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12386 (ftfont_list_family): Don't downcase names.
12387 (ftfont_free_entity): Deleted.
12388 (ftfont_open): Return a font-object. Adjusted for the change of
12389 struct font. Get underline_thickness and underline_position from
12390 font property. Don't update dpyinfo->smallest_font_height and
12391 dpyinfo->smallest_char_width.
12392 (ftfont_close): Don't free `struct font'.
12393 (ftfont_has_char): Adjusted for the format change of font-entity.
12394 (ftfont_encode_char, ftfont_text_extents): Likewise.
12395
12396 * ftxfont.c (ftxfont_list): Return a list, not vector.
12397 (ftxfont_open): Return a font-object. Adjusted for the change of
12398 struct font. Get underline_thickness and underline_position from
12399 font property. Don't update dpyinfo->smallest_font_height and
12400 dpyinfo->smallest_char_width.
12401 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12402 (ftxfont_draw): Adjusted for the change of struct font.
12403
12404 * image.c (image_ascent): Don't include "charset.h". Include
12405 "character.h" and "font.h".
12406
12407 * lisp.h (enum pvec_type): New member PREV_FONT.
12408 (Fassoc_string): EXFUN it.
12409
12410 * print.c: Include font.h.
12411 (print_object): Handle font-related objects.
12412
12413 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12414 conditionals. Don't check enable_font_backend. Delete all codes
12415 used only when USE_FONT_BACKEND is not defined.
12416 (handle_auto_composed_prop): Do nothing if it->f is not on a
12417 window system. Check how many following characters can be
12418 displayed by the same font.
12419 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12420 'struct font *'.
12421 (get_char_face_and_encoding): Assign the whole encoding task to
12422 the `encode-char' method of a font driver.
12423 (fill_composite_glyph_string): Adjusted for the change of `struct
12424 face' and `struct glyph_string'.
12425 (fill_glyph_string): Likewise.
12426 (get_per_char_metric): Arguments changed.
12427 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12428 and `struct glyph_string'.
12429 (produce_stretch_glyph, calc_line_height_property)
12430 (x_produce_glyphs): Likewise.
12431
12432 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12433 conditionals. Don't check enable_font_backend. Delete all codes
12434 used only when USE_FONT_BACKEND is not defined. Use
12435 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12436 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12437 (Qp): Extern them.
12438 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12439 Deleted.
12440 (struct font_name): Deleted.
12441 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12442 (compare_fonts_by_sort_order): New function.
12443 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12444 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12445 Deleted.
12446 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12447 compare_fonts_by_sort_order.
12448 (Fx_font_family_list): Call Ffont_family_list.
12449 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12450 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12451 (face_symbolic_slant, face_symbolic_swidth)
12452 (split_font_name_into_vector, build_font_name_from_vector)
12453 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12454 (font_rescale_ratio, split_font_name, build_font_name)
12455 (free_font_names, sort_fonts, x_face_list_fonts)
12456 (face_font_available_p, sorted_font_list, cmp_font_names)
12457 (font_list_1, concat_font_list, font_list, remove_duplicates):
12458 Deleted.
12459 (Fx_list_fonts): Use Ffont_list.
12460 (LFACE_AVGWIDTH): Deleted.
12461 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12462 by FONTP.
12463 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12464 (set_lface_from_font_name): Delete it.
12465 (set_lface_from_font): Renamed from
12466 set_lface_from_font_and_fontset. Caller changed. Don't set
12467 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12468 for face.
12469 (merge_face_vectors): Copy font-spec if necessary.
12470 Clear properties of the font-spec if necessary.
12471 (merge_face_ref): Clear properties of the font-spec if necessary.
12472 (Finternal_set_lisp_face_attribute): Likewise.
12473 (set_font_frame_param): Use font_load_for_lface to load a
12474 font-object, and call Fmodify_frame_parameters with it.
12475 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12476 font name by Ffont_xlfd_name.
12477 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12478 QCslant, and QCwidth.
12479 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12480 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12481 Compare fonts by EQ.
12482 (lookup_non_ascii_face): Deleted.
12483 (face_for_font): The 2nd argument changed.
12484 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12485 Check atomic font properties by case insensitive.
12486 (realize_non_ascii_face): Set face->overstrike correctly.
12487 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12488 (dump_realized_face): Get font name from
12489 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12490
12491 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12492 conditionals. Don't check enable_font_backend. Delete all codes
12493 used only when USE_FONT_BACKEND is not defined.
12494 (xic_create_xfontset): Original code deleted and renamed from
12495 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12496 (x_make_gc): Don't set GCFont in GCs.
12497 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12498 opened by "fixed".
12499 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12500 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12501 get_font_repertory_func.
12502
12503 * xfont.c: Include <stdlib.h> and "ccl.h".
12504 (struct xfont_info): New structure.
12505 (xfont_query_font): Deleted.
12506 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12507 moved from xterm.c.
12508 (xfont_driver): Adjusted for the change of struct font_driver.
12509 (compare_font_names): New function.
12510 (xfont_list_pattern): Sort font names case insensitively. Make
12511 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12512 (xfont_list): Return a list, not vector.
12513 (xfont_match): If the font doesn't have QCname property, generate
12514 a name from the other font properties.
12515 (xfont_open): Return a font-object. Adjusted for the change of
12516 struct font. Get underline_thickness and underline_position from
12517 font property. Don't update dpyinfo->smallest_font_height and
12518 dpyinfo->smallest_char_width.
12519 (xfont_close): Don't free struct font.
12520 (xfont_prepare_face): Adjusted for the change of struct font.
12521 (xfont_done_face): Deleted.
12522 (xfont_has_char): Adjusted for the change of struct font.
12523 (xfont_encode_char, xfont_draw): Likewise.
12524 (xfont_check): New function.
12525
12526 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12527 callback function.
12528 (xftfont_match): Adjusted for the format change of font-entity.
12529 (xftfont_open): Adjusted for the format change of font-entity and
12530 font-object. Adjusted for the change of struct font. Return a
12531 font-object. Don't update dpyinfo->smallest_font_height and
12532 dpyinfo->smallest_char_width.
12533 (xftfont_close): Block input while calling XftFontClose.
12534 (xftfont_prepare_face): Don't block input while calling
12535 xftfont_get_colors. Adjusted for the change of struct font.
12536 (xftfont_shape): Return value of error case fixed.
12537
12538 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12539
12540 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12541 conditionals.
12542 (FONT_WIDTH): Return (f)->max_width.
12543 (struct x_display_info): Delete member `font'.
12544 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12545 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12546 (struct x_output): Change type of `font' to `struct font *'.
12547
12548 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12549 conditionals. Don't check enable_font_backend. Delete all codes
12550 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12551 (x_per_char_metric, x_encode_char): Deleted.
12552 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12553 (x_compute_glyph_string_overhangs): Adjusted for the change of
12554 `struct face'.
12555 (x_draw_glyph_string_foreground)
12556 (x_draw_composite_glyph_string_foreground): Likewise.
12557 (x_draw_glyph_string): Likewise. Use font->underline_position and
12558 font->underline_thickness.
12559 (x_new_font): Renamed from x_new_fontset2.
12560 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12561 (x_check_font): Call `check' method of a font driver.
12562 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12563 (x_query_font, x_get_font_repertory): Deleted.
12564 (x_find_ccl_program): Renamed and moved to xfont.c.
12565 (x_redisplay_interface): Adjusted for the change of `struct
12566 redisplay_interface'.
12567
12568 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12569 conditionals. Don't check enable_font_backend. Delete all codes
12570 used only when USE_FONT_BACKEND is not defined. Surround non-used
12571 code by "#ifdef OLD_FONT" and "endif".
12572 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12573
12574 * w32font.h (struct w32font_info): New member.
12575 (FONT_COMPAT): New macro.
12576 (w32font_open_internal): Prototype adjusted.
12577
12578 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12579 OLD_FONT" and "endif".
12580
12581 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12582 conditionals. Don't check enable_font_backend. Delete all codes
12583 used only when USE_FONT_BACKEND is not defined.
12584 (w32font_open): Return a font-object. Make a font-object by
12585 font_make_object. Adjusted for the change of struct w32font_info.
12586 (w32font_close): Don't free struct font. Adjusted for the change
12587 of struct w32font_info.
12588 (w32font_encode_char, w32font_text_extents, w32font_draw):
12589 Adjusted for the change of struct w32font_info.
12590 (w32font_draw): Likewise.
12591 (w32font_list_internal): Return a list, not vector.
12592 (w32font_open_internal): Change the 4th arg to font-object.
12593 Adjusted for the change of struct w32font_info and font-object format.
12594 (add_font_name_to_list): Don't downcase names.
12595 (w32_enumfont_pattern_entity): Make a font-entity by
12596 font_make_entity. Adjusted for the format change of font-entity.
12597 Use FONT_SET_STYLE to set a style-related font property. If a
12598 font is scalable, set avgwidth property to 0. Set font-entity
12599 property by font_put_extra.
12600 (font_matches_spec): Adjusted for the format change of font-entity.
12601 (w32_weight_table, w32_decode_weight): New variables.
12602 (w32_encode_weight): New function.
12603 (fill_in_logfont): Adjusted for the format change of font-spec.
12604 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12605 weight value.
12606 (w32font_driver): Adjusted for the change of struct font_driver.
12607
12608 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12609 conditionals. Don't check enable_font_backend. Surround non-used
12610 code by "#ifdef OLD_FONT" and "endif".
12611 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12612 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12613
12614 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12615 conditionals. Don't check enable_font_backend. Delete all codes
12616 used only when USE_FONT_BACKEND is not defined. Surround non-used
12617 code by "#ifdef OLD_FONT" and "endif".
12618
12619 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12620 (uniscribe_open): Return value changed to font-object.
12621 Adjusted for the format change of font-object.
12622 (uniscribe_otf_capability): Adjusted for the change of struct font.
12623 (add_opentype_font_name_to_list): Don't downcase names.
12624 (uniscribe_font_driver): Adjusted for the change of struct
12625 font_driver.
12626
12627 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
12628
12629 * dispnew.c (update_frame_1): Check if tty output is still valid
12630 before flushing it.
12631
12632 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12633
12634 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12635 to Gtk+ menus.
12636
12637 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12638
12639 * dired.c (file_name_completion): Tweak the code so as to always do it
12640 in a single pass. Tighten the scope of some variables.
12641
12642 * dired.c (Qdefault_directory): New var.
12643 (file_name_completion): Use it instead of Fexpand_file_name.
12644 (syms_of_dired): Initialize it.
12645
12646 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12647
12648 * fileio.c (double_dollars): Remove dead code.
12649
12650 2008-05-10 Eli Zaretskii <eliz@gnu.org>
12651
12652 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12653 Mention w32-get-true-file-attributes in doc string.
12654
12655 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12656
12657 2008-05-09 Glenn Morris <rgm@gnu.org>
12658
12659 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12660 2008-04-23.
12661
12662 2008-05-09 Eli Zaretskii <eliz@gnu.org>
12663
12664 Support for reporting owner and group of each file on MS-Windows:
12665 * dired.c (stat_uname, stat_gname): New functions, with special
12666 implementation for w32.
12667 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12668
12669 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12670 (dflt_group_name): New static variable.
12671 (dflt_group): Rename from the_group.
12672 (init_user_info): Init dflt_group fields. Get user's group name
12673 from LookupAccountSid.
12674 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12675 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12676 New initialization states.
12677 (globals_of_w32): Initialize them to zero. Initialize the default
12678 group name to "None".
12679 (GetFileSecurity_Name): New global var, the name of the function
12680 to call for GetFileSecurity.
12681 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12682 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12683 (get_file_security, get_security_descriptor_owner)
12684 (get_security_descriptor_group, is_valid_sid)
12685 (get_file_security_desc, get_rid, get_name_and_id)
12686 (get_file_owner_and_group): New functions.
12687 (stat): Use get_file_security_desc and get_file_owner_and_group to
12688 report the owner and primary group of each file. Don't ignore the
12689 high 32 bits of file's size, now that st_size is 64-bit wide.
12690 Fix test when to get true file attributes.
12691 (init_user_info): Use get_rid instead of equivalent inline code.
12692 (fstat): Don't ignore the high 32 bits of file's size.
12693
12694 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
12695
12696 * image.c (png_load): Use correct bit-depth for setting background
12697 color.
12698
12699 2008-05-08 Eli Zaretskii <eliz@gnu.org>
12700
12701 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12702 epa-hook.elc.
12703
12704 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
12705
12706 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12707
12708 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12709
12710 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12711 because the original parameters are in pure storage now.
12712 (mac_window): Remove unused params. Update callers.
12713
12714 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12715
12716 * lread.c (substitute_object_recurse): Use lower-level primitives.
12717 Don't signal errors when traversing sub-char-tables.
12718 Don't loop over all the possible characters when traversing char-tables.
12719
12720 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12721 just like we do in print.c.
12722
12723 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12724
12725 * minibuf.c (Ftry_completion): Remove code left over from when we used
12726 scmp instead of Fcompare_strings.
12727
12728 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
12729
12730 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12731
12732 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12733
12734 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12735 Create bitmap context in native byte order.
12736
12737 * macterm.c (XDrawLine)
12738 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12739 context in native byte order.
12740
12741 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12742
12743 * config.in: Regenerate.
12744
12745 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12746 New definitions for Image I/O support.
12747 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12748 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12749 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12750 (mac_data_provider_release_data, image_load_image_io)
12751 [USE_MAC_IMAGE_IO]: New functions.
12752 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12753 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12754 (init_image_func_pointer) [MAC_OSX]: Remove function.
12755 (image_load_quartz2d) [MAC_OSX]: Check availability of
12756 CGImageCreateWithPNGDataProvider at compile time.
12757 Use lowercase `false' for boolean constant.
12758 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12759 Use image_load_image_io.
12760 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12761 Don't check MyCGImageCreateWithPNGDataProvider.
12762 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12763 Don't call init_image_func_pointer.
12764
12765 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12766
12767 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12768 Make variable non-static.
12769 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12770 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12771
12772 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12773 (RED_FROM_ULONG): Mask off higher bits.
12774 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12775
12776 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12777 Include AvailabilityMacros.h.
12778 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12779 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12780
12781 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12782
12783 * chartab.c (Fset_char_table_range): If range is t, really set all
12784 chars to that value.
12785
12786 2008-05-03 Eli Zaretskii <eliz@gnu.org>
12787
12788 * dired.c (Ffile_attributes): Don't allow the device number become
12789 negative.
12790
12791 2008-05-02 Daiki Ueno <ueno@unixuser.org>
12792
12793 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12794
12795 2008-05-02 Juri Linkov <juri@jurta.org>
12796
12797 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12798 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12799 DEFAULT argument as a list of default values in docstrings.
12800
12801 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
12802
12803 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12804
12805 2008-05-01 Martin Rudalics <rudalics@gmx.at>
12806
12807 * dispnew.c (change_frame_size_1): Preserve small windows when
12808 shrinking frames by calling set_window_height|width with third
12809 arg 2.
12810
12811 * window.h (struct window): Replace field too_small_ok by field
12812 resize_proportionally.
12813
12814 * window.c (make_window): Initialize resize_proportionally.
12815 (enlarge_window): Temporarily set resize_proportionally to make
12816 sure that shrink_windows does scale the window proportionally.
12817 (shrink_windows): When window has resize_proportionally set try
12818 to shrink it proportionally by stealing from other windows.
12819 (struct saved_window, Fset_window_configuration)
12820 (compare_window_configurations): Handle resize_proportionally.
12821 (WINDOW_TOTAL_SIZE): New macro.
12822 (window_min_size, shrink_windows, size_window): Use it.
12823 (check_min_window_sizes): Remove. Invalid values of
12824 window-min-height|width are handled by window_min_size_2 now.
12825 (size_window, Fsplit_window, enlarge_window)
12826 (adjust_window_trailing_edge, grow_mini_window): Don't call
12827 check_min_window_sizes.
12828 (window_min_size_2, window_min_size_1, window_min_size):
12829 New argument safe_p for retrieving "safe" minimum sizes.
12830 (Fdisplay_buffer, Fsplit_window, enlarge_window)
12831 (adjust_window_trailing_edge, grow_mini_window):
12832 Adjust arguments of window_min_size... functions.
12833 (shrink_windows): Argument min_size removed. New argument
12834 safe_p allows shrinking windows to their safe minimum sizes.
12835 Calculate minimum size and decide whether a window shall be
12836 deleted for each window individually.
12837 (size_window): When nodelete_p equals 2, tell shrink_windows to
12838 delete windows only if their new minimum size is no more safe.
12839 (shrink_window_lowest_first): Call window_min_size_1 to make
12840 sure to preserve modeline of bottom-most window when resizing
12841 the minibuffer.
12842 (Fset_window_configuration, Fcurrent_window_configuration)
12843 (compare_window_configurations): Do not handle
12844 window-min-height|width any more.
12845 (syms_of_window): Clarify window-min-height|width doc-strings.
12846
12847 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
12848
12849 * dired.c (file_name_completion): Fix up the encoding/decoding issue
12850 some more. Copy some of the code from Ftry_completions.
12851 Remove special case code that dates back to initial revision when the
12852 slash was only added when necessary and that can't trigger nowadays.
12853
12854 2008-04-27 Kenichi Handa <handa@m17n.org>
12855
12856 * font.c (font_prop_validate): Signal `error' instead of `font'.
12857
12858 2008-04-29 Jason Rumney <jasonr@gnu.org>
12859
12860 * w32fns.c (Fw32_battery_status): New defun.
12861 (syms_of_w32fns): Defsubr it.
12862
12863 2008-04-28 Andreas Schwab <schwab@suse.de>
12864
12865 * dired.c (file_name_completion): Fix another mixing of encoded
12866 and decoded names.
12867
12868 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
12869
12870 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
12871
12872 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
12873
12874 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
12875
12876 2008-04-27 Andreas Schwab <schwab@suse.de>
12877
12878 * dired.c (file_name_completion): Fix inappropriate mixing of
12879 encoded and decoded names.
12880
12881 * xterm.c (XTread_socket): Fix use of uninitialized variable.
12882
12883 * puresize.h (BASE_PURESIZE): Increase to 1200000.
12884
12885 2008-04-26 Eli Zaretskii <eliz@gnu.org>
12886
12887 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
12888 2008-03-31, it's not needed anymore with `struct stat' definition
12889 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
12890 for the same reasons.
12891
12892 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
12893
12894 * m/sparc.h: Additional redefinitions for GNU/Linux.
12895
12896 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12897
12898 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
12899 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
12900 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
12901 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
12902 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12903 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
12904 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12905 Likewise.
12906
12907 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
12908 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
12909 (mac_ax_number_of_characters): Add externs.
12910 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
12911 [USE_MAC_TSM]: Likewise.
12912 (mac_handle_text_input_event) [MAC_OSX]:
12913 Handle kEventTextInputOffsetToPos for no active input area case.
12914 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12915 (mac_handle_document_access_event)
12916 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
12917 (install_application_handler) [MAC_OSX]: Register handlers for
12918 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
12919 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
12920 Register mac_handle_document_access_event.
12921
12922 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
12923 Make functions non-static.
12924
12925 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
12926
12927 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
12928 (read_file_name_completion_ignore_case, insert_default_directory)
12929 (Qdefault_directory): Move to minibuffer.el.
12930 (Fread_file_name): Call the new `read-file-name' instead.
12931
12932 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12933
12934 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
12935 Make function non-static.
12936 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
12937 Remove function.
12938 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12939 Move to mactoolbox.c.
12940 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
12941
12942 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
12943 (mac_rect_make): New macro.
12944
12945 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
12946 instead of float.
12947 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12948 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
12949 (XSetBackground) [USE_CG_DRAWING]: Likewise.
12950 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
12951 CGRectMake.
12952 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
12953 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
12954 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
12955 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12956 instead of WindowRef in argument type.
12957 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
12958 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
12959 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
12960 instead of DISPLAY. All uses changed.
12961 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
12962 (x_calc_absolute_position): Simplify so as not to use
12963 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
12964
12965 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
12966 instead of WindowRef in argument type.
12967 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
12968 [TARGET_API_MAC_CARBON]: Remove externs.
12969 (create_apple_event, mac_event_parameters_to_lisp)
12970 [TARGET_API_MAC_CARBON]: Add externs.
12971
12972 * mactoolbox.c (Vmac_ts_script_language_on_focus)
12973 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
12974 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
12975 is clicked.
12976 (x_activate_menubar): Remove extern for saved_menu_event_location.
12977 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
12978 Move from mac.c.
12979
12980 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12981
12982 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
12983 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
12984
12985 2008-04-23 Jason Rumney <jasonr@gnu.org>
12986
12987 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
12988 attributes only for local files.
12989
12990 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
12991 default to Qlocal.
12992
12993 2008-04-22 Juri Linkov <juri@jurta.org>
12994
12995 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
12996 read-buffer-to-switch instead of using the letter "B".
12997
12998 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
12999
13000 * fileio.c (Qdefault_directory): New variable.
13001 (Fread_file_name): Use it to pass `dir' to the completion functions.
13002
13003 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
13004
13005 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13006
13007 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13008
13009 * keyboard.c (Vpre_help_message): Remove.
13010 (show_help_echo): Remove default C code.
13011
13012 * dired.c (directory_files_internal, file_name_completion):
13013 Only call ENCODE_FILE if the string is indeed decoded.
13014
13015 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13016
13017 * Makefile.in (TOOLKIT_DEFINES): Remove.
13018 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13019
13020 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13021
13022 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13023 (mactoolbox.o): New target.
13024
13025 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13026 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13027
13028 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13029 Use mac_set_frame_window_background instead of XSetWindowBackground.
13030 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13031 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13032 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13033 instead of SetWindowTitleWithCFString.
13034 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13035 Move function to mactoolbox.c.
13036 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13037 Use mac_set_window_modified instead of SetWindowModified.
13038 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13039 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13040 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13041 FrontNonFloatingWindow. Use mac_activate_window instead of
13042 ActivateWindow. Use mac_active_non_floating_window instead of
13043 ActiveNonFloatingWindow.
13044 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13045 Use mac_show_hourglass and mac_hide_hourglass.
13046 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13047 instead of GetGlobalMouse.
13048 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13049 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13050 Use mac_bring_window_to_front instead of BringToFront.
13051 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13052 mactoolbox.c.
13053 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13054 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13055 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13056 mactoolbox.c.
13057
13058 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13059 (XtPointer): Move typedef from macmenu.c.
13060 (enum button_type): Move enum from macmenu.c.
13061 (widget_value): Move typedef from macmenu.c.
13062 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13063 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13064 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13065 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13066 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13067 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13068 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13069 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13070 (Selection): Move typedef from macselect.c.
13071 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13072 macterm.c.
13073 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13074 (mac_is_window_collapsed, mac_bring_window_to_front)
13075 (mac_send_window_behind, mac_hide_window, mac_show_window)
13076 (mac_collapse_window, mac_front_non_floating_window)
13077 (mac_active_non_floating_window, mac_activate_window)
13078 (mac_move_window_structure, mac_move_window, mac_size_window)
13079 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13080
13081 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13082 (enum mac_menu_kind): Move enum to mactoolbox.c.
13083 (min_menu_id): Move variable to mactoolbox.c.
13084 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13085 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13086 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13087 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13088 [TARGET_API_MAC_CARBON]: Likewise.
13089 (XtPointer): Move typedef to macgui.h.
13090 (enum button_type): Move enum to macgui.h.
13091 (widget_value): Move typedef to macgui.h.
13092 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13093 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13094 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13095 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13096 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13097 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13098 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13099 (popup_activated_flag): Make variable non-static.
13100 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13101 (add_menu_item, fill_menu, dispose_menus):
13102 Move functions to mactoolbox.c.
13103 (restore_show_help_function, menu_target_item_handler)
13104 (install_menu_target_item_handler, mac_handle_dialog_event)
13105 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13106 [TARGET_API_MAC_CARBON]: Likewise.
13107 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13108 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13109 (find_and_call_menu_selection, name_is_separator): Make function
13110 non-static.
13111 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13112 to mactoolbox.c.
13113 (set_frame_menubar): Don't call install_menu_quit_handler.
13114 (menu_item_selection): New variable.
13115 (mac_menu_show): Use create_and_show_popup_menu.
13116 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13117 selection but set variable menu_item_selection. All uses changed.
13118 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13119 Call install_menu_quit_handler. Move to mactoolbox.c.
13120
13121 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13122 (Selection): Move typedef to macgui.h.
13123 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13124 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13125 Make variables non-static.
13126 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13127 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13128 Make functions non-static.
13129 (Vmac_service_selection) [MAC_OSX]: Likewise.
13130 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13131 (mac_valid_selection_target_p, mac_clear_selection)
13132 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13133 (mac_put_selection_value, mac_selection_has_target_p)
13134 (mac_get_selection_value, mac_get_selection_target_list)
13135 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13136 Move functions to mactoolbox.c.
13137 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13138 Likewise.
13139 (copy_scrap_flavor_data, mac_handle_service_event)
13140 (install_service_handler) [MAC_OSX]: Likewise.
13141 (syms_of_macselect) <Vmac_dnd_known_types>:
13142 Use mac_dnd_default_known_types.
13143
13144 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13145 Move to mactoolbox.c.
13146 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13147 (Fx_selection_owner_p): Add EXFUN.
13148 (install_window_handler, remove_window_handler, XSetWindowBackground):
13149 Remove externs.
13150 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13151 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13152 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13153 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13154 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13155 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13156 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13157 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13158 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13159 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13160 (mac_valid_selection_target_p, mac_clear_selection)
13161 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13162 (mac_put_selection_value, mac_selection_has_target_p)
13163 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13164 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13165 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13166 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13167 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13168 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13169 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13170 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13171 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13172
13173 * mactoolbox.c: New file.
13174
13175 2008-04-18 Jason Rumney <jasonr@gnu.org>
13176
13177 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13178
13179 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13180
13181 * character.c (Fmultibyte_char_to_unibyte):
13182 Return latin1 chars unchanged.
13183
13184 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13185 relocated if it points to `name'.
13186
13187 2008-04-17 Kenichi Handa <handa@m17n.org>
13188
13189 * data.c (Faset): Allow setting a multibyte character in an
13190 ASCII-only unibyte string.
13191
13192 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13193
13194 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13195
13196 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13197 done in config.h.
13198
13199 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
13200
13201 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13202 (Fchar_direction): Add usage in the docstring.
13203
13204 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
13205
13206 * keyboard.c (read_key_sequence): Remove always-true checks.
13207
13208 2008-04-14 Jason Rumney <jasonr@gnu.org>
13209
13210 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13211 compatibility struct, for better underline positioning.
13212
13213 2008-04-13 David Hansen <david.hansen@gmx.net>
13214
13215 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13216 string.
13217
13218 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13219
13220 * m/hp800.h (XUINT, XSET): Remove.
13221
13222 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
13223
13224 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13225 previous change.
13226
13227 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13228
13229 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13230 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13231
13232 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13233
13234 * keymap.h (map_keymap_canonical): Declare.
13235 * xmenu.c (single_keymap_panes): Use it.
13236
13237 2008-04-11 Glenn Morris <rgm@gnu.org>
13238
13239 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13240 set the target's value to that of the alias.
13241
13242 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13243
13244 * term.c (set_tty_color_mode): Left over typo.
13245
13246 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
13247
13248 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13249 only after check for file name handler functions. Signal, when
13250 native functionality is not supported.
13251 (syms_of_fileio): Declare it unconditionally.
13252
13253 2008-04-10 Jason Rumney <jasonr@gnu.org>
13254
13255 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13256 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13257
13258 * w32.c (logon_network_drive): Also logon to remote drives that
13259 are mapped to drive letters.
13260
13261 2008-04-10 Glenn Morris <rgm@gnu.org>
13262
13263 * xdisp.c (truncate-partial-width-windows): Doc fix.
13264
13265 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13266
13267 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13268 Move functions to minibuffer.el.
13269 (syms_of_fileio): Don't declare them.
13270
13271 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13272
13273 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13274 (syms_of_minibuf): Remove its initialization.
13275
13276 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13277
13278 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
13279
13280 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13281
13282 2008-04-09 Jason Rumney <jasonr@gnu.org>
13283
13284 * makefile.w32-in (distclean): Delete makefile too.
13285 (maintainer-clean): New target.
13286
13287 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13288
13289 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13290 for new font backend and composite cases.
13291
13292 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13293
13294 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13295 Most of the code moved to run_timers.
13296 (do_pending_atimers): Call run_timers.
13297 (run_timers): New function.
13298
13299 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13300 run atimers.
13301
13302 * process.c (wait_reading_process_output): The same as above.
13303
13304 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13305
13306 * minibuf.c (last_exact_completion): Remove variable.
13307 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13308 (complete_and_exit_1, complete_and_exit_2)
13309 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13310 (Fdisplay_completion_list, display_completion_list_1)
13311 (Fminibuffer_completion_help, Fself_insert_and_exit)
13312 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13313 minibuffer.el.
13314 (syms_of_minibuf): Remove corresponding initializations.
13315
13316 * keyboard.c (Qdeactivate_mark): New var.
13317 (command_loop_1): Use it to call `deactivate-mark'.
13318 (syms_of_keyboard): Initialize it.
13319
13320 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13321 to another frame.
13322 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13323 Don't call set_tty_color_mode.
13324 (store_frame_param): Reset previous_frame rather than call
13325 set_tty_color_mode.
13326 * term.c (set_tty_color_mode): Rewrite.
13327 * dispextern.h (set_tty_color_mode): New type.
13328 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13329
13330 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13331
13332 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13333 for generic chars, which do not exist any more in emacs-unicode.
13334
13335 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
13336
13337 * coding.c (detect_coding_emacs_mule)
13338 (Ffind_operation_coding_system): Fix typo.
13339
13340 2008-04-08 Jason Rumney <jasonr@gnu.org>
13341
13342 * w32uniscribe.c (SNAME): Extract only symbol name.
13343
13344 * w32font.h (struct w32_metric_cache): New struct.
13345 (w32font_info): Use it.
13346 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13347 (CACHE_BLOCKSIZE): New constants.
13348
13349 * w32font.c (Qja, Qko, Qzh): New symbols.
13350 (syms_of_w32font): Initialise them.
13351 (font_matches_spec): Use them to filter by language.
13352 (recompute_cached_metrics): Remove function.
13353 (compute_metrics, clear_cached_metrics): New functions.
13354 (w32font_encode_char): Use them to manage metric cache.
13355 (w32font_text_extents): Cache metrics for all glyphs on demand.
13356 Delay converting glyph indices to WORD until needed.
13357 (w32font_open_internal): Initialize metric cache to empty.
13358 (registry_to_w32_charset): Charset should always be a symbol.
13359 (fill_in_logfont, list_all_matching_fonts): Family should
13360 always be a symbol.
13361
13362 2008-04-06 Jason Rumney <jasonr@gnu.org>
13363
13364 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13365 Give up if glyph indices not supported. Use uniscribe obtained
13366 ABC widths for individual metrics. Map glyph clusters back to
13367 characters using fClusterStart flag. Return number of glyphs
13368 produced, not chars processed.
13369 (uniscribe_shape): Map char at FROM to current glyph.
13370
13371 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13372
13373 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13374 Use SetMenuItemHierarchicalMenu.
13375
13376 2008-04-05 Jason Rumney <jasonr@gnu.org>
13377
13378 * image.c (pbm_load): Allow color values up to 65535.
13379 Throw an error if max_color_idx is outside the supported range.
13380 Report an error when image size is invalid.
13381 Read two bytes at a time when raw images have max_color_idx above 255.
13382
13383 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13384
13385 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13386 cFileName a file name that includes `?' characters, use the 8+3
13387 alias in cAlternateFileName instead.
13388
13389 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13390
13391 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13392 append "CCL: Quitted" when the CCL program is quitted.
13393 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13394
13395 * ccl.h (struct ccl_program): New member quit_silently.
13396
13397 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
13398
13399 * search.c (compile_pattern_1): Treat non-nil and non-string of
13400 search-spaces-regexp as nil.
13401
13402 * minibuf.c (Fassoc_string): Tweak docstring.
13403
13404 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13405
13406 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13407 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13408 2008-03-14 to force inode be positive.
13409
13410 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13411 _S_* ones, since we now use our own sys/stat.h.
13412 (stat, fstat): Don't mangle the inode number.
13413 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13414
13415 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13416
13417 * frame.h (struct frame): Give one more bit to `visible' since we use
13418 values larger than 1 to indicate obscured frames on ttys.
13419
13420 * keymap.c (Qkeymap_canonicalize): New var.
13421 (Fmap_keymap_internal): New fun.
13422 (describe_map): Use keymap-canonicalize.
13423
13424 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13425 (Fundo_boundary): Set them.
13426 (syms_of_undo): Initialize them.
13427 (record_point): Use them instead of last_point_position*.
13428 (last_undo_buffer): Change type.
13429
13430 2008-04-04 Jason Rumney <jasonr@gnu.org>
13431
13432 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13433 (recompute_cached_metrics): Don't set ascent and descent per char.
13434
13435 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13436 (uniscribe_check_otf): Add GC protection before consing.
13437 Rearrange loop for counting features.
13438
13439 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13440
13441 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13442 buffer with byte-size of source buffer.
13443
13444 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
13445
13446 * callint.c (Fcall_interactively): Handle temporary region even
13447 when shift-select-mode is off.
13448
13449 2008-04-03 Jason Rumney <jasonr@gnu.org>
13450
13451 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13452
13453 2008-04-03 Kenichi Handa <handa@m17n.org>
13454
13455 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13456 (CATEGORY_MASK_UTF_16): Likewise.
13457 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13458 binary file.
13459 (detect_coding): Add null-byte detection for a binary file.
13460 (detect_coding_system): Likewise.
13461
13462 2008-04-03 Jason Rumney <jasonr@gnu.org>
13463
13464 * w32uniscribe.c: New file.
13465
13466 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13467
13468 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13469
13470 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13471 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13472 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13473 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13474 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13475 (Qphonetic): New symbols.
13476 (syms_of_w32font): Initialize them.
13477 (font_supported_scripts): Use them.
13478 (w32font_list_family): List all charsets.
13479 (w32font_text_extents, recompute_cached_metrics): Fix metric
13480 calculations.
13481 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13482 Give opentype fonts their own format.
13483 (font_matches_spec): New arguments backend and logfont.
13484 Handle :otf spec for uniscribe backend.
13485 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13486 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13487
13488 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13489 font backend.
13490 (globals_of_w32fns): Initialize uniscribe font backend.
13491
13492 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13493 dependencies.
13494 (w32uniscribe.$(O)): New file to build.
13495 (FONT_OBJ): Include w32uniscribe.$(O).
13496 (LIBS): Add uniscribe libraries.
13497
13498 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13499
13500 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
13501
13502 * callint.c (Vshift_select_mode): New var.
13503 (Finteractive): Document new ^ spec.
13504 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13505 is present.
13506
13507 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13508 (command_loop_1): Avoid running the direct display versions of
13509 forward-char and backward-char if shift-selection may occur.
13510 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13511 shift-translation takes place.
13512
13513 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13514 avoid clobbering by define-minor-mode.
13515
13516 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13517 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13518
13519 * syntax.c (Fforward_word): Add ^ interactive spec.
13520
13521 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13522 (Fscroll_right): Add ^ interactive spec.
13523
13524 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13525
13526 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13527
13528 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13529
13530 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13531
13532 2008-03-31 Juri Linkov <juri@jurta.org>
13533
13534 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13535
13536 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13537
13538 * gtkutil.c (xg_set_geometry): Fix indentation.
13539 (xg_resize_outer_widget): Remove.
13540 (x_wm_size_hint_off): Fix indentation.
13541 (xg_frame_set_char_size): Call flush_and_sync after
13542 gtk_window_resize.
13543 (x_wm_set_size_hint): Pass NULL as geometry window to
13544 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13545 Add menu bar and tool bar height to base height.
13546 (xg_update_frame_menubar, free_frame_menubar)
13547 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13548 (update_frame_tool_bar, free_frame_tool_bar):
13549 Change xg_resize_outer_widget to xg_frame_set_char_size.
13550
13551 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
13552
13553 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13554 (Fdbus_call_method): New parameter TIMEOUT.
13555 (dbus-send-signal): Optimize UNGCPRO call.
13556
13557 2008-03-29 Juri Linkov <juri@jurta.org>
13558
13559 * window.c (Fdisplay_buffer): Move call to
13560 Vsplit_window_preferred_function out of conditions that check
13561 if window is eligible for vertical splitting.
13562 When Vsplit_window_preferred_function is non-nil, call it and use
13563 its non-nil return value as window. Otherwise, continue doing
13564 vertical splitting using Fsplit_window with arg horflag=nil.
13565 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13566 default value from `split-window' to nil.
13567
13568 2008-03-29 Juri Linkov <juri@jurta.org>
13569
13570 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13571 for interactive code letters 'b' and 'B'.
13572
13573 2008-03-29 Eli Zaretskii <eliz@gnu.org>
13574
13575 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13576 multibyte string.
13577
13578 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13579
13580 * keyboard.c (pending_funcalls): New var.
13581 (timer_check): Run it.
13582 (syms_of_keyboard): Initialize it.
13583 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13584 (Vdelete_terminal_functions): New vars.
13585 (syms_of_terminal): Initialize them.
13586 (Fdelete_terminal): Run delete-terminal-functions.
13587 * xdisp.c (safe_eval): Rewrite.
13588 (safe_call2): New fun.
13589 * frame.c (Qdelete_frame_functions): New var.
13590 (syms_of_frame): Initialize it.
13591 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13592 * lisp.h (safe_call2, pending_funcalls): Declare.
13593
13594 2008-03-28 Andreas Schwab <schwab@suse.de>
13595
13596 * indent.c (Fmove_to_column): Move declaration before statements.
13597
13598 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13599
13600 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13601 (struct frame): Use bit fields for boolean vars.
13602
13603 * process.c (server_accept_connection): Simplify naming.
13604 (emacs_get_tty_pgrp): Use SDATA.
13605
13606 * coding.c (decode_coding_object): Fix last change.
13607
13608 2008-03-27 Jason Rumney <jasonr@gnu.org>
13609
13610 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13611
13612 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13613
13614 * charset.c (Fdefine_charset_internal): Change the way of
13615 registering charsets in Vcharset_order_list.
13616 (syms_of_charset): Make the charset `eight-bit' supplementary.
13617
13618 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13619
13620 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13621 operations, to avoid having the difference between pointers
13622 overflow.
13623
13624 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13625
13626 * indent.c (check_display_width): New fun.
13627 (scan_for_column): Use it.
13628
13629 * data.c (syms_of_data): Mark most-positive-fixnum and
13630 most-negative-fixnum as constants.
13631
13632 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13633
13634 * indent.c (scan_for_column): Extract from current_column_1.
13635 Merge with the same code from Fmove_to_column.
13636 (current_column_1, Fmove_to_column): Use it.
13637
13638 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13639
13640 * keymap.c (map_keymap_internal): New fun.
13641 (map_keymap): Use it.
13642 (Fmap_keymap_internal): New fun.
13643 (Fmap_keymap): Remove left-out test from before make_save_value.
13644
13645 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13646
13647 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13648 Use XCAR/XCDR.
13649
13650 * process.h (struct Lisp_Process): Remove filter_multibyte.
13651 * process.c (QCfilter_multibyte): Remove.
13652 (setup_process_coding_systems): Don't use filter_multibyte.
13653 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13654 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13655 (Fset_process_filter_multibyte): Change the coding-system to
13656 approximate the previous behavior.
13657 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13658 coding-system.
13659
13660 * coding.c (decode_coding_object): When not decoding into a buffer,
13661 obey the coding system's preference of (uni|multi)byte.
13662
13663 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13664
13665 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13666 every char is changed and has a different byte-length.
13667 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13668 Fix int -> EMACS_INT.
13669
13670 2008-03-23 David Hansen <david.hansen@gmx.net>
13671
13672 * dbusbind.c (xd_read_message): Remove extra copying of message
13673 strings. Check for NULL `interface' or `member'.
13674
13675 2008-03-22 Eli Zaretskii <eliz@gnu.org>
13676
13677 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13678 cFileName a file name that includes `?' characters, use the 8+3
13679 alias in cAlternateFileName instead.
13680
13681 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13682
13683 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13684
13685 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13686
13687 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13688 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13689 work on current_buffer only instead (that was already the case
13690 for some of the code anyway).
13691 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13692 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13693 (SET_PT, SET_PT_BOTH): Adjust.
13694 * intervals.h (set_point, temp_set_point, set_point_both)
13695 (temp_set_point_both): Remove redundant declarations.
13696
13697 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13698
13699 * fileio.c (Finsert_file_contents):
13700 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13701 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13702 when buffer != current_buffer anyway.
13703
13704 2008-03-20 Andreas Schwab <schwab@suse.de>
13705
13706 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13707 as default.
13708
13709 2008-03-19 Jason Rumney <jasonr@gnu.org>
13710
13711 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13712 (syms_of_w32fns): Initialize them.
13713 (HOURGLASS_ID): New constant.
13714 (x_window_to_frame): Don't check hourglass_window.
13715 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13716 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13717 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13718 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13719 Only change the cursor if hourglass is not active.
13720 (Fx_create_frame): Initialize frame's current_cursor.
13721 (hourglass_atimer): Remove.
13722 (hourglass_started): New function.
13723 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13724 (show_hourglass): Adapt to w32, changing argument to frame.
13725
13726 * w32term.h (struct w32_output): Remove hourglass_window.
13727 Add current_cursor.
13728
13729 * eval.c (call_debugger, Fsignal):
13730 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13731 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13732 (Fexecute_extended_command, cancel_hourglass_unwind):
13733 * minibuf.c (read_minibuf):
13734 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13735
13736 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13737
13738 * window.c (run_funs): New fun.
13739 (run_window_configuration_change_hook): Use it to run the buffer-local
13740 and the global part of the hook.
13741
13742 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13743 (unwind_format_mode_line): Restore selected window.
13744 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13745
13746 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13747
13748 * editfns.c (Fchar_equal): Check they are valid characters.
13749
13750 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13751
13752 2008-03-17 Andreas Schwab <schwab@suse.de>
13753
13754 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13755 against a charset.
13756
13757 * lisp.h (Fbuffer_list): Declare.
13758
13759 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
13760
13761 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13762 handlebox_widget is != 0.
13763
13764 2008-03-16 Juri Linkov <juri@jurta.org>
13765
13766 * callint.c (Fcall_interactively): For interactive code letters
13767 'b' and 'B' put the buffer list into the list of default "future"
13768 values of the minibuffer.
13769
13770 2008-03-16 Andreas Schwab <schwab@suse.de>
13771
13772 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13773 modifiers.
13774
13775 * regex.c (re_match_2_internal): Correct matching of a charset
13776 against latin-1 characters.
13777
13778 2008-03-16 Kenichi Handa <handa@m17n.org>
13779
13780 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13781 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13782 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13783 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13784 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13785 CHAR_STRING_ADVANCE.
13786 (produce_chars): Fix for the case that the source and the
13787 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13788 instead of CHAR_STRING_ADVANCE.
13789 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13790 STRING_CHAR_ADVANCE.
13791
13792 2008-03-15 Andreas Schwab <schwab@suse.de>
13793
13794 * regex.c (re_match_2_internal): Correct matching of eight bit
13795 characters in unibyte strings.
13796
13797 2008-03-15 Martin Rudalics <rudalics@gmx.at>
13798
13799 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13800 at end of range when it coincides with the end of the buffer.
13801
13802 2008-03-14 Eli Zaretskii <eliz@gnu.org>
13803
13804 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13805
13806 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13807
13808 2008-03-14 Jason Rumney <jasonr@gnu.org>
13809
13810 * editfns.c (initial_tz): New variable.
13811 (syms_of_editfns): Initialize it.
13812 (Fset_time_zone_rule): Set it when first called.
13813 Use it when TZSTRING is nil.
13814
13815 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13816 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
13817 (monitor_from_point_fn, get_monitor_info_fn): New globals.
13818 (globals_of_w32fns): Initialize them.
13819 (compute_tip_xy): Use them to position tooltips.
13820
13821 2008-03-14 Glenn Morris <rgm@gnu.org>
13822
13823 * emacs.c (main): Revert previous change.
13824 (standard_args): Revert -internal-script back to -scriptload,
13825 and remove the long-option form.
13826
13827 2008-03-13 Glenn Morris <rgm@gnu.org>
13828
13829 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
13830 Remove option -enable-font-backend.
13831
13832 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
13833
13834 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
13835
13836 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
13837
13838 * xterm.c (x_connection_closed): For GTK: If this is the last
13839 terminal just exit without closing the display.
13840
13841 2008-03-11 Jason Rumney <jasonr@gnu.org>
13842
13843 * w32font.c (w32font_full_name): Use floor to round.
13844
13845 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
13846
13847 * sound.c (alsa_configure): Declare vol at beginning of block.
13848
13849 * fontset.c (Ffontset_info): Remove extra semicolon.
13850
13851 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
13852
13853 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
13854 size of resulting string.
13855
13856 2008-03-10 Jason Rumney <jasonr@gnu.org>
13857
13858 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
13859
13860 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13861
13862 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
13863 Don't pretend as if characters with display property haven't been
13864 consumed for string-replacing-string case.
13865
13866 2008-03-08 Kim F. Storm <storm@cua.dk>
13867
13868 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
13869 (get_next_display_element, next_element_from_string)
13870 (next_element_from_ellipsis, next_element_from_buffer): Use it.
13871
13872 2008-03-08 Andreas Schwab <schwab@suse.de>
13873
13874 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
13875
13876 2008-03-06 Jason Rumney <jasonr@gnu.org>
13877
13878 * w32font.c (w32_registry): Take font_type argument. Use ANSI
13879 when charset not specified. Only translate ANSI to unicode when
13880 font_type is truetype.
13881 (w32font_coverage_ok): New function.
13882 (add_font_entity_to_list): Use it to filter unsuitable fonts.
13883
13884 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
13885
13886 * lread.c (Fread_char): Resolve modifiers.
13887 (Fread_char_exclusive): Likewise.
13888
13889 * character.c (char_resolve_modifier_mask): New function.
13890 (char_string): Use char_resolve_modifier_mask.
13891 (Fchar_resolve_modifiers): New function.
13892 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
13893 function.
13894
13895 2008-03-04 Jason Rumney <jasonr@gnu.org>
13896
13897 * makefile.w32-in: Always include w32font.c in the build.
13898 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
13899
13900 2008-03-04 Andreas Schwab <schwab@suse.de>
13901
13902 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
13903 (versionclean): Likewise.
13904
13905 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
13906
13907 * .cvsignore: Add oo.
13908
13909 2008-03-03 Andreas Schwab <schwab@suse.de>
13910
13911 * coding.c (decode_coding_object): Inhibit gap shrinking while
13912 decoding in place.
13913
13914 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
13915
13916 * w32term.c: Remove unused include "gnu.h".
13917 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
13918
13919 * gnu.h: Rename to ...
13920 * emacs-icon.h: ... this.
13921 * xterm.c: Use emacs-icon.h instead of gnu.h.
13922 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
13923
13924 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
13925
13926 * w32font.c: Include math.h.
13927
13928 2008-03-03 Jason Rumney <jasonr@gnu.org>
13929
13930 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
13931 Compute options separately.
13932 (w32font_open_internal): Set glyph_idx before caching metrics.
13933
13934 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
13935 Define if system headers don't.
13936 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
13937 (w32font_encode_char): Don't declare here.
13938
13939 * w32font.c (Quniscribe, QCformat): New symbols.
13940 (syms_of_w32font): Define them.
13941 (w32font_has_char): Indicate uncertainty.
13942 (w32font_encode_char): Encode as glyph point. Make static.
13943 (recompute_cached_metrics): New function.
13944 (w32font_open_internal): Use it. Set font to use glyph points
13945 initially. Set format based on type of font.
13946 (w32font_text_extents, w32font_draw): Optionally use glyph points.
13947 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
13948 on it. Set format based on information available here.
13949 (add_font_entity_to_list): Identify backend based on opentype_only.
13950
13951 2008-03-02 Andreas Schwab <schwab@suse.de>
13952
13953 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
13954
13955 * coding.c (decode_coding_big5, produce_chars):
13956 Fix typos in last change.
13957
13958 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
13959
13960 * gnu.h: New icon.
13961
13962 2008-03-02 Kenichi Handa <handa@m17n.org>
13963
13964 * coding.c (decode_coding_utf_8): When eol-type of CODING is
13965 `dos', don't decode '\r' if that is the last in the source.
13966 (decode_coding_utf_16, decode_coding_emacs_mule)
13967 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
13968 (decode_coding_raw_text, decode_coding_charset): Likewise.
13969 (produce_chars): Don't decode EOL here. Use EMACS_INT.
13970
13971 2008-03-01 Jason Rumney <jasonr@gnu.org>
13972
13973 * w32font.c (w32font_full_name): Report point size for scalable fonts.
13974
13975 2008-03-01 Kim F. Storm <storm@cua.dk>
13976
13977 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
13978
13979 2008-03-01 Jason Rumney <jasonr@gnu.org>
13980
13981 * w32font.c (w32font_full_name): New function.
13982 (w32font_open_internal): Use it.
13983
13984 2008-03-01 Kim F. Storm <storm@cua.dk>
13985
13986 * dispnew.c (line_draw_cost): Fix invalid glyph check.
13987
13988 2008-03-01 Jason Rumney <jasonr@gnu.org>
13989
13990 * font.c (font_unparse_fcname): Increase len when style is a symbol.
13991
13992 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
13993
13994 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
13995 xg_frame_resized when the event is for the edit widget.
13996
13997 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
13998
13999 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14000 set_char_size.
14001 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14002 operations on widgets here. Just set frame size if needed.
14003 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14004 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14005 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14006 the whole frame.
14007 (xg_create_tool_bar): Move attachment of the tool bar to
14008 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14009 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14010
14011 2008-03-01 Jason Rumney <jasonr@gnu.org>
14012
14013 * w32fns.c (w32_msg_pump): Disable debug code.
14014
14015 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14016
14017 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14018
14019 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14020
14021 * xdisp.c (next_overlay_string): Don't set
14022 overlay_strings_at_end_processed_p if we're currently reading from
14023 a display string.
14024
14025 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14026
14027 * xdisp.c (get_overlay_strings_1): Fix typo.
14028
14029 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14030
14031 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14032
14033 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14034
14035 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14036
14037 * xdisp.c (display_mode_element): Cancel the previous change.
14038 (decode_mode_spec): Likewise.
14039 (handle_auto_composed_prop): Don't make composition if it->string
14040 is a string.
14041
14042 2008-02-27 Kim F. Storm <storm@cua.dk>
14043
14044 * lisp.h (GLYPH): Change type from int to struct with separate char
14045 and face_id members.
14046 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14047 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14048 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14049 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14050 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14051 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14052 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14053 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14054 handle new Lisp glyph code encoding, either an integer or a cons.
14055
14056 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14057 (GLYPH_ALIAS): Delete.
14058 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14059 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14060 (GLYPH_FROM_CHAR): Replace macro by ...
14061 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14062
14063 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14064 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14065 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14066 (GLYPH_INVALID_P): New macro.
14067 (spec_glyph_lookup_face): Update prototype.
14068
14069 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14070 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14071 new glyph code encoding.
14072 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14073 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14074
14075 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14076 Adapt to new glyph type and new glyph code encoding.
14077
14078 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14079
14080 * indent.c (current_column, current_column_1, Fmove_to_column)
14081 (compute_motion): Adapt to new glyph code encoding.
14082
14083 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14084
14085 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
14086
14087 * process.c (wait_reading_process_output): Check for window
14088 changes caused by timers.
14089 Suggested by Johan Bockgård.
14090
14091 2008-02-27 Glenn Morris <rgm@gnu.org>
14092
14093 * emacs.c (USAGE1): Add `--disable-font-backend'.
14094
14095 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14096
14097 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14098 is made to the buffer.
14099
14100 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14101
14102 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14103 (face_at_string_position):
14104 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14105 (face_at_string_position):
14106 * xdisp.c (display_string, next_overlay_change):
14107 * buffer.h (overlays_at):
14108 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14109 Update callers.
14110
14111 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
14112
14113 * editfns.c (Fformat): Doc fix.
14114
14115 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
14116
14117 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14118 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14119 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14120
14121 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14122
14123 * buffer.c (Fbuffer_swap_text): New function.
14124 (syms_of_buffer): Defsubr it.
14125
14126 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
14127
14128 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14129
14130 2008-02-25 Jason Rumney <jasonr@gnu.org>
14131
14132 * w32font.c (w32font_draw): Draw one character at a time when padding.
14133
14134 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14135
14136 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14137 Handle a nil arg. Use run_window_configuration_change_hook.
14138 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14139 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14140 Use run_window_configuration_change_hook.
14141
14142 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14143
14144 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14145 1-pixel width.
14146
14147 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14148
14149 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14150 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14151 if the glyph in the font is zero pixel with.
14152
14153 * dispextern.h (struct glyph_string): New member padding_p.
14154
14155 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14156
14157 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14158
14159 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14160
14161 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14162
14163 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14164
14165 2008-02-25 Jason Rumney <jasonr@gnu.org>
14166
14167 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14168
14169 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14170
14171 Allow fine-grained image-cache flushing.
14172 * dispextern.h (struct image): Add `dependencies' field.
14173 (clear_image_caches): Change arg to Lisp_Object.
14174 * image.c (make_image): Initialize `dependencies' field.
14175 (clear_image_cache): Change arg to allow fine-grained flushing.
14176 Perform the flush even if image-cache-eviction-delay is nil.
14177 (clear_image_caches): Change arg to Lisp_Object.
14178 (Fclear_image_cache): Expand meaning of the argument.
14179 (mark_image): Mark `dependencies' field.
14180 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14181 (lface_hash): Use XHASH rather than XFASTINT.
14182 (face_at_buffer_position): Fix int -> EMACS_INT position.
14183 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14184 (select_frame_for_redisplay): Remove code duplication.
14185 (redisplay_internal): Adapt arg to call to clear_image_caches.
14186
14187 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14188
14189 * s/vms4-0.h:
14190 * s/vms4-2.h:
14191 * s/vms4-4.h:
14192 * s/vms5-5.h: Remove, unused.
14193
14194 * s/irix5-2.h:
14195 * s/irix6-0.h:
14196 * s/riscos5.h:
14197 * s/mach-bsd4-3.h:
14198 * m/mips4.h: Remove files for obsolete systems.
14199
14200 * Makefile.in:
14201 * filelock.c:
14202 * unexmips.c:
14203 * m/hp9000s300.h:
14204 * m/iris4d.h:
14205 * s/aix3-1.h:
14206 * s/hpux.h:
14207 * s/msdos.h:
14208 * s/usg5-0.h:
14209 * s/usg5-2-2.h:
14210 * s/usg5-2.h:
14211 * s/usg5-3.h: Remove references to obsolete variables.
14212
14213 * s/irix5-0.h: Remove, move all the contents ...
14214 * s/irix6-5.h: ... here. Simplify.
14215 * config.in: Regenerate.
14216
14217 2008-02-24 Jason Rumney <jasonr@gnu.org>
14218
14219 * w32term.c (x_draw_glyph_string_background): Clear the background
14220 manually when cleartype is in use.
14221 (x_draw_glyph_string_foreground): Draw text transparently when
14222 cleartype is in use.
14223
14224 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14225 a font into it unless we have to.
14226
14227 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14228
14229 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14230 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
14231
14232 2008-02-18 Jason Rumney <jasonr@gnu.org>
14233
14234 * w32fns.c (Fw32_shell_execute): Encode parameters.
14235
14236 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14237
14238 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14239
14240 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
14241
14242 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14243
14244 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14245
14246 * xterm.c (x_set_offset): Don't change the gravity if
14247 CHANGE_GRAVITY is -1.
14248
14249 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
14250
14251 * fileio.c (auto_save_error_occurred): New var.
14252 (auto_save_error): Set it.
14253 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14254 error occurred.
14255
14256 2008-02-23 Eli Zaretskii <eliz@gnu.org>
14257
14258 * w32.c (globals_of_w32): Add initializations for
14259 g_b_init_get_sid_sub_authority and
14260 g_b_init_get_sid_sub_authority_count.
14261
14262 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14263
14264 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14265 (font_parse_xlfd): Use them for sanity check.
14266 (Finternal_set_font_style_table): Make sure the table is bijective.
14267
14268 Consolidate the image_cache to the terminal struct.
14269 * termhooks.h (P_): Remove redundant def.
14270 (struct terminal): New field `image_cache'.
14271 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14272 of FRAME_X_IMAGE_CACHE.
14273 * xterm.h (struct x_display_info): Remove image_cache field.
14274 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14275 * w32term.h (struct w32_display_info): Remove image_cache field.
14276 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14277 * macterm.h (struct mac_display_info): Remove image_cache field.
14278 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14279 * xterm.c (x_term_init):
14280 * w32term.c (w32_term_init):
14281 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14282 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14283 Remove declarations.
14284 (clear_image_caches, mark_image_cache): New declarations.
14285 * xfaces.c (clear_face_cache):
14286 * xdisp.c (redisplay_internal): Use clear_image_caches.
14287 * image.c (clear_image_cache): Don't check that a frame is on
14288 a window-system before checking if it shares the same cache.
14289 (clear_image_caches): New function.
14290 (Fclear_image_cache): Use it.
14291 (mark_image): Move from allo.c.
14292 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14293 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14294 (mark_object): Don't call mark_image_cache for frames.
14295 (mark_terminals): Call mark_image_cache.
14296
14297 * lisp.h (Fdelete_terminal): Declare.
14298
14299 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14300 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14301 wrong_type_argument.
14302
14303 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14304
14305 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14306 malayalam.el, and tamil.el. Add sinhala.el.
14307
14308 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14309
14310 * xterm.c (x_connection_closed): Consolidate identical tests.
14311 (x_delete_terminal): Don't crash if called via x_connection_closed.
14312
14313 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14314
14315 * xdisp.c (decode_mode_spec): New arg string.
14316 (display_mode_element): Adjust for the above change.
14317
14318 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14319
14320 * callint.c (Fcall_interactively): Use AREF.
14321
14322 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14323
14324 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14325
14326 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14327
14328 * xfns.c (Fx_show_tip): Set string to " " if empty.
14329
14330 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14331
14332 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14333 with Qt.
14334
14335 2008-02-17 Kenichi Handa <handa@m17n.org>
14336
14337 * ftfont.c (ftfont_shape): Return Lispy number.
14338
14339 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14340 for GCs.
14341 (Finternal_set_font_selection_order): Call font_update_sort_order
14342 only when enable_font_backend is set.
14343 (realize_x_face): Set face->font_info to that of default face only
14344 when enable_font_backend is set.
14345
14346 * xdisp.c (handle_composition_prop): Set it->c to the fist
14347 character of the composed region.
14348 (fill_composite_glyph_string): Set base_face->font_info to
14349 s->font_info. Get a face for ascii from base_face->ascii_face.
14350 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14351 with a face already decided.
14352 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14353 non-negative.
14354 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14355 call font_prepare_composition unconditionally.
14356
14357 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14358
14359 * xterm.h (struct x_display_info): New member font.
14360
14361 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14362 (x_set_mouse_face_gc, x_new_font): Likewise.
14363 (x_term_init): Setup display_info->font.
14364 (x_delete_terminal): Free display_info->font.
14365
14366 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14367
14368 * ftxfont.c (ftxfont_default_fid): Delete it.
14369 (ftxfont_open): Set xfont->fid to 0.
14370 (ftxfont_end_for_frame): Clear data specific to the frame and the
14371 font-driver.
14372
14373 * xftfont.c (xftfont_default_fid): Delete it.
14374 (xftfont_open): Set xfont->fid to 0.
14375
14376 * fontset.c (FONTSET_OBJLIST): New macro.
14377 (fontset_find_font): Update font-object list of the fontset.
14378 (free_realized_fontset): New function.
14379 (free_face_fontset): Call free_realized_fontset.
14380 (Ffont_info): Call font_close_object only when enable_font_backend
14381 is set.
14382
14383 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14384 [HAVE_NTGUI]: Include w32term.h.
14385 [MAC_OS]: Include macterm.ch.
14386 (font_otf_ValueRecord): Use make_number.
14387 (font_finish_cache): Fix handling of reference count.
14388 (font_clear_cache): Update num_fonts.
14389 (font_open_entity): Update smallest_char_width and
14390 smallest_font_height of the frame.
14391 (font_close_object): Update num_fonts.
14392 (Fclear_font_cache): Fix finding the target cache data.
14393
14394 2008-02-16 Glenn Morris <rgm@gnu.org>
14395
14396 * fontset.c (Finternal_char_font): Fix compilation warning.
14397
14398 2008-02-16 Eli Zaretskii <eliz@gnu.org>
14399
14400 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14401 instead of char arrays. Enlarge the size of array passed to
14402 get_token_information.
14403
14404 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14405 warnings.
14406
14407 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14408
14409 * .gdbinit: Don't set `args', it breaks gdb --args.
14410
14411 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14412
14413 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14414 within a narrowed buffer.
14415
14416 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14417
14418 * coding.c (decode_coding_object, encode_coding_object):
14419 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14420
14421 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14422
14423 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14424 hardcoding 1.
14425 (detect_coding_system):
14426 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14427 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14428 * insdel.c (insert_from_gap):
14429 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14430 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14431 (string_to_multibyte):
14432 * character.c (chars_in_text, multibyte_chars_in_text):
14433 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14434
14435 * character.h (FETCH_STRING_CHAR_ADVANCE)
14436 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14437 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14438 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14439
14440 * casefiddle.c (casify_region): Only call after-change and composition
14441 functions on the part of the region that was changed.
14442
14443 * keyboard.c (read_avail_input):
14444 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14445
14446 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14447
14448 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14449 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14450
14451 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
14452
14453 * w32menu.c (push_submenu_start, push_submenu_end)
14454 (push_left_right_boundary, push_menu_pane, push_menu_item):
14455 * keyboard.c (read_key_sequence): Don't pass args with side effects
14456 to AREF, it fails when compiling with -DENABLE_CHECKING.
14457
14458 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14459
14460 * Makefile.in (${lispsource}international/charprop.el):
14461 Delete this target.
14462
14463 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14464 emacs-unicode-2.
14465
14466 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14467
14468 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14469
14470 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14471
14472 * frame.c (Qnoelisp): New symbol.
14473 (syms_of_frame): Initialize it.
14474 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14475 harmless Elisp code, from a strong `force' from x_connection_closed.
14476 * frame.h (Qnoelisp): Declare.
14477 * xterm.c (x_connection_closed): Pass `noelisp'.
14478
14479 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14480 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14481 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14482 rather than `int' for the type of `type'.
14483
14484 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14485
14486 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14487
14488 * Makefile.in (GNUC): Remove support for gcc-1.x.
14489
14490 2008-02-10 Richard Stallman <rms@gnu.org>
14491
14492 * lisp.h (ASET): Use AREF, not ASLOT.
14493
14494 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14495
14496 * lisp.h (ASET): Check bounds.
14497
14498 2008-02-10 Glenn Morris <rgm@gnu.org>
14499
14500 * buffer.c (mode-name): Doc fix.
14501
14502 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14503
14504 * Makefile.in:
14505 * emacs.c:
14506 * gmalloc.c:
14507 * keyboard.c:
14508 * lisp.h:
14509 * m/ibm370aix.h:
14510 * process.c:
14511 * regex.c:
14512 * s/hpux.h:
14513 * sysdep.c:
14514 * sysselect.h:
14515 * systty.h:
14516 * unexec.c:
14517 * w32term.c:
14518 * xsmfns.c:
14519 * xterm.c: Remove code that deals with obsolete variables.
14520
14521 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14522
14523 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14524 nothing else needs it anymore.
14525
14526 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14527
14528 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14529 instead of unibyte_char_to_multibyte.
14530
14531 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14532
14533 * s/gnu-linux.h: Remove commented out code.
14534
14535 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14536
14537 * Makefile.in: Update what RMS says about using autoconf.
14538 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14539 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14540 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14541 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14542
14543 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14544
14545 * keymap.c (Fkey_description): Move side effect outside of macro call.
14546
14547 * xfaces.c (Finternal_make_lisp_face):
14548 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14549
14550 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14551 (syms_of_fontset): Use ASET.
14552
14553 * fns.c (concat): Move side effect outside of macro call.
14554 (hash_clear): Use ASET.
14555
14556 2008-02-08 Richard Stallman <rms@gnu.org>
14557
14558 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14559 If FORCE, and frame has a surrogate minibuffer for another frame,
14560 delete the other frame first.
14561
14562 2008-02-07 Timo Savola <timo.savola@iki.fi>
14563
14564 * xterm.c (x_detect_focus_change): Handle embed client message.
14565 (handle_one_xevent): Ditto.
14566 (handle_one_xevent): If embedded and we get a button press/release,
14567 request focus.
14568 (xembed_set_info, xembed_send_message): New functions.
14569 (x_make_frame_visible): Call xembed_set_info if embedded.
14570 (x_make_frame_invisible): Call xembed_set_info if embedded.
14571 (x_term_init): Initialize Xatom_XEMBED.
14572 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14573 (x_iconify_frame): Ditto.
14574
14575 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14576 (enum xembed_info, enum xembed_message, enum xembed_focus)
14577 (enum xembed_modifier, enum xembed_accelerator): New.
14578 (xembed_set_info, xembed_send_message): Declare.
14579 (FRAME_X_EMBEDDED_P): New.
14580
14581 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14582 gtk_plug_new.
14583
14584 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14585 window ID of a frame.
14586 (x_window): Reparent frame if embedded.
14587 (Fx_create_frame): Don't set border width if embedded.
14588
14589 * emacs.c (USAGE3): Add --parent-id.
14590 (standard_args): Ditto.
14591
14592 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14593
14594 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14595
14596 2008-02-07 Jim Meyering <meyering@redhat.com>
14597
14598 Use "do...while (0)", not "if (1)...else" in macro definitions.
14599 The latter provokes a warning from gcc about the empty else, when
14600 followed by ";". Also, without that trailing semicolon, it would
14601 silently swallow up any following statement.
14602 * syntax.h (SETUP_SYNTAX_TABLE)
14603 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14604 * buffer.h (DECODE_POSITION): Likewise.
14605 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14606 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14607 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14608 (FETCH_CHAR_ADVANCE): Likewise.
14609 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14610
14611 2008-02-07 Jim Meyering <meyering@redhat.com>
14612
14613 * lread.c [lint]: Don't include <sys/inode.h>.
14614
14615 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14616
14617 * xselect.c (x_handle_dnd_message):
14618 * xmenu.c (digest_single_submenu, xmenu_show):
14619 * xdisp.c (with_echo_area_buffer_unwind_data)
14620 (format_mode_line_unwind_data, unwind_format_mode_line)
14621 (display_menu_bar):
14622 * eval.c (Ffetch_bytecode):
14623 * doc.c (store_function_docstring):
14624 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14625 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14626 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14627
14628 2008-02-07 Kenichi Handa <handa@m17n.org>
14629
14630 * ftxfont.c (ftxfont_open): Don't set
14631 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14632
14633 * ftfont.c (ftfont_open): Fix previous change.
14634
14635 2008-02-06 Jason Rumney <jasonr@gnu.org>
14636
14637 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14638 Use cached metrics for ASCII characters.
14639 (w32font_open_internal): Don't set font's owning_frame.
14640 Cache metrics for ASCII characters.
14641
14642 * w32font.h (struct w32font_info): Add ascii_metrics.
14643 Remove owning_frame.
14644
14645 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14646
14647 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14648 to negative value.
14649
14650 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14651
14652 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14653
14654 * charset.c (syms_of_charset): Set QCtest and Qeq.
14655
14656 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14657
14658 * process.c (Fstart_process):
14659 * callproc.c (Fcall_process): Handle the case where
14660 Funhandled_file_name_directory returns nil.
14661
14662 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14663 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14664 * font.c (check_gstring): Use them and AREF to access the vector before
14665 we know it's really a gstring.
14666 (Ffont_shape_text): Fix typo.
14667 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
14668
14669 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14670 Declare.
14671
14672 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14673
14674 2008-02-05 Jason Rumney <jasonr@gnu.org>
14675
14676 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14677 Set smallest_font_height and smallest_char_width in display info.
14678
14679 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14680
14681 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14682
14683 2008-02-05 Miles Bader <miles@gnu.org>
14684
14685 * xfaces.c (get_lface_attributes, merge_named_face)
14686 (lookup_named_face, lookup_derived_face, realize_named_face):
14687 Revert 2008-02-01 change by cyd@stupidchicken.com.
14688
14689 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14690
14691 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14692 fallback fonts.
14693 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14694
14695 2008-02-04 Jason Rumney <jasonr@gnu.org>
14696
14697 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14698 set full_name.
14699 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14700
14701 2008-02-03 Jason Rumney <jasonr@gnu.org>
14702
14703 * makefile.w32-in (OBJ1): Include font.o here.
14704 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14705
14706 2008-02-02 Jason Rumney <jasonr@gnu.org>
14707
14708 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14709
14710 2008-02-01 Jason Rumney <jasonr@gnu.org>
14711
14712 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14713
14714 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14715
14716 2008-02-01 Andreas Schwab <schwab@suse.de>
14717
14718 * Makefile.in (shortlisp, lisp): Update for rename of
14719 ../lisp/language/myanmar.el.
14720
14721 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
14722
14723 * xfaces.c (get_lface_attributes): Delete function.
14724 (merge_named_face, lookup_named_face, lookup_derived_face)
14725 (realize_named_face): Call lface_from_face_name directly, and use
14726 the fact that merge_face_vectors does not alter its FROM argument.
14727
14728 2008-02-01 Jason Rumney <jasonr@gnu.org>
14729
14730 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14731 input in the default locale. Handle non-Unicode multibyte input.
14732
14733 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14734
14735 * fontset.c (reorder_font_vector): Exclude nil elements from the
14736 font group. Don't try multiple fonts.
14737 (fontset_font): Adjust for the above change.
14738 (Finternal_char_font): Return nil if the found font doesn't
14739 contain the character ch.
14740
14741 * Makefile.in (lisp, shortlisp): Add cham.el.
14742
14743 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14744
14745 * font.h (FONTP): Make it return 1 also for a font-object.
14746
14747 * .gdbinit (xfontset): New function.
14748
14749 * font.c (font_find_for_lface): Check if the character C is
14750 supported or not only for the first font.
14751
14752 * fontset.c (reorder_font_vector): Fix typo.
14753 (fontset_find_font): Don't add a font-spec specifying a script.
14754 Use 0 (not Qt) for the indication of empty font-group. Change the
14755 format of RFONT-DEF. Return Qt if no font in the font-group
14756 support the character.
14757 (fontset_font): Adjust for the above change. If no font was
14758 found the character, remember that.
14759 (face_for_char): Adjust for the change of RFONT-DEF.
14760 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14761 no font for the target.
14762 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14763
14764 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14765
14766 * font.c (font_load_for_face): Handle the case that the font in
14767 face->lface is a string.
14768
14769 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14770
14771 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14772
14773 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14774
14775 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14776 Fix previous change. If the frame is not on a window system,
14777 signal an error.
14778
14779 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14780
14781 * coding.c (decode_coding_object, encode_coding_object): Adjust
14782 marker positions after conversion.
14783
14784 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14785
14786 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14787
14788 * font.c (font_find_for_lface): Fix the handling of the return
14789 value of font_has_char.
14790 (Ffont_shape_text): Fix previous change.
14791
14792 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14793 (fontset_ref_and_range): Delete it.
14794 (fontset_find_font): Call char_table_ref_and_range instead of
14795 FONTSET_REF_AND_RANGE.
14796 (make_fontset): Don't setup font groups of Latin here.
14797 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14798 (new_fontset_from_font): Make the specified font the default for
14799 all Latin characters.
14800
14801 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14802
14803 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14804 is on a window system before accessing the fontset of the frame.
14805
14806 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14807
14808 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14809
14810 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14811 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14812
14813 * font.c (Ffont_shape_text): If the font driver doesn't have a
14814 shaper function, make zero-width glyphs to have at least one-pixel
14815 width. Fix setting of `to' field of glyphs.
14816
14817 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14818
14819 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
14820 glyphs.
14821
14822 * font.h (struct font_driver): Improve docstring of member `shape'.
14823
14824 2008-02-01 Kenichi Handa <handa@m17n.org>
14825
14826 * composite.c (syms_of_composite): Fix docstring of
14827 auto-composition-function.
14828
14829 * font.h (LGLYPH_SIZE): New macro.
14830
14831 * font.c (Ffont_fill_gstring): Stop filling when a character not
14832 supported by the font is found.
14833 (Ffont_shape_text): When a shape callback function returns nil,
14834 try at most two more times with larger gstring.
14835 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
14836
14837 * xdisp.c (handle_auto_composed_prop): Change the argument to
14838 auto-composition-function.
14839
14840 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
14841 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
14842 Lispy glyph and store it in the lgstring.
14843
14844 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
14845
14846 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
14847
14848 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14849
14850 * font.c (Ffont_shape_text): Avoid unnecessary composition.
14851
14852 * fontset.c (Vfont_encoding_charset_alist): New variable.
14853 (syms_of_fontset): DEFVAR it.
14854 (reorder_font_vector, fontset_find_font): Optimize for the case of
14855 no need of reordering.
14856 (face_for_char): Map the charset property by
14857 Vfont_encoding_charset_alist.
14858
14859 2008-02-01 Jason Rumney <jasonr@gnu.org>
14860
14861 * w32font.c (logfonts_match): Don't check adstyle here.
14862 (font_matches_spec): Check here against physical font instead.
14863 (add_font_entity_to_list): Avoid some substitutions.
14864
14865 * font.c (font_parse_fcname): Default weight and slant to normal.
14866 (font_score): Prefer normal fonts if weight or slant unspecified.
14867 (font_score) [WINDOWSNT]: Scale weight difference down to closer
14868 match freetype scores.
14869
14870 2008-02-01 Jason Rumney <jasonr@gnu.org>
14871
14872 * w32font.c (w32font_text_extents): Don't use the frame stored in the
14873 font, as it may have been deleted.
14874 (w32_enumfont_pattern_entity): Map generic family to adstyle using
14875 most common hyphenless variation.
14876 (logfonts_match): Check generic family.
14877 (font_matches_spec): Don't check generic family here.
14878 (fill_in_logfont): Set generic family based on adstyle.
14879
14880 * w32font.h (w32font_get_cache): Update declaration.
14881
14882 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14883
14884 * ftfont.c (ftfont_get_cache): Adjust the argument type.
14885
14886 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
14887 If none of the new drivers are available, call font_update_drivers
14888 with the old drivers.
14889
14890 * w32font.c (w32font_get_cache): Adjust the argument type.
14891
14892 * xfont.c (xfont_get_cache): Adjust the argument type.
14893
14894 * font.h (struct font_driver): Change argument type of get_cache.
14895
14896 * xftfont.c (xftfont_start_for_frame): Delete prototype.
14897
14898 * font.c (Ffont_get): Fix arguments to Fassoc.
14899 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
14900 (font_clear_cache): New function.
14901 (font_list_entities, font_matching_entity): Use font_get_cache.
14902 (font_update_drivers): Call font_clear_cache when finishing a driver.
14903
14904 * fontset.c (fontset_find_font): Fix previous change.
14905
14906 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14907
14908 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
14909 dpyinfo->font_table.
14910 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
14911 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
14912
14913 * font.c (font_at): Handle the case that the arg C is negative.
14914 Handle the unibyte case.
14915 (Ffont_at): Call font_at with the arg C -1.
14916
14917 * xdisp.c (handle_auto_composed_prop): Don't get a character at
14918 the position here, and call font_at with the arg C -1.
14919 Don't check the range of the existing composition at the point.
14920
14921 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14922
14923 * fontset.c (fontset_add): New args charset_id and family.
14924 Change caller.
14925 (load_font_get_repertory, fontset_find_font): Assume that
14926 font_spec is always a font-spec object.
14927 (Fset_fontset_font): Always store a font-spec object in a fontset.
14928
14929 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
14930 instead of get_property_and_range.
14931
14932 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14933
14934 * xftfont.c (struct xftfont_info): Delete the member ft_face.
14935 (xftfont_open): Don't keep locking face.
14936 (xftfont_close): Don't unlock face.
14937 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
14938
14939 * fontset.c (fontset_find_font): Don't prefer a font of
14940 supplementary charset.
14941
14942 2008-02-01 Kenichi Handa <handa@m17n.org>
14943
14944 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
14945 script, langsys_tag to langsys, new member script.
14946 (OTF_TAG_STR): Terminate by '\0'.
14947 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
14948 listing to the script specified in that property. Fix arg to
14949 OTF_check_features.
14950
14951 2008-02-01 Jason Rumney <jasonr@gnu.org>
14952
14953 * w32font.h: New file.
14954
14955 * w32font.c: Include it.
14956 (struct w32font_info): Add owning_frame field. Move to w32font.h.
14957 (w32font_open): Set owning_frame.
14958 (w32font_text_extents): Use owning_frame.
14959 (struct font_callback_data): Add opentype_only field.
14960 (add_font_entity_to_list): Use it to filter fonts.
14961 Don't check against full name.
14962 (w32font_list_internal): New function.
14963 (w32font_list): Use it.
14964 (w32font_match_internal): New function.
14965 (w32font_match): Use it.
14966 (w32font_open_internal): New function.
14967 (w32font_open): Use it.
14968 (w32font_get_cache, w32font_close, w32font_has_char)
14969 (w32font_encode_char, w32font_text_extents, w32font_draw):
14970 Make non-static.
14971
14972 * makefile.w32-in (w32font.o): Depend on w32font.h.
14973
14974 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14975
14976 * charset.c (Fdefine_charset_internal): Record a supplementary
14977 charset at the tail of Vcharset_order_list.
14978
14979 * font.c (Ffont_shape_text): Fix the return value.
14980
14981 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
14982
14983 * xdisp.c (handle_auto_composed_prop): Fix previous change.
14984
14985 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14986
14987 * ftfont.c (struct OpenTypeSpec): New struct.
14988 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
14989 (ftfont_get_open_type_spec): New function.
14990 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
14991
14992 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
14993
14994 2008-02-01 Jason Rumney <jasonr@gnu.org>
14995
14996 * w32font.c (add_font_entity_to_list): Compare only the beginning
14997 of full name.
14998
14999 2008-02-01 Kenichi Handa <handa@m17n.org>
15000
15001 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15002 Never return HANDLED_RECOMPUTE_PROPS.
15003
15004 2008-02-01 Kenichi Handa <handa@m17n.org>
15005
15006 * font.c (font_gstring_produce): Delete it.
15007
15008 * composite.h (COMPOSITION_METHOD):
15009 Handle COMPOSITION_WITH_GLYPH_STRING.
15010
15011 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15012
15013 * xfont.c (Qx): Delete.
15014 (syms_of_xfont): Don't initialize Qx.
15015
15016 * composite.h (enum composition_method):
15017 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15018
15019 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15020
15021 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15022 (choose_face_font): Accept new form of font-spec.
15023
15024 * frame.h (font_driver_list): Declare it unconditionally.
15025 (struct frame): Define members font_driver_list and font_data_list
15026 unconditionally.
15027
15028 * fontset.c: Include "font.h" unconditionally.
15029 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15030 (Fset_fontset_font): Accept a font-spec object.
15031
15032 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15033 PIXEL_SIZE part a wild card.
15034
15035 * dispextern.h (struct glyph_string): Define members clip and
15036 num_clips unconditionally.
15037 (struct face): Define members font_info and extra unconditionally.
15038
15039 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15040 ftfont_info only when HAVE_LIBOTF is defined.
15041
15042 2008-02-01 Andreas Schwab <schwab@suse.de>
15043
15044 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15045 and end.
15046
15047 2008-02-01 Jason Rumney <jasonr@gnu.org>
15048
15049 * w32font.c (w32font_driver): Add new fields.
15050
15051 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15052
15053 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15054 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15055 (LIBES): Add @M17N_FLT_CFLAGS@.
15056
15057 * composite.c (compose_text): Don't treat the new style
15058 composition specially.
15059
15060 * emacs.c (main): Call syms_of_font unconditionally.
15061
15062 * font.h (FONT_ENTITY_NOT_LOADABLE)
15063 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15064 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15065 (struct font_driver): New member shape.
15066 (font_registry_charsets): Extern it.
15067 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15068 (font_otf_capability, font_drive_otf): Delete their externs.
15069
15070 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15071 (font_charset_alist, font_registry_charsets): Move from xfont.c
15072 and rename.
15073 (font_prop_validate_otf): New function.
15074 (font_property_table): Register it for QCotf.
15075 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15076 (font_drive_otf): Delete.
15077 (font_prepare_composition): New arg F. Adjust for the change of
15078 lispy gstring.
15079 (font_find_for_lface): New arg C.
15080 (font_load_for_face): Adjust for the change of font_find_for_lface.
15081 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15082 lispy gstring.
15083 (Ffont_shape_text): New function.
15084 (Fopen_font): If the font size is not given, use 12-pixel.
15085 (Ffont_at): New arg STRING.
15086 (syms_of_font): Initalize font_charset_alist.
15087 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15088 conditionally.
15089
15090 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15091 fonts of the same font-spec. Change the format of RFONT-DEF.
15092 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15093 Adjust for the change of RFONT-DEF.
15094 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15095
15096 * ftfont.h: New file.
15097
15098 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15099 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15100 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15101 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15102 font_otf_capability and font_drive_otf, set ftfont_shape.
15103 (ftfont_list): Adjust for the change of :otf property value.
15104 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15105 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15106 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15107 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15108 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15109 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15110
15111 * w32term.c (x_draw_composite_glyph_string_foreground):
15112 Adjust for the change of lispy gstring.
15113
15114 * xdisp.c (handle_composition_prop): Adjust for the change of
15115 lispy gstring. Call a function for auto-composition with the
15116 third arg it->window.
15117 (fill_composite_glyph_string): Adjust for the change of lispy string.
15118 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15119
15120 * xfaces.c (set_font_frame_param): Adjust for the change of
15121 font_find_for_lface.
15122
15123 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15124 (xfont_registry_charsets): Likewise. Change caller.
15125 (syms_of_xfont): Don't handle x_font_charset_alist.
15126
15127 * xftfont.c: Include "ftfont.h".
15128 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15129 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15130 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15131 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15132 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15133 Set xftfont_driver.shape to xftfont_shape.
15134
15135 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15136 the change of lispy gstring.
15137
15138 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15139
15140 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15141
15142 2008-02-01 Jason Rumney <jasonr@gnu.org>
15143
15144 * w32font.c (w32font_draw): Fill background manually.
15145
15146 2008-02-01 Jason Rumney <jasonr@gnu.org>
15147
15148 * font.c (Qfontp): Remove unused symbol.
15149 (QCantialias): New symbol.
15150 (syms_of_font): Define it.
15151 (font_property_table): Set a validator for QCantialias.
15152
15153 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15154 Define if not already.
15155 (QCfamily): Share with xfaces.c.
15156 (Qstandard, Qsubpixel, Qnatural): New symbols.
15157 (syms_of_w32font): Define them. Don't define QCfamily here.
15158 (w32_antialias_type, lispy_antialias_type): New functions.
15159 (w32_enumfont_pattern_entity): New arg requested_font.
15160 Set antialias parameter if non-default was requested.
15161 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15162
15163 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15164
15165 * lread.c (read1): Undo the previous change.
15166
15167 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15168
15169 * frame.c (Fdelete_frame): Call font_update_drivers only when
15170 USE_FONT_BACKEND is defined.
15171
15172 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15173
15174 * font.h (struct font_bitmap): New member bits_per_pixel.
15175 (struct font_driver): New members start_for_frame and end_for_frame.
15176 (struct font_data_list): New struct.
15177 (font_put_frame_data, font_get_frame_data): Extern them.
15178
15179 * frame.h (struct frame): New member font_data_list.
15180
15181 * font.c (font_update_drivers): Call driver->start_for_frame and
15182 driver->end_for_frame at proper timings.
15183 (font_put_frame_data, font_get_frame_data): New functions.
15184 (Ffont_spec): Add usage in the docstring.
15185
15186 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15187 (Fdelete_frame): Call font_update_drivers.
15188
15189 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15190 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15191 (xftfont_get_xft_draw): New function.
15192 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15193 (xftfont_end_for_frame): New function.
15194 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15195
15196 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15197 Change argument. Cache GCs in the per-frame data.
15198 (struct ftxfont_frame_data): New struct.
15199 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15200 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15201 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15202 (ftxfont_end_for_frame): New function.
15203 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15204
15205 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15206
15207 2008-02-01 Kenichi Handa <handa@m17n.org>
15208
15209 * xselect.c (Vselection_coding_system)
15210 (Vnext_selection_coding_system): Delete them.
15211 (syms_of_xselect): Don't declare selection-coding-system and
15212 next-selection-coding-system. They are declared in select.el.
15213
15214 2008-02-01 Jason Rumney <jasonr@gnu.org>
15215
15216 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15217
15218 * w32fns.c: Include imm.h.
15219 (get_composition_string_fn, get_ime_context_fn): New optional
15220 system functions.
15221 (globals_of_w32fns): Load them from imm32.dll.
15222 (ignore_ime_char): New flag.
15223 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15224 WM_IME_ENDCOMPOSITION messages.
15225
15226 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15227 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15228
15229 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15230
15231 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15232 (READCHAR_REPORT_MULTIBYTE): New macro.
15233 (readchar): New 2nd arg MULTIBYTE.
15234 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15235 Make symbol's name multibyte according to the multibyteness of the
15236 source.
15237
15238 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15239
15240 * xfaces.c (face_for_overlay_string): Call lookup_face with
15241 correct arguments (fix of synching with the trunk).
15242
15243 2008-02-01 Kenichi Handa <handa@m17n.org>
15244
15245 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15246 (font_prop_validate_non_neg, font_prop_validate_spacing):
15247 Delete argument prop_index.
15248 (font_property_table): Change arguments to validater. Change Callers.
15249 (font_lispy_object): Delete.
15250 (font_at): Use font_find_object instead fo font_lispy_object.
15251
15252 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15253
15254 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15255 and file names.
15256
15257 2008-02-01 Jason Rumney <jasonr@gnu.org>
15258
15259 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15260 (font_matches_spec): Remove debug output.
15261 (add_font_entity_to_list): Avoid using substituted fonts.
15262
15263 2008-02-01 Jason Rumney <jasonr@gnu.org>
15264
15265 * doc.c (Fsnarf_documentation):
15266 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15267
15268 2008-02-01 Miles Bader <miles@gnu.org>
15269
15270 * dispextern.h (struct glyph_row): Only define "clip" field if
15271 HAVE_WINDOW_SYSTEM is defined.
15272
15273 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15274
15275 Fix up multi-tty merge.
15276
15277 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15278 and indentation.
15279
15280 * xfaces.c (free_realized_face, clear_face_gcs):
15281 Include font_done_for_face in the input_blocked section, just in case.
15282
15283 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15284 (get_char_face_and_encoding): Undo last change and remove the *other*
15285 duplicate definition (i.e. keep the one that's better scoped and that
15286 includes code for the font-backend).
15287
15288 * terminal.c (create_terminal): Default keyboard_coding to
15289 `no-conversion' and terminal_coding to `undecided'.
15290
15291 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15292
15293 * fontset.c (free_realized_fontsets): Check that the table entry does
15294 contain a fontset before trying to compare it to `base'.
15295
15296 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15297 syms_of_charset, and syms_of_coding earlier because init_window_once
15298 now needs Vcoding_system_hash_table to be setup.
15299
15300 * coding.h (default_buffer_file_coding): Remove.
15301
15302 * coding.c (default_buffer_file_coding): Remove.
15303 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15304 than ->symbol, and use the terminal-local coding system.
15305 (syms_of_coding): Don't setup the coding-systems that are not
15306 terminal-local.
15307 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15308
15309 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15310 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15311
15312 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15313 in chartab.c and were re-added here by mistake.
15314 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15315
15316 * doc.c (Fsnarf_documentation):
15317 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15318 src to etc.
15319
15320 * ChangeLog.10: Add mistakenly removed entry.
15321
15322 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15323
15324 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15325
15326 2008-02-01 Miles Bader <miles@gnu.org>
15327
15328 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15329 Add extra args to FACE_FOR_CHAR.
15330
15331 2008-02-01 Kenichi Handa <handa@m17n.org>
15332
15333 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15334 in sequence.
15335
15336 * chartab.c (map_sub_char_table, map_char_table): If the range
15337 contains just one character, call the function with that character
15338 even if the depth is not 3.
15339
15340 2008-02-01 Jason Rumney <jasonr@gnu.org>
15341
15342 * w32font.c (w32font_text_extents): Calculate metrics for the
15343 whole string.
15344
15345 2008-02-01 Jason Rumney <jasonr@gnu.org>
15346
15347 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15348
15349 2008-02-01 Jason Rumney <jasonr@gnu.org>
15350
15351 * w32term.c (x_set_glyph_string_clipping): Use
15352 get_glyph_string_clip_rects.
15353 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15354 Adjust for the change of struct glyph_string.
15355
15356 * w32font.c (w32font_draw): Do clipping here.
15357
15358 2008-02-01 Kenichi Handa <handa@m17n.org>
15359
15360 * xftfont.c (xftfont_draw): Adjust for the change of struct
15361 glyph_string.
15362
15363 * xterm.c (x_set_glyph_string_clipping): Use
15364 get_glyph_string_clip_rects.
15365 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15366 Adjust for the change of struct glyph_string.
15367
15368 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15369 the resulting clip(s}.
15370 (expose_overlaps): Add arg r. Change callers. Set it to
15371 row->clip temporarily.
15372 (expose_window): Redraw rows overlapping the exposed area.
15373
15374 * dispextern.h (struct glyph_row): New member clip.
15375 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15376 clip_height, new member clip, and num_clips.
15377
15378 2008-02-01 Kenichi Handa <handa@m17n.org>
15379
15380 * data.c (Fchar_or_string_p): Fix docstring.
15381
15382 2008-02-01 Kenichi Handa <handa@m17n.org>
15383
15384 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15385 create a temporary XftDraw object.
15386
15387 2008-02-01 Kenichi Handa <handa@m17n.org>
15388
15389 * font.c (Ffontp): Fix docstring.
15390
15391 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15392 strong evidence of ISO-2022.
15393
15394 2008-02-01 Kenichi Handa <handa@m17n.org>
15395
15396 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15397 SYNTAX_ENTRY_FOLLOW_PARENT.
15398
15399 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15400
15401 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15402 its type.
15403 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15404 Update to the new type of weak_hash_tables and next_weak.
15405
15406 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15407 a plain C pointer to Lisp_Hash_Table.
15408
15409 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15410 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15411 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15412 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15413 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15414 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15415 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15416 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15417 (GC_EQ): Remove since they've been identical to their non-GC_
15418 alter-egos ever since the markbit was eradicated.
15419
15420 * alloc.c:
15421 * buffer.c:
15422 * buffer.h:
15423 * data.c:
15424 * fileio.c:
15425 * filelock.c:
15426 * fns.c:
15427 * frame.h:
15428 * lisp.h:
15429 * macterm.c:
15430 * print.c:
15431 * process.c:
15432 * w32fns.c:
15433 * w32menu.c:
15434 * w32term.c:
15435 * xfns.c:
15436 * xmenu.c:
15437 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15438
15439 2008-02-01 Kenichi Handa <handa@m17n.org>
15440
15441 * chartab.c (map_sub_char_table): Make it work for the top-level
15442 char-table. Fix handling of parent char-table.
15443 (map_char_table): Adjust for the above change.
15444
15445 2008-02-01 Jason Rumney <jasonr@gnu.org>
15446
15447 * w32font.c (Qgdi): Rename from Qw32.
15448
15449 2008-02-01 Jason Rumney <jasonr@gnu.org>
15450
15451 * w32bdf.c (get_quoted_string): Make function static.
15452
15453 2008-02-01 Kenichi Handa <handa@m17n.org>
15454
15455 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15456 bigger ascent and descent than those of the font, use them as
15457 font's ascent and descent.
15458
15459 2008-02-01 Kenichi Handa <handa@m17n.org>
15460
15461 * Makefile.in (${lispsource}international/charprop.el): Move this
15462 target within "#ifdef HAVE_UNIDATA" and "#endif".
15463
15464 2008-02-01 Kenichi Handa <handa@m17n.org>
15465
15466 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15467 (shortlisp): Add ../lisp/language/tai-viet.el.
15468
15469 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
15470
15471 * Makefile.in (${lispsource}international/charprop.el): Depend on
15472 temacs${EXEEXT}.
15473
15474 2008-02-01 Jason Rumney <jasonr@gnu.org>
15475
15476 * w32font.c (w32font_close): Delete the GDI font object.
15477
15478 * w32menu.c: Include character.h.
15479
15480 * w32proc.c: Likewise.
15481
15482 * w32select.c: Likewise.
15483
15484 * makefile.w32-in (w32proc.o): Depend on character.h.
15485
15486 2008-02-01 Jason Rumney <jasonr@gnu.org>
15487
15488 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15489
15490 * w32menu.c (syms_of_w32menu): Likewise.
15491
15492 * w32proc.c (syms_of_ntproc): Likewise.
15493
15494 * w32select.c (syms_of_w32select): Likewise.
15495
15496 * w32term.c (syms_of_w32term): Likewise.
15497
15498 2008-02-01 Jason Rumney <jasonr@gnu.org>
15499
15500 * w32font.c (w32font_draw): Delete brush after using it.
15501
15502 2008-02-01 Jason Rumney <jasonr@gnu.org>
15503
15504 * w32font.c (w32font_open): Don't set font_idx.
15505 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15506 to font settings.
15507 (w32font_draw): Fill background explicitly.
15508
15509 2008-02-01 Jason Rumney <jasonr@gnu.org>
15510
15511 * w32term.c (w32_initialize): Don't call w32font_initialize.
15512
15513 * w32font.c (w32font_info): Remove subranges.
15514 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15515 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15516 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15517 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15518 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15519 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15520 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15521 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15522 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15523 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15524 New symbols.
15525 (font_callback_data): New struct.
15526 (w32font_list, w32font_match): Use it.
15527 (w32font_open): Don't populate subranges.
15528 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15529 (w32font_encode_char): Always return unicode code-point as-is.
15530 (w32font_text_extents): Supply a transformation matrix to
15531 GetGlyphOutline. Never look up by glyph index. Avoid looping
15532 twice. Use unicode version of GetTexExtentPoint32 instead of
15533 glyph index version.
15534 (set_fonts_frame): Remove.
15535 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15536 set frame parameter. Use backward compatible fake foundries.
15537 Save generic family in extra slot under QCfamily. Make width slot
15538 constant. Save QCspacing value. Save list of scripts instead of
15539 binary subranges.
15540 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15541 (add_font_entity_to_list): Use font_callback_data struct. Filter
15542 unwanted fonts.
15543 (add_one_font_entity_to_list): Use font_callback_data struct.
15544 (w32_registry): Default to iso10646_1.
15545 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15546 string font registries. Don't fill in font name if it is a generic
15547 family name, fill family instead. Use spacing, family and script
15548 extra info to fill pitch, family and charset fields.
15549 (list_all_matching_fonts): Use font_callback_data struct.
15550 (unicode_range_for_char): Remove.
15551 (font_supported_scripts): New function.
15552 (w32font_initialize): Remove.
15553 (syms_of_w32font): Update which symbols are defined.
15554
15555 2008-02-01 Jason Rumney <jasonr@gnu.org>
15556
15557 * font.c (font_pixel_size): Reverse assq_no_quit args.
15558
15559 * w32term.h (FONT_WIDTH): Report max width, not average.
15560 (FONT_MAX_WIDTH): Remove.
15561 (FONT_AVG_WIDTH): New macro.
15562
15563 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15564 redefinition of FONT_WIDTH.
15565
15566 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15567 (w32_cache_char_metrics): Use FONT_WIDTH.
15568
15569 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15570
15571 2008-02-01 Jason Rumney <jasonr@gnu.org>
15572
15573 * w32font.c (w32font_open): Make lfHeight negative.
15574
15575 * w32fns.c (x_default_font_parameter): Use new style font name.
15576 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15577
15578 2008-02-01 Jason Rumney <jasonr@gnu.org>
15579
15580 * w32font.c (QCsubranges): New symbol.
15581 (w32font_open, w32font_has_char): Get subranges from subproperty
15582 of extra.
15583 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15584 (syms_of_w32font): Define :subranges symbol.
15585
15586 * font.c (font_put_extra): Expose externally.
15587
15588 * font.h (font_put_extra): Move declaration from font.c.
15589
15590 * font.c (Ffont_get): Use font driver to determine otf capability.
15591 (adjust_anchor): Check if driver defines anchor_point before using.
15592
15593 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15594 (w32font_draw): Use options.
15595 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15596 Fix detection of truetype fonts.
15597 (registry_to_w32_charset): Handle charsets other than iso8859-1
15598 expressed as lisp symbols.
15599 (w32_registry): Express charset as lisp symbol.
15600 (fill_in_logfont): Reverse pixel and point height logic.
15601 Don't set width here. Set quality to default.
15602
15603 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15604 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15605
15606 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15607 Remove redundant loop and allocation.
15608
15609 * makefile.w32-in (font.o, w32font.o): New objects.
15610 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15611 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15612
15613 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15614 STORE_XCHARB a valid l-value.
15615
15616 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15617 calculations for non-Truetype fonts.
15618 (x_draw_glyph_string): Sync with xterm.c.
15619 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15620 Remove redundant code.
15621 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15622
15623 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15624 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15625
15626 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15627 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15628
15629 * w32font.c: New file for w32 font backend.
15630
15631 2008-02-01 Kenichi Handa <handa@m17n.org>
15632
15633 * term.c: Don't include "buffer.h" twice.
15634
15635 2008-02-01 Kenichi Handa <handa@m17n.org>
15636
15637 * character.c (Funibyte_string): New function.
15638 (syms_of_character): Defsubr it.
15639
15640 2008-02-01 Jason Rumney <jasonr@gnu.org>
15641
15642 * w32term.c [USE_FONT_BACKEND]:
15643 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15644 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15645 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15646 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15647 (x_free_frame_resources): Sync with xterm.c.
15648
15649 2008-02-01 Andreas Schwab <schwab@suse.de>
15650
15651 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15652 char-table size.
15653
15654 2008-02-01 Kenichi Handa <handa@m17n.org>
15655
15656 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15657
15658 2008-02-01 Kenichi Handa <handa@m17n.org>
15659
15660 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15661 font_otf_gpos, add font_drive_otf.
15662
15663 * fontset.c (fontset_find_font): Pay attention to font size
15664 specified for a font.
15665 (reorder_font_vector): Check contents of font_def.
15666
15667 * font.c (struct otf_list): Delete it.
15668 (otf_list): Make it a lisp variable.
15669 (otf_open): Use lispy otf_list.
15670 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15671 (check_otf_features): New function.
15672 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15673 New functions.
15674 (font_drive_otf): New function merging font_otf_gsub and
15675 font_otf_gpos.
15676 (font_open_for_lface): New arg spec. Change argument order.
15677 (font_load_for_face): Adjust for the change of font_open_for_lface.
15678 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15679 Ffont_otf_gpos.
15680 (syms_of_font): Staticpro otf_list. Delete defsubr of
15681 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15682
15683 * xfaces.c (set_font_frame_param): Adjust for the change of
15684 font_open_for_lface.
15685
15686 * font.h (font_open_for_lface): Adjust prototype.
15687 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15688 member otf_drive.
15689 (font_otf_gsub, font_otf_gpos): Delete externs.
15690 (font_drive_otf): Extern it.
15691
15692 2008-02-01 Kenichi Handa <handa@m17n.org>
15693
15694 * font.c (font_at): If the window W is not on a window system,
15695 return Qnil.
15696
15697 * coding.c (produce_chars, encode_coding): Don't call
15698 insert_from_gap if no characters to produce.
15699
15700 2008-02-01 Kenichi Handa <handa@m17n.org>
15701
15702 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15703 Fclear_face_cache.
15704
15705 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15706
15707 2008-02-01 Miles Bader <miles@gnu.org>
15708
15709 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15710 Parse "--disable-font-backend" option.
15711 (standard_args): Add "--disable-font-backend" option.
15712
15713 2008-02-01 Kenichi Handa <handa@m17n.org>
15714
15715 * fontset.c (fontset_find_font): New function.
15716 (fontset_font): Use fontset_find_font.
15717 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15718 Register the specified font for all Latin characters.
15719 (new_fontset_from_font): Register the specified font for all Latin
15720 characters.
15721 (dump_fontset): For a realized fontset, include the base fontset
15722 name in the returned vector.
15723
15724 2008-02-01 Kenichi Handa <handa@m17n.org>
15725
15726 * character.h (CHAR_STRING): Cast C to unsigned on calling
15727 char_string.
15728
15729 * character.c (char_string): Type of arg C changed to unsigned.
15730 Signal an error if C is an invalid character code.
15731
15732 * editfns.c (general_insert_function, Fchar_to_string):
15733 Use CHARACTERP, not INTEGERP.
15734
15735 2008-02-01 Kenichi Handa <handa@m17n.org>
15736
15737 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15738 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15739
15740 * regex.c (analyse_first): Fix for multibyte characters in "case
15741 charset:" and "case categoryspec:".
15742
15743 2008-02-01 Andreas Schwab <schwab@suse.de>
15744
15745 * Makefile.in (LIBES): Move standard libraries to the end.
15746
15747 2008-02-01 Kenichi Handa <handa@m17n.org>
15748
15749 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15750 nonzero, don't shrink the buffer nextb.
15751
15752 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15753
15754 * coding.c (coding_alloc_by_making_gap): New arg offset.
15755 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15756 offset.
15757 (decode_coding_iso_2022): Update coding->safe_charsets.
15758 (decode_coding_gap): Temporarily set
15759 current_buffer->text->inhibit_shrinking to 1.
15760
15761 2008-02-01 Kenichi Handa <handa@m17n.org>
15762
15763 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15764 indexing into elements of s->cmp and s->char2b.
15765
15766 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
15767
15768 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15769
15770 2008-02-01 Kenichi Handa <handa@m17n.org>
15771
15772 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15773 target_multibyte instead of multibyte.
15774 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15775 (bcmp_translate): Change the argument name from multibyte to
15776 target_multibyte.
15777
15778 2008-02-01 Kenichi Handa <handa@m17n.org>
15779
15780 These changes are to compile a regexp into a pattern that can be
15781 used both for multibyte and unibyte targets.
15782
15783 * Makefile.in (search.o): Depend on charset.h.
15784
15785 * character.c (multibyte_char_to_unibyte_safe): New function.
15786
15787 * search.c: Include "charset.h".
15788 (compile_pattern_1): Delete argument multibyte. Don't set
15789 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15790 (compile_pattern): Don't compare cp->buf.target_multibyte.
15791 Compare cp->buf.charset_unibyte.
15792 (compile_pattern): Set cp->buf.target_multibyte.
15793
15794 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15795
15796 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15797
15798 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15799 multibyte. Change callers.
15800 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15801 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15802 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15803 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15804 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15805 (regex_compile): Make the compiled pattern usable both for
15806 multibyte and unibyte targets.
15807 (analyse_first): Make the fastmap usable both for multibyte and
15808 unibyte targets.
15809 (TRANSLATE_VIA_MULTIBYTE): Delete.
15810 (re_match_2_internal): Pay attention to the case that the
15811 multibyteness of bufp and target may be different.
15812
15813 2008-02-01 Kenichi Handa <handa@m17n.org>
15814
15815 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15816 empty box occupy at least one column width.
15817
15818 2008-02-01 Miles Bader <miles@gnu.org>
15819
15820 * Makefile.in: Remove redundant HAVE_XFT clause.
15821
15822 2008-02-01 Kenichi Handa <handa@m17n.org>
15823
15824 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
15825
15826 2008-02-01 Kenichi Handa <handa@m17n.org>
15827
15828 * fontset.c (Finternal_char_font): Fix for the case of POSITION
15829 being nil.
15830
15831 2008-02-01 Kenichi Handa <handa@m17n.org>
15832
15833 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
15834
15835 2008-02-01 Kenichi Handa <handa@m17n.org>
15836
15837 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
15838
15839 2008-02-01 Kenichi Handa <handa@m17n.org>
15840
15841 * search.c (simple_search): Fix previous change.
15842
15843 2008-02-01 Kenichi Handa <handa@m17n.org>
15844
15845 * xftfont.c (ftfont_font_format): Extern declaration.
15846
15847 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
15848
15849 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
15850 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
15851
15852 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
15853 (ftfont_font_format): Fix previous change.
15854
15855 * font.h (Ffont_xlfd_name): EXFUN it.
15856
15857 * font.c (font_parse_xlfd): Fix the array size of `f'.
15858 (register_font_driver): Use EQ to compare driver->type.
15859
15860 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
15861 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
15862 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
15863
15864 2008-02-01 Kenichi Handa <handa@m17n.org>
15865
15866 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
15867 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
15868
15869 2008-02-01 Kenichi Handa <handa@m17n.org>
15870
15871 * xfont.c (xfont_open): Set font->format.
15872
15873 * xftfont.c (xftfont_open): Set font->format.
15874
15875 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
15876 (ftfont_list): Include FC_FONTFORMAT in FcObject.
15877 (ftfont_open): Set font->format.
15878 (ftfont_font_format): New function.
15879
15880 * font.h (struct font): New member format.
15881
15882 * font.c (Qopentype): New variable.
15883 (syms_of_font): Defsym it.
15884 (Fquery_font): Change the format of the last element of the return
15885 value.
15886
15887 2008-02-01 Kenichi Handa <handa@m17n.org>
15888
15889 * xfns.c (xic_create_xfontset): Try the default fontset name as a
15890 last resort.
15891
15892 2008-02-01 Kenichi Handa <handa@m17n.org>
15893
15894 * coding.c (detect_coding_charset): Fix detection of multi-byte
15895 charset.
15896
15897 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
15898
15899 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
15900
15901 2008-02-01 Kenichi Handa <handa@m17n.org>
15902
15903 * xdisp.c (get_next_display_element): Set it->face_id for the
15904 first component of a composition.
15905 (x_produce_glyphs): Check if the font is changed or not for composition.
15906
15907 2008-02-01 Kenichi Handa <handa@m17n.org>
15908
15909 * fontset.c (Qlatin): New variable.
15910 (syms_of_fontset): Define it as a lisp symbol.
15911 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
15912
15913 2008-02-01 Kenichi Handa <handa@m17n.org>
15914
15915 * font.c (font_unparse_fcname): Pay attention to the case that
15916 some of font property is a null string.
15917
15918 2008-02-01 Kenichi Handa <handa@m17n.org>
15919
15920 * term.c: Include "composite.h".
15921 (encode_terminal_code): Output all components of composition.
15922 Check the size of encode_terminal_src.
15923 (produce_glyphs): For composition, call produce_composite_glyph.
15924 (append_composite_glyph, produce_composite_glyph): New functions.
15925
15926 * xdisp.c (x_produce_glyphs): In handling composition, if a font
15927 is not found, get font_info from the current ascii face.
15928
15929 2008-02-01 Kenichi Handa <handa@m17n.org>
15930
15931 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
15932 buffer-file-name to Qnil before calling insert_from_buffer.
15933
15934 * font.c (font_unparse_fcname): Pay attention to the case that
15935 foundry is a null string.
15936
15937 2008-02-01 Kenichi Handa <handa@m17n.org>
15938
15939 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
15940
15941 * font.c (Qunicode_sip): New variable.
15942 (syms_of_font): Declare it as a Lisp symbol.
15943
15944 * font.h (Qunicode_sip): Extern it.
15945
15946 2008-02-01 Kenichi Handa <handa@m17n.org>
15947
15948 * composite.c (get_composition_id): Pay attention to TAB component.
15949
15950 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
15951 TAB. Adjust for the change of s->char2b which always points to
15952 the first element of allocated memory.
15953
15954 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
15955
15956 * xdisp.c (handle_composition_prop): Set it->c to the first
15957 non-TAB component.
15958 (fill_composite_glyph_string): Change argument.
15959 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
15960 (x_produce_glyphs): Fix handling of left/right padding.
15961
15962 2008-02-01 Kenichi Handa <handa@m17n.org>
15963
15964 * coding.c (detect_coding_system): Fix for handling off
15965 inhibit_iso_escape_detection. Fix for the case that no coding
15966 system is defined for a specific coding category.
15967
15968 2008-02-01 Kenichi Handa <handa@m17n.org>
15969
15970 * font.c (font_matching_entity): Delete unused local var.
15971
15972 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
15973 opening a font.
15974
15975 * fileio.c (Finsert_file_contents): On recovering a file, assume
15976 Unix-like eol.
15977 (choose_write_coding_system): On auto-saving a file, force
15978 Unix-like eol.
15979
15980 * coding.c (setup_coding_system): Fix setting of
15981 coding->common_flags based on eol_type.
15982 (coding_inherit_eol_type): If PARENT is not nil, be sure to
15983 inherit from it.
15984
15985 2008-02-01 Kenichi Handa <handa@m17n.org>
15986
15987 * alloc.c (NSTATICS): Increas to 0x600.
15988
15989 2008-02-01 Kenichi Handa <handa@m17n.org>
15990
15991 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
15992 (ftfont_list): Don't check :name property.
15993 (ftfont_match): New function.
15994 (ftfont_pattern_entity): If the pattern doesn't contain
15995 FC_SPACING, don't assume FC_MONO.
15996
15997 * font.h (struct font_driver): New member `match'.
15998 (font_update_drivers): Adjust prototype.
15999
16000 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16001 property of FONT.
16002 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16003 them unconditionally.
16004 (font_matching_entity): New function.
16005 (font_open_by_name): Try font_matching_entity if exact match is
16006 not found.
16007 (font_update_drivers): Delete the arg FONT. Return a list of
16008 actually used backends. Don't free faces, font caches here.
16009 Don't store data in frame parameters. Don't call x_set_font.
16010 (Ffont_spec): Store :name property as is.
16011 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16012 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16013 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16014 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16015 Call font->driver->otf_gsub instead of font_otf_gsub.
16016
16017 * frame.c (x_set_font_backend): Do more works that were done in
16018 font_update_drivers before.
16019
16020 * xfont.c (xfont_match): New function.
16021 (xfont_driver): Set xfont_driver.match to xfont_match.
16022 (xfont_draw): Set font in GC if necessary.
16023
16024 * ftxfont.c (ftxfont_match): New function.
16025 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16026
16027 * xftfont.c (xftfont_match): New function.
16028 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16029
16030 2008-02-01 Kenichi Handa <handa@m17n.org>
16031
16032 * font.h (struct font): New member scalable.
16033 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16034 (font_otf_gsub): Adjust prototype.
16035
16036 * font.c (font_otf_capability): Fix handling of the default langsys.
16037 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16038 Check the contents of SPEC.
16039 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16040 (check_gstring): New function.
16041 (REPLACEMENT_CHARACTER): New macro.
16042 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16043 glyph codes of GSTRING.
16044 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16045 (font_prepare_composition): Set cmp->glyph_len.
16046 (font_open_entity): Set font->scalable.
16047 (Ffont_get): Handle :otf property.
16048 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16049 functions.
16050 (Fquery_font): Use font->font.full_name.
16051 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16052 Sfont_otf_alternates.
16053
16054 * ftfont.c (ftfont_open): Set font->font.full_name and
16055 font->font.name properly. Fix calculation of font->font.height
16056 and font->min_width.
16057
16058 * ftxfont.c (ftxfont_create_gcs): New function.
16059 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16060 (ftxfont_draw_backgrond): Fix filling region.
16061 (ftxfont_default_fid): New function.
16062 (ftxfont_open): Set xfont->fid to the return value of
16063 ftxfont_default_fid.
16064 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16065 (ftxfont_done_face): Free only GCs that are created by
16066 ftxfont_create_gcs.
16067 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16068
16069 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16070 Clip to src->width, etc (not src->clip_XXX).
16071
16072 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16073 FontBackend frame parameter.
16074
16075 2008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * font.h (struct font_driver_list): New member `on'.
16078 (Fclear_font_cache): EXFUN it.
16079 (font_update_drivers): Extern it.
16080
16081 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16082 (font_list_entities): Check driver_list->on.
16083 (register_font_driver): Initalize `on' member to 0.
16084 (font_update_drivers): New function.
16085 (Fclear_font_cache): Check driver_list->on.
16086
16087 * frame.h (Qfont_backend): Extern it.
16088 (x_set_font_backend): Extern it.
16089
16090 * frame.c (Qfont_backend): New variable.
16091 (frame_parms): New element for font-backend.
16092 (x_set_font_backend): New function.
16093
16094 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16095 FontBackend frame parameter.
16096 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16097 x_set_font_backend.
16098
16099 * xfont.c (xfont_list): Don't try listing by :name property if the
16100 name is not for XLFD.
16101
16102 2008-02-01 Kenichi Handa <handa@m17n.org>
16103
16104 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16105 (LGLYPH_SET_TO): New macros.
16106 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16107 element of G is vector or not.
16108 (font_at): Extern it.
16109
16110 * font.c: Include window.h.
16111 (font_lispy_object): New function.
16112 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16113 end of valid glyph.
16114 (font_close_object): Fix getting (struct font *).
16115 (font_at): New function.
16116 (Ffont_get): If FONT is a font-object, get entity from it.
16117 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16118 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16119 range check.
16120 (Ffont_at): New function.
16121 (syms_of_font): Defsubr Sfont_at.
16122
16123 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16124 before the entry for Qcomposition.
16125 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16126 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16127 the font in gstring.
16128 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16129 LGLYPH_FORM (g) to detect the end of valid glyph.
16130 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16131 we are composing with gstring.
16132
16133 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16134 Check if adjustment is vector or not.
16135
16136 * Makefile.in (font.o): Make it depends on window.h.
16137
16138 2008-02-01 Kenichi Handa <handa@m17n.org>
16139
16140 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16141 adjustment is vector or not.
16142
16143 2008-02-01 Miles Bader <miles@gnu.org>
16144
16145 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16146
16147 2008-02-01 Kenichi Handa <handa@m17n.org>
16148
16149 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16150 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16151 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16152
16153 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16154 (DEVICE_DELTA): Fix typo.
16155 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16156 LGLYPH format.
16157
16158 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16159 the change of LGLYPH format.
16160
16161 2008-02-01 Kenichi Handa <handa@m17n.org>
16162
16163 * ftfont.c (ftfont_list): Fix typo.
16164 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16165
16166 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16167
16168 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16169
16170 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16171 xftface_info is non-NULL.
16172
16173 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16174
16175 * ftfont.c (ftfont_list): Move misplaced #endif.
16176
16177 2008-02-01 Kenichi Handa <handa@m17n.org>
16178
16179 * ftfont.c (ftfont_list): Pay attention to the case that
16180 FC_CAPABILITY is not defined.
16181
16182 2008-02-01 Kenichi Handa <handa@m17n.org>
16183
16184 * xftfont.c (xftfont_open): Set charset related members to -1.
16185
16186 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16187 QCname.
16188 (ftfont_open): Set charset related members to -1.
16189
16190 * fontset.c (Votf_script_alist): New variable.
16191 (syms_of_fontset): Initialize it.
16192 (fontset_font): Delete unused variable.
16193
16194 * fontset.h (Votf_script_alist): Extern it.
16195
16196 * font.c (font_find_for_lface): Optimize code.
16197
16198 * font.h (font_close_object, font_merge_old_spec): Extern them.
16199
16200 2008-02-01 Kenichi Handa <handa@m17n.org>
16201
16202 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16203 (syms_of_font): Initialize them.
16204 (font_pixel_size): Allow float value in dpi.
16205 (font_prop_validate_type): Delete.
16206 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16207 Change caller.
16208 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16209 (font_prop_validate_extra): Delete.
16210 (font_prop_validate_spacing): New function.
16211 (font_property_table): Add elements for all known properties.
16212 (get_font_prop_index): Rename from check_font_prop_name. New
16213 argument FROM. Change caller.
16214 (font_prop_validate): Validate all known properties.
16215 (font_put_extra): Delete argument force. Change caller.
16216 (font_expand_wildcards): Make it static. Fix the way of shrinking
16217 the possible range.
16218 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16219 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16220 Change caller.
16221 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16222 (font_parse_fcname): Delete argument merge. Fix parsing of point
16223 size. Don't validate properties values here. Change caller.
16224 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16225 (font_open_by_name): Delete unused variable.
16226 (Ffont_spec): Likewise. Validate property values.
16227 (Ffont_match_p): New function.
16228
16229 * font.h (QCscalable): Extern it.
16230 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16231
16232 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16233
16234 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16235 (xfont_list_pattern): New function.
16236 (xfont_list): Use xfont_list_pattern.
16237
16238 2008-02-01 Kenichi Handa <handa@m17n.org>
16239
16240 * font.h (Flist_fonts): EXFUN it.
16241
16242 2008-02-01 Jason Rumney <jasonr@gnu.org>
16243
16244 * w32term.c (w32_initialize): Add back smoothing_type and
16245 smoothing_enabled definitions.
16246
16247 2008-02-01 Kenichi Handa <handa@m17n.org>
16248
16249 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16250 s->face->font on determining underline position.
16251
16252 2008-02-01 Kenichi Handa <handa@m17n.org>
16253
16254 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16255 (font_has_char): Accept font-object too.
16256 (font_find_for_lface): Try at first with a size specified in face.
16257
16258 2008-02-01 Kenichi Handa <handa@m17n.org>
16259
16260 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16261 font_open_by_name.
16262
16263 2008-02-01 Kenichi Handa <handa@m17n.org>
16264
16265 * font.h (QCspacing, QCdpi): Extern them.
16266 (enum font_spacing): New enum.
16267 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16268
16269 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16270 (QCspacing, QCdpi): New variables.
16271 (syms_of_font): Initialize them.
16272 (font_pixel_size): New function.
16273 (font_put_extra): New function.
16274 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16275 in FONT_EXTRA.
16276 (font_parse_fcname): Handle enumerated values (e.g. bold).
16277 Fix handling font size. Add QCname property that contains only
16278 unknown properties.
16279 (font_score): Change argument. Change caller. Pay attention to
16280 FONT_PIXEL_SIZE_QUANTUM.
16281 (font_sort_entites, font_list_entities, font_find_for_lface)
16282 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16283 (Ffont_spec): Add QCname property that contains only unknown properties.
16284
16285 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16286 include weight in listing pattern, instead check weight of each
16287 listed font. Don't include scalable in pattern. Pay attention to
16288 FONT_PIXEL_SIZE_QUANTUM.
16289
16290 2008-02-01 Kenichi Handa <handa@m17n.org>
16291
16292 * font.c (font_parse_fcname): Fix parsing of point-size.
16293 (font_unparse_fcname): Produce symbolic names for style properties.
16294 (font_list_entities): Handle float size correctly.
16295 (font_open_by_name): Prefer `normal' property values if the name
16296 doesn't specify them.
16297
16298 * fontset.c (Finternal_char_font): Use font_get_name, not
16299 Ffont_xlfd_name.
16300
16301 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16302 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16303 pattern. Don't force scalable.
16304
16305 * xftfont.c (xftfont_open): For generating a name, start from
16306 96-byte buffer.
16307
16308 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16309
16310 * frame.h (x_new_fontset2): Fix prototype.
16311
16312 2008-02-01 Kenichi Handa <handa@m17n.org>
16313
16314 * font.h (struct font_driver): Delete member parse_name.
16315 (font_match_p, font_get_spec, font_parse_fcname)
16316 (font_unparse_fcname): Extern them.
16317 (font_get_name): Adjust prototype.
16318
16319 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16320 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16321 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16322 unnecessary checks for weight, slant, and swidth.
16323 (font_parse_fcname): New function.
16324 (font_unparse_fcname): New function.
16325 (font_parse_name): New function.
16326 (font_match_p): New function.
16327 (font_get_name): Change return value to Lisp string.
16328 (font_get_spec): New function.
16329 (Qunspecified, Qignore_defface): Don't extern them.
16330 (font_find_for_lface): Assume that LFACE is fully specified.
16331 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16332 object, use it for FACE.
16333 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16334 driver->parse_name.
16335 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16336
16337 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16338 prototype.
16339
16340 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16341 argument F. Don't call Fnew_fontset. Instead, directly call
16342 make_fontset.
16343
16344 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16345
16346 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16347 of x_new_fontset2.
16348
16349 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16350 (Qsans__serif): New variables.
16351 (ftfont_generic_family_list): New variable.
16352 (syms_of_ftfont): Initialize the above variables.
16353 (ftfont_pattern_entity): Delete argument NAME.
16354 (ftfont_list_generic_family): New function.
16355 (ftfont_parse_name): Delete this function.
16356 (ftfont_list): Try generic family only when FcFontList found no font.
16357 (ftfont_list_family): Fix args to FcObjectSetBuild.
16358
16359 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16360 object in attrs[LFACE_FONT_INDEX].
16361 (set_lface_from_font_name): Cancel all changes for font-backend.
16362 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16363 function.
16364 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16365 font object in QCfont attribute.
16366 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16367 (realize_default_face) [USE_FONT_BACKEND]: Call
16368 set_lface_from_font_and_fontset.
16369
16370 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16371 "fixed", and signal error here if no suitable font was found.
16372
16373 * xfont.c (xfont_parse_name): Delete this function.
16374
16375 * xftfont.c (xftfont_open): Change coding style of error
16376 handling. Generate fontconfig's fontname pattern.
16377
16378 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16379 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16380
16381 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16382 Both args FONTSET and FONT_OBJECT must be existing ones.
16383
16384 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16385
16386 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16387
16388 2008-02-01 Kenichi Handa <handa@m17n.org>
16389
16390 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16391
16392 * font.h (struct font): Fix typo.
16393
16394 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16395 XLFD_XXX_INDEX.
16396 (enum xlfd_field_mask): New enum.
16397 (intern_font_field): Changed argument. Change caller. If digits
16398 are followed by non-digits, return a symbol.
16399 (font_expand_wildcards): New function.
16400 (font_parse_xlfd): Fix wildcard handling.
16401 (Ffont_spec): If :name is specified, reflect the info in the other
16402 properties.
16403
16404 * ftfont.c (ftfont_pattern_entity): Fix typo.
16405 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16406 locale.
16407
16408 2008-02-01 Kenichi Handa <handa@m17n.org>
16409
16410 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16411
16412 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16413 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16414 registry doesn't specify encoding part.
16415 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16416 (font_open_by_name): At first try parsing the name.
16417 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16418 as Lisp symbols.
16419
16420 * fontset.c (reorder_font_vector): Pay attention to the case that
16421 the 3rd element of font_def is nil.
16422 (fontset_font): For the default fontset, append one more fontset
16423 elements for a script-based font specification. Don't add script
16424 attribute on finding a font.
16425 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16426 font name.
16427 (fontset_ascii_font): If a font can't be opened, return nil.
16428
16429 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16430 (ftfont_pattern_entity): New function.
16431 (ftfont_get_cache): Assume that freetype_font_cache is already
16432 initialized.
16433 (ftfont_list): Handle the case that a file is specified in font
16434 name. Use ftfont_pattern_entity to generate entities.
16435 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16436 (syms_of_ftfont): Initialize freetype_font_cache.
16437
16438 * xftfont.c (xftfont_open): Make the font name fontconfig's
16439 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16440 (xftfont_close): Free font->font.name if not NULL.
16441
16442 * xfont.c (xfont_list): If script is specified for a font, return
16443 null_vector.
16444 (xfont_list_family): Declare argument type.
16445
16446 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16447 name, set LFACE_FONT (lface) to nil.
16448
16449 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16450 return Qnil.
16451
16452 2008-02-01 Kenichi Handa <handa@m17n.org>
16453
16454 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16455 (standard_args): Add "-enable-font-backend".
16456
16457 2008-02-01 Kenichi Handa <handa@m17n.org>
16458
16459 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16460 (struct xftdraw_list, xftdraw_list): Delete them.
16461 (register_xftdraw, check_xftdraw): Delete them.
16462 (xftfont_prepare_face): Don't call register_xftdraw.
16463 (xftfont_done_face): Don't call check_xftdraw.
16464 (xftfont_draw): Get background color only when with_background is
16465 nonzero.
16466
16467 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16468
16469 2008-02-01 Kenichi Handa <handa@m17n.org>
16470
16471 These changes are for the new font handling codes.
16472
16473 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16474 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16475 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16476 (FONTSRC, FONTOBJ): New variables.
16477 (obj): Add $(FONTOBJ).
16478 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16479 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16480 @LIBOTF_LIBS@.
16481 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16482 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16483
16484 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16485
16486 * character.h (Vscript_representative_chars): Extern it.
16487
16488 * character.c (Vscript_representative_chars): New variable.
16489 (syms_of_character): Declare it as a Lisp variable.
16490
16491 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16492 enable_font_backend is nonzero, accept the composition method
16493 COMPOSITION_WITH_GLYPH_STRING.
16494
16495 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16496 enumeration COMPOSITION_WITH_GLYPH_STRING.
16497
16498 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16499 members clip_x, clip_y, clip_width, and clip_height.
16500 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16501
16502 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16503 --enable-font-backend. Call syms_of_font.
16504
16505 * fns.c (assoc_no_quit): New function.
16506
16507 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16508 (face_for_font, new_fontset_from_font)
16509 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16510
16511 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16512 (fontset_font, fontset_ascii, face_for_char)
16513 (make_fontset_for_ascii_face, Ffont_info)
16514 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16515 is nonzero, use font-backend mechanism.
16516 (find_font_encoding): Make it non-static.
16517 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16518 New functions.
16519
16520 * frame.h (struct frame): New members resx and resy.
16521 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16522 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16523
16524 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16525 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16526
16527 * lisp.h (assoc_no_quit): Extern it.
16528
16529 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16530 Through out the file, use FONT_INFO_FROM_FACE instead of
16531 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16532 rif->per_char_metric.
16533 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16534 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16535 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16536 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16537 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16538 nonzero, use font-backend mechanism.
16539 (get_per_char_metric): New function.
16540
16541 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16542 (set_lface_from_font_name)
16543 (set_font_frame_param, free_realized_face)
16544 (prepare_face_for_display, clear_face_gcs)
16545 (Finternal_set_font_selection_order, realize_x_face)
16546 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16547 font-backend mechanism.
16548 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16549 (load_face_font) [USE_FONT_BACKEND]: Abort.
16550 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16551 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16552
16553 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16554 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16555 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16556 nonzero, register all available font drivers. Call
16557 x_default_font_parameter for deciding a font.
16558 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16559
16560 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16561 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16562 (x_set_glyph_string_clipping_exactly)
16563 (x_compute_glyph_string_overhangs)
16564 (x_draw_glyph_string_foreground)
16565 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16566 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16567 enable_font_backend is nonzero, use font-backend mechanism.
16568 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16569
16570 2008-02-01 Kenichi Handa <handa@m17n.org>
16571
16572 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16573 system_eol_type.
16574 (syms_of_coding): Initialize system_eol_type.
16575
16576 * process.c (Fset_process_coding_system): Inherit system's eol
16577 format if necessary.
16578
16579 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16580
16581 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16582
16583 2008-02-01 Kenichi Handa <handa@m17n.org>
16584
16585 * coding.c (decode_eol): Pay attention to buffer relocation in
16586 del_range_2.
16587 (decode_coding): Call decode_eol before restoring undo_list.
16588
16589 2008-02-01 Kenichi Handa <handa@m17n.org>
16590
16591 * charset.c (Fdefine_charset_internal): Fix setting of
16592 emacs_mule_bytes.
16593
16594 2008-02-01 Kenichi Handa <handa@m17n.org>
16595
16596 * keyboard.c (read_char): Check if C is a character or not before
16597 looking up Vkeyboard_translate_table.
16598
16599 2008-02-01 Kenichi Handa <handa@m17n.org>
16600
16601 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16602 condition to terminate the loop.
16603
16604 2008-02-01 Kenichi Handa <handa@m17n.org>
16605
16606 * coding.c (produce_composition): Compare charbuf[i] instead of
16607 args[i] against 0.
16608 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16609
16610 2008-02-01 Kenichi Handa <handa@m17n.org>
16611
16612 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16613 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16614 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16615 detect_coding.
16616 (emacs_mule_char): Handle old style (Emacs 20) component character
16617 of a composition.
16618 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16619 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16620 composition rule.
16621 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16622
16623 2008-02-01 Kenichi Handa <handa@m17n.org>
16624
16625 * coding.c (encode_coding_ccl): Allocate destination dynamically
16626 when necessary.
16627
16628 2008-02-01 Kenichi Handa <handa@m17n.org>
16629
16630 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16631 the loop. When quitted, show a proper error message.
16632
16633 2008-02-01 Kenichi Handa <handa@m17n.org>
16634
16635 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16636 src->clip_head and src->clip_tail temporarily instead of src->hl.
16637
16638 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16639 character sequence.
16640 (Fccl_execute_on_string): Use ASET, not XSET.
16641
16642 2008-02-01 Kenichi Handa <handa@m17n.org>
16643
16644 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16645
16646 2008-02-01 Kenichi Handa <handa@m17n.org>
16647
16648 * coding.c (decode_coding): Fix the condition of terminating the
16649 decoding loop.
16650
16651 2008-02-01 Kenichi Handa <handa@m17n.org>
16652
16653 * data.c (Faset): On setting a character bigger than 255 in a
16654 unibyte string, signal an error instead of make the string multibyte.
16655
16656 2008-02-01 Kenichi Handa <handa@m17n.org>
16657
16658 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16659 made by a mapping table.
16660
16661 2008-02-01 Kenichi Handa <handa@m17n.org>
16662
16663 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16664 not.
16665 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16666 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16667
16668 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16669 s->face is NULL or not.
16670
16671 2008-02-01 Kenichi Handa <handa@m17n.org>
16672
16673 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16674 (x_draw_glyph_string): Fix drawing of right_overhang and
16675 left_overhang around/on cursor.
16676
16677 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16678
16679 2008-02-01 Kenichi Handa <handa@m17n.org>
16680
16681 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16682
16683 2008-02-01 Kenichi Handa <handa@m17n.org>
16684
16685 * coding.c (Fdefine_coding_system_internal)
16686 (Fdefine_coding_system_alias): Avoid a duplicated element in
16687 Vcoding_system_alist.
16688
16689 2008-02-01 Kenichi Handa <handa@m17n.org>
16690
16691 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16692
16693 * coding.c (Qcoding_system_define_form): New variable.
16694 (syms_of_coding): Intern and staticpro it.
16695 (Fcoding_system_p): Check Qcoding_system_define_form.
16696 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16697
16698 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16699 Fcoding_system_p.
16700 (CHECK_CODING_SYSTEM): If ID is not available, call
16701 Fcheck_coding_system.
16702 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16703 Try also Fcheck_coding_system.
16704
16705 2008-02-01 Kenichi Handa <handa@m17n.org>
16706
16707 * coding.c (code_conversion_restore): GCPRO arg.
16708
16709 2008-02-01 Kenichi Handa <handa@m17n.org>
16710
16711 * character.c (lisp_string_width): Check multibyteness of STRING.
16712
16713 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16714
16715 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16716 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16717 (decode_mac_font_name): Use decode_coding_c_string instead of
16718 decode_coding.
16719 (x_load_font): Initialize fontp->fontset to -1. Set
16720 fontp->encoding_type.
16721
16722 2008-02-01 Kenichi Handa <handa@m17n.org>
16723
16724 * search.c (search_buffer): Give up BM search on case-fold-search
16725 if one of a target character has a case-equivalence of different
16726 byte length even if that target charcter is an ASCII.
16727 (simple_search): Fix calculation of byte length of matched text.
16728 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16729
16730 2008-02-01 Kenichi Handa <handa@m17n.org>
16731
16732 * coding.c (decode_coding): Fix handling of invalid bytes.
16733
16734 2008-02-01 Kenichi Handa <handa@m17n.org>
16735
16736 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16737 Unicode characters.
16738
16739 2008-02-01 Kenichi Handa <handa@m17n.org>
16740
16741 * coding.c (encode_coding_object): If a pre-write-conversion
16742 function makes a new buffer, kill it.
16743
16744 2008-02-01 Kenichi Handa <handa@m17n.org>
16745
16746 * coding.c (QCascii_compatible_p): New variable.
16747 (syms_of_coding): Initialize it.
16748 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16749 calling string_char.
16750 (record_conversion_result): Add `default:' case.
16751 (coding_charset_list): Delete unused variable `coding_type'.
16752 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16753 property in the plist of the coding system.
16754 (Fcoding_system_put): Check QCascii_compatible_p.
16755
16756 2008-02-01 Miles Bader <miles@gnu.org>
16757
16758 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16759 removed calculation of frame `f', as it's now used.
16760
16761 2008-02-01 Kenichi Handa <handa@m17n.org>
16762
16763 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16764 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16765 (UNIDATA): New variable.
16766 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16767 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16768 $(RUN_TEMACS) unconditionally.
16769
16770 2008-02-01 Kenichi Handa <handa@m17n.org>
16771
16772 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16773 (admindir): New variable.
16774 ($(lispsource)international/charprop.el): New target.
16775
16776 2008-02-01 Miles Bader <miles@gnu.org>
16777
16778 * character.c (chars-in-region): Remove obsolete function.
16779 (syms_of_character): Remove its initialization.
16780
16781 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16782
16783 * w32select.c (validate_coding_system)
16784 (setup_windows_coding_system): New functions.
16785 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16786 setup_windows_coding_system.
16787 (setup_config, Fw32_get_clipboard_data): Use
16788 validate_coding_system.
16789 (Fx_selection_exists): Move call to setup_config to a place
16790 where signals are allowed.
16791
16792 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16793 (Fcheck_coding_system): Add declarations.
16794
16795 2008-02-01 Kenichi Handa <handa@m17n.org>
16796
16797 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16798
16799 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16800
16801 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16802 string as the second argument for x_new_fontset.
16803
16804 2008-02-01 Kenichi Handa <handa@m17n.org>
16805
16806 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16807 (encode_coding_object): Use safe_call instead of call2.
16808
16809 2008-02-01 Kenichi Handa <handa@m17n.org>
16810
16811 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16812
16813 * Makefile.in (lisp): Include charprop.el.
16814
16815 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16816
16817 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
16818 Not sure if it's unnecessary.
16819
16820 2008-02-01 Steven Tamm <steventamm@mac.com>
16821
16822 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
16823 some possibly unnecessary fontset checking code that crashed
16824 when creating a new frame.
16825
16826 2008-02-01 Kenichi Handa <handa@m17n.org>
16827
16828 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
16829 lookup_face.
16830
16831 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
16832
16833 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
16834
16835 2008-02-01 Kenichi Handa <handa@m17n.org>
16836
16837 * coding.c: Cancel the change done in HEAD on 2008-02-01.
16838 (coding_charset_list): New function.
16839
16840 * coding.h (coding_charset_list): Extern it.
16841
16842 2008-02-01 Kenichi Handa <handa@m17n.org>
16843
16844 * fontset.c (Fset_fontset_font): Call find_font_encoding with
16845 concatenation of family and registry.
16846
16847 2008-02-01 Kenichi Handa <handa@m17n.org>
16848
16849 * character.h (BYTE8_STRING): Fix typo.
16850
16851 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
16852 string to multibyte (sync to HEAD).
16853
16854 * casefiddle.c (casify_region): Handle changes in byte-length
16855 using replace_range_2 (sync to HEAD).
16856
16857 2008-02-01 Andreas Schwab <schwab@suse.de>
16858
16859 * chartab.c (map_char_table): GCPRO table and arg.
16860
16861 2008-02-01 Kenichi Handa <handa@m17n.org>
16862
16863 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
16864 already at limit.
16865
16866 2008-02-01 Kenichi Handa <handa@m17n.org>
16867
16868 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
16869 instead of fast_c_string_match_ignore_case.
16870 (find_font_encoding): Change argument to Lisp_Object. Use
16871 fast_string_match_ignore_case instead of
16872 fast_c_string_match_ignore_case. Change caller.
16873
16874 2008-02-01 Kenichi Handa <handa@m17n.org>
16875
16876 * xdisp.c (get_next_display_element): In unibyte case, decide to
16877 display in octal form by checking a character by
16878 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
16879
16880 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
16881
16882 * character.c (unibyte_has_multibyte_table): New variable.
16883
16884 * character.h (unibyte_has_multibyte_table): Extern it.
16885 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
16886
16887 2008-02-01 Kenichi Handa <handa@m17n.org>
16888
16889 * coding.c (encode_coding_iso_2022): Fix handling of charset
16890 annotation.
16891
16892 2008-02-01 Kenichi Handa <handa@m17n.org>
16893
16894 * coding.c (setup_coding_system): If coding_system is nil, use
16895 Qundecided.
16896 (Fterminal_coding_system): Return nil if terminal coding system is
16897 `undecided'.
16898 (syms_of_coding): Define coding-system `undecided' here. Setup
16899 terminal_coding as `undecided'.
16900
16901 2008-02-01 Kenichi Handa <handa@m17n.org>
16902
16903 * xdisp.c (message_dolog, set_message_1): Call
16904 unibyte_char_to_multibyte with arg type int.
16905
16906 * lread.c (read1): Fix reading of a char-table.
16907
16908 * print.c (print_object): Include sub char-table in circularities
16909 detection.
16910
16911 2008-02-01 Kenichi Handa <handa@m17n.org>
16912
16913 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
16914 Append the found sequences in car of ARGS instead of prepending.
16915
16916 2008-02-01 Kenichi Handa <handa@m17n.org>
16917
16918 * fileio.c (report_file_error): Make a unibyte string from
16919 strerror (errorno).
16920 (Fsubstitute_in_file_name): Fix the arg to
16921 unibyte_char_to_multibyte. It is evaluated twice.
16922
16923 2008-02-01 Kenichi Handa <handa@m17n.org>
16924
16925 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
16926
16927 2008-02-01 Kenichi Handa <handa@m17n.org>
16928
16929 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
16930 BOM is not found.
16931 (detect_coding, detect_coding_system): Optimization for ISO-2022
16932 when no 8-bit data is found.
16933
16934 2008-02-01 Jason Rumney <jasonr@gnu.org>
16935
16936 * w32fns.c (x_to_w32_font): Update to use new coding struct.
16937
16938 2008-02-01 Kenichi Handa <handa@m17n.org>
16939
16940 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
16941 CHARS.
16942
16943 2008-02-01 Steven Tamm <steventamm@mac.com>
16944
16945 * macterm.c (mac_encode_char): Add charset argument and update
16946 to use encoding_type.
16947 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
16948 switch to pure fontset.
16949 (decode_mac_font_name): Temporarily remove decoding.
16950 (x_font_name_to_mac_font_name): Temporarily remove encoding.
16951 (x_load_font): Temporarily remove encoding.
16952
16953 2008-02-01 Kenichi Handa <handa@m17n.org>
16954
16955 * xfaces.c (Fface_font): If frame is not on a window system,
16956 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
16957 refer to face->font.
16958 (split_font_name_into_vector, build_font_name_from_vector)
16959 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
16960 when HAVE_WINDOW_SYSTEM is defined.
16961
16962 2008-02-01 Kenichi Handa <handa@m17n.org>
16963
16964 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
16965 (x_produce_glyphs): Fix setting of members of cmp in case
16966 cmp->glyph_len is zero.
16967
16968 * fontset.c (Fset_fontset_font): Fix docstring.
16969 (Ffontset_info): Make it backward compatible. New arg ALL.
16970
16971 2008-02-01 Kim F. Storm <storm@cua.dk>
16972
16973 * process.c (read_process_output): Grow decoding_buf when needed;
16974 this could cause a crash in allocate_string and compact_small_strings.
16975
16976 2008-02-01 Kenichi Handa <handa@m17n.org>
16977
16978 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
16979
16980 2008-02-01 Kenichi Handa <handa@m17n.org>
16981
16982 * coding.c (setup_coding_system): Set coding->common_flags
16983 correctly for raw-text.
16984 (consume_chars): On encoding unibyte text by raw-text, don't check
16985 multibyte form.
16986 (encode_coding): On encoding by raw-text, never use translation tables.
16987
16988 * fileio.c (e_write): Short cut for the case of no encoding.
16989
16990 2008-02-01 Kenichi Handa <handa@m17n.org>
16991
16992 * coding.c (detect_coding, detect_coding_system): Delete unused
16993 variables.
16994
16995 2008-02-01 Kenichi Handa <handa@m17n.org>
16996
16997 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
16998 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
16999
17000 2008-02-01 Kenichi Handa <handa@m17n.org>
17001
17002 * coding.c (Ffind_coding_systems_region_internal): Include
17003 raw-text and no-conversion in the result.
17004
17005 2008-02-01 Kenichi Handa <handa@m17n.org>
17006
17007 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17008 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17009 FONT_DEF.
17010 (font_def_arg, add_arg, from_arg, to_arg): New args.
17011 (set_fontset_font): Change argument.
17012 (Fset_fontset_font): Fix for the case that TARGET is a script
17013 name and charset name.
17014 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17015
17016 2008-02-01 Kenichi Handa <handa@m17n.org>
17017
17018 * fontset.c (fontset_font): Rename from fontset_face. Change return
17019 value.
17020 (face_suitable_for_char_p, face_for_char): Adjust for the change
17021 of fontset_font.
17022 (make_fontset_for_ascii_face): Fix setting of the fontset element
17023 for ASCII.
17024 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17025 to get a font name.
17026 (Ffontset_info): Adjust for the change of fontset_font.
17027
17028 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17029
17030 * character.h (LEADING_CODE_LATIN_1_MIN)
17031 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17032
17033 2008-02-01 Kenichi Handa <handa@m17n.org>
17034
17035 * editfns.c (check_translation): New function.
17036 (Ftranslate_region_internal): Handle M:N mapping.
17037
17038 2008-02-01 Kenichi Handa <handa@m17n.org>
17039
17040 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17041
17042 2008-02-01 Kenichi Handa <handa@m17n.org>
17043
17044 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17045 goto invalid_code.
17046 (decode_coding_iso_2022): Fix handling of invalid designation.
17047
17048 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17049 after calling code_conversion_save.
17050
17051 2008-02-01 Kenichi Handa <handa@m17n.org>
17052
17053 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17054
17055 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17056
17057 * fontset.c: Include "intervals.h".
17058 (fontset_face): Fix comparing of Lisp_Objects.
17059 (free_face_fontset, new_fontset_from_font_name): Fix
17060 Lisp_Object/int mixup.
17061
17062 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17063
17064 * coding.c: Add many prototypes for static functions.
17065 (get_translation_table): Allow max_lookup to be NULL.
17066 (decode_coding, Ffind_coding_systems_region_internal)
17067 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17068 get_translation_table with max_lookup NULL.
17069
17070 2008-02-01 Kenichi Handa <handa@m17n.org>
17071
17072 * coding.c (get_translation_table): Declare it as Lisp_Object.
17073 (LOOKUP_TRANSLATION_TABLE): New macro.
17074 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17075 instead of CHAR_TABLE_REF.
17076
17077 2008-02-01 Kenichi Handa <handa@m17n.org>
17078
17079 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17080 annotation data format.
17081 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17082 Change arguments FROM and TO to single argument NCHARS. Change caller.
17083 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17084 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17085 (decode_coding_ccl, decode_coding_charset): Pay attention to
17086 coding->charbuf_used.
17087 (get_translation): New function.
17088 (produce_chars): New arguments translation_table and last_block.
17089 Translate characters here. Return number of carryover chars.
17090 Change caller.
17091 (produce_composition): New argument pos. Change caller.
17092 Adjust for the change of annotation data format.
17093 (produce_charset, produce_annotation): Likewise.
17094 (decode_coding, encode_coding): Don't call translate_chars.
17095 (consume_chars): New arg translation_table. Change caller.
17096 (translate_chars): Delete.
17097 (syms_of_coding): Make translation-table's number of extra slots 2.
17098
17099 2008-02-01 Kenichi Handa <handa@m17n.org>
17100
17101 * search.c (simple_search): Fix setting this_pos_byte in backward
17102 search.
17103
17104 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17105 byte sequence.
17106 (detect_coding_ccl): Fix setting of the variable valids.
17107
17108 2008-02-01 Kenichi Handa <handa@m17n.org>
17109
17110 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17111
17112 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17113
17114 * editfns.c (Ftranslate_region_internal): Rename from
17115 Ftranslate_region. Accept a char-table in TABLE.
17116 (syms_of_editfns): Defsubr Stranslate_region_internal.
17117
17118 * xfaces.c (set_lface_from_font_name): If a font is specified for
17119 a frame, generate a fontset from the font.
17120 (build_scalable_font_name): If the scalable font is requested for
17121 a specific size, don't change that size.
17122 (try_font_list): Try a scalable font also in the case that a
17123 pattern string is specified.
17124
17125 2008-02-01 Kenichi Handa <handa@m17n.org>
17126
17127 * xfaces.c (Fface_font): New optional arg CHARACTER.
17128
17129 2008-02-01 Kenichi Handa <handa@m17n.org>
17130
17131 * charset.h (CHARSET_OFFSET): New macro.
17132
17133 2008-02-01 Kenichi Handa <handa@m17n.org>
17134
17135 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17136
17137 * fontset.c (fontset_face): Handle the case that repertory is a
17138 char-table.
17139 (find_font_encoding): Return nil for unknown encoding.
17140 (Fset_fontset_font): Ignore a font of unknown encoding.
17141
17142 2008-02-01 Kenichi Handa <handa@m17n.org>
17143
17144 * keymap.c (describe_vector): Handle default value of a char table.
17145
17146 * fontset.c (fontset_face): Handle fallback fonts correctly.
17147 (Ffontset_info): Return infomation about fallback fonts.
17148
17149 2008-02-01 Kenichi Handa <handa@m17n.org>
17150
17151 * fontset.c (FONTSET_DEFAULT): New macro.
17152 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17153 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17154 the case that it is nil.
17155 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17156 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17157
17158 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17159 subset or superset.
17160
17161 2008-02-01 Kenichi Handa <handa@m17n.org>
17162
17163 * emacs.c (main): Call init_charset after syms_of_XXX.
17164
17165 * charset.c (Vcharset_map_directory): Delete.
17166 (Vcharset_map_path): New variable.
17167 (load_charset_map_from_file): Use Vcharset_map_path instead.
17168 (init_charset): Initialize Vcharset_map_path.
17169 (syms_of_charset): Delete declaration of "charset-map-directory",
17170 add declaration of "charset-map-path".
17171
17172 2008-02-01 Kenichi Handa <handa@m17n.org>
17173
17174 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17175 ASCII only string.
17176
17177 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17178
17179 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17180 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17181
17182 2008-02-01 Kenichi Handa <handa@m17n.org>
17183
17184 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17185
17186 * coding.c (QCmnemonic, QCdefalut_char)
17187 (QCdecode_translation_table, QCencode_translation_table)
17188 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17189 (get_translation_table): Return a list of translation tables if
17190 necessary.
17191 (decode_coding): Call get_translation_table with ENCODEP 0.
17192 (char_encodable_p): If translation_table is non-nil, always call
17193 translate_char.
17194 (Fdefine_coding_system_internal): Accept list of translation
17195 tables as :encode-translation-table and :decode-translation-table.
17196 (Fcoding_system_put): New function.
17197 (syms_of_coding): Declare new symbols. Defsubr
17198 Scoding_system_put.
17199 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17200 typically JISX0212.
17201
17202 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17203 when the charset is superset type.
17204
17205 * character.c (translate_char): Accept list of translation tables.
17206
17207 2008-02-01 Kenichi Handa <handa@m17n.org>
17208
17209 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17210 (CODING_ATTR_TRANS_TBL): New macro.
17211
17212 * coding.c (get_translation_table): New function.
17213 (translate_chars): Fix the bug of skipping annotation data.
17214 (decode_coding, encode_coding): Utilize get_translation_table.
17215 (char_encodable_p, Funencodable_char_position): Translate char if
17216 necessary.
17217 (Ffind_coding_systems_region_internal)
17218 (Fcheck_coding_systems_region): Setup translation table for encode
17219 in a coding system attribute vector in advance.
17220 (Fdefine_coding_system_internal): Allow a symbol as translation
17221 table. For shift-jis type coding system, allow 4th charset.
17222
17223 2008-02-01 Kenichi Handa <handa@m17n.org>
17224
17225 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17226
17227 * xdisp.c (get_next_display_element): Pass -1 as POS to
17228 FACE_FOR_CHAR if displaying a C-string.
17229
17230 2008-02-01 Kenichi Handa <handa@m17n.org>
17231
17232 * composite.c (get_composition_id): Handle xoff and yoff in a
17233 composition rule.
17234
17235 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17236 (struct composition): New member lbearing and rbearing.
17237
17238 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17239 (x_get_glyph_overhangs): Handle a composition glyph.
17240 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17241
17242 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17243 composition glyph.
17244
17245 2008-02-01 Kenichi Handa <handa@m17n.org>
17246
17247 * print.c: Include charset.h.
17248 (Vprint_charset_text_property): New variable.
17249 (Qdefault): Extern it.
17250 (PRINT_STRING_NON_CHARSET_FOUND)
17251 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17252 (print_check_string_result): New variable.
17253 (print_check_string_charset_prop): New function.
17254 (print_prune_charset_plist): New variable.
17255 (print_prune_string_charset): New function.
17256 (print_object): Call print_prune_string_charset if
17257 Vprint_charset_text_property is not t.
17258 (print_interval): Print nothing if interval->plist is nil.
17259 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17260 variable. Init and staticpro print_prune_charset_plist.
17261
17262 2008-02-01 Kenichi Handa <handa@m17n.org>
17263
17264 * fontset.c (new_fontset_from_font_name): Use the specified font
17265 for all characters in the new fontset.
17266
17267 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17268 OBJECT args.
17269
17270 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17271 OBJECT args for composition too.
17272
17273 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17274 OBJECT args.
17275
17276 2008-02-01 Kenichi Handa <handa@m17n.org>
17277
17278 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17279
17280 * fontset.c (reorder_font_vector): Adjust for the change of
17281 FONT_DEF format.
17282 (fontset_face): New arg id. Change caller.
17283 (face_for_char): New args pos and object.
17284 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17285 (fs_query_fontset): Check NAME by Fassoc too.
17286 (Fset_fontset_font): Allow non-XLFD font name.
17287 (Ffontset_info): Adjust for the change of FONT_DEF format.
17288
17289 * fontset.h (face_for_char): Adjust prototype.
17290
17291 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17292 (append_space, extend_face_to_end_of_line)
17293 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17294 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17295
17296 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17297 POS and OBJECT args.
17298
17299 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17300 POS and OBJECT args.
17301
17302 2008-02-01 Jason Rumney <jasonr@gnu.org>
17303
17304 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17305 of GlobalAlloc'ed memory.
17306
17307 2008-02-01 Kenichi Handa <handa@m17n.org>
17308
17309 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17310
17311 * charset.h (charset_table_used): Delete extern.
17312
17313 * charset.c (charset_table_used): Make it static.
17314 (map_charset_chars): Fix args to c_function with.
17315
17316 * chartab.c (map_sub_char_table_for_charset): Fix args to
17317 c_function with.
17318
17319 * coding.h (enum coding_result_code): Delete
17320 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17321
17322 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17323 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17324 (Vlast_code_conversion_error): New variables.
17325 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17326 (ONE_MORE_BYTE): Record error if any instead of signaling an
17327 error. If non-ASCII multibyte char is found, return the negative
17328 value of the code. All callers changed to check it.
17329 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17330 (record_conversion_result): New function. Change all codes setting
17331 coding->result to call this function.
17332 (detect_coding_utf_8, decode_coding_utf_8)
17333 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17334 Don't use the local variable incomplete.
17335 (emacs_mule_char): Change the second arg to `const'.
17336 (decode_coding): Fix of flushing out unprocessed data.
17337 (make_conversion_work_buffer): Fix making of a work buffer.
17338 (decode_coding_object): Return coding->dst_object.
17339
17340 * fontset.c (set_fontset_font): Fix args.
17341
17342 * lisp.h (CHARACTERBITS): Define as 22.
17343
17344 * process.c (send_process): Be sure to set coding->src_multibyte.
17345
17346 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17347
17348 2008-02-01 Kenichi Handa <handa@m17n.org>
17349
17350 * xdisp.c (handle_auto_composed_prop): Give limit to
17351 Fnext_single_char_property_change.
17352
17353 2008-02-01 Kenichi Handa <handa@m17n.org>
17354
17355 * composite.c (syms_of_composite): Don't make the composition hash
17356 table weak.
17357
17358 * fontset.c (Fset_fontset_font): Fix docstring.
17359
17360 * lisp.h (detect_coding_system): Adjust prototype.
17361
17362 * fileio.c (kill_workbuf_unwind): Delete this function.
17363 (Finsert_file_contents): Adjust the call of detect_coding_system.
17364 Get conversion_buffer by code_conversion_save. Use the macro
17365 CODING_MAY_REQUIRE_DECODING. After decoding, update
17366 coding_system.
17367
17368 * coding.h (make_conversion_work_buffer): Delete extern.
17369 (code_conversion_save): Extern it.
17370
17371 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17372 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17373 (decode_coding_utf_8): Don't do eol converion.
17374 (detect_coding_utf_16): Check coding->src_chars, not
17375 coding->src_bytes. Add heuristics for those that have no signature.
17376 (decode_coding_emacs_mule, decode_coding_iso_2022)
17377 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17378 Don't do eol converion.
17379 (adjust_coding_eol_type): Return a new coding system.
17380 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17381 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17382 each change.
17383 (decode_coding): Pay attention to undo_list. Do eol conversion for
17384 all types of coding-systems (if necessary).
17385 (Vcode_conversion_work_buf_list): Delete it.
17386 (Vcode_conversion_reused_workbuf): Rename from
17387 Vcode_conversion_reused_work_buf.
17388 (Vcode_conversion_workbuf_name): New variable.
17389 (reused_workbuf_in_use): New variable.
17390 (make_conversion_work_buffer): Delete the arg DEPTH.
17391 (code_conversion_restore): Change argument to cons.
17392 (code_conversion_save): Delete the argument BUFFER. Change callers.
17393 (detect_coding_system): New argument src_chars. Change callers.
17394 Fix for utf-16 detection.
17395 (init_coding_once): Don't use ISO_carriage_return.
17396 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17397 reused_workbuf_in_use.
17398
17399 2008-02-01 Kenichi Handa <handa@m17n.org>
17400
17401 * keymap.c (store_in_keymap): Pay attention to the case that idx
17402 is a cons specifying a character range.
17403
17404 2008-02-01 Kenichi Handa <handa@m17n.org>
17405
17406 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17407 HANDLED_RECOMPUTE_PROPS.
17408
17409 * coding.c (Fdefine_coding_system_internal): Fix checking of
17410 ascii compatibility.
17411
17412 2008-02-01 Kenichi Handa <handa@m17n.org>
17413
17414 * charset.c (find_charsets_in_text): Delete unused locale variable.
17415 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17416
17417 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17418 Resync charset_list to Vemacs_mule_charset_list.
17419
17420 * keymap.c (store_in_keymap): Pay attention to the case that idx
17421 is a cons specifying a character range.
17422
17423 2008-02-01 Kenichi Handa <handa@m17n.org>
17424
17425 * composite.c (update_compositions): Bind inhibit-read-only, etc
17426 to t before calling remove-list-of-text-properties.
17427
17428 * print.c (print_object): Always print ASCII chars as is.
17429
17430 2008-02-01 Kenichi Handa <handa@m17n.org>
17431
17432 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17433
17434 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17435 is a char table.
17436
17437 2008-02-01 Kenichi Handa <handa@m17n.org>
17438
17439 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17440
17441 2008-02-01 Kenichi Handa <handa@m17n.org>
17442
17443 * xfaces.c (set_lface_from_font_name): Fix for the case that
17444 FONTNAME is not fontset name.
17445
17446 2008-02-01 Kenichi Handa <handa@m17n.org>
17447
17448 * fns.c (base64_encode_1): Fix previous change.
17449
17450 2008-02-01 Kenichi Handa <handa@m17n.org>
17451
17452 * fontset.c (set_fontset_font): New function.
17453 (Fset_fontset_font): If a font is specified for a charset, use
17454 map_charset_chars to store the font spec in a fontset.
17455
17456 2008-02-01 Kenichi Handa <handa@m17n.org>
17457
17458 * fontset.c (fontset_face): Create a fallback fontset on demand.
17459 (make_fontset): Don't create a fallback fontset here.
17460 (free_face_fontset): Free a fallback fontset (if any) too.
17461 (n_auto_fontsets): Delete this variable.
17462 (auto_fontset_alist): New variable.
17463 (new_fontset_from_font_name): Check auto_fontset_alist.
17464 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17465 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17466 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17467 Defsubr Sfontset_list_all.
17468
17469 2008-02-01 Kenichi Handa <handa@m17n.org>
17470
17471 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17472
17473 2008-02-01 Kenichi Handa <handa@m17n.org>
17474
17475 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17476
17477 2008-02-01 Kenichi Handa <handa@m17n.org>
17478
17479 * editfns.c (Fgoto_char): Fix docstring.
17480
17481 2008-02-01 Kenichi Handa <handa@m17n.org>
17482
17483 * insdel.c (insert_from_gap): Adjust intervals correctly.
17484
17485 2008-02-01 Jason Rumney <jasonr@gnu.org>
17486
17487 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17488 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17489 (w32_initialize): Try to load it.
17490 (x_get_font_repertory): Use it if available.
17491 (w32_encode_char): Add shortcut for unicode output.
17492
17493 * w32fns.c (w32_load_system_font): Default charset to -1.
17494 (x_to_w32_charset): Match all fonts for unicode.
17495 (w32_to_x_charset): New parameter matching. Don't return partial
17496 or wildcard charsets.
17497 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17498 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17499 (w32_to_x_font): Match charset to real charset.
17500 (enum_font_cb2): Always list unicode versions.
17501
17502 * makefile.w32-in (temacs): Increase EMHEAP.
17503
17504 2008-02-01 Jason Rumney <jasonr@gnu.org>
17505
17506 * w32term.c (w32_encode_char): New charset parameter.
17507 font_info.encoding becomes encoding_type.
17508 (x_get_font_repertory): New function. Warning: stub only!
17509 (x_new_font): Return quickly if font already set.
17510 (x_new_fontset): fontsetname parameter is Lisp_Object.
17511 Use new fs_query_fontset. Try new_fontset_from_font_name.
17512 Use fontset_name for return value.
17513
17514 * w32term.h: Declare x_get_font_repertory.
17515
17516 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17517 place of find_charset_in_text. Use encode_coding_object in place
17518 of encode_coding.
17519 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17520 decode_coding.
17521
17522 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17523 of x_new_fontset.
17524 (w32_load_system_font): Initialize charset as unicode.
17525 font_info.encoding becomes encoding_type.
17526 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17527 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17528 (syms_of_w32fns): Set get_font_repertory_func.
17529
17530 * w32console.c: Include character.h. Use terminal_encode_buffer
17531 from term.c.
17532 (write_glyphs): Use new version of encode_terminal_code. Use
17533 encode_coding_object in place of encode_coding.
17534
17535 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17536 encoding becomes encoding_type.
17537
17538 * term.c (terminal_encode_buffer): Make externally visible.
17539
17540 * makefile.w32-in: Add character.h dependancies.
17541 (character.o, chartab.o): New targets.
17542
17543 2008-02-01 Kenichi Handa <handa@m17n.org>
17544
17545 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17546 CODING_ID_EOL_TYPE.
17547
17548 2008-02-01 Andreas Schwab <schwab@suse.de>
17549
17550 * coding.c (produce_chars): Revert last change.
17551
17552 2008-02-01 Kenichi Handa <handa@m17n.org>
17553
17554 * charset.h (charset_unicode): Extern it.
17555
17556 * charset.c (string_xstring_p): Check by (C >= 0x100).
17557 (find_charsets_in_text): Change format of the arc CHARSETS. New
17558 arg MULTIBYTE.
17559 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17560 change of find_charsets_in_text.
17561 (Fsplit_char): Fix doc. Never return unknown.
17562
17563 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17564
17565 * coding.c (Fdefine_coding_system_alias): Update
17566 Vcoding_system_list.
17567
17568 * fontset.c (load_font_get_repertory): Pay attention to the case
17569 that ENCODING of a font is specified by a char-table.
17570
17571 * xterm.c (x_get_font_repertory): Handle the case that the
17572 encoding of font is other than Unicode.
17573
17574 2008-02-01 Kenichi Handa <handa@m17n.org>
17575
17576 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17577 if a character is encodable by the terminal coding system. If
17578 not, produces proper number of `?'s. Update
17579 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17580 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17581
17582 2008-02-01 Kenichi Handa <handa@m17n.org>
17583
17584 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17585 variables.
17586 (encode_terminal_code): Change argument. Encode multiple
17587 characters at once. Store the result of encoding in
17588 terminal_encode_buffer.
17589 (write_glyphs, insert_glyphs): Adjust for the change of
17590 encode_terminal_code.
17591 (term_init): Initialize terminal_encode_buffer and
17592 terminal_encode_buf_size.
17593
17594 * coding.c (consume_chars): If coding->src_object is nil, don't
17595 check annotation.
17596
17597 2008-02-01 Kenichi Handa <handa@m17n.org>
17598
17599 * character.c (char_string): Use ASCII_CHAR_P instead of
17600 SINGLE_BYTE_CHAR_P.
17601
17602 2008-02-01 Kenichi Handa <handa@m17n.org>
17603
17604 * xdisp.c (handle_auto_composed_prop): Check if the last
17605 characters of auto-composed region is newly composed with the
17606 following characters.
17607 (handle_composition_prop): Fix checking of point being inside
17608 composition.
17609
17610 2008-02-01 Kenichi Handa <handa@m17n.org>
17611
17612 * fns.c (concat): Don't change multibyteness of the result by
17613 concatenating an 8-bit character.
17614
17615 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17616 multibyteness of the result when newelt is an 8-bit character.
17617
17618 2008-02-01 Dave Love <fx@gnu.org>
17619
17620 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17621 EMACS_INT.
17622
17623 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17624
17625 * xfaces.c (face_numeric_value): Declare dim size_t.
17626 (Finternal_lisp_face_equal_p): Remove unused f.
17627
17628 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17629 (MATRIX_ROW): Remove unused vars.
17630 (draw_glyphs, x_insert_glyphs, fast_find_position)
17631 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17632 byte/char counts.
17633
17634 * regex.c (regex_compile): Remove unused var.
17635
17636 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17637
17638 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17639 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17640
17641 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17642
17643 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17644
17645 * fileio.c (Fwrite_region): Remove unused var.
17646
17647 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17648 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17649
17650 * composite.c (Fremove_list_of_text_properties): Declare.
17651
17652 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17653 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17654 (coding_inherit_eol_type): Remove unused attrs.
17655 (detect_coding): Cast arg of detect_eol.
17656
17657 * charset.c (syms_of_charset): Remove unused var p.
17658 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17659 byte/char counts.
17660
17661 * casetab.c (set_case_table): Remove unused var.
17662
17663 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17664 unused vars.
17665
17666 2008-02-01 Dave Love <fx@gnu.org>
17667
17668 * xterm.c (x_bitmap_mask): Declare.
17669
17670 2008-02-01 Dave Love <fx@gnu.org>
17671
17672 * xterm.c (x_term_init): Fix type error.
17673
17674 * lisp.h: Add Funibyte_char_to_multibyte.
17675
17676 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17677 (Fset_coding_system_priority): Doc fix.
17678
17679 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17680
17681 * indent.c (check_composition): Make start and end EMACS_INT.
17682
17683 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17684
17685 * xdisp.c (handle_composition_prop, check_point_in_composition):
17686 Make buffer positions EMACS_INT.
17687
17688 * composite.c (find_composition, run_composition_function)
17689 (update_compositions, Ffind_composition_internal): Make buffer
17690 positions EMACS_INT.
17691
17692 * composite.h (find_composition, update_compositions): Make
17693 position args EMACS_INT.
17694
17695 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17696
17697 * intervals.c (get_property_and_range):
17698 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17699
17700 * unexalpha.c: Don't include varargs.h.
17701
17702 2008-02-01 Dave Love <fx@gnu.org>
17703
17704 * coding.h (ENCODE_UTF_8): New.
17705
17706 * Makefile.in (gtkutil.o): Depend on coding.h.
17707
17708 * coding.c (Fset_coding_system_priority): Doc fix.
17709
17710 2008-02-01 Kenichi Handa <handa@m17n.org>
17711
17712 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17713 the case of auto saving.
17714
17715 2008-02-01 Andreas Schwab <schwab@suse.de>
17716
17717 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17718 `range' from GC.
17719
17720 2008-02-01 Kenichi Handa <handa@m17n.org>
17721
17722 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17723
17724 2008-02-01 Kenichi Handa <handa@m17n.org>
17725
17726 * fileio.c (choose_write_coding_system): Return a decided coding system.
17727 (Fwrite_region): Set Vlast_coding_system_used to the return value
17728 of choose_write_coding_system.
17729
17730 2008-02-01 Kenichi Handa <handa@m17n.org>
17731
17732 * charset.c (Fset_charset_priority): Pay attention to duplicated
17733 arguments.
17734
17735 * coding.c (QCcategory): New variable.
17736 (syms_of_coding): Defsym it. Set all elements of
17737 Vcoding_category_table and their symbol values.
17738 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17739 coding-category-XXX, and coding-category-list.
17740 (Fdefine_coding_system_internal): Add category in the plist.
17741
17742 2008-02-01 Kenichi Handa <handa@m17n.org>
17743
17744 * callproc.c (Fcall_process): Handle carryover correctly.
17745
17746 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17747 (raw_text_coding_system): Check NILP (coding_system).
17748 (coding_inherit_eol_type): Check NILP (coding_system) and
17749 NILP (parent).
17750 (consume_chars): Fix for the case of raw-text.
17751
17752 * process.c (read_process_output): Handle carryover correctly.
17753
17754 2008-02-01 Dave Love <fx@gnu.org>
17755
17756 * regex.c (re_search_2): Fix last change.
17757
17758 2008-02-01 Kenichi Handa <handa@m17n.org>
17759
17760 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17761 target_multibyte. Even in a unibyte case, return a converted
17762 multibyte char.
17763 (GET_CHAR_AFTER): New macro.
17764 (PATFETCH): Translate via multibyte char.
17765 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17766 (SETUP_MULTIBYTE_RANGE): New macro.
17767 (regex_compile): Setup compiled code so that its multibyteness
17768 matches that of a target. Fix the handling of "[X-YZ]" using
17769 SETUP_MULTIBYTE_RANGE.
17770 (analyse_first) <charset>: For filling fastmap for all multibyte
17771 characters, don't check by BASE_LEADING_CODE_P.
17772 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17773 the same as RE_MULTIBYTE_P (bufp) now.
17774 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17775 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17776 (TRANSLATE_VIA_MULTIBYTE): New macro.
17777 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17778 It is the same as RE_MULTIBYTE_P (bufp) now.
17779 <exactn>: Translate via multibyte.
17780 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17781 translate it.
17782 <charset, charset_not>: Fetch a character by
17783 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17784 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17785 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17786 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17787 by GET_CHAR_AFTER.
17788 (bcmp_translate): Likewise.
17789
17790 * search.c (compile_pattern): Check the member target_multibyte,
17791 not the member multibyte of buf.
17792
17793 * lread.c (read1): While reading a string, set force_singlebyte
17794 and force_multibyte correctly.
17795
17796 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17797 up of unibyte_to_multibyte_table.
17798
17799 2008-02-01 Kenichi Handa <handa@m17n.org>
17800
17801 * coding.c (setup_coding_system): If coding has
17802 post-read-conversion or pre-write-conversion, set
17803 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17804 respectively.
17805 (decode_coding_gap): Run post-read-conversion if any.
17806
17807 * fileio.c (Finsert_file_contents): Even if we read into a
17808 unibyte buffer, check if we must decode the result or not.
17809
17810 2008-02-01 Kenichi Handa <handa@m17n.org>
17811
17812 * coding.c (make_conversion_work_buffer): Change the work buffer
17813 name to the same one as that of Emacs 21.
17814
17815 2008-02-01 Kenichi Handa <handa@m17n.org>
17816
17817 * coding.h (make_conversion_work_buffer): Adjust prototype.
17818 (code_conversion_restore): Don't extern it.
17819
17820 * coding.c (detected_mask): Delete unused variable.
17821 (decode_coding_iso_2022): Pay attention to the byte sequence of
17822 CTEXT extended segment, and retain those bytes as is.
17823 (decode_coding_ccl): Delete unused variable `valids'.
17824 (setup_coding_system): Delete unused variable `category'.
17825 (consume_chars): Delete unused variable `category'. Make it work
17826 for non-multibyte case.
17827 (make_conversion_work_buffer): Change argument.
17828 (saved_coding): Delete unused variable.
17829 (code_conversion_restore): Don't check saved_coding->destination.
17830 (code_conversion_save): New function.
17831 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
17832 instead of record_unwind_protect.
17833 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
17834 (detect_coding_system): Delete unused variable `mask'.
17835 (Fdefine_coding_system_internal): Delete unused variable id.
17836
17837 * fileio.c (kill_workbuf_unwind): New function.
17838 (Finsert_file_contents): On replacing, call
17839 make_conversion_work_buffer with correct args, and call
17840 record_unwind_protect with the first arg kill_workbuf_unwind.
17841
17842 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
17843
17844 2008-02-01 Kenichi Handa <handa@m17n.org>
17845
17846 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
17847 (fontset_add): Fix for the case that TO is less than TO1.
17848 (Ffontset_info): Don't use fallback fontset on checking the
17849 default fontset.
17850 (dump_fontset): New function for debugging.
17851
17852 * coding.c (Fdefine_coding_system_internal): Fix for the case that
17853 coding_type is Qcharset.
17854
17855 2008-02-01 Kenichi Handa <handa@m17n.org>
17856
17857 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
17858 (map_char_table): Don't inherit the value from the parent on
17859 initializing VAL. Adjust for the above change.
17860
17861 2008-02-01 Kenichi Handa <handa@m17n.org>
17862
17863 * coding.c (Qsignature, Qendian): Delete these variables.
17864 (syms_of_coding): Don't initialize them.
17865 (CATEGORY_MASK_UTF_16_AUTO): New macro.
17866 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
17867 detect_info->found.
17868 (decode_coding_utf_16): Don't detect BOM here.
17869 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
17870 is NOT utf_16_without_bom.
17871 (setup_coding_system): For a coding system of type utf-16, check
17872 if the attribute :endian is Qbig or not (not nil or not), and set
17873 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
17874 (detect_coding): If coding type is utf-16 and BOM detection is
17875 required, detect it.
17876 (Fdefine_coding_system_internal): For a coding system of type
17877 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
17878
17879 2008-02-01 Kenichi Handa <handa@m17n.org>
17880
17881 * coding.c (coding_set_source): Fix for the case that the current
17882 buffer is different from coding->src_object.
17883 (decode_coding_object): Don't use the conversion work buffer if
17884 DST_OBJECT is a buffer.
17885
17886 2008-02-01 Dave Love <fx@gnu.org>
17887
17888 * lread.c (read_emacs_mule_char) [len==2]: Index
17889 emacs_mule_charset correctly.
17890
17891 2008-02-01 Dave Love <fx@gnu.org>
17892
17893 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
17894 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
17895 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
17896 treated specially.)
17897 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
17898 (detected_mask): Remove Big5 bits.
17899
17900 2008-02-01 Kenichi Handa <handa@m17n.org>
17901
17902 The following changes are to make the font rescaling facility
17903 compatible with Emacs 21.
17904
17905 * xfaces.c (Vface_font_rescale_alist): Rename from
17906 Vface_resizing_fonts.
17907 (struct font_name): Rename member resizing_ratio to rescale_ratio.
17908 (font_rescale_ratio): Rename from font_resizing_ratio.
17909 (split_font_name): Set font->rescale_ratio.
17910 (better_font_p): Pay attention to font->rescale_ratio.
17911 (build_scalable_font_name): Likewise. Change RESX, and RESY
17912 fields.
17913 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
17914
17915 2008-02-01 Kenichi Handa <handa@m17n.org>
17916
17917 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
17918 (Qutf_16_le): Remove these variables.
17919 (syms_of_coding): Don't DEFSYM them.
17920 (decode_coding_utf_16): Fix handling of BOM.
17921 (encode_coding_utf_16): Fix handling of BOM.
17922
17923 2008-02-01 Kenichi Handa <handa@m17n.org>
17924
17925 * fileio.c (Finsert_file_contents): On replacing, before decoding
17926 the file into the work buffer, set point of the work buffer to the end.
17927
17928 2008-02-01 Dave Love <fx@gnu.org>
17929
17930 * coding.c (Fcheck_coding_systems_region): Fix type errors.
17931
17932 2008-02-01 Dave Love <fx@gnu.org>
17933
17934 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17935 and fix C types.
17936
17937 2008-02-01 Kenichi Handa <handa@m17n.org>
17938
17939 * xdisp.c (SKIP_GLYPHS): New macro.
17940 (set_cursor_from_row): Pay attention to string display properties.
17941
17942 * category.c (copy_category_entry): Fix for the case that RANGE
17943 is an integer.
17944
17945 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
17946
17947 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
17948
17949 2008-02-01 Kenichi Handa <handa@m17n.org>
17950
17951 * charset.c (Fcharset_id_internal): New function.
17952 (syms_of_charset): Defsubr it.
17953
17954 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
17955 with the last arg charset_list acquired from coding.
17956 (Fdefine_coding_system_internal): For ccl-based coding system, fix
17957 the attribute coding_attr_ccl_valids.
17958
17959 * coding.h (enum define_coding_ccl_arg_index): Set the first
17960 member coding_arg_ccl_decoder to coding_arg_max.
17961
17962 * ccl.h (ccl_driver): Adjust prototype.
17963
17964 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
17965 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
17966 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
17967 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
17968 last arg Qnil.
17969
17970 2008-02-01 Kenichi Handa <handa@m17n.org>
17971
17972 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
17973 call encode_char.
17974
17975 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
17976
17977 2008-02-01 Dave Love <fx@gnu.org>
17978
17979 * composite.c (syms_of_composite): Make composition_hash_table weak.
17980
17981 2008-02-01 Kenichi Handa <handa@m17n.org>
17982
17983 * dispextern.h (check_face_attributes, generate_ascii_font_name)
17984 (font_name_registry): Don't extern them.
17985 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
17986
17987 * fontset.h (Qfontset): Don't extern it.
17988 (new_fontset_from_font_name): Extern it.
17989
17990 * fontset.c: Give 8 extra slots to fontset objects.
17991 (Qfontset_info): New variable.
17992 (syms_of_fontset): Defsym it.
17993 (FONTSET_FALLBACK): New macro.
17994 (fontset_face): Try also the default fontset.
17995 (make_fontset): Realize a fallback fontset from the default fontset.
17996 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
17997 using split_font_name_into_vector and build_font_name_from_vector.
17998 (Fset_fontset_font): Access the elements of font_spec by enum
17999 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18000 name by using split_font_name_into_vector.
18001 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18002 generate a proper font name from the fontset name. Update
18003 Vfontset_alias_alist.
18004 (n_auto_fontsets): New variable.
18005 (new_fontset_from_font_name): New function.
18006 (Ffont_info): Store the information about fonts generated from the
18007 default fontset in the first extra slot of the returned char-table.
18008
18009 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18010 (font_name_registry): Delete function.
18011 (split_font_name_into_vector): New function.
18012 (build_font_name_from_vector): New function.
18013 (font_list): The argument REGISTRY is now a list of registry names.
18014 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18015 specifies an explicit font name, return the name as is. Make a
18016 list of registy names.
18017
18018 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18019 of x_new_fontset.
18020 (Fx_create_frame): Don't call x_new_fontset here. Just use
18021 x_list_fonts to check the existence of fonts.
18022
18023 * xterm.h (x_new_fontset): Adjust prototype.
18024
18025 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18026 string. Use new_fontset_from_font_name to create a fontset from a
18027 font name.
18028
18029 2008-02-01 Kenichi Handa <handa@m17n.org>
18030
18031 * syntax.c (Vfind_word_boundary_function_table): New name for
18032 Vnext_word_boundary_function_table.
18033 (find-word-boundary-function-table): New name for
18034 next-word-boundary-function-table.
18035
18036 2008-02-01 Dave Love <fx@gnu.org>
18037
18038 * Makefile.in: Fix some dependencies.
18039
18040 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18041 set it to nil before returning.
18042
18043 * composite.c (update_compositions): Fix type error.
18044
18045 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18046
18047 2008-02-01 Kenichi Handa <handa@m17n.org>
18048
18049 * xterm.c (x_new_font): Optimize for the case that the font is
18050 already set for the frame.
18051
18052 2008-02-01 Kenichi Handa <handa@m17n.org>
18053
18054 * chartab.c (char_table_ascii): Check if the char table contents
18055 is sub-char-table or not.
18056 (char_table_set, char_table_set_range): Fix argument to
18057 char_table_ascii.
18058
18059 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18060 (detect_coding_utf_8, detect_coding_utf_16)
18061 (detect_coding_emacs_mule, detect_coding_iso_2022)
18062 (detect_coding_sjis, detect_coding_big5)
18063 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18064 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18065 sequence is valid in this coding system. Change callers.
18066 (MAX_ANNOTATION_LENGTH): New macro.
18067 (ADD_ANNOTATION_DATA): New macro.
18068 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18069 ADD_ANNOTATION_DATA. Change the format of annotation data.
18070 (ADD_CHARSET_DATA): New macro.
18071 (emacs_mule_char): New argument ID. Change callers.
18072 (decode_coding_emacs_mule, decode_coding_iso_2022)
18073 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18074 Produce charset annotation data in coding->charbuf.
18075 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18076 to charset annotation data in coding->charbuf.
18077 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18078 coding->common_flags if the coding system is iso-2022 based and
18079 uses designation.
18080 (produce_composition): Adjust for the new annotation data format.
18081 (produce_charset): New function.
18082 (produce_annotation): Handle charset annotation.
18083 (handle_composition_annotation, handle_charset_annotation): New
18084 functions.
18085 (consume_chars): Handle charset annotation. Utilize the above two
18086 functions.
18087 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18088 buffer, get the deleted text as a string and set
18089 coding->src_object to that string.
18090 (detect_coding, detect_coding_system): Use the new struct
18091 coding_detection_info.
18092
18093 * coding.h (struct coding_detection_info): New structure.
18094 (struct coding_system): Adjust prototype of the member `detector'.
18095 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18096
18097 2008-02-01 Kenichi Handa <handa@m17n.org>
18098
18099 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18100
18101 2008-02-01 Dave Love <fx@gnu.org>
18102
18103 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18104 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18105 to new local and nullify apropos_accumulate before returning.
18106 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18107
18108 2008-02-01 Kenichi Handa <handa@m17n.org>
18109
18110 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18111 correctly.
18112
18113 2008-02-01 Dave Love <fx@gnu.org>
18114
18115 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18116
18117 2008-02-01 Kenichi Handa <handa@m17n.org>
18118
18119 The following changes are to make character composition happen
18120 automatically on displaying.
18121
18122 * Makefile.in (lisp, shortlisp): Add composite.elc.
18123
18124 * composite.h (Qauto_composed, Vauto_composition_function)
18125 (Qauto_composition_function): Extern them.
18126
18127 * composite.c (Vcomposition_function_table)
18128 (Qcomposition_function_table): Delete variables.
18129 (Qauto_composed, Vauto_composition_function)
18130 (Qauto_composition_function): New variables.
18131 (run_composition_function): Don't call
18132 compose-chars-after-function.
18133 (update_compositions): Clear `auto-composed' text property.
18134 (compose_chars_in_text): Delete this function.
18135 (syms_of_composite): Staticpro Qauto_composed and
18136 Qauto_composition_function. Declare Vauto_composition_function as
18137 a Lisp variable.
18138
18139 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18140
18141 * xdisp.c (it_props): Add an entry for Qauto_composed.
18142 (handle_auto_composed_prop): New function.
18143
18144 * xselect.c (selection_data_to_lisp_data): Don't call
18145 compose_chars_in_text.
18146
18147 2008-02-01 Dave Love <fx@gnu.org>
18148
18149 * keyboard.c (read_char): Modify checking around use of
18150 Vkeyboard_translate_table.
18151
18152 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18153 and fix C types.
18154
18155 2008-02-01 Kenichi Handa <handa@m17n.org>
18156
18157 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18158 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18159 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18160 the case that the last byte is '\r' correctly.
18161 (decode_coding): Flush out the unprocessed data correctly.
18162 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18163
18164 2008-02-01 Dave Love <fx@gnu.org>
18165
18166 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18167 Add XK_ISO... case.
18168 (xaw_scroll_callback): Revert last change.
18169
18170 2008-02-01 Kenichi Handa <handa@m17n.org>
18171
18172 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18173
18174 2008-02-01 Kenichi Handa <handa@m17n.org>
18175
18176 * xfaces.c (Vface_resizing_fonts): New variable.
18177 (struct font_name): New member `resizing_ratio'.
18178 (font_resizing_ratio): New function.
18179 (split_font_name): Set font->resizing_ratio.
18180 (better_font_p): Pay attention to font->resizing_ratio.
18181 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18182 RESX, and RESY fields.
18183 (try_alternative_families): Try scalable fonts if
18184 Vscalable_fonts_allowed is not Qt.
18185 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18186
18187 2008-02-01 Dave Love <fx@gnu.org>
18188
18189 * xterm.c (xaw_scroll_callback): Cast correctly.
18190
18191 2008-02-01 Dave Love <fx@gnu.org>
18192
18193 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18194 (lispy_kana_keys): Comment out.
18195 (make_lispy_event) [XK_kana_A]: Comment out.
18196
18197 * xterm.c (xaw_scroll_callback): Cast call_data.
18198 (XTread_socket): Deal with ASCII keysyms.
18199 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18200
18201 2008-02-01 Dave Love <fx@gnu.org>
18202
18203 * xterm.c (Vx_keysym_table): New.
18204 (syms_of_xterm): Initialize it.
18205 (XTread_socket): Use it.
18206 From head: Eliminate incorrect optimization that tried to avoid
18207 decoding the output of X*LookupString.
18208 (x_get_font_repertory): Delete charset declaration.
18209
18210 2008-02-01 Kenichi Handa <handa@m17n.org>
18211
18212 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18213 return 0.
18214 (Fdefine_coding_system_internal): Setup
18215 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18216
18217 2008-02-01 Dave Love <fx@gnu.org>
18218
18219 * coding.c (Fcheck_coding_system): Doc fix.
18220
18221 * editfns.c (Finsert_byte): Return a proper value.
18222
18223 2008-02-01 Kenichi Handa <handa@m17n.org>
18224
18225 * coding.c (decode_coding): Fix args to translate_chars. Pay
18226 attention to Vstandard_translation_table_for_decode.
18227 (encode_coding): Fix args to translate_chars. Pay attention to
18228 Vstandard_translation_table_for_encode.
18229
18230 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18231 SINGLE_BYTE_CHAR_P.
18232
18233 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18234 not by SINGLE_BYTE_CHAR_P.
18235
18236 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18237 SINGLE_BYTE_CHAR_P.
18238
18239 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18240 SINGLE_BYTE_CHAR_P.
18241
18242 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18243 by SINGLE_BYTE_CHAR_P.
18244
18245 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18246 SINGLE_BYTE_CHAR_P.
18247
18248 2008-02-01 Dave Love <fx@gnu.org>
18249
18250 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18251
18252 2008-02-01 Dave Love <fx@gnu.org>
18253
18254 * fns.c (Flanginfo): Fix typo.
18255
18256 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18257
18258 2008-02-01 Kenichi Handa <handa@m17n.org>
18259
18260 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18261 (detect_coding_emacs_mule, detect_coding_iso_2022)
18262 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18263 incomplete byte sequence. Don't update *mask when correctly detected.
18264 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18265 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18266 (detect_coding, detect_coding_system): Adjust for the changes above.
18267
18268 2008-02-01 Kenichi Handa <handa@m17n.org>
18269
18270 * character.c (char_string): Rename from
18271 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18272 (string_char): Rename from string_char.
18273
18274 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18275 if C is greater than MAX_3_BYTE_CHAR.
18276 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18277 string_char instead of string_char_with_unification.
18278
18279 2008-02-01 Dave Love <fx@gnu.org>
18280
18281 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18282
18283 2008-02-01 Kenichi Handa <handa@m17n.org>
18284
18285 * keymap.c (push_key_description): Pay attention to force_multibyte.
18286
18287 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18288
18289 2008-02-01 Dave Love <fx@gnu.org>
18290
18291 * charset.c (define_charset_internal): Rename `supprementary'.
18292
18293 * Makefile.in (lisp, shortlisp): Remove latin-N.
18294
18295 2008-02-01 Dave Love <fx@gnu.org>
18296
18297 * xfns.c (x_window, x_window): Use use_xim.
18298
18299 * xterm.c (use_xim): Initialize.
18300 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18301 (x_term_init): Maybe set use_xim.
18302
18303 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18304
18305 2008-02-01 Kenichi Handa <handa@m17n.org>
18306
18307 * search.c (search_buffer): Fix case-fold-search of multibyte
18308 characters.
18309 (boyer_moore): Rename the last argument to char_high_bits.
18310
18311 2008-02-01 Kenichi Handa <handa@m17n.org>
18312
18313 * xdisp.c (display_string): Fix for the case of zero width glyph.
18314
18315 * xfns.c (x_set_font): Change the error message of the case that
18316 x_new_fontset returns Qt.
18317
18318 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18319 (Finternal_set_lisp_face_attribute): Use signal_error for the
18320 error of invalid fontset.
18321
18322 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18323 fontset, return Qt.
18324
18325 2008-02-01 Dave Love <fx@gnu.org>
18326
18327 * unexelf.c (unexec): Make .got handling not SGI-specific.
18328
18329 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18330
18331 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18332
18333 * keyboard.c (read_key_sequence): Fix type error.
18334
18335 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18336 type error.
18337
18338 * fontset.c (fontset_add): Return Lisp_Object.
18339
18340 2008-02-01 Dave Love <fx@gnu.org>
18341
18342 * charset.h (charset_ordered_list_tick): Declare extern.
18343
18344 2008-02-01 Kenichi Handa <handa@m17n.org>
18345
18346 The following changes (and some of 2008-02-01 changes of mine) are
18347 for handling syntax, category, and case conversion for unibyte
18348 characters by converting them to multibyte on the fly. With these
18349 changes, we don't have to setup syntax and case tables for unibyte
18350 characters in each language environment.
18351
18352 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18353 multibyte if necessary.
18354
18355 * bytecode.c (Fbyte_code): Likewise.
18356
18357 * character.h (LEADING_CODE_LATIN_1_MIN)
18358 (LEADING_CODE_LATIN_1_MAX): New macros.
18359 (unibyte_to_multibyte_table): Extern it.
18360 (unibyte_char_to_multibyte): New macro.
18361 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18362 (CHAR_LEADING_CODE): New macro.
18363 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18364
18365 * character.c (unibyte_to_multibyte_table): New variable.
18366 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18367 (multibyte_char_to_unibyte): If C is an eight-bit character,
18368 convert it to the corresponding byte value.
18369
18370 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18371 not 1, signals an error. Update the elements of
18372 unibyte_to_multibyte_table.
18373 (init_charset_once): Initialize unibyte_to_multibyte_table.
18374 (syms_of_charset): Define the charset `iso-8859-1'.
18375
18376 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18377 as is without converting it to unibyte. In a unibyte buffer,
18378 convert C to multibyte before checking the syntax.
18379
18380 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18381
18382 * minibuf.c (Fminibuffer_complete_word): Use the macro
18383 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18384
18385 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18386
18387 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18388 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18389 that is zero, convert an eight-bit char to multibyte.
18390 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18391 non-emacs case.
18392 (PATFETCH): Convert an eight-bit char to multibyte.
18393 (HANDLE_UNIBYTE_RANGE): New macro.
18394 (regex_compile): Setup the compiled pattern for multibyte chars
18395 even if the given regex string is unibyte. Use PATFETCH_RAW
18396 instead of PATFETCH in many places. To handle `charset'
18397 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18398 only for ASCII chars.
18399 (analyse_first) <exactn>: Simplify because the compiled pattern
18400 is multibyte.
18401 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18402 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18403 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18404 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18405 multibyte always 1.
18406 (re_search_2): In emacs, set the locale variable multibyte to 1,
18407 otherwise to 0. New local variable target_multibyte. Check it
18408 to decide the multibyteness of STR1 and STR2. If
18409 target_multibyte is zero, convert unibyte chars to multibyte
18410 before translating and checking fastmap.
18411 (TARGET_CHAR_AND_LENGTH): New macro.
18412 (re_match_2_internal): In emacs, set the locale variable multibyte
18413 to 1, otherwise to 0. New local variable target_multibyte. Check
18414 it to decide the multibyteness of STR1 and STR2. Use
18415 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18416 <charset, charset_not>: If multibyte is nonzero, check fastmap
18417 only for ASCII chars. Call bcmp_translate with
18418 target_multibyte, not with multibyte.
18419 <begline>: Declare the local variable C as `unsigned'.
18420 (bcmp_translate): Change the last arg name to target_multibyte.
18421
18422 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18423 the regexp pattern and the matching target. Set cp->buf.multibyte
18424 to the multibyteness of the regexp pattern. Set
18425 cp->but.target_multibyte to the multibyteness of the matching target.
18426 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18427 FETCH_STRING_CHAR_ADVANCE.
18428 (Freplace_match): Convert unibyte chars to multibyte.
18429
18430 * syntax.c (char_quoted, back_comment, scan_words)
18431 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18432 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18433 unibyte chars to multibyte.
18434 (skip_chars): Delete the arg syntaxp, and move the code for
18435 handling syntaxes to skip_syntaxes. Change callers.
18436 Fix the case that the multibyteness of STRING and the current
18437 buffer doesn't match.
18438 (skip_syntaxes): New function.
18439 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18440 SINGLE_BYTE_CHAR_P.
18441
18442 2008-02-01 Kenichi Handa <handa@m17n.org>
18443
18444 * xfaces.c (QCfontset): New variable.
18445 (LFACE_FONTSET): New macro.
18446 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18447 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18448 (Finternal_set_lisp_face_attribute)
18449 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18450 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18451 check also LFACE_FONTSET_INDEX.
18452 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18453 attrs[LFACE_FONT_INDEX].
18454 (syms_of_xfaces): Intern and staticpro QCfontset.
18455
18456 * dispextern.h (enum lface_attribute_index): New member
18457 LFACE_FONTSET_INDEX.
18458
18459 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18460
18461 2008-02-01 Kenichi Handa <handa@m17n.org>
18462
18463 * coding.c (coding_set_destination): Fix coding->destination for
18464 the case converting a region.
18465 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18466 (encode_coding_object): Fix coding->dst_pos and
18467 coding->dst_pos_byte for the case converting a region.
18468
18469 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18470
18471 * character.h (BYTE8_STRING): New macro.
18472
18473 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18474
18475 2008-02-01 Kenichi Handa <handa@m17n.org>
18476
18477 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18478 characters by octal form.
18479
18480 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18481
18482 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18483 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18484 _fetch_multibyte_char_len.
18485 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18486
18487 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18488
18489 * casefiddle.c (casify_object): Simplify. Handle the case that
18490 the case conversion change the byte length.
18491 (casify_region): Likewise.
18492
18493 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18494
18495 * character.c (_fetch_multibyte_char_len): Delete this variable.
18496 (syms_of_character): Setup Vprintable_chars.
18497
18498 * editfns.c (Fchar_equal): Fix for the unibyte case.
18499 (Finsert_byte): New function.
18500 (syms_of_editfns): Defsubr it.
18501
18502 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18503 of direct code 0x3ffff.
18504
18505 * search.c (Freplace_match): Fix for the unibyte case.
18506
18507 2008-02-01 Kenichi Handa <handa@m17n.org>
18508
18509 * lread.c (safe_to_load_p): Fix the logic.
18510
18511 * syntax.c (scan_words): Don't treat characters belonging to
18512 different scripts as constituting a word.
18513
18514 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18515
18516 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18517
18518 * emacs.c (main): In the case of --unibyte, instead of aborting on
18519 finding non-empty buffer, make it unibyte.
18520
18521 2008-02-01 Kenichi Handa <handa@m17n.org>
18522
18523 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18524 to create a fontset.
18525
18526 2008-02-01 Dave Love <fx@gnu.org>
18527
18528 * character.c (Funibyte_char_to_multibyte): Doc fix.
18529
18530 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18531
18532 2008-02-01 Kenichi Handa <handa@m17n.org>
18533
18534 * fontset.c (fontset_add): Make the type `int'.
18535 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18536
18537 * character.c (unibyte_char_to_multibyte)
18538 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18539 charset_unibyte, not charset_primary.
18540
18541 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18542
18543 * charset.c (charset_unibyte): Rename from charset_primary.
18544 (Funibyte_charset): Rename from Fprimary_charset.
18545 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18546 (syms_of_charset): Adjust for the above changes.
18547
18548 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18549 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18550 it->multibyte_p is zero.
18551
18552 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18553 Delete extern.
18554
18555 2008-02-01 Kenichi Handa <handa@m17n.org>
18556
18557 * coding.c (Fdefine_coding_system_internal): Fix category setting
18558 for a coding system of type iso-2022.
18559
18560 2008-02-01 Kenichi Handa <handa@m17n.org>
18561
18562 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18563
18564 2008-02-01 Kenichi Handa <handa@m17n.org>
18565
18566 * syntax.c (Vnext_word_boundary_function_table): New variable.
18567 (next-word-boundary-function-table): Declare it as a Lisp variable
18568 in syms_of_syntax.
18569 (scan_words): Call functions in Vnext_word_boundary_function_table
18570 if any.
18571
18572 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18573
18574 * fontset.c (fs_load_font): If fontp->charset is not negative,
18575 return fontp without setting its members.
18576
18577 2008-02-01 Dave Love <fx@gnu.org>
18578
18579 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18580
18581 * m/sparc.h (HAVE_ALLOCA): Delete.
18582
18583 * s/irix6-5.h: Don't include strings.h.
18584 (bcopy, bzero, bcmp): Don't undef.
18585
18586 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18587
18588 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18589 (TIOCSIGSEND): Don't test IRIX6.
18590 (bcopy, bzero, bcmp): Define conditionally.
18591
18592 2008-02-01 Kenichi Handa <handa@m17n.org>
18593
18594 * buffer.c (Qas, Qmake, Qto): New variables.
18595 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18596 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18597
18598 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18599 we are inserting a process output into a multibyte buffer.
18600
18601 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18602 multibyte_char_to_unibyte.
18603
18604 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18605 by the primary charset, make it eight-bit char.
18606 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18607
18608 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18609 (charset_8_bit__control, charset_8_bit_graphic)
18610 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18611 (define_charset_internal): New function.
18612 (syms_of_charset): Call define_charset_internal for pre-defined
18613 charsets.
18614
18615 * charset.h (charset_8_bit): Extern it.
18616
18617 * coding.c (make_conversion_work_buffer): Adjust for the change
18618 of Fset_buffer_multibyte.
18619 (encode_coding_raw_text): Increment p0 in the loop.
18620
18621 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18622
18623 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18624 for the change of Fset_buffer_multibyte.
18625
18626 * fns.c (Fstring_to_multibyte): New function.
18627 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18628
18629 2008-02-01 Dave Love <fx@gnu.org>
18630
18631 * xfns.c (x_put_x_image): Declare args.
18632
18633 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18634 (try_font_list): Declare an arg.
18635
18636 * xdisp.c (message2_nolog, set_message): Declare an arg.
18637
18638 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18639
18640 * syntax.c (scan_sexps_forward): Declare an arg.
18641
18642 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18643 Declare an arg.
18644
18645 * lisp.h (Fnew_fontset): Declare.
18646
18647 * keymap.c (push_key_description): Call CHARACTERP correctly.
18648
18649 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18650 (face_for_char): Delete unused vars.
18651 (Fset_fontset_font): Doc fix. Delete unused vars.
18652
18653 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18654
18655 * composite.c (update_compositions): Declare arg.
18656
18657 * cm.c (calccost, cmgoto): Declare args.
18658
18659 * charset.c: Remove `emacs' conditional. Doc fixes.
18660 (map_char_table_for_charset): Declare.
18661
18662 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18663
18664 * ccl.c: Remove `emacs' conditional.
18665
18666 2008-02-01 Kenichi Handa <handa@m17n.org>
18667
18668 The following changes are to allow specifying multiple font
18669 patterns for a character range (specified by script or charset).
18670
18671 * Makefile.in (abbrev.o): Depend on syntax.h.
18672 (xfaces.o): Depend on charset.h.
18673
18674 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18675 SINGLE_BYTE_CHAR_P.
18676
18677 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18678
18679 * character.h (Vchar_script_table): Extern it.
18680
18681 * character.c (Vscript_alist): Delete.
18682 (Vchar_script_table, Qchar_script_table): New variable.
18683 (syms_of_character): Declare Vchar_script_table as a lisp variable
18684 and initialize it.
18685
18686 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18687 have property char-table-extra-slots, make no extra slot.
18688
18689 * dispextern.h (struct face): Delete member `charset'.
18690 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18691 SINGLE_BYTE_CHAR_P.
18692 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18693 Add prototypes.
18694 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18695 (generate_ascii_font_name): Rename from generate_ascii_font.
18696
18697 * fontset.h (get_font_repertory_func): New prototype.
18698 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18699 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18700
18701 * fontset.c (Qprepend, Qappend): New variables.
18702 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18703 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18704 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18705 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18706 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18707 (load_font_get_repertory): New functions.
18708 (fontset_set): Delete.
18709 (fontset_face): New arg FACE. Return face ID, not face.
18710 Complete re-write to handle new fontset structure. Change caller.
18711 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18712 (face_for_char): Don't call lookup_face.
18713 (make_fontset_for_ascii_face): New arg FACE.
18714 (fs_load_font): New arg CHARSET_ID. Don't check
18715 Vfont_encoding_alist here.
18716 (find_font_encoding): New function.
18717 (list_fontsets): Use STRINGP, not ! NILP.
18718 (accumulate_script_ranges): New function.
18719 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18720 re-written to handle new fontset structure.
18721 (Ffontset_font): Return a copy of element.
18722 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18723 docstring of font-encoding-alist.
18724
18725 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18726 (Fset_fotset_font): Fix arguments to 5.
18727
18728 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18729
18730 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18731 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18732 (highlight_trailing_whitespace): Adjust for the change of
18733 lookup_named_face.
18734
18735 * xfaces.c: Include charset.h.
18736 (load_face_font): Delete argument C. Change caller.
18737 (generate_ascii_font_name): Rename from generate_ascii_font.
18738 (font_name_registry): New function.
18739 (cache_face): Store ascii faces before non-ascii faces in buckets.
18740 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18741 Lookup only ascii faces.
18742 (lookup_non_ascii_face): New function.
18743 (lookup_named_face): Delete argument C. Change caller.
18744 (lookup_derived_face): Delete argument C. Change caller.
18745 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18746 a string, just call font_list with it.
18747 (choose_face_font): Delete arguments FACE and C. New arg
18748 FONT_SPEC. Change caller.
18749 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18750 Change caller.
18751 (realize_non_ascii_face): New function.
18752 (realize_x_face): Call load_face_font here.
18753 (realize_tty_face): Delete argument C. Change caller.
18754 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18755 get a face ID.
18756 (dump_realized_face): Don't print charset of FACE.
18757
18758 * xfns.c (x_set_font): Always call x_new_fontset and
18759 store_frame_parameter.
18760 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18761 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18762
18763 * xterm.h (x_get_font_repertory): Extern it.
18764
18765 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18766 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18767 it->multibyte_p is zero.
18768 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18769 (x_new_fontset): If FONTSETNAME doesn't match any existing
18770 fontsets, create a new one.
18771 (x_get_font_repertory): New function.
18772
18773 2008-02-01 Kenichi Handa <handa@m17n.org>
18774
18775 * coding.c (Ffind_coding_systems_region_internal): Detect an
18776 ASCII only string correctly.
18777
18778 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18779 version is 0.
18780
18781 2008-02-01 Kenichi Handa <handa@m17n.org>
18782
18783 * lread.c: Include "coding.h".
18784 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18785 (load_each_byte, unread_char): New variables.
18786 (readchar_backlog): Delete.
18787 (readchar): Return a character unless load_each_byte is nonzero.
18788 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18789 cons. If unread_char is not -1, simply return it.
18790 (unreadchar): Handle the case that readcharfun is
18791 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18792 (read_multibyte): Delete.
18793 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18794 (read_emacs_mule_char): New functions.
18795 (Fload): Even if the file doesn't have the extension ".elc", if
18796 safe_to_load_p returns a positive version number, assume that the
18797 file contains bytecompiled code. If the version is less than 22,
18798 load the file while decoding multibyte sequences by emacs-mule.
18799 (readevalloop): Don't use readchar_backlog.
18800 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18801 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18802 (read_escape): Delete the arg BYTEREP.
18803 (read1): Set load_each_byte to 1 temporarily while handling
18804 #@NUMBER. Don't call read_multibyte.
18805 (read_vector): Call Fread with a cons. If readcharfun is
18806 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18807 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18808 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18809 and Qload_force_doc_strings.
18810
18811 2008-02-01 Kenichi Handa <handa@m17n.org>
18812
18813 * xdisp.c (face_before_or_after_it_pos): Call
18814 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18815
18816 2008-02-01 Kenichi Handa <handa@m17n.org>
18817
18818 * character.h (TRAILING_CODE_P): New macro.
18819 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
18820 (string_char_with_unification): Fix prototype.
18821 (Vscript_alist): Extern it.
18822
18823 * character.c (Vscript_alist): New variable.
18824 (string_char_with_unification, str_as_unibyte)
18825 (string_escape_byte8): Add `const' to local variables.
18826 (syms_of_character): Declare script-alist as a Lisp variable.
18827
18828 * charset.h (Vcharset_ordered_list): Extern it.
18829 (charset_ordered_list_tick): Extern it.
18830 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
18831 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
18832 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
18833 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
18834 (Funify_charset): Adjust for the change of Funify_charset.
18835
18836 * charset.c (charset_ordered_list_tick): New variable.
18837 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
18838 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
18839 deunify intead of unify a charset.
18840 (string_xstring_p): Add `const' to local variables.
18841 (find_charsets_in_text): Add `const' to arguments and local variables.
18842 (encode_char): Adjust for the change of Funify_charset. Fix
18843 detecting of invalid code.
18844 (Fset_charset_priority): Increment charset_ordered_list_tick.
18845 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
18846 and TO_CODE.
18847
18848 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
18849 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
18850 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
18851 (decode_coding_ccl, consume_chars)
18852 (Ffind_coding_systems_region_internal)
18853 (Fcheck_coding_systems_region): Add `const' to local variables.
18854
18855 * print.c (print_object): Use octal form for printing the
18856 contents of a bool vector.
18857
18858 2008-02-01 Dave Love <fx@gnu.org>
18859
18860 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
18861 <version == 20>: Refuse to load.
18862
18863 2008-02-01 Dave Love <fx@gnu.org>
18864
18865 * fns.c: Move coding.h.
18866 (Qcodeset, Qdays, Qmonths): New.
18867 (concat): Use CHARACTERP instead of INTEGERP.
18868 (Flocale_codeset): Delete.
18869 (Flanginfo): New function.
18870 (syms_of_fns): Change accordingly.
18871
18872 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
18873
18874 2008-02-01 Dave Love <fx@gnu.org>
18875
18876 * casetab.c (init_casetab_once, init_casetab_once): Fix
18877 CHAR_TABLE_SET call.
18878
18879 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
18880
18881 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
18882
18883 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
18884 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
18885 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
18886
18887 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
18888
18889 * coding.c (ENCODE_DESIGNATION, decode_eol)
18890 (make_conversion_work_buffer, code_conversion_restore)
18891 (Fdefine_coding_system_internal): Convert Lisp types.
18892 (code_conversion_restore): Use EQ, not ==.
18893 (Fencode_coding_string): Fix code_convert_string call.
18894
18895 * coding.h (code_convert_region): Fix prototype.
18896
18897 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
18898
18899 * fontset.c (fontset_ref, fontset_set, fs_load_font)
18900 (Ffontset_info): Convert Lisp types.
18901
18902 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
18903
18904 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
18905
18906 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
18907
18908 * chartab.c: Include "...h", not <...h> in some cases.
18909
18910 * callproc.c (Fcall_process): Remove unused variables.
18911
18912 2008-02-01 Dave Love <fx@gnu.org>
18913
18914 * coding.c (Fset_coding_system_priority): Allow null arg list.
18915
18916 2008-02-01 Dave Love <fx@gnu.org>
18917
18918 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
18919 (Fself_insert_and_exit): Use CHARACTERP.
18920
18921 * callproc.c (Fcall_process): Remove unused vars.
18922
18923 * xterm.c (XTread_socket): Add extra dead keysyms.
18924
18925 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
18926
18927 * dispextern.h: Remove prototypes for redraw_frame,
18928 redraw_garbaged_frames.
18929
18930 * cmds.c (Fself_insert_command): Use CHARACTERP.
18931
18932 * chartab.c (make_sub_char_table): Remove unused var.
18933 (Fset_char_table_default, Fmap_char_table): Doc fix.
18934
18935 * keymap.c (access_keymap): Remove generic char code.
18936 (push_key_description): Use CHARACTERP.
18937
18938 2008-02-01 Dave Love <fx@gnu.org>
18939
18940 * charset.c: Doc fixes.
18941 (Funify_charset): Extra checking.
18942
18943 2008-02-01 Dave Love <fx@gnu.org>
18944
18945 * lread.c: Remove some unused variables.
18946 (safe_to_load_p): If safe, return the magic number version byte.
18947 (Fload): Maybe use load-with-code-conversion.
18948
18949 2008-02-01 Kenichi Handa <handa@m17n.org>
18950
18951 * category.c (Fmodify_category_entry): Don't modify the contents
18952 of category_set for characters out of the range. Avoid
18953 unnecessary modification.
18954
18955 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
18956 Vchar_unify_table. The default value of the table is now nil.
18957
18958 * character.c (syms_of_character): Setup Vchar_width_table for
18959 eight-bit-control and raw-byte chars.
18960
18961 * charset.h (enum define_charset_arg_index): Delete
18962 charset_arg_parents and add charset_arg_subset and
18963 charset_arg_superset.
18964 (enum charset_attr_index): Delete charset_parents and add
18965 charset_subset and charset_superset.
18966 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
18967 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
18968 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
18969 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
18970 (CHARSET_SUPERSET): New macros.
18971 (charset_work): Extern it.
18972 (ENCODE_CHAR): Use charset_work.
18973 (CHAR_CHARSET_P): Adjust for the change of encoder format.
18974 (map_charset_chars): Extern it.
18975
18976 * charset.c (load_charset_map): Set the default value of encoder
18977 and deunifier char-tables to nil.
18978 (map_charset_chars): Change argument. Change callers. Use
18979 map_char_table_for_charset instead of map_char_table.
18980 (Fmap_charset_chars): New optional args from_code and to_code.
18981 (Fdefine_charset_internal): Adjust for the change of
18982 `define-charset' (:parents -> :subset or :superset).
18983 (charset_work): New variable.
18984 (encode_char, syms_of_charset): Adjust for the change of
18985 Fdefine_charset_internal.
18986 (Ffind_charset_string): Setup the vector `charsets' correctly.
18987
18988 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
18989 the previous change.
18990 (char_table_ref_and_range): Adjust for the above change.
18991 (map_sub_char_table_for_charset): New function.
18992 (map_char_table_for_charset): New function.
18993
18994 * keymap.c (describe_vector): Handle a char-table directly here.
18995 (describe_char_table): Delete.
18996
18997 * lisp.h (map_charset_chars): Delete.
18998
18999 2008-02-01 Dave Love <fx@gnu.org>
19000
19001 * fns.c (count_combining): Comment out (unused).
19002 (Flocale_codeset): New.
19003 (syms_of_fns): Defsubr it.
19004
19005 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19006 (size_t): Remove.
19007
19008 2008-02-01 Dave Love <fx@gnu.org>
19009
19010 * Makefile.in (chartab.o): Depend on charset.h.
19011
19012 2008-02-01 Kenichi Handa <handa@m17n.org>
19013
19014 * character.c (syms_of_character): Set the default value of
19015 Vprintable_chars to Qnil.
19016
19017 2008-02-01 Dave Love <fx@gnu.org>
19018
19019 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19020
19021 2008-02-01 Kenichi Handa <handa@m17n.org>
19022
19023 * charset.c (load_charset_map): Handle the case that from < to
19024 correctly.
19025
19026 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19027 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19028 Pay attention to raw-8-bit chars.
19029
19030 2008-02-01 Kenichi Handa <handa@m17n.org>
19031
19032 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19033 It is not bytecompiled now.
19034
19035 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19036 (charset_jisx0208): New variables.
19037 (Fdefine_charset_internal): Setup them if appropriate.
19038 (init_charset_once): Initialize them to -1.
19039
19040 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19041 (charset_jisx0208): Extern them.
19042
19043 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19044 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19045 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19046 (setup_iso_safe_charsets): Fix arguments to Fassq.
19047 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19048 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19049 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19050 (encode_coding_iso_2022): Change the 1st arg to
19051 ENCODE_ISO_CHARACTER to a variable.
19052
19053 2008-02-01 Kenichi Handa <handa@m17n.org>
19054
19055 * charset.h (enum define_charset_arg_index): New enums
19056 charset_arg_min_code and charset_arg_max_code.
19057 (struct charset): New member char_index_offset.
19058
19059 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19060 Take charset->char_index_offset into account.
19061 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19062 args[charset_arg_max_code]. Setup charset.char_index_offset.
19063 (syms_of_charset): Fix args to Fdefine_charset_internal.
19064
19065 2008-02-01 Dave Love <fx@gnu.org>
19066
19067 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19068
19069 2008-02-01 Dave Love <fx@gnu.org>
19070
19071 * coding.c: Doc fixes.
19072 (Fcoding_system_aliases): Fix return value.
19073 (Qmac): Remove (duplicated) definition.
19074
19075 2008-02-01 Dave Love <fx@gnu.org>
19076
19077 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19078 New functions.
19079
19080 * character.c (Fstring): Doc fix.
19081
19082 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19083
19084 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
19085 (font-encoding-alist): Doc fix.
19086
19087 2008-02-01 Dave Love <fx@gnu.org>
19088
19089 * term.c (costs_set): Declare static, non-initialized for pcc.
19090 (encode_terminal_code): Remove unused var.
19091
19092 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19093 for K&R.
19094
19095 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19096
19097 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19098 (suffixes): Move out of make_subsidiaries for K&R.
19099
19100 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19101
19102 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19103
19104 2008-02-01 Dave Love <fx@gnu.org>
19105
19106 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19107
19108 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19109
19110 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19111
19112 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19113
19114 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19115
19116 2008-02-01 Kenichi Handa <handa@m17n.org>
19117
19118 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19119 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19120
19121 2008-02-01 Kenichi Handa <handa@m17n.org>
19122
19123 * coding.c (decode_coding_charset): Adjust for the change of
19124 Fdefine_coding_system_internal.
19125 (Fdefine_coding_system_internal): For a coding system of
19126 `charset' type, store a list of charset IDs in
19127 `charset_attr_charset_valids' element of coding attributes.
19128
19129 2008-02-01 Kenichi Handa <handa@m17n.org>
19130
19131 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19132 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19133 caller. Handle 2-byte and 3-byte charsets correctly.
19134 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19135 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19136 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19137 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19138 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19139 sequence.
19140 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19141 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19142 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19143 and alt&rule composition.
19144 (decode_coding_iso_2022): Handle composition correctly.
19145 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19146
19147 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19148 re-defining a charset. If the charset has :emacs-mule-id, setup
19149 emacs_mule_bytes.
19150 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19151
19152 2008-02-01 Kenichi Handa <handa@m17n.org>
19153
19154 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19155 (encode_coding_big5, encode_coding_charset): If coding requires safe
19156 encoding, produce a character specified by
19157 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19158
19159 2008-02-01 Dave Love <fx@gnu.org>
19160
19161 * xterm.c (XSetIMValues): Declare.
19162
19163 * process.c: Conditionally include sys/wait.h, pty.h.
19164
19165 * print.c (print_object): Fix print format for 64-bit systems.
19166
19167 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19168
19169 * buffer.c (emacs_strerror): Declare.
19170
19171 * fontset.c (Fclear_face_cache): Declare.
19172 (accumulate_font_info): Comment-out (unused).
19173 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19174 variables.
19175
19176 * character.h (string_escape_byte8): Declare.
19177
19178 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19179 unused vars.
19180 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19181 (Fmap_charset_chars): Doc fix.
19182
19183 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19184 (Fset_coding_system_priority, Fset_coding_system_priority)
19185 (Fdefine_coding_system_internal): Doc fix.
19186
19187 2008-02-01 Dave Love <fx@gnu.org>
19188
19189 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19190
19191 2008-02-01 Kenichi Handa <handa@m17n.org>
19192
19193 * character.c (string_escape_byte8): Make multibyte string with
19194 correct size.
19195
19196 * charset.c (Fmake_char): Delete unnecessary code.
19197
19198 2008-02-01 Kenichi Handa <handa@m17n.org>
19199
19200 * xfns.c (x_encode_text): Allocate coding.destination here, and
19201 call encode_coding_object with dst_object Qnil.
19202
19203 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19204 multibyte form correctly.
19205
19206 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19207 against Vfont_encoding_alist.
19208
19209 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19210 handling of charset list.
19211 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19212 (decode_coding_object): Move point to coding->dst_pos before
19213 calling post-read-conversion function.
19214 (encode_coding_object): Give correct arguments to
19215 pre-write-conversion. Ignore the return value of
19216 pre-write-conversion function. Pay attention to the case that
19217 pre-write-conversion changes the current buffer. If dst_object is
19218 Qt, even if coding->src_bytes is zero, allocate at least one byte
19219 to coding->destination.
19220
19221 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19222
19223 * charset.c (Fmake_char): Make it more backward compatible.
19224 (Fmap_charset_chars): Fix docstring.
19225
19226 2008-02-01 Dave Love <fx@gnu.org>
19227
19228 * coding.c: Doc fixes.
19229 (Fdefine_coding_system_alias): Use names, not symbols, in
19230 coding-system-alist.
19231
19232 2008-02-01 Kenichi Handa <handa@m17n.org>
19233
19234 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19235 of calling free_realized_face.
19236
19237 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19238
19239 * charset.c (read_hex): Don't treat SPC as a comment starter.
19240 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19241 (Fdecode_char): Fix typo.
19242
19243 2008-02-01 Kenichi Handa <handa@m17n.org>
19244
19245 * charset.h (struct charset): New member `code_space_mask'.
19246
19247 * coding.c (coding_set_source): Delete the local variable beg_byte.
19248 (encode_coding_charset, Fdefine_coding_system_internal):
19249 Delete the local variable charset.
19250 (Fdefine_coding_system_internal): Setup
19251 attrs[coding_attr_charset_valids] correctly.
19252
19253 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19254 member to check if CODE is valid or not.
19255 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19256 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19257 is within the range of charset->min_code and carset->max_code.
19258
19259 2008-02-01 Dave Love <fx@gnu.org>
19260
19261 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19262
19263 * dispextern.h (generate_ascii_font): Fix return type.
19264
19265 * xfaces.c (generate_ascii_font): Fix arg declaration.
19266
19267 * coding.c (coding_inherit_eol_type)
19268 (Fset_terminal_coding_system_internal)
19269 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19270
19271 2008-02-01 Kenichi Handa <handa@m17n.org>
19272
19273 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19274 multiple charsets correctly.
19275
19276 2008-02-01 Kenichi Handa <handa@m17n.org>
19277
19278 * search.c (boyer_moore): Fix handling of multibyte character
19279 translation.
19280
19281 * xdisp.c (display_mode_element): When the variable `elt' is
19282 changed, update `this' and `lisp_string'.
19283
19284 2008-02-01 Kenichi Handa <handa@m17n.org>
19285
19286 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19287
19288 * callproc.c (Fcall_process): Be sure to give the current buffer
19289 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19290
19291 * charset.c (struct charset_map_entries): New struct.
19292 (load_charset_map): Rename from parse_charset_map. New args
19293 entries and n_entries. Change caller.
19294 (load_charset_map_from_file): Rename from load_charset_map.
19295 Change caller. New arg control_flag. Call load_charset_map at
19296 the tail.
19297 (load_charset_map_from_vector): New function.
19298 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19299 (encode_char): If the charset is compact, change a character index
19300 to a code point.
19301
19302 * coding.c (coding_alloc_by_making_gap): Check the case that the
19303 source and destination are the same correctly.
19304 (decode_coding_raw_text): Set coding->consumed_char and
19305 coding->consumed to 0.
19306 (produce_chars): If coding->chars_at_source is nonzero, update
19307 coding->consumed_char and coding->consumed before calling
19308 alloc_destination.
19309 (Fdefine_coding_system_alias): Register ALIAS in
19310 Vcoding_system_alist.
19311 (syms_of_coding): Define `no-conversion' coding system at the tail.
19312
19313 * fileio.c (Finsert_file_contents): Set coding_system instead of
19314 val. If the current buffer is multibyte, always call
19315 decode_coding_gap.
19316
19317 * xfaces.c (try_font_list): Give higher priority to fontset's
19318 family than face's family.
19319
19320 2008-02-01 Kenichi Handa <handa@m17n.org>
19321
19322 * callproc.c (Fcall_process): Be sure to give the current buffer
19323 to decode_coding_c_string.
19324
19325 * xfaces.c (try_font_list): Give a family specified in a fontset
19326 higher priority than a family specified in a face.
19327
19328 2008-02-01 Kenichi Handa <handa@m17n.org>
19329
19330 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19331 Fix arguments to insert_from_buffer.
19332
19333 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19334
19335 2008-02-01 Kenichi Handa <handa@m17n.org>
19336
19337 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19338 (decode_coding_gap): Set coding->dst_multibyte correctly.
19339
19340 2008-02-01 Kenichi Handa <handa@m17n.org>
19341
19342 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19343 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19344 (encode_coding_utf_16): Substitute coding->default_char for
19345 non-Unicode characters.
19346 (decode_coding): Don't call record_insert here.
19347 (setup_coding_system): Initialize `surrogate' of
19348 coding->spec.utf_16 to 0.
19349 (EMIT_ONE_BYTE): Fix for multibyte case.
19350
19351 * insdel.c (insert_from_gap): Call record_insert.
19352
19353 2008-02-01 Kenichi Handa <handa@m17n.org>
19354
19355 * casefiddle.c (casify_region): Fix multibyte case.
19356
19357 * character.c (c_string_width): Add return type `int'.
19358 (char_string_with_unification): Delete arg ADVANCED.
19359
19360 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19361 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19362 (CHAR_STRING_ADVANCE): Make it do-while statement.
19363
19364 * chartab.c (sub_char_table_set_range): Optimize for the case
19365 DEPTH == 3. Add workaround code for a GCC optimization bug.
19366
19367 * charset.c (parse_charset_map): Remove an unused variable.
19368
19369 * coding.c: Delete unused variables.
19370
19371 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19372 earlier. If inserted is zero and the coding system doesn't
19373 require flushing, don't call decode_coding_gap.
19374
19375 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19376
19377 2008-02-01 Kenichi Handa <handa@m17n.org>
19378
19379 The following changes are for using Unicode as an internal
19380 character model, and use UTF-8 format for buffer/string
19381 representation.
19382
19383 * .gdbinit (xchartable): Adjust for the change of char table structure.
19384 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19385
19386 * Makefile.in (obj): Add character.o and chartab.o.
19387 (lisp, shortlisp): Remove utf-8.elc.
19388 (*.o): For many files, change dependency on charset.h to
19389 character.h, and add dependency on character.h.
19390 (character.o, chartab.o): New targets.
19391
19392 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19393 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19394 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19395 of "charset.h".
19396
19397 * dired.c, filelock.c: Include "character.h".
19398
19399 * alloc.c: Include "character.h" instead of "charset.h".
19400 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19401 (syms_of_alloc): Remove defsubr for Smake_char_table.
19402
19403 * buffer.c: Include "character.h" instead of "charset.h", don't
19404 include "coding.h".
19405 (Fset_buffer_multibyte): Adjust for UTF-8.
19406
19407 * buffer.h: EXFUN Fbuffer_live_p.
19408
19409 * callproc.c: Include "character.h" instead of "charset.h".
19410 (Fcall_process): Big change for the new code-conversion APIs.
19411
19412 * casetab.c: Include "character.h" instead of "charset.h".
19413 (set_canon, set_identity, shuffle): Adjust for the new
19414 map_char_table spec.
19415 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19416 accessing the char table structure.
19417
19418 * chartab.c: New file that implements char table.
19419
19420 * category.c: Include "character.h".
19421 (copy_category_entry): New function.
19422 (copy_category_table): Call map_char_table and copy_category_entry.
19423 (Fmake_category_table): Initialize all top-level slots.
19424 (char_category_set): New function.
19425 (modify_lower_category_set): Delete.
19426 (Fmodify_category_entry): Call char_table_ref_and_range.
19427
19428 * category.h (CATEGORY_SET): Just call char_category_set.
19429
19430 * ccl.c: Include "character.h".
19431 (Qccl, Qcclp): New variables.
19432 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19433 it's less than 256.
19434 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19435 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19436 and DST type.
19437 (ccl_driver): Change types of argument, adjust code accordingly.
19438 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19439 ccl_driver.
19440 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19441
19442 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19443 New members src_multibyte, dst_multibyte, consumed, and produced.
19444 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19445 (CODING_SPEC_CCL_PROGRAM): New macro.
19446 (ccl_driver): Update prototype.
19447 (Qccl, Qcclp, Fccl_program_p): Extern them.
19448 (CHECK_CCL_PROGRAM): New macro.
19449
19450 * character.c, character.h, chartab.c: New files.
19451
19452 * charset.c: Mostly re-written. Move character and multibyte sequence
19453 handling codes to character.c.
19454
19455 * charset.h: Mostly re-written. Move character and multibyte sequence
19456 handling codes to character.h.
19457
19458 * coding.c, coding.h: Mostly re-written.
19459
19460 * composite.c: Include "character.h" instead of "charset.h".
19461 (CHAR_WIDTH): Move to character.h.
19462 (HASH_KEY, HASH_VALUE): Delete.
19463
19464 * composite.h (enum composition_method): Change order of enumeration
19465 symbols.
19466
19467 * data.c: Include "character.h" instead of "charset.h".
19468 (Faref): Call CHAR_TABLE_REF for a char table.
19469 (Faset): Call CHAR_TABLE_SET for a char table.
19470
19471 * dispextern.h (free_realized_face, check_face_attribytes)
19472 (generate_ascii_font): Extern them.
19473 (free_realized_multibyte_face): Delete extern.
19474
19475 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19476 table structure.
19477
19478 * editfns.c: Include "character.h" instead of "charset.h".
19479 (Fchar_to_string): Always call CHAR_STRING.
19480
19481 * emacs.c (main): Call init_charset_once, init_charset,
19482 syms_of_chartab, and syms_of_character.
19483
19484 * fileio.c: Include "character.h" instead of "charset.h".
19485 (Finsert_file_contents): Big change for the new code-conversion API.
19486 (choose_write_coding_system, Fwrite_region): Likewise.
19487 (build_annotations_2): Delete.
19488 (e_write): Big change for the new code-conversion API.
19489
19490 * fns.c: Include "character.h" instead of "charset.h".
19491 (copy_sub_char_table): Move to chartab.c.
19492 (Fcopy_sequence): Call copy_char_table for a char table.
19493 (concat): Delete codes calling count_multibyte.
19494 (string_char_to_byte, string_byte_to_char): Adjust for the new
19495 multibyte form.
19496 (internal_equal): Adjust for the change of char table structure.
19497 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19498 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19499 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19500 (char_table_translate, optimize_sub_char_table)
19501 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19502 chartab.c.
19503 (char_table_ref_and_index): Delete.
19504 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19505 (Fmd5): Call preferred_coding_system instead of accessing
19506 Vcoding_category_list. Adjust for the new code-conversion API.
19507 (syms_of_fns): Move defsubr for char table related functions to
19508 chartab.c.
19509
19510 * fontset.c: Mostly re-written.
19511
19512 * fontset.h (struct font_info): Change type of the member encoding_type.
19513 (enum FONT_SPEC_INDEX): New enum.
19514 (fontset_font_pattern, fs_load_font): Update prototype.
19515 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19516
19517 * indent.c: Include "character.h" instead of "charset.h".
19518 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19519
19520 * insdel.c: Include "character.h" instead of "charset.h".
19521 (copy_text): Don't refer to Vnonascii_translation_table.
19522 (insert_from_gap): New function.
19523
19524 * keyboard.c: Include "character.h" instead of "charset.h".
19525 (command_loop_1): Never call direct_output_forward_char before
19526 a non-ASCII character.
19527 (read_char): If Vkeyboard_translate_table is a char table, always
19528 translate a character.
19529
19530 * keymap.c: Include "character.h".
19531 (store_in_keymap): Handle the case that IDX is a cons.
19532 (Fdefine_key): Handle the case that KEY is a cons and the car part
19533 is also a cons (range).
19534 (push_key_description): Adjust for the new character code.
19535 (describe_vector): Call describe_char_table for a char table.
19536 (describe_char_table): New function.
19537
19538 * keymap.h (describe_char_table): Extern it.
19539
19540 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19541 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19542 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19543 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19544 Delete.
19545 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19546 structure.
19547 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19548 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19549 (CHARTAB_SIZE_BITS_3): New macros.
19550 (chartab_size): Extern it.
19551 (struct Lisp_Char_Table): Re-design.
19552 (struct Lisp_Sub_Char_Table): New structure.
19553 (HASH_KEY, HASH_VALUE): Move from fns.c.
19554 (CHARACTERBITS): Define as 22.
19555 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19556 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19557 (GC_SUB_CHAR_TABLE_P): New macro.
19558 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19559 (code_convert_string_norecord): Deleted extern.
19560 (init_character_once, syms_of_character, init_charset)
19561 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19562
19563 * lread.c: Include "character.h".
19564 (read_multibyte): New arg NBYTES.
19565 (read_escape): Change the meaning of returned *BYTEREP.
19566 (to_multibyte): Delete.
19567 (read1): Adjust the handling of char table and string.
19568
19569 * print.c: Include "character.h" instead of "charset.h".
19570 (print_string): Convert 8-bit raw bytes to octal form by
19571 string_escape_byte8.
19572 (print_object): Adjust for the new multibyte form. Print 8-bit
19573 raw bytes always in octal form. Handle sub char table correctly.
19574
19575 * process.c: Include "character.h" instead of "charset.h".
19576 (read_process_output, send_process): Adjust for the new
19577 code-conversion API.
19578
19579 * puresize.h (BASE_PURESIZE): Increase.
19580
19581 * regex.c: Include "character.h" instead of "charset.h".
19582 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19583 (regex_compile): Accept a range whose starting and ending
19584 character have different leading bytes.
19585 (analyse_first): Adjust for the above change.
19586
19587 * search.c: Include "character.h" instead of "charset.h".
19588 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19589 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19590
19591 * syntax.c: Include "character.h" instead of "charset.h".
19592 (syntax_parent_lookup): Delete.
19593 (Fmodify_syntax_entry): Accept a cons as CHAR.
19594 (skip_chars): Adjust for the new multibyte form.
19595 (init_syntax_once): Call char_table_set_range instead of directly
19596 accessing the structure of a char table.
19597
19598 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19599 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19600 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19601 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19602
19603 * term.c: Include "buffer.h" and "character.h".
19604 (encode_terminal_code, write_glyphs): Adjust for the new
19605 code-conversion API.
19606 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19607
19608 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19609
19610 * xdisp.c: Include "character.h".
19611 (get_next_display_element): Adjust for the new multibyte form.
19612 (disp_char_vector): Adjust for the new char table structure.
19613 (decode_mode_spec_coding): Adjust for the new structure of
19614 coding system.
19615 (decode_mode_spec): Adjust for the new code-conversion API.
19616
19617 * xfaces.c: Include "character.h" instead of "charset.h".
19618 (load_face_font): Adjust for the change of choose_face_font and
19619 FS_LOAD_FONT.
19620 (generate_ascii_font): New function.
19621 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19622 (set_font_frame_param): Adjust for the change of choose_face_font.
19623 (free_realized_face): Make it public.
19624 (free_realized_faces_for_fontset): Rename from
19625 free_realized_multibyte_face. Free also faces realized for ASCII.
19626 (choose_face_font): Change arguments. Adjust for the change of
19627 fontset_font_pattern and FS_LOAD_FONT.
19628
19629 * xfns.c: Include "character.h".
19630 (x_encode_text): Adjust for the new code-conversion API.
19631
19632 * xselect.c: Don't include "charset.h".
19633 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19634
19635 * xterm.c: Include "character.h".
19636 (x_encode_char): New argument CHARSET. Change caller.
19637 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19638 Call ENCODE_CHAR instead of SPLIT_CHAR.
19639 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19640 CHAR_WIDTH instead of CHARSET_WIDTH.
19641 (XTread_socket): Adjust for the new code-conversion API.
19642 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19643 (x_load_font): Adjust for the change of struct font.
19644
19645 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19646
19647 * xfaces.c (face_at_buffer_position): Remove unused vars.
19648
19649 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19650
19651 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19652 Fix overflow checking.
19653
19654 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19655
19656 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19657 Cancel previous change.
19658
19659 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19660
19661 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19662 ccl->eight_bit_control. Fix check for buffer overflow.
19663 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19664 (ccl_driver): Initialize extra_bytes to 0.
19665
19666 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19667
19668 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19669 return it ORed with ctrl_modifier.
19670
19671 2008-01-29 Miles Bader <miles@gnu.org>
19672
19673 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19674
19675 2008-01-28 Jason Rumney <jasonr@gnu.org>
19676
19677 * w32.c (stat): Don't double check for networked drive.
19678
19679 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19680
19681 * window.c (run_window_configuration_change_hook): New function.
19682 Code extracted from set_window_buffer. Set the selected frame.
19683 (set_window_buffer): Use it.
19684 * window.h (run_window_configuration_change_hook): Declare.
19685 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19686
19687 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19688
19689 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19690
19691 * Makefile.in: Remove references to unused macros.
19692
19693 2008-01-26 Eli Zaretskii <eliz@gnu.org>
19694
19695 * w32.c (g_b_init_get_sid_sub_authority)
19696 (g_b_init_get_sid_sub_authority_count): New static variables.
19697 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19698 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19699 (init_user_info): Use them to retrieve uid and gid.
19700 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19701 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19702 st_uid and st_gid of the file.
19703
19704 2008-01-26 Jason Rumney <jasonr@gnu.org>
19705
19706 * w32.c (logon_network_drive): New function.
19707 (stat): Use it.
19708
19709 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
19710
19711 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19712 invisible text covered with an ellipsis.
19713
19714 2008-01-25 Richard Stallman <rms@gnu.org>
19715
19716 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19717 jump back to beginning. Move some other initializations after that.
19718 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19719 New variables.
19720 (syms_of_xdisp): Init them.
19721
19722 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19723
19724 * buffer.c (reset_buffer_local_variables):
19725 Implement `permanent-local-hook'.
19726 (Qpermanent_local_hook): New variable.
19727 (syms_of_buffer): Init and staticpro it.
19728
19729 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
19730
19731 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19732
19733 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19734
19735 * fns.c (Fclrhash): Return TABLE.
19736
19737 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19738
19739 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19740 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19741 is set even without positional changes.
19742 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19743
19744 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19745
19746 2008-01-23 Jason Rumney <jasonr@gnu.org>
19747
19748 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19749
19750 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19751 the unicode range available in MULE by locale-coding-system.
19752 Improve dbcs lead byte detection. Set event timestamp and modifiers
19753 earlier.
19754
19755 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19756
19757 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19758 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19759 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19760 when used on child processes.
19761
19762 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
19763
19764 * dbusbind.c (Fdbus_method_return_internal): Rename from
19765 Fdbus_method_return.
19766 (Fdbus_unregister_object): Move to dbus.el.
19767 (Fdbus_call_method, Fdbus_method_return_internal)
19768 (Fdbus_send_signal): Improve debug messages.
19769
19770 2008-01-20 Martin Rudalics <rudalics@gmx.at>
19771
19772 * undo.c (undo_inhibit_record_point): New variable.
19773 (syms_of_undo): Initialize it.
19774 (record_point): Don't record point when undo_inhibit_record_point
19775 is set.
19776
19777 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19778
19779 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19780
19781 * xdisp.c (Qauto_hscroll_mode): New var.
19782 (syms_of_xdisp): Initialize it.
19783 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19784 window's buffer.
19785 (hscroll_windows): Don't check automatic_hscrolling_p here.
19786
19787 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19788 vscroll if we're setting window-buffer to the value it already has.
19789
19790 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19791
19792 * m/intel386.h: Remove references to XENIX.
19793
19794 2008-01-17 Andreas Schwab <schwab@suse.de>
19795
19796 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19797 instead of HAVE_X86_64_LIB64_DIR.
19798 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19799
19800 2008-01-17 Glenn Morris <rgm@gnu.org>
19801
19802 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19803 to HAVE_X86_64_LIB64_DIR.
19804
19805 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19806
19807 * s/irix3-3.h:
19808 * s/irix4-0.h:
19809 * s/386-ix.h:
19810 * s/domain.h:
19811 * s/hpux9-x11r4.h:
19812 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19813
19814 * sysdep.c: Remove code containing references to symbols defined
19815 by unsupported systems.
19816
19817 2008-01-16 Glenn Morris <rgm@gnu.org>
19818
19819 * coding.c (select-safe-coding-system-function): Doc fix.
19820
19821 2008-01-15 Glenn Morris <rgm@gnu.org>
19822
19823 * config.in: Revert 2008-01-13 change: this is a generated file.
19824
19825 2008-01-13 Tom Tromey <tromey@redhat.com>
19826
19827 * lisp.h: Fix typo.
19828
19829 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19830
19831 * m/sequent-ptx.h:
19832 * m/sequent.h:
19833 * s/ptx.h:
19834 * s/ptx4-2.h:
19835 * s/ptx4.h: Remove files for systems no longer supported.
19836
19837 * callproc.c (Fcall_process): Fix previous change.
19838
19839 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
19840
19841 * unexsunos4.c: Remove file, system not supported anymore.
19842
19843 * m/mips.h:
19844 * m/intel386.h:
19845 * callproc.c:
19846 * config.in:
19847 * ecrt0.c:
19848 * emacs.c:
19849 * fileio.c:
19850 * frame.c:
19851 * getpagesize.h:
19852 * keyboard.c:
19853 * lread.c:
19854 * process.c:
19855 * puresize.h:
19856 * sysdep.c:
19857 * systty.h:
19858 * syswait.h:
19859 * unexec.c:
19860 * xdisp.c:
19861 * alloc.c: Remove code containing references to symbols defined by
19862 unsupported systems.
19863
19864 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
19865
19866 * coding.c (detect_coding_mask): Fix previous change.
19867
19868 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
19869
19870 * coding.c (detect_coding_iso2022): New arg
19871 latin_extra_code_state. Allow Latin extra codes only
19872 when *latin_extra_code_state is nonzero.
19873 (detect_coding_mask): If there is a NULL byte, detect the encoding
19874 as UTF-16 or binary. If Latin extra codes exist, detect the
19875 encoding as ISO-2022 only when there's no other proper encoding is
19876 found.
19877
19878 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19879
19880 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
19881 #ifdef MAC_OS.
19882
19883 2008-01-08 Richard Stallman <rms@gnu.org>
19884
19885 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
19886
19887 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
19888
19889 * keyboard.c (parse_menu_item): Don't enclose key bindings on
19890 menu bar in parentheses.
19891
19892 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
19893
19894 * m/7300.h:
19895 * m/acorn.h:
19896 * m/alliant-2800.h:
19897 * m/alliant.h:
19898 * m/alliant1.h:
19899 * m/alliant4.h:
19900 * m/altos.h:
19901 * m/amdahl.h:
19902 * m/apollo.h:
19903 * m/att3b.h:
19904 * m/aviion-intel.h:
19905 * m/aviion.h:
19906 * m/celerity.h:
19907 * m/clipper.h:
19908 * m/cnvrgnt.h:
19909 * m/convex.h:
19910 * m/cydra5.h:
19911 * m/delta88k.h:
19912 * m/dpx2.h:
19913 * m/dual.h:
19914 * m/elxsi.h:
19915 * m/f301.h:
19916 * m/gould-np1.h:
19917 * m/gould.h:
19918 * m/i860.h:
19919 * m/ibmps2-aix.h:
19920 * m/ibmrt-aix.h:
19921 * m/ibmrt.h:
19922 * m/irist.h:
19923 * m/is386.h:
19924 * m/isi-ov.h:
19925 * m/mega68.h:
19926 * m/mg1.h:
19927 * m/news-r6.h:
19928 * m/news-risc.h:
19929 * m/news.h:
19930 * m/nh3000.h:
19931 * m/nh4000.h:
19932 * m/ns16000.h:
19933 * m/ns32000.h:
19934 * m/nu.h:
19935 * m/orion.h:
19936 * m/orion105.h:
19937 * m/paragon.h:
19938 * m/pfa50.h:
19939 * m/plexus.h:
19940 * m/pyramid.h:
19941 * m/pyrmips.h:
19942 * m/sh3el.h:
19943 * m/sps7.h:
19944 * m/sr2k.h:
19945 * m/stride.h:
19946 * m/sun1.h:
19947 * m/sun2.h:
19948 * m/sun3-68881.h:
19949 * m/sun3-fpa.h:
19950 * m/sun3-soft.h:
19951 * m/sun3.h:
19952 * m/sun386.h:
19953 * m/symmetry.h:
19954 * m/tad68k.h:
19955 * m/tahoe.h:
19956 * m/targon31.h:
19957 * m/tek4300.h:
19958 * m/tekxd88.h:
19959 * m/tower32.h:
19960 * m/tower32v3.h:
19961 * m/ustation.h:
19962 * m/wicat.h:
19963 * m/xps100.h:
19964 * s/cxux.h:
19965 * s/cxux7.h:
19966 * s/dgux.h:
19967 * s/dgux4.h:
19968 * s/dgux5-4-3.h:
19969 * s/dgux5-4r2.h:
19970 * s/esix.h:
19971 * s/esix5r4.h:
19972 * s/hiuxmpp.h:
19973 * s/hiuxwe2.h:
19974 * s/iris3-5.h:
19975 * s/iris3-6.h:
19976 * s/isc2-2.h:
19977 * s/isc3-0.h:
19978 * s/isc4-0.h:
19979 * s/isc4-1.h:
19980 * s/newsos5.h:
19981 * s/newsos6.h:
19982 * s/osf1.h:
19983 * s/osf5-0.h:
19984 * s/riscix1-1.h:
19985 * s/riscix12.h:
19986 * s/sco4.h:
19987 * s/sco5.h:
19988 * s/sunos4-0.h:
19989 * s/sunos4-1.h:
19990 * s/sunos413.h:
19991 * s/sunos4shr.h:
19992 * s/umax.h:
19993 * s/unipl5-2.h:
19994 * s/xenix.h:
19995 * cxux-crt0.s:
19996 * unexapollo.c:
19997 * unexconvex.c:
19998 * unexenix.c:
19999 * unexsni.c: Remove files for systems no longer supported.
20000
20001 * m/intel386.h: Remove references to unsupported systems.
20002
20003 * w32.c (get_emacs_configuration): Remove reference to i860.
20004
20005 * sysdep.c: Remove dead code.
20006
20007 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20008
20009 * s/rtu.h:
20010 * m/masscomp.h: Remove files. Platform is obsolete.
20011
20012 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
20013
20014 * dbusbind.c (Fdbus_method_return): New function.
20015 (xd_read_message): Add the serial number to the event.
20016 (Fdbus_register_method): Activate the function.
20017
20018 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20019
20020 * keyboard.c (read_key_sequence): Fix typo.
20021
20022 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
20023
20024 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20025 (xd_signature, xd_append_arg): Handle element type detection for
20026 empty arrays.
20027 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20028 SDATA () calls; this must be solved more general.
20029 (Fdbus_register_signal): Use SBYTES instead of strlen.
20030
20031 2008-01-03 Magnus Henoch <magnus@zemdatav>
20032
20033 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20034 unsigned int for byte values (necessary for big-endian platform).
20035 (Fdbus_call_method): Handle the case of no returned arguments.
20036
20037 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20038
20039 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20040
20041 2007-12-31 Magnus Henoch <mange@freemail.hu>
20042
20043 * dbusbind.c (xd_signature): Signature of variant is just "v".
20044
20045 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
20046
20047 * dbusbind.c: Fix several errors and compiler warnings.
20048 Reported by Tom Tromey <tromey@redhat.com>.
20049 (XD_ERROR, XD_DEBUG_MESSAGE)
20050 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20051 (xd_append_arg): Part for basic D-Bus types rewritten.
20052 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20053 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20054 appropriate.
20055 (xd_read_message): Return Qnil. Don't signal an error; it is not
20056 useful during event reading.
20057 (Fdbus_register_signal): Signal an error if the check for
20058 FUNCTIONP fails.
20059 (Fdbus_register_method): New function. The implementation is not
20060 complete, the call of the function signals an error therefore.
20061 (Fdbus_unregister_object): New function, renamed from
20062 Fdbus_unregister_signal. The initial check signals an error, if
20063 the object is not well formed.
20064
20065 2007-12-30 Richard Stallman <rms@gnu.org>
20066
20067 * textprop.c (get_char_property_and_overlay):
20068 Signal error if POSITION is out of range in a buffer.
20069
20070 2007-12-29 Martin Rudalics <rudalics@gmx.at>
20071
20072 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20073 because the original parameters are in pure storage now.
20074
20075 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20076
20077 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20078
20079 2007-12-22 Eli Zaretskii <eliz@gnu.org>
20080
20081 * callint.c (syms_of_callint) <command-history>: Add reference to
20082 history-length in the doc string.
20083
20084 2007-12-17 Jason Rumney <jasonr@gnu.org>
20085
20086 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20087 before passing as wParam.
20088
20089 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
20090
20091 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20092 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20093 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20094 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20095 as number.
20096 (Fdbus_call_method): Fix docstring.
20097
20098 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
20099
20100 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20101 New macros.
20102 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20103 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20104 Simplify.
20105 (xd_signature): New function.
20106 (xd_append_arg): Compute also signatures. Major rewrite.
20107 (xd_retrieve_arg): Make debug messages friendly.
20108 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20109 Check for signatures of arguments.
20110
20111 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
20112
20113 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20114 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20115 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20116 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20117 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20118 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20119 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20120 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20121 (xd_retrieve_value): Remove. Functionality included in ...
20122 (xd_append_arg): New function.
20123 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20124
20125 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
20126
20127 * dbusbind.c (top): Include <stdio.h>.
20128 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20129 dbus_message_new_method_call and dbus_message_new_signal.
20130 (Fdbus_register_signal): Rename unique_name to uname.
20131 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20132 non-existing unique name. Fix typos in matching rule. Return an
20133 object which is useful in Fdbus_unregister_signal.
20134 (Fdbus_unregister_signal): Reimplementation, in order to remove
20135 only the corresponding entry.
20136 (Vdbus_registered_functions_table): Change the order of entries.
20137 Apply these changes in xd_read_message and Fdbus_register_signal.
20138
20139 2007-12-16 Andreas Schwab <schwab@suse.de>
20140
20141 * fileio.c (Finsert_file_contents): Fix overflow check to not
20142 depend on undefined integer overflow.
20143
20144 2007-12-14 Jason Rumney <jasonr@gnu.org>
20145
20146 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20147 for characters above 127.
20148
20149 2007-12-13 Jason Rumney <jasonr@gnu.org>
20150
20151 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20152 before dereferencing array.
20153 (lookup_vk_code): Remove zero comparison.
20154
20155 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
20156
20157 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20158 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20159 Use `unsigned int' instead of `uint'.
20160 (xd_read_message, Fdbus_register_signal): Split expressions into
20161 multiple lines before operators "&&" and "||", according to the
20162 GNU Coding Standards.
20163
20164 2007-12-14 Eli Zaretskii <eliz@gnu.org>
20165
20166 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20167
20168 2007-12-12 Juri Linkov <juri@jurta.org>
20169
20170 * buffer.c (Frename_buffer): In interactive spec replace
20171 `read-buffer' with `read-string' that uses `buffer-name-history'
20172 as history, and the current buffer's name as default.
20173
20174 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20175
20176 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20177 manipulating the backtrace manually.
20178 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20179 (struct backtrace, backtrace_list): Remove.
20180 (command_loop_1): Remove dead var `no_direct'.
20181
20182 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20183 preserve non-built-in buffer-local variables.
20184 (Fkill_all_local_variables): Don't re-create&re-set permanent
20185 buffer-local variables.
20186
20187 2007-12-09 Juri Linkov <juri@jurta.org>
20188
20189 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20190 Lisp code that uses `read-buffer' with current buffer as default.
20191
20192 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
20193
20194 * dbusbind.c (xd_read_message): Generate an event for every
20195 registered handler. There might be several handlers registered
20196 for the same signal.
20197 (Fdbus_register_signal): Don't overwrite a registration for the
20198 same signal. Add a new registration if handlers are different.
20199 (Vdbus_registered_functions_table): Rework doc string.
20200
20201 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
20202
20203 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20204 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20205 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20206 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20207 Unify argument lists.
20208 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20209 arguments and hash table keys. Use unique name for service.
20210 (Fdbus_unregister_signal): Remove checks.
20211 (Vdbus_registered_functions_table): Fix doc string.
20212
20213 2007-12-05 Magnus Henoch <mange@freemail.hu>
20214
20215 * process.c (make_process): Initialize pty_flag to 0.
20216
20217 2007-12-05 Jason Rumney <jasonr@gnu.org>
20218
20219 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20220 specified XBMs.
20221
20222 2007-12-05 Richard Stallman <rms@gnu.org>
20223
20224 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20225
20226 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20227
20228 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20229 New variable.
20230 (mac_try_close_socket) [MAC_OSX]: New function.
20231 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20232 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20233
20234 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20235 Use mac_try_close_socket.
20236
20237 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20238
20239 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20240 reloc_base.
20241 (copy_dysymtab): Compute relocation base here.
20242 (rebase_reloc_address) [__ppc64__]: New function.
20243 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20244 changed.
20245
20246 2007-12-05 Jason Rumney <jasonr@gnu.org>
20247
20248 * w32proc.c (sys_spawnve): Quote args with wildcards.
20249
20250 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20251
20252 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20253 __objc_* sections.
20254 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20255
20256 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
20257
20258 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20259 Move check for Vdbus_registered_functions_table to
20260 xd_read_queued_messages.
20261 (xd_read_queued_messages): Protect xd_read_message calls by
20262 internal_condition_case_1.
20263
20264 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
20265
20266 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20267 Qdbus_system_bus and Qdbus_session_bus, respectively.
20268 (Vdbus_intern_symbols): Remove.
20269 (Vdbus_registered_functions_table): New hash table.
20270 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20271 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20272 Rewrite in order to manage registered functions by hash table
20273 Vdbus_registered_functions_table.
20274
20275 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20276
20277 * xterm.c: Update URL to Window Manager Specification in comment.
20278
20279 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
20280
20281 * config.in (HAVE_DBUS): Add.
20282
20283 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20284 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20285 (obj): Add $(DBUS_OBJ).
20286 (LIBES): Add $(DBUS_LIBS).
20287 (dbusbind.o): New target.
20288
20289 * dbusbind.c: New file.
20290
20291 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20292
20293 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20294 (Qdbus_event): New Lisp symbol.
20295 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20296 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
20297 (keys_of_keyboard): Define dbus-event.
20298
20299 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20300
20301 2007-12-01 Richard Stallman <rms@gnu.org>
20302
20303 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20304
20305 2007-11-30 Jason Rumney <jasonr@gnu.org>
20306
20307 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20308 (w32con_reset_terminal_modes): Clear screen buffer.
20309 (w32_face_attributes): Don't use color indexes that are out of range.
20310 Only reverse the default colors.
20311
20312 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20313 WINDOWSNT.
20314
20315 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20316
20317 2007-11-29 Jason Rumney <jasonr@gnu.org>
20318
20319 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20320 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20321 if the terminal colors are initialized.
20322 (unspecified_fg, unspecified_bg): Remove unused declarations.
20323
20324 2007-11-29 Andreas Schwab <schwab@suse.de>
20325
20326 * keyboard.c (apply_modifiers): Fix typo.
20327
20328 2007-11-29 Richard Stallman <rms@gnu.org>
20329
20330 * keymap.c (Fcurrent_local_map): Doc fix.
20331
20332 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20333
20334 * s/gnu-kfreebsd.h: New file.
20335
20336 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20337
20338 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20339 Don't cast redundantly.
20340
20341 * keyboard.c (KEY_TO_CHAR): New macro.
20342 (parse_modifiers, apply_modifiers): Accept integer arguments.
20343 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20344 for chars and symbol keys.
20345 After doing such remapping, apply function-key-map again.
20346
20347 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20348
20349 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20350 compiled anymore.
20351
20352 2007-11-26 Andreas Schwab <schwab@suse.de>
20353
20354 * process.c (list_processes_1): Fix indentation level of the
20355 command column.
20356
20357 2007-11-23 Andreas Schwab <schwab@suse.de>
20358
20359 * editfns.c (Fformat): Handle %c specially since it requires the
20360 argument to be of type int.
20361
20362 2007-11-23 Markus Triska <markus.triska@gmx.at>
20363
20364 * emacs.c (main): Call init_editfns before init_process, since
20365 init_process sets Vprocess_connection_type depending on OS release.
20366
20367 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20368
20369 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20370 (find_symbol_value): Use do_symval_forwarding.
20371
20372 * data.c (set_internal): Set the value in the `cons-cell' (for
20373 Buffer_Local_values) not only for frame-local variables.
20374
20375 2007-11-22 Andreas Schwab <schwab@suse.de>
20376
20377 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20378 values to sprintf.
20379 * keymap.c (Fsingle_key_description): Likewise.
20380 * print.c (print_object): Likewise.
20381
20382 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20383
20384 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20385 file for image is nil.
20386
20387 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20388
20389 * term.c: Include stdarg.h.
20390 (fatal): Implement using varargs.
20391 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20392
20393 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20394
20395 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20396 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20397 Update call to buffer_slot_type_mismatch.
20398 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20399 (buffer_slot_type_mismatch): Update.
20400 * buffer.c (buffer_local_types): Remove.
20401 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20402 (defvar_per_buffer): Set the type in the buffer_objfwd.
20403
20404 2007-11-21 Jason Rumney <jasonr@gnu.org>
20405
20406 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20407 CreateFileMapping returns NULL on failure.
20408
20409 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20410
20411 * search.c (Fset_match_data): Remove the `evaporate' feature.
20412 (unwind_set_match_data): Don't use the `evaporate' feature.
20413
20414 2007-11-21 Jason Rumney <jasonr@gnu.org>
20415
20416 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20417
20418 * w32console.c (w32con_write_glyphs): Remove unused variables.
20419
20420 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20421
20422 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20423
20424 * s/darwin.h (MULTI_KBOARD): Remove.
20425
20426 * macfns.c (x_create_tip_frame, Fx_create_frame)
20427 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20428
20429 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20430
20431 * buffer.c (Fbuffer_local_value): Remove redundant test.
20432 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20433 than in `current-buffer' to match the comment.
20434 Do the swap using swap_in_global_binding.
20435
20436 * data.c (store_symval_forwarding, set_internal):
20437 * eval.c (specbind): Remove dead code.
20438
20439 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20440 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20441 Since we do not want to see internal Lisp_*fwd objects here.
20442
20443 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20444
20445 * sysdep.c (init_system_name): Use getaddrinfo if available.
20446
20447 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20448 (x_scroll_bar_note_movement): start, end, with, height in struct
20449 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20450
20451 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20452
20453 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20454
20455 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20456
20457 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20458 This undoes Richard's change of 14-Oct-2002.
20459
20460 * alloc.c (allocate_other_vector):
20461 * lisp.h (allocate_other_vector): Remove.
20462
20463 * window.c (struct save_window_data): Move non-lisp data to the end
20464 and make it `int' rather than Lisp_Object.
20465 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20466 Done wrap/unwrap integer values.
20467 (Fset_window_configuration, compare_window_configurations):
20468 Update use of fields to their new types.
20469
20470 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20471 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20472 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20473 (SET_SCROLL_BAR_X_WINDOW): Remove.
20474 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20475 Access the new x_window field directly.
20476 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20477 Don't wrap/unwrap integers into Lisp_Objects.
20478 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20479 (x_scroll_bar_report_motion):
20480 Don't wrap/unwrap integers into Lisp_Objects.
20481 (x_term_init): Use SDATA.
20482 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20483 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20484 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20485 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20486 * xfns.c (x_set_background_color):
20487 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20488 Access the new x_window field directly.
20489
20490 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20491 (allocate_pseudovector): Make non-static.
20492
20493 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20494 (allocate_pseudovector): Declare.
20495 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20496
20497 2007-11-15 Andreas Schwab <schwab@suse.de>
20498
20499 * editfns.c (Fformat): Correctly format EMACS_INT values.
20500 Also take precision into account when formatting an integer.
20501
20502 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20503
20504 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20505
20506 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20507 (syms_of_keyboard): Defsubr it.
20508
20509 * data.c (swap_in_global_binding): Fix longstanding bug where
20510 store_symval_forwarding was not called with the right second argument,
20511 thus causing objfwd-ing from being dropped.
20512
20513 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20514
20515 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20516 (Fx_display_pixel_height, Fx_display_planes)
20517 (Fx_display_color_cells, Fx_server_max_request_size)
20518 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20519 (Fx_display_visual_class, Fx_display_save_under):
20520 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20521 (Fx_display_pixel_height, Fx_display_planes)
20522 (Fx_display_color_cells, Fx_server_max_request_size)
20523 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20524 (Fx_display_mm_height, Fx_display_mm_width)
20525 (Fx_display_backing_store, Fx_display_visual_class)
20526 (Fw32_select_font, Fx_display_save_under):
20527 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20528 (Fx_display_pixel_height, Fx_display_planes)
20529 (Fx_display_color_cells, Fx_server_max_request_size)
20530 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20531 (Fx_display_save_under): Fix typos in docstrings.
20532
20533 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20534
20535 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20536 corresponding to deleted entries; they are an implementation detail.
20537 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20538 Remove variables.
20539 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20540 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20541 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20542 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20543 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20544 (Fw32_define_rgb_color, Fw32_load_color_file)
20545 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20546 Fix typos in docstrings.
20547 (Fx_server_version): Reflow docstring.
20548 (Fw32_shell_execute): Doc fixes.
20549
20550 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
20551
20552 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20553 if w32_parse_hot_key returned nil.
20554
20555 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20556
20557 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20558
20559 2007-11-09 Jason Rumney <jasonr@gnu.org>
20560
20561 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20562
20563 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20564
20565 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20566 Remove W32_SCROLL_BAR_CLICK_EVENT.
20567
20568 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20569 Add MULTIMEDIA_KEY_EVENT.
20570
20571 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20572 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20573 (make_lispy_event) [WINDOWSNT]: Use it to translate
20574 MULTIMEDIA_KEY_EVENT.
20575
20576 * w32term.h (WM_APPCOMMAND): Define if not already.
20577 (GET_APPCOMMAND_LPARAM): Likewise.
20578
20579 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20580 WM_APPCOMMAND.
20581
20582 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20583 (syms_of_w32fns): Export and initialize it.
20584 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20585
20586 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
20587
20588 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20589 twice.
20590
20591 * xdisp.c (handle_face_prop): Fix last change.
20592
20593 2007-11-09 Richard Stallman <rms@gnu.org>
20594
20595 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20596 not just for after-strings and before-strings.
20597 Call face_for_overlay_string and pass the overlay to it.
20598 (handle_display_prop): Determine whether property came from an overlay.
20599 Pass OVERLAY arg to handle_single_display_spec.
20600 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20601 (load_overlay_strings): Fill in it->string_overlays.
20602 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20603
20604 * xfaces.c (face_for_overlay_string): Function renamed from
20605 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20606
20607 * dispextern.h (struct it): New elt string_overlays.
20608 New elt from_overlay, also in stack.
20609 Rearrange a few elements.
20610 (face_for_overlay_string): Decl renamed from
20611 face_at_buffer_position_no_overlays, and add argument.
20612
20613 2007-11-09 Richard Stallman <rms@gnu.org>
20614
20615 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20616 to get the base face for an overlay string.
20617
20618 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20619
20620 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20621
20622 * xdisp.c (handle_stop): Move some code out of loop.
20623
20624 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20625
20626 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20627 Fix conversion from Lisp object to ATSUFontID.
20628
20629 2007-11-09 Jason Rumney <jasonr@gnu.org>
20630
20631 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20632
20633 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20634
20635 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20636 Don't assume regions are aligned to page boundary.
20637 (print_load_command_name): Add LC_UUID if defined.
20638
20639 2007-11-09 Richard Stallman <rms@gnu.org>
20640
20641 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20642
20643 2007-11-07 Jason Rumney <jasonr@gnu.org>
20644
20645 * s/windows95.h: Remove.
20646
20647 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20648
20649 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20650 abort with a message on unhandled store_type values.
20651
20652 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20653
20654 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20655 Remove HAVE_X11R5 and HAVE_X11R4.
20656
20657 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20658
20659 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20660
20661 2007-11-01 Johan Bockgård <bojohan@gnu.org>
20662
20663 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20664 Don't set s->stippled_p here, since it has already been set by
20665 x_set_glyph_string_gc from x_draw_glyph_string.
20666
20667 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20668
20669 * sunfns.c: Remove file.
20670
20671 * m/sun386.h:
20672 * m/sun2.h:
20673 * m/sparc.h: Remove Sun windows code.
20674
20675 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20676
20677 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20678 (init_keyboard): Set current_kboard's window-system to nil.
20679 (tty_read_avail_input): Typo.
20680 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20681
20682 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20683
20684 * s/usg5-4.h:
20685 * s/usg5-3.h:
20686 * s/ptx.h:
20687 * m/is386.h:
20688 * m/ibmps2-aix.h:
20689 * Makefile.in: Remove all mentions of X10.
20690
20691 * dispnew.c (syms_of_display): Don't mention version 10.
20692
20693 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
20694
20695 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20696 ($(BLD)/abbrev.$(O)): Remove.
20697
20698 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20699
20700 Rewrite abbrev.c in Elisp.
20701 * image.c (Qcount): Don't declare as extern.
20702 (syms_of_image): Initialize and staticpro `Qcount'.
20703 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20704 * emacs.c (main): Don't call syms_of_abbrev.
20705 * Makefile.in (obj): Remove abbrev.o.
20706 (abbrev.o): Remove.
20707 * abbrev.c: Remove.
20708
20709 2007-10-26 Martin Rudalics <rudalics@gmx.at>
20710
20711 * window.c (window_min_size_2): Don't count header-line.
20712
20713 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20714
20715 * frame.h (struct frame): Move all bit fields after the first bit
20716 field to take advantage of the available space. Group all the
20717 chars together to reduce wasted space due to padding.
20718
20719 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
20720
20721 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20722
20723 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20724 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20725 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20726 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20727 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20728 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20729 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20730 (last_marked, mark_object_loop_halt): Make static.
20731
20732 * frame.c (syms_of_frame) <delete-frame-functions>:
20733 Fix typo in docstring.
20734
20735 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
20736
20737 * w32.c (init_environment): Fix tiny memory leak.
20738 (w32_get_resource): Remove unused variable `ok'.
20739
20740 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20741
20742 Make `window-system' into a keyboard-local variable (rather than
20743 frame-local as done originally by multi-tty).
20744
20745 * keyboard.h (struct kboard): Add Vwindow_system.
20746 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20747 (mark_kboards): Mark Vwindow_system.
20748
20749 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20750 (init_display): Don't set the obsolete `window-system' frame-param.
20751
20752 * xterm.c (x_term_init):
20753 * w32term.c (w32_create_terminal):
20754 * term.c (init_tty): Set Vwindow_system.
20755 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20756 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20757
20758 * xfns.c (Fx_create_frame, x_create_tip_frame):
20759 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20760 * macfns.c (Fx_create_frame):
20761 Don't set the obsolete `window-system' frame-param.
20762
20763 * frame.h (Qwindow_system): Remove.
20764 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20765 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20766
20767 2007-10-24 Richard Stallman <rms@gnu.org>
20768
20769 * frame.c (x_figure_window_size): For fullscreen case,
20770 set USPosition | PPosition without clobbering rest of window_prompting.
20771
20772 * keyboard.c (Fcurrent_idle_time): Doc fix.
20773
20774 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20775
20776 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20777
20778 * process.c (unwind_request_sigio): Only define if __ultrix__.
20779
20780 * callproc.c (child_setup): Remove spurious *.
20781
20782 * lisp.h (Fget_text_property): Declare.
20783 (have_menus_p): Declare it here rather than in sys-dep header files.
20784 * macterm.h (have_menus_p):
20785 * msdos.h (have_menus_p):
20786 * xterm.h (have_menus_p): Remove.
20787
20788 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20789 (Fmake_variable_frame_local): Just check the variable's const-ness
20790 rather than checking nil or t.
20791
20792 2007-10-22 Jason Rumney <jasonr@gnu.org>
20793
20794 * w32fns.c: Include math.h.
20795 (w32_abort): Declaration moved to nt/config.nt.
20796
20797 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20798 (abort): Redefinition moved to nt/config.nt.
20799
20800 * m/windowsnt.h: Remove.
20801
20802 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
20803
20804 * emacs.c (Fdump_emacs): Fix typo in message.
20805 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20806 <installation-directory>: Reflow docstring.
20807
20808 2007-10-22 Juri Linkov <juri@jurta.org>
20809
20810 * minibuf.c: Allow minibuffer default to be a list of default values.
20811 With empty input use the first element of this list as returned default.
20812 (string_to_object)
20813 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20814 (read_minibuf): If defalt is cons, set histstring to its car.
20815 (Fread_string): If default_value is cons, set val to its car.
20816 (Fread_buffer): If def is cons, use its car.
20817 (Fcompleting_read): If defalt is cons, set val to its car.
20818
20819 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
20820
20821 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
20822
20823 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
20824
20825 * doc.c (Fdocumentation): Check for advice in all cases.
20826
20827 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
20828
20829 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
20830
20831 2007-10-19 Richard Stallman <rms@gnu.org>
20832
20833 * doc.c (Fdocumentation): Check for and handle an advised function.
20834
20835 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
20836
20837 * process.c (Fset_process_filter): Doc fix.
20838
20839 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
20840
20841 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
20842 which caused key-translation-map to applied repeatedly (thus breaking
20843 double-mode).
20844
20845 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20846
20847 * xselect.c (x_own_selection, x_handle_selection_clear)
20848 (x_clear_frame_selections):
20849 * w32menu.c (list_of_panes, list_of_items):
20850 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
20851 * textprop.c (validate_plist, interval_has_all_properties)
20852 (interval_has_some_properties, interval_has_some_properties_list)
20853 (add_properties, text_property_list):
20854 * process.c (Fget_buffer_process, list_processes_1, status_notify):
20855 * minibuf.c (Fassoc_string):
20856 * macselect.c (x_own_selection, x_clear_frame_selections)
20857 (Fx_disown_selection_internal):
20858 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
20859 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
20860
20861 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
20862
20863 * process.c: Link to libs for calling res_init() if available.
20864 (Fmake_network_process): Call res_init() before getaddrinfo or
20865 gethostbyname, if possible.
20866
20867 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
20868
20869 * lread.c (read1): Set pvectype for char_tables.
20870
20871 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
20872 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
20873 Add type checks.
20874 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
20875
20876 * alloc.c (free_misc): Use XMISCTYPE.
20877 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
20878
20879 2007-10-17 Glenn Morris <rgm@gnu.org>
20880
20881 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
20882 (syms_of_minibuf): Add Qcompletion_ignore_case.
20883 * dired.c (Qcompletion_ignore_case): Change to external.
20884 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
20885 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
20886 (Fread_file_name): Use it rather than intern'ing.
20887
20888 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
20889 (Fread_coding_system): Ignore case of user input.
20890
20891 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20892
20893 * xdisp.c (handle_display_prop): Ignore display specs after
20894 replacing one when string text is being replaced.
20895 (handle_single_display_spec): Pretend as if characters with display
20896 property haven't been consumed only when buffer text is being replaced.
20897
20898 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
20899
20900 * xfns.c (Fx_create_frame, Fx_display_list):
20901 * window.c (window_fixed_size_p, enlarge_window)
20902 (shrink_window_lowest_first):
20903 * macterm.c (init_font_name_table):
20904 * macfns.c (Fx_create_frame, Fx_display_list):
20905 * lread.c (close_load_descs):
20906 * keyboard.c (read_char_x_menu_prompt):
20907 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
20908 * coding.c (code_convert_region_unwind): Test the type of an object
20909 rather than just !NILP before extracting data from it.
20910
20911 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
20912
20913 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
20914 (XMISCANY): New macro.
20915 (XMISCTYPE): Use it.
20916 (struct Lisp_Misc_Any): New type.
20917 (union Lisp_Misc): Use it.
20918 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
20919 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
20920 (find_symbol_value, set_internal, default_value, Fset_default)
20921 (Fmake_variable_buffer_local, Fmake_local_variable)
20922 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
20923 (Flocal_variable_if_set_p, Fvariable_binding_locus):
20924 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
20925 * alloc.c (allocate_buffer): Set the size and tag.
20926 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
20927 Use XMISCANY.
20928 (die): Follow the GNU convention for error messages.
20929 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
20930 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
20931 tag any more.
20932 (set_buffer_internal_1):
20933 * frame.c (store_frame_param):
20934 * eval.c (specbind):
20935 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
20936
20937 * doc.c (Fsnarf_documentation): Simplify.
20938
20939 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
20940
20941 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
20942 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
20943
20944 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
20945
20946 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
20947
20948 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
20949
20950 * eval.c (do_autoload): Don't save autoloads.
20951
20952 * data.c (Ffset): Save autoload of the function being set.
20953
20954 2007-10-07 John Paul Wallington <jpw@pobox.com>
20955
20956 * xfns.c (x_create_tip_frame): Set the `display-type' frame
20957 parameter before setting up faces.
20958
20959 2007-10-13 Eli Zaretskii <eliz@gnu.org>
20960
20961 * ccl.c (Fregister_code_conversion_map):
20962 * keyboard.c (append_tool_bar_item): Reformat last change.
20963
20964 * lisp.h (eabs): Rename from `abs'. All callers changed.
20965
20966 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
20967
20968 * buffer.c (add_overlay_mod_hooklist):
20969 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
20970 * fontset.c (make_fontset):
20971 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
20972 (append_tool_bar_item):
20973 * macmenu.c (grow_menu_items):
20974 * w32menu.c (grow_menu_items):
20975 * xmenu.c (grow_menu_items): Use larger_vector.
20976
20977 2007-10-13 Eli Zaretskii <eliz@gnu.org>
20978
20979 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
20980 selected frame'' on MSDOS).
20981
20982 2007-10-12 Martin Rudalics <rudalics@gmx.at>
20983
20984 * frame.c (Qexplicit_name): New variable.
20985 (x_report_frame_params): Report it in parameter alist.
20986 (syms_of_frame): Intern and staticpro it.
20987
20988 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
20989
20990 * macfns.c (x_create_tip_frame): Set terminal for frame.
20991
20992 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
20993
20994 * frame.c (Qenvironment): Remove.
20995 (syms_of_frame) <Qenvironment>: Don't initialize.
20996 (Fdelete_frame): Don't treat the `environment' param specially.
20997 * frame.h (Qenvironment): Don't declare.
20998 * callproc.c (set_initial_environment): Don't set unused frame param.
20999
21000 * frame.c (Fframe_with_environment): Remove.
21001 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21002
21003 * lisp.h (Fframe_with_environment): Don't declare.
21004
21005 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
21006
21007 * indent.c (indent_tabs_mode, last_known_column)
21008 (last_known_column_modified): Make static.
21009 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21010
21011 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21012
21013 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21014
21015 2007-10-09 Jason Rumney <jasonr@gnu.org>
21016
21017 * w32term.c (x_set_window_size): Disable code that attempts to tell
21018 Lisp code about a size change before it actually happens.
21019
21020 2007-10-09 Richard Stallman <rms@gnu.org>
21021
21022 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21023 return HANDLED_RETURN.
21024
21025 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21026
21027 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21028 when there's an unread command event.
21029
21030 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21031 window autoselection act appropriately when leaving selected frame.
21032 (syms_of_frame): Initialize focus_follows_mouse.
21033 * frame.h (focus_follows_mouse): Extern it.
21034 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21035 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21036 * msdos.c (dos_rawgetc): Likewise.
21037 * w32term.c (w32_read_socket): Likewise.
21038 * xterm.c (handle_one_xevent): Likewise.
21039 * xdisp.c (syms_of_xdisp): In doc-string of
21040 mouse-autoselect-window mention focus-follows-mouse.
21041
21042 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21043
21044 * macterm.c (mac_load_query_font): Fix missing return value.
21045 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21046 Add BLOCK_INPUT.
21047
21048 2007-10-08 Richard Stallman <rms@gnu.org>
21049
21050 * xdisp.c (get_window_cursor_type): Implement documented behavior
21051 for cursor-in-non-selected-windows = t.
21052
21053 2007-10-08 Jason Rumney <jasonr@gnu.org>
21054
21055 * w32.c (w32_get_resource): Always close registry keys.
21056
21057 2007-10-08 Jason Rumney <jasonr@gnu.org>
21058
21059 * makefile.w32-in (LIBS): Add COMCTL32.
21060
21061 * w32fns.c (globals_of_w32fns): Init common controls.
21062
21063 2007-10-08 Richard Stallman <rms@gnu.org>
21064
21065 * image.c (our_memory_buffer): Rename from omfib_buffer.
21066
21067 2007-10-08 Richard Stallman <rms@gnu.org>
21068
21069 * buffer.c (Foverlays_at): Doc fix.
21070
21071 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21072
21073 * fns.c (Fplist_put): Preserve uneven tail data.
21074
21075 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21076
21077 * termhooks.h (enum event_kind): Remove trailing comma.
21078
21079 * frame.h (enum): Remove trailing comma.
21080
21081 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21082
21083 * w32proc.c (delete_child): Don't terminate threads of zombies.
21084
21085 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21086
21087 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21088
21089 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21090 last-repeatable-command.
21091 (init_kboard): Initialize Vlast_repeatable_command.
21092 (command_loop_1): Set it to real_this_command unless that was
21093 bound to an input event.
21094 (mark_kboards): Mark it.
21095
21096 2007-10-08 Richard Stallman <rms@gnu.org>
21097
21098 * eval.c (condition-case): Doc fix.
21099
21100 2007-10-08 Masatake YAMATO <jet@gyve.org>
21101
21102 * xfaces.c (tty_supports_face_attributes_p): Fix code
21103 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21104 was copied and not edited.
21105
21106 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21107
21108 Add new `input-decode-map' keymap and use it for terminal
21109 escape sequences.
21110 * keyboard.h (struct kboard): Add Vinput_decode_map.
21111 Remove Vlocal_key_translation_map.
21112 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21113 (init_kboard): Init input-decode-map.
21114 Replace local-key-translation-map back with key-translation-map.
21115 (syms_of_keyboard): Declare input-decode-map.
21116 Remove local-key-translation-map. Update docstrings.
21117 (mark_kboards): Mark Vinput_decode_map.
21118 Don't mark Vlocal_key_translation_map.
21119 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21120 Replace local-key-translation-map back with key-translation-map.
21121 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21122 Bind in input-decode-map rather than function-key-map.
21123
21124 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21125 This was made redundant by the previous introduction of XSETPVECTYPE.
21126
21127 2007-10-09 Richard Stallman <rms@gnu.org>
21128
21129 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21130
21131 2007-09-29 Richard Stallman <rms@gnu.org>
21132
21133 * eval.c (internal_condition_case_2, internal_condition_case_1)
21134 (internal_condition_case): Reenable abort if x_catching_errors ()
21135 to see if that really happens and why.
21136
21137 2007-10-06 Andreas Schwab <schwab@suse.de>
21138
21139 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21140
21141 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
21142
21143 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21144
21145 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21146
21147 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21148
21149 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21150
21151 * window.h (struct window):
21152 * window.c (struct save_window_data, struct saved_window):
21153 * termhooks.h (struct terminal):
21154 * process.h (struct Lisp_Process):
21155 * frame.h (struct frame):
21156 * buffer.h (struct buffer):
21157 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21158 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21159 The size field of (pseudo)vectors is now unsigned.
21160 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21161
21162 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21163 Turn `count' into an integer.
21164
21165 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21166 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21167 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21168 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21169 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21170
21171 * alloc.c (allocate_pseudovector): New fun.
21172 (ALLOCATE_PSEUDOVECTOR): New macro.
21173 (allocate_window, allocate_terminal, allocate_frame)
21174 (allocate_process): Use it.
21175 (mark_vectorlike): New function.
21176 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21177 (mark_terminals): Use it.
21178 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21179 (Fmake_byte_code): Use XSETPVECTYPE.
21180
21181 * frame.c (Fframe_parameters): Minor simplification.
21182
21183 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21184
21185 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21186
21187 * buffer.c (Fget_buffer_create, init_buffer_once):
21188 * lread.c (defsubr):
21189 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21190
21191 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21192 defined differently in the m/*.h files.
21193 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21194 (XSETPVECTYPE): New macro.
21195 (XSETPSEUDOVECTOR): Use it.
21196
21197 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21198 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21199
21200 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21201 * lread.c (defvar_per_buffer):
21202 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21203
21204 * window.c (candidate_window_p): Only consider as visible frames that
21205 are on the same terminal.
21206
21207 * m/ibms390x.h (MARKBIT): Remove unused macro.
21208
21209 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
21210
21211 * lread.c (Fload): Fix typo in docstring.
21212
21213 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21214
21215 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21216 of a non-zero value can't yield zero.
21217
21218 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21219
21220 * term.c (term_clear_mouse_face, term_mouse_highlight)
21221 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21222
21223 * print.c (safe_debug_print): Use XHASH.
21224
21225 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21226 Lisp elements such as tags.
21227 (XHASH): New macro.
21228 (EQ): Use it.
21229 (SREF, SSET, STRING_COPYIN): Use SDATA.
21230 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21231
21232 * alloc.c (mark_terminal): Remove left-over declaration.
21233 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21234 (allocate_vectorlike): Remove type argument. Adjust callers.
21235 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21236 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21237
21238 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21239 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21240 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21241 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21242 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21243 Use them.
21244
21245 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21246 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21247 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21248
21249 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21250
21251 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21252 loaded by default.
21253
21254 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21255
21256 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21257 on this tty.
21258 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21259
21260 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21261 Update all users.
21262 (handle_one_term_event): Use Gpm_DrawPointer.
21263 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21264 Signal errors instead of returning nil. Always return nil.
21265 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21266 Make it a noop if gpm-mouse was not activated.
21267 (syms_of_term): Update names.
21268
21269 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21270
21271 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21272 (init_sys_modes): Check that gpm_tty is the current tty.
21273
21274 * alloc.c (allocate_terminal): Set the vector size to only count the
21275 lisp fields. Initialize those to nil.
21276 (mark_object): Don't treat terminals specially.
21277 (mark_terminal): Remove.
21278 (mark_terminals): Use mark_object instead.
21279
21280 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21281 the GC to the beginning.
21282
21283 * indent.h:
21284 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21285
21286 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21287
21288 2007-09-25 Jason Rumney <jasonr@gnu.org>
21289
21290 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21291
21292 * w32console.c (create_w32cons_output): Remove.
21293
21294 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21295
21296 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21297 (reset_sys_modes): Use reset_terminal_modes_hook.
21298
21299 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21300
21301 * eval.c (do_autoload): Don't output any message.
21302
21303 2007-09-24 Juri Linkov <juri@jurta.org>
21304
21305 * emacs.c (standard_args): Change priority of "--no-splash"
21306 from 40 to 3. Add "--no-desktop" with the same priority.
21307
21308 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21309
21310 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21311 and optimize the case where they are all 1.
21312
21313 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
21314
21315 * lisp.h (abs): Define if not defined.
21316 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21317 Don't define `abs', since it's defined in lisp.h.
21318
21319 2007-09-22 Eli Zaretskii <eliz@gnu.org>
21320
21321 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21322 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21323 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21324 (init_tty): Use DEV_TTY instead of "/dev/tty".
21325 [WINDOWSNT]: No need to protect from NAME arg being null.
21326
21327 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21328
21329 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21330 up the tty state.
21331
21332 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21333
21334 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21335 (gpm_tty): Change its type.
21336 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21337 (gpm_tty): Change its type and initialize it.
21338 (Fterm_open_connection): Check the frame is indeed a tty.
21339 Use the new gpm_tty.
21340 (Fterm_close_connection): Use the new gpm_tty.
21341 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21342 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21343
21344 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
21345
21346 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21347 underline_color, to draw strike-through.
21348
21349 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21350
21351 * lisp.h (allocate_terminal): Declare.
21352
21353 * window.c (candidate_window_p): Consider frames that are being placed
21354 by the user as somewhere between visible and iconified.
21355 (window_loop): Prefer windows on the current frame.
21356 (Fselect_window): Move the use of select-frame to the beginning so we
21357 can just delegate all the work (it'll call us back anyway).
21358
21359 * frame.c (Qdisplay_environment_variable):
21360 * frame.h (Qdisplay_environment_variable): Delete.
21361
21362 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21363 of the first arg, since that value may be a union.
21364
21365 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21366 parameter rather than Qdisplay_environment_variable. If all else
21367 fails, look for DISPLAY in initial-environment.
21368
21369 2007-09-21 Glenn Morris <rgm@gnu.org>
21370
21371 * Makefile.in (emacstool): Remove target.
21372 (lisp, shortlisp): Remove termdev.elc.
21373
21374 2007-09-21 Markus Triska <markus.triska@gmx.at>
21375
21376 * xterm.c (x_delete_display): Compile session management conditionally.
21377
21378 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21379
21380 * callproc.c (getenv_internal_1): New function.
21381 (getenv_internal): Use it.
21382 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21383
21384 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21385 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21386 (Fset_terminal_parameter): Work with dead terminals as well.
21387 (Fmodify_terminal_parameters): Remove.
21388
21389 * terminal.c (get_terminal): Handle terminals.
21390 Make sure the terminal returned is live.
21391 (create_terminal): Use allocate_terminal.
21392 (mark_terminals): Move to alloc.c.
21393 (delete_terminal): Use terminal->name as liveness status.
21394 NULL out fields after freeing their contents.
21395 Don't deallocate the object.
21396 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21397 rather than an int.
21398 (Fterminal_live_p): Accept non-integer arguments.
21399 (Fterminal_list): Return terminal objects rather than an ints.
21400
21401 * alloc.c (enum mem_type): New member for `terminal' objects.
21402 (allocate_terminal): New function.
21403 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21404 Handle terminals.
21405 (mark_terminal): New fun.
21406 (mark_terminals): Move from terminal.c.
21407
21408 * term.c (get_tty_terminal): Don't treat output_initial specially.
21409 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21410 (delete_tty): Use terminal->name as liveness status.
21411
21412 * termhooks.h (struct terminal): Make it into a pseudovector.
21413 Remove `deleted' replaced by checking `name's nullness.
21414
21415 * print.c (print_object): Handle terminals.
21416
21417 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21418 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21419
21420 * frame.c (make_terminal_frame):
21421 * keyboard.c (tty_read_avail_input):
21422 * w32term.c (x_delete_terminal):
21423 * xfns.c (Fx_create_frame, x_create_tip_frame):
21424 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21425
21426 2007-09-20 Glenn Morris <rgm@gnu.org>
21427
21428 * process.c (Fmake_network_process): Doc fix.
21429
21430 2007-09-19 Jason Rumney <jasonr@gnu.org>
21431
21432 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21433
21434 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21435
21436 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21437 Fix a C warning regarding variable constness.
21438
21439 * xterm.c (handle_one_xevent): Fix a C warning.
21440
21441 2007-09-18 Jason Rumney <jasonr@gnu.org>
21442
21443 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21444
21445 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21446
21447 * gtkutil.c (gdpy_def): New variable.
21448 (xg_initialize): Initialize gdpy_def.
21449 (xg_display_close): If no other display exists, set gdpy_def to a
21450 new connection.
21451
21452 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21453
21454 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21455 when we have no file name for the icon.
21456 (xg_tool_bar_expose_callback): Remove.
21457 (xg_create_tool_bar): Don't connect expose signal to
21458 xg_tool_bar_expose_callback.
21459 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21460
21461 2007-09-16 Andreas Schwab <schwab@suse.de>
21462
21463 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21464 values instead of zapping them.
21465
21466 2007-09-14 Glenn Morris <rgm@gnu.org>
21467
21468 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21469 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21470 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21471 scope and rename to omfib_buffer for clarity.
21472 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21473
21474 2007-09-14 Kenichi Handa <handa@m17n.org>
21475
21476 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21477
21478 2007-09-13 Jason Rumney <jasonr@gnu.org>
21479
21480 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21481
21482 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21483
21484 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21485 (mac_term_init): Call here instead, passing rif.
21486
21487 2007-09-13 Glenn Morris <rgm@gnu.org>
21488
21489 * s/hpux.h: No longer define `static' as nothing.
21490
21491 2007-09-13 Johan Bockgård <bojohan@gnu.org>
21492
21493 * callint.c (Fcall_interactively): Remove unused var `fun'.
21494
21495 2007-09-12 Romain Francoise <romain@orebokech.com>
21496
21497 * window.c (prefer_window_split_horizontally, display_buffer):
21498 Revert 2007-09-08 change.
21499
21500 2007-09-12 Glenn Morris <rgm@gnu.org>
21501
21502 * alloca.c: Remove file.
21503 * Makefile.in (alloca): Do not undef.
21504 (allocaobj, alloca.o): Remove.
21505 (otherobj): Remove allocaobj.
21506 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21507 * regex.c (C_ALLOCA): Remove all references and code that was only
21508 used when this was defined.
21509 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21510 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21511 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21512
21513 * Makefile.in (SOURCES, unlock, relock): Delete.
21514
21515 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21516 (menu_grab_callback): All uses changed.
21517
21518 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21519 (x_reply_selection_request): All uses changed.
21520
21521 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21522
21523 * lread.c (load_warn_old_style_backquotes): Change message to look
21524 better when it appears in the middle of byte-compiler messages.
21525
21526 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21527
21528 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21529
21530 * xterm.c (x_create_terminal): Add comment.
21531
21532 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21533
21534 2007-09-10 Richard Stallman <rms@gnu.org>
21535
21536 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21537
21538 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21539
21540 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21541 (DEFUN): Document `intspec', use it instead of `prompt'.
21542
21543 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21544
21545 * data.c (Finteractive_form): If the interactive specification starts
21546 with a `(', use it as a Lisp form.
21547
21548 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21549 name and file modes.
21550
21551 * callint.c (Fcall_interactively): Comment fixes.
21552
21553 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21554
21555 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21556 and compiled functions.
21557
21558 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21559
21560 * window.c (prefer_window_split_horizontally): New variable.
21561 (display_buffer): Consider splitting window horizontally depending
21562 on prefer_window_split_horizontally.
21563
21564 2007-09-08 Eli Zaretskii <eliz@gnu.org>
21565
21566 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21567
21568 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21569
21570 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21571
21572 * frame.c (x_set_frame_parameters): Check number is positive before
21573 using XFASTINT.
21574
21575 * window.c (freeze_window_start): Don't presume selected_window holds
21576 a window object.
21577 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21578
21579 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21580
21581 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21582
21583 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21584
21585 * window.c (Vsplit_window_preferred_function): New var.
21586 (Fdisplay_buffer): Use it.
21587 (syms_of_window): Export, and initialize it.
21588
21589 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21590
21591 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21592
21593 2007-09-06 Glenn Morris <rgm@gnu.org>
21594
21595 * gtkutil.c (menu_grab_callback) <cnt>:
21596 * xselect.c (x_reply_selection_request) <cnt>: Move static
21597 variable to file scope.
21598
21599 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21600
21601 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21602 consistent values of selected_frame and selected_window.
21603
21604 2007-09-04 Jason Rumney <jasonr@gnu.org>
21605
21606 * w32console.c (initialize_w32_display): Zero unused hooks.
21607
21608 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21609
21610 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21611 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21612
21613 2007-09-04 Jason Rumney <jasonr@gnu.org>
21614
21615 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21616 in w32console.c. Set up input. Remove XXX comments that have been
21617 confirmed as correct.
21618
21619 * s/ms-w32.h (MULTI_KBOARD): Define.
21620
21621 * w32console.c (one_and_only_w32cons): Remove.
21622 (initialize_w32_display): Take terminal argument.
21623
21624 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21625 initialize_w32_display.
21626 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21627
21628 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21629
21630 * keyboard.c (discard_mouse_events): Discard it.
21631 (make_lispy_event): Translate it to a lisp event.
21632 (lispy_wheel_names): Add wheel-left and right events.
21633 (syms_of_keyboard): Enlarge wheel_syms.
21634
21635 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21636 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21637
21638 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21639
21640 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21641 from WM_MOUSEHWHEEL.
21642 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21643
21644 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21645 terminal.
21646
21647 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21648 keyboard for the terminal.
21649
21650 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21651
21652 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21653 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21654 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21655 and resume-tty-function to resume-tty-hook.
21656 (Fsuspend_tty, Fresume_tty): Use new names.
21657
21658 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21659
21660 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21661 if it starts with "n:".
21662
21663 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21664
21665 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21666
21667 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21668
21669 * frame.h:
21670 * frame.c (Qterm_environment_variable): Remove.
21671 (syms_of_frame): Don't init and staticpro it.
21672
21673 * callproc.c (getenv_internal): Remove special case for $TERM.
21674
21675 * callproc.c (Vinitial_environment): New variable.
21676 (set_initial_environment): Initialize it.
21677 (syms_of_callproc): Declare it.
21678 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21679 TERM under which a process runs is never related to the TERM in which
21680 Emacs is running.
21681
21682 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21683
21684 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21685 * s/darwin.h: ... do it here.
21686
21687 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21688
21689 * lisp.h (set_initial_environment): Rename from set_global_environment.
21690
21691 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21692 removed by mistake on the multi-tty branch.
21693
21694 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21695 (Fmodify_frame_parameters): Return a value.
21696
21697 * image.c (png_load): Comment-out var only used in commented-out code.
21698
21699 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21700 before passing it to mark_object.
21701
21702 * xfaces.c (internal_resolve_face_name): Return a value.
21703 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21704
21705 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21706 (x_icon): Comment-out var only used in commented-out code.
21707
21708 2007-08-29 Romain Francoise <romain@orebokech.com>
21709
21710 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21711 QUIT hasn't been provided.
21712
21713 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21714
21715 * callproc.c (child_setup, getenv_internal): Use the
21716 display-environment-variable and term-environment-variable frame params.
21717 (set_initial_environment): Initialise Vprocess_environment.
21718
21719 * config.in: Disable multi-keyboard support on a mac.
21720
21721 * frame.c (Qterm_environment_variable)
21722 (Qdisplay_environment_variable): New variables.
21723 (syms_of_frame): Intern and staticpro them.
21724 (Fmake_terminal_frame): Disable output method test.
21725
21726 * frame.h: Declare them here.
21727
21728 * macfns.c (x_set_mouse_color): Get rif from the frame.
21729 (x_set_tool_bar_lines): Don't use updating_frame.
21730 (mac_window): Add 2 new parameters for consistency with other systems.
21731 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21732 frame parameters following what is done in X11 and w32. Don't use
21733 FRAME_MAC_DISPLAY_INFO.
21734 (Fx_open_connection, start_hourglass): Remove window-system check.
21735 (x_create_tip_frame): Get the keyboard from the terminal.
21736
21737 * macmenu.c: Reorder includes.
21738 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21739
21740 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21741 terminal parameter.
21742 (x_clear_frame): Add a frame parameter.
21743 (note_mouse_movement): Get rif from the frame.
21744 (mac_term_init): Initialize the terminal.
21745 (mac_initialize): Make static and move terminal initialization ...
21746 (mac_create_terminal): ... to this new function.
21747
21748 * macterm.h (struct mac_display_info): Add terminal.
21749 (mac_initialize): Delete declaration.
21750
21751 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21752
21753 * sysdep.c: Comment out text after #endif.
21754
21755 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21756 is defined. Better initialize ttys in windows. Use terminal
21757 specific mouse_position_hook.
21758
21759 * termhooks.h (union display_info): Add mac_display_info.
21760
21761 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21762 Set the default minibuffer frame, window_system and the rest of the
21763 frame parameters following what is done in X11.
21764
21765 * w32term.c (w32_initialize): Make static.
21766
21767 * xselect.c (x_handle_selection_clear): Only access
21768 terminal->kboard when MULTI_KBOARD is defined.
21769
21770 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21771 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21772
21773 2007-08-29 Jason Rumney <jasonr@gnu.org>
21774
21775 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21776 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21777
21778 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21779 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21780
21781 * keyboard.c (restore_kboard_configuration): Only define when
21782 MULTI_KBOARD defined.
21783
21784 * makefile.w32-in: Update dependancies from Makefile.in.
21785 (OBJ1): Add terminal.$(O)
21786
21787 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21788 Don't define function body.
21789 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21790
21791 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21792
21793 * w32.c (request_sigio, unrequest_sigio): Remove.
21794
21795 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21796 (w32con_clear_frame, w32con_clear_end_of_line)
21797 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21798 (w32con_delete_glyphs, w32con_set_terminal_window)
21799 (scroll_line, w32_sys_ring_bell): Add frame arg.
21800 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21801 Add terminal arg.
21802 (PICK_FRAME): Remove.
21803 (w32con_write_glyphs): Use frame specific terminal coding.
21804 (one_and_only_w32cons): New global variable.
21805 (initialize_w32_display): Use it for storing hooks.
21806 (create_w32cons_output): New function.
21807
21808 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21809 arg a frame.
21810
21811 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21812 Set window_system.
21813 (x_set_tool_bar_lines): Don't use updating_frame.
21814 (Fx_create_frame): Set terminal and ref count.
21815 (Fx_open_connection): Remove window-system check.
21816
21817 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
21818
21819 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
21820 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
21821 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
21822 Add frame arg.
21823 (x_delete_terminal, w32_create_terminal): New functions.
21824 (w32_term_init): Create a terminal.
21825 (w32_initialize): Move terminal specific initialization to
21826 w32_create_terminal.
21827
21828 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
21829 (w32_clear_rect, w32_clear_area): Use background from frame.
21830 (w32_display_info): Add terminal.
21831 (w32_sys_ring_bell, x_delete_display): Declare here.
21832
21833 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
21834
21835 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
21836
21837 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
21838
21839 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
21840 Fix get_named_tty calls for the controlling tty.
21841
21842 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
21843
21844 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
21845
21846 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
21847
21848 * term.c (tty_insert_glyphs): Add missing first parameter.
21849
21850 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
21851
21852 * buffer.c (Fbuffer_list, Fbury_buffer):
21853 Take frame->buried_buffer_list into account.
21854
21855 * cm.c (current_tty): New variable, for cmputc().
21856 (cmputc): Use it.
21857 (cmcheckmagic): Add tty parameter, look up terminal streams there.
21858 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
21859 (cmgoto): Add tty parameter. Pass it on to calccost().
21860 Use emacs_tputs() instead of tputs().
21861
21862 * cm.h (emacs_tputs): New macro to set current_tty, and then call
21863 tputs().
21864 (current_tty): New variable, for cmputc().
21865 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
21866
21867 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
21868 (internal_condition_case, internal_condition_case_1)
21869 (internal_condition_case_2): Don't abort when x_catching_errors.
21870
21871 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
21872 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
21873 prevent crashes caused by bogus longjmps in read_char.
21874
21875 * keymap.h (Fset_keymap_parent): Add EXFUN.
21876
21877 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
21878 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
21879 Remove redundant definition.
21880
21881 * macfns.c (x_set_mouse_color, x_make_gc):
21882 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21883
21884 * w32term.c (x_free_frame_resources):
21885 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21886 (w32_initialize): Use the accessor macros for terminal characteristics.
21887
21888 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
21889 Use the accessor macros for terminal characteristics.
21890 * msdos.c (internal_terminal_init): Use the accessor macros for
21891 terminal characteristics.
21892 (ScreenVisualBell, internal_terminal_init):
21893 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21894
21895 * termopts.h (no_redraw_on_reenter): Declare.
21896
21897 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
21898 (mark_terminals, mark_ttys): Declare.
21899 (Fgarbage_collect): Call them.
21900 (mark_object): Mark buried_buffer_list.
21901
21902 * prefix-args.c: Include stdlib.h for exit.
21903
21904 * syssignal.h: Add comment.
21905
21906 * indent.c: Include stdio.h.
21907
21908 * window.h (Vinitial_window_system): Declare.
21909 (Vwindow_system): Delete declaration.
21910
21911 * fontset.c (Finternal_char_font): Use FRAME_RIF.
21912
21913 * image.c (lookup_image): Don't initialize `c' until the xasserts
21914 have been run.
21915
21916 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
21917 FRAME_FOREGROUND_PIXEL.
21918
21919 * print.c (print_preprocess): Don't lose print_depth levels while
21920 iterating.
21921
21922 * widget.c (update_from_various_frame_slots):
21923 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
21924
21925 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
21926 frames.
21927 (window_internal_height): Remove bogus make_number call.
21928 (init_window_once): Call make_terminal_frame with two zero parameters.
21929
21930 * fileio.c (Fread_file_name): Update comment.
21931
21932 * callint.c (Fcall_interactively):
21933 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
21934 Make sure it is correctly unwound.
21935
21936 * xsmfns.c (x_session_close): New function.
21937
21938 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
21939 Delete declarations.
21940
21941 * xterm.h: Remove declaration for x_fully_uncatch_errors.
21942 (x_output): Remove background_pixel and foreground_pixel fields.
21943 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
21944 (x_delete_device, x_session_close): Declare.
21945
21946 * lread.c: Include setjmp.h. Update declaration of `read_char'.
21947 (read_filtered_event): Call `read_char' with a local
21948 `wrong_kboard_jmpbuf'.
21949
21950 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
21951 Don't call single_kboard_state. Use FRAME_RIF.
21952
21953 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
21954 systems.
21955
21956 * lisp.h (set_process_environment): Rename to `set_global_environment'.
21957 (Fframe_with_environment, Fset_input_meta_mode)
21958 (Fset_quit_char): EXFUN.
21959 (x_create_device, tty_output, terminal, tty_display_info): Declare.
21960 (init_sys_modes, reset_sys_modes): Update prototypes.
21961 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
21962
21963 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
21964 Vlocal_key_translation_map, and Vkeyboard_translate_table.
21965 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
21966 Delete declarations.
21967 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
21968 (temporarily_switch_to_single_kboard, tty_read_avail_input):
21969 New declarations.
21970
21971 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
21972 already does that during init_display(). Call syms_of_keymap
21973 before syms_of_keyboard. Call `syms_of_terminal'.
21974 Call set_initial_environment, not set_process_environment.
21975 (shut_down_emacs): Call reset_all_sys_modes() instead of
21976 reset_sys_modes().
21977
21978 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
21979 (internal_resolve_face_name, resolve_face_name_error): New functions.
21980 (resolve_face_name): Protect against loops and errors thrown by Fget.
21981 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
21982 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
21983
21984 * scroll.c: Replace CURTTY() with local variables throughout the
21985 file (where applicable).
21986 (calculate_scrolling, calculate_direct_scrolling)
21987 (scrolling_1, scroll_cost): Use the accessor macros for terminal
21988 characteristics.
21989
21990 * keymap.c (Vfunction_key_map): Remove.
21991 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
21992 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
21993 (Vkey_translation_map): Remove.
21994 (syms_of_keymap): Remove DEFVAR for key-translation-map.
21995 (Fdescribe_buffer_bindings)
21996 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
21997 Update for terminal-local key-translation-map.
21998
21999 * Makefile.in (callproc.o): Update dependencies.
22000 (lisp, shortlisp): Add termdev.elc.
22001 (obj): Add terminal.o.
22002 (terminal.o): Add dependencies.
22003 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22004 (data.o, fns.o): Add termhooks.h dependency.
22005 (SOME_MACHINE_LISP): Add dnd.elc.
22006 (minibuf.o): Fix typo.
22007 Update dependencies.
22008
22009 * data.c (do_symval_forwarding, store_symval_forwarding)
22010 (find_symbol_value): Use the selected frame's keyboard, not
22011 current_kboard.
22012
22013 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22014 Vwindow_system.
22015
22016 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22017 Fmenu_bar_open.
22018 (syms_of_xmenu): Update defsubr.
22019 (mouse_position_for_popup, Fx_popup_menu)
22020 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22021 (set_frame_menubar, free_frame_menubar)
22022 (create_and_show_popup_menu, xmenu_show)
22023 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22024 an X frame.
22025
22026 * xselect.c (x_own_selection): Abort if not an X frame.
22027 (some_frame_on_display): Check if it is an X frame.
22028 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22029
22030 * coding.c: Include frame.h and termhooks.h.
22031 (terminal_coding, keyboard_coding): Delete.
22032 (Fset_terminal_coding_system_internal)
22033 (Fset_keyboard_coding_system_internal)
22034 (Fkeyboard_coding_system)
22035 (Fterminal_coding_system): Add a terminal parameter.
22036 Get terminal_coding from the terminal.
22037 (init_coding_once): Don't call setup_coding_system here.
22038
22039 * dispextern.h (set_scroll_region, turn_off_insert)
22040 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22041 (tty_clear_end_of_line, tty_setup_colors)
22042 (delete_tty, updating_frame)
22043 (produce_special_glyphs, produce_glyphs, write_glyphs)
22044 (insert_glyphs): Remove.
22045 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22046 (tty_turn_off_highlight, get_tty_size): Add declaration.
22047 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22048
22049 * frame.h (enum output_method): Add output_initial.
22050 (struct x_output): Delete.
22051 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22052 Access foreground_pixel and background_pixel directly from the frame.
22053 (tty_display): Delete.
22054 (struct frame): Add buried_buffer_list, foreground_pixel,
22055 background_pixel and terminal. Delete kboard.
22056 (union output_data): Add tty.
22057 (FRAME_KBOARD): Get the kboard from the terminal.
22058 (FRAME_INITIAL_P): New macro.
22059 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22060 (Qterm_environment_variable, Qdisplay_environment_variable)
22061 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22062 New declarations.
22063
22064 * termchar.h (tty_output, tty_display_info): New structures.
22065 (tty_list): Declare.
22066 (FRAME_TTY, CURTTY): New macros.
22067 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22068 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22069 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22070 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22071
22072 * callproc.c: Include frame.h and termhooks.h, for terminal
22073 parameters.
22074 (add_env): New function.
22075 (child_setup): Use it.
22076 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22077 (getenv_internal): Fix get_terminal_param call.
22078 (Fgetenv_internal, egetenv): Update doc.
22079 (syms_of_callproc): Initialize Vprocess_environment to nil.
22080 Register and initialize them. Remove obsolete defvars. Update doc
22081 strings.
22082 (child_setup): Handle Vlocal_environment_variables.
22083 (getenv_internal): Add terminal parameter.
22084 Handle Vlocal_environment_variables.
22085 (Fgetenv_internal): Add terminal parameter.
22086 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22087 environment in a frame (not terminal) parameter. Update doc strings.
22088 (set_initial_environment): Rename from set_global_environment.
22089 Store Emacs environment in initial frame parameter.
22090
22091 * xdisp.c (redisplay_internal): Update references to
22092 `previous_terminal_frame'.
22093 (display_mode_line, Fformat_mode_line): Replace calls to
22094 `push_frame_kboard' with `push_kboard'.
22095 (get_glyph_string_clip_rects): Add extra parentheses and
22096 braces to prevent compiler warnings.
22097 (calc_pixel_width_or_height): Add xassert to check that the
22098 frame is alive. Don't call `lookup_image' on a termcap frame.
22099 (message2_nolog, message3_nolog, redisplay_internal)
22100 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22101 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22102 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22103 (Fx_display_pixel_width, Fx_display_pixel_height)
22104 (Fx_display_planes, Fx_display_color_cells)
22105 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22106 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22107 (Fx_display_backing_store, Fx_display_visual_class)
22108 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22109 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22110
22111 * xfns.c (x_set_foreground_color x_set_background_color)
22112 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22113 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22114 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22115 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22116 terminal that is being deleted.
22117 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22118 frame parameter, and make sure it overrides any user-supplied setting.
22119 (Fx_close_connection, Fx_synchronize): Unify argument names with
22120 the rest of the DEFUNs.
22121
22122 * dispnew.c (Fsend_string_to_terminal): Update call to
22123 `get_tty_terminal'.
22124 (Fredraw_frame, Fsend_string_to_terminal)
22125 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22126 FRAME_TERMCAP_P and FRAME_TTY.
22127 (window_change_signal): Don't believe width/height values that are
22128 impossibly small.
22129 (Vinitial_window_system): Rename from Vwindow_system.
22130 (termscript, Wcm, rif): Delete.
22131
22132 * termhooks.h (struct terminal): New struct containing the
22133 previously global text display hooks and new members NAME,
22134 DELETED and PARAM_ALIST.
22135 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22136 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22137 (FRAME_RIF): New macros.
22138 (get_terminal_param, get_device): New declarations.
22139 (termscript): Delete declaration.
22140
22141 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22142 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22143 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22144 FRAME_FOREGROUND_PIXEL.
22145 (x_fully_uncatch_errors): Disable definition.
22146 (x_scroll_bar_expose): Fix reference to foreground pixel.
22147 (XTread_socket): Disable loop on all X displays.
22148 (x_delete_terminal): Don't set terminal->deleted and let
22149 delete_terminal delete the frames on the terminal.
22150 (x_delete_display): Doc update to reflect changes in
22151 delete_terminal.
22152 (x_display_info) <terminal>: Move member earlier in the struct.
22153 (deleting_tty): Remove old variable.
22154 (Fsuspend_tty): Call clear_tty_hooks.
22155 (Fresume_tty, init_tty): Call set_tty_hooks.
22156 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22157 errors on X frames.
22158 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22159 (handle_one_xevent): Initialize `f' to NULL.
22160 (x_delete_terminal, x_create_terminal): New functions.
22161 (XTset_terminal_modes, XTreset_terminal_modes)
22162 (XTread_socket, x_connection_closed, x_term_init)
22163 (x_term_init, x_delete_display): Add terminal parameter.
22164 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22165 X connections.
22166
22167 * frame.c: Include termchar.h.
22168 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22169 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22170 (Qdisplay_environment_variable): New vars.
22171 (Fframep): Deal with output_initial.
22172 (Fframe-live-p): Doc fix.
22173 (Fwindow-system): New function.
22174 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22175 (make_terminal_frame): Don't create frames on a terminal that is
22176 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22177 (store_frame_param): Check for found_for_frame before calling XFRAME.
22178 (Fmake_terminal_frame): Handle NULL tty names correctly.
22179 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22180 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22181 frames to refer to a deleted frame in their 'environment parameter.
22182 (Fframe_with_environment): New function.
22183 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22184 (get_future_frame_param): New function.
22185 (Fmake_terminal_frame): Use it.
22186 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22187
22188 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22189 * sysdep.c (reset_sys_modes): Update for renames.
22190
22191 * keyboard.c (tty_read_avail_input): New function.
22192 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22193 (syms_of_keyboard): Defsubr them.
22194 (Fset_input_meta_mode, Fset_quit_char): New functions.
22195 (Fset_input_mode): Split to above functions.
22196 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22197 parameter. Use it in call to `read_char'.
22198 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22199 Set wrong_kboard_jmpbuf correctly in recursive calls.
22200 Use current_kboard to access Vkeyboard_translate_table.
22201 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22202 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22203 Update longjmp invocations. Remember the original current_kboard,
22204 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22205 changes it. Comment out unnecessary calls to
22206 `record_single_kboard_state' and `any_kboard_state'.
22207 Update recursive calls.
22208 (wrong_kboard_jmpbuf): Remove global variable.
22209 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22210 Handle deleted interrupted_kboards correctly; that is a legal
22211 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22212 and read_char calls. Abort if interrupted_kboard died in read_char.
22213 (any_kboard_state, single_kboard_state)
22214 (push_frame_kboard): Remove function.
22215 (pop_kboard): Switch out of single_kboard mode if the kboard has
22216 been deleted. Remove unused variable. Help debugging by not
22217 changing current_kboard unnecessarily. Set current_kboard to the
22218 kboard of the selected frame when the stored kboard object has
22219 been deleted before pop_kboard.
22220 (temporarily_switch_to_single_kboard): Change first parameter to a
22221 frame pointer. Throw an error when caller wants to change kboards
22222 while in single_kboard mode. Don't push_kboard if we weren't in
22223 single kboard state. Don't pop_kboard if we popped into any
22224 kboard state.
22225 (restore_kboard_configuration): Abort if pop_kboard changed the
22226 kboard in single_kboard mode. Call pop_kboard only after setting
22227 up single_kboard mode.
22228 (Frecursive_edit): Switch to single_kboard mode only in nested
22229 command loops.
22230 (cmd_error, command_loop, command_loop_1, timer_check):
22231 Comment out unnecessary call to `any_kboard_state' and
22232 `record_single_kboard_state'.
22233 (delete_kboard): Exit single_kboard mode if we have just deleted
22234 that kboard. Use FRAME_KBOARD.
22235 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22236 `fatal_error_signal'.
22237 (record_single_kboard_state): Don't push_kboard if we weren't in
22238 single kboard state. Don't pop_kboard if we popped into any
22239 kboard state.
22240 (push_frame_kboard): Rename to push_kboard.
22241 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22242 (read_avail_input): Read input from all terminals.
22243 (mark_kboards): Also mark Vkeyboard_translate_table.
22244 (kbd_buffer_store_event_hold): Simplify condition.
22245 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22246 (Vkeyboard_translate_table): Move to struct kboard.
22247 (init_kboard): Initialize Vkeyboard_translate_table.
22248 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22249 Vkeyboard_translate_table. Update doc strings. Update docs of
22250 local-function-key-map and function-key-map.
22251
22252 * terminal.c: New file.
22253
22254 * term.c: Include errno.h.
22255 (Vring_bell_function, device_list, initial_device)
22256 (next_device_id, ring_bell, update_begin, update_end)
22257 (set_terminal_window, cursor_to, raw_cursor_to)
22258 (clear_to_end, clear_frame, clear_end_of_line)
22259 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22260 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22261 (syms_of_term): Move their initialization to terminal.c.
22262 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22263 (Ftty_display_color_cells)
22264 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22265 (clear_tty_hooks, set_tty_hooks)
22266 (init_tty, maybe_fatal): New functions.
22267 (Ftty_type): Return nil if terminal is not on a tty instead of
22268 throwing an error. Doc update.
22269 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22270 Doc update. Initialize new subrs and variables.
22271 (delete_tty): Use terminal->deleted.
22272 (tty_set_terminal_modes): Rename from set_terminal_modes.
22273 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22274 (set_scroll_region): Rename to `tty_set_scroll_region'.
22275 (turn_on_insert): Rename to `tty_turn_on_insert'.
22276 (turn_off_insert): Rename to `tty_turn_off_insert'.
22277 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22278 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22279 (toggle_highligh): Rename to `tty_toggle_highlight'.
22280 (background_highlight): Rename to `tty_background_highlight'.
22281 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22282 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22283 (tty_set_scroll_region, tty_background_highlight)
22284 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22285 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22286 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22287 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22288 Add static modifier.
22289 (tty_reset_terminal_modes, tty_set_terminal_window)
22290 (tty_set_scroll_region, tty_background_highlight)
22291 (tty_highlight_if_desired, tty_cursor_to)
22292 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22293 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22294 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22295 renames.
22296
22297 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22298
22299 * keyboard.c: Qrtl is new.
22300 (parse_tool_bar_item): Handle :rtl keyword.
22301 (syms_of_keyboard): Intern :rtl keyword.
22302
22303 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22304
22305 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22306 so no Lisp code is executed.
22307 (file_for_image, find_rtl_image): New functions.
22308 (xg_get_image_for_pixmap): Use file_for_image.
22309 (update_frame_tool_bar): If direction is RTL, use RTL image if
22310 defined. Use Gtk stock images if defined.
22311
22312 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22313
22314 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22315 for nonexistent or zero-width glyph in composition glyph.
22316
22317 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22318
22319 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22320
22321 * xdisp.c (Finvisible_p): New function.
22322 (syms_of_xdisp): defsubr it.
22323
22324 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
22325
22326 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22327 Doc fixes.
22328
22329 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22330
22331 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22332
22333 2007-08-24 Martin Rudalics <rudalics@gmx.at>
22334
22335 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22336 whether decoding has modified buffer contents.
22337
22338 2007-08-24 Jason Rumney <jasonr@gnu.org>
22339
22340 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22341 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22342 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22343 (init_svg_functions) [HAVE_NTGUI]: New function.
22344 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22345 (svg_load_image): Use them.
22346 (svg_load_image) [HAVE_NTGUI]: Implement background.
22347
22348 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22349
22350 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22351 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22352 (LIBX): Remove @RSVG_LIBS@.
22353 (LIBES): Add $(RSVG_LIBS).
22354
22355 * image.c (svg_load_image): Blend with specified background if exists.
22356 Use IMAGE_BACKGROUND. Add Mac OS Support.
22357
22358 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22359 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22360 Remove macros.
22361 [MAC_OSX] (socket_callback): Do nothing.
22362 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22363 ReceiveNextEvent.
22364 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22365 socket_callback.
22366 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22367
22368 2007-08-22 Glenn Morris <rgm@gnu.org>
22369
22370 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22371
22372 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22373
22374 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22375
22376 * image.c: Add support for SVG images. Some additional comments
22377 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22378 (svg_image_p): New function to test for SVG image.
22379 (svg_load): New function to load SVG image.
22380 (svg_load_image): New function, helper for svg_load.
22381 (Qsvg): New Lisp_object.
22382 (svg_keyword_index): New enum.
22383 (svg_format): New static `image_keyword' struct.
22384 (svg_type): New static `image_type' struct.
22385 (librsvg/rsvg.h): Include it.
22386
22387 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22388
22389 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22390
22391 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22392
22393 * lread.c (Qold_style_backquotes): New var.
22394 (syms_of_lread): Init and staticpro it.
22395 (load_warn_old_style_backquotes): New fun.
22396 (Fload): Use them to warn about old style backquotes.
22397 (end_of_file_error, Fload): Remove unused vars.
22398
22399 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22400
22401 * lread.c (Vold_style_backquotes): New var.
22402 (syms_of_lread): Init and export it to Elisp.
22403 (read1): Set it when we find an old-style (back)quote.
22404
22405 2007-08-22 Jason Rumney <jasonr@gnu.org>
22406
22407 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22408
22409 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22410
22411 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22412
22413 2007-08-19 Richard Stallman <rms@gnu.org>
22414
22415 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22416
22417 2007-08-19 Andreas Schwab <schwab@suse.de>
22418
22419 * alloc.c (pure): Round PURESIZE up.
22420
22421 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22422
22423 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22424 active frame.
22425
22426 2007-08-16 Richard Stallman <rms@gnu.org>
22427
22428 * eval.c (Fcommandp): Add parens to clarify.
22429
22430 * minibuf.c (Fall_completions): Use enum for type of table.
22431
22432 * emacs.c (USAGE2): Improve text.
22433
22434 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22435
22436 * term.c (tty_default_color_capabilities): Declare static
22437 variables in file scope, to avoid HPUX compiler problem.
22438
22439 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22440
22441 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22442 to gtk_toolbar_insert.
22443
22444 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22445
22446 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22447
22448 * insdel.c (reset_var_on_error): New fun.
22449 (signal_before_change, signal_after_change):
22450 Use it to reset (after|before)-change-functions to nil in case of error.
22451 Bind inhibit-modification-hooks to t.
22452 Don't bind (after|before)-change-functions to nil while they run.
22453
22454 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22455
22456 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22457 filling pixmap with stippled background.
22458
22459 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22460
22461 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22462 Don't use invisible frame as parent window for repositioning.
22463
22464 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22465
22466 * print.c (new_backquote_output): Rename from old_backquote_output.
22467 (print): Inverse its logic (according to its name) so as to match the
22468 behavior of new_backquote_flag in lread.c.
22469
22470 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22471
22472 * gmalloc.c (posix_memalign): New function.
22473
22474 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22475 ActivateControl/DeactivateControl here.
22476 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22477 frame-notice-user-settings is non-nil.
22478 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22479 for kEventParamFMFontStyle.
22480 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22481 mac_pass_command_to_system and mac_pass_control_to_system here.
22482 (XTread_socket): Call ActivateControl/DeactivateControl here.
22483 (XTread_socket) [TARGET_API_MAC_CARBON]:
22484 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22485 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22486 for window repositioning.
22487
22488 2007-08-08 Glenn Morris <rgm@gnu.org>
22489
22490 * Replace `iff' in doc-strings and comments.
22491
22492 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
22493
22494 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22495
22496 2007-08-07 Martin Rudalics <rudalics@gmx.at>
22497
22498 * fileio.c (Finsert_file_contents): Run format-decode and
22499 after_insert_file_functions on entire buffer when REPLACE is
22500 non-nil and inhibit modification_hooks and point_motion_hooks.
22501 For consistency, run after_insert_file_functions iff something
22502 got inserted. Move signal_after_change and update_compositions
22503 after code running after_insert_file_functions. Make sure that
22504 undo_list doesn't record intermediate steps of the decoding process.
22505
22506 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22507
22508 * emacs.c (main)
22509 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22510 Call malloc_enable_thread on interactive startup.
22511
22512 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22513 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22514 [USE_PTHREAD]: Conditionalize with it.
22515 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22516 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22517 New functions.
22518
22519 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
22520
22521 * xdisp.c (redisplay_window): When restoring original buffer
22522 position, make sure it is still valid.
22523
22524 * image.c (png_load): Ignore png-supplied background color.
22525
22526 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22527
22528 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22529 Use kCFAbsoluteTimeIntervalSince1970.
22530
22531 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22532 New variable.
22533 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22534 event loop should be quit.
22535 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22536 Quit dialog event loop if quit_dialog_event_loop is set.
22537
22538 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22539 (Selection): New typedef. Use instead of ScrapRef.
22540 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22541 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22542 (mac_clear_selection): Rename from clear_scrap.
22543 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22544 scrap_has_target_type. All uses changed.
22545 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22546 (mac_selection_has_target_p): New functions.
22547 (mac_put_selection_value): Rename from put_scrap_string.
22548 (mac_get_selection_value): Rename from get_scrap_string.
22549 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22550 (put_scrap_private_timestamp, scrap_has_target_type)
22551 (get_scrap_private_timestamp): Remove functions.
22552 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22553 (x_own_selection, x_get_local_selection):
22554 Use mac_valid_selection_value_p.
22555 (x_own_selection): Don't use put_scrap_private_timestamp.
22556 Record OWNERSHIP-INFO into Vselection_alist instead.
22557 (x_get_local_selection): Don't check type if request is local.
22558 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22559 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22560
22561 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22562
22563 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22564 add comment explaining why.
22565
22566 2007-08-03 Richard Stallman <rms@gnu.org>
22567
22568 * fileio.c (Fvisited_file_modtime): Use make_time.
22569
22570 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22571
22572 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22573 build.
22574
22575 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22576
22577 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22578
22579 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22580
22581 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22582
22583 2007-07-30 Richard Stallman <rms@gnu.org>
22584
22585 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22586
22587 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22588
22589 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22590
22591 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
22592
22593 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22594 remote default-directory.
22595
22596 * buffer.c (mode-line-format): Update doc string.
22597
22598 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22599
22600 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22601 scroll bar gap.
22602 (x_scroll_bar_create): Set bar->fringe_extended_p.
22603 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22604 on frame edge. Check fringe background extension. Don't clear
22605 extended fringe background area.
22606
22607 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22608 (w32_fill_area): Enclose multiple statements with do ... while (0).
22609
22610 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22611 Extend fringe background to scroll bar gap.
22612 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22613 Set bar->fringe_extended_p.
22614 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22615 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22616 background extension. Don't clear extended fringe background area.
22617
22618 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22619 New member fringe_extended_p.
22620
22621 2007-07-25 Glenn Morris <rgm@gnu.org>
22622
22623 * Relicense all FSF files to GPLv3 or later.
22624
22625 * COPYING: Switch to GPLv3.
22626
22627 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22628
22629 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22630
22631 * data.c (Finteractive_form): Check for the presence of an
22632 `interactive-form' symbol property more thoroughly.
22633
22634 * data.c (Finteractive_form): Use an `interactive-form' property if
22635 present, analogous to the function-documentation property.
22636
22637 2007-07-24 Jason Rumney <jasonr@gnu.org>
22638
22639 * w32fns.c (x_real_positions): Get real position from OS instead of
22640 calculating it.
22641
22642 2007-07-23 Jason Rumney <jasonr@gnu.org>
22643
22644 * filelock.c (current_lock_owner): Allow for @ sign in username.
22645
22646 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
22647
22648 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22649 remote default-directory.
22650
22651 * buffer.c (mode-line-format): Describe above case in doc string.
22652
22653 2007-07-20 Eli Zaretskii <eliz@gnu.org>
22654
22655 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22656 Define if not defined.
22657
22658 2007-07-18 Jason Rumney <jasonr@gnu.org>
22659
22660 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22661
22662 2007-07-18 Richard Stallman <rms@gnu.org>
22663
22664 * data.c (Fsetq_default): Doc fix.
22665
22666 * eval.c (Fsetq): Doc fix.
22667
22668 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
22669
22670 * coding.c (Ffind_operation_coding_system):
22671 * eval.c (For, Fand): Doc fixes.
22672 Reported by Johan Bockgård.
22673
22674 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22675
22676 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22677
22678 * xterm.h: Declare x_ewmh_activate_frame.
22679
22680 * xterm.c (x_ewmh_activate_frame): New function.
22681 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22682
22683 2007-07-17 Martin Rudalics <rudalics@gmx.at>
22684
22685 * window.c (Fdisplay_buffer): If largest or LRU window is the
22686 only window, split it even if it is not eligible for splitting.
22687 This restores the original behavior broken by the 2007-07-15
22688 change.
22689
22690 2007-07-17 Glenn Morris <rgm@gnu.org>
22691
22692 * abbrev.c (abbrev_check_chars): New function.
22693 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22694 Call abbrev_check_chars to check abbrev characters are word
22695 constituents. Doc fix.
22696
22697 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22698
22699 * process.c (Fstart_process, Fmake_network_process)
22700 (read_process_output): Fix up last changes.
22701
22702 2007-07-16 Eli Zaretskii <eliz@gnu.org>
22703
22704 * makefile.w32-in (clean): Don't delete *~.
22705
22706 2007-07-16 Andreas Schwab <schwab@suse.de>
22707
22708 * window.c (Fdisplay_buffer): Use NILP.
22709 (Fset_window_scroll_bars): Likewise.
22710
22711 2007-07-15 Martin Rudalics <rudalics@gmx.at>
22712
22713 * window.c (window_min_size_2): New function.
22714 (window_min_size_1, size_window, Fdisplay_buffer)
22715 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22716 windows without mode- or header-lines when window-min-height is
22717 too small.
22718 (size_window): Reset nodelete_p after testing it, following an
22719 earlier note by Kim F. Storm.
22720 (display_buffer): Do not set split_height_threshold to twice the
22721 value of window_min_height to avoid changing the value of a
22722 customizable variable. Rather explicitly check whether the
22723 height of the window that shall be splitted is at least as large
22724 as split_height_threshold.
22725 (Fwindow_full_width_p): New defun.
22726 (syms_of_window): Defsubr it.
22727
22728 * window.h: Add EXFUN for Fwindow_full_width_p.
22729
22730 2007-07-14 Jason Rumney <jasonr@gnu.org>
22731
22732 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22733
22734 2007-07-14 Richard Stallman <rms@gnu.org>
22735
22736 * eval.c (maybe_call_debugger): New function.
22737 (find_handler_clause): Use maybe_call_debugger.
22738 Call it when the handler says `debug'.
22739 Eliminate DEBUGGER_VALUE_PTR.
22740 (Fsignal): Eliminate debugger_value.
22741 (Qdebug): New variable.
22742 (syms_of_eval): Initialize it.
22743
22744 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
22745
22746 * eval.c (Fprogn):
22747 * keyboard.c (Ftrack_mouse):
22748 * print.c (Fwith_output_to_temp_buffer):
22749 * window.c (Fsave_window_excursion): Doc fix.
22750
22751 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22752
22753 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22754
22755 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22756
22757 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22758 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22759 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22760 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22761 Remove unused encoding_carryover.
22762 * process.c: Adjust all functions accordingly.
22763
22764 2007-07-12 Richard Stallman <rms@gnu.org>
22765
22766 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22767
22768 2007-07-11 Jason Rumney <jasonr@gnu.org>
22769
22770 * makefile.w32-in (LIBS): Include OLE32.
22771
22772 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22773 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22774
22775 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22776
22777 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22778 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22779 from a Lisp_Object into a bare pointer.
22780 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22781 Adjust the code correspondingly.
22782
22783 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22784
22785 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22786 (term_show_mouse_face): Remove unused var `j'.
22787 (handle_one_term_event): Remove unused vars `i' and `j'.
22788 Don't cast return value of ttyname since it's not necessary.
22789
22790 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22791
22792 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22793 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22794
22795 * fns.c (map_char_table): Use an array of int for `indices' rather than
22796 an array of Lisp_Objects (which are only ever integers anyway).
22797 (Fmap_char_table): Update caller.
22798 * lisp.h: Update prototype.
22799 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22800 * fontset.c (Ffontset_info):
22801 * casetab.c (set_case_table): Update callers.
22802
22803 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22804
22805 * keymap.c (struct accessible_keymaps_data)
22806 (struct where_is_internal_data): New structures.
22807 (accessible_keymaps_1, where_is_internal_1): Use them to change
22808 interface to adhere to the one used by map_keymap.
22809 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22810 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22811
22812 * keymap.h (map_keymap_function_t): More informative prototype.
22813
22814 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22815
22816 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
22817 (looking_at_1): Don't change search_regs and last_thing_searched
22818 if `inhibit-changing-match-data' is non-nil.
22819 (string_match_1, search_buffer, set_search_regs): Likewise.
22820 (syms_of_search): Add Lisp level definition for
22821 `inhibit-changing-match-data' and set it to nil.
22822 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
22823 start and end of the match, instead of using values in search_regs.
22824
22825 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
22826
22827 * minibuf.c (Fcompleting_read): New value `confirm-only'
22828 for `require-match'.
22829
22830 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
22831
22832 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
22833 part of the 2007-06-27 change to syms_of_fileio.
22834
22835 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22836
22837 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
22838 Check WINDOWP before using XWINDOW. Consolidate return statements.
22839
22840 2007-06-27 Richard Stallman <rms@gnu.org>
22841
22842 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
22843
22844 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
22845
22846 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
22847
22848 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22849
22850 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
22851 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
22852 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
22853 (_free_internal, memalign): Use them.
22854 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
22855 Initialize to PTHREAD_MUTEX_INITIALIZER.
22856 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
22857 (morecore_nolock): Rename from morecore. All uses changed.
22858 Use only nolock versions of internal allocation functions.
22859 (_malloc_internal_nolock, _realloc_internal_nolock)
22860 (_free_internal_nolock): New functions created from
22861 _malloc_internal, _realloc_internal, and _free_internal.
22862 (_malloc_internal, _realloc_internal, _free_internal): Use them.
22863 Copy hook value to automatic variable before its use.
22864 (memalign): Copy hook value to automatic variable before its use.
22865
22866 2007-06-26 Kenichi Handa <handa@m17n.org>
22867
22868 * coding.c (Ffind_operation_coding_system): Docstring improved.
22869 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
22870
22871 2007-06-25 David Kastrup <dak@gnu.org>
22872
22873 * keymap.c (Fcurrent_active_maps): Add `position' argument.
22874 (Fwhere_is_internal): Adjust call to `current-active-maps' to
22875 cater for additional parameter.
22876
22877 * keymap.h: Adjust number of parameters to `current-active-maps'.
22878
22879 * doc.c (Fsubstitute_command_keys): Adjust call of
22880 `current-active-maps'.
22881
22882 2007-06-25 David Kastrup <dak@gnu.org>
22883
22884 * callint.c (Fcall_interactively): Make the parsing of interactive
22885 specs somewhat more readable.
22886
22887 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22888
22889 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
22890 to scroll bar gap also when bitmap fills fringe. Draw only foreground
22891 if extended background has already been filled.
22892
22893 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22894
22895 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
22896 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
22897
22898 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
22899 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
22900 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
22901 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
22902 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
22903 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
22904 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
22905 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
22906 Run timers during dialog popup.
22907 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
22908
22909 2007-06-21 Jason Rumney <jasonr@gnu.org>
22910
22911 * image.c (convert_mono_to_color_image): Swap fore and background.
22912
22913 2007-06-20 Jason Rumney <jasonr@gnu.org>
22914
22915 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
22916 (w32_free_bdf_font): Unmap memory not handle.
22917
22918 2007-06-20 Sam Steingold <sds@gnu.org>
22919
22920 * gmalloc.c (__morecore): Fix the declaration to comply with the
22921 definition.
22922
22923 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
22924
22925 * w32term.c (w32_delete_display): Remove leftover declaration.
22926 (w32_define_cursor, w32_initialize): Make static.
22927
22928 * w32.c (_wsa_errlist): Fix typo in error message.
22929 (init_environment): Ignore any environment variable from the
22930 registry having a null value.
22931
22932 2007-06-20 Glenn Morris <rgm@gnu.org>
22933
22934 * Makefile.in (LIBGIF): Default to -lgif.
22935
22936 2007-06-17 Jason Rumney <jasonr@gnu.org>
22937
22938 * w32menu.c (add_menu_item): Don't use multibyte string functions on
22939 unicode strings.
22940
22941 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
22942
22943 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
22944 Fix typo in docstring.
22945
22946 2007-06-16 Eli Zaretskii <eliz@gnu.org>
22947
22948 * w32menu.c (add_menu_item): Escape `&' characters in menu items
22949 and their keybindings.
22950
22951 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
22952
22953 * composite.c (update_compositions): Fix last fix.
22954
22955 2007-06-14 Jason Rumney <jasonr@gnu.org>
22956
22957 * w32.c (get_process_times_fn): New function pointer.
22958 (globals_of_w32): Intialize it if present in kernel32.dll.
22959 (w32_get_internal_run_time): New function.
22960
22961 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
22962
22963 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
22964
22965 * composite.c (update_compositions): Check the validness of
22966 compositions.
22967
22968 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22969
22970 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
22971 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
22972
22973 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
22974 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
22975
22976 * macgui.h (USE_MAC_TOOLBAR): New define.
22977
22978 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
22979 Return immediately unless popup is activated.
22980
22981 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
22982 background to scroll bar gap.
22983 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
22984 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
22985 scroll bars on frame edge. Check fringe background extension.
22986 Don't clear extended fringe background area.
22987 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
22988 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
22989 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
22990 [USE_MAC_TOOLBAR]: New macros.
22991 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
22992 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
22993 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
22994 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
22995 [USE_MAC_TOOLBAR]: New functions.
22996 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
22997 manually if previous repositioning has failed.
22998 (mac_handle_keyboard_event): Use precomputed event kind.
22999 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23000 as tool bar item click. Handle mouse movement over tool bar items.
23001
23002 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23003 toolbar_win_gravity.
23004 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23005 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23006 Add externs.
23007
23008 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23009 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23010
23011 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
23012
23013 * image.c (search_image_cache): Remove unused variable.
23014
23015 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
23016
23017 * xfns.c, xmenu.c: Link to xaw3d if available.
23018
23019 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23020
23021 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23022 frame_foreground and frame_background.
23023
23024 * image.c (lookup_image): Save frame foreground and background colors.
23025 (search_image_cache): Check if saved and current frame colors match.
23026
23027 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23028
23029 * regex.c (regex_compile): Remove the `regnum' counter.
23030 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23031
23032 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23033
23034 * term.c: Include intervals.h to declare Fget_text_property.
23035
23036 2007-06-10 Jason Rumney <jasonr@gnu.org>
23037
23038 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23039
23040 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
23041
23042 * callint.c (Fcall_interactively):
23043 * editfns.c (Fdelete_and_extract_region):
23044 * fileio.c (Fread_file_name):
23045 * fns.c (Fmapconcat):
23046 * keyboard.c (cmd_error_internal):
23047 * keymap.c (Fkey_description):
23048 * lread.c (openp):
23049 * minibuf.c (read_minibuf):
23050 * search.c (wordify):
23051 * sunfns.c (sel_read):
23052 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23053 * xfns.c (x_default_scroll_bar_color_parameter):
23054 * xmenu.c (menu_help_callback):
23055 * xselect.c (Fx_get_atom_name):
23056 * xterm.c (x_term_init): Use empty_unibyte_string.
23057
23058 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23059
23060 * alloc.c (init_strings): Initialize canonical empty strings.
23061 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23062 canonical empty string when the requested size is 0.
23063
23064 * emacs.c (empty_unibyte_string): Rename from empty_string.
23065 (empty_multibyte_string): New canonical empty string.
23066 (syms_of_emacs): Don't initialize empty_string.
23067
23068 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23069 string, if appropriate.
23070 (empty_unibyte_string, empty_multibyte_string): New externs.
23071 (empty_string): Remove extern.
23072
23073 * lread.c (syms_of_lread): Use empty_unibyte_string.
23074
23075 2007-06-07 Jason Rumney <jasonr@gnu.org>
23076
23077 * s/ms-w32.h: Don't define HAVE_TZNAME.
23078
23079 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23080
23081 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23082
23083 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23084
23085 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23086 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23087
23088 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23089 Don't call next handler.
23090 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23091 Remove argument. Install handler to application.
23092 (set_frame_menubar): Don't change deep_p.
23093 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23094 FRAME_OUTER_TO_INNER_DIFF_Y.
23095 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23096 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23097 [HAVE_DIALOGS]: New macros.
23098 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23099 Use them.
23100 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23101
23102 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23103 init_service_handler. All callers changed. Return OSStatus value.
23104
23105 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23106 All callers changed so as not to call SetPortWindowPort.
23107 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23108 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23109 mac_draw_string_common.
23110 (mac_draw_image_string_qd): Likewise.
23111 (mac_draw_string_common): Use them. Add INLINE.
23112 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23113 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23114 GetGlobalMouse.
23115 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23116 and FRAME_OUTER_TO_INNER_DIFF_Y.
23117 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23118 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23119 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23120 repositioning window to mac_handle_window_event.
23121 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23122 saving window location to mac_handle_window_event
23123 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23124 (install_menu_target_item_handler): Remove argument in extern.
23125 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23126 Also accept command events.
23127 (do_keystroke): New function created from XTread_socket.
23128 (init_command_handler): Remove functions.
23129 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23130 and save window location by kEventWindowShowing and kEventWindowHiding
23131 handlers here. Don't call next handler for window state change and
23132 focus events.
23133 (mac_handle_application_event, mac_handle_keyboard_event)
23134 [TARGET_API_MAC_CARBON]: New functions.
23135 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23136 kEventWindowShowing and kEventWindowHiding events. Move installation
23137 of mouse, font, text input and menu target item handlers to
23138 install_application_handler.
23139 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23140 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23141 New function.
23142 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23143 Register it.
23144 (XTread_socket) [TARGET_API_MAC_CARBON]:
23145 Consolidate SendEventToEventTarget calls.
23146 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23147 Move application activation handler to mac_handle_application_event.
23148 Move keyboard handler to mac_handle_keyboard_event.
23149 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23150 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23151 init_command_handler. Call install_application_handler.
23152
23153 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23154 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23155
23156 2007-06-07 Glenn Morris <rgm@gnu.org>
23157
23158 * emacs.c (main): Use `emacs-copyright' in --version output.
23159
23160 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
23161
23162 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23163
23164 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23165
23166 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23167
23168 * macgui.h: Replace WindowPtr with WindowRef.
23169
23170 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23171 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23172 Replace ControlHandle with ControlRef.
23173 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23174
23175 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23176 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23177 Replace ControlHandle with ControlRef.
23178 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23179 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23180
23181 * macterm.h (struct scroll_bar): Rename member control_handle_low
23182 and control_handle_high to control_ref_low and control_ref_high.
23183 All uses changed.
23184 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23185 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23186 respectively. All uses changed.
23187 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23188 (install_window_handler, remove_window_handler): Replace WindowPtr
23189 with WindowRef in externs.
23190
23191 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
23192
23193 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23194
23195 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
23196
23197 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23198
23199 * frame.c (Fmouse_position, Fmouse_pixel_position):
23200 Condition on HAVE_GPM too.
23201
23202 * term.c (term_mouse_highlight): Remove unused variables.
23203 (Fterm_open_connection): Set gpm_zerobased to 1.
23204 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23205 Use zero based co-ordinates.
23206 (handle_one_term_event): Report a drag as mouse movement too.
23207
23208 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23209
23210 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
23211
23212 * image.c (search_image_cache): New function. Require background
23213 color match if background color is unspecified in the image spec.
23214 (uncache_image, lookup_image): Use it.
23215
23216 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
23217
23218 * window.c (Fshrink_window): Reflow docstring.
23219
23220 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
23221
23222 * Version 22.1 released.
23223
23224 2007-06-01 Richard Stallman <rms@gnu.org>
23225
23226 * xfns.c (x_encode_text): Add GCPRO.
23227
23228 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23229
23230 * xfns.c (x_set_name_internal): Save encoded name before
23231 x_encode_text in case string data is relocated.
23232
23233 2007-05-31 Richard Stallman <rms@gnu.org>
23234
23235 * buffer.c (syms_of_buffer): Doc fix.
23236
23237 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
23238
23239 * sysdep.c (init_sys_modes): Add rather than replace with
23240 O_NONBLOCK.
23241
23242 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23243 term_mouse_moveto.
23244
23245 * termhooks.h (term_mouse_moveto): New extern.
23246
23247 * term.c (mouse_face_window): Rename...
23248 (Qmouse_face_window): ...to this.
23249 (term_show_mouse_face, term_clear_mouse_face)
23250 (term_mouse_highlight): Use Qmouse_face_window.
23251 (term_mouse_moveto): New function.
23252 (term_mouse_position): Make it work.
23253 (syms_of_term): Uncomment assignment to mouse_position_hook.
23254 Staticpro Qmouse_face_window.
23255
23256 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23257
23258 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23259 around current_column call.
23260
23261 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23262
23263 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23264 * xdisp.c (next_element_from_buffer):
23265 * window.c (delete_window):
23266 * term.c (term_mouse_highlight):
23267 * msdos.c (getdefdir):
23268 * macterm.c (mac_create_bitmap_from_bitmap_data)
23269 (init_font_name_table):
23270 * fns.c (Fsxhash):
23271 * data.c (Fmake_local_variable):
23272 * ccl.c (ccl_driver): Likewise.
23273
23274 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23275
23276 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23277 Call mac_wakeup_from_rne on window size change.
23278
23279 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
23280
23281 * image.c (uncache_image): Fix typo.
23282
23283 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23284
23285 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23286
23287 2007-05-22 Richard Stallman <rms@gnu.org>
23288
23289 * xterm.c (x_connection_closed): Remove NO_RETURN.
23290
23291 2007-05-22 Martin Rudalics <rudalics@gmx.at>
23292
23293 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23294
23295 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
23296
23297 * image.c (uncache_image): New function.
23298 (Fimage_refresh): New function.
23299
23300 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23301
23302 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23303
23304 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23305
23306 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23307 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23308
23309 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23310
23311 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23312 conditional on [HAVE_GPM_H].
23313
23314 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23315
23316 * syntax.c (skip_chars): Update syntax-table only after we checked that
23317 the new location is valid.
23318
23319 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23320
23321 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23322 mac_get_window_bounds.
23323
23324 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23325
23326 * Makefile.in (LIBGPM): Allow it to be set from configure.
23327 If set then link Emacs with it.
23328
23329 * config.in: Regenerate.
23330
23331 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23332 New externs.
23333
23334 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23335 Include gpm.h.
23336 (handle_one_term_event, term_gpm): New externs.
23337
23338 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23339 and allow it to be interrupted by SIGIO.
23340
23341 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23342 (wait_reading_process_output): Wait on gpm_fd too.
23343 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23344 (add_gpm_wait_descriptor_called_flag): New variable.
23345 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23346
23347 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23348 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23349 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23350 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23351 (make_lispy_event): Add case GPM_CLICK_EVENT.
23352 (read_avail_input): Handle mouse input.
23353
23354 * term.c (write_glyphs_with_face): New function.
23355 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23356 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23357 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23358 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23359 (last_mouse_x, last_mouse_y): New variables.
23360 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23361 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23362 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23363 (Fterm_close_connection): New functions.
23364 (term_init): Initialise mouse_face_window.
23365
23366 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
23367
23368 * xdisp.c (redisplay_window): If first window line is a
23369 continuation line, recompute the new window start instead of
23370 recentering.
23371
23372 2007-05-18 Glenn Morris <rgm@gnu.org>
23373
23374 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23375 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23376
23377 2007-05-17 Glenn Morris <rgm@gnu.org>
23378
23379 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23380
23381 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23382
23383 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23384 dead key repeat and up events.
23385
23386 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
23387
23388 * image.c (pbm_load): Check image size for monochrome pbm.
23389
23390 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
23391
23392 * xterm.c (XTread_socket): Revert last change.
23393
23394 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
23395
23396 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23397
23398 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23399
23400 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23401
23402 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23403 mixup (YAILOM).
23404
23405 2007-05-07 Andreas Schwab <schwab@suse.de>
23406
23407 * keymap.c (Flookup_key): Fix typo in last change.
23408
23409 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23410
23411 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23412 mapping for unibyte strings.
23413
23414 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23415
23416 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23417 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23418
23419 2007-04-29 Richard Stallman <rms@gnu.org>
23420
23421 * insdel.c (replace_range): For undo, record insertion first.
23422
23423 2007-04-29 Andreas Schwab <schwab@suse.de>
23424
23425 * lisp.h (VECSIZE): Use OFFSETOF.
23426
23427 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23428
23429 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23430 disabled lines.
23431
23432 2007-04-28 Richard Stallman <rms@gnu.org>
23433
23434 * lread.c (read_escape): In a string, \s is always space.
23435
23436 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23437
23438 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23439
23440 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23441 submenu for menu bar items.
23442
23443 See ChangeLog.10 for earlier changes.
23444
23445 ;; Local Variables:
23446 ;; coding: utf-8
23447 ;; add-log-time-zone-rule: t
23448 ;; End:
23449
23450 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
23451
23452 This file is part of GNU Emacs.
23453
23454 GNU Emacs is free software: you can redistribute it and/or modify
23455 it under the terms of the GNU General Public License as published by
23456 the Free Software Foundation, either version 3 of the License, or
23457 (at your option) any later version.
23458
23459 GNU Emacs is distributed in the hope that it will be useful,
23460 but WITHOUT ANY WARRANTY; without even the implied warranty of
23461 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23462 GNU General Public License for more details.
23463
23464 You should have received a copy of the GNU General Public License
23465 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23466
23467 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40