Simplify temacs build rule.
[bpt/emacs.git] / src / ChangeLog
1 2010-05-16 Glenn Morris <rgm@gnu.org>
2
3 * Makefile.in (TEMACS_LDFLAGS2): New, set by configure.
4 (temacs${EXEEXT}): Combine the NS_IMPL_GNUSTEP case with the default.
5
6 * Makefile.in (GNUSTEP_SYSTEM_LIBRARIES): Remove, unused.
7 (NS_IMPL_GNUSTEP_TEMACS_LDFLAGS): New, set by configure.
8 (LD) [NS_IMPL_GNUSTEP]: Set to $(CC) -rdynamic.
9 (temacs${EXEEXT}): Remove $LOCALCPP, never defined or referenced.
10 Make most of the NS_IMPL_GNUSTEP case the same as the default case.
11
12 * Makefile.in (temacs${EXEEXT}) [!NS_IMPL_GNUSTEP]:
13 Remove ${STARTFLAGS}, nothing ever sets it.
14
15 2010-05-16 Dan Nicolaescu <dann@ics.uci.edu>
16
17 * m/ia64.h (UNEXEC): Remove, set in s/*.h.
18
19 2010-05-16 Glenn Morris <rgm@gnu.org>
20
21 * Makefile.in (LIBX_BASE): Always define.
22
23 * Makefile.in (LIBX_OTHER): Move out of cpp section.
24
25 * Makefile.in (LIBXT): Always define.
26
27 2010-05-15 Glenn Morris <rgm@gnu.org>
28
29 * Makefile.in (OLDXMENU, LIBXMENU, LIBX_OTHER): Always define.
30
31 * Makefile.in (FONT_DRIVERS): Remove, replace with $FONT_OBJ.
32 (obj, SOME_MACHINE_OBJECTS): Use $FONT_OBJ.
33
34 2010-05-15 Ken Raeburn <raeburn@raeburn.org>
35
36 * lisp.h (XFLOAT_DATA): Use "0?x:x" to generate an
37 rvalue. (bug#5916)
38 (LISP_MAKE_RVALUE) [!USE_LISP_UNION_TYPE && !__GNUC__]: Likewise.
39
40 * emacs.c (main): Initialize initial-environment and
41 process-environment before generating from env, not after.
42
43 Handle --version reasonably in CANNOT_DUMP configuration.
44 * emacs.c (emacs_version, emacs_copyright): New string variables.
45 (Vemacs_version, Vemacs_copyright): New Lisp_Object variables.
46 (syms_of_emacs): Defvar them, and initialize them from the C
47 string variables.
48 (main): If initialization hasn't been done, print initial version
49 info from the C strings, instead of starting an interactive session.
50
51 2010-05-15 Eli Zaretskii <eliz@gnu.org>
52
53 * bidi.c (bidi_paragraph_init): Don't leave alone garbage values
54 of bidi_it->paragraph_dir. Call bidi_initialize if needed.
55 (bidi_paragraph_init): Remove redundant assertion that we are at
56 the beginning of a line after call to bidi_find_paragraph_start.
57
58 * xdisp.c (Fcurrent_bidi_paragraph_direction): New function.
59 (syms_of_xdisp): Defsubr it.
60
61 * Makefile.in: Fix MSDOS-related comments.
62
63 2010-05-15 Glenn Morris <rgm@gnu.org>
64
65 * Makefile.in (OLDXMENU_TARGET): New, set by configure.
66 (really-lwlib, really-oldXMenu): Always define.
67 ($OLDXMENU): Depend on $OLDXMENU_TARGET.
68
69 * Makefile.in: Simplify cpp conditional.
70
71 * Makefile.in (${ns_appdir}): Simplify using umask.
72
73 * Makefile.in (${ns_appdir}): Remove references to CVS-related files.
74
75 2010-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
76
77 * eval.c (specbind): Remove left-over duplicate test.
78 Disallow let-binding frame-local vars. Add comment.
79
80 2010-05-14 Eli Zaretskii <eliz@gnu.org>
81
82 Make the cache of bidi iterator states dynamically allocated.
83 * bidi.c (bidi_cache_shrink): New function.
84 (bidi_init_it): Call it.
85 (bidi_cache_iterator_state): Enlarge the cache if needed.
86
87 * bidi.c (bidi_move_to_visually_next): Rename from
88 bidi_get_next_char_visually. All callers changed.
89
90 2010-05-14 Kenichi Handa <handa@m17n.org>
91
92 * dispextern.h (struct composition_it): New member reversed_p.
93
94 * composite.c (composition_compute_stop_pos): Search backward if
95 ENDPOS < CHARPOS.
96 (composition_reseat_it): Handle the case that ENDPOS < CHARPOS.
97 Set CMP_IT->reversed_p.
98 (composition_update_it): Pay attention to CMP_IT->reversed_p.
99
100 * xdisp.c (set_iterator_to_next):
101 Call composition_compute_stop_pos with negative ENDPOS if we are
102 scanning backward. Call composition_compute_stop_pos if scan
103 direction is changed.
104 (next_element_from_buffer): Call composition_compute_stop_pos with
105 negative ENDPOS if we are scanning backward.
106 (next_element_from_composition): Pay attention to
107 IT->cmp_it.reversed_p.
108
109 2010-05-14 Kenichi Handa <handa@m17n.org>
110
111 * font.c (font_range): Return the range for the font found at
112 first.
113
114 2010-05-14 Glenn Morris <rgm@gnu.org>
115
116 * Makefile.in (ns_appdir, ns_appbindir, ns_appsrc): Always define.
117
118 * Makefile.in (mktime, X11, register): Move undefs to configure.
119
120 * Makefile.in (MSDOS_OBJ): Default to empty, let msdos scripts set it.
121 (MSDOS_X_OBJ): New variable.
122 (MSDOS_SUPPORT_REAL): New constant.
123 (MSDOS_SUPPORT): Set as a variable, not with cpp.
124 (obj): Use MSDOS_X_OBJ.
125 (lisp): Use MSDOS_SUPPORT as a variable.
126
127 * Makefile.in (REAL_MOUSE_SUPPORT): New constant.
128 (GPM_MOUSE_SUPPORT): Now it's a constant.
129 (MOUSE_SUPPORT, TOOLTIP_SUPPORT, WINDOW_SUPPORT): Set with configure,
130 not cpp.
131
132 * Makefile.in (@NS_IMPL_GNUSTEP_INC@): Use in place of #ifdef.
133 (ns_appresdir): Remove, unused.
134
135 * Makefile.in (SHELL): Move outside cpp section.
136
137 * s/netbsd.h (AMPERSAND_FULL_NAME): Remove (defined in AH_BOTTOM).
138
139 2010-05-13 Glenn Morris <rgm@gnu.org>
140
141 * Makefile.in (FONT_DRIVERS): Place with other HAVE_X_WINDOWS stuff.
142 (TOOLTIP_SUPPORT): Place with other HAVE_WINDOW_SYSTEM stuff.
143
144 * Makefile.in (FONT_DRIVERS): If HAVE_X_WINDOWS is defined,
145 HAVE_WINDOW_SYSTEM must be too.
146
147 * Makefile.in (WINNT_SUPPORT): Remove, nt build does not use this file.
148 (lisp): Remove WINNT_SUPPORT.
149
150 * Makefile.in (OLDXMENU, LIBXMENU) [!HAVE_MENUS]:
151 Let configure set these variables (to empty) in this case as well.
152
153 * Makefile.in (LD_SWITCH_X_SITE): Define as a variable, not via cpp.
154 (LIBX_BASE): Use $LD_SWITCH_X_SITE.
155
156 * Makefile.in (C_SWITCH_X_SYSTEM, C_SWITCH_X_SITE, LIB_STANDARD)
157 (LIB_MATH, FONTCONFIG_CFLAGS, FONTCONFIG_LIBS, FREETYPE_CFLAGS)
158 (FREETYPE_LIBS, LIBOTF_CFLAGS, LIBOTF_LIBS, M17N_FLT_CFLAGS)
159 (M17N_FLT_LIBS, GNU_OBJC_CFLAGS, GNUSTEP_SYSTEM_LIBRARIES, LIBGPM)
160 (LIBRESOLV, UNEXEC_OBJ): For clarity, define variables to hold
161 the values output by configure.
162 (ALL_CFLAGS, obj, LIBES, temacs${EXEEXT}): Use the above variables.
163
164 2010-05-12 Glenn Morris <rgm@gnu.org>
165
166 * Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
167 (LINKER_WAS_SPECIFIED): Remove.
168
169 * Makefile.in (LIB_GCC): Set using configure, not cpp.
170 (GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
171 * m/arm.h (LIB_GCC) [GNU_LINUX]:
172 * s/cygwin.h (LIB_GCC):
173 * s/freebsd.h (LIB_GCC):
174 * s/gnu-linux.h (LIB_GCC):
175 * s/msdos.h (LIB_GCC):
176 * s/netbsd.h (LIB_GCC):
177 Move to configure.
178
179 2010-05-11 Karel Klic <kklic@redhat.com>
180
181 * ftfont.c: Fix incorrect parentheses of #if condition for
182 definining M17N_FLT_USE_NEW_FEATURE.
183
184 2010-05-11 Glenn Morris <rgm@gnu.org>
185
186 * Makefile.in (LIBS_SYSTEM) [MSDOS]: Do not reset.
187 * s/msdos.h (MSDOS_LIBS_SYSTEM): Remove.
188
189 2010-05-10 Eli Zaretskii <eliz@gnu.org>
190
191 * xdisp.c (init_iterator): Don't turn on bidi reordering in
192 unibyte buffers. See
193 http://lists.gnu.org/archive/html/emacs-devel/2010-05/msg00263.html.
194
195 2010-05-10 Glenn Morris <rgm@gnu.org>
196
197 * Makefile.in (LIBS_SYSTEM): Set using configure, not cpp.
198 (LIBS_SYSTEM) [MSDOS]: Reset with MSDOS_LIBS_SYSTEM.
199 (LIBES): Use LIBS_SYSTEM as a variable.
200 * s/msdos.h (LIBS_SYSTEM): Rename to MSDOS_LIBS_SYSTEM. Always define.
201 * s/aix4-2.h (LIBS_SYSTEM):
202 * s/freebsd.h (LIBS_SYSTEM):
203 * s/hpux10-20.h (LIBS_SYSTEM):
204 * s/sol2-6.h (LIBS_SYSTEM):
205 * s/unixware.h (LIBS_SYSTEM):
206 Move to configure.
207
208 * s/aix4-2.h (MAIL_USE_LOCKF):
209 * s/bsd-common.h (MAIL_USE_FLOCK):
210 * s/darwin.h (MAIL_USE_FLOCK):
211 * s/gnu-linux.h (MAIL_USE_FLOCK):
212 * s/irix6-5.h (MAIL_USE_FLOCK):
213 * s/template.h (MAIL_USE_FLOCK):
214 Move to configure.
215
216 2010-05-08 Chong Yidong <cyd@stupidchicken.com>
217
218 * Version 23.2 released.
219
220 2010-05-08 Andreas Schwab <schwab@linux-m68k.org>
221
222 * composite.c (autocmp_chars): Save point as marker before calling
223 auto-composition-function (Bug#5984).
224
225 * lisp.h (restore_point_unwind): Add prototype.
226
227 * fileio.c (restore_point_unwind): Remove static attribute.
228
229 2010-05-08 Kenichi Handa <handa@m17n.org>
230
231 * ftfont.c (M17N_FLT_USE_NEW_FEATURE): Define it if we can use the
232 new feature of libotf and m17n-flt.
233 (ftfont_check_otf) [M17N_FLT_USE_NEW_FEATURE]:
234 Call OTF_check_features even if no specific feature is given.
235 (PACK_OTF_TAG) [M17N_FLT_USE_NEW_FEATURE]: New macro.
236 (ftfont_drive_otf) [M17N_FLT_USE_NEW_FEATURE]: Handle the case
237 that OUT is NULL. Use OTF_drive_gsub_with_log and
238 OTF_drive_gpos_with_log instead of OTF_drive_gsub and
239 OTF_drive_gpos.
240 (ftfont_try_otf) [M17N_FLT_USE_NEW_FEATURE]: New function.
241 (ftfont_shape_by_flt) [M17N_FLT_USE_NEW_FEATURE]:
242 Setup mflt_enable_new_feature and mflt_try_otf.
243
244 2010-05-08 Jan Djärv <jan.h.d@swipnet.se>
245
246 * xsettings.c (Ftool_bar_get_system_style): Correct comment.
247
248 * gtkutil.c (xg_pack_tool_bar): Change show_all to show for handle
249 box and toolbar (Bug #6139).
250 (xg_create_tool_bar): Remove comment (Bug #6139).
251 (xg_make_tool_item): Remove gtk_widget_show_all (Bug #6139).
252 (xg_show_toolbar_item): Add gtk_widget_show for weventbox (Bug #6139).
253
254 2010-05-08 Juanma Barranquero <lekktu@gmail.com>
255
256 * makefile.w32-in ($(BLD)/eval.$(O), $(BLD)/w32fns.$(O)):
257 Update dependencies.
258
259 2010-05-08 Eli Zaretskii <eliz@gnu.org>
260
261 * fringe.c (update_window_fringes): Set up truncation bitmaps for
262 R2L lines.
263
264 2010-05-08 Glenn Morris <rgm@gnu.org>
265
266 * Makefile.in (THIS_IS_MAKEFILE): Remove, unused.
267
268 * Makefile.in (LIBS_TERMCAP): Set with configure, not cpp.
269 (TERMCAP_OBJ): New, set by configure, replacing termcapobj.
270 (termcapobj): Replace with TERMCAP_OBJ.
271 (otherobj): Use $TERMCAP_OBJ instead of $termcapobj.
272 (LIBES): Use LIBS_TERMCAP as a variable.
273
274 * s/freebsd.h (osreldate.h): No longer include, since this file
275 does not use __FreeBSD_version any more.
276
277 * s/aix4-2.h (TERMINFO):
278 * s/cygwin.h (TERMINFO):
279 * s/darwin.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
280 * s/freebsd.h (TERMINFO, LIBS_TERMCAP):
281 * s/gnu-linux.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
282 * s/gnu.h (TERMINFO, LIBS_TERMCAP) [HAVE_LIBNCURSES]:
283 * s/hpux10-20.h (TERMINFO, LIBS_TERMCAP):
284 * s/irix6-5.h (TERMINFO):
285 * s/netbsd.h (LIBS_TERMCAP):
286 * s/openbsd.h (TERMINFO, LIBS_TERMCAP):
287 * s/sol2-6.h (LIBS_TERMCAP) [!TERMINFO]:
288 * s/usg5-4.h (TERMINFO):
289 Move to configure.
290
291 2010-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
292
293 * eval.c (unbind_to): Don't unbind a local binding into the global
294 binding when the local binding disappeared. Inversely, don't unbind
295 a global binding into a newly created local binding.
296 * data.c (set_internal): Make its `buf' arg into a `where' arg so we
297 can specify the frame to use, when applicable. Adjust callers.
298
299 2010-05-07 Vincent Belaïche <vincent.belaiche@gmail.com>
300 Stefan Monnier <monnier@iro.umontreal.ca>
301
302 * floatfns.c (Fisnan, Fcopysign, Ffrexp, Fldexp): New functions.
303
304 2010-05-07 Eli Zaretskii <eliz@gnu.org>
305
306 * w32fns.c: Include w32.h.
307 (Fw32_shell_execute): Decode the error message before passing it
308 to `error'. (Bug#6126)
309
310 * msdos.c (dos_set_window_size):
311 * w16select.c (Fx_selection_exists_p): Use `Fsymbol_value (foo)'
312 instead of `XSYMBOL (foo)->value'.
313
314 2010-05-07 Eli Zaretskii <eliz@gnu.org>
315
316 Fix the MS-DOS build, broken by autoconfiscation.
317
318 * Makefile.in: Don't use Make-style comments past the "start of
319 cpp stuff" line.
320 (MSDOS_OBJ): Remove xmenu.o (it is now defined by XMENU_OBJ).
321
322 * s/msdos.h (UNEXEC): Don't define (@unexec@ in Makefile.in is
323 edited directly by msdos/sed1v2.inp).
324
325 2010-05-07 Glenn Morris <rgm@gnu.org>
326
327 * Makefile.in (LD_SWITCH_SYSTEM): Set with configure, not cpp.
328 (LD_SWITCH_SYSTEM_EXTRA): New variable, set by configure.
329 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM and $LD_SWITCH_SYSTEM_EXTRA,
330 move out of cpp section.
331 * s/freebsd.h (LD_SWITCH_SYSTEM):
332 * s/gnu-linux.h (LD_SWITCH_SYSTEM):
333 * s/netbsd.h (LD_SWITCH_SYSTEM):
334 * s/openbsd.h (LD_SWITCH_SYSTEM): Move to configure.in.
335
336 2010-05-07 Dan Nicolaescu <dann@ics.uci.edu>
337
338 Define LIB_STANDARD and START_FILES using autoconf.
339 * s/usg5-4.h (LIB_STANDARD):
340 * s/netbsd.h (START_FILES):
341 * s/irix6-5.h (LIB_STANDARD):
342 * s/hpux10-20.h (LIB_STANDARD, START_FILES):
343 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
344 * s/freebsd.h (START_FILES):
345 * s/darwin.h (START_FILES):
346 * s/cygwin.h (START_FILES):
347 * s/aix4-2.h (LIB_STANDARD):
348 * m/ibmrs6000.h (START_FILES): Remove, move logic to configure.in.
349 * Makefile.in (STARTFILES): Rename to START_FILES, define using
350 autoconf, not cpp.
351
352 2010-05-06 Dan Nicolaescu <dann@ics.uci.edu>
353
354 Remove NEED_BSDTTY and NEED_UNISTD_H.
355 * s/hpux10-20.h (NEED_BSDTTY): Remove.
356 * s/aix4-2.h (NEED_UNISTD_H): Remove.
357 * systty.h: Simplify conditionals for including <sys/bsdtty.h>,
358 <sys/ptyio.h> and <unistd.h>.
359
360 * emacs.c (main): Remove NO_DIR_LIBRARY conditional, unused.
361
362 * Makefile.in (STARTFILES): Conditionally define to make the usage clear.
363 * s/gnu.h (START_FILES): Remove empty definition.
364
365 2010-05-06 Jan Djärv <jan.h.d@swipnet.se>
366
367 * xterm.c (x_draw_image_relief): Move declaration of extra to beginning.
368
369 2010-05-06 Glenn Morris <rgm@gnu.org>
370
371 * Makefile.in (CPP, LN_S): Remove unused variables.
372
373 2010-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
374
375 * syntax.c (Fchar_syntax): Check the arg is a character (bug#6080).
376
377 2010-05-05 Lawrence Mitchell <wence@gmx.li>
378
379 * m/sparc.h: Fix typo in earlier change.
380
381 2010-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
382
383 Misc tweaks.
384 * eval.c (Fdefvaralias): Remove unintended nested if.
385 (internal_condition_case_2, internal_condition_case_n): Use ANSI type.
386
387 2010-05-04 Bernhard Herzog <bh@intevation.de> (tiny change)
388
389 * xsmfns.c (smc_save_yourself_CB): strlen(client_id) => strlen(cwd).
390
391 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
392
393 Remove BSD_PGRPS.
394 * s/bsd-common.h (BSD_PGRPS): Remove undef.
395 * s/gnu-linux.h (BSD_PGRPS): Remove.
396 * term.c (dissociate_if_controlling_tty):
397 * sysdep.c (narrow_foreground_group, widen_foreground_group)
398 (init_sys_modes, reset_sys_modes):
399 * emacs.c (main):
400 * callproc.c (Fcall_process, child_setup): Remove code depending
401 on BSD_PGRPS.
402
403 Remove POSIX_SIGNALS.
404 * s/usg5-4.h (POSIX_SIGNALS):
405 * s/netbsd.h (POSIX_SIGNALS):
406 * s/msdos.h (POSIX_SIGNALS):
407 * s/ms-w32.h (POSIX_SIGNALS):
408 * s/hpux11.h (POSIX_SIGNALS):
409 * s/gnu.h (POSIX_SIGNALS):
410 * s/gnu-linux.h (POSIX_SIGNALS):
411 * s/freebsd.h (POSIX_SIGNALS):
412 * s/darwin.h (POSIX_SIGNALS):
413 * s/cygwin.h (POSIX_SIGNALS):
414 * s/aix4-2.h (POSIX_SIGNALS): Remove definition.
415 * s/unixware.h:
416 * s/sol2-6.h: Remove comments on POSIX_SIGNALS.
417 * process.c (create_process):
418 * syssignal.h:
419 * sysdep.c (wait_for_termination, init_signals):
420 * process.c (create_process):
421 * msdos.c: POSIX_SIGNALS is always defined on all platforms,
422 remove all code that assumes the contrary.
423
424 2010-05-04 Glenn Morris <rgm@gnu.org>
425
426 * s/gnu-linux.h (LD_SWITCH_SYSTEM): Use LD_SWITCH_X_SITE_AUX as a shell
427 variable.
428 * s/netbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
429 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH.
430 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Remove.
431 (LD_SWITCH_SYSTEM): Use $LD_SWITCH_X_SITE_AUX_RPATH instead of
432 LD_SWITCH_SYSTEM_tmp.
433 * Makefile.in (LD_SWITCH_X_SITE_AUX, LD_SWITCH_X_SITE_AUX_RPATH):
434 New variables, set by configure.
435
436 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
437 * s/darwin.h (HEADERPAD_EXTRA, LIBS_NSGUI): Remove.
438 (LD_SWITCH_SYSTEM_TEMACS): Move to configure.in.
439 * Makefile.in (LD_SWITCH_SYSTEM_TEMACS): New variable, set by configure.
440 (TEMACS_LDFLAGS): Use $LD_SWITCH_SYSTEM_TEMACS.
441
442 * s/aix4-2.h (C_SWITCH_SYSTEM):
443 * m/alpha.h (C_SWITCH_MACHINE):
444 Move to configure.in.
445 * Makefile.in (C_SWITCH_MACHINE, C_SWITCH_SYSTEM):
446 New variables, set by configure.
447 (ALL_CFLAGS): Use $C_SWITCH_MACHINE and $C_SWITCH_SYSTEM in place of
448 $c_switch_machine and $c_switch_system.
449
450 2010-05-04 Dan Nicolaescu <dann@ics.uci.edu>
451
452 * s/hpux10-20.h (LIB_STANDARD): New definition.
453 * Makefile.in (ORDINARY_LINK): Remove setting LIB_STANDARD based
454 on it, not used anymore.
455
456 2010-05-03 Chong Yidong <cyd@stupidchicken.com>
457
458 * eval.c (internal_condition_case_n): Rename from
459 internal_condition_case_2.
460 (internal_condition_case_2): New function.
461
462 * xdisp.c (safe_call): Use internal_condition_case_n.
463
464 * fileio.c (Fdelete_file, internal_delete_file): New arg FORCE.
465 (internal_delete_file, Frename_file): Callers changed.
466
467 * buffer.c (Fkill_buffer):
468 * callproc.c (delete_temp_file): Callers changed (Bug#6070).
469
470 * lisp.h: Update prototypes.
471
472 2010-05-03 Glenn Morris <rgm@gnu.org>
473
474 * Makefile.in (LIBX_EXTRA, LIBX_BASE): New variables.
475 (LIBXT_OTHER, LIBX_OTHER): New, set by configure.
476 (LIBXT): Set with configure, not cpp.
477 (LIBX): Remove.
478 (LIBES): Replace $LIBX with $LIBX_BASE and $LIBX_OTHER.
479
480 2010-05-02 Dan Nicolaescu <dann@ics.uci.edu>
481
482 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Remove.
483 The FreeBSD is not needed, the default works, Solaris version is
484 not needed, and the remaining case is not supported by configure.
485
486 2010-05-02 Jan Djärv <jan.h.d@swipnet.se>
487
488 * xsmfns.c (CHDIR_OPT): New define.
489 (smc_save_yourself_CB): Add CHDIR_OPT to options to use when
490 restarting emacs.
491
492 * xterm.c (x_connection_closed): Call Fkill_emacs instead of
493 shut_down_emacs.
494
495 * emacs.c (USAGE1): Mention --chdir.
496 (main): Handle --chdir.
497 (standard_args): Add --chdir.
498 (fatal_error_signal): Call Fkill_emacs for SIGTERM and SIGHUP (Bug
499 #5552).
500
501 2010-05-01 Dan Nicolaescu <dann@ics.uci.edu>
502
503 Remove LD_SWITCH_MACHINE.
504 * Makefile.in (LD_SWITCH_MACHINE): Remove definition, unused.
505 (TEMACS_LDFLAGS): Do not use LD_SWITCH_MACHINE.
506
507 Clean up IRIX code.
508 * m/iris4d.h (TERMINFO, FIRST_PTY_LETTER): Move definitions ...
509 * s/irix6-5.h (TERMINFO, FIRST_PTY_LETTER): ... here.
510
511 Clean up AIX code.
512 * m/ibmrs6000.inp: Remove file, unused.
513 * m/ibmrs6000.h (IBMR2AIX): Remove, unused.
514 (LD_SWITCH_MACHINE): Rename to LD_SWITCH_SYSTEM_TEMACS, and move
515 definition ...
516 * s/aix4-2.h (LD_SWITCH_SYSTEM_TEMACS): ... here.
517
518 * sysdep.c (child_setup_tty, init_sys_modes): Remove !IBMR2AIX code,
519 unused.
520
521 2010-05-01 Eli Zaretskii <eliz@gnu.org>
522
523 Emulate POSIX_SIGNALS on MS-Windows.
524
525 * s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
526 (SIG_SETMASK, SIG_UNBLOCK): Define.
527
528 * sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
529 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
530 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
531
532 * w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask):
533 New stubs.
534
535 Miscellaneous fixes of bidi display.
536
537 * xdisp.c (find_row_end): New function, refactored from display_line.
538 (display_line): Use it.
539 (extend_face_to_end_of_line): In almost-filled rows, extend only
540 if the row is R2L and not continued.
541 (display_line): Fix prepending of truncation glyphs to R2L rows.
542 Preserve overlay and string info in row->end.
543 (insert_left_trunc_glyphs): Support addition of left truncation
544 glyphs to R2L rows.
545 (set_cursor_from_row): Don't place cursor on the vertical border
546 glyph between adjacent windows. Fix a crash when a display string
547 is continued to the next line. Don't return zero if cursor was
548 found by `cursor' property of a display string.
549 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
550 test for that explicitly.
551
552 2010-05-01 Glenn Morris <rgm@gnu.org>
553
554 * Makefile.in (gmallocobj, rallocobj, vmlimitobj): Initialize to null,
555 for clarity.
556 (OTHER_OBJ): Remove.
557 (PRE_ALLOC_OBJ, POST_ALLOC_OBJ): New, set by configure.
558 (otherobj): Use PRE_ALLOC_OBJ, POST_ALLOC_OBJ rather than OTHER_OBJ.
559
560 2010-05-01 Karel Klíč <kklic@redhat.com>
561
562 * fileio.c (Ffile_selinux_context): Context functions may return null.
563
564 2010-04-30 Dan Nicolaescu <dann@ics.uci.edu>
565
566 * s/gnu.h (POSIX_SIGNALS, START_FILES): New definitions.
567
568 2010-04-30 Glenn Morris <rgm@gnu.org>
569
570 * Makefile.in (vmlimitobj) [!SYSTEM_MALLOC]: New variable. (Bug#6065)
571 (OTHER_OBJ): Define as a separate variable, for clarity.
572
573 2010-04-30 Jan Djärv <jan.h.d@swipnet.se>
574
575 * xsettings.c: include limits.h and update file comment.
576
577 2010-04-30 Glenn Morris <rgm@gnu.org>
578
579 * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]:
580 Set with configure, not cpp.
581 (LIBW): Remove, replace with $TOOLKIT_LIBW.
582
583 * Makefile.in (mallocobj): Remove.
584 (otherobj): Simplify using @OTHER_OBJ@.
585
586 * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o)
587 (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o):
588 Don't bother making nsgui.h dependency platform-specific.
589
590 * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency.
591
592 2010-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
593
594 * process.c (read_process_output, exec_sentinel): Don't burp if the
595 sentinel/filter kills the current buffer (bug#6060).
596
597 Fix wrong-docstring problem introduced with hash-consing. (Bug#6008)
598 * eval.c (Fautoload): Set doc to a unique number rather than to 0.
599 Remove unused var `args'.
600 * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove.
601 (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers.
602 * doc.c (store_function_docstring): Use XSETCAR.
603
604 2010-04-28 Glenn Morris <rgm@gnu.org>
605
606 * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables.
607 (WINDOW_SUPPORT) [HAVE_WINDOW_SYSTEM]: Use them.
608
609 * Makefile.in (CYGWIN_OBJ): Set with configure, not cpp.
610
611 * Makefile.in (GPM_MOUSE_SUPPORT): New, set by configure.
612 (MOUSE_SUPPORT) [!HAVE_MOUSE]: Use $GPM_MOUSE_SUPPORT.
613
614 * Makefile.in (FONT_OBJ): New, set by configure.
615 (FONT_DRIVERS): Use $FONT_OBJ.
616
617 * Makefile.in (LIBXMU): Set with configure, not cpp.
618 * s/aix4-2.h (LIBXMU):
619 * s/hpux10-20.h (LIBXMU):
620 Remove definition, now set in configure.
621
622 * Makefile.in (NS_OBJ, NS_SUPPORT): Set with configure, not cpp.
623
624 * m/amdx86-64.h [i386]: Move this test to configure.in.
625
626 2010-04-27 Glenn Morris <rgm@gnu.org>
627
628 * Makefile.in (LIBXTR6): Set with configure, not cpp.
629 * s/unixware.h (NEED_LIBW): Remove definition.
630
631 * Makefile.in (LUCID_LIBW, MOTIF_LIBW): Remove, replacing by...
632 (TOOLKIT_LIBW): New, set by configure.
633 (@X_TOOLKIT_TYPE@): No longer define it.
634
635 * Makefile.in (LIBXP): Remove, since included in MOTIF_LIBW.
636 (MOTIF_LIBW): Set with configure, not cpp.
637 * s/aix4-2.h (LIB_MOTIF):
638 * s/gnu-linux.h (LIB_MOTIF):
639 * s/unixware.h (LIB_MOTIF): Move to configure.in.
640
641 2010-04-27 Dan Nicolaescu <dann@ics.uci.edu>
642
643 Reduce CPP usage.
644 * Makefile.in (LIB_X11_LIB): Remove, inline in the only user.
645 (obj): Use autoconf for unexec instead of cpp.
646 (C_SWITCH_SYSTEM, C_SWITCH_MACHINE, C_SWITCH_X_SITE): Remove
647 definitions and undefs. Inline definitions in the only user.
648 (ALL_CFLAGS): Substitute C_SWITCH_X_SYSTEM using autoconf.
649
650 2010-04-27 Glenn Morris <rgm@gnu.org>
651
652 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around,
653 since the defaults (set by the system file) are fine in most cases.
654 [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections.
655 * m/ibms390x.h (START_FILES, LIB_STANDARD):
656 * m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]:
657 * m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]:
658 Remove definitions, since they are set correctly in s/gnu-linux.h.
659 * s/freebsd.h (START_FILES, LIB_STANDARD):
660 * s/gnu-linux.h (START_FILES, LIB_STANDARD):
661 * s/hpux10-20.h (START_FILES):
662 * s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1):
663 Use $CRT_DIR in place of fixed /usr/lib, /lib directories.
664
665 * Makefile.in (LIBXP, LUCID_LIBW, WIDGET_OBJ): Set via configure.
666 (MOTIF_LIBW): Use $LIBXP.
667 (otherobj): Use $WIDGET_OBJ.
668
669 2010-04-26 Dan Nicolaescu <dann@ics.uci.edu>
670
671 * Makefile.in (LIBS_MACHINE): Remove, unused.
672
673 Use autoconf instead of cpp for LIB_MATH.
674 * s/darwin.h (LIB_MATH): Do not define here, move to configure.
675 * s/cygwin.h (LIB_MATH): Likewise.
676 * Makefile.in (LIB_MATH): Do not define with cpp.
677 (LIBES): Use autoconf for LIB_MATH.
678
679 2010-04-26 Kenichi Handa <handa@m17n.org>
680
681 * composite.c (Ffind_composition_internal): Fix the return value
682 for an automatic composition.
683
684 2010-04-25 Dan Nicolaescu <dann@ics.uci.edu>
685
686 Remove all NO_ARG_ARRAY uses.
687 * fns.c (concat2, concat3, nconc2):
688 * eval.c (apply1, call1, call2, call3, call4, call5, call6)
689 (call7): Remove NO_ARG_ARRAY usage, assume it's always true.
690 * m/xtensa.h (NO_ARG_ARRAY):
691 * m/template.h (NO_ARG_ARRAY):
692 * m/sparc.h (NO_ARG_ARRAY):
693 * m/sh3.h (NO_ARG_ARRAY):
694 * m/mips.h (NO_ARG_ARRAY):
695 * m/macppc.h (NO_ARG_ARRAY):
696 * m/iris4d.h (NO_ARG_ARRAY):
697 * m/intel386.h (NO_ARG_ARRAY):
698 * m/ibms390x.h (NO_ARG_ARRAY):
699 * m/ibms390.h (NO_ARG_ARRAY):
700 * m/ibmrs6000.h (NO_ARG_ARRAY):
701 * m/ia64.h (NO_ARG_ARRAY):
702 * m/hp800.h (NO_ARG_ARRAY):
703 * m/arm.h (NO_ARG_ARRAY):
704 * m/amdx86-64.h (NO_ARG_ARRAY):
705 * m/alpha.h (NO_ARG_ARRAY): Remove definition.
706
707 2010-04-25 Eli Zaretskii <eliz@gnu.org>
708
709 * xdisp.c (display_line): Don't assume 2nd call to
710 get_next_display_element cannot return zero. (Bug#6030)
711 (iterate_out_of_display_property): New function, body from pop_it.
712 (pop_it): Use it.
713
714 2010-04-24 Glenn Morris <rgm@gnu.org>
715
716 * m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
717 For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
718 (START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
719 since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
720
721 2010-04-24 Eli Zaretskii <eliz@gnu.org>
722
723 * xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
724 use `get_next_display_element' and `set_iterator_to_next' to
725 advance to the next character, when looking for the character that
726 begins the next row.
727
728 * .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
729 definition of "struct Lisp_Symbol".
730
731 2010-04-24 Glenn Morris <rgm@gnu.org>
732
733 * Makefile.in (CRT_DIR): New variable, set by configure.
734 * m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
735 Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
736
737 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
738
739 * Makefile.in: Remove C_SWITCH_X_MACHINE, unused.
740
741 * s/cygwin.h (LIBS_DEBUG): Remove, unused.
742
743 Remove redundant flags.
744 * s/freebsd.h (C_SWITCH_SYSTEM):
745 * s/hpux10-20.h (C_SWITCH_X_SYSTEM, LD_SWITCH_X_DEFAULT):
746 * s/netbsd.h (C_SWITCH_SYSTEM):
747 * s/openbsd.h (LD_SWITCH_X_DEFAULT): Remove, configure takes care
748 of these.
749
750 Simplify m/intel386.h.
751 * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only
752 user: ecrt0.c.
753 (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused.
754 (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to
755 the only user: s/unixware.h.
756 * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition
757 from m/intel386.h.
758 * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions
759 moved here from m/intel386.h.
760
761 * m/mips.h: Remove #if 0 code.
762
763 2010-04-23 Eli Zaretskii <eliz@gnu.org>
764
765 Fix display of composed characters from L2R scripts in bidi buffers.
766 * xdisp.c (set_iterator_to_next, next_element_from_composition):
767 After advancing IT past the composition, resync the bidi iterator
768 with IT's position. (Bug#5977)
769
770 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
771
772 * Makefile.in (LD_SWITCH_MACHINE_TEMACS): Remove, unused.
773 (TEMACS_LDFLAGS): Don't use LD_SWITCH_SYSTEM_TEMACS.
774
775 2010-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
776
777 * gtkutil.c: Include xsettings.h for Ftool_bar_get_system_style.
778
779 2010-04-23 Eli Zaretskii <eliz@gnu.org>
780
781 Support `display' text properties and overlay strings in bidi buffers.
782 * xdisp.c (pop_it): When the stack is popped after displaying
783 from a string, bidi-iterate to exit from the text portion covered
784 by the `display' property or overlay. (Bug#5988, bug#5920)
785
786 2010-04-23 Dan Nicolaescu <dann@ics.uci.edu>
787
788 * m/macppc.h (LD_SWITCH_SYSTEM_TEMACS): Remove #undef.
789 (LD_SWITCH_MACHINE_TEMACS): Remove, configure sets nocombreloc.
790
791 * s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
792 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.
793
794 Simplify STARTFILES definition.
795 * s/hpux10-20.h (START_FILES): Explicitly define here instead of
796 relying on Makefile.in to define it.
797 * s/cygwin.h (START_FILES): Likewise.
798 * Makefile.in (STARTFILES): Remove conditional code, not needed anymore.
799
800 Clean up Solaris code.
801 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
802 (LIB_MOTIF): Remove, configure takes care of this.
803 (NOT_USING_MOTIF): Remove, unused.
804 * xrdb.c: Remove #if 0-ed #include.
805 (SYSV): Remove conditional for old SysV.
806 * sysdep.c (closedir): Remove conditional code for Solaris,
807 Solaris has closedir.
808
809 2010-04-22 Jan Djärv <jan.h.d@swipnet.se>
810
811 * xsettings.c (read_and_apply_settings): Check if current_font is
812 NULL before strcmp (Bug#6001).
813
814 2010-04-21 Dan Nicolaescu <dann@ics.uci.edu>
815
816 Clean up HP-UX files.
817 * m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
818 (DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
819 (LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
820 * s/hpux10-20.h: ... to the only user, here.
821
822 2010-04-21 Eli Zaretskii <eliz@gnu.org>
823
824 * bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
825 use buffer-local values of paragraph-start and paragraph-separate.
826 <paragraph_start_re, paragraph_separate_re>: Rename from
827 fallback_paragraph_start_re and fallback_paragraph_separate_re.
828 (Bug#5992)
829
830 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
831
832 * xsettings.c: Qmonospace_font_name, Qtool_bar_style and
833 current_tool_bar_style are new.
834 (store_config_changed_event): Rename from store_font_changed_event.
835 (XSETTINGS_TOOL_BAR_STYLE): New define.
836 (SEEN_FONT, SEEN_TB_STYLE): New enum values.
837 (struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
838 HAVE_XFT.
839 (something_changedCB): store_font_changed_event is now
840 store_config_changed_event
841 (parse_settings): Rename from parse_xft_settings. Read
842 non-xft xsettings outside #ifdef HAVE_XFT.
843 (read_settings): Renamed from read_xft_settings.
844 (apply_xft_settings): Take current settings as parameter. Do not
845 call read_(xft)_settings.
846 (read_and_apply_settings): New function.
847 (xft_settings_event): Do non-xft stuff out of HAVE_XFT. Call
848 read_and_apply_settings if there are settings to be read.
849 (init_xsettings): Renamed from init_xfd_settings.
850 Call read_and_apply_settings unconditionally.
851 (xsettings_initialize): Call init_xsettings.
852 (Ftool_bar_get_system_style): New function.
853 (syms_of_xsettings): Define Qmonospace_font_name and
854 Qtool_bar_style. Initialize current_tool_bar_style to nil.
855 defsubr Stool_bar_get_system_style. Fprovide on
856 dynamic-setting.
857 Move misplaced HAVE_GCONF
858
859 * xsettings.h (Ftool_bar_get_system_style): Declare.
860
861 * xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
862 Qtext, Qboth, Qboth_horiz are new.
863 (syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
864 Vtool_bar_style, tool_bar_max_label_size.
865
866 * lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.
867
868 * keyboard.c: QClabel is new.
869 (parse_tool_bar_item): Take out QClabel from tool bar items.
870 Try to construct a label if ther is no QClabel.
871 (syms_of_keyboard): Intern :label as QClabel.
872
873 * dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
874 (Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
875 New.
876
877 * Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
878 dynamic-setting.el.
879
880 * gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
881 (xg_make_tool_item, xg_show_toolbar_item): New function.
882 (update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
883 Call xg_make_tool_item to make a tool bar item.
884 Call xg_show_toolbar_item. Use wtoolbar instead of x->toolbar_widget.
885
886 * xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
887 into account for toolbars.
888
889 2010-04-21 Jan Djärv <jan.h.d@swipnet.se>
890
891 * data.c (make_blv): Declarations before code (Bug#5993).
892
893 2010-04-21 Glenn Morris <rgm@gnu.org>
894
895 * Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
896 Define using autoconf, not cpp.
897 (LIBXSM): New variable, set by autoconf.
898 (LIBXT): Use $LIBXSM.
899
900 2010-04-21 Dan Nicolaescu <local_user@dannlt>
901
902 Remove NOMULTIPLEJOBS, unused.
903 * s/template.h (NOMULTIPLEJOBS):
904 * s/msdos.h (NOMULTIPLEJOBS): Remove, unused.
905
906 Simplify LD_SWITCH_SYSTEM_TEMACS usage.
907 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
908 * s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
909 detects -znocombreloc and passes it to the linker
910 * s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.
911
912 2010-04-21 Glenn Morris <rgm@gnu.org>
913
914 * Makefile.in (LIBSELINUX_LIBS): Move out of #ifdef.
915
916 2010-04-21 Karel Klíč <kklic@redhat.com>
917
918 * Makefile.in (LIBSELINUX_LIBS): New.
919 (LIBES): Add $LIBSELINUX_LIBS.
920 * eval.c, lisp.h (call7): New function.
921 * fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
922 (Ffile_selinux_context, Fset_file_selinux_context):
923 New functions.
924 (Fcopy_file): New parameter preserve-selinux-context.
925 (Frename_file): Preserve selinux context when renaming by copy-file.
926
927 2010-04-21 Juanma Barranquero <lekktu@gmail.com>
928 Eli Zaretskii <eliz@gnu.org>
929
930 Don't depend on cm.c or termcap.c on Windows, use stubs.
931 * makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
932 ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
933 * w32console.c (current_tty, cost): New vars; lifted from cm.c.
934 (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
935 (sys_tputs, sys_tgetstr): New stubs.
936 * s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
937 (tputs, tgetstr): New; define to sys_*.
938
939 2010-04-20 Juanma Barranquero <lekktu@gmail.com>
940
941 * buffer.c (syms_of_buffer) <bidi-display-reordering>: Doc fix.
942
943 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
944
945 * data.c (Fmake_variable_buffer_local, Fmake_local_variable):
946 Just signal a warning rather than an error when inside a let.
947 (Fmake_variable_frame_local): Add the same test.
948
949 * font.c (syms_of_font): Make the style table vars read-only.
950
951 * buffer.h (struct buffer): Remove unused var `direction_reversed'.
952 * buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.
953
954 * bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.
955
956 2010-04-20 Eli Zaretskii <eliz@gnu.org>
957
958 Fix R2L paragraph display on TTY.
959
960 * xdisp.c (unproduce_glyphs): New function.
961 (display_line): Use it when produced glyphs are discarded from R2L
962 glyph rows.
963 (append_composite_glyph): In R2L rows, prepend the glyph rather
964 than appending it.
965
966 * term.c (append_composite_glyph): In R2L rows, prepend the glyph
967 rather than append it. Set up the resolved_level and bidi_type
968 attributes of the appended glyph.
969 (produce_special_glyphs): Mirror the backslash continuation
970 character in R2L lines.
971
972 Implement display of R2L paragraphs in GUI sessions.
973
974 * xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
975 append_stretch_glyph.
976 (set_cursor_from_row) <cursor_x>: Remove unused variable. Fix
977 off-by-one error in computing x at end of text in the row.
978 (append_stretch_glyph): In reversed row, prepend the glyph rather
979 than append it. Set resolved_level and bidi_type of the glyph.
980 (extend_face_to_end_of_line): If the row is reversed, prepend a
981 stretch glyph whose width is such that the rightmost glyph will be
982 drawn at the right margin of the window. Fix off-by-one error on
983 TTY frames in testing whether a line needs face extension. Fix
984 face extension at ZV. If this is the last glyph row, use
985 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
986 region face.
987 (set_cursor_from_row, display_line): Use
988 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
989 row->continuation_lines_width.
990 (next_element_from_buffer): Don't call bidi_paragraph_init if we
991 are at ZV. Fixes a crash when reseated to ZV by
992 try_window_reusing_current_matrix.
993 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
994 which happens with R2L glyph rows. Fixes a crash when inserting a
995 character at end of an R2L line.
996 (set_cursor_from_row): Don't be fooled by truncated rows: don't
997 treat them as having zero-width characters. Improve comments.
998 Don't reverse pos_before and pos_after for reversed glyph rows.
999 Set cursor.x to negative value when the cursor might be on the
1000 left fringe.
1001 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
1002 left fringe, not the right one.
1003 (notice_overwritten_cursor, draw_phys_cursor_glyph)
1004 (erase_phys_cursor): For reversed cursor_row, support cursor on
1005 the left fringe.
1006
1007 * fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
1008 of continuation indicators on the fringes.
1009 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
1010 left fringe.
1011
1012 * w32term.c (w32_draw_window_cursor): For reversed glyph rows,
1013 draw cursor on the left fringe.
1014
1015 * xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
1016 cursor on the left fringe.
1017
1018 * dispnew.c (update_text_area): Handle reversed desired rows when
1019 the cursor is on the left fringe.
1020 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
1021 below, not by 0, for when the cursor is on the left fringe.
1022
1023 2010-04-20 Jan Djärv <jan.h.d@swipnet.se>
1024
1025 * gtkutil.c (xg_event_is_for_scrollbar): Check if grabbed
1026 widget is a scrollbar.
1027
1028 2010-04-20 Kenichi Handa <handa@m17n.org>
1029
1030 * charset.c (char_charset): Consider Vcharset_non_preferred_head
1031 only when the arg CHARSET_LIST is nil.
1032
1033 2010-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1034
1035 Make variable forwarding explicit rather the using special values.
1036 Basically, this makes the structure of buffer-local values and object
1037 forwarding explicit in the type of Lisp_Symbols rather than use
1038 special Lisp_Objects for that. This tends to lead to slightly more
1039 verbose code, but is more C-like, simpler, and makes it easier to make
1040 sure we handled all cases, among other things by letting the compiler
1041 help us check it.
1042 * lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
1043 Removing forwarding objects.
1044 (enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
1045 (struct Lisp_Symbol): Make the various forms of variable-forwarding
1046 explicit rather than hiding them inside Lisp_Object "values".
1047 (XFWDTYPE): New macro.
1048 (XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
1049 (XBUFFER_LOCAL_VALUE): Remove.
1050 (SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
1051 (SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
1052 (SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
1053 (struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
1054 (struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
1055 Remove the Lisp_Misc_* header.
1056 (struct Lisp_Buffer_Local_Value): Redefine.
1057 (BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
1058 (struct Lisp_Misc_Any): Add filler to get the right size.
1059 (struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
1060 Lisp_Intfwd.
1061 (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
1062 (DEFVAR_KBOARD): Allocate a forwarding object.
1063 * data.c (do_blv_forwarding, store_blv_forwarding): New macros.
1064 (let_shadows_global_binding_p): New function.
1065 (union Lisp_Val_Fwd): New type.
1066 (make_blv): New function.
1067 (swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
1068 (store_symval_forwarding, swap_in_global_binding, Fboundp)
1069 (swap_in_symval_forwarding, find_symbol_value, Fset)
1070 (let_shadows_buffer_binding_p, set_internal, default_value)
1071 (Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
1072 (Fkill_local_variable, Fmake_variable_frame_local)
1073 (Flocal_variable_p, Flocal_variable_if_set_p)
1074 (Fvariable_binding_locus):
1075 * xdisp.c (select_frame_for_redisplay):
1076 * lread.c (Fintern, Funintern, init_obarray, defvar_int)
1077 (defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
1078 * frame.c (store_frame_param):
1079 * eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
1080 * bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
1081 value structure.
1082 * buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
1083 (clone_per_buffer_values): Only adjust markers into the current buffer.
1084 (reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
1085 (Fbuffer_local_value, set_buffer_internal_1)
1086 (swap_out_buffer_local_variables):
1087 Adapt to the new symbol value structure.
1088 (DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
1089 (defvar_per_buffer): Take a new arg for the fwd object.
1090 (buffer_lisp_local_variables): Return a proper alist (different fix
1091 for bug#4138).
1092 * alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
1093 (Fgarbage_collect): Don't handle buffer_defaults specially.
1094 (mark_object): Handle new symbol value structure rather than the old
1095 special Lisp_Misc_* objects.
1096 (gc_sweep) <symbols>: Free also the buffer-local-value objects.
1097 * term.c (set_tty_color_mode):
1098 * bidi.c (bidi_initialize): Don't access the ->value field directly.
1099 * buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
1100 a buffer_local_flags.
1101 * print.c (print_object): Get rid of impossible forwarding objects.
1102
1103 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1104
1105 * bidi.c (bidi_get_type, bidi_get_category)
1106 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
1107 (bidi_type_of_next_char, bidi_level_of_next_char):
1108 Declare static. Use `INLINE' rather than `inline'.
1109
1110 2010-04-19 Juanma Barranquero <lekktu@gmail.com>
1111
1112 * dired.c (Ffile_attributes): Fix typo in docstring.
1113
1114 2010-04-19 Adrian Robert <Adrian.B.Robert@gmail.com>
1115
1116 * nsmenu.m (EmacsDialog-runDialogAt:): Declare ret as
1117 NSInteger (Bug#5811).
1118
1119 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1120
1121 * s/darwin.h (PTY_ITERATION, PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF)
1122 (PTY_OPEN): New defines. Use openpty (Bug#726, Bug#5819).
1123
1124 2010-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1125
1126 * frame.h (FRAME_LINE_TO_PIXEL_Y): Add missing parenthesis.
1127
1128 2010-04-19 Chong Yidong <cyd@stupidchicken.com>
1129
1130 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1131 terminal frames (Bug#5837).
1132
1133 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1134
1135 * .gdbinit (xsubchartable): New command.
1136
1137 2010-04-19 Eli Zaretskii <eliz@gnu.org>
1138
1139 * xdisp.c (display_line): Don't write beyond the last glyph row in
1140 the desired matrix. Fixes a crash in "emacs -nw" (bug#5972), see
1141 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
1142 and
1143 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html
1144
1145 2010-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
1146
1147 * alloc.c (Fpurecopy): Hash-cons if requested.
1148 (syms_of_alloc): Update purify-flag docstring.
1149
1150 2010-04-18 Jan Djärv <jan.h.d@swipnet.se>
1151
1152 * gtkutil.c (xg_set_geometry): Set size in geometry string also.
1153 (x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).
1154
1155 2010-04-17 Eli Zaretskii <eliz@gnu.org>
1156
1157 Fix a crash when an NSM character is inserted at BEGV.
1158
1159 * bidi.c (bidi_init_it): Fix initialization of bidi_it->prev.
1160 (bidi_resolve_weak): Don't use prev.type_after_w1 if it is
1161 NEUTRAL_B or UNKNOWN_BT.
1162
1163 2010-04-16 Eli Zaretskii <eliz@gnu.org>
1164
1165 * xdisp.c (set_cursor_from_row): Don't consider possibility of
1166 other rows with cursor unless they are different from this row and
1167 this row is part of a continued line. (Bug#5943)
1168
1169 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu>
1170
1171 * s/freebsd.h: Restore osreldate.h include.
1172 Suggested by Naohiro Aota.
1173
1174 2010-04-16 Jan Djärv <jan.h.d@swipnet.se>
1175
1176 * xmenu.c (apply_systemfont_to_menu): *childs was incorrectly used.
1177
1178 2010-04-16 Ken Brown <kbrown@cornell.edu> (tiny change)
1179
1180 * s/cygwin.h: Avoid linking against static libgcc.
1181
1182 2010-04-15 Juri Linkov <juri@jurta.org>
1183
1184 * window.c: Add Qscroll_command.
1185 Remove Vscroll_preserve_screen_position_commands.
1186 (window_scroll_pixel_based, window_scroll_line_based): Check the
1187 `scroll-command' property on the last command instead of searching
1188 the last command in Vscroll_preserve_screen_position_commands.
1189 (syms_of_window): Initialize and staticpro `Qscroll_command'.
1190 Put Qscroll_command property on Qscroll_up and Qscroll_down.
1191 (scroll-preserve-screen-position): Doc fix.
1192 (Vscroll_preserve_screen_position_commands): Remove variable.
1193
1194 2010-04-15 Dan Nicolaescu <dann@ics.uci.edu>
1195
1196 * xdisp.c (message): Do not use NO_ARG_ARRAY.
1197
1198 2010-04-14 Dan Nicolaescu <dann@ics.uci.edu>
1199
1200 Reduce cpp use in Makefile.in.
1201 * Makefile.in (DBUS_CFLAGS, DBUS_LIBS, GCONF_CFLAGS, GCONF_LIBS)
1202 (LIBSOUND, CFLAGS_SOUND, RSVG_LIBS, RSVG_CFLAGS, INTERVALS_H)
1203 (GETLOADAVG_LIBS, RUN_TEMACS): Move to the autoconf section.
1204 (ORDINARY_LINK): Remove, defined in src/s/gnu.h.
1205 (CRT0_COMPILE): Remove, inline it in the only user.
1206
1207 2010-04-14 Juri Linkov <juri@jurta.org>
1208
1209 * window.c (keys_of_window): Rebind `C-v' from `scroll-up' to
1210 `scroll-up-command' and `M-v' from `scroll-down' to
1211 `scroll-down-command'.
1212
1213 2010-04-14 Juri Linkov <juri@jurta.org>
1214
1215 * window.c (Vscroll_preserve_screen_position_commands): New variable
1216 with the default value as the list of Qscroll_down and Qscroll_up.
1217 (window_scroll_pixel_based, window_scroll_line_based): Search the
1218 last command in the list Vscroll_preserve_screen_position_commands
1219 instead of comparing with Qscroll_up and Qscroll_down.
1220
1221 2010-04-13 Jan Djärv <jan.h.d@swipnet.se>
1222
1223 * gtkutil.c (xg_set_geometry): Set geometry for PPosition also.
1224 (x_wm_set_size_hint): Dont set position flags, gtk_window_parse_geometry
1225 does that.
1226
1227 * xfns.c (Fx_create_frame, x_create_tip_frame): Set default border width
1228 to zero.
1229
1230 2010-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1231
1232 * term.c (init_tty): Move common text outside of #ifdef TERMINFO.
1233
1234 Try to solve the problem of spurious EOF chars in long lines of text
1235 sent to interactive subprocesses.
1236 * sysdep.c (child_setup_tty): Do not enable ICANON any more.
1237 (system_process_attributes): Remove unused var `ttotal'.
1238 * process.c (send_process): Don't bother breaking long line with EOF
1239 chars when talking to ttys any more.
1240 (wait_reading_process_output): Output a warning when called in such
1241 a way that it could block without being interruptible.
1242
1243 Try to detect file modification within the same second.
1244 * buffer.h (struct buffer): New field modtime_size.
1245 * buffer.c (reset_buffer): Initialize it.
1246 * fileio.c (Finsert_file_contents, Fwrite_region): Set it.
1247 (Fverify_visited_file_modtime): Check it.
1248 (Fclear_visited_file_modtime, Fset_visited_file_modtime): Clear it.
1249 (Fset_visited_file_modtime): Set (or clear) it.
1250
1251 2010-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
1252
1253 * process.c (status_notify): Remove unused var `ro'.
1254
1255 2010-04-12 Jan Djärv <jan.h.d@swipnet.se>
1256
1257 * xfns.c (select_visual): Don't call error if XGetVisualInfo returns
1258 more than one visual (Bug#5938).
1259
1260 2010-04-12 Dan Nicolaescu <dann@ics.uci.edu>
1261
1262 * Makefile.in (C_SWITCH_SYSTEM,C_SWITCH_MACHINE,C_SWITCH_X_SITE):
1263 Undefine.
1264
1265 2010-04-11 Dan Nicolaescu <dann@ics.uci.edu>
1266
1267 Remove C_SWITCH_SYSTEM_TEMACS.
1268 * s/darwin.h (C_SWITCH_SYSTEM_TEMACS): Remove.
1269 (malloc, realloc, free): Use emacs, not temacs for conditional
1270 definition.
1271
1272 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Remove.
1273 (ALL_CFLAGS): Do not use C_SWITCH_SYSTEM_TEMACS.
1274
1275 Use autoconf, not cpp for some variables.
1276 * Makefile.in (C_SWITCH_SYSTEM, C_SWITCH_MACHINE)
1277 (C_SWITCH_X_SITE): Define using autoconf, not cpp.
1278 (ALL_CFLAGS): Use them as make variables.
1279 (really-lwlib, really-oldXMenu): Do not pass them.
1280
1281 2010-04-11 Jan Djärv <jan.h.d@swipnet.se>
1282
1283 * xmenu.c (apply_systemfont_to_dialog): New.
1284 (create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.
1285
1286 2010-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
1287
1288 * process.c (exec_sentinel): Preserve current-buffer.
1289
1290 * process.c (read_process_output): Move the save-current-buffer to
1291 apply to both the filter and the non-filter branches.
1292
1293 2010-04-10 Dan Nicolaescu <dann@ics.uci.edu>
1294
1295 * s/msdos.h (UNEXEC): New definition.
1296
1297 2010-04-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1298
1299 * dispextern.h (TRY_WINDOW_CHECK_MARGINS)
1300 (TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
1301
1302 * xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
1303 Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
1304 set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
1305 TRY_WINDOW_CHECK_MARGINS.
1306
1307 * xfns.c (Fx_show_tip): Undo last change. Call try_window with
1308 TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423). Subtract last glyph's
1309 width only when it is for padding.
1310
1311 2010-04-09 Jan Djärv <jan.h.d@swipnet.se>
1312
1313 * xfns.c (Fx_show_tip): Call try_window in a loop until
1314 fonts_changed_p is zero (Bug#2423).
1315
1316 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1317
1318 * xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
1319 the end of TEXT_AREA. (Bug#5856)
1320
1321 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1322
1323 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of
1324 HAVE_GCONF.
1325
1326 2010-04-08 Eli Zaretskii <eliz@gnu.org>
1327
1328 * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
1329 prev.orig_type, for resolving type of NSM. (Bug#5858)
1330
1331 2010-04-08 Jan Djärv <jan.h.d@swipnet.se>
1332
1333 * xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
1334 (parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
1335 in current_font.
1336 (init_gconf): Read value of SYSTEM_FONT and save it in current_font.
1337 (Ffont_get_system_normal_font, xsettings_get_system_normal_font):
1338 New functions.
1339 (syms_of_xsettings): Initialize current_font.
1340 defsubr Sfont_get_system_normal_font.
1341
1342 * xsettings.h (Ffont_get_system_normal_font,
1343 xsettings_get_system_normal_font): Declare.
1344
1345 * xfns.c (extern xlwmenu_default_font): Remove.
1346 (Fx_create_frame): Remove setting of xlwmenu_default_font, moved
1347 to xlwmenu.c.
1348
1349 * menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
1350 menu items in UTF-8.
1351
1352 * xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
1353 (apply_systemfont_to_menu): New function.
1354 (set_frame_menubar, create_and_show_popup_menu): Call
1355 apply_systemfont_to_menu.
1356
1357 2010-04-07 Jan Djärv <jan.h.d@swipnet.se>
1358
1359 * frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
1360 FRAME_LINE_TO_PIXEL_Y.
1361
1362 * xterm.c (x_set_window_size_1): Don't add border_width/height to
1363 pixelwidth/height.
1364
1365 2010-04-07 Dan Nicolaescu <dann@ics.uci.edu>
1366
1367 Simplify code for HP machines.
1368 * m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
1369 for GNU_LINUX, not needed.
1370 (UNEXEC, NEED_BSDTTY): Move definitions...
1371 * s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
1372
1373 * m/iris4d.h (UNEXEC): Move definition ...
1374 * s/irix6-5.h (UNEXEC): ... here.
1375
1376 2010-04-04 Jan Djärv <jan.h.d@swipnet.se>
1377
1378 * xfns.c (set_machine_and_pid_properties): New function.
1379 (Fx_create_frame): Call set_machine_and_pid_properties.
1380
1381 2010-04-03 Eli Zaretskii <eliz@gnu.org>
1382
1383 * bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
1384 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
1385 BIDI_EOB. Fixes infloop with vertical cursor motion at ZV.
1386
1387 * w32fns.c (x_create_tip_frame): Copy `parms' before we modify it
1388 in this function. (Bug#5703)
1389
1390 2010-04-03 Chong Yidong <cyd@stupidchicken.com>
1391
1392 * nsterm.h: Fix last change.
1393
1394 2010-04-03 Dan Nicolaescu <dann@ics.uci.edu>
1395
1396 * m/intel386.h (NO_REMAP): Move definition ...
1397 * s/msdos.h (NO_REMAP): ... here.
1398
1399 * m/vax.h (CRT0_DUMMIES): Remove, unused.
1400
1401 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
1402 used on those platforms.
1403
1404 2010-04-02 Dan Nicolaescu <dann@ics.uci.edu>
1405
1406 Remove extern errno declarations.
1407 * xterm.c:
1408 * xrdb.c:
1409 * w32term.c:
1410 * unexec.c:
1411 * unexaix.c:
1412 * sysdep.c:
1413 * process.c:
1414 * lread.c:
1415 * keyboard.c:
1416 * floatfns.c:
1417 * filelock.c:
1418 * fileio.c:
1419 * emacs.c (main):
1420 * ecrt0.c:
1421 * dispnew.c:
1422 * callproc.c:
1423 * buffer.c: Remove errno extern declarations.
1424 * s/netbsd.h (NEED_ERRNO): Remove.
1425
1426 2010-04-01 Dan Nicolaescu <dann@ics.uci.edu>
1427
1428 Remove all uses of LIBX11_SYSTEM.
1429 * Makefile.in (LIBX11_SYSTEM): Remove.
1430 * s/msdos.h (LIBX11_SYSTEM): Do not define, define LIBS_SYSTEM
1431 instead.
1432
1433 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1434
1435 Remove support for DJGPP v1.x (bug#5813).
1436
1437 * w16select.c (__dpmi_int): Remove DJGPP v1.x compatibility.
1438 * s/msdos.h:
1439 * unexec.c (make_hdr, copy_text_and_data):
1440 * sysdep.c (wait_for_termination, sys_subshell):
1441 * msdos.c (dos_set_window_size, msdos_set_cursor_shape)
1442 (IT_set_terminal_modes, __write, _rename, gethostname)
1443 (gettimeofday, alarm, fork, kill, dos_ttraw, dos_ttcooked)
1444 (run_msdos_command, abort): Remove DJGPP v1.x code and tests of
1445 the value of __DJGPP__.
1446 (nice, pause, sigsetmask, sigblock): Remove DJGPP v1.x
1447 compatibility code.
1448 * lread.c:
1449 * gmalloc.c (memalign):
1450 * fileio.c (Fcopy_file, check_executable, Ffile_modes):
1451 * emacs.c (main):
1452 * dosfns.c (init_dosfns):
1453 * dired.c (file_name_completion_stat): Remove tests of __DJGPP__.
1454
1455 2010-04-01 Eli Zaretskii <eliz@gnu.org>
1456
1457 * xdisp.c (set_cursor_from_row): Fix cursor positioning when the
1458 string with `cursor' property comes from an `after-string'
1459 overlay. (Bug#5816)
1460
1461 2010-04-01 Glenn Morris <rgm@gnu.org>
1462
1463 * Makefile.in (LIBTIFF, LIBJPEG, LIBPNG, LIBGIF, LIBXPM, XFT_LIBS):
1464 Define as Makefile variables.
1465 (LIBX): Use above variables rather than directly using autoconf.
1466
1467 2010-03-31 Dan Nicolaescu <dann@ics.uci.edu>
1468
1469 Clean up BSD_SYSTEM use.
1470 * xterm.c:
1471 * process.c:
1472 * emacs.c: Use HAVE_SYS_IOCTL_H instead of BSD_SYSTEM as a guard
1473 for including <sys/ioctl.h>.
1474 * sysdep.c (wait_without_blocking): Remove BSD_SYSTEM case, this
1475 code is only used for MSDOS.
1476
1477 2010-03-31 Juri Linkov <juri@jurta.org>
1478
1479 * image.c: Add `Qextension_data'.
1480 (syms_of_image): Initialize and staticpro `Qextension_data'.
1481 (Fimage_metadata): Rename from `Fimage_extension_data'.
1482 (gif_load): Put GIF extension data to the property
1483 `Qextension_data'.
1484
1485 2010-04-05 Chong Yidong <cyd@stupidchicken.com>
1486
1487 * xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
1488 terminal frames (Bug#5837).
1489
1490 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1491
1492 * nsfns.m (ns_set_doc_edited): Remove unused arg OLDVAL.
1493 * nsterm.h: Fix prototype.
1494
1495 2010-03-31 Eli Zaretskii <eliz@gnu.org>
1496
1497 * xdisp.c (highlight_trailing_whitespace): Support highlight of
1498 trailing whitespace in right-to-left rows.
1499
1500 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1501
1502 Get rid of the direct_output optimizations.
1503 * keyboard.c (nonundocount): Remove extern declaration.
1504 (command_loop_1): Remove brittle optimisation for cheap and
1505 common operations.
1506 * xdisp.c (redisplay_internal): Don't bother checking
1507 redisplay_performed_directly_p any more.
1508 * sysdep.c (init_sys_modes): Don't call direct_output_forward_char
1509 any more.
1510 * dispnew.c (redisplay_performed_directly_p)
1511 (direct_output_for_insert, direct_output_forward_char):
1512 * dispextern.h (redisplay_performed_directly_p)
1513 (direct_output_for_insert, direct_output_forward_char): Remove.
1514 * cmds.c (nonundocount): Make it static.
1515
1516 2010-03-31 Bernhard Herzog <bh@intevation.de> (tiny change)
1517
1518 * menu.c (Fx_popup_menu): Use last_event_timestamp (Bug#4930).
1519
1520 2010-03-31 Jan Djärv <jan.h.d@swipnet.se>
1521
1522 * xdisp.c (note_mouse_highlight): Don't do highlight if pointer is
1523 invisible (Bug#5766).
1524
1525 2010-03-31 Adrian Robert <adrian.b.robert@gmail.com>
1526
1527 * xdisp.c (x_consider_frame_title, update_window_cursor):
1528 Remove HAVE_NS conditionals.
1529 (prepare_menu_bars) [HAVE_NS]: Call ns_set_doc_edited.
1530
1531 * nsfns.m (x_implicitly_set_name): If frame-title-format is t, use
1532 filename for the title.
1533 (ns_set_doc_edited): Do nothing if the selected window is a
1534 minibuffer window.
1535
1536 * nsterm.h: Add prototypes for ns_set_name_as_filename and
1537 ns_set_doc_edited.
1538
1539 * nsterm.m: Remove unneeded prototype.
1540
1541 2010-03-31 Glenn Morris <rgm@gnu.org>
1542
1543 * Makefile.in (SOME_MACHINE_OBJECTS): Ensure dbus stuff is always
1544 in the DOC file. (Bug#5336)
1545
1546 2010-03-31 Chong Yidong <cyd@stupidchicken.com>
1547
1548 * xdisp.c (pos_visible_p): Revert 2008-01-25 change (Bug#5730).
1549
1550 2010-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
1551
1552 * window.c (keys_of_window): Remove redundant/overridden bindings.
1553
1554 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1555
1556 * xdisp.c (BUFFER_POS_REACHED_P, move_it_in_display_line_to):
1557 Restore original behavior when the iterator is not bidi_p.
1558
1559 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1560
1561 * xdisp.c (syms_of_xdisp): Use intern_c_string instead of intern.
1562
1563 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1564
1565 * bidi.c (bidi_cache_iterator_state): Invalidate the cache if we
1566 are outside the range of cached character positions.
1567
1568 2010-03-30 Juanma Barranquero <lekktu@gmail.com>
1569
1570 * makefile.w32-in ($(BLD)/bidi.$(O)): Add dependency on w32gui.h.
1571
1572 2010-03-30 Eli Zaretskii <eliz@gnu.org>
1573
1574 Initial support for bidirectional editing.
1575
1576 * Makefile.in (obj): Include bidi.o.
1577 (bidi.o): New target.
1578
1579 * makefile.w32-in (OBJ1): Add $(BLD)/bidi.$(O).
1580 ($(BLD)/bidi.$(O)): New target.
1581
1582 * bidi.c: New file.
1583
1584 * buffer.h (struct buffer): New members bidi_display_reordering
1585 and bidi_paragraph_direction.
1586
1587 * buffer.c (init_buffer_once): Initialize bidi_display_reordering
1588 and bidi_paragraph_direction.
1589 (syms_of_buffer): Declare Lisp variables bidi-display-reordering
1590 and bidi-paragraph-direction.
1591 (Fbuffer_swap_text): Swap the values of
1592 bidi_display_reordering and bidi_paragraph_direction.
1593
1594 * dispextern.h (BIDI_MAXLEVEL, BIDI_AT_BASE_LEVEL): New macros.
1595 (bidi_type_t, bidi_dir_t): New types.
1596 (bidi_saved_info, bidi_stack, bidi_it): New structures.
1597 (struct it): New members bidi_p, bidi_it, paragraph_embedding,
1598 prev_stop, base_level_stop, and eol_pos.
1599 (bidi_init_it, bidi_get_next_char_visually): New prototypes.
1600 (IT_STACK_SIZE): Enlarge to 5.
1601 (struct glyph_row): New member reversed_p.
1602 <string_buffer_position>: Update prototype.
1603 (PRODUCE_GLYPHS): Set the reversed_p flag in the iterator's
1604 glyph_row if bidi_it.paragraph_dir == R2L.
1605 (struct glyph): New members resolved_level and bidi_type.
1606
1607 * dispnew.c (direct_output_forward_char): Give up if we need bidi
1608 processing or buffer's direction is right-to-left.
1609 (prepare_desired_row): Preserve the reversed_p flag.
1610 (row_equal_p): Compare the reversed_p attributes as well.
1611
1612 * xdisp.c (init_iterator): Initialize it->bidi_p. Call
1613 bidi_init_it and set it->paragraph_embedding from the current
1614 buffer's value of bidi_paragraph_direction.
1615 (reseat_1): Initialize bidi_it.first_elt.
1616 (set_iterator_to_next, next_element_from_buffer): Use the value of
1617 paragraph_embedding to determine the paragraph direction.
1618 (set_iterator_to_next): Under bidi reordering, call
1619 bidi_get_next_char_visually. Call bidi_paragraph_init if the
1620 new_paragraph flag is set in the bidi iterator.
1621 (next_element_from_buffer): If bidi_it.first_elt is set,
1622 initialize paragraph direction and find the first character to
1623 display in the visual order. If reseated to a middle of a line,
1624 prime the bidi iterator starting at the line's beginning. Handle
1625 the situation where we overstepped stop_charpos due to
1626 non-linearity of the bidi iteration. Likewise for when we back up
1627 beyond the previous stop_charpos. When moving across stop_charpos,
1628 record it in prev_stop.
1629 (display_line): Set row->end and it->start for the next row to the
1630 next character in logical order. Always extend reversed_p rows to
1631 the end of line, even if they end at ZV. Copy the reversed_p flag
1632 to the next glyph row. Keep calling set_cursor_from_row for
1633 bidi-reordered rows even if we already have a possible candidate
1634 for cursor position. Set row_end after all the row's glyphs have
1635 been produced, by looping over the glyphs. Record the position
1636 after EOL in it->eol_pos, and use it to set end_pos of the last
1637 row produced for a continued line.
1638 <Qright_to_left, Qleft_to_right>: New variables.
1639 (syms_of_xdisp): Initialize and staticpro them.
1640 (string_buffer_position_lim): New function.
1641 (string_buffer_position): Most of code moved to
1642 string_buffer_position_lim. Last argument and return value are
1643 now EMACS_INT; all callers changed.
1644 (set_cursor_from_row): Rewritten to support bidirectional text and
1645 reversed glyph rows.
1646 (text_outside_line_unchanged_p, try_window_id): Disable
1647 optimizations if we are reordering bidirectional text and the
1648 paragraph direction can be affected by the change.
1649 (append_glyph, append_composite_glyph)
1650 (produce_image_glyph, append_stretch_glyph): Set the
1651 resolved_level and bidi_type members of each glyph.
1652 (append_glyph): If the glyph row is reversed, prepend the glyph
1653 rather than appending it.
1654 (handle_stop_backwards): New function.
1655 (reseat_1, pop_it, push_it): Set prev_stop and base_level_stop.
1656 (reseat): call handle_stop_backwards to recompute prev_stop and
1657 base_level_stop for the new position.
1658 (handle_invisible_prop): Under bidi iteration, skip invisible text
1659 using bidi_get_next_char_visually. If we are `reseat'ed, init the
1660 paragraph direction. Update IT->prev_stop after skipping
1661 invisible text.
1662 (move_it_in_display_line_to): New variables prev_method
1663 and prev_pos. Compare for strict equality in
1664 BUFFER_POS_REACHED_P.
1665 (try_cursor_movement): Examine all the candidate rows that occlude
1666 point, to return the best match. If rows are bidi-reordered
1667 and point moved backwards, back up to the row that is not a
1668 continuation line, and start looking for a suitable row from
1669 there.
1670
1671 * term.c (append_glyph): Reverse glyphs by pre-pending them,
1672 rather than appending, if the glyph_row's reversed_p flag is set.
1673 Set the resolved_level and bidi_type members of each glyph.
1674
1675 * .gdbinit (pbiditype): New command.
1676 (pgx): Use it to display bidi level and type of the glyph.
1677 (pitx): Display some bidi information about the iterator.
1678 (prowlims, pmtxrows): New commands.
1679
1680 2010-03-30 Dan Nicolaescu <dann@ics.uci.edu>
1681
1682 Remove all uses of C_DEBUG_SWITCH and LIBS_DEBUG.
1683 * s/usg5-4.h (LIBS_DEBUG):
1684 * s/irix6-5.h (C_DEBUG_SWITCH):
1685 * s/gnu-linux.h (LIBS_DEBUG):
1686 * s/darwin.h (LIBS_DEBUG):
1687 * s/bsd-common.h (LIBS_DEBUG):
1688 * s/aix4-2.h (LIBS_DEBUG, C_DEBUG_SWITCH):
1689 * m/iris4d.h (LIBS_DEBUG):
1690 * m/hp800.h (LIBS_DEBUG): Remove definitions.
1691
1692 * Makefile.in (LIBES): Remove reference to LIBS_DEBUG.
1693 (LIBS_DEBUG): Remove definition.
1694
1695 2010-03-27 Chong Yidong <cyd@stupidchicken.com>
1696
1697 * process.c (Fmake_network_process): Don't apply Bug#5173 fix for
1698 Windows.
1699
1700 2010-03-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1701
1702 * process.c (Fmake_network_process): Don't call turn_on_atimers around
1703 `connect' (Bug#5723).
1704
1705 2010-03-25 Helmut Eller <eller.helmut@gmail.com>
1706
1707 * process.c (Fmake_network_process): Call `select' for interrupted
1708 `connect' rather than creating new socket (Bug#5173).
1709
1710 2010-03-24 Jan Djärv <jan.h.d@swipnet.se>
1711
1712 * frame.c (x_get_arg): Handle RES_TYPE_BOOLEAN_NUMBER (bug #5736).
1713
1714 * xfns.c (Fx_create_frame): Make menuBar a RES_TYPE_BOOLEAN_NUMBER.
1715
1716 * dispextern.h (resource_types): RES_TYPE_BOOLEAN_NUMBER is new.
1717
1718 2010-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1719
1720 * xfns.c (Fx_create_frame) [USE_LUCID]: Add BLOCK_INPUT around
1721 XLoadQueryFont.
1722
1723 2010-03-24 Kenichi Handa <handa@m17n.org>
1724
1725 * coding.c (decode_coding_ccl): Fix previous change for the
1726 multibyte case.
1727 (encode_coding_ccl): Don't setup ccl program here. Fix for the
1728 case that the output buffer is fullfilled.
1729 (encode_coding): Setup ccl program here.
1730
1731 2010-03-24 Andreas Politz <politza@fh-trier.de> (tiny change)
1732
1733 * editfns.c (Fformat): Account for string precision when computing
1734 field width (Bug#5710).
1735
1736 2010-03-23 Dan Nicolaescu <dann@ics.uci.edu>
1737
1738 * s/gnu-linux.h (LIBS_SYSTEM): Remove, same as default.
1739
1740 Simplify LIBS_MACHINE definitions.
1741 * m/hp800.h (LIBS_MACHINE): Remove, same as default.
1742 * m/iris4d.h (LIBS_MACHINE): Likewise.
1743 * m/ibmrs6000.h (LIBS_MACHINE): Rename to LIBS_SYSTEM and move ...
1744 * s/aix4-2.h (LIBS_SYSTEM): ... here.
1745 * s/netbsd.h: Remove commented out code.
1746
1747 2010-03-22 Dan Nicolaescu <dann@ics.uci.edu>
1748
1749 Remove dead code dealing with POSIX_SIGNALS.
1750 * atimer.c (set_alarm): Remove dead code, all USG systems define
1751 POSIX_SIGNALS.
1752 * data.c (arith_error): Likewise.
1753 * keyboard.c (input_available_signal, handle_user_signal)
1754 (interrupt_signal): Likewise.
1755 * process.c (sigchld_handler): Likewise.
1756 (create_process): Remove if 0 code. Remove HPUX conditional when
1757 !defined (POSIX_SIGNALS), it cannot be true.
1758 * syssignal.h: Remove USG5_4 and USG conditionals when
1759 !POSIX_SIGNALS, they cannot be true.
1760
1761 * keyboard.c (Fset_input_interrupt_mode): Remove code depending on
1762 NO_SOCK_SIGIO, not used anymore.
1763
1764 2010-03-21 Dan Nicolaescu <dann@ics.uci.edu>
1765
1766 * m/vax.h (BSD_SYSTEM, BSD4_2): Remove conditionals, we only
1767 support vax on BSDs.
1768
1769 * m/ibmrs6000.h (ORDINARY_LINK): Move definition ...
1770 * s/aix4-2.h (ORDINARY_LINK): ... here.
1771
1772 2010-03-21 Andreas Schwab <schwab@linux-m68k.org>
1773
1774 * Makefile.in (abs_builddir): Define.
1775 (bootstrap_exe): Use it.
1776 (VPATH): Use $(srcdir) instead of @srcdir@.
1777
1778 2010-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
1779
1780 * Makefile.in (bootstrap_exe): Use an absolute name.
1781
1782 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1783
1784 Remove support for old GNU/Linux using libc version 5.
1785 * m/alpha.h (LINUX_SBRK_BUG): Remove definition.
1786 * emacs.c (main): Remove code depending on LINUX_SBRK_BUG.
1787
1788 Consolidate redundant definitions in s/bsd-common.h.
1789 * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1790 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1791 (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of
1792 doing it in all files that include this one.
1793 * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1794 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1795 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1796 * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1797 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1798 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1799 * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO)
1800 (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS)
1801 (LDAV_SYMBOL, KERNEL_FILE): Remove.
1802
1803 Consolidate redundant definitions.
1804 * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define,
1805 it's undefined in all files that include this one.
1806 (POSIX_SIGNALS): Define here instead of doing it in all files that
1807 include this one.
1808 * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1809 (POSIX_SIGNALS): Do not define.
1810 * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1811 (POSIX_SIGNALS): Do not define.
1812 * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef.
1813 (POSIX_SIGNALS): Do not define.
1814
1815 Remove support for old UNIX System V systems.
1816 * s/unixware.h: Add the contents of s/usg-5-4-2.h.
1817 * s/usg-5-4-2.h: Remove.
1818
1819 Remove support for Solaris on PPC and for old versions.
1820 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
1821 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
1822 that cancel each other.
1823 * s/sol2-3.h:
1824 * s/sol2-4.h:
1825 * s/sol2-5.h: Remove.
1826 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
1827 (NO_REMAP): Remove, unused.
1828 (UNEXEC): Move definition ...
1829 * s/aix4-2.h (UNEXEC): ... here.
1830
1831 * s/openbsd.h: Remove support for non-ELF and for systems that do
1832 not support shared libraries.
1833 * s/netbsd.h:
1834 * s/freebsd.h: Likewise.
1835
1836 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1837
1838 Remove non-working support for lynxos 3.0.
1839 * s/lynxos.h: Remove file.
1840
1841 * unexec.c (unexec, adjust_lnnoptrs): Do not depend on
1842 COFF_BSD_SYMBOLS, nothing defines it anymore.
1843
1844 2010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
1845
1846 Remove obsolete uses of HAVE_SHM.
1847 * emacs.c (standard_args):
1848 (Fdump_emacs):
1849 (syms_of_emacs): Remove code depending on HAVE_SHM.
1850
1851 * alloc.c: Remove HAVE_SHM dependent definition.
1852
1853 * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM.
1854
1855 2010-03-18 Glenn Morris <rgm@gnu.org>
1856
1857 * emacs.c (USAGE4): Hard-code bug address.
1858 (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove.
1859 (bug_reporting_address): Remove.
1860 (main): Don't call bug_reporting_address.
1861
1862 * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF)
1863 (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp.
1864
1865 2010-03-15 Chong Yidong <cyd@stupidchicken.com>
1866
1867 * xfns.c (Fx_create_frame):
1868 * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars
1869 on left.
1870
1871 2010-03-13 Andreas Politz <politza@fh-trier.de> (tiny change)
1872
1873 * editfns.c (Fformat): Account for string precision when computing
1874 field width (Bug#5710).
1875
1876 2010-03-12 Chong Yidong <cyd@stupidchicken.com>
1877
1878 * xfns.c (Fx_create_frame): Set default to Qright.
1879
1880 * frame.c (Vdefault_frame_scroll_bars): Set default to Qright for
1881 all window systems.
1882
1883 2010-03-12 Eli Zaretskii <eliz@gnu.org>
1884
1885 These changes remove termcap.c from the build on Posix platforms.
1886 * Makefile.in (termcapobj): Move termcap.o from here...
1887 (MSDOS_OBJ): ...to here.
1888 (termcapobj) [!LIBS_TERMCAP]: Remove specialized value, as it is
1889 now identical to when LIBS_TERMCAP is defined.
1890
1891 * term.c: Remove (ifdef'ed away) inclusion of termcap.h.
1892
1893 * cm.c: Remove (ifdef'ed away) inclusion of termcap.h.
1894
1895 * config.in: Regenerated. (See top-level ChangeLog.)
1896
1897 2010-03-10 Chong Yidong <cyd@stupidchicken.com>
1898
1899 * Branch for 23.2.
1900
1901 2010-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
1902
1903 Cleanup setup of gl_state in various parts of the code.
1904 * syntax.h (SETUP_BUFFER_SYNTAX_TABLE): New macro.
1905 (SETUP_SYNTAX_TABLE, SETUP_SYNTAX_TABLE_FOR_OBJECT):
1906 * syntax.c (find_defun_start, Fchar_syntax, Fmatching_paren)
1907 (skip_chars):
1908 * regex.c (regex_compile): Use it.
1909 (re_compile_pattern): Don't set gl_state.current_syntax_table since
1910 it's now set in regex_compile when/if we need it.
1911
1912 2010-03-05 Stefan Monnier <monnier@iro.umontreal.ca>
1913
1914 Make it possible to C-g in a tight bytecode loop again (bug#5680).
1915 * lisp.h (ELSE_PENDING_SIGNALS): New macro.
1916 (QUIT): Use it to consolidate code and remove redundancy.
1917 * bytecode.c (BYTE_CODE_QUIT): Use it as well.
1918
1919 * regex.c (regex_compile): Setup gl_state as well.
1920
1921 * syntax.c (skip_chars): Setup gl_state (bug#3823).
1922 (in_classes): Use CONSP before XCAR/XCDR.
1923
1924 2010-03-03 Chong Yidong <cyd@stupidchicken.com>
1925
1926 * keymap.c (Fwhere_is_internal): Use Fequal to compare
1927 definitions, so that keyboard macros are correctly handled
1928 (Bug#5481).
1929
1930 2010-03-02 Eli Zaretskii <eliz@gnu.org>
1931
1932 * coding.c (decode_coding_emacs_mule): Fixup pointers to buffer
1933 text that could be relocated inside the call to emacs_mule_char.
1934 (emacs_mule_char): Use CODING_DECODE_CHAR instead of DECODE_CHAR.
1935 (CODING_DECODE_CHAR): Add a comment describing its purpose.
1936
1937 2010-03-02 Kenichi Handa <handa@m17n.org>
1938
1939 * character.c (parse_str_as_multibyte): Fix handling of the
1940 multibyte form of raw-bytes.
1941 (str_as_multibyte): Likewise.
1942
1943 * buffer.c (Fset_buffer_multibyte): Fix handling of the multibyte
1944 form of raw-bytes.
1945
1946 2010-02-28 Chong Yidong <cyd@stupidchicken.com>
1947
1948 * charset.c (load_charset_map_from_file)
1949 (load_charset_map_from_vector): Zero out allocated
1950 charset_map_entries before using them.
1951
1952 2010-02-27 Andreas Schwab <schwab@linux-m68k.org>
1953
1954 * w32uniscribe.c (uniscribe_check_otf): Fix length check.
1955
1956 2010-02-27 Chong Yidong <cyd@stupidchicken.com>
1957
1958 * font.c (font_parse_fcname): Recognize "Book", "Condensed",
1959 "Medium", and "Semi-Condensed" keywords in GTK names (Bug#5646).
1960
1961 2010-02-26 Kenichi Handa <handa@m17n.org>
1962
1963 * ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
1964
1965 * xdisp.c (reseat_to_string): Fix previous change.
1966
1967 2010-02-26 David Reitter <david.reitter@gmail.com>
1968
1969 * nsfont.m (nsfont_draw): ns_antialias_text should be a
1970 Lisp_Object (Bug#4736).
1971
1972 2010-02-25 Kenichi Handa <handa@m17n.org>
1973
1974 * xdisp.c (reseat_to_string): Fix previous change (bug#5609).
1975
1976 2010-02-24 Jan Djärv <jan.h.d@swipnet.se>
1977
1978 * xterm.c (XTflash): Move declarations before statements.
1979
1980 * gtkutil.c (xg_get_gdk_display): Remove (unused).
1981 (xg_get_pixbuf_from_pix_and_mask, xg_create_frame_widgets)
1982 (xg_toggle_notify_cb, xg_set_toolkit_scroll_bar_thumb)
1983 (xg_create_tool_bar): Remove unused variables.
1984 (x_wm_set_size_hint): Move declarations before statements.
1985 (xg_create_frame_widgets): Remove variable grav,
1986
1987 2010-02-21 Chong Yidong <cyd@stupidchicken.com>
1988
1989 * m/arm.h: Define the LIB_GCC flag to be -lgcc_s (Bug#5518).
1990
1991 2010-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
1992
1993 * term.c (fatal): Add a final \n if needed (bug#5596).
1994
1995 2010-02-18 Chong Yidong <cyd@stupidchicken.com>
1996
1997 * nsterm.m (ns_ring_bell): Revert last change (Bug#5569).
1998
1999 2010-02-18 Glenn Morris <rgm@gnu.org>
2000
2001 * callint.c (Finteractive): Doc fix.
2002
2003 2010-02-18 Kazuhiro Ito <kzhr@d1.dion.ne.jp> (tiny change)
2004
2005 * coding.c (record_conversion_result):
2006 Handle CODING_RESULT_INSUFFICIENT_DST.
2007 (decode_coding_object): Record CODING_RESULT_INSUFFICIENT_MEM on
2008 memory allocation error.
2009
2010 2010-02-17 Kenichi Handa <handa@m17n.org>
2011
2012 * coding.c (decode_coding_ccl): Don't setup ccl program here.
2013 Fix for the case that the output buffer is fullfilled.
2014 (decode_coding): Setup ccl program here. Keep looping when the
2015 decoder stopped because the output buffer is
2016 fullfilled (bug#5534).
2017
2018 * ccl.c (ccl_driver): Never reset ic to CCL_HEADER_MAIN.
2019
2020 2010-02-13 Jan Djärv <jan.h.d@swipnet.se>
2021
2022 * xterm.c (x_clear_frame_area): Call gtk_widget_queue_draw if USE_GTK,
2023 bug #5571.
2024 (XTflash): Use Gdk-routines if USE_GTK so scroll bars don't get
2025 overdrawn.
2026
2027 2010-02-10 Jan Djärv <jan.h.d@swipnet.se>
2028
2029 * xsmfns.c (x_session_initialize): Move initialization of ice_fd and
2030 doing_interact here.
2031 (ice_connection_closed): New function.
2032 (x_session_check_input, smc_die_CB, ice_io_error_handler)
2033 (ice_conn_watch_CB, x_session_close): Call ice_connection_closed.
2034 (x_session_check_input): Call IceCloseConnection if IceProcessMessages
2035 returns I/O error.
2036 (ice_conn_watch_CB): Call add_keyboard_wait_descriptor on ice_fd,
2037 bug #5512.
2038
2039 2010-02-08 Francis Devereux <francis@devrx.org> (tiny change)
2040
2041 * nsfont.m (nsfont_open): The system's value for the font descent
2042 is negative, so round it down to avoid clipping.
2043
2044 2010-02-06 Chong Yidong <cyd@stupidchicken.com>
2045
2046 * charset.c (load_charset_map_from_file)
2047 (load_charset_map_from_vector): Fix last change to use SAFE_ALLOCA
2048 instead of xmalloc (Bug#5526). Suggested by Vivek Dasmohapatra.
2049
2050 2010-02-05 Chong Yidong <cyd@stupidchicken.com>
2051
2052 * charset.c (load_charset_map_from_file): Allocate large
2053 charset_map_entries structure on the heap rather than the stack.
2054 (Bug#5526).
2055
2056 2010-01-31 Kenichi Handa <handa@m17n.org>
2057
2058 * font.c (font_parse_xlfd): If FONT is a font-entity and pixel
2059 size in NAME is invalid, return -1 (Bug#5396).
2060
2061 2010-01-31 Chong Yidong <cyd@stupidchicken.com>
2062
2063 * nsterm.m (ns_defined_color): Block input. Suggested by Mike
2064 <deactivated@gmail.com> (Bug#3605).
2065
2066 2010-01-31 David De La Harpe Golden <david@harpegolden.net>
2067
2068 * fileio.c (Frename_file): Correctly rename symlinks to
2069 directories (Bug#5496).
2070
2071 2010-01-31 Filipe Cabecinhas <filcab@gmail.com> (tiny change)
2072
2073 * nsterm.m (ns_ring_bell): Handle visible bell like X.
2074
2075 2010-01-30 Andreas Schwab <schwab@linux-m68k.org>
2076
2077 * character.h (CHAR_PRINTABLE_P): Reparenthesize to avoid warning.
2078
2079 2010-01-29 Chong Yidong <cyd@stupidchicken.com>
2080
2081 * frame.c (DEFAULT_ROWS): Change default to 35.
2082
2083 * xfns.c (x_default_font_parameter): Change default XFT font to
2084 monospace-10 (Bug#3643).
2085
2086 2010-01-29 Eli Zaretskii <eliz@gnu.org>
2087
2088 * w32inevt.c (key_event): Remove unnecessary comparison of
2089 event->uChar.AsciiChar with 128.
2090
2091 2010-01-28 Chong Yidong <cyd@stupidchicken.com>
2092
2093 * fileio.c (Frename_file): Fix last change (Bug#5487).
2094
2095 * m/mips.h: Remove DATA_START. Suggested by Dan Nicolaescu.
2096
2097 * m/alpha.h: Don't define DATA_START on NetBSD (Bug#4629).
2098
2099 2010-01-28 Jan Djärv <jan.h.d@swipnet.se>
2100
2101 * xfns.c (Fx_create_frame): Remove window size matching code from
2102 2010-01-15.
2103 (x_get_current_desktop, x_get_desktop_workarea): Remove
2104
2105 2010-01-27 Jason Rumney <jasonr@gnu.org>
2106
2107 * w32inevt.c (w32_kbd_patch_key): Save the unicode character.
2108 (key_event): Use unicode for characters 128 and higher (Bug#4567).
2109
2110 2010-01-27 Kenichi Handa <handa@m17n.org>
2111
2112 * regex.c (analyse_first): Fix setting of fastmap for unibyte
2113 pattern string (Bug#4209).
2114
2115 2010-01-27 David De La Harpe Golden <david@harpegolden.net>
2116
2117 * fileio.c (Frename_file): Call copy-directory and
2118 delete-directory for directories, in order to handle cross-device
2119 renaming (Bug#3353).
2120
2121 2010-01-25 Jan Djärv <jan.h.d@swipnet.se>
2122
2123 * xfns.c (Fx_create_frame): If frame height is too big, try
2124 sizes 24 and 10. Bug #3643.
2125
2126 2010-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
2127
2128 Try and fix bug#788, hopefully for real this time.
2129 * keymap.c (shadow_lookup): Add `remap' arg.
2130 (describe_map, describe_vector): Update calls to shadow_lookup.
2131 (Fwhere_is_internal): Fix up handling of `remapped_sequences' and
2132 `remapped' so this flag is applicable to `sequence'. Be careful to
2133 perform remapping during shadow_lookup check of remapped_sequences.
2134
2135 2010-01-24 Eric Bélanger <snowmaniscool@gmail.com> (tiny change)
2136
2137 * image.c (png_load): Use png_sig_cmp instead of the obsolete
2138 png_check_sig, which has been removed in libpng 1.4.
2139
2140 2010-01-23 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
2141
2142 * filelock.c: Include utmp.h only when HAVE_UTMP_H (FreeBSD 9.x
2143 lacks this header file).
2144
2145 2010-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2146
2147 * xdisp.c (draw_glyphs): Update `start' for left_overwritten case
2148 as in Emacs 22.
2149
2150 2010-01-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2151
2152 * lisp.h (make_pure_string): String pointer arg now points to const.
2153
2154 * alloc.c (find_string_data_in_pure, make_pure_string): String pointer
2155 args now point to const.
2156
2157 2010-01-22 Eli Zaretskii <eliz@gnu.org>
2158
2159 * lread.c (Fload): Don't treat files without .elc extension as
2160 byte-compiled if they are ``magic'', i.e. `openp' returned -2 for
2161 them. (bug#5303)
2162
2163 2010-01-20 Kenichi Handa <handa@m17n.org>
2164
2165 * coding.c (consume_chars): If ! multibyte and the encoder is ccl,
2166 treat the source as actual byte sequence.
2167
2168 2010-01-19 Alan Mackenzie <acm@muc.de>
2169
2170 Fix spurious before-change-functions invocation from (insert ?\n).
2171 * textprop.c (set_text_properties): Rename parameter
2172 `signal_after_change_p' to `coherent_change_p', and make the
2173 invocation of `modify_region' conditional on it.
2174
2175 2010-01-19 Jan Djärv <jan.h.d@swipnet.se>
2176
2177 * xsettings.c (apply_xft_settings): Save settings in Vxft_settings
2178 for debug purpose.
2179 (syms_of_xsettings): Declare xft-settings.
2180
2181 2010-01-18 Chong Yidong <cyd@stupidchicken.com>
2182
2183 * editfns.c (Fcurrent_time_string): Doc fix (Bug#5408).
2184
2185 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2186
2187 * xterm.c (event_handler_gdk): Block input (Bug#5037).
2188
2189 2010-01-16 Chong Yidong <cyd@stupidchicken.com>
2190
2191 * emacs.c (standard_args): Adjust arg priorities to reflect how
2192 they are processed in startup.el.
2193
2194 2010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2195
2196 * Makefile.in (lisp, shortlisp): Update.
2197
2198 2010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2199
2200 * xterm.c (x_term_init): Instead of inhibiting GC while running Lisp
2201 code, link the new kboard into all_kboard before running Lisp code,
2202 and protect the new terminal with GCPRO (Bug#5365).
2203 (x_term_init): Remove unused var `atom'.
2204 (x_delete_display, x_delete_terminal): Remove unused var `i'.
2205
2206 2010-01-15 Jan Djärv <jan.h.d@swipnet.se>
2207
2208 * xfns.c (x_get_current_desktop, x_get_desktop_workarea): New functions.
2209 (Fx_create_frame): Call x_get_current_desktop and x_get_desktop_workarea
2210 to find out usable size of the desktop. Don't make frames larger than
2211 this. Bug #3643.
2212
2213 2010-01-15 Kenichi Handa <handa@m17n.org>
2214
2215 * xdisp.c (CHAR_COMPOSED_P): New arg END_CHARPOS. Callers changed.
2216
2217 2010-01-15 Chong Yidong <cyd@stupidchicken.com>
2218
2219 * nsterm.m (Qnone): Define.
2220
2221 * nsfns.m (Qnone): Move definition to nsterm.m.
2222
2223 2010-01-14 Kenichi Handa <handa@m17n.org>
2224
2225 * coding.c (detect_coding_iso_2022): Fix handling of euc-xx coding
2226 systems.
2227
2228 2010-01-14 Kenichi Handa <handa@m17n.org>
2229
2230 Make auto-composition work on all buffers even if they are
2231 fundamental mode.
2232
2233 * composite.c (Vauto_composition_mode): New variable.
2234 (composition_compute_stop_pos): Check Vauto_composition_mode
2235 instead of Vauto_composition_function.
2236 (composition_adjust_point, Ffind_composition_internal): Likewise.
2237 (syms_of_composite): Declare Lisp variable
2238 "auto-composition-mode" here.
2239
2240 2010-01-13 Chong Yidong <cyd@stupidchicken.com>
2241
2242 * xterm.c (x_term_init): Avoid garbage-collecting the new terminal
2243 during call to vendor-specific-keysyms (Bug#5365).
2244
2245 2010-01-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2246
2247 * keyboard.c (input_available_signal) [SYNC_INPUT]:
2248 Call SIGNAL_THREAD_CHECK (Bug#5333).
2249
2250 * atimer.c (alarm_signal_handler) [!SYNC_INPUT]:
2251 Call SIGNAL_THREAD_CHECK.
2252
2253 2010-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
2254
2255 Try to fix bug#5314. This is probably not the final word, tho.
2256 * buffer.c (Fset_buffer_modified_p): Try and be careful not to modify
2257 recent-auto-save-p as a side-effect.
2258 * buffer.h (BUF_AUTOSAVE_MODIFF): New macro.
2259 * buffer.c (Fkill_buffer, reset_buffer):
2260 * editfns.c (Fsubst_char_in_region):
2261 * fileio.c (Finsert_file_contents, Fdo_auto_save)
2262 (Fset_buffer_auto_saved, Frecent_auto_save_p): Use it.
2263
2264 2010-01-13 Kenichi Handa <handa@m17n.org>
2265
2266 Display buffer name, etc. in mode line by composing correctly.
2267
2268 * xdisp.c (reseat_to_string): Call composition_compute_stop_pos if
2269 STRING is not nil.
2270 (display_mode_element): Adjust for the change of
2271 decode_mode_spec and display_line.
2272 (decode_mode_spec): Change arg MULTIBYTE to STRING.
2273 (display_string): Handle the case that STRING is non-null and
2274 LISP_STRING is not nil.
2275
2276 * xterm.c (x_draw_composite_glyph_string_foreground):
2277 Pay attention to s->face->overstrike.
2278
2279 * composite.c (composition_reseat_it): Don't check PT if STRING is
2280 non nil.
2281
2282 2010-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2283
2284 * keyboard.c (read_char): Don't apply previous change when current
2285 buffer is unchanged by command execution.
2286
2287 2010-01-12 Jan Djärv <jan.h.d@swipnet.se>
2288
2289 * keyboard.c (read_char): Return after executing from special map.
2290
2291 2010-01-12 Glenn Morris <rgm@gnu.org>
2292
2293 * emacs.c (REPORT_EMACS_BUG_PRETEST_ADDRESS): Set it to
2294 bug-gnu-emacs rather than emacs-pretest-bug.
2295
2296 2010-01-11 Chong Yidong <cyd@stupidchicken.com>
2297
2298 * nsterm.m (syms_of_nsterm): Initialize Qcontrol etc. before
2299 initializing the Lisp variables that depend on them.
2300
2301 2010-01-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2302
2303 * xfns.c (x_set_menu_bar_lines) [!USE_X_TOOLKIT && !USE_GTK]:
2304 Clear areas that will not be updated after change of menu bar lines.
2305 Clear the menu bar window's current matrix when the window gets empty.
2306
2307 2010-01-09 Chong Yidong <cyd@stupidchicken.com>
2308
2309 * intervals.h, textprop.c (extend_property_ranges): Return value
2310 and args changed. Discard properties that begin at or after the
2311 new end (Bug#5306).
2312
2313 * editfns.c (Fformat): Caller changed.
2314
2315 * nsterm.m (ns_set_default_prefs): Delete function.
2316 (syms_of_nsterm): Initialize ns_command_modifier,
2317 ns_control_modifier, ns_function_modifier, ns_antialias_text, and
2318 ns_antialias_threshold here, not in ns_term_init (Bug#4113).
2319
2320 * xdisp.c (pos_visible_p): Check for invisible text at the correct
2321 position (Bug#4040).
2322
2323 2010-01-09 Eli Zaretskii <eliz@gnu.org>
2324
2325 * editfns.c (Ffloat_time): Doc fix.
2326
2327 2010-01-09 Jan Djärv <jan.h.d@swipnet.se>
2328
2329 * xfns.c (Fx_create_frame): Don't create frame larger than display
2330 by default bug#3643.
2331
2332 2010-01-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2333
2334 * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
2335 (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
2336 windows above internal border.
2337
2338 * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
2339 (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
2340 windows above internal border.
2341
2342 * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
2343 tool bar windows specially.
2344
2345 * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
2346
2347 * xterm.c (x_after_update_window_line): Don't treat tool bar windows
2348 specially.
2349 (XTflash): Take account of menu bar height.
2350
2351 * w32term.c (x_after_update_window_line): Don't treat tool bar windows
2352 specially.
2353
2354 2010-01-08 Jan Djärv <jan.h.d@swipnet.se>
2355
2356 * dispnew.c (change_frame_size_1): newwidth == FRAME_COLS (f) must
2357 also be true before we can return early (bug #5339).
2358
2359 2010-01-06 David Reitter <david.reitter@gmail.com>
2360
2361 * nsfns.m (ns_get_screen): Rewrite, returning NULL for non-NS.
2362 (Fns_display_usable_bounds): Rewrite, computing bounds properly
2363 (Bug#3233).
2364
2365 2010-01-06 Jan Djärv <jan.h.d@swipnet.se>
2366
2367 * font.c (font_open_entity): Enable chache and call cached_font_ok
2368 for the driver if defined.
2369 (QCuser_spec): New symbol.
2370 (font_spec_from_name): Save name as user-spec.
2371 (font_load_for_lface): Keep user-spec instead of name.
2372 (font_open_by_name): Save name as user-spec.
2373 (syms_of_font): Initialize QCuser_spec.
2374 (font_clear_prop): Clear name if it exists in font (bug#5157).
2375
2376 * xftfont.c (xftfont_open): Call xftfont_add_rendering_parameters.
2377 (xftfont_add_rendering_parameters, xftfont_cached_font_ok): New.
2378 (syms_of_xftfont): Initialize xftfont_driver.cached_font_ok.
2379
2380 * font.h (struct font_driver): Add cached_font_ok.
2381
2382 * xterm.c (x_clear_frame): Queue draw for scroll bars.
2383
2384 2010-01-05 Jan Djärv <jan.h.d@swipnet.se>
2385
2386 * xterm.c (x_new_font): Move code for setting rows/cols before
2387 resizing ...
2388 (x_set_window_size): ... to here. Bug #2568.
2389
2390 * gtkutil.c (xg_clear_under_internal_border): New function.
2391 (xg_frame_resized, xg_frame_set_char_size):
2392 Call xg_clear_under_internal_border.
2393 (xg_update_scrollbar_pos): Clear under old scroll bar position.
2394
2395 2010-01-05 Chong Yidong <cyd@stupidchicken.com>
2396
2397 * keyboard.c (read_key_sequence): Catch keyboard switch after
2398 making a new tty frame (Bug#5095).
2399
2400 2010-01-05 Kenichi Handa <handa@m17n.org>
2401
2402 * fontset.c (fontset_find_font): Fix getting the frame pointer.
2403
2404 2010-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
2405
2406 * dbusbind.c (xd_remove_watch): Avoid trying to convert a void* to
2407 Lisp_Object, preferring to convert a lisp_Object to a void* instead.
2408 (Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2409
2410 2010-01-03 Michael Albinus <michael.albinus@gmx.de>
2411
2412 * dbusbind.c (xd_add_watch): Improve debug message.
2413 (xd_remove_watch): Improve debug message. If DATA is the session
2414 bus, unset D-Bus session environment.
2415 (Fdbus_init_bus): Pass the bus as argument to
2416 dbus_connection_set_watch_functions. (Bug#5283)
2417
2418 2010-01-01 Chong Yidong <cyd@stupidchicken.com>
2419
2420 * nsterm.m (ns_get_color): Fix buffer overflow (Bug#4763).
2421
2422 * lread.c (syms_of_lread): Make it clearer that these are the
2423 names of loaded files (Bug#5068).
2424
2425 * eval.c (run_hook_with_args): Handle the case where the global
2426 value has the obsolete single-function form (Bug#5026).
2427
2428 2009-12-27 Chong Yidong <cyd@stupidchicken.com>
2429
2430 * minibuf.c (Fall_completions): Minor optimization.
2431
2432 2009-12-26 Eli Zaretskii <eliz@gnu.org>
2433
2434 * .gdbinit (pgx): Fix display of composite glyphs.
2435 Display cmp.from and cmp.to as well.
2436 (pitx): Fix last change.
2437
2438 2009-12-25 Kenichi Handa <handa@m17n.org>
2439
2440 * composite.h (composition_adjust_point): Update prototype.
2441
2442 * composite.c (composition_reseat_it): Don't make a composition
2443 spanning over point.
2444 (CHAR_COMPOSABLE_P): Treat U+200C (ZWNJ) and U+200D (ZWJ) as
2445 composable characters.
2446 (composition_adjust_point): New arg NEW_PT. Callers changed.
2447
2448 * keyboard.c (command_loop_1): Force redisplay if the last point
2449 was within a composition.
2450 (adjust_point_for_property): Don't adjust point for automatic
2451 composition when called after buffer modification.
2452
2453 2009-12-19 Eli Zaretskii <eliz@gnu.org>
2454
2455 * .gdbinit (pitx): Don't use enum names, use their values.
2456 Remove reference to non-existing value GET_FROM_COMPOSITION.
2457 (pgx): Don't use enum names, use their values.
2458 (pitmethod): New helper command.
2459 (pitx): Use it to display iteration method.
2460 (pgrowit): New command.
2461
2462 * makefile.w32-in ($(BLD)/cmds.$(O)): Depend on frame.h.
2463
2464 Update dependencies in Makefile.in.
2465
2466 * Makefile.in (alloc.o): Depend on termhooks.h.
2467 (atimer.o): Depend on blockinput.h.
2468 (buffer.o): Depend on indent.h, keyboard.h, coding.h, keymap.h,
2469 and frame.h.
2470 (callint.o): Depend on systime.h, coding.h, and composite.h.
2471 (callproc.o): Depend on buffer.h.
2472 (casefiddle.o): Don't depend on charset.h.
2473 (casetab.o): Depend on character.h.
2474 (ccl.o): Depend on composite.h.
2475 (chartab.o): Depend on ccl.h.
2476 (cm.o): Depend on dispextern.h.
2477 (cmds.o): Depend on systime.h, coding.h, frame.h, and composite.h.
2478 (coding.o): Don't depend on $(INTERVALS_H).
2479 (composite.o): Don't depend on dispextern.h explicitly (it's in
2480 $(INTERVALS_H)). Depend on ccl.h.
2481 (data.o): Depend on systime.h, coding.h, composite.h,
2482 dispextern.h, font.h, and ccl.h.
2483 (dired.o): Depend on composite.h.
2484 (dispnew.o): Depend on coding.h. Don't depend explicitly on
2485 composite.h (it's in $(INTERVALS_H)).
2486 (doc.o): Depend on systime.h, coding.h, and composite.h.
2487 (editfns.o): Don't depend explicitly on dispextern.h.
2488 (emacs.o): Depend on frame.h and coding.h.
2489 (eval.o): Depend on coding.h, composite.h, and xterm.h.
2490 (fileio.o): Depend on frame.h and commands.h. Don't depend
2491 explicitly on dispextern.h.
2492 (filelock.o): Don't depend on epaths.h and charset.h. Depend on
2493 composite.h.
2494 (fns.o): Don't depend on termhooks.h.
2495 (font.o): Depend on buffer.h, composite.h, fontset.h, and xterm.h.
2496 (fontset.o): Depend on blockinput.h, atimer.h, systime.h,
2497 coding.h, $(INTERVALS_H), window.h, xterm.h.
2498 (frame.o): Depend on coding.h, composite.h, termhooks.h, and ccl.h.
2499 (fringe.o): Depend on blockinput.h, atimer.h, and systime.h.
2500 (ftfont.o): Depend on blockinput.h, atimer.h, systime.h, coding.h,
2501 fontset.h, ccl.h, and ftfont.h.
2502 (ftxfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2503 (gtkutil.o): Depend on dispextern.h and composite.h.
2504 (image.o): Depend on epaths.h, character.h, coding.h, composite.h,
2505 termhooks.h, and ccl.h.
2506 (indent.o): Depend on systime.h, coding.h, and $(INTERVALS_H).
2507 (intervals.o): Depend on systime.h and coding.h.
2508 (keyboard.o): Depend on composite.h and coding.h.
2509 (keymap.o): Depend on coding.h and frame.h.
2510 (lread.o): Depend on systime.h, frame.h, blockinput.h, and atimer.h.
2511 (macros.o): Depend on systime.h, coding.h, and composite.h.
2512 (menu.o): Depend on systime.h, coding.h, composite.h, window.h,
2513 and atimer.h.
2514 (minibuf.o): Depend on systime.h and coding.h. Don't depend on
2515 dispextern.h explicitly.
2516 (print.o): Depend on termhooks.h, coding.h, and ccl.h.
2517 Don't depend explicitly on dispextern.h and composite.h.
2518 (process.o): Depend on character.h, xgselect.h, and sysselect.h.
2519 (regex.o): Don't depend on charset.h.
2520 (scroll.o): Depend on systime.h, coding.h, composite.h, and window.h.
2521 (search.o): Don't depend explicitly on composite.h.
2522 (sound.o): Depend on atimer.h and systime.h.
2523 (syntax.o): Don't depend explicitly on composite.h.
2524 (sysdep.o): Depend on coding.h and composite.h.
2525 (term.o): Depend on xterm.h and buffer.h.
2526 (terminal.o): Depend on dispextern.h, composite.h, and systime.h.
2527 (textprop.o): Don't depend on dispextern.h explicitly.
2528 (undo.o): Depend on dispextern.h.
2529 (window.o): Depend on coding.h and termhooks.h. Don't depend on
2530 dispextern.h and composite.h explicitly.
2531 (xdisp.o): Depend on ccl.h.
2532 (xfaces.o): Depend on coding.h and ccl.h.
2533 (xfns.o): Depend on $(INTERVALS_H) and ccl.h.
2534 (xfont.o): Depend on atimer.h, systime.h, fontset.h, and ccl.h.
2535 (xftfont.o): Depend on atimer.h, systime.h, fontset.h, ccl.h, and
2536 ftfont.h.
2537 (xgselect.o): New dependency.
2538 (xmenu.o): Depend on composite.h, keymap.h, and sysselect.h.
2539 (xselect.o): Depend on keyboard.h, coding.h, and composite.h.
2540 (xsettings.o): Depend on dispextern.h, keyboard.h, systime.h,
2541 coding.h, composite.h, blockinput.h, atimer.h, and termopts.h.
2542 (xsmfns.o): Depend on frame.h and dispextern.h.
2543 (xterm.o): Depend on intervals.h, keymap.h, xgselect.h, and
2544 sysselect.h.
2545
2546 2009-12-19 Andreas Schwab <schwab@linux-m68k.org>
2547
2548 * font.c (Fclear_font_cache): Pass correct cache argument to
2549 font_clear_cache.
2550
2551 2009-12-16 Andreas Schwab <schwab@linux-m68k.org>
2552
2553 * Makefile.in (prefix-args${EXEEXT}): Don't compile prefix-args.c
2554 twice.
2555
2556 2009-12-15 Chong Yidong <cyd@stupidchicken.com>
2557
2558 * xdisp.c (decode_mode_spec): Inhibit garbage collection when
2559 calling file-remote-p. Reported by Jim Meyering.
2560
2561 2009-12-15 Michael Albinus <michael.albinus@gmx.de>
2562
2563 * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
2564 avoid compiler warnings. (Bug #5217)
2565
2566 2009-12-14 Kenichi Handa <handa@m17n.org>
2567
2568 * coding.c (decode_coding_iso_2022): Ignore ISO_CODE_SS2_7 (0x19)
2569 in 8-bit encoding.
2570
2571 2009-12-13 Pat Thoyts <patthoyts@users.sourceforge.net> (tiny change)
2572
2573 * xfns.c (x_create_tip_frame): Set the extended window manager hint for
2574 tooltip windows.
2575
2576 2009-12-13 Jan Djärv <jan.h.d@swipnet.se>
2577
2578 * xterm.h (struct x_display_info): Add Xatom_net_window_type_tooltip and
2579 Xatom_net_window_type.
2580
2581 * xterm.c (x_term_init): Initialize Xatom_net_window_type_tooltip and
2582 Xatom_net_window_type.
2583
2584 * xterm.c (my_log_handler): New function.
2585 (x_term_init): Set my_log_handler as log handler during gtk_init
2586 so we can filter out buggy messages. (Bug #5120).
2587
2588 * xterm.c (xg_scroll_callback): Parameter list changed,
2589 use parameter GtkScrollType to determine scroll/line/page.
2590 Only allow dragging if a button < 4 is grabbed (bug #5177).
2591 (xg_end_scroll_callback): New function.
2592 (x_create_toolkit_scroll_bar): Pass xg_end_scroll_callback to
2593 xg_create_scroll_bar.
2594
2595 * gtkutil.c (xg_gtk_scroll_destroy): Remove XG_LAST_SB_DATA handling.
2596 (scroll_end_callback): Remove.
2597 (xg_create_scroll_bar): Add parameter end_callback, bind it to
2598 button-release-event. Replace value-changed event with change-value,
2599 bug #5177,
2600 (xg_event_is_for_scrollbar): Only return true if button is less than 4,
2601 bug #5177.
2602
2603 * gtkutil.h (XG_LAST_SB_DATA): Remove.
2604 (xg_create_scroll_bar): Add GCallback end_callback.
2605
2606 * xftfont.c (QClcdfilter): New variable.
2607 (xftfont_open): Parse constant names for RGBA, HINT_STYLE and LCDFILTER.
2608 (syms_of_xftfont): Initialize QClcdfilter.
2609
2610 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2611
2612 * xsettings.c (struct xsettings): Add member seen.
2613 (parse_xft_settings): Update member seen with what we have read.
2614 Return non-zero if Xft-settings have been parsed, 0 otherwise.
2615 (apply_xft_settings): Only update Xft settings with what member seen
2616 indicates as new.
2617
2618 2009-12-12 Eli Zaretskii <eliz@gnu.org>
2619
2620 * dispextern.h (struct text_pos): Use EMACS_INT;
2621 (struct glyph): Use EMACS_INT for charpos.
2622 (struct it): Use EMACS_INT for stop_charpos, end_charpos,
2623 region_beg_charpos, region_end_charpos,
2624 redisplay_end_trigger_charpos, and also for
2625 iterator_stack_entry.end_charpos and
2626 iterator_stack_entry.stop_charpos.
2627
2628 2009-12-12 Jan Djärv <jan.h.d@swipnet.se>
2629
2630 * gtkutil.c (scroll_end_callback): New function (bug #5177).
2631 (xg_create_scroll_bar): Call scroll_end_callback on button release
2632 event (bug #5177).
2633 (xg_event_is_for_scrollbar): != replaced with ==.
2634
2635 2009-12-12 Kenichi Handa <handa@m17n.org>
2636
2637 * ftfont.c (struct ftfont_info): New member matrix.
2638 (ftfont_open): Setup xftfont_info->matrix.
2639 (MFLTFontFT): New member matrix.
2640 (FLOOR, CEIL, ROUND): New macros.
2641 (ftfont_get_metrics): Handle matrix transformation.
2642 (ftfont_shape_by_flt): New arg matrix. Callers changed.
2643
2644 * xftfont.c (struct xftfont_info): New member matrix.
2645 (xftfont_open): Setup xftfont_info->matrix.
2646
2647 2009-12-10 Kenichi Handa <handa@m17n.org>
2648
2649 * xdisp.c (append_space_for_newline): Consider face-remapping.
2650
2651 2009-12-09 Andreas Schwab <schwab@linux-m68k.org>
2652
2653 * xsettings.c: Include "keyboard.h".
2654
2655 * gtkutil.c (xg_tool_bar_proxy_help_callback): Fix missing return.
2656
2657 Fix implicit function declarations.
2658 * cmds.c: Include "frame.h".
2659 * frame.c: Include "font.h" also if !HAVE_WINDOW_SYSTEM.
2660 * frame.h: Move declaration of delete_frame outside of
2661 HAVE_WINDOW_SYSTEM.
2662
2663 2009-12-09 Ken Brown <kbrown@cornell.edu> (tiny change)
2664
2665 * s/cygwin.h (G_SLICE_ALWAYS_MALLOC): New variable.
2666
2667 * emacs.c (main): Set the G_SLICE environment variable for Cygwin
2668 GTK builds.
2669
2670 2009-12-07 Andreas Schwab <schwab@linux-m68k.org>
2671
2672 * unexelf.c (unexec): Don't search for .data twice.
2673
2674 2009-12-05 Chong Yidong <cyd@stupidchicken.com>
2675
2676 * xdisp.c (push_display_prop): Don't set avoid_cursor_p. Return 0
2677 if push failed.
2678 (handle_line_prefix): Set avoid_cursor_p here. Check return value
2679 of push_display_prop (Bug#5000).
2680
2681 * xfaces.c (Fx_family_fonts): Handle 2009-07-14 change to return
2682 value of font_list_entities (Bug#5085).
2683
2684 2009-12-04 Juanma Barranquero <lekktu@gmail.com>
2685
2686 Fix `string-to-number' to deal consistently with integers and floats.
2687 * lread.c (isfloat_string): New argument ignore_trailing to accept all
2688 trailing characters, not just whitespace.
2689 (read1): Pass new arg 0 to keep old behavior.
2690 * data.c (Fstring_to_number): Pass 1 to isfloat_string to ignore
2691 trailing chars, as it is already done for integers. Doc fixes.
2692 * lisp.h (isfloat_string): Add new arg to declaration of isfloat_string.
2693
2694 2009-12-04 Eli Zaretskii <eliz@gnu.org>
2695
2696 * dispextern.h (enum prop_idx) <AUTO_COMPOSED_PROP_IDX>:
2697 Delete unused enumeration value.
2698
2699 2009-12-03 Eli Zaretskii <eliz@gnu.org>
2700
2701 * Makefile.in (lisp, shortlisp): Replace indian.el with indian.elc.
2702
2703 2009-12-03 Daniel Hackney <dan@haxney.org> (tiny change)
2704
2705 * process.c (Fmake_network_process): Fix up the tests for
2706 "connectionless socket", so they DTRT for seqpacket sockets as well.
2707
2708 2009-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
2709
2710 * process.c (Qseqpacket): New symbol.
2711 (HAVE_SEQPACKET): New macro.
2712 (Fmake_network_process): Accept new :type `seqpacket'.
2713 (init_process): Add `seqpacket' feature when applicable.
2714 (syms_of_process): Initialize Qseqpacket.
2715
2716 2009-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2717
2718 * font.c (font_load_for_lface, font_open_by_name): Don't store name
2719 if entity is Qnil.
2720
2721 2009-11-30 Stefan Monnier <monnier@iro.umontreal.ca>
2722
2723 * print.c (print_preprocess): Preprocess the key_and_value table of
2724 hashtables, even tho they're "hidden" (bug#5082).
2725
2726 2009-11-29 Jan Djärv <jan.h.d@swipnet.se>
2727
2728 * frame.c (frame_make_pointer_invisible)
2729 (frame_make_pointer_visible): Declare f before statements.
2730
2731 2009-11-28 Eli Zaretskii <eliz@gnu.org>
2732
2733 * Makefile.in [!AUTO_DEPEND]: Remove outdated comment about
2734 omitted dependencies on lisp.h.
2735
2736 2009-11-27 Jan Djärv <jan.h.d@swipnet.se>
2737
2738 * xftfont.c (xftfont_end_for_frame): Just return if dpyinfo->display
2739 is NULL.
2740
2741 * xterm.c (x_delete_terminal): Set dpyinfo->display to NULL.
2742
2743 * frame.c (frame_make_pointer_invisible)
2744 (frame_make_pointer_visible): Just return if there isn't any selected
2745 frame.
2746
2747 * search.c (simple_search): Remove warning by making *p const.
2748
2749 2009-11-26 Dan Nicolaescu <dann@ics.uci.edu>
2750
2751 * xdisp.c (power_letter): Remove duplicate const.
2752
2753 2009-11-25 Jan Djärv <jan.h.d@swipnet.se>
2754
2755 * term.c (delete_tty): Remove check for last terminal (bug#4970).
2756
2757 * xsettings.c: Revert changes from 2009-11-23. Just use Xft
2758 defaults (bug #5025).
2759
2760 2009-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
2761
2762 * insdel.c (adjust_markers_for_delete): Move it in the
2763 right direction! (bug#4803)
2764
2765 2009-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2766
2767 * font.c (font_open_entity): Don't use ASET if font_object is Qnil.
2768
2769 * xterm.c (x_new_font): Update f->scroll_bar_actual_width.
2770
2771 2009-11-24 Glenn Morris <rgm@gnu.org>
2772
2773 * frame.c (focus-follows-mouse): Mention mouse-autoselect-window.
2774
2775 2009-11-23 Jan Djärv <jan.h.d@swipnet.se>
2776
2777 * Makefile.in: Must create deps for ecrt0.o in its rule.
2778
2779 * xfns.c (Fx_select_font): Try to convert Fontconfig name to Gtk name
2780 because that is what Gtk+ font dialog understands.
2781
2782 * font.c (font_make_object, Fcopy_font_spec): Use Fcopy_alist instead
2783 of Fcopy_sequence.
2784 (font_open_by_name): Put name given into QCname for font-object returned.
2785
2786 * frame.c (x_set_font): Save original font name as frame parameter
2787 font-parameter.
2788
2789 * xsettings.c (set_default_xft_settings): New function.
2790 (init_xfd_settings): Call set_default_xft_settings if no XSETTINGS window
2791 is found.
2792
2793 2009-11-22 Andreas Schwab <schwab@linux-m68k.org>
2794
2795 * search.c (simple_search): Avoid CHAR_TO_BYTE in inner loop when
2796 searching backwards through multibyte buffer.
2797
2798 2009-11-21 Jan Djärv <jan.h.d@swipnet.se>
2799
2800 * xterm.c: #include xgselect.h.
2801 (x_initialize): Call xgselect_initialize.
2802
2803 * xsettings.c (something_changedCB): C++ comments => C comments.
2804 (init_gconf): Do not deal with any GLib file descriptors, xg_select
2805 does that now.
2806
2807 * gtkutil.c (xg_timer, xg_process_timeouts, xg_start_timer)
2808 (xg_stop_timer, menu_grab_callback_cnt, menu_grab_callback)
2809 (scroll_bar_button_cb): Remove.
2810 (create_menus): C++ comments => C comments. Don't bind grab-notify
2811 event.
2812 (xg_create_scroll_bar): Don't bind button-press-event and
2813 button-release-event.
2814
2815 * process.c: Include xgselect.h if defined (USE_GTK) ||
2816 defined (HAVE_GCONF).
2817 (wait_reading_process_output): Call xg_select for the same condition.
2818
2819 * xgselect.c (xg_select): New function to better integrate with
2820 GLib/Gtk event handling. Needed if GConf daemon dies/restarts.
2821
2822 * xgselect.h: New file, declare xg_select, xgselect_initialize.
2823
2824 * Makefile.in (XOBJ): Add xgselect.o.
2825
2826 2009-11-21 Andreas Schwab <schwab@linux-m68k.org>
2827
2828 * character.h (STRING_CHAR, STRING_CHAR_AND_LENGTH):
2829 Remove ignored second argument. All callers changed.
2830 * regex.c (STRING_CHAR, STRING_CHAR_AND_LENGTH, RE_STRING_CHAR)
2831 (RE_STRING_CHAR_AND_LENGTH): Likewise.
2832 * xdisp.c (string_char_and_length): Likewise.
2833
2834 2009-11-21 Dan Nicolaescu <dann@ics.uci.edu>
2835
2836 * xterm.c (x_new_font):
2837 * print.c (print_object):
2838 * cmds.c (Fself_insert_command): Move declarations before statements.
2839
2840 2009-11-20 Ken Brown <kbrown@cornell.edu> (tiny change)
2841
2842 * s/cygwin.h: Remove unneeded linker flags.
2843
2844 2009-11-20 Jan Djärv <jan.h.d@swipnet.se>
2845
2846 * xfns.c (x_default_font_parameter): Call xsettings_get_system_font.
2847
2848 * xsettings.h: Declare xsettings_get_system_font.
2849
2850 * xsettings.c (xsettings_get_system_font): New function.
2851 (init_gconf): No use initiating gconf unless we have Xft also.
2852 (syms_of_xsettings): Only provide system-font-setting if HAVE_XFT and
2853 HAVE_GCONF.
2854
2855 * gtkutil.c (xg_modify_menubar_widgets): If menubar is totally empty
2856 add a blank entry so it doesn't collapse into nothing.
2857
2858 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2859
2860 * lread.c (Funintern): Comment out last change.
2861
2862 2009-11-19 Richard Stallman <rms@gnu.org>
2863
2864 * lread.c (Funintern): Error if symbol is t or nil.
2865
2866 2009-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2867
2868 * insdel.c (make_gap_larger): Don't make as many assumptions about the
2869 representation of Lisp integers.
2870 Reported by MJ Chan <mjchan.inbox@gmail.com>.
2871
2872 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2873
2874 * lisp.h: Remove declaration of Ffont_get_system_font.
2875 * xfns.c: Move include of "xsettings.h".
2876 * xsettings.h: Use EXFUN to declare Ffont_get_system_font.
2877
2878 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2879
2880 * xsettings.c (something_changedCB, Ffont_get_system_font):
2881 Check use_system_font.
2882 (syms_of_xsettings): DEFVAR font-use-system-font.
2883
2884 2009-11-17 Andreas Schwab <schwab@linux-m68k.org>
2885
2886 * xfns.c (x_default_font_parameter): Remove dead assignment.
2887
2888 * lisp.h (Fbyteorder, init_font, Ffont_get_system_font): Declare.
2889
2890 2009-11-17 Jan Djärv <jan.h.d@swipnet.se>
2891
2892 * xftfont.c (xftfont_fix_match): Older versions of fontconfig do
2893 not have FC_LCD_*. #define them if not there.
2894
2895 * xsettings.c (parse_xft_settings, apply_xft_settings): Ditto.
2896
2897 * xterm.h (struct x_display_info): Add atoms and Window for xsettings.
2898
2899 * xterm.c (handle_one_xevent): Call xft_settings_event for
2900 ClientMessage, PropertyNotify and DestroyNotify.
2901 (x_term_init): If we have XFT, get DPI from Xft.dpi.
2902 Call xsettings_initialize.
2903
2904 * xftfont.c (xftfont_fix_match): New function.
2905 (xftfont_open): Call XftDefaultSubstitute before XftFontMatch.
2906 Call xftfont_fix_match after XftFontMatch.
2907
2908 * xfont.c (xfont_driver): Initialize all members.
2909
2910 * xfns.c (x_default_font_parameter):
2911 Try font from Ffont_get_system_font.
2912 Do not get font from x_default_parameter if we got one from
2913 Ffont_get_system_font.
2914 (Fx_select_font): Get the defaut font name from :name of FRAME_FONT(f).
2915
2916 * w32font.c (w32font_driver): Initialize all members.
2917
2918 * termhooks.h (enum event_kind): CONFIG_CHANGED_EVENT is new.
2919
2920 * lisp.h: Declare syms_of_xsettings.
2921
2922 * keyboard.c (kbd_buffer_get_event, make_lispy_event):
2923 Handle CONFIG_CHANGED_EVENT.
2924
2925 * ftfont.c (ftfont_filter_properties): New function.
2926
2927 * frame.c (x_set_font): Remove unused variable lval.
2928
2929 * font.h (struct font_driver): Add filter_properties.
2930
2931 * font.c (font_put_extra): Don't return if val is nil, it means
2932 boolean option is off.
2933 (font_parse_fcname): Collect all extra properties in extra_props
2934 and call filter_properties for all drivers with extra_props and
2935 font as parameter.
2936 (font_open_entity): Do not use cache, it does not pick up new
2937 fontconfig settings like hinting.
2938 (font_load_for_lface): If spec had a name in it, store it in entity.
2939
2940 * emacs.c (main): Call syms_of_xsettings
2941
2942 * config.in: HAVE_GCONF is new.
2943
2944 * Makefile.in (GCONF_CFLAGS, GCONF_LIBS): New variables for HAVE_GCONF.
2945 xsettings.o is new.
2946
2947 2009-11-17 Kenichi Handa <handa@m17n.org>
2948
2949 * xdisp.c (x_produce_glyphs): Consider face-remapping when falling
2950 back to the default font in case that no suitable font is found.
2951
2952 2009-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
2953
2954 * menu.c (Fx_popup_menu) [HAVE_NS]: Use generic code for window edge.
2955 Suggested by Chad Brown <yandros@mit.edu>.
2956 (push_menu_item): Use MENU_ITEMS_ITEM_* names.
2957
2958 2009-11-16 Jan Djärv <jan.h.d@swipnet.se>
2959
2960 * xmenu.c (x_menu_wait_for_event): Call XFlush before select.
2961
2962 2009-11-14 Andreas Schwab <schwab@linux-m68k.org>
2963
2964 * Makefile.in: Ignore errors from mkdir when creating deps directory.
2965
2966 2009-11-14 Jan Djärv <jan.h.d@swipnet.se>
2967
2968 * gtkutil.c (xg_update_frame_menubar): Do nothing if menubar already
2969 has a parent.
2970
2971 * Makefile.in: If AUTO_DEPEND is defined, make gcc generate
2972 dependency files in deps/. Include those files into Makefile.
2973
2974 * config.in: Generated (AUTO_DEPEND).
2975
2976 2009-11-13 Michael Albinus <michael.albinus@gmx.de>
2977
2978 * dbusbind.c (Vdbus_registered_objects_table): Rename from
2979 Vdbus_registered_functions_table, because it contains also
2980 properties. Fix docstring.
2981 (Fdbus_call_method, Fdbus_call_method_asynchronously): Fix docstring.
2982
2983 2009-11-13 Stefan Monnier <monnier@iro.umontreal.ca>
2984
2985 * alloc.c (mark_object): Don't reprocess marked strings.
2986 Check vector's markbit earlier. Adjust calls to mark_vectorlike.
2987 (mark_vectorlike, mark_char_table): Assume the object is unmarked.
2988
2989 2009-11-13 Kenichi Handa <handa@m17n.org>
2990
2991 * category.c (word_boundary_p): Adjust for the change of the
2992 semantics of Vword_combining_categories.
2993 (Vword_combining_categories): Describe the slight change of the
2994 semantics.
2995
2996 2009-11-13 Eli Zaretskii <eliz@gnu.org>
2997
2998 * menu.c (Fx_popup_menu): Call Fx_hide_tip only if HAVE_WINDOW_SYSTEM.
2999
3000 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Revert last change.
3001
3002 2009-11-12 Stefan Monnier <monnier@iro.umontreal.ca>
3003
3004 * xdisp.c (syms_of_xdisp): Fix typo in last change.
3005
3006 2009-11-12 Juanma Barranquero <lekktu@gmail.com>
3007
3008 * makefile.w32-in: Update dependencies; add dependencies to lisp.h.
3009
3010 2009-11-11 David Reitter <david.reitter@gmail.com>
3011
3012 * menu.c (Fx_popup_menu): Remove left-over debugging code and rename
3013 variables to fix 2009-11-09 change.
3014
3015 2009-11-11 Dan Nicolaescu <dann@ics.uci.edu>
3016
3017 * process.c (ifflag_def): Make flag_sym constant.
3018 (Fnetwork_interface_info): Use a constant pointer.
3019 (ifflag_table):
3020 * xfns.c (cursor_bits):
3021 * xdisp.c (power_letter):
3022 * termcap.c (speeds, esctab):
3023 * sysdep.c (baud_convert):
3024 * keyboard.c (lispy_accent_codes, modifier_names):
3025 * image.c (xbm_format, xpm_format, pbm_format, png_format)
3026 (jpeg_format, tiff_format, gif_format, svg_format)
3027 (interlace_start, interlace_increment, gs_format):
3028 * gtkutil.c (separator_names):
3029 * fringe.c (swap_nibble):
3030 * fns.c (base64_value_to_char, base64_char_to_value):
3031 * fileio.c (make_temp_name_tbl):
3032 * coding.c (suffixes): Make constant.
3033
3034 * frame.c (make_initial_frame):
3035 * buffer.c (init_buffer_once): Use make_pure_c_string instead of
3036 build_string.
3037 * alloc.c (syms_of_alloc): Build Vmemory_signal_data in pure memory.
3038
3039 * s/freebsd.h:
3040 * s/netbsd.h: Remove code referring to non-existent file: unexsunos4.o.
3041
3042 * Makefile.in: Add dependencies to lisp.h. Remove dependencies
3043 for non-existent files: unexmips.c, unexnext.c, abbrev.c, malloc.c.
3044
3045 * xfns.c (syms_of_xfns): Use make_pure_string instead of build_string.
3046 * xterm.c (syms_of_xterm):
3047 * xfaces.c (syms_of_xfaces):
3048 * xdisp.c (syms_of_xdisp):
3049 * lread.c (syms_of_lread):
3050 * keyboard.c (syms_of_keyboard): Use make_pure_c_string instead of
3051 build_string.
3052
3053 * doc.c (Fsnarf_documentation): Purecopy Vbuild_files.
3054
3055 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3056
3057 * fns.c (Fplist_get): Merge the active and the commented out code.
3058
3059 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3060
3061 * keyboard.h: Declare timer_check.
3062
3063 * keyboard.c (timer_check_2): New function that does what the old
3064 timer_check did.
3065 (timer_check): Call timer_check_2 until -1 or a non-zero time is
3066 returned, i.e. don't return -1 with timers pending.
3067
3068 * process.c: Remove extern declaration of timer_check.
3069
3070 * xmenu.c (x_menu_wait_for_event): Remove code that did a timeout
3071 even if timer_check returned -1.
3072
3073 * gtkutil.c (xg_dialog_response_cb): Data is now a struct
3074 xg_dialog_data.
3075 (pop_down_dialog): Destroy widget (if any), cancel timer and unref
3076 the event loop.
3077 (xg_maybe_add_timer, xg_dialog_run): New functions (bug #4574).
3078 (xg_get_file_name, xg_get_font_name): Call xg_dialog_run (bug #4574).
3079 Destroy the dialog after xg_dialog_run.
3080
3081 2009-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
3082
3083 * menu.c (Fx_popup_menu) [HAVE_NS]: Remove unused vars.
3084
3085 2009-11-10 Jan Djärv <jan.h.d@swipnet.se>
3086
3087 * xmenu.c (xmenu_show): Must not be static after 2009-11-09 changes.
3088
3089 2009-11-09 Juanma Barranquero <lekktu@gmail.com>
3090
3091 * menu.c [HAVE_NTGUI]: Declare current_popup_menu.
3092
3093 2009-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
3094
3095 * menu.c (Fx_popup_menu): Consolidate versions from xmenu.c,
3096 w32menu.c, and nsmenu.m.
3097 Simplify the obsolete case where position is nil.
3098 (cleanup_popup_menu): New function, moved from nsmenu.m.
3099 (struct skp): Remove slot `notreal'.
3100 (single_keymap_panes, keymap_panes): Remove arg `notreal' and
3101 adjust callers.
3102 (single_menu_item): Adjust call to parse_menu_item.
3103 (syms_of_menu): Defsubr x-popup-menu.
3104 * menu.h (Vmenu_updating_frame): Consolidate declarations from *menu.c.
3105 (keymap_panes): Don't export any more.
3106 (mouse_position_for_popup, w32_menu_show, ns_menu_show)
3107 (xmenu_show): Declare.
3108 * keyboard.c (parse_menu_item): Remove arg `notreal'.
3109 (menu_bar_item, read_char_minibuf_menu_prompt): Adjust callers.
3110 * keyboard.h (parse_menu_item): Update declaration.
3111 * xmenu.c (Fx_popup_menu): Remove.
3112 (syms_of_xmenu): Don't defsubr x-popup-menu.
3113 * w32menu.c (Fx_popup_menu): Remove.
3114 (syms_of_w32menu): Don't defsubr x-popup-menu.
3115 * nsmenu.m (cleanup_popup_menu): Remove.
3116 (ns_menu_show): Rename from ns_popup_menu and remove all the code
3117 moved to menu.c's Fx_popup_menu.
3118 (Fx_popup_menu): Remove.
3119 (syms_of_nsmenu): Don't defsubr x-popup-menu, and don't initialize
3120 menu_items (it's done in menu.c already).
3121
3122 2009-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
3123
3124 * keyboard.c (parse_menu_item): Handle `notreal' a bit earlier.
3125 Use `tem' less. Make sure KEYEQ holds a string or nil (bug#4879).
3126
3127 2009-11-08 Chong Yidong <cyd@stupidchicken.com>
3128
3129 * xmenu.c (Fx_popup_menu): Extract event timestamp. Pass it to
3130 xmenu_show. Hide any tooltip before opening a menu.
3131 (xmenu_show): New arg. Pass it to create_and_show_popup_menu.
3132 (create_and_show_popup_menu): New arg. Pass it to gtk_menu_popup.
3133
3134 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3135
3136 Let integers use up 2 tags to give them one extra bit and thus double
3137 their range.
3138 * lisp.h (USE_2_TAGS_FOR_INTS): New macro.
3139 (LISP_INT_TAG, case_Lisp_Int, LISP_STRING_TAG, LISP_INT_TAG_P):
3140 New macros.
3141 (enum Lisp_Type): Use them. Give explicit values.
3142 (Lisp_Type_Limit): Remove.
3143 (XINT, XUINT, make_number) [!USE_LISP_UNION_TYPE]:
3144 (MOST_NEGATIVE_FIXNUM, MOST_POSITIVE_FIXNUM, INTMASK):
3145 Pay attention to USE_2_TAGS_FOR_INTS.
3146 (INTEGERP): Use LISP_INT_TAG_P.
3147 * fns.c (internal_equal): Simplify the default case.
3148 (sxhash): Use case_Lisp_Int.
3149 * data.c (wrong_type_argument): Don't check against Lisp_Type_Limit
3150 any more.
3151 (Ftype_of): Use case_Lisp_Int.
3152 (store_symval_forwarding): Take into account the fact that Ints can
3153 now have more than one tag.
3154 * buffer.c (syms_of_buffer): Use LISP_INT_TAG.
3155 buffer_slot_type_mismatch):
3156 * xfaces.c (face_attr_equal_p):
3157 * print.c (print_object):
3158 * alloc.c (mark_maybe_object, mark_object, survives_gc_p):
3159 Use case_Lisp_Int.
3160
3161 2009-11-06 Eli Zaretskii <eliz@gnu.org>
3162
3163 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce by further 30K.
3164
3165 * alloc.c (make_pure_c_string): Fix last change to avoid compiler
3166 warning.
3167
3168 2009-11-06 Jan Djärv <jan.h.d@swipnet.se>
3169
3170 * gtkutil.c (xg_event_is_for_scrollbar): New function (bug#4870).
3171
3172 * gtkutil.h: Declare xg_event_is_for_scrollbar (bug#4870).
3173
3174 * xterm.c (handle_one_xevent): Call xg_event_is_for_scrollbar for
3175 ButtonPressRelease and MotionNotify (bug#4870).
3176
3177 2009-11-06 Dan Nicolaescu <dann@ics.uci.edu>
3178
3179 * keymap.c (syms_of_keymap): Construct exclude_keys in pure memory.
3180
3181 * xterm.c (syms_of_xterm):
3182 * xselect.c (syms_of_xselect):
3183 * xmenu.c (syms_of_xmenu):
3184 * xfns.c (syms_of_xfns):
3185 * xfaces.c (syms_of_xfaces):
3186 * xdisp.c (syms_of_xdisp):
3187 * window.c (syms_of_window):
3188 * w32fns.c (syms_of_w32fns):
3189 * undo.c (syms_of_undo):
3190 * textprop.c (syms_of_textprop):
3191 * terminal.c (syms_of_terminal):
3192 * syntax.c (syms_of_syntax):
3193 * sound.c (syms_of_sound):
3194 * search.c (syms_of_search):
3195 * print.c (syms_of_print):
3196 * minibuf.c (syms_of_minibuf):
3197 * macros.c (syms_of_macros):
3198 * keymap.c (syms_of_keymap, initial_define_key)
3199 (initial_define_lispy_key):
3200 * keyboard.c (syms_of_keyboard):
3201 * insdel.c (syms_of_insdel):
3202 * image.c (syms_of_image):
3203 * fringe.c (syms_of_fringe):
3204 * frame.c (syms_of_frame):
3205 * fontset.c (syms_of_fontset):
3206 * fns.c (syms_of_fns):
3207 * fns.c (syms_of_fns):
3208 * fileio.c (syms_of_fileio):
3209 * fileio.c (syms_of_fileio):
3210 * eval.c (syms_of_eval):
3211 * doc.c (syms_of_doc):
3212 * dispnew.c (syms_of_display):
3213 * dired.c (syms_of_dired):
3214 * dbusbind.c (syms_of_dbusbind):
3215 * data.c (syms_of_data):
3216 * composite.c (syms_of_composite):
3217 * coding.c (syms_of_coding):
3218 * cmds.c (syms_of_cmds):
3219 * charset.c (define_charset_internal, syms_of_character):
3220 * ccl.c (syms_of_ccl):
3221 * category.c (syms_of_category, init_category_once):
3222 * casetab.c (syms_of_casetab):
3223 * casefiddle.c (syms_of_casefiddle):
3224 * callint.c (syms_of_callint):
3225 * bytecode.c (syms_of_bytecode):
3226 * buffer.c (keys_of_buffer, syms_of_buffer):
3227 * alloc.c (syms_of_alloc):
3228 * process.c (syms_of_process, init_process):
3229 * lread.c (syms_of_lread, init_obarray):
3230 * font.c (build_style_table):
3231 * emacs.c (syms_of_emacs, main): Replace calls to intern with
3232 intern_c_string, calls to make_pure_string with
3233 make_pure_c_string. Use pure_cons instead of Fcons.
3234
3235 * process.c (socket_options): Make it const.
3236 (set_socket_option, init_process): Use a const pointer.
3237
3238 * lread.c (intern_c_string): New function.
3239 (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3240 (defvar_int): Uset it. Make the name const char*.
3241
3242 * lisp.h (defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
3243 (defvar_int): Update prototypes.
3244 (DEFUN, EXFUN): Support for prototypes is now required.
3245 (intern_c_string): New prototype.
3246 (struct Lisp_Subr): Make symbol_name constant.
3247
3248 * font.c (struct table_entry): Remove unused member. Make NAMES
3249 constant.
3250 (weight_table, slant_table, width_table): Make constant.
3251
3252 * emacs.c (struct standard_args): Make name and longname constant.
3253
3254 * character.h (DEFSYM): Use intern_c_string.
3255
3256 2009-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
3257
3258 * alloc.c (make_pure_c_string): New function.
3259
3260 * eval.c (Fautoload): Purecopy all arguments.
3261
3262 2009-11-05 Kenichi Handa <handa@m17n.org>
3263
3264 * fileio.c (Finsert_file_contents): Be sure set coding-system of
3265 the buffer in case of replace.
3266
3267 2009-11-04 Dan Nicolaescu <dann@ics.uci.edu>
3268
3269 * puresize.h (BASE_PURESIZE): Increase to 1620000.
3270
3271 2009-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
3272
3273 * editfns.c (save_restriction_restore): Update the (pt/begv/vz)_markers
3274 when applicable (bug#4851).
3275
3276 * lisp.h: Make USE_LSB_TAG work with USE_LISP_UNION_TYPE.
3277 (P_): Support for prototypes is now required.
3278
3279 2009-10-31 Chong Yidong <cyd@stupidchicken.com>
3280
3281 * frame.c (Fmake_frame_invisible, Fframe_visible_p): Doc fix
3282 (Bug#4827).
3283
3284 2009-10-30 Eli Zaretskii <eliz@gnu.org>
3285
3286 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Redefine to waste less pure space.
3287
3288 2009-10-30 Dan Nicolaescu <dann@ics.uci.edu>
3289
3290 * puresize.h (BASE_PURESIZE): Increase to 1470000.
3291
3292 * lread.c (Fload): Purecopy the file name when building
3293 Vpreloaded_file_list.
3294
3295 2009-10-29 Jason Rumney <jasonr@wanchan.jasonrumney.net>
3296
3297 * w32fns.c (syms_of_w32fns): Change default value of
3298 w32-scroll-lock-modifier to nil. (Bug#2827)
3299
3300 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3301
3302 * minibuf.c (Fall_completions): Fix typos in docstring.
3303
3304 2009-10-26 Andreas Schwab <schwab@redhat.com>
3305
3306 * puresize.h (PURESIZE_RATIO): Increase back to 10/6.
3307
3308 2009-10-26 Juanma Barranquero <lekktu@gmail.com>
3309
3310 * window.c (grow_mini_window): Comment out "delta >= 0" assertion.
3311 For delta < 0, skip check that only makes sense when the mini-window
3312 is going to be enlarged. (Bug#4534)
3313
3314 2009-10-25 Chong Yidong <cyd@stupidchicken.com>
3315
3316 * keyboard.c (read_char_x_menu_prompt): Don't demand a prompt
3317 string in menu maps (Bug#4471).
3318
3319 2009-10-24 Chong Yidong <cyd@stupidchicken.com>
3320
3321 * nsfns.m (ns_set_name, ns_set_name_as_filename): Don't call
3322 FRAME_NS_VIEW on terminal frames (Bug#4765).
3323
3324 2009-10-24 Andreas Schwab <schwab@linux-m68k.org>
3325
3326 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
3327 DBUS_TYPE_UINTnn separately to get proper sign extension.
3328
3329 * dired.c (Ffile_attributes): Simplify now that FIXNUM_OVERFLOW_P
3330 can properly handle unsigned types.
3331 (make_uid, make_gid): Remove.
3332
3333 * lisp.h (FIXNUM_OVERFLOW_P): Fix last change to handle unsigned
3334 types again.
3335
3336 * sysdep.c (procfs_ttyname): Fix sprintf format to match argument type.
3337 (system_process_attributes): Likewise.
3338
3339 2009-10-24 Dan Nicolaescu <dann@ics.uci.edu>
3340
3341 * keymap.c (Fmake_sparse_keymap): Purecopy the name.
3342
3343 * eval.c (Fautoload): Purecopy the filename. Simplify.
3344
3345 * category.c (Fdefine_category): Purecopy docstring.
3346
3347 2009-10-23 Andreas Schwab <schwab@linux-m68k.org>
3348
3349 * lisp.h (FIXNUM_OVERFLOW_P): Remove cast to avoid overflow.
3350
3351 * puresize.h (PURESIZE_RATIO): Decrease to 11/7.
3352
3353 2009-10-23 Chong Yidong <cyd@stupidchicken.com>
3354
3355 * window.c (Fwindow_edges, Fwindow_pixel_edges)
3356 (Fwindow_inside_edges, Fwindow_inside_pixel_edges): Doc fix
3357 (Bug#4775).
3358
3359 2009-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
3360
3361 * fileio.c (syms_of_fileio): Initialize Vdirectory_sep_char.
3362 (init_fileio_once):
3363 * lisp.h (init_fileio_once): Remove.
3364 * emacs.c (main): Don't call init_fileio_once.
3365
3366 2009-10-23 Dan Nicolaescu <dann@ics.uci.edu>
3367
3368 * puresize.h (BASE_PURESIZE): Increase to 1430000.
3369
3370 2009-10-21 Andreas Schwab <schwab@linux-m68k.org>
3371
3372 * doprnt.c (doprnt): Fix overflow check.
3373
3374 2009-10-21 Jan Djärv <jan.h.d@swipnet.se>
3375
3376 * xterm.c (x_term_init): Remove XSynchronize call done for debugging.
3377
3378 * xterm.h (x_wait_for_event): Declare it.
3379
3380 * xterm.c (pending_event_wait): New variable.
3381 (handle_one_xevent): Set pending_event_wait.eventtype to 0 if we
3382 see pending_event_wait.eventtype.
3383 (handle_one_xevent): Don't change gravity when parent changes.
3384 (x_new_font): Call change_frame_size with new rows/columns before we
3385 try to resize the frame.
3386 (x_wait_for_event): New function.
3387 (x_set_window_size_1): Don't change gravity unless change_gravity
3388 is set.
3389 Call XResizeWindow with FRAME_OUTER_WINDOW. If we are visible,
3390 don't change frame size, instead wait for the ConfigureNotify.
3391 (x_set_window_size): Call x_set_window_size_1 for USE_X_TOOLKIT also.
3392 (x_wm_set_size_hint): Remove ifdefs for USE_X_TOOLKIT.
3393 (x_initialize): Initialize pending_event_wait.
3394
3395 * xmenu.c (set_frame_menubar): Add internal border width to menu bar
3396 size.
3397
3398 * widget.c (EmacsFrameSetValues): Add comment.
3399 (EmacsFrameSetCharSize): Just call x_set_window_size.
3400
3401 * gtkutil.c (xg_frame_set_char_size): Flush events and call
3402 x_wait_for_event.
3403 (flush_and_sync): Remove again.
3404 (xg_get_font_name): Suggest monospace if no previous font is known.
3405
3406 2009-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
3407
3408 * character.c (char_resolve_modifier_mask): Don't resolve meta to the
3409 8th bit, since that only made sense in the ASCII world (bug#4751).
3410
3411 2009-10-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3412
3413 * xterm.c (XTread_socket) [!USE_GTK && HAVE_X_I18N]: Don't quit
3414 processing pending events when event is filtered for input method.
3415 (Bug#3681)
3416
3417 2009-10-20 Juanma Barranquero <lekktu@gmail.com>
3418
3419 * fns.c: Add #endif accidentally removed in previous change.
3420
3421 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3422
3423 * fns.c: Remove code for unsupported system: MAC_OS.
3424 * image.c: Likewise. Include setjmp.h.
3425
3426 2009-10-19 Jan Djärv <jan.h.d@swipnet.se>
3427
3428 * xterm.c (x_create_toolkit_scroll_bar): Don't allocate color for
3429 pixel -1 (bug #4742).
3430
3431 2009-10-19 Dan Nicolaescu <dann@ics.uci.edu>
3432
3433 * process.c (create_pty): Remove conditionals for no longer
3434 supported systems: UNIPLUS and RTU.
3435
3436 * xterm.c:
3437 * xfns.c: Remove always true condition: XtSpecificationRelease >= 5.
3438
3439 * alloc.c: Do not define struct catchtag.
3440 * eval.c: Move struct catchtag definition ...
3441 * lisp.h: ... here.
3442
3443 * image.c: Move png.h #include earlier to avoid warnings.
3444
3445 * xterm.c:
3446 * xsmfns.c:
3447 * xselect.c:
3448 * xrdb.c:
3449 * xmenu.c:
3450 * xftfont.c:
3451 * xfont.c:
3452 * xfns.c:
3453 * xfaces.c:
3454 * xdisp.c:
3455 * window.c:
3456 * widget.c:
3457 * w32xfns.c:
3458 * w32uniscribe.c:
3459 * w32term.c:
3460 * w32select.c:
3461 * w32reg.c:
3462 * w32proc.c:
3463 * w32menu.c:
3464 * w32inevt.c:
3465 * w32heap.c:
3466 * w32font.c:
3467 * w32fns.c:
3468 * w32console.c:
3469 * w32.c:
3470 * w16select.c:
3471 * vm-limit.c:
3472 * unexsol.c:
3473 * unexec.c:
3474 * unexcw.c:
3475 * unexaix.c:
3476 * undo.c:
3477 * tparam.c:
3478 * textprop.c:
3479 * terminfo.c:
3480 * terminal.c:
3481 * termcap.c:
3482 * term.c:
3483 * syntax.c:
3484 * sound.c:
3485 * sheap.c:
3486 * search.c:
3487 * scroll.c:
3488 * region-cache.c:
3489 * regex.c:
3490 * ralloc.c:
3491 * process.c:
3492 * print.c:
3493 * nsterm.m:
3494 * nsselect.m:
3495 * nsmenu.m:
3496 * nsimage.m:
3497 * nsfont.m:
3498 * nsfns.m:
3499 * msdos.c:
3500 * minibuf.c:
3501 * menu.c:
3502 * marker.c:
3503 * macros.c:
3504 * keymap.c:
3505 * keyboard.c:
3506 * intervals.c:
3507 * insdel.c:
3508 * indent.c:
3509 * gtkutil.c:
3510 * ftxfont.c:
3511 * ftfont.c:
3512 * fringe.c:
3513 * frame.c:
3514 * fontset.c:
3515 * font.c:
3516 * fns.c:
3517 * floatfns.c:
3518 * filelock.c:
3519 * fileio.c:
3520 * emacs.c:
3521 * editfns.c:
3522 * dosfns.c:
3523 * doprnt.c:
3524 * doc.c:
3525 * dispnew.c:
3526 * dired.c:
3527 * dbusbind.c:
3528 * data.c:
3529 * composite.c:
3530 * coding.c:
3531 * cmds.c:
3532 * cm.c:
3533 * chartab.c:
3534 * charset.c:
3535 * character.c:
3536 * ccl.c:
3537 * category.c:
3538 * casetab.c:
3539 * casefiddle.c:
3540 * callproc.c:
3541 * callint.c:
3542 * bytecode.c:
3543 * buffer.c:
3544 * atimer.c: Include setjmp.h. (Bug#4643)
3545
3546 2009-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
3547
3548 Remove leftover table unibyte_to_multibyte_table.
3549 * character.c (unibyte_to_multibyte_table): Remove.
3550 (Funibyte_char_to_multibyte): Use MAKE_CHAR_MULTIBYTE.
3551 * charset.c (init_charset_once): Don't init unibyte_to_multibyte_table.
3552 * character.h (UNIBYTE_TO_CHAR): New macro.
3553 (MAKE_CHAR_MULTIBYTE): Use it.
3554 (unibyte_to_multibyte_table, unibyte_char_to_multibyte): Remove.
3555 * xdisp.c (get_next_display_element): USE ASCII_CHAR_P.
3556 (message_dolog, set_message_1):
3557 * search.c (Freplace_match):
3558 * editfns.c (Fcompare_buffer_substrings):
3559 * fns.c (Fcompare_strings): Use MAKE_CHAR_MULTIBYTE.
3560 (concat):
3561 * insdel.c (copy_text, count_size_as_multibyte):
3562 Use ASCII_CHAR_P and BYTE8_TO_CHAR.
3563 * term.c (produce_glyphs):
3564 * syntax.c (skip_chars): Use BYTE8_TO_CHAR.
3565 * regex.c (RE_CHAR_TO_MULTIBYTE):
3566 * cmds.c (internal_self_insert):
3567 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use UNIBYTE_TO_CHAR.
3568
3569 * cmds.c (internal_self_insert): `c' is already in "multibyte" form.
3570
3571 2009-10-17 Dan Nicolaescu <dann@ics.uci.edu>
3572
3573 * puresize.h (BASE_PURESIZE): Increase to 1310000.
3574
3575 2009-10-16 Juanma Barranquero <lekktu@gmail.com>
3576
3577 * buffer.c (Fbuffer_name): Doc fix. (Bug#4728)
3578
3579 2009-10-15 Adrian Robert <Adrian.B.Robert@gmail.com>
3580
3581 * nsterm.h (NS_HAVE_NSINTEGER): Back out and augment with CGFloat,
3582 still needed under Tiger.
3583
3584 * nsterm.m (EmacsView-conversationIdentifier): Arg is long.
3585
3586 * m/amdx86-64.h: Don't set LIB_STANDARD and START_FILES under
3587 __Apple__.
3588
3589 * m/intel386.h: Remove DARWIN_OS/_LP64 special case.
3590
3591 2009-10-15 Kenichi Handa <handa@m17n.org>
3592
3593 * print.c (print_object): Escape a symbol like "2E10" too.
3594
3595 2009-10-11 Adrian Robert <Adrian.B.Robert@gmail.com>
3596
3597 Cleanups and changes for 64-bit compile under Snow Leopard.
3598 Based on suggestions by Erik Charlebois.
3599
3600 * nsfns.m (xw-color-values): Use CGFloat where appropriate.
3601
3602 * nsfont.m (ns_char_width): Replace deprecated call.
3603 (ns_findfonts, nsfont_list_family): Use long format in printf, and
3604 cast argument.
3605 (nsfont_open): Use ns_char_width() everywhere.
3606 (ns_uni_to_glyphs, NSGlyphStorage): Use NS[U]Integer where appropriate.
3607
3608 * nsgui.h (NSPoint, NSSize) [!__OBJC__]: Define and use CGFloat.
3609
3610 * nsimage.m (EmacsImage-setXBMColor:,-getPixelAtX:Y:): Use CGFloat
3611 where appropriate.
3612
3613 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Use NSInteger
3614 where appropriate.
3615 (EmacsToolbar-addDisplayItemWithImage:idx:helpText:enabled:):
3616 Use stringWithUTF8String.
3617 (EmacsDialogPanel-initWithContentRect:styleMask:): Fix signature.
3618
3619 * nsterm.h (EmacsView, EmacsMenu, EmacsToolbar, EmacsTooltip):
3620 Add formal protocol mention to inheritance.
3621 [NS_HAVE_NSINTEGER]: Drop conditional and contents.
3622
3623 * nsterm.m (ns_color_to_lisp): Use CGFloat where appropriate.
3624 Fix printf format.
3625 (ns_query_color): Use CGFloat where appropriate.
3626 (EmacsView<NSTextInput>, EmacsScroller): Fix method signatures.
3627 (EmacsScroller-mouseDown:): Use long format in printf, and cast
3628 argument.
3629
3630 * config.in (NS_HAVE_NSINTEGER): Drop.
3631
3632 * dbusbind.c (dbus-method-return-internal)
3633 (dbus-method-error-internal): Use long format in printf, and cast
3634 argument.
3635
3636 * font.c (font_unparse_xlfd, font_unparse_fcname): Use long format
3637 in printf, and cast argument.
3638
3639 * process.c (list_processes_1): Use long format in printf, and
3640 cast argument.
3641
3642 2009-10-11 Glenn Morris <rgm@gnu.org>
3643
3644 * frame.c (Fframe_pixel_height): Doc fix. (Bug#4535)
3645
3646 2009-10-08 Jan Djärv <jan.h.d@swipnet.se>
3647
3648 * gtkutil.c (create_menus): Call gtk_widget_set_size_request for
3649 menu bar with a small width so it doesn't enlarge the frame.
3650
3651 2009-10-08 Juanma Barranquero <lekktu@gmail.com>
3652
3653 * fontset.c (Fset_fontset_font): Fix typos in error messages.
3654
3655 2009-10-06 Glenn Morris <rgm@gnu.org>
3656
3657 * Makefile.in (emacs${EXEEXT}): Remove direct dependence on
3658 SOME_MACHINE_LISP (this enters indirectly via DOC).
3659
3660 2009-10-05 Eli Zaretskii <eliz@gnu.org>
3661
3662 * dired.c (Ffile_attributes): Doc fix. (Bug#4638)
3663
3664 2009-10-04 Eli Zaretskii <eliz@gnu.org>
3665
3666 * xdisp.c (syms_of_xdisp) <unibyte-display-via-language-environment>:
3667 Doc fix.
3668
3669 2009-10-03 Martin Rudalics <rudalics@gmx.at>
3670
3671 * window.c (Fdelete_window): Check WINDOW argument. (Bug#4618)
3672
3673 2009-10-02 Michael Albinus <michael.albinus@gmx.de>
3674
3675 * lisp.h (Qdelete_directory_internal): Remove, because it is not
3676 used anymore outside fileio.c.
3677
3678 * w32fns.c (Fsystem_move_file_to_trash): Use delete-directory.
3679
3680 2009-10-01 Juanma Barranquero <lekktu@gmail.com>
3681
3682 * lisp.h (Qdelete_directory_internal):
3683 Declare, instead of Qdelete_directory.
3684
3685 * w32fns.c (Fsystem_move_file_to_trash): Use it.
3686
3687 2009-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
3688
3689 * eval.c (Fcalled_interactively_p): Add `kind' argument.
3690
3691 2009-10-01 Michael Albinus <michael.albinus@gmx.de>
3692
3693 * fileio.c (Fdelete_directory_internal): Rename from
3694 Fdelete_directory. It is not a command anymore. It has no file
3695 name handler.
3696
3697 2009-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
3698
3699 * xdisp.c (get_next_display_element): Use an enum in last change.
3700
3701 2009-09-28 Kenichi Handa <handa@m17n.org>
3702
3703 * xdisp.c (get_next_display_element): Pay attention to
3704 unibyte_display_via_language_environment in handling
3705 Vnobreak_char_display.
3706
3707 2009-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
3708
3709 * nsterm.h (ns_app_name): New extern variable.
3710
3711 * nsterm.m (ns_app_name): New variable.
3712 (ns_term_init): Set and use it.
3713 (ns_term_shutdown): Use it.
3714
3715 * nsmenu.m (ns_update_menubar): Use ns_app_name. Sync with xmenu.c.
3716 (EmacsMenu-clear:, ns_popup_dialog): Use ns_app_name.
3717
3718 * nsfns.m (ns_set_name_iconic, ns_set_name)
3719 (ns_set_name_as_filename, x-create-frame, ns-get-resource)
3720 (ns-set-resource): Use ns_app_name instead of NSProcessInfo call.
3721
3722 * menu.c (find_and_return_menu_selection) [HAVE_NS]:
3723 Remove double-casting in client_data comparison.
3724
3725 2009-09-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3726
3727 * keyboard.c (make_lispy_event): Remember last wheel direction.
3728 (syms_of_keyboard) <wheel_syms>: Compute array size at compile time.
3729
3730 2009-09-26 Glenn Morris <rgm@gnu.org>
3731
3732 * Makefile.in (MSDOS_SUPPORT) [MSDOS]: Remove unneeded '/' in
3733 internal.elc. Add term/pc-win.elc.
3734 (WINDOW_SUPPORT) [HAVE_X_WINDOWS]: Add term/common-win.elc and
3735 term/x-win.elc.
3736 (WINNT_SUPPORT) [WINDOWSNT]: Add term/common-win.elc and
3737 term/w32-win.elc.
3738 (NS_SUPPORT): New.
3739 (lisp): Add NS_SUPPORT.
3740 (SOME_MACHINE_LISP): Add term/w32-win.elc and emacs-lisp/easymenu.elc.
3741
3742 2009-09-25 David Reitter <david.reitter@gmail.com>
3743
3744 * nsmenu.m (EmacsMenu-clear): Recognize application menu
3745 on Mac OS X 10.6+ (bug#4513).
3746
3747 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3748
3749 * frame.c (xrdb_get_resource): Return nil for empty string resources;
3750 some parts of Emacs code (like font selection) don't grok them.
3751 See http://lists.gnu.org/archive/html/emacs-devel/2009-09/msg00528.html
3752
3753 2009-09-24 Andreas Schwab <schwab@redhat.com>
3754
3755 * coding.c (decode_coding_iso_2022): Fix operator precedence.
3756
3757 2009-09-24 Juanma Barranquero <lekktu@gmail.com>
3758
3759 * dired.c (Fdirectory_files): Fix typo in docstring.
3760
3761 2009-09-23 Adrian Robert <Adrian.B.Robert@gmail.com>
3762
3763 * nsterm.m (EV_TIMESTAMP, x_set_window_size)
3764 (EmacsApp-application:openFiles:): Remove GNUstep conditionals.
3765 (EmacsScroller-setPosition:portion:whole:): Remove -display call
3766 under GNUstep.
3767 (EmacsView-initFrameFromEmacs:): Set autoresizing mask.
3768
3769 * nsfont.m (ns_glyph_metrics): Remove GNUstep conditional for
3770 glyph advancement.
3771
3772 2009-09-22 Adrian Robert <Adrian.B.Robert@gmail.com>
3773
3774 * nsterm.m (CGContextSetFontRenderingMode): Drop declaration.
3775 (EmacsScroller-mouseDown:): Use SCROLL_BAR_FIRST_DELAY.
3776
3777 * nsmenu.m (EmacsMenu-menuNeedsUpdate): Ignore if frame has been
3778 deleted (bug #4492).
3779
3780 * nsfont.m (Vns_reg_to_script): New lisp variable.
3781 (syms_of_nsfont): Declare it.
3782 (ns_registry_to_script): New function.
3783 (ns_get_req_script): Call it.
3784 (ns_findfonts): Don't give up on non-unicode registry.
3785
3786 * font.c (DEFAULT_ENCODING) [HAVE_NS]: Remove special case.
3787
3788 2009-09-20 Tom Tromey <tromey@redhat.com>
3789
3790 * eval.c (find_handler_clause): Make stack-trace-on-error work in
3791 batch mode (bug#4228).
3792
3793 2009-09-18 Rob Christie <robchristie@gmail.com> (tiny change)
3794
3795 * nsmenu.m (EmacsMenu-parseKeyEquiv:): Parse key equivalent more
3796 carefully. (Bug #4339)
3797
3798 2009-09-18 Chong Yidong <cyd@stupidchicken.com>
3799
3800 * syntax.c (Fchar_syntax): Minor doc fix (Bug#4400).
3801
3802 2009-09-18 Adrian Robert <Adrian.B.Robert@gmail.com>
3803
3804 * emacs.c (inhibit_x_resources): Update doc string for NS.
3805 (main) [HAVE_NS]: Don't process --no-init-file option. Remove
3806 legacy code for -NXHost. Fix error printf in daemon case.
3807
3808 * nsterm.h (ns_no_defaults): Remove.
3809
3810 * nsterm.m (ns_no_defaults): Remove.
3811 (ns_term_init): Switch ns_no_defaults -> inhibit_x_resources.
3812 (ns_use_qd_smoothing): Remove legacy variable.
3813 (EmacsView-windowShouldZoom:): Set frame left_pos, top_pos and
3814 don't update the NSWindow itself.
3815 (EmacsView-windowWillUseStandardFrame:defaultFrame:): Improve
3816 state detection and store user rect ourselves. (Bug #3581)
3817
3818 * nsfont.m (nsfont_draw) [NS_IMPL_COCOA]: Don't use
3819 ns_use_qd_smoothing.
3820
3821 * nsfns.m (x_get_string_resource): Ape just-previous changes to other
3822 platform versions. Drop support for emacs-20-style face specs.
3823 (x-close-connection): Drop PSFlush() under OS X.
3824 (x-focus-frame): Activate the app first. (Bug #4180)
3825
3826 2009-09-17 Juanma Barranquero <lekktu@gmail.com>
3827
3828 * emacs.c (inhibit_x_resources): New variable.
3829 (main) [HAVE_NS]: Don't process --quick command line option.
3830 (syms_of_emacs) <inhibit-x-resources>: DEFVAR_BOOL it.
3831
3832 * lisp.h (inhibit_x_resources): Declare it extern.
3833
3834 * w32reg.c (x_get_string_resource):
3835 * xrdb.c (x_get_string_resource): Obey inhibit_x_resources.
3836
3837 2009-09-17 Eli Zaretskii <eliz@gnu.org>
3838
3839 * Makefile.in (MSDOS_SUPPORT, SOME_MACHINE_LISP):
3840 Add lisp/term/internal.elc.
3841
3842 2009-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
3843
3844 * frame.c (x_get_resource_string): Re-add for non-toolkit builds
3845 (bug#4461).
3846
3847 2009-09-17 Dan Nicolaescu <dann@ics.uci.edu>
3848
3849 * puresize.h (BASE_PURESIZE): Increase to 1290000.
3850
3851 * Makefile.in (OTHER_FILES): Define using autoconf, not cpp.
3852 (OBJECTS_MACHINE): Remove, unused.
3853
3854 2009-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
3855
3856 * frame.c (x_get_resource_string): Remove unused.
3857
3858 2009-09-15 Jan Djärv <jan.h.d@swipnet.se>
3859
3860 * xterm.c (x_new_font): Call change_frame_size before calling
3861 x_set_window_size, in case frame size won't change.
3862
3863 * frame.c (x_set_font): Remove dead code.
3864
3865 2009-09-15 Stefan Monnier <monnier@iro.umontreal.ca>
3866
3867 * lread.c (Fload): Also run do-after-load-evaluation while dumping.
3868
3869 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3870
3871 * lread.c (Fload): Don't output a message after loading an obsolete
3872 package any more (done in Lisp now).
3873
3874 2009-09-12 Chong Yidong <cyd@stupidchicken.com>
3875
3876 * fns.c (syms_of_fns): Doc fix (Bug#4227).
3877
3878 2009-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3879
3880 * keymap.c (Fwhere_is_internal): Use nconc2.
3881
3882 2009-09-11 Alan Mackenzie <acm@muc.de>
3883
3884 * dispnew.c (Fsend_string_to_terminal): Amend doc string to cover
3885 batch mode.
3886
3887 2009-09-11 Andreas Schwab <schwab@linux-m68k.org>
3888
3889 * xdisp.c (display_mode_element): Detect cycles.
3890
3891 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3892
3893 * keymap.c (where_is_internal): Don't erroneously return nil right after
3894 filling the cache.
3895 (where_is_internal_1): Fix up typo.
3896
3897 2009-09-11 Glenn Morris <rgm@gnu.org>
3898
3899 * frame.c (Fx_parse_geometry): Unify the X and NS versions so that they
3900 share a common doc-string.
3901
3902 2009-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3903
3904 * keymap.c (get_keymap): Return the actual keymap symbol rather than
3905 t for autoloaded keymaps when autoloading is not allowed (bug#4393).
3906
3907 * keymap.c (QCadvertised_binding): New constant.
3908 (syms_of_keymap): Initialize it.
3909 (Fwhere_is_internal): Try and use bindings from :advertised-binding
3910 if applicable.
3911
3912 2009-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
3913
3914 * keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
3915 (parse_menu_item): Streamline since bindings are recomputed all the
3916 time anyway. Don't bother checking Vdefine_key_rebound_commands any
3917 more and don't support lmenu's menu-alias any more either.
3918
3919 * keymap.c (where_is_internal_data): Make noindirect a boolean.
3920 (where_is_internal): Strip it down to only traverse the keymaps.
3921 Move the cache handling from Fwhere_is_internal to here.
3922 (Fwhere_is_internal): Move the handling of remapping and the choice of
3923 the best binding from where_is_internal to here.
3924 Unify the cached/noncached paths, so remapping is also handled
3925 correctly when the cache is used, and so the cache can be used to
3926 speed up remap-handling when applicable.
3927 Give preference to non-remapped bindings.
3928 * doc.c (Fsubstitute_command_keys): Let Fwhere_is_internal's prefer
3929 non-remapped bindings.
3930 * keyboard.c (parse_menu_item): Let Fwhere_is_internal handle
3931 command remapping.
3932
3933 * xdisp.c (display_mode_element): Move list length limit from 50 to
3934 5000 (see thread starting with <xbaik5174uqu.fsf@cam.ac.uk>).
3935
3936 2009-09-09 Adrian Robert <Adrian.B.Robert@gmail.com>
3937
3938 * nsfont.m (ns_get_family): Don't force first letter to uppercase.
3939
3940 2009-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
3941
3942 * xdisp.c (Vtruncate_partial_width_windows): Improve docstring.
3943 (Bug#4334)
3944
3945 * keymap.c (where_is_internal): Filter out shadowed remappings.
3946 Assume that where_is_internal returns unshadowed bindings to simplify
3947 the code and get rid of the gotos. Use ASIZE.
3948
3949 2009-09-04 Jan Djärv <jan.h.d@swipnet.se>
3950
3951 * xterm.c (x_focus_changed): If we get a focusout and pointer
3952 is invisible, make it visible.
3953
3954 * xterm.h: Remove condition for declaration of
3955 x_*_window_to_frame.
3956
3957 2009-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
3958
3959 * dispnew.c (Fsend_string_to_terminal): Make it work again on the
3960 initial terminal as well.
3961
3962 2009-09-02 Jan Djärv <jan.h.d@swipnet.se>
3963
3964 * xterm.h: Rename x_non_menubar_window_to_frame to
3965 x_menubar_window_to_frame.
3966
3967 * xterm.c: Remove declarations also in xterm.h.
3968 (XTmouse_position): Do not return valid positions
3969 for clicks in the menubar and the toolbar for Gtk+.
3970
3971 * xfns.c (x_any_window_to_frame): Assume less about Gtk+ internals,
3972 if the widget for the event has the same top level as a frame,
3973 return the frame.
3974 (x_menubar_window_to_frame): Detect menu bar even with Gtk+
3975 internal windows, bug #4122.
3976 (x_non_menubar_window_to_frame): Remove.
3977
3978 2009-09-02 Glenn Morris <rgm@gnu.org>
3979
3980 * buffer.c (default-major-mode): Move most of the doc from here...
3981 (major-mode): ... to here.
3982
3983 2009-08-30 Nick Roberts <nickrob@snap.net.nz>
3984
3985 * process.c (wait_reading_process_output): Keep the descriptor
3986 when pty is used by a non-child process, e.g., in I/O buffer of
3987 GDB this allows inferior to be restarted.
3988
3989 2009-08-29 Eli Zaretskii <eliz@gnu.org>
3990
3991 * xdisp.c (redisplay_internal): Remove redundant test and collapse
3992 both branches into one.
3993
3994 2009-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3995
3996 * emacs.c (USAGE1): Remove --(no-)multibyte, --(no-)unibyte.
3997 (main): Use enable-multibyte-characters rather than
3998 default-enable-multibyte-characters. Output a warning message when
3999 running a unibyte session.
4000
4001 2009-08-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4002
4003 * unexmacosx.c (print_load_command_name) [LC_DYLD_INFO]: Add cases
4004 LC_DYLD_INFO and LC_DYLD_INFO_ONLY.
4005 (copy_data_segment): Also copy __program_vars section.
4006 (copy_dyld_info) [LC_DYLD_INFO]: New function.
4007 (dump_it) [LC_DYLD_INFO]: Use it.
4008
4009 * s/darwin.h [temacs]: Undef HAVE_POSIX_MEMALIGN.
4010
4011 2009-08-28 Eli Zaretskii <eliz@gnu.org>
4012
4013 * makefile.w32-in ($(BLD)/doc.$(O)): Depend on buildobj.h, not on
4014 $(SRC)/buildobj.h.
4015 (buildobj.h): Renamed from $(SRC)/buildobj.h.
4016 (make-buildobj-CMD, make-buildobj-SH): Create buildobj.h, not
4017 $(SRC)/buildobj.h.
4018 (clean): Add buildobj.h.
4019
4020 2009-08-28 Teodor Zlatanov <tzz@lifelogs.com>
4021
4022 * print.c (print_object): Set escapeflag to 1 when printing
4023 hashtable keys and values.
4024
4025 2009-08-27 Stefan Monnier <monnier@iro.umontreal.ca>
4026
4027 * lread.c (read_integer): Use doubles (and potentially return a float
4028 number) as we do in string-to-number.
4029 (read1): Use strtol to read integers, signal errors on strtol's
4030 overflow and use floats if strtol's output is too large for
4031 Elisp integers.
4032
4033 2009-08-27 Eli Zaretskii <eliz@gnu.org>
4034
4035 * makefile.w32-in ($(SRC)/buildobj.h, make-buildobj-CMD)
4036 (make-buildobj-SH): Fix last change.
4037 (SRC): Move to before where it's first used.
4038
4039 2009-08-27 Kenichi Handa <handa@m17n.org>
4040
4041 * process.c (send_process): Use encode_coding_object instead of
4042 encode_coding_string to perform eol-conversion even if the string
4043 is unibyte.
4044
4045 * coding.c (encode_coding_utf_16): Fix checking of a Unicode
4046 character.
4047
4048 * cmds.c (Fself_insert_command): Avoid unnecessay
4049 unibyte->multibyte conversion. (Bug#4240) (Bug#4037)
4050
4051 2009-08-26 Dan Nicolaescu <dann@ics.uci.edu>
4052
4053 * callproc.c (Fcall_process): Remove always true #if.
4054
4055 * lisp.h: Replace #if 0 code for checking with text pointing to
4056 the --enable-checking configure flag.
4057
4058 * emacs.c (main): Mention the --enable-profiling configure flag
4059 instead of using CFLAGS.
4060
4061 2009-08-26 Ken Raeburn <raeburn@raeburn.org>
4062
4063 * Makefile.in (buildobj.h): New target.
4064 (doc.o): Depend on it.
4065 (temacs${EXEEXT}): Don't generate buildobj.lst.
4066 (mostlyclean): Delete buildobj.h, not buildobj.lst.
4067 * makefile.w32-in ($(SRC)/buildobj.h): New target.
4068 ($(BLD)/doc.$(O)): Depend on it.
4069 (make-buildobj-CMD, make-buildobj-SH): New targets. (Syntax help
4070 provided by Eli Zaretskii.)
4071 ($(TEMACS)): Don't generate buildobj.lst.
4072 * doc.c: Include buildobj.h.
4073 (buildobj): New static variable.
4074 (Fsnarf_documentation): Use it, instead of opening and reading
4075 buildobj.lst.
4076
4077 2009-08-25 Michael Albinus <michael.albinus@gmx.de>
4078
4079 * dbusbind.c (Fdbus_call_method)
4080 (Fdbus_call_method_asynchronously): Use English numeric format for
4081 timeout values in doc string.
4082
4083 2009-08-25 Kenichi Handa <handa@m17n.org>
4084
4085 * alloc.c (mark_char_table): New function.
4086 (mark_object): Use mark_char_table for a char-table.
4087
4088 * lisp.h (CHAR_TABLE_REF_ASCII): New macro.
4089 (CHAR_TABLE_REF): Use it.
4090
4091 2009-08-23 Ken Raeburn <raeburn@raeburn.org>
4092
4093 * Makefile.in (emacs${EXEEXT}) [CANNOT_DUMP]: Set EMACSLOADPATH
4094 before invoking the newly build emacs to check for load-path
4095 shadowing.
4096
4097 2009-08-22 Glenn Morris <rgm@gnu.org>
4098
4099 * Makefile.in (bootstrap_exe): New variable.
4100 (.el.elc, ${lispsource}loaddefs.el, bootstrap-emacs${EXEEXT}):
4101 Use ${bootstrap_exe}.
4102
4103 2009-08-22 Eli Zaretskii <eliz@gnu.org>
4104
4105 * coding.h (encode_coding_string): Don't encode unibyte strings.
4106 (Bug#4047)
4107
4108 2009-08-22 Michael Albinus <michael.albinus@gmx.de>
4109
4110 * config.in (HAVE_DBUS_WATCH_GET_UNIX_FD): Add.
4111
4112 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
4113 intended as hotfix only.
4114 (xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
4115
4116 2009-08-21 Adrian Robert <Adrian.B.Robert@gmail.com>
4117
4118 * nsterm.m (ns_get_color): Update documentation properly for last
4119 change, and clean up loose ends in the code left by it. Fix
4120 longstanding bug with 16-bit hex parsing, and add support for
4121 yet another X11 format (rgb:r/g/b) for compatibility.
4122 * nsfns.m (EmacsDialogPanel-runDialogAt): Add declaration of
4123 timer_check() to avoid crash on Leopard/PPC. Bug #2154.
4124
4125 2009-08-21 Stefan Monnier <monnier@iro.umontreal.ca>
4126
4127 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 500 for js.el.
4128
4129 2009-08-20 Michael Albinus <michael.albinus@gmx.de>
4130
4131 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
4132 (xd_add_watch, xd_remove_watch): Use it. Print debug messages.
4133 (xd_initialize, xd_pending_messages): Check, whether
4134 $DBUS_SESSION_BUS_ADDRESS is set.
4135
4136 2009-08-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4137
4138 * nsfns.m (Fxw_color_values): Return 3-element list. Doc fix.
4139
4140 * nsterm.m (ns_get_color): Remove incompatible color formats again.
4141
4142 2009-08-20 Glenn Morris <rgm@gnu.org>
4143
4144 * emacs.c (system-type): Doc fix.
4145
4146 2009-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
4147
4148 * keyboard.c (syms_of_keyboard): Default to 5 buttons, which should be
4149 enough for the most common situations. Avoid SET_SYMBOL_VALUE.
4150
4151 2009-08-18 Michael Albinus <michael.albinus@gmx.de>
4152
4153 * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus):
4154 New functions.
4155 (xd_initialize): Revert change from 2009-08-16.
4156
4157 2009-08-18 Kenichi Handa <handa@m17n.org>
4158
4159 * fontset.c (Ffontset_font): If a nil element is found in a
4160 font-group vector, return nil.
4161
4162 2009-08-17 Chong Yidong <cyd@stupidchicken.com>
4163
4164 * process.c (status_notify): Don't perform redisplay.
4165 (Fdelete_process, list_processes_1, process_send_signal):
4166 Expliticly perform redisplay.
4167 (wait_reading_process_output): Always check process status, but
4168 don't perform redisplay unless DO_DISPLAY is non-zero (Bug#2930).
4169
4170 2009-08-17 Ken Raeburn <raeburn@raeburn.org>
4171
4172 * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
4173 (XFLOAT_INIT): New macro for storing a float value.
4174 * alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
4175 * fns.c (sxhash): Copy out the value of a float in order to
4176 examine its bytes.
4177 * dbusbind.c (xd_append_arg): Likewise.
4178
4179 * emacs.c (main): Don't call syms_of_data twice.
4180
4181 2009-08-16 Michael Albinus <michael.albinus@gmx.de>
4182
4183 * dbusbind.c (xd_initialize): Add connection file descriptor to
4184 input_wait_mask, in order to let select() detect, whether a new
4185 message has been arrived.
4186 (Fdbus_call_method_asynchronously): Allow nil HANDLER.
4187
4188 2009-08-15 Michael Albinus <michael.albinus@gmx.de>
4189
4190 * dbusbind.c (xd_get_dispatch_status, xd_pending_messages):
4191 New functions.
4192
4193 * lisp.h (xd_pending_messages): Declare.
4194
4195 * keyboard.c (readable_events): Call xd_pending_messages.
4196
4197 2009-08-15 Chong Yidong <cyd@stupidchicken.com>
4198
4199 * eval.c (Fcalled_interactively_p, Finteractive_p): Doc fix (Bug#3936).
4200
4201 * xdisp.c (pop_it): Don't pop into a display vector (Bug#4131).
4202
4203 * buffer.c (set_buffer_internal_1)
4204 (swap_out_buffer_local_variables): Check for unbound local
4205 variables (Bug#4138).
4206
4207 2009-08-14 Eli Zaretskii <eliz@gnu.org>
4208
4209 * process.c (create_pty): Fix last change.
4210
4211 2009-08-13 Chong Yidong <cyd@stupidchicken.com>
4212
4213 * image.c (xbm_read_bitmap_data): New arg inhibit_image_error.
4214 (xbm_load_image): Caller changed.
4215 (xbm_file_p): Avoid signalling an image_error (Bug#4107).
4216
4217 2009-08-13 Nick Roberts <nickrob@snap.net.nz>
4218
4219 * process.c (create_pty): New function.
4220 (Fstart_process): Use it to allow Emacs to just associate a pty
4221 with the buffer. See associated change in gdb-mi.el.
4222 (list_processes_1): Deal with no program name.
4223 (start_process_unwind): Use pid == -2 to mean no process.
4224
4225 2009-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
4226
4227 * cmds.c (nonundocount): New global variable.
4228 (keys_of_cmds): Initialize it.
4229 (Fself_insert_command): Use it to combine upto 20 sequential chars
4230 into a single undo entry, just like the Qself_insert_command code in
4231 keyboard.c does.
4232 Call frame_make_pointer_invisible, also like the Qself_insert_command
4233 code in keyboard.c does.
4234 * keyboard.c (command_loop_1): Use the new global nonundocount rather
4235 than its own local replacement for it.
4236
4237 2009-08-10 Ken Raeburn <raeburn@raeburn.org>
4238
4239 * fns.c (concat): Don't re-set string length to its current value.
4240
4241 * coding.h (decode_coding_string, encode_coding_string):
4242 Use SBYTES macro.
4243
4244 * doprnt.c (doprnt_lisp): Delete unused function.
4245 (doprnt): Merge with doprnt1, discarding lispstrings code.
4246 * lisp.h (doprnt_lisp): Don't declare.
4247
4248 2009-08-07 Juri Linkov <juri@jurta.org>
4249
4250 * puresize.h (BASE_PURESIZE): Increase to 1270000.
4251
4252 2009-08-07 Dan Nicolaescu <dann@ics.uci.edu>
4253
4254 * print.c (syms_of_print): Undo previous change.
4255
4256 2009-08-05 Teodor Zlatanov <tzz@lifelogs.com>
4257
4258 * lread.c (read1, syms_of_lread): Read hashtables back from the
4259 readable format.
4260
4261 * print.c (print_preprocess, print_object): Print hashtables fully
4262 and readably.
4263 (syms_of_print): Provide 'hashtable-print-readable.
4264
4265 2009-08-02 Adrian Robert <Adrian.B.Robert@gmail.com>
4266
4267 * nsfont.m (ns_descriptor_to_entity): Handle case when descriptor has
4268 no family set.
4269 (nsfont_open): Handle case when entity has no family.
4270
4271 2009-07-29 Adrian Robert <Adrian.B.Robert@gmail.com>
4272
4273 * nsfont.m (ns_findfonts): Fix 2009-07-24 change to return only one
4274 element, not a list, for match case.
4275
4276 2009-07-28 Kenichi Handa <handa@m17n.org>
4277
4278 * font.c (font_parse_xlfd): Check DPI and AVGWIDTH properties more
4279 rigidly.
4280
4281 * xfont.c (xfont_list_pattern): Don't ignore the return value of
4282 font_parse_xlfd. Check font properties more rigidly.
4283
4284 2009-07-27 Dan Nicolaescu <dann@ics.uci.edu>
4285
4286 * s/netbsd.h (SIGNALS_VIA_CHARACTERS): Remove, already defined in
4287 bsd-common.h.
4288
4289 2009-07-27 Kenichi Handa <handa@m17n.org>
4290
4291 * xfaces.c (face_with_height): Call font_clear_prop.
4292
4293 2009-07-26 Chong Yidong <cyd@stupidchicken.com>
4294
4295 * dispnew.c (init_display): Use Qx, Qw32, and Qns.
4296
4297 * xterm.c (x_term_init): Use Qx.
4298
4299 * nsfont.m (nsfont_draw): Revert 2009-07-15 change.
4300
4301 * nsterm.m (ns_maybe_dumpglyphs_background): Revert 2009-07-15 change.
4302 (ns_get_color): Revert 2009-07-16 change.
4303
4304 2009-07-25 Eli Zaretskii <eliz@gnu.org>
4305
4306 * lread.c (syms_of_lread) <force_load_messages>: New variable.
4307 (Fload): Use it to force load messages, even if NOMESSAGES is non-nil.
4308
4309 2009-07-25 Ken Raeburn <raeburn@raeburn.org>
4310
4311 * coding.h (decode_coding_string, encode_coding_string):
4312 Use SCHARS macro.
4313
4314 * lread.c: Rewrite 2009-07-21 changes.
4315 (load_depth): Delete.
4316 (Qload_in_progress): New variable.
4317 (load_unwind): Don't reference load_depth or load_in_progress.
4318 (Fload): Likewise; specbind Qload_in_progress instead.
4319 (init_lread): Don't initialize load_depth.
4320 (syms_of_lread): Initialize and protect Qload_in_progress.
4321
4322 2009-07-24 Adrian Robert <Adrian.B.Robert@gmail.com>
4323
4324 * nsfont.m (ns_findfonts): Correctly return fallback in match case.
4325
4326 2009-07-23 Yavor Doganov <yavor@gnu.org>
4327
4328 * nsfont.m (NSFontDescriptor.h): Explicitly include under GNUstep.
4329
4330 2009-07-23 Adrian Robert <Adrian.B.Robert@gmail.com>
4331
4332 * nsterm.m (EmacsView-keyUp:): Only act when running under Tiger.
4333 Bugs 3792, 3720, 2402.
4334 (ns_lookup_indexed_color): Check for bad index.
4335 (ns_index_color): Init unused slot to 0.
4336 (ns_dumpglyphs_box_or_relief): Replace useless xassert with an if().
4337 Bug 3714, possibly 3082.
4338
4339 2009-07-22 Jason Rumney <jasonr@gnu.org>
4340
4341 * w32fns.c (w32_wnd_proc) [WM_IME_STARTCOMPOSITION]:
4342 Position IME window at cursor (Bug#2570).
4343 (w32_wnd_proc) [WM_IME_CHAR]: Release context when finished.
4344 (globals_of_w32fns): Dynamically load functions required above.
4345
4346 * w32term.c (w32_draw_window_cursor): Send message to reposition
4347 any IME window.
4348
4349 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4350
4351 * fileio.c: Revert 2009-07-16 changes.
4352 (Vauto_save_include_big_deletions): New variable.
4353 (Fdo_auto_save): Disable auto-save only if
4354 auto-save-include-big-deletions is nil.
4355
4356 2009-07-21 Chong Yidong <cyd@stupidchicken.com>
4357
4358 * xdisp.c (move_it_to): For continued lines ending in a tab, take
4359 the overflowed pixels into account (Bug#3879).
4360
4361 2009-07-21 Ken Raeburn <raeburn@raeburn.org>
4362
4363 * lread.c (load_depth): New variable.
4364 (Fload, load_unwind, init_lread): Set it to the load recursion
4365 depth; set load_in_progress as a simple boolean based on the
4366 current load_depth. (Bug#3892)
4367
4368 2009-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
4369
4370 * nsfont.m (ns_has_attribute): Remove.
4371 (ns_findfonts, nsfont_open): Use ns_attribute_fvalue() instead.
4372
4373 2009-07-18 Juri Linkov <juri@jurta.org>
4374
4375 * process.c (Fset_process_query_on_exit_flag): Mention killing
4376 a buffer in docstring.
4377
4378 2009-07-17 Kenichi Handa <handa@m17n.org>
4379
4380 * casetab.c (shuffle): Fix the logic of setting up the cycle.
4381
4382 2009-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4383
4384 * nsfns.m (Fns_set_alpha): Remove function.
4385 (syms_of_nsfns): Don't defsubr it.
4386
4387 * nsterm.m (ns_get_color): Remove incompatible color formats.
4388 (ns_color_to_lisp): Generate #rrggbb color format string.
4389
4390 2009-07-16 Richard Stallman <rms@gnu.org>
4391
4392 * fileio.c (Fwrite_region, Fdo_auto_save): Handle save_length = -2.
4393 (Fset_buffer_auto_saved): Handle save_length = -2.
4394
4395 2009-07-16 Chong Yidong <cyd@stupidchicken.com>
4396
4397 * xterm.c (Qx_gtk_map_stock): New var.
4398
4399 * gtkutil.c (update_frame_tool_bar): Use Qx_gtk_map_stock instead
4400 of calling intern each time.
4401
4402 2009-07-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4403
4404 * nsfont.m (nsfont_draw): Remove code for stippling, which actually
4405 does tiling.
4406
4407 * nsterm.m (ns_maybe_dumpglyphs_background): Likewise.
4408
4409 2009-07-14 Kenichi Handa <handa@m17n.org>
4410
4411 * font.c (font_vconcat_entity_vectors): New function.
4412 (struct font_sort_data): New member font_driver_preference.
4413 (font_compare): Check font_driver_preference.
4414 (font_sort_entities): The format of the first argument changed.
4415 (font_delete_unmatched): Likewise.
4416 (font_list_entities): The return type changed.
4417 (font_select_entity): The format of the second argument changed.
4418 (font_find_for_lface): Adjuste for the above changes.
4419 Don't suppress the checking of C even if the repertory supports it.
4420 (Flist_fonts): Adjust for the above changes.
4421
4422 * ftfont.c (ftfont_spec_pattern): New arg langname. Change caller.
4423 (ftfont_list): Adjust for the change of ftfont_spec_pattern.
4424 Reject a font who has adstyle property that is different from a
4425 langname derived from registry property.
4426 (ftfont_match): Adjust for the change of ftfont_spec_pattern.
4427
4428 2009-07-13 Eli Zaretskii <eliz@gnu.org>
4429
4430 * dired.c (directory_files_internal) [WINDOWSNT]: Don't make a
4431 local copy of dirfilename.
4432
4433 2009-07-13 Kenichi Handa <handa@m17n.org>
4434
4435 * chartab.c (sub_char_table_ref_and_range): Fix the range check
4436 against max_char.
4437
4438 * cmds.c (internal_self_insert): Check sym by SYMBOLP before
4439 calling XSYMBOL (sym).
4440
4441 2009-07-11 Eli Zaretskii <eliz@gnu.org>
4442
4443 * dired.c (directory_files_internal_w32_unwind) [WINDOWSNT]:
4444 New function.
4445 (directory_files_internal) [WINDOWSNT]:
4446 Bind w32-get-true-file-attributes to either t or nil, depending whether
4447 the filesystem of the directory is fast or slow.
4448
4449 * w32.c (logon_network_drive): Don't assume PATH is an absolute
4450 file name.
4451 (is_slow_fs): New function.
4452 (stat): Use it to determine whether to issue more system calls to
4453 get accurate file attributes, when w32-get-true-file-attributes is
4454 `local'.
4455
4456 2009-07-10 Jan Djärv <jan.h.d@swipnet.se>
4457
4458 * xfns.c (Fx_select_font): Remember last font selected in
4459 x_last_font_name and use that the next time. Also try the frame
4460 parameter font-parameter as default to the font dialog.
4461
4462 2009-07-10 Kenichi Handa <handa@m17n.org>
4463
4464 * xftfont.c (xftfont_open): Fix typo: FC_RGBA->FC_HINT_STYLE.
4465
4466 2009-07-09 Eli Zaretskii <eliz@gnu.org>
4467
4468 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
4469
4470 * w32.c (stat): Treat UNC file names as residing on remote
4471 drives. (Bug#3542)
4472
4473 2009-07-09 Kenichi Handa <handa@m17n.org>
4474
4475 * fontset.c (fontset_find_font): Fix previous change.
4476
4477 2009-07-08 Michael Albinus <michael.albinus@gmx.de>
4478
4479 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
4480 (Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
4481 error flag.
4482
4483 2009-07-08 Kenichi Handa <handa@m17n.org>
4484
4485 * fontset.c (fontset_find_font): Fix the logic of handling
4486 charset_matched.
4487 (font_for_char): Delete unused var.
4488 (generate_ascii_font_name): Delete it.
4489
4490 * coding.h (JIS_TO_SJIS2): Fix the code range check.
4491
4492 * coding.c (detect_coding_sjis): Handle shift_jis-2004 correctly.
4493 (encode_coding_sjis): Fix the code range check.
4494
4495 2009-07-07 Chong Yidong <cyd@stupidchicken.com>
4496
4497 * fileio.c (Fsubstitute_in_file_name, Ffile_name_directory)
4498 (Fexpand_file_name): Copy string data properly (Bug#3772).
4499
4500 2009-07-07 Jan Djärv <jan.h.d@swipnet.se>
4501
4502 * xterm.c (handle_one_xevent): Only call x_check_fullscreen on the
4503 first MapNotify.
4504
4505 2009-07-07 Kenichi Handa <handa@m17n.org>
4506
4507 * character.h (unibyte_has_multibyte_table): Delete extern.
4508 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): Delete it.
4509
4510 * charset.c (Fset_charset_priority): Update charset_unibyte.
4511 (syms_of_charset): Initialize charset_unibyte.
4512
4513 * character.c (unibyte_has_multibyte_table): Delete it.
4514 (multibyte_char_to_unibyte): Use CHAR_TO_BYTE8 instead of checking
4515 charset_unibyte.
4516 (multibyte_char_to_unibyte_safe): Likewise.
4517 (Funibyte_char_to_multibyte): Don't check charset_unibyte.
4518
4519 * xdisp.c (get_next_display_element): Decode it->c by charset_unibyte.
4520 (x_produce_glyphs): Likewise.
4521
4522 * .gdbinit (xcharset): Fix the treating $arg0.
4523
4524 2009-07-04 Eli Zaretskii <eliz@gnu.org>
4525
4526 Emulation of `getloadavg' on MS-Windows.
4527 * w32.c: Include float.h.
4528 (g_b_init_get_native_system_info, g_b_init_get_system_times)
4529 (GetNativeSystemInfo_Proc, GetSystemTimes_Proc): Declare.
4530 (get_native_system_info, get_system_times): New functions.
4531 (buf_next, buf_prev, sample_system_load, getavg): New subroutines.
4532 (getloadavg): Rewrite using GetSystemTimes and GetNativeSystemInfo.
4533 (globals_of_w32): Initialize g_b_init_get_native_system_info,
4534 g_b_init_get_system_times, and num_of_processors.
4535
4536 2009-07-03 Jason Rumney <jasonr@gnu.org>
4537
4538 * w32term.c (w32_initialize): Use standard types.
4539
4540 2009-07-03 Eli Zaretskii <eliz@gnu.org>
4541
4542 * dired.c (Ffile_attributes): Decode user and group names by the
4543 locale's encoding. (Bug#3443)
4544
4545 2009-07-03 Dan Nicolaescu <dann@ics.uci.edu>
4546
4547 * sysdep.c (sys_suspend): Remove USG_JOBCTRL #ifdef, unused.
4548 (mkdir): Remove MKDIR_PROTOTYPE #ifdef, unused.
4549
4550 * callproc.c (child_setup): Use #else instead of a separate #ifdef.
4551
4552 * term.c (init_tty): Remove spurious #ifdef.
4553
4554 * m/mips.h: Mention this file is also used for netbsd.
4555 * m/pmax.h: Remove file.
4556
4557 2009-07-03 Jan Djärv <jan.h.d@swipnet.se>
4558
4559 * xterm.h (struct x_display_info): Add invisible_cursor.
4560 (struct x_output): Add current_cursor.
4561
4562 * xterm.c (XTtoggle_invisible_pointer): New function.
4563 (x_define_frame_cursor): Don't define cursor if invisible or the
4564 same as before. Set current_cursor.
4565 (x_create_terminal): Set toggle_invisible_pointer_hook.
4566
4567 * xfns.c (make_invisible_cursor): New function.
4568 (x_set_mouse_color): Call make_invisible_cursor.
4569 Set current_cursor.
4570 (x_window): Set current_cursor.
4571
4572 * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook.
4573
4574 * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after
4575 inserting a character.
4576 (read_avail_input): Call frame_make_pointer_visible.
4577
4578 * frame.c (Vmake_pointer_invisible): New variable.
4579 (frame_make_pointer_invisible, frame_make_pointer_visible):
4580 New functions.
4581 (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt.
4582
4583 * frame.h: Declare frame_make_pointer_invisible and
4584 frame_make_pointer_visible.
4585 (struct frame): Add pointer_invisible.
4586
4587 2009-07-02 Jan Djärv <jan.h.d@swipnet.se>
4588
4589 * gtkutil.c (xg_frame_set_char_size): Do set width/height if the
4590 frame isn't visible.
4591 (xg_frame_resized): If width/height is -1, get size of window
4592 from X server.
4593
4594 * xterm.c (handle_one_xevent): Call xg_frame_resized for USE_GTK
4595 for MapNotify.
4596
4597 * gtkutil.c (xg_frame_set_char_size): Do not set pixel width/height
4598 here or call change_frame_size. Just call flush_and_sync.
4599 (flush_and_sync): Reintroduce.
4600
4601 2009-07-01 Jan Djärv <jan.h.d@swipnet.se>
4602
4603 * xterm.h (struct x_display_info): Add Xatom_net_wm_state_sticky.
4604
4605 * xterm.c (x_handle_net_wm_state): Also look for sticky.
4606 (x_term_init): Initialize Xatom_net_wm_state_sticky.
4607
4608 * frame.h: Declare Qsticky.
4609
4610 * w32fns.c (w32_frame_parm_handlers): Set 0 for sticky.
4611
4612 * nsfns.m (ns_frame_parm_handlers): Ditto.
4613
4614 * frame.c: Declare Qsticky.
4615 (frame_parms): Add sticky.
4616
4617 * xfns.c (x_frame_parm_handlers): Let x_set_sticky handle sticky.
4618
4619 * xterm.h: Declare x_set_sticky.
4620
4621 * xterm.c (x_set_sticky): New function.
4622
4623 * gtkutil.c (xg_tool_bar_proxy_help_callback): New function.
4624 (xg_tool_bar_menu_proxy): Attach enter/leave events to
4625 xg_tool_bar_proxy_help_callback.
4626
4627 * emacs.c (USAGE3, standard_args): Add -mm and --maximized.
4628
4629 * frame.c: Qmaximized is new.
4630 (x_set_frame_parameters): Do not handle fullscreen specially.
4631 Only set width and height if explicitly set.
4632 (x_set_fullscreen): Handle Qmaximized.
4633 (x_set_font, x_figure_window_size): Do not handle fullscreen specially.
4634 (syms_of_frame): Initialize Qmaximized.
4635
4636 * frame.h (fullscreen_type): Add FULLSCREEN_MAXIMIZED.
4637 Declare Qfullwidth, Qfullheight, Qfullboth, Qmaximized.
4638
4639 * xterm.c (handle_one_xevent): Remove call to x_check_fullscreen
4640 for Expose event. Add call to x_check_fullscreen for MapNotify event.
4641 Remove all code w.r.t. fullscreen from ConfigureNotify event. Do not
4642 set gravity to NorthWestGravity when USE_GTK.
4643 (set_wm_state): New function.
4644 (do_ewmh_fullscreen): Use set_wm_state. Also handle FULLSCREEN_MAXIMIZED.
4645 (x_handle_net_wm_state): Handle FULLSCREEN_MAXIMIZED.
4646 (x_check_fullscreen): Simplify so we only handle EMWH type of fullscreen
4647 or the case when no window manager is running. That means remove calls
4648 to x_real_positions and x_fullscreen_adjust.
4649
4650 * gtkutil.c (flush_and_sync, x_wm_size_hint_off): Remove.
4651 (xg_frame_set_char_size): Remove calls to x_wm_size_hint_off and
4652 flush_and_sync.
4653 (xg_height_changed): New function.
4654 (xg_create_frame_widgets): Remove call to gtk_widget_set_size_request
4655 and gtk_window_set_policy. Set frame gravity after parsing the
4656 geometry string.
4657 (xg_update_frame_menubar, free_frame_menubar)
4658 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
4659 (update_frame_tool_bar, free_frame_tool_bar): Call xg_height_changed.
4660 Remove calls to xg_frame_set_char_size.
4661
4662 2009-07-01 Kenichi Handa <handa@m17n.org>
4663
4664 * keyboard.c (decode_keyboard_code): New function.
4665 (tty_read_avail_input): Decode the input bytes if necessary.
4666
4667 * coding.c (setup_coding_system):
4668 Initialize coding->carryover_bytes to 0.
4669 (Fset_keyboard_coding_system_internal): If CODING-SYSTEM is nil,
4670 use Qno_conversion.
4671
4672 2009-07-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4673
4674 * Makefile.in (SOME_MACHINE_LISP): Add ../lisp/term/common-win.elc.
4675
4676 2009-06-30 Chong Yidong <cyd@stupidchicken.com>
4677
4678 * xftfont.c (xftfont_open): Avoid passing NULL argument to XftLockFace.
4679
4680 2009-06-30 Jason Rumney <jasonr@gnu.org>
4681
4682 * w32term.c (w32_initialize): Use GetModuleHandle for library that
4683 is already loaded.
4684 Set user model ID if supported (bug#1849).
4685
4686 2009-06-29 Jim Meyering <meyering@redhat.com>
4687
4688 Remove useless if-before-xfree test.
4689 * nsfont.m (nsfont_close): Remove useless test.
4690 * term.c (delete_tty): Likewise.
4691 * w32.c (system_process_attributes): Likewise.
4692 * w32font.c (w32font_close): Likewise.
4693 * xfaces.c (x_free_gc): Likewise.
4694 * xselect.c (buffer): Likewise.
4695
4696 2009-06-28 Andreas Schwab <schwab@linux-m68k.org>
4697
4698 * process.c (send_process): Keep decoded string in a local
4699 variable and protect it from GC. (Bug#3521)
4700
4701 2009-06-28 Eli Zaretskii <eliz@gnu.org>
4702
4703 * term.c (create_tty_output) [MSDOS]: #ifdef away.
4704 (tty_free_frame_resources) [MSDOS]: Add a DOS-specific version.
4705
4706 2009-06-28 Chong Yidong <cyd@stupidchicken.com>
4707
4708 * xdisp.c (start_display, handle_face_prop)
4709 (move_it_vertically_backward, cursor_row_fully_visible_p)
4710 (redisplay_window, try_window_id, produce_image_glyph):
4711 Delete some #ifdef-ed out code chunks that are now obsolete.
4712
4713 * xterm.c (x_update_window_begin, x_new_focus_frame)
4714 (x_scroll_bar_handle_click, handle_one_xevent)
4715 (handle_one_xevent, XTread_socket, x_focus_on_frame)
4716 (x_make_frame_visible, x_make_frame_invisible)
4717 (x_wm_set_icon_pixmap, x_initialize): Delete some #ifdef-ed out
4718 code chunks that are now obsolete.
4719
4720 2009-06-28 Michael Albinus <michael.albinus@gmx.de>
4721
4722 * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
4723 xd_symbol_to_dbus_type. With Solaris 2.11, it was said to compile
4724 for hours, when optimzation is enabled.
4725 (xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
4726 (xd_read_message): Make them static.
4727
4728 2009-06-27 Chuck Blake <cblake@pdos.csail.mit.edu> (tiny change)
4729
4730 * term.c (turn_on_face): Allow simultaneously bold and dim
4731 terminal faces (Bug#3530).
4732
4733 2009-06-27 Chong Yidong <cyd@stupidchicken.com>
4734
4735 * frame.c (x_get_arg): Check if dpyinfo is non-NULL.
4736
4737 * xdisp.c (mouse_face_from_buffer_pos): Fix detection of
4738 truncation glyphs (Bug#3686).
4739
4740 2009-06-27 Glenn Morris <rgm@gnu.org>
4741
4742 * m/pmax.h: Restore file, with only netbsd portions.
4743
4744 2009-06-26 David Reitter <david.reitter@gmail.com>
4745
4746 * nsterm.m (keydown): Avoid infinite loop.
4747
4748 2009-06-26 Peter Jolly <peter@jollys.org> (tiny change)
4749
4750 * ftfont.c (get_adstyle_property): Call font_intern_prop with 1 as
4751 the arg FORCE_SYMBOL.
4752
4753 2009-06-25 Kenichi Handa <handa@m17n.org>
4754
4755 * fontset.c (fontset_find_font): When a usable rfont_def is found
4756 in a fallback font-group, make it the first element of the group.
4757
4758 2009-06-24 Chong Yidong <cyd@stupidchicken.com>
4759
4760 * emacs-icon.h: Always define gnu_xpm_bits on GTK (bug#3671).
4761
4762 2009-06-24 Kenichi Handa <handa@m17n.org>
4763
4764 * fontset.c (fontset_get_font_group): Return 0 if no font-group is
4765 set for C.
4766 (fontset_font): Record the availability of a font for C both in
4767 the realized fontsets of the current one and the default one.
4768
4769 2009-06-23 Dan Nicolaescu <dann@ics.uci.edu>
4770
4771 * sysdep.c (child_setup_tty): Remove SIGNALS_VIA_CHARACTERS
4772 conditional, it is always defined on AIX.
4773
4774 2009-06-23 Miles Bader <miles@gnu.org>
4775
4776 * window.c (Vrecenter_redisplay): New variable.
4777 (syms_of_window): Initialize it.
4778 (Qtty): New extern declaration.
4779 (Frecenter): Only do redisplay if Vrecenter_redisplay requests it.
4780
4781 2009-06-23 Jim Meyering <meyering@redhat.com>
4782
4783 * src/ftfont.c (setup_otf_gstring, ftfont_shape_by_flt):
4784 Use xmalloc and xrealloc (not malloc and realloc), so subsequent heap
4785 pointer dereferences are guaranteed to be valid.
4786
4787 2009-06-23 Kenichi Handa <handa@m17n.org>
4788
4789 * emacs.c (main): Call init_font ().
4790
4791 * font.h (Vfont_log): Extern it.
4792 (FONT_ADD_LOG, FONT_DEFERRED_LOG): New macros.
4793
4794 * font.c (font_sort_entities, font_list_entities)
4795 (font_matching_entity, font_open_entity)
4796 (font_close_object): Change font_add_log to FONT_ADD_LOG.
4797 (Vfont_log): Delete static.
4798 (font_log_env_checked): Delete this variable.
4799 (font_add_log): Don't check font_log_env_checked.
4800 (font_deferred_log): Check Vfont_log.
4801 (init_font): New function.
4802
4803 * ftfont.c: Change font_add_log to FONT_ADD_LOG.
4804
4805 * w32font.c: Change font_add_log to FONT_ADD_LOG.
4806
4807 * w32uniscribe.c: Change font_add_log to FONT_ADD_LOG.
4808
4809 * xfont.c: Change font_add_log to FONT_ADD_LOG.
4810
4811 * fontset.c (fontset_font): Call FONT_DEFERRED_LOG.
4812 (face_for_char): Don't call font_deferred_log here.
4813 (font_for_char): Likewise.
4814
4815 2009-06-22 Chong Yidong <cyd@stupidchicken.com>
4816
4817 * w32term.c (x_draw_glyph_string): Use the glyph string's width
4818 rather than its background_width for drawing the overline and
4819 underline (Bug#489).
4820
4821 * xterm.c (x_draw_glyph_string): Use the glyph string's width
4822 rather than its background_width for drawing the overline and
4823 underline (Bug#489).
4824 (xg_default_icon_file): New variable.
4825 (syms_of_xterm): Initialize it to the Emacs SVG icon file.
4826 (x_bitmap_icon): Under GTK, use xg_default_icon_file.
4827
4828 * xdisp.c (Qbefore_string, Qafter_string): Add externs.
4829 (load_overlay_strings): Remove externs.
4830 (fast_find_position): Function deleted.
4831 (mouse_face_from_buffer_pos): New function, based on
4832 fast_find_position. Correctly handle before-strings,
4833 display-strings, and after-strings (Bug#1220).
4834 (note_mouse_highlight): Use mouse_face_from_buffer_pos.
4835
4836 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4837
4838 * xdisp.c (IT_DISPLAYING_WHITESPACE): Define for !HAVE_WINDOW_SYSTEM.
4839 (move_it_in_display_line_to, move_it_in_display_line_to)
4840 (display_line): Remove #ifdef HAVE_WINDOW_SYSTEM.
4841
4842 2009-06-21 Chong Yidong <cyd@stupidchicken.com>
4843
4844 * Branch for 23.1.
4845
4846 2009-06-21 Jason Rumney <jasonr@gnu.org>
4847
4848 * w32term.c (keyboard_codepage): New static variable.
4849 (w32_read_socket) [WM_INPUTLANGCHANGE]: Update it.
4850 (w32_read_socket) [WM_CHAR]: Use it to decode character
4851 input (bug#3237).
4852 (w32_initialize): Initialize it.
4853 (codepage_for_locale): New function.
4854
4855 2009-06-20 Ken Raeburn <raeburn@raeburn.org>
4856
4857 * process.c (status_message): Pass Faset index argument as a lisp
4858 object, so as to work with USE_LISP_UNION_TYPE.
4859
4860 2009-06-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4861
4862 * coding.c (Ffind_coding_systems_region_internal):
4863 Cache checked characters.
4864
4865 2009-06-18 Kenichi Handa <handa@m17n.org>
4866
4867 * coding.c (decode_coding_iso_2022): Check MSB of bytes more rigidly.
4868
4869 2009-06-18 Andreas Schwab <aschwab@redhat.com>
4870
4871 * xdisp.c (redisplay_internal): Check that the frame is still
4872 live after redisplay of its windows.
4873 (redisplay_windows): Check that the window is still live.
4874
4875 2009-06-17 Andreas Schwab <schwab@linux-m68k.org>
4876
4877 * coding.c (detect_coding_utf_16): Fix previous change.
4878
4879 2009-06-16 Kenichi Handa <handa@m17n.org>
4880
4881 * coding.c (detect_coding_utf_16): Fix the logic of rejecting
4882 UTF-16 by checking the dispersion of Eth and Oth bytes.
4883
4884 2009-06-15 Andreas Schwab <schwab@linux-m68k.org>
4885
4886 * coding.c (detect_coding_utf_16): Fix typo counting odd bytes.
4887
4888 2009-06-15 Kenichi Handa <handa@m17n.org>
4889
4890 * process.c (status_message): Fix previous change. Be sure to
4891 decode a localized string.
4892
4893 2009-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4894
4895 * xterm.c (x_delete_terminal): Put previous change in #if 0 and
4896 add comment explaining why.
4897
4898 2009-06-14 Sidney Markowitz <sidney@sidney.com>
4899
4900 * nsmenu.m (EmacsTooltip: setText): Set height of tooltip.
4901
4902 2009-06-14 Adrian Robert <Adrian.B.Robert@gmail.com>
4903
4904 * nsfont.m (ns_attribute_value): Remove.
4905 (ns_attribute_fvalue): Incorporate code from ns_attribute_value.
4906 (ns_has_attribute): Shrink the normal range.
4907 (ns_findfonts): Don't worry about requested spec in determining
4908 need for synthItal.
4909 (ns_get_covering_families): Retain scriptToFamilies.
4910
4911 2009-06-14 Seiji Zenitani <zenitani@mac.com>
4912
4913 * xdisp.c [USE_MAC_TOOLBAR]: Remove obsolete definition for Mac Carbon.
4914
4915 2009-06-11 Kenichi Handa <handa@m17n.org>
4916
4917 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4918 overhang for the static composition case.
4919
4920 2009-06-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4921
4922 * xdisp.c (x_get_glyph_overhangs): Fix calculation of right
4923 overhang for the automatic composition case.
4924
4925 * xterm.c (x_compute_glyph_string_overhangs): Handle the automatic
4926 composition case.
4927
4928 2009-06-10 Chong Yidong <cyd@stupidchicken.com>
4929
4930 * xdisp.c (get_next_display_element): When handling wrap-prefix
4931 and line-prefix, treat \n as a control character (bug#3502).
4932
4933 2009-06-10 Kenichi Handa <handa@m17n.org>
4934
4935 * font.c (font_parse_family_registry): Fix for one-char foundry.
4936 (font_sort_entities): Initialize prefer_prop[FONT_AVGWIDTH_INDEX].
4937
4938 2009-06-09 Dmitry Dzhus <dima@sphinx.net.ru> (tiny change)
4939
4940 * process.c (status_message): Fix handling of multibyte signal
4941 string (Bug#3499).
4942
4943 2009-06-09 Jim Meyering <meyering@redhat.com>
4944
4945 * xfaces.c (Fx_load_color_file): Avoid array bounds error if the
4946 color name is missing.
4947
4948 2009-06-09 Kenichi Handa <handa@m17n.org>
4949
4950 * charset.c (Fmap_charset_chars): In docstring, state clearly that
4951 FROM-CODE and TO-CODE are codepoints of CHARSET.
4952
4953 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4954
4955 * nsterm.m (ns_use_system_highlight_color): Drop, unused.
4956
4957 2009-06-08 Adrian Robert <Adrian.B.Robert@gmail.com>
4958
4959 Changes to support :script/:lang/:otf in NS font driver.
4960 * nsfont.m (nsfont_escape_name, nsfont_unescape_name)
4961 (nsfont_get_family, nsfont_char_width): Rename to ns_ prefix to
4962 indicate not part of font driver interface, and change callers.
4963 (ns_get_family): Remove pointless null check.
4964 (nsfont_spec_to_traits, nsfont_fmember_to_entity): Replace with
4965 ns_spec_to_descriptor, ns_descriptor_to_entity.
4966 (nsfont_trait_distance, nsfont_make_fontset_for_font): Remove.
4967 (ns_attribute_value, ns_attribute_fvalue, ns_has_attribute)
4968 (ns_spec_to_descriptor, ns_descriptor_to_entity)
4969 (ns_charset_covers, ns_lang_to_script, ns_otf_to_script)
4970 (ns_get_req_script, ns_accumulate_script_ranges)
4971 (ns_script_to_charset, ns_get_covering_families, ns_findfonts):
4972 New functions.
4973 (nsfont_list, nsfont_match): Use ns_findfonts.
4974 (nsfont_open): Use font descriptor instead of traits.
4975 (nsfont_draw): Handle "automatic" (lookup-table) compositions.
4976 (dump_glyphstring): Rename to ns_dump_glyphstring.
4977
4978 * nsterm.h (dump_glyphstring): Rename to ns_dump_glyphstring.
4979
4980 * nsfns.m (Fns_popup_font_panel): Use shared font manager.
4981
4982 * fontset.c (fontset_from_font): Remove NS-specific code.
4983
4984 2009-06-08 Peter Jones <pjones@pmade.com> (tiny change)
4985
4986 * nsterm.m (ns_draw_window_cursor): Respect cursor_type for
4987 nonactive windows.
4988
4989 2009-06-08 Felix Mueller <felix@enqueue.eu> (tiny change)
4990
4991 * nsterm.m (ns_init_paths): Append path separator to INFOPATH variable.
4992
4993 2009-06-08 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
4994
4995 * keyboard.c (kbd_buffer_get_event): Null-check used_mouse_menu.
4996
4997 2009-06-07 Chong Yidong <cyd@stupidchicken.com>
4998
4999 * xdisp.c (move_it_in_display_line_to): On text-only terminals,
5000 account for the overflowing of newlines into the last glyph on the
5001 display line (Bug#3482).
5002
5003 2009-06-05 David Reitter <david.reitter@gmail.com>
5004
5005 * nsselect.m (Fx_own_selection_internal, Fx_selection_exists_p)
5006 (Fx_selection_owner_p): Rename from Fns_own_selection_internal,
5007 Fns_selection_exists_p, Fns_selection_owner_p.
5008
5009 2009-06-03 Jason Rumney <jasonr@gnu.org>
5010
5011 * w32fns.c (x_create_tip_frame): Use the uniscribe font backend if
5012 available. (Bug#3379)
5013
5014 2009-05-29 Kenichi Handa <handa@m17n.org>
5015
5016 * coding.c (get_translation_table):
5017 Check Venable_character_translation.
5018
5019 2009-05-26 David Reitter <david.reitter@gmail.com>
5020
5021 * nsterm.m (ns_raise_frame): Only raise frame if visible.
5022 (x_make_frame_visible): Move frame to front rather than calling
5023 ns_raise_frame().
5024 (keyDown:): Do not swallow events that aren't re-sent if frame
5025 isn't key window.
5026 (drawRect:): Do not set visibility/iconified flags because
5027 drawRect may be called by NSView even if the frame is hidden.
5028
5029 * nsfns.m (Fx_create_frame): Follow other ports in
5030 determining visibility; default to t. Ensure async_visible is set.
5031
5032 2009-05-23 Eli Zaretskii <eliz@gnu.org>
5033
5034 * dired.c (Ffile_attributes): Doc fix.
5035
5036 2009-05-22 Chong Yidong <cyd@stupidchicken.com>
5037
5038 * m/mips.h [GNU_LINUX]: Don't define DATA_START (Bug#2685).
5039
5040 2009-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
5041
5042 * xfont.c (xfont_list_pattern): Don't initialize xfont_scripts_cache
5043 and xfont_scratch_props.
5044 (syms_of_xfont): Do it here instead.
5045 (xfont_find_ccl_program): Delete, unused.
5046 (xfont_open): Delete unused var `i'.
5047
5048 2009-05-21 Kenichi Handa <handa@m17n.org>
5049
5050 * fontset.c (Qlatin): Don't make it static.
5051
5052 * xfont.c (xfont_chars_supported, xfont_supported_scripts):
5053 New functions.
5054 (xfont_scripts_cache, xfont_scratch_props): New variables.
5055 (Qlatin, Vscalable_fonts_allowed): Extern it.
5056 (xfont_list_pattern): Argument changed. Callers changed.
5057 Check Vscalable_fonts_allowed. Check the support of a script.
5058 (xfont_list): Don't reject a font spec with :script property.
5059 (xfont_has_char): Fix setting of encoding.
5060 (syms_of_xfont): Staticpro and initialize xfont_scripts_cache and
5061 xfont_scratch_props.
5062
5063 2009-05-19 Kenichi Handa <handa@m17n.org>
5064
5065 * font.c (font_sort_entities): Rename from font_sort_entites.
5066 Callers changed.
5067
5068 2009-05-18 Kenichi Handa <handa@m17n.org>
5069
5070 * font.c (font_find_for_lface): Copy SPEC's FONT_TYPE too.
5071
5072 2009-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
5073
5074 * frame.c (do_switch_frame) [NS_IMPL_COCOA]: Don't raise any window.
5075 (delete_frame) [NS_IMPL_COCOA]: Instead, do it here.
5076
5077 2009-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5078
5079 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase here.
5080 (x_delete_terminal): Dissociate resource database from display and
5081 then call XrmDestroyDatabase before closing display.
5082
5083 2009-05-18 Adrian Robert <Adrian.B.Robert@gmail.com>
5084
5085 * nsterm.m (ns_read_socket): Remove unused variable.
5086 * frame.c (do_switch_frame): Under NS_IMPL_COCOA section, check
5087 whether selected frame is viable before raising it (based on patch
5088 by David Reitter), and improve commentary.
5089 * nsfont.m (nsfont_make_fontset_for_font): Avoid a compiler warning.
5090
5091 2009-05-15 Kenichi Handa <handa@m17n.org>
5092
5093 * font.c (Ffont_spec): Check arguments.
5094
5095 2009-05-14 Chong Yidong <cyd@stupidchicken.com>
5096
5097 * xfaces.c (tty_supports_face_attributes_p): Recognize unspecified
5098 weight when testing attributes (Bug#3282).
5099
5100 2009-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5101
5102 * gtkutil.c (xg_frame_set_char_size): Set frame pixel width/height to
5103 what we expect to get in the next ConfigureNotify event.
5104
5105 * xftfont.c (xftfont_open): Make sure that Xrender extension is added
5106 before Xft one (Bug#1696).
5107
5108 2009-05-07 David Reitter <david.reitter@gmail.com>
5109
5110 * nsfns.m (Fx_display_planes): Compute bitplanes using
5111 NSBitsPerPixelFromDepth (Bug#3207).
5112
5113 2009-05-10 Chong Yidong <cyd@stupidchicken.com>
5114
5115 * editfns.c (Ftranspose_regions): Doc fix (Bug#3248).
5116
5117 2009-05-10 Ulrich Mueller <ulm@gentoo.org>
5118
5119 * s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.
5120
5121 2009-05-07 David Reitter <david.reitter@gmail.com>
5122
5123 * nsterm.m (ns_dumpglyphs_stretch, ns_dumpglyphs_image):
5124 Respect mouse face background.
5125
5126 2009-05-07 David Reitter <david.reitter@gmail.com>
5127
5128 * nsterm.m (note_mouse_movement, ns_frame_up_to_date):
5129 Mouse movement/highlight: bracket drawing operations
5130 in ns_update_begin and ns_update_end.
5131
5132 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5133
5134 * nsfns.m (ns_get_screen): Rewrite.
5135 Don't presume selected-frame is of type `ns'.
5136
5137 * font.c (font_update_drivers): Sanity fallback to avoid disabling
5138 all drivers.
5139
5140 * nsterm.m (-windowDidResize:): Avoid inf-loop under GNUStep.
5141
5142 2009-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5143
5144 * keyboard.h (add_user_signal): Fix typo in extern.
5145
5146 * lisp.h (add_user_signal): Remove extern.
5147
5148 * unexelf.c (unexec): Consider a section to precede the .bss section
5149 if its addresses overlap that of .bss.
5150 (unexec) [NS_IMPL_GNUSTEP]: Copy ObjC-related data from old file
5151 instead of dumping process.
5152
5153 2009-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5154
5155 * keyboard.c (syms_of_keyboard): Staticpro pending_funcalls.
5156
5157 2009-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
5158
5159 * Makefile.in (ctagsfiles1, ctagsfiles2): Include ObjC files in TAGS.
5160
5161 2009-05-02 Dan Nicolaescu <dann@ics.uci.edu>
5162
5163 * xterm.c (x_handle_net_wm_state): Move declaration of lval before
5164 any statements.
5165
5166 2009-05-02 Andreas Schwab <schwab@linux-m68k.org>
5167
5168 * process.c (read_process_output): Make sure the current buffer is
5169 always restored.
5170
5171 * coding.c (record_conversion_result): Don't modify
5172 Vlast_code_conversion_error for successful result.
5173 (alloc_destination): Don't clobber conversion result. (Bug#1650)
5174
5175 2009-05-01 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
5176
5177 * charset.c (load_charset): Reformat X==Y==Z to (X==Y)==Z.
5178 (load_charset_map): Remove unnecessary code.
5179
5180 2009-04-30 David Reitter <david.reitter@gmail.com>
5181
5182 * nsterm.m (convert_ns_to_X_keysym): Define function keys f16
5183 through f24.
5184
5185 2009-04-30 Chong Yidong <cyd@stupidchicken.com>
5186
5187 * xfaces.c (face_at_buffer_position): New arg base_face_id.
5188
5189 * xdisp.c (handle_face_prop): Pass base_face_id of iterator to
5190 face_at_buffer_position.
5191 (face_before_or_after_it_pos, get_next_display_element)
5192 (note_mouse_highlight): Update face_at_buffer_position call.
5193
5194 * term.c (term_mouse_highlight):
5195 * msdos.c (IT_note_mouse_highlight):
5196 * fontset.c (Finternal_char_font):
5197 * font.c (font_at, font_range): Update face_at_buffer_position call.
5198
5199 * dispextern.h (face_at_buffer_position): Update prototype.
5200
5201 2009-04-30 Kenichi Handa <handa@m17n.org>
5202
5203 * fontset.c (fontset_find_font): Check if rfont_def is Qnil or not.
5204
5205 2009-04-29 Andreas Schwab <schwab@linux-m68k.org>
5206
5207 * callproc.c (Fcall_process): Fix GC protection. Make sure
5208 current buffer is always restored.
5209
5210 2009-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5211
5212 * atimer.c (init_atimer): Also clear stopped_atimers.
5213
5214 * keyboard.c (init_keyboard) [POLL_FOR_INPUT]: Reset poll_timer.
5215
5216 * process.c (create_process): Clean up merger residues of
5217 2008-07-17 change.
5218
5219 2009-04-29 Ulrich Mueller <ulm@gentoo.org>
5220
5221 * lread.c (Vread_circle): New variable.
5222 (read1): Disable recursive read if Vread_circle is nil.
5223
5224 2009-04-29 Kenichi Handa <handa@m17n.org>
5225
5226 * fontset.h (set_default_ascii_font): Delete extern.
5227
5228 * fontset.c (set_default_ascii_font): Delete this unused function.
5229
5230 * frame.c (x_set_font): When ARG is a font-object, check if the
5231 font-object matches with the ASCII font-spec of the frame's
5232 fontset. If not, create a new fontset for the frame. (Bug #3075)
5233
5234 2009-04-28 Andreas Schwab <schwab@linux-m68k.org>
5235
5236 * fns.c (Flocale_info): Protect vector from GC during decoding.
5237
5238 * process.c (Fstart_process): Protect argv strings from GC during
5239 encoding.
5240
5241 2009-04-27 Andreas Schwab <schwab@linux-m68k.org>
5242
5243 * sysdep.c: Include <ctype.h>.
5244
5245 2009-04-27 David Reitter <david.reitter@gmail.com>
5246
5247 * nsfont.m (nsfont_open): Remove unused variable shrink.
5248 Remove commented-out code.
5249
5250 2009-04-26 Johan Bockgård <bojohan@gnu.org>
5251
5252 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
5253
5254 2009-04-25 Jason Rumney <jasonr@gnu.org>
5255
5256 * w32font.c (clear_cached_metrics): Remove, unused since 2008-08-02.
5257
5258 2009-04-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5259
5260 * fringe.c (init_fringe_bitmap) [HAVE_X_WINDOWS && WORDS_BIG_ENDIAN]:
5261 Swap bytes in short integer if fringe bitmap width > 8.
5262
5263 2009-04-23 Kenichi Handa <handa@m17n.org>
5264
5265 * xfaces.c (Fx_list_fonts): If a font size is specified in
5266 PATTERN, set it in returned scalable fonts.
5267
5268 2009-04-22 Chong Yidong <cyd@stupidchicken.com>
5269
5270 * keyboard.c (Fset_input_meta_mode): Doc fix.
5271
5272 * dispnew.c (Fsend_string_to_terminal): Doc fix.
5273
5274 * data.c (Fterminal_local_value, Fset_terminal_local_value): Doc fixes.
5275
5276 * coding.c (Fterminal_coding_system): Doc fix.
5277
5278 * xfns.c (Fx_display_grayscale_p, Fx_display_pixel_width)
5279 (Fx_display_pixel_height, Fx_display_planes)
5280 (Fx_display_color_cells, Fx_server_max_request_size)
5281 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
5282 (Fx_display_mm_height, Fx_display_mm_width)
5283 (Fx_display_backing_store, Fx_display_visual_class)
5284 (Fx_display_save_under, Fx_close_connection, Fx_synchronize):
5285 Doc fixes, replacing "terminal id" with "terminal object".
5286 (check_x_display_info): Handle terminal objects instead of
5287 terminal ids.
5288
5289 * term.c (Ftty_display_color_p, Ftty_display_color_cells)
5290 (Ftty_type, Fcontrolling_tty_p, Ftty_no_underline, Fsuspend_tty)
5291 (Fresume_tty, Vsuspend_tty_functions, Vresume_tty_functions):
5292 Doc fixes, replacing "terminal id" with "terminal object".
5293
5294 2009-04-21 Kenichi Handa <handa@m17n.org>
5295
5296 * font.c (font_load_for_lface): Cancel previous change (bug#2994).
5297 (font_score): Check AVGWIDTH too.
5298
5299 * coding.c (decode_coding_utf_16): Reduce charbuf_end for the
5300 worst case.
5301 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
5302 (decode_coding_emacs_mule, decode_coding_iso_2022): Likewise.
5303
5304 2009-04-19 Jason Rumney <jasonr@gnu.org>
5305
5306 The following changes fix Bug#3005 for wide glyphs on each platform,
5307 without reintroducing Bug#1258 for stretch glyphs.
5308
5309 * xterm.c (x_draw_bar_cursor): Limit cursor width differently for
5310 BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR using
5311 get_phys_cursor_geometry.
5312
5313 * w32term.c (x_draw_bar_cursor): Limit cursor width differently
5314 for BAR_CURSOR and HBAR_CURSOR. Calculate width of HBAR_CURSOR
5315 using get_phys_cursor_geometry.
5316
5317 * nsterm.m (ns_draw_window_cursor): HBAR_CURSOR width already
5318 correctly calculated.
5319
5320 2009-04-19 Jan Djärv <jan.h.d@swipnet.se>
5321
5322 * gtkutil.c (xg_tool_bar_menu_proxy, update_frame_tool_bar):
5323 Use G_CALLBACK instead of GTK_SIGNAL_FUNC which is deprecated.
5324 (xg_initialize): Use g_type_class_ref instead of gtk_type_class which
5325 is deprecated.
5326
5327 2009-04-18 Andreas Schwab <schwab@linux-m68k.org>
5328
5329 * font.c (font_put_frame_data): Use xfree instead of free.
5330
5331 2009-04-17 Juanma Barranquero <lekktu@gmail.com>
5332
5333 * w32font.c (Qja, Qko): Remove declarations.
5334 (syms_of_w32font): Don't DEFSYM them.
5335
5336 2009-04-17 Chong Yidong <cyd@stupidchicken.com>
5337
5338 * font.c (Qja, Qko): Move definitions here from ftfont.c.
5339
5340 * font.h (Qja, Qko): Extern them.
5341
5342 * ftfont.c (Qja, Qko): Remove declarations.
5343
5344 * xfont.c (Qja, Qko): Remove declarations.
5345
5346 2009-04-17 Kenichi Handa <handa@m17n.org>
5347
5348 * editfns.c (Ftranslate_region_internal): Use Fconcat to make a
5349 string from a vector to handle Latin-1 characters correctly.
5350
5351 * ftfont.c (ftfont_pattern_entity): Return a newly allocated
5352 entity even if the cache hits.
5353
5354 2009-04-16 Andreas Schwab <schwab@linux-m68k.org>
5355
5356 * search.c (boyer_moore): Use zero as marker value for a possible
5357 match instead of depending on overflow behavior. (Bug#2844)
5358
5359 * search.c: Use EMACS_INT for buffer positions. Add prototypes.
5360 * lisp.h: Adjust prototypes.
5361
5362 2009-04-16 Chong Yidong <cyd@stupidchicken.com>
5363
5364 * keyboard.c (adjust_point_for_property): Disable 2009-02-12
5365 change (Bug#3003).
5366
5367 2009-04-16 Kenichi Handa <handa@m17n.org>
5368
5369 * xfont.c (xfont_has_char): Special handling of `ja' and `ko' adstyle.
5370
5371 * xftfont.c (xftfont_has_char): Special handling of `ja' and `ko'
5372 adstyle.
5373
5374 * ftfont.c (Qja, Qko): Don't make them static.
5375 (enum ftfont_cache_for): New enum.
5376 (fc_charset_table): Undo the previous change.
5377 (ftfont_get_latin1_charset): Delete it.
5378 (ftfont_pattern_entity): Check cache by ftfont_lookup_cache.
5379 Set FONT_SIZE_INDEX of the entity to 0 for a scalable font. For a
5380 non-scarable font, try to get AVERAGE_WIDTH.
5381 (ftfont_lookup_cache): Argument FOR-FACE is changed to CACHE_FOR.
5382 Change ft_face_cache from a list of a hash-table. Don't check
5383 `ja' and `ko' adstyle here.
5384 (ftfont_get_fc_charset): Call ftfont_lookup_cache with
5385 FTFONT_CACHE_FOR_CHARET.
5386 (ftfont_get_charset): Undo the previous change.
5387 (ftfont_open): Call ftfont_lookup_cache with FTFONT_CACHE_FOR_FACE.
5388 (ftfont_close): Likewise.
5389 (ftfont_has_char): Special handling of `ja' and `ko' adstyle.
5390
5391 * font.c (font_sort_entites): Change the meaning of the arg
5392 BEST-ONLY. Don't optimize for VEC of lenght 1.
5393 (font_select_entity): Just return the value of font_sort_entites.
5394
5395 * xfaces.c (merge_face_vectors): Reflect font properties in
5396 to[LFACE_FONT_INDEX] to the other face attributes. Don't call
5397 font_clear_prop if a face attribute doesn't change.
5398
5399 * charset.h (charset_ksc5601): Extern it.
5400
5401 * charset.c (charset_ksc5601): New variable.
5402 (Fdefine_charset_internal): Set charset_ksc5601.
5403 (init_charset_once): Initialize charset_ksc5601 to -1.
5404
5405 2009-04-15 Dan Nicolaescu <dann@ics.uci.edu>
5406
5407 * fileio.c (history_delete_duplicates): Remove unused declaration.
5408
5409 * callint.c (history_delete_duplicates): New declaration.
5410 (Fcall_interactively): Remove command history duplicates when
5411 history_delete_duplicates is true.
5412
5413 2009-04-14 Eli Zaretskii <eliz@gnu.org>
5414
5415 * buffer.c (syms_of_buffer) <line-spacing>: Doc fix.
5416
5417 2009-04-14 Kenichi Handa <handa@m17n.org>
5418
5419 * font.c (Ffont_info): Fix docstring. Fix the second element of
5420 the returned value (bug#2949).
5421
5422 2009-04-14 Chong Yidong <cyd@stupidchicken.com>
5423
5424 * xdisp.c (Vwrap_prefix, Vline_prefix): Reflow docstrings.
5425
5426 2009-04-14 Kenichi Handa <handa@m17n.org>
5427
5428 * xfont.c (xfont_has_char): The font has C if C is ASCII and the
5429 encoding charset is ascii_compatible.
5430
5431 * charset.c (Fdefine_charset_internal): Make charset
5432 ascii-compatible if the method is CHARSET_METHOD_OFFSET, the
5433 code_offset is 0, and covers all ASCII characters.
5434
5435 2009-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
5436
5437 * nsselect.m (symbol_to_nsstring, clean_local_selection_data)
5438 (ns_string_to_pasteboard_internal):
5439 * nsmenu.m (process_dialog):
5440 * nsimage.m (ns_load_image): Use SDATA and ASET where appropriate.
5441 * nsfont.m (nsfont_open): Use XHASH to make it compile with LISP_UNION.
5442 * lisp.h (Fx_load_color_file): Declare.
5443
5444 2009-04-13 Kenichi Handa <handa@m17n.org>
5445
5446 * font.c (font_delete_unmatched): Preserve the order of list elements.
5447 (font_select_entity): Suppress the code to optimize for the same
5448 kind of fonts.
5449 (font_load_for_lface): Get a font that supports at least ASCII
5450 characters.
5451
5452 * ftfont.c (Qja, Qko): New variables.
5453 (fc_charset_table): Delete uniquifier data for iso8859-1.
5454 (ftfont_get_latin1_charset): New function.
5455 (get_adstyle_property): New function.
5456 (ftfont_pattern_entity): Set FONT_ADSTYLE_INDEX of entity for
5457 bitmap fonts.
5458 (ftfont_lookup_cache): Handle the case that KEY is a font-entity.
5459 Delete iso-8859-1 range from the charset of fonts whose adstyle is
5460 `ko' or `ja'.
5461 (ftfont_get_fc_charset): Call ftfont_lookup_cache with ENTITY.
5462 (ftfont_get_charset): For iso8859-1, call ftfont_get_latin1_charset.
5463 (ftfont_list): Don't refuse a font spec with non-nil `adstyle'
5464 property.
5465 (ftfont_open): Call ftfont_lookup_cache with ENTITY.
5466 (syms_of_ftfont): DEFSYM Qja and Qko.
5467
5468 2009-04-09 Kenichi Handa <handa@m17n.org>
5469
5470 * charset.c (map_charset_chars): For a charset of `superset'
5471 method, fix calculation of code range.
5472
5473 * font.c (font_put_extra): If VAL is nil, delete the slot for PROP
5474 from the list of extra properties.
5475 (font_clear_prop): Be sure to delete `:name' font property.
5476
5477 2009-04-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5478
5479 * dispnew.c (redraw_overlapping_rows): Fix detection of
5480 overlapping for topmost and bottommost rows.
5481
5482 * ftfont.c (ftfont_text_extents): Fix calculation of metrics->descent.
5483
5484 2009-04-06 Jason Rumney <jasonr@gnu.org>
5485
5486 * frame.c (x_set_font): Avoid C99 mid-block variable declaration.
5487
5488 2009-04-06 Kenichi Handa <handa@m17n.org>
5489
5490 * ftxfont.c (ftxfont_draw_backgrond): Fix args to XFillRectangle.
5491
5492 * xftfont.c (xftfont_open): Fix setting font->underline_thickness.
5493
5494 2009-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5495
5496 * ftfont.c (ftfont_open): Fix checking of the return value of
5497 FT_Load_Char. Fix setting font->underline_thickness.
5498
5499 2009-04-04 Chong Yidong <cyd@stupidchicken.com>
5500
5501 * terminal.c (Fterminal_name, Fdelete_terminal, Fterminal_name)
5502 (Fterminal_parameters, Fterminal_parameter)
5503 (Fset_terminal_parameter): In doc string, refer to terminal
5504 objects rather than terminal ids.
5505
5506 2009-04-04 Eli Zaretskii <eliz@gnu.org>
5507
5508 * dosfns.c (system_process_attributes) [SYSTEM_MALLOC]: Don't call
5509 ret_lim_data. (Bug#2867)
5510
5511 2009-04-03 Chong Yidong <cyd@stupidchicken.com>
5512
5513 * term.c (produce_stretch_glyph): Reduce width of stretch glyphs
5514 so they don't get wider than the window, matching 2006-01-23
5515 change to the partner function in xdisp.c (Bug#2800).
5516
5517 2009-04-03 Kenichi Handa <handa@m17n.org>
5518
5519 * print.c (print_object): Make each lowest sub_char_table start a
5520 new line (Bug#2866).
5521
5522 2009-04-02 Kenichi Handa <handa@m17n.org>
5523
5524 * fontset.c (fontset_font): Record no-font when a fontset
5525 explicitly tells not to try another font-specs.
5526
5527 2009-03-30 Pierre Poissinger <pierre.poissinger@gmail.com> (tiny change)
5528
5529 * charset.c (map_charset_for_dump): Add missing UNGCPRO.
5530
5531 2009-03-30 Kenichi Handa <handa@m17n.org>
5532
5533 * fontset.c (fontset_from_font): Specify only registry in a
5534 font-spec for all characters supported by that registry.
5535
5536 * ftfont.c: Fix previous change. Define ftfont_variation_glyphs
5537 even if HAVE_M17N_FLT is not defined.
5538
5539 2009-03-29 Sebastian Rose <sebastian_rose@gmx.de> (tiny change)
5540
5541 * ftfont.c: Conditionalize prototyping and use of
5542 ftfont_variation_glyphs.
5543
5544 2009-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5545
5546 * frame.c (delete_frame): Work around compiler bug.
5547
5548 * editfns.c (general_insert_function): Adjust to insdel.c changes.
5549 * insdel.c (prepare_to_modify_buffer, signal_before_change):
5550 Some more EMACS_INT.
5551 * lisp.h (copy_text, count_size_as_multibyte): Fix last change.
5552
5553 * xdisp.c (dump_glyph): Fix typo.
5554
5555 * insdel.c (move_gap, move_gap_both, gap_left, gap_right)
5556 (adjust_markers_gap_motion, adjust_markers_for_delete)
5557 (adjust_markers_for_insert, adjust_point)
5558 (adjust_markers_for_replace, make_gap_larger, make_gap_smaller)
5559 (make_gap, copy_text, count_size_as_multibyte, insert)
5560 (insert_and_inherit, insert_before_markers)
5561 (insert_before_markers_and_inherit, insert_1)
5562 (count_combining_before, count_combining_after, insert_1_both)
5563 (insert_from_string, insert_from_string_before_markers)
5564 (insert_from_string_1, insert_from_gap, insert_from_buffer)
5565 (insert_from_buffer_1, adjust_after_replace)
5566 (adjust_after_replace_noundo, adjust_after_insert, replace_range)
5567 (replace_range_2, del_range, del_range_1, del_range_byte)
5568 (del_range_both, del_range_2, modify_region)
5569 (prepare_to_modify_buffer, signal_before_change)
5570 (signal_after_change, Fcombine_after_change_execute): Use EMACS_INT
5571 for buffer positions and sizes.
5572 * lisp.h: Adjust prototypes accordingly.
5573
5574 * fileio.c (adjust_markers_for_delete): Move declaration to lisp.h.
5575 (non_regular_inserted, non_regular_nbytes, read_non_regular)
5576 (Finsert_file_contents): Use EMACS_INT for buffer positions.
5577
5578 * fileio.c (Finsert_file_contents): Don't limit size to INT_MAX/4.
5579
5580 2009-03-27 Jan Djärv <jan.h.d@swipnet.se>
5581
5582 * frame.c (x_set_font): If the fullscreen property is non-nil, adjust
5583 lines and columns so we keep the same pixel height and width.
5584
5585 * xterm.c (handle_one_xevent): Call x_handle_net_wm_state if
5586 the property _NET_WM_STATE has changed.
5587 (x_handle_net_wm_state): New function to update frame parameter
5588 fullscreen.
5589 (x_term_init): Initialize atoms for _NET_WM_STATE.
5590
5591 * xterm.h (struct x_display_info): Add atoms for _NET_WM_STATE.
5592
5593 2009-03-27 Kevin Ryde <user42@zip.com.au>
5594
5595 * keyboard.c (tty_read_avail_input): Don't treat a -1 return from
5596 Gpm_GetEvent as an error that justifies closing the filedescriptor.
5597 * term.c (close_gpm): Get the filedescriptor as a (new) parameter.
5598 (Fgpm_mouse_stop): Pass that new parameter.
5599 * termhooks.h (close_gpm): Adjust prototype.
5600
5601 2009-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
5602
5603 * lisp.h (Fx_focus_frame): Declare.
5604
5605 * callint.c (Fcall_interactively): For '^' just delegate the work to
5606 handle-shift-selection.
5607 (syms_of_callint): Move declaration of shift-select-mode to simple.el.
5608
5609 2009-03-24 Chong Yidong <cyd@stupidchicken.com>
5610
5611 * editfns.c (Ffloat_time): Doc fix (Bug#2768).
5612
5613 * data.c (Qinteractive_form): New variable.
5614 (Finteractive_form): Use it.
5615
5616 * eval.c (Fcommandp): Use Qinteractive_form.
5617
5618 2009-03-24 Jason Rumney <jasonr@gnu.org>
5619
5620 * fileio.c (Fsubstitute_in_file_name): Always work on a copy.
5621 Calculate total size precisely. Decode environment variables
5622 before substituting. (Bug#38)
5623
5624 2009-03-24 Kenichi Handa <handa@m17n.org>
5625
5626 * font.c (find_font_encoding): Return Qnil for unsupported
5627 encoding (Bug#2722).
5628
5629 2009-03-23 Jan Djärv <jan.h.d@swipnet.se>
5630
5631 * gtkutil.c (xg_display_open): Assign a value to gdpy_def, check
5632 that gdpy is set.
5633
5634 2009-03-22 Alan Mackenzie <acm@muc.de>
5635
5636 * callint.c (Finteractive): Clarify the doc string - even
5637 promptless elements need \n separators.
5638
5639 2009-03-22 Jason Rumney <jasonr@gnu.org>
5640
5641 * w32term.c (syms_of_w32term): Doc fix for
5642 x-use-underline-position-properties.
5643
5644 2009-03-21 Eli Zaretskii <eliz@gnu.org>
5645
5646 * w32.c (getpwuid): Change argument type to unsigned.
5647 (struct w32_id): Change type of `rid' member to unsigned.
5648 (w32_cached_id, w32_add_to_cache, get_name_and_id): Change type of
5649 argument ID to unsigned. All callers changed.
5650 (getuid, geteuid, getgid, getegid): Change return type to unsigned.
5651
5652 2009-03-20 Eli Zaretskii <eliz@gnu.org>
5653
5654 * editfns.c (Fuser_uid, Fuser_real_uid): If UID as EMACS_INT is
5655 negative, produce a float value.
5656
5657 * dired.c (make_uid, make_gid): New functions.
5658 (Ffile_attributes): Use them to avoid negative UID and GID.
5659
5660 2009-03-20 Juanma Barranquero <lekktu@gmail.com>
5661
5662 * keyboard.c (Fcurrent_idle_time): Reflow docstring.
5663 (syms_of_keyboard) <command-hook-internal, input-method-function>:
5664 Fix typos in docstrings.
5665
5666 2009-03-19 Kenichi Handa <handa@m17n.org>
5667
5668 * fontset.c (Fset_fontset_font): When a spec of ASCII font is
5669 changed, use font_load_for_lface to get a new font object.
5670 Call free_realized_fontset after handling ASCII font change.
5671
5672 * frame.c (x_set_font): Handle the case that ARG is a cons.
5673
5674 2009-03-19 Glenn Morris <rgm@gnu.org>
5675
5676 * fileio.c (Fsubstitute_in_file_name): Doc fix.
5677
5678 2009-03-19 Chong Yidong <cyd@stupidchicken.com>
5679
5680 * indent.c (Fvertical_motion): Undo 2005-01-19 change (Bug#2694).
5681
5682 2009-03-19 Kenichi Handa <handa@m17n.org>
5683
5684 * charset.c (load_charset_map_from_file): When a mapfile can't be
5685 loaded, signal an error.
5686
5687 2009-03-18 Eli Zaretskii <eliz@gnu.org>
5688
5689 * dired.c (Ffile_attributes): Make sure UID and GID are always
5690 positive, even if the value is too large for a positive EMACS_INT.
5691 Doc fix.
5692
5693 * editfns.c (Fuser_login_name): Support float arguments. Doc fix.
5694
5695 2009-03-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5696
5697 * xmenu.c (xdialog_show): Move Fredisplay call ...
5698 (Fx_popup_dialog): ... here.
5699
5700 2009-03-18 Stefan Monnier <monnier@iro.umontreal.ca>
5701
5702 * dired.c (file_name_completion): Disable the first optimization just
5703 installed, since it is not implemented correctly.
5704
5705 2009-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5706
5707 * dired.c (file_name_completion): Check completion-ignored-extensions
5708 only if the entry can affect bestmatch.
5709 Stop the search early, as Ftry_completion already does.
5710
5711 2009-03-17 Chong Yidong <cyd@stupidchicken.com>
5712
5713 * minibuf.c (Vminibuffer_completion_confirm): Doc fix.
5714
5715 2009-03-15 Chong Yidong <cyd@stupidchicken.com>
5716
5717 * keyboard.c (parse_menu_item): Don't display remappings as menu
5718 equivalent bindings (Bug#788).
5719
5720 2009-03-15 Jason Rumney <jasonr@gnu.org>
5721
5722 * w32term.h (WM_EMACS_PAINT): New message.
5723 * w32term.c (w32_read_socket): Use it instead of WM_PAINT.
5724 * w32fns.c (w32_wnd_proc): Change WM_PAINT to WM_EMACS_PAINT
5725 before passing to lisp thread. (Bug#950)
5726
5727 2009-03-14 David Reitter <david.reitter@gmail.com>
5728
5729 * nsterm.m (ns_shutdown_properly, -terminate): Remove global state
5730 variable as it was never reset.
5731 (ns_term_init): Remove initialization of Lisp-settable defaults
5732 and ns_expand_space.
5733 (-setPanelFromDefaultValues): Remove ns_expand_space.
5734 (-showPreferencesWindow): Send new KEY_NS_SHOW_PREFS key.
5735 * nsfont.m (nsfont_open): Remove ns_expand_space, assume -0.5
5736 i.e. no additional spacing, similar to Carbon port.
5737
5738 * nsterm.h: Define KEY_NS_SHOW_PREFS key.
5739 * nsfns.m (ns-popup-prefs-panel): Remove.
5740
5741 2009-03-14 Jan Djärv <jan.h.d@swipnet.se>
5742
5743 * sound.c (alsa_configure): Remove call to deprecated
5744 snd_pcm_sw_params_set_xfer_align.
5745
5746 2009-03-14 Stephen Berman <stephen.berman@gmx.net>
5747
5748 * gtkutil.c (xg_tool_bar_callback): Set focus back to the frame
5749 after clicking in a detached tool bar.
5750 (xg_tool_bar_proxy_callback): Remove call to Fx_focus_frame.
5751
5752 2009-03-13 Stefan Monnier <monnier@iro.umontreal.ca>
5753
5754 * fontset.c (fontset_from_font, Ffontset_info): YAILOM (Yet another
5755 int/Lisp_Object mixup).
5756
5757 2009-03-13 Kenichi Handa <handa@m17n.org>
5758
5759 * fontset.c (Ffontset_info, check_fontset_name): New arg frame.
5760 Handle NAME nil and t correctly. Callers changed.
5761 (font_def_arg, add_arg, from_arg, to_arg): Delete them.
5762 (set_fontset_font): Change ARG to a vector. Handle range_list in
5763 ARG correctly.
5764 (Fset_fontset_font): Fix the case that TARGET is both a script
5765 name and charset name. Adjust the arg to set_fontset_font for
5766 the above change.
5767 (fontset_from_font): Fix previous change.
5768 (Ffontset_info): Adjust for the 2008-07-09 change of fontset
5769 entry. If FONTSET is the default fontset, don't set the extra
5770 slot of the returning char-table.
5771
5772 2009-03-12 Juanma Barranquero <lekktu@gmail.com>
5773
5774 * nsfns.m (Fx_close_connection): Doc fix.
5775 (Fns_do_applescript): Reflow docstring.
5776 (Fns_hide_others, Fns_hide_emacs, Fns_convert_utf8_nfd_to_nfc)
5777 (Fx_display_pixel_width, Fx_display_pixel_height)
5778 (Fns_display_usable_bounds, Fx_display_planes, Fx_show_tip):
5779 Fix typos in docstrings.
5780 (Fns_set_alpha): Fix typos in error messages.
5781
5782 2009-03-12 David Reitter <david.reitter@gmail.com>
5783
5784 * termhooks.h [HAVE_NS]: Define NS_NONKEY_EVENT to be used for
5785 non-key system events on NS. Formerly, NON_ASCII_KEYSTROKE_EVENT
5786 were used for such events.
5787
5788 * nsterm.m (newFrame, openFile, fulfillService, changeFont)
5789 (toggleToolbar, performDragOperation, runHelp): Use it.
5790
5791 * keyboard.c (parse_menu_item) [HAVE_NS]: Treat new event like
5792 NON_ASCII_KEYSTROKE_EVENT, but set used_mouse_menu.
5793
5794 2009-03-11 Kenichi Handa <handa@m17n.org>
5795
5796 * font.h (font_open_by_spec): Extern it.
5797
5798 * font.c (font_open_by_spec): New function.
5799 (font_open_by_name): Use font_open_by_spec.
5800
5801 * frame.c (x_set_font): When ARG is a font-object, don't alter the
5802 fontset of the frame.
5803
5804 * fontset.c (Fset_fontset_font): When a font for ASCII is changed,
5805 modify the default font of frames that use this fontset.
5806 (num_auto_fontsets): New variable.
5807 (fontset_from_font): Use num_auto_fontsets to decide a fontset
5808 name. Be sure to set FONTSET_ASCII to the correct font name.
5809 (update_auto_fontset_alist): New function.
5810
5811 2009-03-11 Juanma Barranquero <lekktu@gmail.com>
5812
5813 * makefile.w32-in: Update dependencies.
5814
5815 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5816
5817 * nsfns.m (syms_of_nsfns): Remove Qbuffered.
5818
5819 2009-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
5820
5821 * buffer.c (Fswitch_to_buffer): Revert part of 2008-10-21's change.
5822
5823 2009-03-10 Chong Yidong <cyd@stupidchicken.com>
5824
5825 * lread.c (Feval_buffer): Doc fix.
5826
5827 2009-03-09 Kenichi Handa <handa@m17n.org>
5828
5829 * charset.c (Qfile_name_handler_alist): Extern it.
5830 (load_charset_map_from_file): Temporarily bind
5831 `file-name-handler-alist' to nil while calling openp. (Bug#2435)
5832
5833 2009-03-06 Aaron Ecay <aaronecay@gmail.com> (tiny change)
5834
5835 * nsterm.m (ns_draw_vertical_window_border): Draw 1 pixel wide,
5836 not two, and use NSRectFill instead of NSDrawGroove. (Bug#2352)
5837
5838 2009-03-06 Adrian Robert <Adrian.B.Robert@gmail.com>
5839
5840 * nsterm.m: Include <signal.h> for SIGTERM used in ns_term_shutdown.
5841 (x_set_window_size): Change back to calculated method of setting
5842 toolbar height under Cocoa. (Bug#2546)
5843 (EmacsView-windowWillUseStandardFrame:defaultFrame:): New method.
5844 (EmacsView-drawRect:): Completely shortcircuit if ns_in_resize.
5845
5846 * nsfns.m (ns_appkit_version_int): Fix typo in the version macro.
5847
5848 * nsmenu.m (EmacsMenu-addItemWithWidgetValue:): Don't add
5849 accelerator in parens under GNUstep.
5850
5851 2009-03-06 Kenichi Handa <handa@m17n.org>
5852
5853 These changes are to detect incorrect composition sequence without
5854 looking ahead the source. (Bug#2370)
5855
5856 * coding.h: Include "composite.h".
5857 (enum compisition_state): New enum.
5858 (struct compisition_status): New struct.
5859 (struct iso_2022_spec): New member cmp_status.
5860 (struct emacs_mule_spec): New struct.
5861 (struct coding_system): New members ctext_extended_segment_len and
5862 embedded_utf_8. Change the union member
5863 spec.emacs_mule_full_support to spec.emacs_mule.
5864
5865 * coding.c (CODING_ISO_CMP_STATUS): New macro.
5866 (CODING_ISO_EXTSEGMENT_LEN, CODING_ISO_EMBEDDED_UTF_8): New macros.
5867 (MAX_ANNOTATION_LENGTH): Define to 5.
5868 (ADD_COMPOSITION_DATA): New arg nbytes.
5869 (emacs_mule_char): New arg cmp_status.
5870 (DECODE_EMACS_MULE_COMPOSITION_CHAR): Delete it.
5871 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): New arg c.
5872 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New arg c.
5873 (DECODE_EMACS_MULE_21_COMPOSITION): Delete the arg c.
5874 (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Likewise.
5875 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Likewise.
5876 (DECODE_EMACS_MULE_COMPOSITION_START): New macro.
5877 (EMACS_MULE_COMPOSITION_END): New macro.
5878 (emacs_mule_finish_composition): New function.
5879 (EMACS_MULE_MAYBE_FINISH_COMPOSITION): New macro.
5880 (decode_coding_emacs_mule): Avoid long looking ahead while
5881 handling composition.
5882 (DECODE_COMPOSITION_RULE): Argument changed to rule and nbytes.
5883 (ENCODE_COMPOSITION_RULE): New macro.
5884 (finish_composition): New function.
5885 (MAYBE_FINISH_COMPOSITION): Call finish_composition.
5886 (DECODE_COMPOSITION_START): New implementation.
5887 (DECODE_COMPOSITION_END): Likewise.
5888 (STORE_COMPOSITION_RULE): New macro.
5889 (decode_coding_iso_2022): Avoid long looking ahead while handling
5890 composition, CTEXT extended segment, and embedded UTF-8.
5891 (setup_coding_system): For a coding of type iso-2022, reset
5892 CODING_ISO_EXTSEGMENT_LEN (coding) and
5893 CODING_ISO_EMBEDDED_UTF_8 (coding).
5894 (get_translation): Delete arguments last_block, from_nchars,
5895 to_nchars. Callers changed.
5896 (produce_chars): Don't modify charbuf. Adjusted for the change of
5897 get_translation.
5898 (produce_composition): Adjust for the new annotation sequence.
5899 (handle_composition_annotation): Likewise.
5900 (consume_chars): Adjust for the change of get_translation.
5901
5902 2009-03-05 Adrian Robert <Adrian.B.Robert@gmail.com>
5903
5904 * nsterm.m (ns_select): Shortcircuit if reentrant call. (Bug#2564)
5905
5906 2009-03-05 Kenichi Handa <handa@m17n.org>
5907
5908 * font.c (font_select_entity): New function.
5909 (font_find_for_lface): Use font_select_entity to select a font.
5910
5911 * fontset.c (fontset_find_font): If a font found without
5912 restricting to the characters C doesn't support C, try to find a
5913 font with C restriction.
5914
5915 2009-03-04 Nikolaj Schumacher <me@nschum.de>
5916
5917 * nsfont.m (nsfont_draw): Compare ns_antialias_text against lisp value.
5918
5919 2009-03-04 Jason Rumney <jasonr@gnu.org>
5920
5921 * w32fns.c (w32_wnd_proc): Only ignore IME messages for the
5922 characters that have already been read. (Bug#2569)
5923
5924 * image.c (xbm_read_bitmap_data, png_load, svg_load_image):
5925 Log an error message if check_image_size failed.
5926 (xpm_load_image, pbm_load, jpeg_load, tiff_load, gif_load)
5927 (gs_load): Mention max-image-size in size error message. (Bug#2560)
5928
5929 2009-03-02 Eli Zaretskii <eliz@gnu.org>
5930
5931 * callproc.c (Fcall_process): Bind inhibit-modification-hooks to t
5932 when decoding process output.
5933
5934 2009-03-01 Richard M Stallman <rms@gnu.org>
5935
5936 * m/mips.h (DATA_SEG_BITS, XUINT, XSET): Definitions disabled.
5937
5938 * emacs.c (gdb_data_seg_bits) [USE_LSB_TAG]: Make it 0.
5939
5940 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5941
5942 * coding.c (decode_coding_utf_8, decode_coding_utf_16)
5943 (decode_coding_emacs_mule, decode_coding_iso_2022)
5944 (encode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
5945 (decode_coding_raw_text, decode_coding_charset)
5946 (setup_coding_system, decode_eol, decode_coding, consume_chars):
5947 Honor inhibit-eol-conversion. (Bug #2186)
5948
5949 2009-02-28 Jason Rumney <jasonr@gnu.org>
5950
5951 * coding.c (detect_coding_charset): If not checking latin extra,
5952 fail on characters between 0x80 and 0xA0. (Bug#2354)
5953
5954 2009-02-28 Eli Zaretskii <eliz@gnu.org>
5955
5956 * coding.c (detect_coding_charset): Fix change from 2008-10-21.
5957 Also, check iso-latin-*, not only iso-8859-*. (Bug#2497)
5958
5959 2009-02-27 Glenn Morris <rgm@gnu.org>
5960
5961 * callint.c (Finteractive): Doc fix.
5962
5963 2009-02-27 Kenichi Handa <handa@m17n.org>
5964
5965 * lread.c (read_escape): Signal an error for invalid \UXXXXXXXX.
5966
5967 2009-02-27 Chong Yidong <cyd@stupidchicken.com>
5968
5969 * font.c (font_style_to_value): Set value for unknown symbols to
5970 100 instead of 255.
5971 (weight_table, slant_table, width_table): Treat "unspecified" as
5972 the default value.
5973
5974 2009-02-26 Juanma Barranquero <lekktu@gmail.com>
5975
5976 * fileio.c (Fnext_read_file_uses_dialog_p): Fix typo in docstring.
5977
5978 2009-02-25 Juanma Barranquero <lekktu@gmail.com>
5979
5980 * lread.c (Fload): Stop checking Vloads_in_progress and signal
5981 error as soon as a recursive load is detected.
5982
5983 2009-02-24 Adrian Robert <Adrian.B.Robert@gmail.com>
5984
5985 * nsterm.m (ns_ring_bell): Convert rect to window coordinates
5986 before caching.
5987
5988 2009-02-24 Kenichi Handa <handa@m17n.org>
5989
5990 * fontset.c (fontset_find_font): Fix the condition for checking
5991 unavailable font.
5992
5993 2009-02-24 Glenn Morris <rgm@gnu.org>
5994
5995 * xfaces.c (Finternal_set_font_selection_order): Remove leading
5996 whitespace that confuses documentation.
5997
5998 2009-02-23 Miles Bader <miles@gnu.org>
5999
6000 * process.c (Flist_system_processes, Fprocess_attributes)
6001 (syms_of_process): Rename `system-process-attributes' to
6002 `process-attributes'.
6003
6004 2009-02-22 Andreas Schwab <schwab@linux-m68k.org>
6005
6006 * coding.h (struct coding_system): Make safe_charsets a pointer to
6007 unsigned char.
6008 * coding.c (CODING_ISO_REQUEST): Check for safe_charsets content
6009 being 255.
6010 (SAFE_CHARSET_P): Likewise.
6011 (setup_iso_safe_charsets): Properly setup safe_charsets.
6012 (Fdefine_coding_system_internal): Likewise.
6013 (setup_coding_system): Likewise. Remove unneeded casts.
6014 (detect_coding_iso_2022): Compare Viso_2022_charset_list with
6015 CODING_ATTR_CHARSET_LIST, not CODING_ATTR_SAFE_CHARSETS. Remove
6016 unneeded casts.
6017
6018 * insdel.c (del_range_2): Don't modify gap contents when called
6019 from decode_coding_object. (Bug#1809)
6020
6021 2009-02-21 Chong Yidong <cyd@stupidchicken.com>
6022
6023 * data.c (syms_of_data): Define Qfont_spec, Qfont_entity, and
6024 Qfont_object.
6025 (Ftype_of): Recognize font objects.
6026
6027 * lisp.h: Define Qfont_spec, Qfont_entity, Qfont_object extern.
6028
6029 * font.c (Qfont_spec, Qfont_entity, Qfont_object): Definitions
6030 moved to data.c.
6031
6032 2009-02-20 Adrian Robert <Adrian.B.Robert@gmail.com>
6033
6034 * nsterm.m (x_make_frame_invisible): Unset async_visible,
6035 async_iconified. Based on a patch by Christian Lynbech
6036 <christian.lynbech@tieto.com>.
6037 (EmacsView-windowDidMiniaturize:): Unset async_visible.
6038
6039 2009-02-20 Glenn Morris <rgm@gnu.org>
6040
6041 * syntax.c (Fskip_chars_forward): Fix doc typo.
6042
6043 2009-02-20 Chong Yidong <cyd@stupidchicken.com>
6044
6045 * keymap.c (Fkeymap_parent): Doc fix (Bug#2391).
6046
6047 2009-02-19 Chong Yidong <cyd@stupidchicken.com>
6048
6049 * xfns.c (Fx_create_frame): Give Xft driver a higher priority.
6050
6051 2009-02-19 Kenichi Handa <handa@m17n.org>
6052
6053 * coding.c (detect_coding): Preserve coding->mode.
6054 Don't overflow coding->carryover. (Bug#2370)
6055
6056 2009-02-18 Dan Nicolaescu <dann@ics.uci.edu>
6057
6058 * m/ibmrs6000.h (ADDR_CORRECT): Restore, removed by mistake on 2008-07-23.
6059
6060 2009-02-18 Kenichi Handa <handa@m17n.org>
6061
6062 * font.c (font_check_otf_features): Fix handling of `nil' element.
6063 (Ffont_spec): Describe :lang and :otf in the docstring.
6064
6065 2009-02-16 Andreas Schwab <schwab@suse.de>
6066
6067 * coding.c (Fcheck_coding_systems_region): Fix test for unibyte
6068 string.
6069
6070 2009-02-16 Kenichi Handa <handa@m17n.org>
6071
6072 * coding.c (Fcheck_coding_systems_region): Fix typo; Qt -> Qnil.
6073 (Bug#1723)
6074
6075 2009-02-14 Chong Yidong <cyd@stupidchicken.com>
6076
6077 * dispextern.h (struct iterator_stack_entry): New line_wrap member.
6078
6079 * xdisp.c (push_it, pop_it): Save and restore line_wrap.
6080 (handle_line_prefix): Suppress wrapping of wrap prefixes.
6081
6082 2009-02-14 Eli Zaretskii <eliz@gnu.org>
6083
6084 * msdos.c (MAX_SCREEN_BUF): New macro.
6085 (IT_write_glyphs): Make screen_buf[] always be MAX_SCREEN_BUF-long.
6086 Encode the entire run of glyphs sharing the same face, instead of
6087 doing that one glyph at a time (fixes a bug with displaying
6088 double-size characters).
6089
6090 2009-02-13 Adrian Robert <Adrian.B.Robert@gmail.com>
6091
6092 * nsfns.m (ns-read-file-name): BLOCK_INPUT while showing dialog.
6093
6094 * nsmenu.m (pop_down_menu): Check popup_activated_flag.
6095 (ns_popup_dialog, EmacsDialogPanel-runDialogAt:): Let
6096 pop_down_menu do the cleanup work as it is always called. (Bug#2154)
6097
6098 * nsfont.m (nsfont_make_fontset_for_font): For now, don't try to
6099 set fontset font for "mathematical-" sub-scripts. (Bug #2218)
6100
6101 2009-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
6102
6103 * keyboard.c (adjust_point_for_property): Allow stopping between two
6104 invisible areas.
6105
6106 2009-02-12 Jason Rumney <jasonr@gnu.org>
6107
6108 * w32font.c (check_face_name): Check for fake helv. (Bug#2275)
6109 (add_font_entity_to_list): Call check_face_name even when family
6110 is unspecified.
6111
6112 * w32term.c (x_display_pixel_height, x_display_pixel_width):
6113 Release DC when finished. Use NULL window to refer to desktop.
6114 (w32_term_init): Use NULL window to refer to desktop. (Bug#460)
6115
6116 * w32font.c (add_font_entity_to_list): Fix check for substituted
6117 raster fonts. (Bug#2219)
6118
6119 2009-02-12 Kenichi Handa <handa@m17n.org>
6120
6121 * composite.c (MAX_AUTO_COMPOSITION_LOOKBACK): New macro.
6122 (composition_gstring_width): Fix handling of LGLYPH_YOFF.
6123 (autocmp_chars): Use fast_looking_at. Don't compose more
6124 characters than MAX_COMPOSITION_COMPONENTS.
6125 (find_automatic_composition): While looking forward and backward,
6126 check static composition. Fix where to stop looking forward.
6127 (composition_adjust_point): Fix checking of static composition.
6128 (Fcomposition_get_gstring): Pay attention to
6129 MAX_COMPOSITION_COMPONENTS.
6130
6131 * lisp.h (fast_looking_at): Extern it.
6132
6133 * search.c (fast_looking_at): New function.
6134
6135 * term.c (encode_terminal_code): Adjust for the change of
6136 <struct glyph>.u.cmp.to.
6137 (append_composite_glyph): Likewise.
6138
6139 * xdisp.c (fill_gstring_glyph_string): Adjust for the change of
6140 <struct glyph>.u.cmp.to. Check if the glyph belongs to the same
6141 composition.
6142 (append_composite_glyph): Adjust for the change of
6143 <strcut glyph>.u.cmp.to.
6144
6145 2009-02-11 Juanma Barranquero <lekktu@gmail.com>
6146
6147 * casetab.c (init_casetab_once):
6148 * coding.c (ALLOC_CONVERSION_WORK_AREA):
6149 * font.c (font_update_lface):
6150 * fontset.c (Fnew_fontset):
6151 * ftfont.c (ftfont_drive_otf):
6152 * xfont.c (xfont_open):
6153 * xftfont.c (xftfont_get_xft_draw): Remove spurious semicolons.
6154
6155 2009-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
6156
6157 * fileio.c (Fwrite_region): !NILP -> CONSP.
6158
6159 2009-02-10 Andreas Schwab <schwab@suse.de>
6160
6161 * process.c (send_process): Properly relocate pointer into data
6162 when using encoded data. (Bug#2272)
6163
6164 2009-02-08 ARISAWA Akihiro <ari@mbf.sphere.ne.jp>
6165
6166 * coding.c (detect_coding_charset): Fix previous change.
6167
6168 2009-02-08 Jason Rumney <jasonr@gnu.org>
6169
6170 * w32fns.c (w32_hide_hourglass): Handle case where frame
6171 disappeared while hourglass was displayed. (Bug #2193)
6172
6173 2009-02-07 Andreas Schwab <schwab@suse.de>
6174
6175 * unexelf.c (unexec): Fix error message.
6176
6177 2009-02-07 Adrian Robert <Adrian.B.Robert@gmail.com>
6178
6179 * nsterm.m (EmacsApp-sendEvent:): Defer NSApplicationDefined event
6180 when modal window is active. (Bug #2152)
6181 (applicationShouldTerminate:): Remove now-unneeded while loop
6182 around NSRunAlertPanel.
6183
6184 * nsmenu.m (popupSession): New file-global variable.
6185 (pop_down_menu): End the popupSession before closing dialog.
6186 (ns_popup_dialog): BLOCK_INPUT around dialog presentation.
6187 (EmacsDialogPanel-runDialogAt:): Don't place window (superfluous),
6188 don't query NSApp for events (just sleep instead).
6189
6190 2009-02-07 Eli Zaretskii <eliz@gnu.org>
6191
6192 * coding.c (syms_of_coding) <translation-table-for-input>:
6193 Modify doc string to discourage use for character code unification.
6194
6195 2009-02-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6196
6197 * atimer.c (run_timers): Update pending_atimers.
6198
6199 2009-02-06 Chong Yidong <cyd@stupidchicken.com>
6200
6201 * image.c (svg_load_image): Fix last change.
6202
6203 * xfns.c (Fx_create_frame): Signal an error if no font is
6204 found (Bug#2147).
6205
6206 2009-02-05 Juanma Barranquero <lekktu@gmail.com>
6207
6208 * character.c (syms_of_character) <script-representative-chars>:
6209 Fix typo in docstring.
6210
6211 2009-02-04 Adrian Robert <Adrian.B.Robert@gmail.com>
6212
6213 * nsmenu.m (pop_down_menu): New function.
6214 (ns_popup_dialog): Call it on unwind.
6215 (EmacsDialogPanel-runDialogAt:): Check popup_activated_flag and
6216 call timer_check() (Bug#2154).
6217 (EmacsMenu-menuNeedsUpdate:): Don't call ns_update_menu if
6218 handling_signal is set.
6219 (EmacsMenu-fillWithWidgetValue:): Set submenu title.
6220
6221 * config.in: Get rid of COCOA_EXPERIMENTAL_CTRL_G.
6222
6223 * s/darwin.h: Same and NO_SOCK_SIGIO as well.
6224
6225 * nsterm.m (ns_read_socket): Same and don't set handling_signal.
6226
6227 * keyboard.c (poll_for_input_1, handle_async_input):
6228 Set handling_signal under HAVE_NS.
6229
6230 2009-02-04 Glenn Morris <rgm@gnu.org>
6231
6232 * fileio.c (Fwrite_region): Doc fix (mention annotate-functions).
6233
6234 2009-02-04 Kenichi Handa <handa@m17n.org>
6235
6236 * Makefile.in (composite.o): Depends on frame.h and termhooks.h.
6237
6238 * charset.c (Fchar_charset): New optional arg restriction.
6239
6240 * coding.h (coding_system_charset_list): Extern it.
6241
6242 * coding.c (coding_system_charset_list): New function.
6243
6244 * composite.c: Include coding.h and termhooks.h.
6245 (composition_gstring_p): Fix for the terminal case.
6246 (composition_gstring_width): Likewise.
6247 (fill_gstring_body): Likewise.
6248 (autocmp_chars): For terminal, call Fcomposition_get_gstring with
6249 the frame.
6250 (composition_compute_stop_pos): Adjust cmp_it->stop_pos if point
6251 is within a composition.
6252 (Fcomposition_get_gstring): Fix the terminal case.
6253
6254 * term.c (encode_terminal_code): Fix handling of composition.
6255 (produce_composite_glyph): For static composition, get pixel_width
6256 from struct composition.
6257
6258 2009-02-02 Andreas Schwab <schwab@suse.de>
6259
6260 * unexelf.c (unexec): Handle unaligned bss offset.
6261
6262 2009-02-01 Adrian Robert <Adrian.B.Robert@gmail.com>
6263
6264 * nsterm.m (ns_read_socket): Copy 2009-01-29 and 2009-01-30
6265 XT,w32read_socket changes to ns_read_socket.
6266
6267 * keyboard.c (handle_interrupt): Don't call
6268 quit_throw_to_read_char() under NS.
6269
6270 * blockinput.h: Remove NS-specific code.
6271
6272 2009-01-30 Dan Nicolaescu <dann@ics.uci.edu>
6273
6274 * dispnew.c (window_change_signal): Don't try to get the size of a
6275 suspended tty frame.
6276 * term.c (Fresume_tty): Resize if the size has changed while the
6277 tty was suspended.
6278
6279 * alloc.c (mark_stack): Properly conditionalize previous change.
6280
6281 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6282
6283 * w32inevt.c (w32_console_read_socket) [SYNC_INPUT]:
6284 * w32term.c (w32_read_socket) [SYNC_INPUT]:
6285 Remove; this code is not used on Windows.
6286
6287 2009-01-30 Eli Zaretskii <eliz@gnu.org>
6288
6289 * coding.c (detect_eol, decode_eol): Handle text with DOS-style
6290 EOLs that also has stray ^M characters.
6291
6292 2009-01-30 Juanma Barranquero <lekktu@gmail.com>
6293
6294 * atimer.c (run_timers, alarm_signal_handler):
6295 * keyboard.c (pending_signals, handle_async_input, init_keyboard):
6296 * w32inevt.c (w32_console_read_socket):
6297 * w32term.c (w32_read_socket):
6298 * xterm.c (XTread_socket): Use "#ifdef SYNC_INPUT" where appropriate.
6299
6300 2009-01-30 Chong Yidong <cyd@stupidchicken.com>
6301
6302 * callproc.c (Vtemp_file_name_pattern): Remove DEFVAR_LISP.
6303 Initialize it as a relative filename pattern.
6304 (init_callproc): Don't initialize Vtemp_file_name_pattern here.
6305 (Fcall_process_region): Simplify temp file creation using
6306 temporary-file-directory.
6307
6308 2009-01-29 Eli Zaretskii <eliz@gnu.org>
6309
6310 * msdos.c: Rename pending_signals to msdos_pending_signals.
6311 (sig_suspender, sigprocmask): Adjust.
6312
6313 2009-01-29 Chong Yidong <cyd@stupidchicken.com>
6314
6315 * keyboard.c (pending_signals): New var.
6316 (poll_for_input, input_available_signal, init_keyboard): Set it.
6317 (process_pending_signals): New function.
6318
6319 * lisp.h (QUIT): Check pending_signals instead of
6320 interrupt_input_pending. Use process_pending_signals.
6321
6322 * atimer.c (run_timers, alarm_signal_handler): Update pending_signals.
6323
6324 * process.c (wait_reading_process_output): Use process_pending_signals.
6325
6326 * sysdep.c (emacs_write): Use process_pending_signals.
6327
6328 * xterm.c (XTread_socket): Update pending_signals.
6329
6330 * w32term.c (w32_read_socket): Update pending_signals.
6331
6332 * w32inevt.c (w32_console_read_socket): Update pending_signals.
6333
6334 2009-01-29 Kenichi Handa <handa@m17n.org>
6335
6336 * xftfont.c (xftfont_has_char): New function.
6337 (syms_of_xftfont): Register xftfont_has_char in xftfont_driver.
6338
6339 2009-01-29 Adrian Robert <Adrian.B.Robert@gmail.com>
6340
6341 * nsterm.h (EmacsPrefsController.cursorBlinkSlider): Only define
6342 under GNUstep.
6343 (ns_query_color): New declaration.
6344
6345 * nsterm.m (ns_confirm_quit): New variable.
6346 (ns_set_default_prefs, syms_of_nsterm, ns_term_init): Initialize it.
6347 (EmacsApp-applicationShouldTerminate:): Use it.
6348 (EmacsPrefsController): Let user set it.
6349 (ns_query_color): New function.
6350 (ns_defined_color): Use it.
6351 (ns_initialize): Drop.
6352 (ns_term_init): Add two lines from ns_initialize(), and set
6353 input_interrupt_mode to nil.
6354
6355 * image.c (svg_load_image): Don't right-shift background RGB when
6356 obtained from FRAME_BACKGROUND_PIXEL. Under HAVE_NS use ns_query_color.
6357
6358 2009-01-28 Kenichi Handa <handa@m17n.org>
6359
6360 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6361 (fontset_get_font_group): Remember that no font-group is specified
6362 for C.
6363
6364 2009-01-27 Chong Yidong <cyd@stupidchicken.com>
6365
6366 * fns.c (concat): Check for string overflow (bug#1787).
6367
6368 * undo.c (undo_limit, undo_strong_limit, Vundo_outer_limit):
6369 Quadruple undo limits (bug#1501).
6370
6371 2009-01-27 Kenichi Handa <handa@m17n.org>
6372
6373 * ftfont.c (ftfont_has_char): If the arg FONT is a font-object,
6374 directly use GT_Get_Char_index.
6375
6376 * xftfont.c (struct xftfont_info): New member `index'.
6377
6378 * fontset.c (font_for_char): Use assq_no_quit, not assoc_no_quit.
6379 (Ffontset_font): Adjust for the change of fontset entry.
6380
6381 2009-01-26 Kenichi Handa <handa@m17n.org>
6382
6383 * fontset.c (fontset_find_font): Fix handling of non-cons return
6384 value of fontset_get_font_group.
6385 (fontset_font): Revert last change.
6386
6387 2009-01-26 Jason Rumney <jasonr@gnu.org>
6388
6389 * w32font.c (w32font_list_internal): Return quickly if registry is
6390 unknown. Simplify final return.
6391 (add_font_entity_to_list): Break complex logic down into more
6392 manageable chunks. Move unknown registry check to
6393 w32font_list_internal.
6394
6395 2009-01-25 Adrian Robert <Adrian.B.Robert@gmail.com>
6396
6397 Changes to remove Feval calls from GUI under NS.
6398
6399 * nsterm.h: Move KEY_NS_... definitions here from nsterm.m.
6400 Add NS_TOGGLE_TOOLBAR, NS_PUT_WORKING_TEXT, NS_UNPUT_WORKING_TEXT.
6401 Remove NS_INSERT_WORKING_TEXT, NS_DELETE_WORKING_TEXT.
6402
6403 * nsterm.m: Move KEY_NS_... definitions to nsterm.h.
6404 (EmacsView-toggleToolbar:): Use KEY_NS_TOGGLE_TOOLBAR.
6405 (EmacsView-setMarkedText:,-deleteWorkingText:): Use NS_TEXT_EVENT
6406 instead of NON_ASCII_KEYSTROKE_EVENT.
6407 (EmacsApp-terminate:): Use KEY_NS_POWER_OFF instead of Feval.
6408 (EmacsApp-applicationShouldTerminate:): Query user.
6409 (EmacsPreferencesController-runHelp:): Use KEY_NS_INFO_PREFS
6410 instead of Feval.
6411
6412 * termhooks.h (NS_TEXT_EVENT): New event type under HAVE_NS.
6413
6414 * keyboard.c (kbd_buffer_get_event): Check for it.
6415 (keys_of_keyboard): Define lispy keys for
6416 ns-put/unput-working-text.
6417
6418 * nsmenu.m (ns_popup_dialog): Resync window setting with X and W32
6419 versions.
6420 (EmacsDialog-runDialogAt:): Use NSModalPanelRunLoopMode.
6421
6422 2009-01-25 Chong Yidong <cyd@stupidchicken.com>
6423
6424 * dispnew.c (buffer_posn_from_coords): Use Fset_buffer instead of
6425 setting current_buffer directly. (Bug#2044)
6426
6427 2009-01-24 Chong Yidong <cyd@stupidchicken.com>
6428
6429 * fontset.c (fontset_font): If we know there is no font, don't do
6430 any work. (Bug#1952, bug#1990).
6431
6432 * font.c (font_parse_xlfd): Handle patterns of length < 2. (Bug#1802)
6433
6434 2009-01-23 Adrian Robert <Adrian.B.Robert@gmail.com>
6435
6436 * emacs.c (main): Do fork+exec under --daemon in Cocoa.
6437 (ns_no_defaults): New declaration.
6438 (main): Use it.
6439
6440 * nsterm.h (ns_no_defaults): New declaration.
6441
6442 * nsfns.m (x_get_string_resource): Don't read when ns_no_defaults.
6443
6444 * nsterm.m (ns_no_defaults): New variable.
6445 (ns_initialize): Don't read defaults when ns_no_defaults.
6446 (EmacsView-readSelectionFromPasteboard:)
6447 (writeSelectionToPasteboard:types:): New stubbed-out methods for
6448 NSServicesRequests protocol. (Bug#1435)
6449 (ns_dumpglyphs_stretch): New function.
6450 (ns_draw_glyph_string): Use it, parallel Yamamoto Mitsuharu change
6451 of 2008-11-15 to other terms. (Bug#615)
6452
6453 * nsimage.m (setPixmapData:): Set to ignore image DPI.
6454
6455 2009-01-23 Giorgos Keramidas <keramida@freebsd.org> (tiny change)
6456
6457 * alloc.c (mark_stack): Use "flushw" instead of "ta 3" assembly
6458 call for Sparc64.
6459
6460 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6461
6462 * nsfns.m:
6463 * nsgui.h:
6464 * nsmenu.m:
6465 * nsselect.m:
6466 * nsterm.h:
6467 * nsterm.m: Remove '23' comments that indicated code added during
6468 update from emacs-20 -> emacs-23.
6469
6470 2009-01-22 Adrian Robert <Adrian.B.Robert@gmail.com>
6471
6472 * nsterm.m (EmavsView-keyDown:): Treat nil as Qnone for
6473 ns_alternate_modifier. (Bug#1217)
6474
6475 * nsmenu.m (EmacsMenu-parseKeyEquiv:, addItemWithWidgetValue:):
6476 Display all shortcuts, including those w/o super modifier.
6477
6478 * nsfns.m (ns-read-file-name): Fix typo in assignment statement.
6479
6480 2009-01-22 Chong Yidong <cyd@stupidchicken.com>
6481
6482 * fileio.c (Vwrite_region_post_annotation_function)
6483 (Vwrite_region_annotation_buffers): New vars.
6484 (build_annotations_unwind): Just reset
6485 Vwrite_region_annotation_buffers.
6486 (Fwrite_region): Initialize Vwrite_region_annotation_buffers.
6487 Call write-region-post-annotation-function.
6488 (build_annotations): Add to Vwrite_region_annotation_buffers if
6489 buffer changes.
6490
6491 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6492
6493 * nsterm.h (EmacsApp-setAppleMenu:): Conditionalize more correctly on
6494 Tiger.
6495 * nsfns.m (ns_do_applescript):
6496 Conditionalize typeUTF16ExternalRepresentation on Tiger.
6497
6498 2009-01-21 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
6499
6500 * nsterm.m (EV_TRAILER): Always use emacsframe for frame_or_window.
6501
6502 2009-01-21 Adrian Robert <Adrian.B.Robert@gmail.com>
6503
6504 * nsmenu.m (NSMENUPROFILE): Change #if style.
6505
6506 * nsterm.h (EmacsPrefsController): Add -setPanelFromDefaultValues.
6507
6508 * nsterm.m (x_set_frame_alpha): Add prototype.
6509 (ns_fake_keydown, EmacsView-keyUp:): New variable and function to
6510 handle Ctrl-tab. (Bug#1841)
6511 (ns_get_color): Use unsigned long long for scanned hex string value.
6512 (ns_term_shutdown): Abort on non SIGTERM signals.
6513 (EmacsPrefsController-setDefaultFont:,-setColors:): Raise the frame.
6514 (EmacsPrefsController-setPanelFromDefaultValues): New function.
6515 (EmacsPrefsController-resetToDefaults:): Use it. (Bug#1801)
6516 (ns_font_to_xlfd, ns_fontname_to_xlfd): Remove, unused.
6517 (ns_defined_color): Fix settings of the XColor variable fields:
6518 red,green,blue scale to 2-byte, pixel's parts to 1-byte. (Bug#1663)
6519
6520 * nsimage.m (EmacsImage+allocInitFromFile:): Set to ignore image
6521 DPI. (Bug#1316)
6522 (EmacsImage-setPixelAtX:Y:toRed:green:blue:alpha:): Fix color
6523 values in onTiger section.
6524
6525 2009-01-19 Chong Yidong <cyd@stupidchicken.com>
6526
6527 * xfaces.c (Finternal_set_lisp_face_attribute, Fx_list_fonts):
6528 Check return value of font_spec_from_name.
6529 (Fx_list_fonts): Doc fix. (Bug#1951)
6530
6531 * font.c (font_spec_from_name): Return Qnil if font name could not
6532 be parsed.
6533 (font_parse_name): Treat a `?' character as part of an XLFD.
6534
6535 * fns.c (Fsubstring): Doc fix.
6536
6537 2009-01-19 Kenichi Handa <handa@m17n.org>
6538
6539 * ftfont.c (ftfont_lookup_cache): Check the return value of FcFontList.
6540 (ftfont_list): Likewise.
6541
6542 2009-01-18 Juanma Barranquero <lekktu@gmail.com>
6543
6544 * dbusbind.c (Fdbus_register_signal):
6545 * process.c (conv_sockaddr_to_lisp):
6546 * w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
6547
6548 * callproc.c (Fgetenv_internal): Doc fix.
6549
6550 2009-01-16 Chong Yidong <cyd@stupidchicken.com>
6551
6552 * xfns.c (x_make_gc): Don't allocate stipple member for gc_values;
6553 it is not even used.
6554
6555 2009-01-16 Glenn Morris <rgm@gnu.org>
6556
6557 * font.c (Ffont_variation_glyphs): Silence compiler.
6558
6559 2009-01-15 Juanma Barranquero <lekktu@gmail.com>
6560
6561 * sound.c (SOUND_WARNING): Use _snprintf, for MSVC compatibility.
6562 Reported by David Robinow <drobinow@gmail.com>.
6563
6564 2009-01-15 Kenichi Handa <handa@m17n.org>
6565
6566 * coding.c (detect_coding_system): Fix handling of null_byte_found.
6567
6568 2009-01-14 Jason Rumney <jasonr@gnu.org>
6569
6570 * frame.c (x_set_font): Always store a font to the font parameter,
6571 never a fontset. (Bug#1562)
6572
6573 2009-01-14 Kenichi Handa <handa@m17n.org>
6574
6575 * coding.c (TWO_MORE_BYTES): New macro.
6576 (detect_coding_utf_16): Use TWO_MORE_BYTES instead of ONE_MORE_BYTE.
6577
6578 2009-01-13 Chong Yidong <cyd@stupidchicken.com>
6579
6580 * font.c (font_clear_prop): If clearing the family, clear the font
6581 width index too.
6582
6583 * xfaces.c (Finternal_set_lisp_face_attribute): Revert last change.
6584
6585 2009-01-12 Juanma Barranquero <lekktu@gmail.com>
6586
6587 * sound.c [WINDOWSNT] (SOUND_WARNING): New macro.
6588 (do_play_sound): Use it. Don't pass a hardcoded buffer size to mci
6589 functions, use sizeof.
6590
6591 2009-01-12 Martin Rudalics <rudalics@gmx.at>
6592
6593 * keyboard.c (read_char): Fix case where last_nonmenu_event
6594 returned a bad value with submenus. (Bug#447)
6595
6596 2009-01-12 Chong Yidong <cyd@stupidchicken.com>
6597
6598 * xfaces.c (Finternal_set_lisp_face_attribute): If setting the
6599 family, clear the font width index too.
6600
6601 2009-01-11 Jason Rumney <jasonr@gnu.org>
6602
6603 * keyboard.c (cmd_error_internal): Exit when errors occur before
6604 frame creation and not in daemon mode. (Bug#1836)
6605
6606 2009-01-10 Chong Yidong <cyd@stupidchicken.com>
6607
6608 * xdisp.c (pos_visible_p): When iterator stops on the last glyph
6609 of a display vector, backtrack.
6610 (try_window_reusing_current_matrix): Check glyph type before
6611 referencing charpos member.
6612
6613 2009-01-10 Eli Zaretskii <eliz@gnu.org>
6614
6615 Fix Bug #876:
6616
6617 * coding.c (inhibit_null_byte_detection): New variable.
6618 (detect_coding, detect_coding_system): Don't pay attention to null
6619 bytes if inhibit_null_byte_detection is non-zero.
6620 (syms_of_coding) <inhibit-null-byte-detection>: Declare and document.
6621 <inhibit-iso-escape-detection>: Doc fix.
6622
6623 2009-01-09 Jason Rumney <jasonr@gnu.org>
6624
6625 * w32font.c (add_font_entity_to_list): Don't report unknown
6626 Windows charset as any unrecognized registry. (Bug#1548)
6627 Only report Unicode Plane 2 fonts as unicode-sip.
6628
6629 2009-01-09 Chong Yidong <cyd@stupidchicken.com>
6630
6631 * xfaces.c (Fx_font_family_list): Delete function.
6632 Move compatibility version to faces.el.
6633
6634 * font.c (Ffont_family_list): Return a list of strings, not symbols.
6635
6636 2009-01-09 Martin Rudalics <rudalics@gmx.at>
6637
6638 * frame.c (x_set_frame_parameters): Remember requested value for
6639 fullscreen before it's reset by the parameter handler.
6640
6641 2009-01-09 Glenn Morris <rgm@gnu.org>
6642
6643 * keyboard.c (last_command_char): For clarity, rename to...
6644 (last_command_event): ... and update all users.
6645 (last_input_char): For clarity, rename to...
6646 (last_input_event): ... and update all users.
6647 (last-command-char, last-input-char): Move to subr.el as aliases.
6648 * cmds.c, commands.h: Update for last_command_char rename.
6649
6650 2009-01-08 Chong Yidong <cyd@stupidchicken.com>
6651
6652 * font.c (font_open_for_lface): Handle unspecified height attribute.
6653
6654 2009-01-08 Jason Rumney <jasonr@gnu.org>
6655
6656 * w32fns.c (Vx_pointer_shape, Vx_nontext_pointer_shape)
6657 (Vx_mode_pointer_shape, Vx_window_horizontal_drag_shape)
6658 (Vx_hourglass_pointer_shape, Vx_sensitive_text_pointer_shape):
6659 Don't declare.
6660 (syms_of_w32fns): Don't define x-pointer-shape variable. (Bug#1485)
6661 (x_create_tip_frame) [GLYPH_DEBUG]: Enable image debugging code.
6662
6663 2009-01-07 Kenichi Handa <handa@m17n.org>
6664
6665 * fileio.c (Finsert_file_contents): In the case of replace,
6666 remember the coding system used for decoding in
6667 coding_system (Bug#1039).
6668
6669 * coding.c (decode_coding_utf_8): Check byte_after_cr before
6670 breaking the loop. (Bug#870)
6671 (decode_coding_utf_16, decode_coding_emacs_mule)
6672 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
6673 (decode_coding_charset): Likewise.
6674
6675 2009-01-05 Martin Rudalics <rudalics@gmx.at>
6676
6677 * frame.c (x_set_frame_parameters): Make sure height (width) get
6678 applied when fullwidth (fullheight) is set. (Bug#1522)
6679
6680 2009-01-04 Juanma Barranquero <lekktu@gmail.com>
6681
6682 * w32.c: Use 64-bit arithmetic to do FILETIME conversions. (Bug#1766)
6683 (utc_base): Declare as ULONGLONG, not long double.
6684 (convert_time_raw): Delete.
6685 (FILETIME_TO_U64, U64_TO_LISP_TIME): New macros.
6686 (initialize_utc_base): New function.
6687 (convert_time): Use FILETIME_TO_U64, initialize_utc_base.
6688 (convert_from_time_t): Use initialize_utc_base; compute result with
6689 64-bit arithmetic.
6690 (process_times): Use FILETIME_TO_U64, U64_TO_LISP_TIME.
6691
6692 2009-01-03 Eli Zaretskii <eliz@gnu.org>
6693
6694 * process.c (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess)
6695 (Qttname, Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime)
6696 (Qcutime, Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs)
6697 (Quser, Qgroup, Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime)
6698 [!subprocesses]: Define.
6699 (syms_of_process) [!subprocesses]: Intern and staticpro them.
6700 (Flist_system_processes, Fsystem_process_attributes)
6701 [!subprocesses]: Call list_system_processes and
6702 system_process_attributes instead of returning Qnil.
6703
6704 * dosfns.c (system_process_attributes, list_system_processes):
6705 New functions.
6706
6707 * vm-limit.c (ret_lim_data) [MSDOS]: New function.
6708
6709 * sysdep.c (list_system_processes, system_process_attributes) [MSDOS]:
6710 Don't use the default (no-op) implementation.
6711
6712 2009-01-03 Jason Rumney <jasonr@gnu.org>
6713
6714 * keyboard.c (parse_modifiers_uncached): Wheel events are
6715 clicks (bug#687).
6716
6717 * w32term.c (x_query_colors, x_query_color): New functions.
6718
6719 * image.c (x_to_xcolors, png_load): Eliminate W32 specific code.
6720 (svg_load_image): Cast returned pointers from dynamically loaded
6721 functions. Eliminate W32 specific code.
6722
6723 2009-01-02 Dan Nicolaescu <dann@ics.uci.edu>
6724
6725 * nsfns.m (x_set_foreground_color, x_set_background_color)
6726 (x_set_cursor_color, x_set_icon_name, x_explicitly_set_name)
6727 (x_set_title, x_set_icon_type, x_set_cursor_type): Rename to use
6728 x_ prefix instead of ns_. Update references.
6729 (syms_of_nsfns): Add a FIXME comment.
6730
6731 * nsterm.m (x_set_cursor_type): New prototype.
6732 (setValuesFromPanel): Use it instead of the old ns_ prefixed name.
6733
6734 * sysdep.c (system_process_attributes): Provide Qtime and Qctime
6735 for Solaris instead of incorrectly providing Qutime and Qcutime.
6736
6737 2009-01-02 Eli Zaretskii <eliz@gnu.org>
6738
6739 * w32.c (process_times): Compute sum of utime and stime.
6740 (system_process_attributes): Add Qtime to the alist.
6741
6742 * sysdep.c (system_process_attributes): Compute Qtime and Qctime
6743 and add them to the alist.
6744
6745 * process.c (top level) <Qtime, Qctime>: New variables.
6746 (syms_of_process): staticpro them.
6747 (Fsystem_process_attributes): Add their documentation to the doc
6748 string.
6749
6750 * process.h: Declare Qtime and Qctime.
6751
6752 2009-01-02 Jason Rumney <jasonr@gnu.org>
6753
6754 * image.c (Qgobject): New symbol.
6755 (syms_of_image): Initialize it.
6756 (init_svg_functions): Load some functions from gobject library.
6757
6758 2009-01-01 Dan Nicolaescu <dann@ics.uci.edu>
6759
6760 * frame.c (make_terminal_frame): Remove redundant code and useless
6761 block.
6762
6763 2009-01-01 Andreas Schwab <schwab@suse.de>
6764
6765 * process.c (conv_sockaddr_to_lisp): Add workaround for
6766 getsockname bug on BSD.
6767
6768 2009-01-01 Chong Yidong <cyd@stupidchicken.com>
6769
6770 * xfns.c (x_create_tip_frame): Set border width of the X window.
6771
6772 * xfaces.c (Finternal_set_lisp_face_attribute): Improve error message.
6773
6774 2009-01-01 Jason Rumney <jasonr@gnu.org>
6775
6776 * w32term.c (x_new_font): Return font object, not fontset. (Bug#119)
6777 Don't block input, as per earlier xterm.c changes.
6778
6779 2008-12-31 Adrian Robert <Adrian.B.Robert@gmail.com>
6780
6781 * nsfns.m (ns_appkit_version_str): Rename from ns_appkit_version.
6782 (ns_appkit_version_int): New function.
6783 (x-server-version): Use ns_appkit_version_int and follow 21+
6784 convention of returning 3 integers.
6785
6786 2008-12-30 Kenichi Handa <handa@m17n.org>
6787
6788 * character.h (CHAR_VARIATION_SELECTOR_P): New macro.
6789 (CHAR_SURROGATE_PAIR_P): New macro.
6790
6791 * font.h (struct font_driver): New member get_variation_glyphs.
6792
6793 * font.c (font_range): Don't require a font for a variation selector.
6794 (Ffont_variation_glyphs): New function.
6795 (syms_of_font): Defsubr it.
6796
6797 * ftfont.c (ftfont_driver): Set the member get_variation_glyphs to
6798 ftfont_variation_glyphs.
6799 (setup_otf_gstring): New function.
6800 (ftfont_drive_otf): Use it.
6801 (ftfont_shape_by_flt): Handle variation selector.
6802 (ftfont_variation_glyphs): New function.
6803
6804 2008-12-30 Martin Rudalics <rudalics@gmx.at>
6805
6806 * frame.c (Vemacs_iconified): Remove.
6807
6808 2008-12-30 Jason Rumney <jasonr@gnu.org>
6809
6810 * frame.c (store_frame_param, x_get_arg): Enable newer code on
6811 WINDOWSNT too, as related changes have already been synced. (Bug#117)
6812
6813 2008-12-30 Chong Yidong <cyd@stupidchicken.com>
6814
6815 * indent.c (Fvertical_motion): Don't advance iterator if we have
6816 reseated to the desired position.
6817
6818 * xdisp.c (move_it_to): Handle GET_FROM_STRETCH method when
6819 checking for pos match.
6820
6821 2008-12-30 Kenichi Handa <handa@m17n.org>
6822
6823 * insdel.c (copy_text): To convert a non-ASCII char to unibyte,
6824 just get the low 8-bit of the code.
6825
6826 * font.c (font_intern_prop): Validate str as multibyte.
6827
6828 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6829
6830 * dispextern.h (struct face): Move lface and hash from the middle
6831 of bitfields.
6832
6833 * Makefile.in (INTERVALS_H): Rename from INTERVAL_SRC, update all users.
6834
6835 2008-12-29 Dan Nicolaescu <dann@ics.uci.edu>
6836
6837 * Makefile.in (INTERVAL_SRC): Also depend on dispextern.h.
6838 (coding.o, dispnew.o, keymap.o, msdos.o): Depend on INTERVAL_SRC
6839 instead of intervals.h.
6840
6841 2008-12-26 Andreas Schwab <schwab@suse.de>
6842
6843 * keymap.c (map_keymap_char_table_item): Make a copy of KEY if it is a
6844 cons.
6845
6846 2008-12-26 Martin Rudalics <rudalics@gmx.at>
6847
6848 * textprop.c (Qminibuffer_prompt): New variable.
6849 (syms_of_textprop): Initialize it.
6850 * callint.c (Fcall_interactively): For `c', `k', and `K' prompt
6851 in minibuffer-prompt face. (Bug#1662)
6852
6853 2008-12-25 Jason Rumney <jasonr@gnu.org>
6854
6855 * buffer.c (Fbuffer_swap_text): Use POINTER_TYPE.
6856
6857 2008-12-24 Jason Rumney <jasonr@gnu.org>
6858
6859 * ralloc.c (r_alloc_reset_variable): New function.
6860
6861 * buffer.c (Fbuffer_swap_text) [REL_ALLOC]: Reset ralloc's internal
6862 record of what points where. (Bug#716)
6863
6864 2008-12-22 Dan Nicolaescu <dann@ics.uci.edu>
6865
6866 * minibuf.c (read_minibuf): Follow the non-interactive case when
6867 running as a daemon, before detaching.
6868
6869 2008-12-22 Andreas Schwab <schwab@suse.de>
6870
6871 * buffer.c (init_buffer): Use realloc instead of xrealloc.
6872 * gtkutil.c (free_widget_value): Use xfree instead of free.
6873
6874 2008-12-22 Martin Rudalics <rudalics@gmx.at>
6875
6876 * frame.c (delete_frame): New function derived from
6877 Fdelete_frame to handle Qnoelisp value for FORCE argument.
6878 Delete last frame iff FORCE equals Qnoelisp. (Bug#1450)
6879 (Fdelete_frame): Call delete_frame. Remove line from doc-string
6880 saying that FORCE non-nil doesn't run `delete-frame-functions'.
6881 * frame.h: Extern delete_frame.
6882 * window.c (window_loop):
6883 * terminal.c (delete_terminal):
6884 * xterm.c (x_connection_closed):
6885 * xfns.c (Fx_hide_tip):
6886 * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
6887
6888 2008-12-21 Jason Rumney <jasonr@gnu.org>
6889
6890 * w32uniscribe.c (uniscribe_encode_char): Return FONT_INVALID_CHAR
6891 when character maps to .notdef character.
6892
6893 2008-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
6894
6895 * keyboard.c (cmd_error_internal): Don't exit in daemon mode, bug#1310.
6896
6897 2008-12-20 Jason Rumney <jasonr@gnu.org>
6898
6899 * frame.c (Fmake_terminal_frame): Raise an error when called from
6900 a graphical frame on Windows. (Bug#1325)
6901
6902 2008-12-20 Jan Djärv <jan.h.d@swipnet.se>
6903
6904 * frame.c (Fdelete_frame): Set f->menu_bar_vector to Qnil.
6905
6906 2008-12-20 Chong Yidong <cyd@stupidchicken.com>
6907
6908 * minibuf.c (Fread_buffer): Doc fix.
6909
6910 2008-12-20 Jason Rumney <jasonr@gnu.org>
6911
6912 * fileio.c (Fexpand_file_name): Do not allow ../ to go beyond the
6913 server name in UNC paths. (Bug#719)
6914
6915 * coding.c (decode_coding): Clear chars_at_source flag when using
6916 charbuf. (Bug#1035)
6917
6918 2008-12-19 Daniel Engeler <engeler@gmail.com>
6919
6920 * sysdep.c (serial_configure): Fix typo.
6921
6922 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6923
6924 * sysdep.c: Include alloca.h.
6925 (system_process_attributes): Add implementation for Solaris.
6926
6927 * s/sol2-10.h (HAVE_PROCFS, _STRUCTURED_PROC): New defines.
6928
6929 2008-12-19 Dan Nicolaescu <dann@ics.uci.edu>
6930
6931 Reorganize implementation of Flist_system_processes and
6932 Fsystem_process_attributes. No functional changes.
6933 * process.c: Don't #include pwd.h, grp.h and limits.h.
6934 (Flist_system_processes): Just call list_system_processes.
6935 (Fsystem_process_attributes): Just call system_process_attributes.
6936 (procfs_list_system_processes, time_from_jiffies)
6937 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6938 (procfs_get_total_memory, procfs_system_process_attributes): Move ...
6939
6940 * sysdep.c: ... here. Include pwd.h, grp.h and limits.h.
6941 (list_system_processes): Rename from
6942 procfs_list_system_processes. Enclose in #ifdef HAVE_PROCFS.
6943 Provide a do nothing implementation.
6944 (system_process_attributes): Rename from
6945 procfs_list_system_processes.
6946 (ltime_from_jiffies, get_up_time, procfs_ttyname, MAJOR, MINOR)
6947 (procfs_get_total_memory): Enclose in #ifdef GNU_LINUX.
6948
6949 * w32.c (list_system_processes): Rename from
6950 w32_list_system_processes.
6951 (system_process_attributes): Rename from
6952 w32_system_process_attributes.
6953
6954 * s/gnu-linux.h (LISTPROC, PROCATTR): Remove.
6955
6956 * process.h (w32_list_system_processes)
6957 (w32_system_process_attributes): Remove.
6958 (list_system_processes, system_process_attributes):
6959 New prototypes.
6960
6961 2008-12-19 Kenichi Handa <handa@m17n.org>
6962
6963 * xfont.c (xfont_decode_coding_xlfd): New function.
6964 (xfont_encode_coding_xlfd): New function.
6965 (xfont_list_pattern): Decode XLFD by iso-8859-1.
6966 (xfont_list): Decode and encode XLFD by iso-8859-1.
6967 (xfont_match): Likewise.
6968 (xfont_list_family): Likewise.
6969 (xfont_open): Likewise.
6970
6971 * ftfont.c (ftfont_open): Generate a multibyte string if given
6972 names are utf-8.
6973
6974 * xftfont.c (xftfont_open): Generate a multibyte string if given
6975 names are utf-8.
6976
6977 2008-12-18 Jan Djärv <jan.h.d@swipnet.se>
6978
6979 * gtkutil.c (xg_frame_resized): Remove check if rows/columns have
6980 changed.
6981 (xg_tool_bar_proxy_callback): Put focus on the frame after we have
6982 clicked on a detached tool bar button.
6983
6984 2008-12-18 Dan Nicolaescu <dann@ics.uci.edu>
6985
6986 * emacs.c (main): Print and error and exit when no data is read
6987 from the pipe.
6988
6989 2008-12-17 Jason Rumney <jasonr@gnu.org>
6990
6991 * w32font.c (w32font_has_char): Always return -1.
6992
6993 2008-12-16 Kenichi Handa <handa@m17n.org>
6994
6995 * font.c (font_open_entity): Fix previous change.
6996
6997 2008-12-16 Dan Nicolaescu <dann@ics.uci.edu>
6998
6999 * process.c: Include <limits.h>.
7000
7001 2008-12-16 Chetan Pandya <pandyacus@sbcglobal.net> (tiny change)
7002
7003 * font.c (font_update_drivers): Fix mistake in reconstructing the
7004 driver list.
7005
7006 2008-12-16 Chong Yidong <cyd@stupidchicken.com>
7007
7008 * font.c (font_clear_cache): Fix format of font cache data.
7009
7010 2008-12-15 Chong Yidong <cyd@stupidchicken.com>
7011
7012 * xftfont.c (xftfont_open): Free Xft font pattern if
7013 XftFontOpenPattern fails.
7014
7015 * xterm.c (x_free_frame_resources): Remove extraneous call to
7016 free_frame_faces.
7017
7018 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7019
7020 * xterm.c (x_delete_display): Move xim_close_dpy call to
7021 x_delete_terminal.
7022 (x_delete_terminal): Call xim_close_dpy.
7023
7024 2008-12-13 Jason Rumney <jasonr@gnu.org>
7025
7026 * w32font.c (intern_font_name): New function.
7027 (add_font_name_to_list, w32_enumfont_pattern_entity): Use it.
7028 (w32font_open_internal, Fx_select_font): Decode font name.
7029 (fill_in_logfont, list_all_matching_fonts): Encode font name.
7030
7031 * w32font.h (intern_font_name): Declare new function.
7032
7033 * w32uniscribe.c (add_opentype_font_name_to_list):
7034 Use intern_font_name.
7035
7036 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7037
7038 * frame.c (Fdelete_frame): Call free_font_driver_list.
7039
7040 * font.c (free_font_driver_list): Implement missing function.
7041
7042 * w32term.c (w32_term_init): Don't initialize the image cache
7043 here; it will be done in init_frame_faces.
7044
7045 * xterm.h (struct xim_inst_t): Definition moved from xterm.c.
7046 (struct x_display_info): Remove unused member null_pixel. New
7047 member xim_callback_data.
7048
7049 * xterm.c (struct xim_inst_t): Definition moved to xterm.h.
7050 (xim_initialize): Save pointer to callback function data.
7051 (xim_close_dpy): Free callback function data. Call XCloseIM,
7052 reverting 2008-11-04 change by David Smith.
7053 (x_term_init): Don't initialize the image cache here; it will be
7054 done in init_frame_faces. Remove ancient "null_pixel" cruft.
7055 (x_delete_display): Free x_dnd_atoms member.
7056
7057 2008-12-13 Kenichi Handa <handa@m17n.org>
7058
7059 * font.c (font_rescale_ratio): Moved from xfaces.c.
7060 Argument type changed. Handle a font-spec too.
7061 (font_score): Check Vface_font_rescale_alist.
7062 (font_open_entity): Likewise. (Bug#1547)
7063
7064 * xfaces.c (font_rescale_ratio): Moved to font.c.
7065
7066 2008-12-13 Chong Yidong <cyd@stupidchicken.com>
7067
7068 * xfns.c (Fx_wm_set_size_hint): Check if the frame is an X frame.
7069
7070 2008-12-12 Jason Rumney <jasonr@gnu.org>
7071
7072 * w32fns.c (x_display_info_for_name, Fx_open_connection): Set
7073 Vwindow_system_version to the real w32 major version.
7074
7075 2008-12-12 Dan Nicolaescu <dann@ics.uci.edu>
7076
7077 * term.c (init_tty): Move setting the terminal name before the
7078 potential user: maybe_fatal.
7079
7080 2008-12-11 Chong Yidong <cyd@stupidchicken.com>
7081
7082 * term.c (tty_free_frame_resources): Renamed from delete_tty_output;
7083 all callers changed. Call free_frame_faces to free the face cache.
7084
7085 2008-12-11 Jason Rumney <jasonr@gnu.org>
7086
7087 * w32font.c (fill_in_logfont): Don't assume symbol script means
7088 SYMBOL_CHARSET. (Bug#547)
7089
7090 * w32uniscribe.c (uniscribe_encode_char): Increase glyph buffer
7091 size for surrogates. (Bug#1096, bug#872)
7092
7093 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7094
7095 * w32proc.c (Fw32_get_locale_info): Decode long form of locale name.
7096
7097 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7098
7099 * process.c (Fsystem_process_attributes, syms_of_process):
7100 Fix typo in name of Ssystem_process_attributes.
7101 Reported by Ulrich Mueller <ulm@kph.uni-mainz.de>.
7102
7103 2008-12-11 Juanma Barranquero <lekktu@gmail.com>
7104
7105 * syntax.c (Fmodify_syntax_entry): Doc fix.
7106
7107 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7108
7109 * font.c (Ffont_spec): Move usage to end of docstring.
7110
7111 2008-12-10 Jason Rumney <jasonr@gnu.org>
7112
7113 * w32font.c (Qcham): New symbol.
7114 (font_supported_scripts): Add cham, and comments for other new
7115 scripts in bitfield from OpenType spec.
7116 (add_font_entity_to_list): Limit unicode-sip fonts to those that
7117 contain characters beyond the bmp.
7118
7119 2008-12-10 Kenichi Handa <handa@m17n.org>
7120
7121 * ftfont.c (fc_charset_table): Add "unicode-sip".
7122 (ftfont_spec_pattern): Lookup fc_charset_table for the registry
7123 Qunicode_sip.
7124
7125 2008-12-10 Juanma Barranquero <lekktu@gmail.com>
7126
7127 * coding.c (QCdefault_char): Rename from QCdefalut_char.
7128 (Fcoding_system_put): Use QCdefault_char.
7129 (syms_of_coding): Set QCdefault_char, not QCdefalut_char.
7130
7131 2008-12-09 Chong Yidong <cyd@stupidchicken.com>
7132
7133 * xftfont.c (syms_of_xftfont): Fix typo.
7134
7135 * buffer.c (Fbuffer_swap_text): Signal error if swapping a dead buffer.
7136
7137 2008-12-08 Dan Nicolaescu <dann@ics.uci.edu>
7138
7139 * emacs.c (main): Close daemon_pipe on exec.
7140
7141 2008-12-08 Chong Yidong <cyd@stupidchicken.com>
7142
7143 * termchar.h (struct tty): New members termcap_term_buffer and
7144 termcap_strings_buffer.
7145
7146 * term.c (encode_terminal_code): Free any previous memory blocks
7147 before calling xmalloc for encode_terminal_src or encode_terminal_dst.
7148 (maybe_fatal): Buffer argument deleted. Don't free buffer here.
7149 All callers changed.
7150 (init_tty): Store termcap data and string buffers in new struct
7151 tty members termcap_term_buffer and termcap_strings_buffer.
7152 (delete_tty): Free them.
7153 (syms_of_term): Initialize encode_terminal_src and encode_terminal_dst.
7154
7155 2008-12-07 Seiji Zenitani <zenitani@mac.com>
7156
7157 * nsfns.m (ns_set_background_color): Remove code duplication.
7158 It was a substitute for face-transparency on OS X 10.3.
7159
7160 2008-12-06 Chong Yidong <cyd@stupidchicken.com>
7161
7162 * coding.c (make_conversion_work_buffer): Disable buffer
7163 modification hooks in the work buffer.
7164
7165 2008-12-05 Eli Zaretskii <eliz@gnu.org>
7166
7167 * process.c (procfs_system_process_attributes): If `nread' has a
7168 negative value, assign zero to it.
7169
7170 2008-12-05 Chong Yidong <cyd@stupidchicken.com>
7171
7172 * eval.c (Vdebug_on_error): Doc fix.
7173
7174 2008-12-05 Kenichi Handa <handa@m17n.org>
7175
7176 * ftfont.c (ftfont_shape_by_flt): Use "combining" flt if the
7177 second character is a combining character.
7178
7179 2008-12-05 Eli Zaretskii <eliz@gnu.org>
7180
7181 * process.c (procfs_system_process_attributes): Don't use cmd,
7182 cmdsize, and q without initializing them first.
7183
7184 2008-12-04 Jason Rumney <jasonr@gnu.org>
7185
7186 * w32font.c (w32font_draw): Initialize orig_clip before getting
7187 it, and delete it when finished.
7188
7189 2008-12-04 Dan Nicolaescu <dann@ics.uci.edu>
7190
7191 * keyboard.c (kbd_buffer_get_event): Follow the non-interactive
7192 case when running as a daemon before detaching.
7193
7194 2008-12-03 Juanma Barranquero <lekktu@gmail.com>
7195
7196 * w32.c (init_environment): Don't unload library shell32.dll.
7197
7198 2008-12-03 Kenichi Handa <handa@m17n.org>
7199
7200 * font.c (font_at): Set `multibyte' at first.
7201
7202 * coding.c (decode_coding_charset): Check type of an element of
7203 vector VALIDS.
7204 (encode_coding_emacs_mule): Be sure to set `code'.
7205
7206 * fontset.c (face_for_char): Handle invalid charset property correctly.
7207 (font_for_char): Likewise.
7208
7209 2008-12-03 Chong Yidong <cyd@stupidchicken.com>
7210
7211 * font.c (Fopen_font): Compute pixel size correctly.
7212 (font_update_lface): Handle fonts with corrupted size specs,
7213 i.e. non-int and non-float.
7214
7215 * ftfont.c (ftfont_match): Initialize entity variable.
7216 (ftfont_resolve_generic_family): Avoid using uninitialized var.
7217 (ftfont_list_family): Initialize list var earlier.
7218
7219 * xselect.c (Fx_get_cut_buffer_internal): Fix memory leak.
7220
7221 * xterm.c (x_draw_glyph_string): Fall back on
7222 underline_minimum_offset for underline position.
7223
7224 2008-12-03 Dan Nicolaescu <dann@ics.uci.edu>
7225
7226 * keyboard.c (read_char_help_form_unwind): Specify the type for ARG.
7227
7228 * character.c (c_string_width): Specify the type for LEN.
7229
7230 2008-12-03 Kenichi Handa <handa@m17n.org>
7231
7232 * coding.c (decode_coding_utf_16): Initialize consumed_chars_base to 0.
7233 (decode_coding_utf_8): Likewise.
7234 (detect_coding_system): Initialize utf_16_le_eol to -1, val to Qnil.
7235 (produce_chars): Initialize consumed_chars to 0.
7236
7237 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7238
7239 * keyboard.c (make_lispy_position): Only use PT if the selected
7240 window is current.
7241
7242 2008-12-02 Andreas Schwab <schwab@suse.de>
7243
7244 * font.c (font_unparse_fcname): Fix use of uninitialized variable.
7245
7246 * doprnt.c (doprnt1): Fix size of charbuf.
7247
7248 2008-12-02 Chong Yidong <cyd@stupidchicken.com>
7249
7250 * keyboard.c (timer_check): Revert last change.
7251
7252 2008-12-02 Juanma Barranquero <lekktu@gmail.com>
7253
7254 * makefile.w32-in ($(BLD)/w32console.$(O)): Fix silly, silly typo.
7255
7256 2008-12-01 Juanma Barranquero <lekktu@gmail.com>
7257
7258 * makefile.w32-in: Update dependencies.
7259 (CONFIG_H): Add $(EMACS_ROOT)/nt/inc/sys/time.h.
7260
7261 2008-12-01 Andreas Schwab <schwab@suse.de>
7262
7263 * font.c (register_font_driver): Use xmalloc.
7264 (font_put_frame_data): Likewise.
7265
7266 2008-12-01 Chong Yidong <cyd@stupidchicken.com>
7267
7268 * xfaces.c (realize_x_face): Make abort condition clearer.
7269
7270 * gtkutil.c (update_frame_tool_bar): Initialize variable.
7271
7272 2008-11-30 Chong Yidong <cyd@stupidchicken.com>
7273
7274 * keyboard.c (timer_check): After a timer runs, ensure that the
7275 selected window's buffer is current.
7276
7277 2008-11-30 Juanma Barranquero <lekktu@gmail.com>
7278
7279 * makefile.w32-in ($(BLD)/abbrev.$(O)): Remove.
7280 It was accidentally restored by the Unicode merge.
7281
7282 * w32proc.c (Fw32_get_locale_info): Fix typo in docstring.
7283
7284 2008-11-29 Juanma Barranquero <lekktu@gmail.com>
7285
7286 * w32proc.c: Include "coding.h".
7287 (Fw32_short_file_name): Encode filename passed to Windows API.
7288 (Fw32_long_file_name): Encode filename passed to Windows API and
7289 decode back the result. (Bug#1433)
7290
7291 2008-11-29 Kenichi Handa <handa@m17n.org>
7292
7293 * charset.h (CHAR_CHARSET_P): Check if the encoder is loaded or
7294 not before accessing it.
7295
7296 * charset.c (Fdefine_charset_internal): After calculating
7297 min_char, max_char, and fastmap, copy the charset structure again.
7298 (encode_char): Fix the previous change.
7299
7300 2008-11-28 Seiji Zenitani <zenitani@mac.com>
7301
7302 * frame.c (x_set_alpha) [NS_IMPL_COCOA]: Call x_set_frame_alpha.
7303
7304 * nsfns.m (ns_frame_parm_handlers): Set alpha handler.
7305
7306 * nsterm.m (x_set_frame_alpha): New function.
7307
7308 2008-11-27 Eli Zaretskii <eliz@gnu.org>
7309
7310 * xfaces.c (Fx_font_family_list, syms_of_xfaces): Fix last change.
7311
7312 2008-11-27 Juanma Barranquero <lekktu@gmail.com>
7313
7314 * w32font.c (add_font_entity_to_list): Pass the right LOGFONT
7315 pointer to check_face_name.
7316
7317 2008-11-27 Kenichi Handa <handa@m17n.org>
7318
7319 * category.h (SET_CATEGORY_SET): Call set_category_set.
7320 (set_category_set): Extern it.
7321
7322 * category.c (hash_get_category_set): New function.
7323 (Fmodify_category_entry): Adjusted for the change of
7324 char_table_ref_and_range. Call hash_get_category_set to get a
7325 category set to store in the table.
7326
7327 * character.h (MAYBE_UNIFY_CHAR): Call maybe_unify_char instead of
7328 Funify_charset.
7329
7330 * charset.h (enum charset_method): Delete CHARSET_METHOD_MAP_DEFERRED.
7331 (DECODE_CHAR): Check if the decoder vector is ready.
7332 (ENCODE_CHAR): Check if the encoder char-table is ready.
7333 (maybe_unify_char): Extern it.
7334
7335 * charset.c (Vchar_unified_charset_table): Delete it.
7336 (inhibit_load_charset_map): New variable.
7337 (temp_charset_work): New variable.
7338 (SET_TEMP_CHARSET_WORK_ENCODER, GET_TEMP_CHARSET_WORK_ENCODER)
7339 (SET_TEMP_CHARSET_WORK_DECODER, GET_TEMP_CHARSET_WORK_DECODER):
7340 New macros.
7341 (load_charset_map): Meaning of control_flag changed. If
7342 inhibit_load_charset_map is nonzero, setup a table in
7343 temp_charset_work.
7344 (load_charset): New argument control_flag.
7345 (map_charset_for_dump): New function.
7346 (map_charset_chars): If inhibit_load_charset_map is nonzero, use
7347 map_charset_for_dump.
7348 (Fdefine_charset_internal): If the charset method is MAP, load
7349 mapping tables by calling load_charset.
7350 (Funify_charset): Don't load a mapping table but directly set
7351 Vchar_unify_table.
7352 (maybe_unify_char): New function.
7353 (decode_char): Don't handle the deleted method MAP_DEFERRED.
7354 Handle the case of inhibit_load_charset_map being nonzero.
7355 (encode_char): Don't handle the deleted method MAP_DEFERRED.
7356 Handle the case of inhibit_load_charset_map being nonzero.
7357 (Fclear_charset_maps): Just free temp_charset_work.
7358 (syms_of_charset): Make `inhibit-load-charset-map' a Lisp
7359 variable.
7360
7361 * chartab.c (sub_char_table_ref_and_range): Adjusted for the
7362 change of char_table_ref_and_range.
7363 (char_table_ref_and_range): Change the meaning of argument FROM
7364 and TO. Now the caller must provide initial values for *FROM
7365 and *TO.
7366
7367 * fontset.c (fontset_add): Adjusted for the change of
7368 char_table_ref_and_range.
7369 (fontset_get_font_group): Likewise.
7370 (Ffontset_info): Likewise.
7371
7372 * keymap.c (describe_vector): Adjusted for the change of
7373 char_table_ref_and_range. For char-table, put boundary between
7374 non-ASCII and 8-bit characters.
7375
7376 * print.c (print_object): For bool-vector, delete unnecessary
7377 check of ASCII_BYTE_P.
7378
7379 2008-11-26 Jason Rumney <jasonr@gnu.org>
7380
7381 * w32font.c (w32font_open_internal): Don't include external
7382 leading in font height. (Bug#879)
7383
7384 2008-11-26 Glenn Morris <rgm@gnu.org>
7385
7386 * xfaces.c (Fx_font_family_list): Replace lisp/term/pc-win.el
7387 redefinition with ifdef. (Bug#1383)
7388
7389 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7390
7391 * nsterm.m (ns_get_color): Handle long hex strings (fixes bug #1044).
7392
7393 2008-11-24 Wolfgang Lux <wolfgang.lux@gmail.com> (tiny change)
7394
7395 * nsterm.m (-otherMouseDown:, -otherMouseUp:, -otherMouseDragged):
7396 New EmacsView methods.
7397 (EV_UDMODIFIERS, EV_BUTTON): Add OtherMouse constants.
7398 Fixes bug #1048,1357,1414.
7399
7400 2008-11-24 Adrian Robert <Adrian.B.Robert@gmail.com>
7401
7402 Fix bug #1362.
7403 * image.c (x_clear_image_1): Do not free background under HAVE_NS, it
7404 is not an indexed color.
7405 * nsterm.m (free_indexed_color): Add argument checking.
7406 * nsfns.m: Move config.h to before system includes (advised by Dan N.).
7407
7408 2008-11-24 Chong Yidong <cyd@stupidchicken.com>
7409
7410 * minibuf.c (Fcompleting_read, Vminibuffer_completion_confirm):
7411 Document confirm-after-completion value for
7412 minibuffer-completion-confirm.
7413
7414 2008-11-24 Jason Rumney <jasonr@gnu.org>
7415
7416 * w32font.c (check_face_name): Use xstrcasecmp. Avoid compiler
7417 warning.
7418
7419 2008-11-23 Jason Rumney <jasonr@gnu.org>
7420
7421 * w32uniscribe.c (uniscribe_encode_char): Ensure context is
7422 restored before returning.
7423
7424 * w32font.c (check_face_name): New function.
7425 (add_font_entity_to_list): Use it to filter out common substituted
7426 fonts. (Bug#642)
7427
7428 2008-11-22 Martin Rudalics <rudalics@gmx.at>
7429
7430 * buffer.c (Fswitch_to_buffer): Reword and mention new option
7431 confirm-nonexistent-file-or-buffer in doc-string.
7432
7433 2008-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
7434
7435 * buffer.c (Fbuffer_swap_text): Remove redundant marker manipulation.
7436 Fix copy/paste typo. Add checks.
7437
7438 2008-11-21 Kenichi Handa <handa@m17n.org>
7439
7440 * coding.c (detect_coding_iso_2022): Reject invalid composition
7441 sequence.
7442 (DECODE_COMPOSITION_START): If the current source is the last
7443 block, and the current composition doesn't end, regard this
7444 sequence as invalid.
7445 (decode_coding_iso_2022): Handle invalid composition sequence.
7446
7447 2008-11-20 Martin Rudalics <rudalics@gmx.at>
7448
7449 * window.c (coordinates_in_window): Don't return
7450 ON_VERTICAL_BORDER for the rightmost position of a mode/header
7451 line when the window is not the rightmost one. (Bug#1372)
7452
7453 2008-11-16 Ben North <ben@redfrontdoor.org> (tiny change)
7454
7455 * buffer.c (syms_of_buffer): Fix doc-string of cursor-type.
7456
7457 2008-11-15 Eli Zaretskii <eliz@gnu.org>
7458
7459 * msdos.c (run_msdos_command): Don't call dos_ttcooked, dos_ttraw,
7460 and bright_bg if noninteractive is non-zero.
7461
7462 2008-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7463
7464 * xterm.c (x_draw_glyph_string): For stretch glyphs, don't call
7465 x_draw_glyph_string_background.
7466
7467 * w32term.c (x_draw_glyph_string): Likewise.
7468
7469 2008-11-15 Chong Yidong <cyd@stupidchicken.com>
7470
7471 * xterm.c (x_draw_glyph_string): Stop drawing the background of
7472 the next glyph string once past the overhang width.
7473
7474 * nsterm.m (ns_draw_glyph_string): Likewise.
7475
7476 * w32term.c (x_draw_glyph_string): Likewise.
7477
7478 2008-11-14 Fabrice Popineau <fabrice.popineau@supelec.fr> (tiny change)
7479
7480 * fileio.c (Finsert_file_contents): Decrement specpdl_ptr to avoid
7481 double file close.
7482
7483 2008-11-14 Martin Rudalics <rudalics@gmx.at>
7484
7485 * window.c (window_loop): In DELETE_BUFFER_WINDOWS case, reset
7486 dedicated status of window before attempting to display another
7487 buffer in it.
7488
7489 2008-11-14 Juanma Barranquero <lekktu@gmail.com>
7490
7491 * msdos.c (Fmsdos_long_file_names):
7492 (syms_of_msdos) <dos-unsupported-char-glyph>:
7493 * dosfns.c (Fint86): Fix typos in docstrings.
7494
7495 2008-11-14 Eli Zaretskii <eliz@gnu.org>
7496
7497 * makefile.w32-in (OBJ1, WIN32OBJ): Fix whitespace.
7498
7499 2008-11-14 Katsumi Yamaoka <yamaoka@jpl.org>
7500
7501 * puresize.h (BASE_PURESIZE): Increase to 1260000.
7502
7503 2008-11-12 Michal Nazarewicz <mina86@tlen.pl> (tiny change)
7504
7505 * frame.c (x_set_alpha): Set alpha to -1 if nil given.
7506
7507 * frame.h: Negative alpha means "don't touch".
7508
7509 * w32term.c (x_set_frame_alpha): Do nothing if alpha is negative.
7510
7511 * xterm.c (x_set_frame_alpha): Do nothing if alpha is negative.
7512
7513 2008-11-12 Dan Nicolaescu <dann@ics.uci.edu>
7514
7515 * hftctl.c:
7516 * chpdef.h:
7517 * acldef.h: Remove files used only for systems no longer supported.
7518
7519 * Makefile.in: Fix .o alphabetical ordering.
7520 (hftctl.o): Remove dependency, file removed.
7521 (keymap.o, print.o): Depend on charset.h.
7522
7523 2008-11-10 Kenichi Handa <handa@m17n.org>
7524
7525 * character.c (Fget_byte): Fix and make it faster for unibyte target.
7526
7527 2008-11-08 Chong Yidong <cyd@stupidchicken.com>
7528
7529 * dired.c (file_name_completion): If completion_ignore_case is
7530 enabled, ignore case when checking completion-regexp-list.
7531
7532 2008-11-08 Eli Zaretskii <eliz@gnu.org>
7533
7534 * vm-limit.c (get_lim_data): Fix last change.
7535
7536 2008-11-08 Kenichi Handa <handa@m17n.org>
7537
7538 * character.c (Fget_byte): New function.
7539 (syms_of_character): Defsubr Fget_byte.
7540
7541 2008-11-07 Chong Yidong <cyd@stupidchicken.com>
7542
7543 * xdisp.c (try_window_reusing_current_matrix): Ensure that window
7544 cursor position is valid after scrolling.
7545
7546 2008-11-06 Juanma Barranquero <lekktu@gmail.com>
7547
7548 * fns.c (Frandom): Rename arg N to LIMIT to match the docs; doc fix.
7549
7550 2008-11-06 Glenn Morris <rgm@gnu.org>
7551
7552 * xterm.c (handle_one_xevent): Don't let popup menus cause
7553 mouse-autoselect-window related window switching. (Bug#1261)
7554
7555 2008-11-04 David Smith <davidsmith@acm.org> (tiny change)
7556
7557 * xterm.c (xim_close_dpy): Avoid double-free on X11R6 XIM.
7558
7559 2008-11-04 Andreas Schwab <schwab@suse.de>
7560
7561 * xfns.c (Fx_wm_set_size_hint): Add missing return value.
7562
7563 2008-11-03 Chong Yidong <cyd@stupidchicken.com>
7564
7565 * xfns.c (Fx_wm_set_size_hint): New function.
7566
7567 2008-11-03 Martin Rudalics <rudalics@gmx.at>
7568
7569 * textprop.c (Fprevious_single_char_property_change): Return 0
7570 when there's no change in a string. (Bug#1301)
7571
7572 2008-11-02 Martin Rudalics <rudalics@gmx.at>
7573
7574 * frame.c (do_switch_frame): New argument NORECORD passed to
7575 Fselect_window.
7576 (Fselect_frame): New argument NORECORD passed to
7577 do_switch_frame.
7578 (Fset_frame_selected_window): New argument NORECORD passed to
7579 Fselect_frame.
7580 (Fhandle_switch_frame, Fdelete_frame): Handle NORECORD argument
7581 in call of do_switch_frame.
7582 (Fset_mouse_position, Fset_mouse_pixel_position, Fraise_frame):
7583 Handle NORECORD argument in call of Fselect_frame.
7584 * lisp.h (do_switch_frame, Fselect_frame)
7585 (Fset_frame_selected_window): Adjust declarations.
7586 * window.c (select_frame_norecord): New function.
7587 (run_window_configuration_change_hook): Use it and call
7588 Fselect_frame with NORECORD set.
7589 (Fselect_window): Pass NORECORD to Fselect_frame.
7590 (Fset_window_configuration): Handle NORECORD argument in call of
7591 do_switch_frame.
7592 * minibuf.c (choose_minibuf_frame): Handle NORECORD in call of
7593 Fset_frame_selected_window.
7594 * keyboard.c (command_loop_1): Handle NORECORD in call of
7595 Fselect_frame (currently ifdefd).
7596
7597 2008-11-02 Ulrich Mueller <ulm@kph.uni-mainz.de>
7598
7599 * emacs.c (USAGE2): Untabify.
7600
7601 2008-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
7602
7603 * composite.c (fill_gstring_header): Fix copy/paste typo.
7604
7605 2008-10-31 Martin Rudalics <rudalics@gmx.at>
7606
7607 * window.c (Fnext_window, Fprevious_window): Rewrite doc-string.
7608 (Fother_window): Rename argument and rewrite doc-string.
7609 (select_window_norecord): Fix return value. (Bug#1276)
7610
7611 2008-10-30 Juanma Barranquero <lekktu@gmail.com>
7612
7613 * w32fns.c (x_create_tip_frame): Prevent default foreground color for
7614 new frames overriding foreground for tooltips. Based on similar patch
7615 from Martin Rudalics <rudalics@gmx.at>. (Bug#1032)
7616
7617 2008-10-29 Chong Yidong <cyd@stupidchicken.com>
7618
7619 * emacs.c (Fdaemon_initialized): Initialize nfd.
7620
7621 2008-10-29 Martin Rudalics <rudalics@gmx.at>
7622
7623 * window.c (Fwindow_height, Fdelete_window, set_window_buffer)
7624 (Fwindow_text_height): Clarify doc-strings.
7625 * xdisp.c (syms_of_xdisp): Mention set-window-buffer in
7626 doc-string of window-scroll-functions.
7627
7628 2008-10-28 Reiner Steib <Reiner.Steib@gmx.de>
7629
7630 * category.c (syms_of_category): Fix typo in docstring.
7631
7632 2008-10-28 Juanma Barranquero <lekktu@gmail.com>
7633
7634 * window.c (Fwindowp, Fwindow_live_p, Fwindow_minibuffer_p)
7635 (Fcoordinates_in_window_p, Fscroll_left, Fscroll_right):
7636 Fix typos in docstrings.
7637
7638 2008-10-28 Dan Nicolaescu <dann@ics.uci.edu>
7639
7640 * emacs.c (daemon_pipe): Make non-static.
7641 (IS_DAEMON): Move definition ...
7642 * lisp.h (IS_DAEMON): ... here.
7643 (daemon_pipe): Declare.
7644 (is_daemon): Remove.
7645 * dispnew.c (init_display): Use IS_DAEMON.
7646
7647 2008-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
7648
7649 * xdisp.c (pos_visible_p, redisplay_internal, message3_nolog)
7650 (message2_nolog): Check FRAME_INITIAL_P instead of noninteractively.
7651
7652 * emacs.c (is_daemon): Remove.
7653 (main): Don't set is_daemon.
7654 (IS_DAEMON): New macro.
7655 (Fdaemonp, Fdaemon_initialized): Use it.
7656 (Fdaemon_initialized): Write a char into the pipe to make sure the
7657 parent exits.
7658 (syms_of_emacs): Explicitly initialize daemon_pipe[1].
7659
7660 2008-10-27 Chong Yidong <cyd@stupidchicken.com>
7661
7662 * nsterm.m (ns_draw_window_cursor): When hbar cursor is on
7663 over-sized glyph, draw it with the default glyph width.
7664
7665 * w32term.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7666 glyph, draw it with the default glyph width.
7667
7668 * xterm.c (x_draw_bar_cursor): When hbar cursor is on over-sized
7669 glyph, draw it with the default glyph width.
7670
7671 * xdisp.c (try_scrolling): When computing the distance from the
7672 scroll margin to PT, try moving some distance past the window
7673 bottom before giving up.
7674
7675 2008-10-27 Martin Rudalics <rudalics@gmx.at>
7676
7677 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p)
7678 (Fset_window_buffer): Explain in doc-string that a window can be
7679 "strongly" dedicated to its buffer.
7680
7681 2008-10-27 Dan Nicolaescu <dann@ics.uci.edu>
7682
7683 * emacs.c (daemon_name): New variable.
7684 (main): Deal with --daemon=SERVER_NAME.
7685 (Fdaemonp): Return a name if one was passed to --daemon.
7686
7687 2008-10-26 Romain Francoise <romain@orebokech.com>
7688
7689 * emacs.c (daemon_pipe): New variable.
7690 (main): Create a pipe before forking, make the parent exit only after
7691 the child has closed its end of the pipe. Move closing the
7692 descriptors ...
7693 (Fdaemon_initialized): ... here. New function.
7694
7695 2008-10-26 Stefan Monnier <monnier@iro.umontreal.ca>
7696
7697 * chartab.c (Foptimize_char_table): Make sure `ascii' doesn't point to
7698 the previous unoptimized table.
7699
7700 * window.c (Fset_window_buffer): Undo 2008-10-18 change to re-instate
7701 the distinction between non-nil and non-t value of `dedicated'.
7702
7703 2008-10-25 Chong Yidong <cyd@stupidchicken.com>
7704
7705 * keyboard.c (read_char_minibuf_menu_prompt): Ensure that
7706 read_char_minibuf_menu_text is large enough to hold the menu string.
7707
7708 2008-10-25 Martin Rudalics <rudalics@gmx.at>
7709
7710 * window.c (Fget_buffer_window, Fdelete_windows_on)
7711 (Freplace_buffer_in_windows): Make buffer argument optional and
7712 rename to buffer_or_name.
7713
7714 2008-10-24 Chong Yidong <cyd@stupidchicken.com>
7715
7716 * xdisp.c (handle_single_display_spec, handle_display_prop):
7717 Undo 2005-05-16 change.
7718 (handle_stop): Pop iterator if it's loaded with an empty string.
7719 (get_overlay_strings_1): Don't save iterator if it's loaded with
7720 an empty string (bug#1201).
7721
7722 2008-10-24 Kenichi Handa <handa@m17n.org>
7723
7724 * ftfont.c (ftfont_otf_features): Fix previous change.
7725 (ftfont_otf_capability): Check FeatureList.FeatureCount before
7726 calling ftfont_otf_features.
7727
7728 2008-10-24 Kenichi Handa <handa@m17n.org>
7729
7730 * font.c (font_match_p): Fix for the case that a vector of
7731 characters is in script-representative-chars.
7732
7733 2008-10-24 Michael Albinus <michael.albinus@gmx.de>
7734
7735 * dbusbind.c (xd_in_read_queued_messages): New variable.
7736 (XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros. Throw Qdbus_error.
7737 (xd_read_queued_messages): Catch Qdbus_error from the macros.
7738 (all): Replace xsignal1, xsignal2, xsignal3 by the respective
7739 macro. (Bug#1186)
7740
7741 2008-10-23 Ali Bahrami <ali_gnu@emvision.com> (tiny change)
7742
7743 * s/sol2-10.h: New file.
7744
7745 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7746
7747 * xdisp.c (fill_glyph_string): Fix typo in source (though the
7748 poor beast has survived 9+ years and the jump from xterm.c!).
7749
7750 2008-10-23 Martin Rudalics <rudalics@gmx.at>
7751
7752 * buffer.c (Fget_buffer_create): Rename arg to buffer_or_name.
7753 Reword doc-string.
7754 (Fbury_buffer): In doc-string say what happens to the buffer's window.
7755
7756 2008-10-23 Juanma Barranquero <lekktu@gmail.com>
7757
7758 * character.c (syms_of_character) <script-representative-chars>:
7759 <unicode-category-table>: Doc fixes.
7760
7761 2008-10-23 Noah Friedman <friedman@splode.com>
7762
7763 * coding.c (make_conversion_work_buffer): Check that
7764 Vcode_conversion_reused_workbuf is a live buffer, otherwise call
7765 Fget_buffer_create.
7766
7767 2008-10-23 Kenichi Handa <handa@m17n.org>
7768
7769 * font.c (font_add_log): Check the values of extra properties.
7770
7771 2008-10-22 Martin Rudalics <rudalics@gmx.at>
7772
7773 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7774 Reword doc-string.
7775 (Fset_window_parameter): Use NILP.
7776 (Fscroll_up, Fscroll_down, Fminibuffer_selected_window)
7777 (Frecenter): Use "selected" instead of "current" window in doc-strings.
7778
7779 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7780
7781 * xdisp.c (next_element_from_buffer): Remove bogus xassert condition.
7782
7783 2008-10-22 Adrian Robert <Adrian.B.Robert@gmail.com>
7784
7785 * nsfns.m (ns_appkit_version): New function.
7786 (x-server-version): Use it.
7787 (syms_of_nsfns): Define ns-version-string here, not nsterm.m.
7788 (x-server-vendor): Don't check_ns().
7789
7790 * nsterm.m (syms_of_nsterm): Drop ns-version-string.
7791
7792 2008-10-22 Juanma Barranquero <lekktu@gmail.com>
7793
7794 * w32fns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
7795 Copied from 2005-02-03 change to xfns.c by Kim F. Storm.
7796
7797 2008-10-22 Kenichi Handa <handa@m17n.org>
7798
7799 * syntax.c (scan_words): Call word_boundary_p instead of comparing
7800 scripts.
7801
7802 * category.c (word_boundary_p): Check scripts instead of charset.
7803 Handle nil value in word-separating-categories and
7804 word-combining-categories.
7805 (syms_of_category): Fix docstrings of word-separating-categories
7806 and word-combining-categories.
7807
7808 2008-10-21 Eli Zaretskii <eliz@gnu.org>
7809
7810 * coding.c (Fencode_coding_region, Fdecode_coding_region)
7811 (Fdecode_coding_string, Fencode_coding_string): Doc fix.
7812
7813 2008-10-21 Martin Rudalics <rudalics@gmx.at>
7814
7815 * buffer.c (Fget_buffer, Fbury_buffer, switch_to_buffer_1):
7816 Rename arg "buffer" to "buffer_or_name".
7817 (Fkill_buffer): Rename arg "buffer" to "buffer_or_name" and make
7818 it optional.
7819 (no_switch_window): Remove since the return value is not used.
7820 (Fswitch_to_buffer): Rename arg "buffer" to "buffer_or_name".
7821 Consider window as dedicated when Fwindow_dedicated_p returns a
7822 non-nil value.
7823 * lisp.h: Remove prototype for no_switch_window.
7824
7825 2008-10-21 Jan Djärv <jan.h.d@swipnet.se>
7826
7827 * emacs.c (main): Unconditionally set PER_LINUX32 and exec
7828 temacs when dumping if HAVE_PERSONALITY_LINUX32 is defined.
7829
7830 2008-10-21 Kenichi Handa <handa@m17n.org>
7831
7832 * coding.c (detect_coding_charset): For iso-8859-* coding systems,
7833 check Vlatin_extra_code_table.
7834
7835 2008-10-20 Eli Zaretskii <eliz@gnu.org>
7836
7837 * fileio.c (Fset_file_modes): Doc fix.
7838
7839 2008-10-19 Michael Albinus <michael.albinus@gmx.de>
7840
7841 * dbusbind.c (XD_OBJECT_TO_DBUS_TYPE): Handle simple type symbols
7842 in arrays.
7843
7844 2008-10-19 Martin Rudalics <rudalics@gmx.at>
7845
7846 * window.c (Fwindow_dedicated_p, Fset_window_dedicated_p):
7847 Mention kill-buffer in doc-string.
7848 (Fset_window_buffer): Reinsert tem check removed in last commit.
7849 (Fenlarge_window, Fshrink_window): Have argument names and
7850 doc-string follow Elisp manual more closely.
7851
7852 2008-10-18 Eli Zaretskii <eliz@gnu.org>
7853
7854 * fileio.c (Fset_file_modes): Doc fix.
7855
7856 2008-10-18 Martin Rudalics <rudalics@gmx.at>
7857
7858 * window.c (Fwindow_width, Fset_window_start)
7859 (Fwindow_parameters, Fwindow_parameter, Fset_window_parameter)
7860 (Fdelete_windows_on, Freplace_buffer_in_windows):
7861 Make doc-strings follow code and Elisp manual more closely.
7862 (Fwindow_dedicated_p): Make window argument optional.
7863 (Fset_window_dedicated_p): Rename argument "arg" to "flag".
7864 (Fset_window_buffer): Respect any non-nil dedicated value for
7865 window. Rename "buffer" argument to "buffer_or_name".
7866
7867 2008-10-18 Ulrich Mueller <ulm@gentoo.org>
7868
7869 * m/sh3.h: New file, machine description for SuperH.
7870
7871 2008-10-17 Martin Rudalics <rudalics@gmx.at>
7872
7873 * window.c (Fsplit_window): Rename arg horflag to horizontal.
7874
7875 2008-10-17 Kenichi Handa <handa@m17n.org>
7876
7877 * ftfont.c (ftfont_otf_features): Fix indexing
7878 gsub_gpos->FeatureList.Feature. Check the validity of indices.
7879
7880 2008-10-16 Magnus Henoch <mange@freemail.hu>
7881
7882 * dbusbind.c (Fdbus_call_method): Unbreak usage line.
7883 (Fdbus_call_method_asynchronously): Ditto.
7884 This change makes C-h f display the argument list.
7885
7886 2008-10-16 Chong Yidong <cyd@stupidchicken.com>
7887
7888 * fileio.c (Fexpand_file_name): Doc fix.
7889
7890 * xfaces.c (Finternal_set_lisp_face_attribute): Make null values
7891 of :foreground and :background equivalent to unspecified (20.x
7892 compatibility).
7893
7894 2008-10-15 Eli Zaretskii <eliz@gnu.org>
7895
7896 * buffer.c (syms_of_buffer): Doc fix.
7897
7898 2008-10-14 Kenichi Handa <handa@m17n.org>
7899
7900 * font.c (font_clear_prop): When clearing font width, clear the
7901 average width field too.
7902
7903 2008-10-12 Andreas Schwab <schwab@suse.de>
7904
7905 * ftfont.c (ftfont_shape_by_flt): Make static.
7906 * ftfont.h (ftfont_shape_by_flt): Don't declare.
7907
7908 * font.c: Don't include <m17n-flt.h>.
7909
7910 2008-10-10 Eli Zaretskii <eliz@gnu.org>
7911
7912 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Decrease to 10000.
7913
7914 2008-10-09 Eli Zaretskii <eliz@gnu.org>
7915
7916 * frame.c (make_terminal_frame) [MSDOS]: Remove unused #ifdef'ed
7917 away code.
7918
7919 2008-10-09 Chong Yidong <cyd@stupidchicken.com>
7920
7921 * dispnew.c (update_text_area): Avoid looping due to large glyph
7922 overhangs (bug#1070).
7923
7924 2008-10-09 Kenichi Handa <handa@m17n.org>
7925
7926 * fontset.c (face_for_char): If face->fontset is negative, just
7927 return ascii_face.
7928
7929 * font.c (font_delete_unmatched): Fix previous change.
7930 Don't reject an entity if DPI and AVGWIDTH of an entity are 0.
7931
7932 2008-10-09 Martin Rudalics <rudalics@gmx.at>
7933
7934 * frame.c (Fraise_frame): On text-only terminals select frame in
7935 order to make it visible. (Bug#1061)
7936
7937 2008-10-08 Chong Yidong <cyd@stupidchicken.com>
7938
7939 * fontset.c (fontset_find_font): Check frame validity.
7940
7941 2008-10-07 Chong Yidong <cyd@stupidchicken.com>
7942
7943 * gtkutil.c (xg_display_open): Reset default display if none exists.
7944 (xg_display_close): Allow Emacs to close all displays (bug#985).
7945
7946 2008-10-06 Andreas Schwab <schwab@suse.de>
7947
7948 * sysdep.c (sys_signal): Always set SA_RESTART when noninteractively.
7949
7950 2008-10-06 Chong Yidong <cyd@stupidchicken.com>
7951
7952 * emacs.c (Vbefore_init_time, Vafter_init_time): Move from startup.el.
7953
7954 * lisp.h (Vbefore_init_time, Vafter_init_time): Declare.
7955
7956 * gtkutil.c (x_wm_set_size_hint): Return immediately if called
7957 during initialization.
7958
7959 2008-10-04 Eli Zaretskii <eliz@gnu.org>
7960
7961 * xdisp.c (redisplay_internal): If frame switched, redisplay the
7962 whole thing on MSDOS frames as well as on a TTY.
7963
7964 * dispnew.c (update_frame): Flush termscript for MSDOS frames as
7965 well as for TTY.
7966 (Fopen_termscript): Allow opening a termscript on MSDOS frames as
7967 well as on a TTY.
7968
7969 * sysdep.c (init_sys_modes): Set FRAME_GARBAGED_P for MSDOS frames
7970 as well as for TTY.
7971
7972 * systime.h (EMACS_TIME_CMP): Cast EMACS_SECS values to `long'.
7973
7974 * dispnew.c (change_frame_size_1): Set FrameRows and FrameCols for
7975 MSDOS frames as well.
7976
7977 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7978
7979 * image.c (x_clear_image_1): Under NS, call ns_free_indexed_color with
7980 correct arguments.
7981 * menu.c (find_and_return_menu_selection): Add cast.
7982
7983 2008-10-03 Glenn Morris <rgm@gnu.org>
7984
7985 * emacs.c (USAGE1): Add --daemon.
7986
7987 2008-10-02 Eli Zaretskii <eliz@gnu.org>
7988
7989 * process.c (procfs_system_process_attributes): Multiply `pcpu' by
7990 100, so it's in percents as advertised.
7991
7992 2008-10-02 Adrian Robert <Adrian.B.Robert@gmail.com>
7993
7994 * nsterm.h (ns_cursor_types, ns_output.desired_cursor_color)
7995 (ns_output.current_cursor, ns_output.desired_cursor)
7996 (ns_output.last_inactive, FRAME_CURSOR, FRAME_NEW_CURSOR)
7997 (FRAME_NEW_CURSOR_COLOR): Remove.
7998
7999 * nsfns.m (ns_set_cursor_color): Use FRAME_CURSOR_COLOR.
8000 (ns_lisp_to_cursor_type, ns_cursor_type_to_lisp): Use core Emacs
8001 enumeration (HOLLOW_BOX_CURSOR, etc.).
8002
8003 * nsterm.m (ns_frame_rehighlight): Remove commented code.
8004 (draw_window_cursor): Simplify code.
8005 (EmacsView-windowDidBecomeKey:,-windowDidResignKey:):
8006 Don't change cursor type. In latter, call rehighlight instead of doing
8007 updates manually.
8008 (EmacsPrefsController-setPanelFromValues,-setValuesFromPanel):
8009 Use core Emacs cursor types.
8010
8011 * xdisp.c (draw_glyphs): Don't call notice_overwritten_cursor under NS.
8012
8013 2008-10-02 Martin Rudalics <rudalics@gmx.at>
8014
8015 * process.c (Faccept_process_output): Fix doc-string.
8016
8017 2008-10-02 Dan Nicolaescu <dann@ics.uci.edu>
8018
8019 * gmalloc.c (__sbrk): Also define for uClibc.
8020
8021 * s/gnu-linux.h (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Add definition
8022 for uClibc.
8023
8024 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8025
8026 * nsfont.m (nsfont_spec_to_traits): Use UnXX masks only for non-normal
8027 styles.
8028 (nsfont_open): Reenable the cache.
8029
8030 2008-10-01 Adrian Robert <Adrian.B.Robert@gmail.com>
8031
8032 * font.c (font_matching_entity): Reflect ATTRS in font selection.
8033 (font_find_for_lface) [HAVE_NS]: Don't ignore case.
8034
8035 2008-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
8036
8037 * dispnew.c (Fsend_string_to_terminal): Don't try to send a string to
8038 a suspended terminal.
8039
8040 2008-09-30 Michael Albinus <michael.albinus@gmx.de>
8041
8042 * dbusbind.c (xd_signature): Use strcat instead of sprintf.
8043
8044 2008-09-30 Eli Zaretskii <eliz@gnu.org>
8045
8046 * Makefile.in (MSDOS_SUPPORT): Remove ccl.elc and codepage.elc.
8047
8048 2008-09-30 Chong Yidong <cyd@stupidchicken.com>
8049
8050 * xdisp.c (move_it_to): Don't advance the iterator if the last tab
8051 in a continued line coincides with a line beginning.
8052
8053 2008-09-29 Adrian Robert <Adrian.B.Robert@gmail.com>
8054
8055 * nsfont.m (nsfont_trait_distance): Fix bug.
8056 (nsfont_list): Return a list rather than a vector (syncs with Handa
8057 changes of 2008-05-14).
8058 (nsfont_open): Improve logging.
8059
8060 2008-09-29 Andreas Schwab <schwab@suse.de>
8061
8062 * keyboard.c (syms_of_keyboard) <input-decode-map>: Doc fix.
8063
8064 2008-09-28 Martin Rudalics <rudalics@gmx.at>
8065
8066 * character.c (Fchar_resolve_modifiers): Rewrite Elisp function
8067 name as char-resolve-modifiers.
8068 Reported by: Markus Triska <markus.triska@gmx.at>
8069
8070 2008-09-28 Dan Nicolaescu <dann@ics.uci.edu>
8071
8072 * dispnew.c (init_display): Return earlier when running as a daemon.
8073
8074 2008-09-27 Adrian Robert <Adrian.B.Robert@gmail.com>
8075
8076 * nsfont.m (nsfont_draw): Fix up composition rendering (cmp_from, ...).
8077
8078 2008-09-27 Eli Zaretskii <eliz@gnu.org>
8079
8080 * composite.c (Fcomposition_get_gstring)
8081 (Fcompose_region_internal, Fcompose_string_internal)
8082 (Ffind_composition_internal): Doc fix.
8083 (syms_of_composite) <compose-chars-after-function>: Doc fix.
8084 (syms_of_composite) <auto-composition-function>: Doc fix.
8085 (syms_of_composite) <composition-function-table>: Doc fix.
8086
8087 2008-09-25 Chong Yidong <cyd@stupidchicken.com>
8088
8089 * search.c (wordify): New argument for lax word-ends.
8090 (Fword_search_forward_lax, Fword_search_backward_lax): New funs.
8091
8092 2008-09-24 Dan Nicolaescu <dann@ics.uci.edu>
8093
8094 * lisp.h (is_daemon): Declare.
8095 * dispnew.c (init_display): Do not try to initialize the terminal
8096 when running as a daemon.
8097
8098 2008-09-22 Chong Yidong <cyd@stupidchicken.com>
8099
8100 * nsfns.m (compute_tip_xy): Use x_display_pixel_width and
8101 x_display_pixel_height.
8102
8103 2008-09-22 Martin Rudalics <rudalics@gmx.at>
8104
8105 * undo.c (record_point): Don't call Fundo_boundary for first
8106 change. (Bug#731)
8107
8108 2008-09-22 Juanma Barranquero <lekktu@gmail.com>
8109
8110 * emacs.c (Fdaemonp): Doc fix.
8111
8112 2008-09-22 Dan Nicolaescu <dann@ics.uci.edu>
8113
8114 * emacs.c (main): Place #ifdef in the proper place.
8115
8116 2008-09-21 Dan Nicolaescu <dann@ics.uci.edu>
8117
8118 * emacs.c (standard_args): Add --daemon.
8119 (main): Disconnect from the terminal when --daemon is passed.
8120 (is_daemon): New variable.
8121 (Fdaemonp): New function.
8122 (syms_of_emacs): Defsubr it.
8123
8124 2008-09-20 Chong Yidong <cyd@stupidchicken.com>
8125
8126 * xdisp.c (get_next_display_element): Handle string display
8127 correctly when checking for the end of a box run.
8128
8129 2008-09-20 Glenn Morris <rgm@gnu.org>
8130
8131 * fileio.c (Qdelete_by_moving_to_trash): New Lisp_Object.
8132 (syms_of_fileio): Add Qdelete_by_moving_to_trash.
8133 (Frename_file): Avoid copying to trash if a rename involves
8134 a delete. (Bug#964).
8135
8136 2008-09-20 Eli Zaretskii <eliz@gnu.org>
8137
8138 * keyboard.c (Fset_quit_char, Fset_input_meta_mode)
8139 (Fset_output_flow_control, Fcurrent_input_mode): Support MSDOS
8140 frames as well as termcap frames.
8141 (handle_interrupt): Remove "#ifndef MSDOS" around the call to
8142 get_named_tty.
8143
8144 2008-09-19 Eli Zaretskii <eliz@gnu.org>
8145
8146 * process.c (procfs_system_process_attributes): Fix cmdline in
8147 case /proc/PID/cmdline is empty.
8148
8149 * xterm.c (x_wm_set_size_hint): Use x_display_pixel_width and
8150 x_display_pixel_height.
8151
8152 2008-09-19 Juanma Barranquero <lekktu@gmail.com>
8153
8154 * frame.c (x_fullscreen_adjust): Declare var as Display_Info.
8155
8156 * w32fns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8157 (compute_tip_xy): Use x_display_pixel_width, x_display_pixel_height.
8158
8159 2008-09-19 Dan Nicolaescu <dann@ics.uci.edu>
8160
8161 * dispextern.h (struct it): Move line_wrap away from the middle of
8162 bitfields. Move voffset in struct iterator_stack_entry after the
8163 bitfields. Move tab_width near after another short.
8164
8165 2008-09-18 Dan Nicolaescu <dann@ics.uci.edu>
8166
8167 * frame.h (struct frame): Move alpha from the middle of bitfields.
8168
8169 * window.h (struct window): Move frozen_window_start_p after the
8170 rest of the bitfields to reduce padding.
8171
8172 2008-09-18 Chong Yidong <cyd@stupidchicken.com>
8173
8174 * xterm.h (x_display_info): Remove `height' and `width' members.
8175
8176 * nsterm.h (ns_display_info): Remove `height' and `width' members.
8177
8178 * w32term.h (w32_display_info): Remove `height', `width',
8179 `height_in', and `width_in' members.
8180
8181 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8182 New functions.
8183 (x_calc_absolute_position): Use them.
8184 (x_term_init): Omit removed `height' and `width' members.
8185
8186 * w32term.c (x_display_pixel_height, x_display_pixel_width):
8187 New functions.
8188 (w32_read_socket, x_calc_absolute_position): Use them.
8189 (w32_initialize_display_info, w32_term_init): Omit removed members
8190 of w32_display_info.
8191
8192 * nsterm.m (x_display_pixel_height, x_display_pixel_width):
8193 New functions.
8194 (ns_initialize_display_info): Omit removed members of ns_display_info.
8195
8196 * xterm.c (x_display_pixel_height, x_display_pixel_width):
8197 New functions.
8198 (x_calc_absolute_position): Use them.
8199 (x_term_init): Omit removed `height' and `width' members.
8200
8201 * xfns.c (Fx_display_pixel_width, Fx_display_pixel_height)
8202 (compute_tip_xy):
8203 * frame.c (x_fullscreen_adjust):
8204 * xmenu.c (menu_position_func): Use x_display_pixel_height and
8205 x_display_pixel_width.
8206
8207 2008-09-18 Kenichi Handa <handa@m17n.org>
8208
8209 * composite.c (fill_gstring_header): Don't check FROM and TO here.
8210 (composition_compute_stop_pos): Fix handling of static composition.
8211 (Fcomposition_get_gstring): Check FROM and TO at first.
8212
8213 2008-09-17 Stefan Monnier <monnier@iro.umontreal.ca>
8214
8215 * composite.c (Fcomposition_get_gstring): Yet another int/Lisp_Object
8216 mixup (YAILOM).
8217
8218 2008-09-17 Chong Yidong <cyd@stupidchicken.com>
8219
8220 * indent.c (Fvertical_motion): Use position reported by iterator
8221 instead of PT for determining screen motion (bug#943).
8222
8223 2008-09-17 Romain Francoise <romain@orebokech.com>
8224
8225 * composite.c (composition_adjust_point): Fix int/EMACS_INT mixup.
8226
8227 2008-09-17 Kenichi Handa <handa@m17n.org>
8228
8229 * ftfont.c (ftfont_shape_by_flt): Downcase family name.
8230
8231 * composite.c (Fcomposition_get_gstring): Make bigger gstring_work
8232 if necessary.
8233
8234 2008-09-16 Kenichi Handa <handa@m17n.org>
8235
8236 * coding.c (make_conversion_work_buffer): Avoid calling
8237 Fget_buffer_create if it is not necessary.
8238
8239 2008-09-15 Martin Rudalics <rudalics@gmx.at>
8240
8241 * window.c (Fselect_window): Don't update window_select_count and
8242 use_time when norecord is not nil.
8243
8244 2008-09-14 Kenichi Handa <handa@m17n.org>
8245
8246 * fileio.c (Finsert_file_contents): Delete incorrect decrement of
8247 specpdl_ptr.
8248
8249 2008-09-12 Kenichi Handa <handa@m17n.org>
8250
8251 * indent.c (scan_for_column): Don't handle automatic composition
8252 if the current buffer is not associated with a window.
8253
8254 * composite.c (composition_reseat_it): If the current buffer is
8255 not associated with a window, ignore the automatic composition.
8256 (find_automatic_composition): Likewise.
8257
8258 2008-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
8259
8260 * term.c (close_gpm): New fun extracted from Fgpm_mouse_stop.
8261 (Fgpm_mouse_stop): Use it.
8262 * termhooks.h (close_gpm): Declare.
8263 * keyboard.c (tty_read_avail_input): Forcefully close the gpm
8264 connection if Gpm_GetEvent fails.
8265
8266 * window.c (set_window_buffer): Always preserve current-buffer.
8267
8268 2008-09-12 Glenn Morris <rgm@gnu.org>
8269
8270 * charset.c (init_charset): Warn if etc/charsets not found. (Bug#909)
8271
8272 2008-09-11 Glenn Morris <rgm@gnu.org>
8273
8274 * charset.c (charset-map-path): Doc fix.
8275
8276 2008-09-10 Kenichi Handa <handa@m17n.org>
8277
8278 * xdisp.c (handle_composition_prop): Set it->cmp_it.ch to -1.
8279
8280 * font.c (Ffont_shape_gstring): Make glyphs of non-nil adjustment
8281 compose a grapheme cluster with the preceding base glyph.
8282
8283 * composite.c (composition_compute_stop_pos): Fix previous change.
8284 Reset cmp_it->id to -1 at first.
8285
8286 2008-09-10 Glenn Morris <rgm@gnu.org>
8287
8288 * Makefile.in (character.o, chartab.o): Fix config.h typo.
8289
8290 2008-09-09 Chong Yidong <cyd@stupidchicken.com>
8291
8292 * keyboard.c (read_key_sequence): Reapply translation maps when
8293 switching keyboards.
8294
8295 2008-09-09 Kenichi Handa <handa@m17n.org>
8296
8297 * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
8298 characters.
8299
8300 * composite.c (FORWARD_CHAR): Fix calculation
8301 of (POSITION).pos_byte.
8302 (composition_compute_stop_pos): Limit the search of composition to
8303 at most 500 characters ahead. If we reach the limit or find a
8304 newline, set cmp_it->ch to -2 and return 0.
8305 (composition_reseat_it): Handle the case that cmp_it->ch is -2.
8306
8307 2008-09-08 Kenichi Handa <handa@m17n.org>
8308
8309 * indent.c (Fvertical_motion): Be sure to set
8310 it_overshoot_expected if it.cmp_it.id is non-negative.
8311
8312 2008-09-07 Andreas Schwab <schwab@suse.de>
8313
8314 * callproc.c (Fcall_process): Don't hold references to string data
8315 across garbage collection. Move initialisation of new_argv down
8316 to avoid compiler bug.
8317
8318 2008-09-07 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8319
8320 * process.c (Fsystem_process_attributes): Doc fix.
8321
8322 2008-09-07 Chong Yidong <cyd@stupidchicken.com>
8323
8324 * callproc.c (Fcall_process): Canonicalize current directory name.
8325
8326 * xdisp.c (move_it_to): When moving by vpos, ensure that the
8327 iterator advances to the next line if the current line ends in a
8328 continued tab.
8329
8330 2008-09-07 Teodor Zlatanov <tzz@lifelogs.com>
8331
8332 * nsfont.m (nsfont_draw): Fix the references to missing gidx data
8333 member to point to cmp_from.
8334
8335 * xdisp.c: Doc fix for references to gidx data member.
8336
8337 2008-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8338
8339 * buffer.c (Fbuffer_swap_text): Reset window->point markers.
8340
8341 2008-09-07 Kenichi Handa <handa@m17n.org>
8342
8343 * composite.c (FORWARD_CHAR): Check STOP after
8344 incrementing (POSITION).pos.
8345
8346 2008-09-06 Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>
8347
8348 * process.c (Fsystem_process_attributes): Doc fix.
8349
8350 2008-09-06 Chong Yidong <cyd@stupidchicken.com>
8351
8352 * keyboard.c (Ftop_level): Doc fix.
8353
8354 2008-09-06 Eli Zaretskii <eliz@gnu.org>
8355
8356 * xmenu.c (xmenu_show) [!HAVE_X_WINDOWS]: If frame has a
8357 minibuffer, don't let lower part of menu invade the echo area.
8358
8359 * msdos.c (IT_menu_display): Use STRING_CHAR_ADVANCE instead of a
8360 "char *q" to access menu text and advance through it. Revert the
8361 change that displayed ">" instead of ASCII character 0x10.
8362
8363 2008-09-05 Eli Zaretskii <eliz@gnu.org>
8364
8365 * menu.c (single_menu_item) [!HAVE_BOXES]: Enable emulation of
8366 toggle boxes and radio buttons on MS-DOS as well.
8367
8368 2008-09-05 Kenichi Handa <handa@m17n.org>
8369
8370 * composite.c (autocmp_chars): Check lookback count.
8371 (composition_compute_stop_pos): Set cmp_it->lookback.
8372 (composition_reseat_it): Check lookback count.
8373 (struct position_record): New struct.
8374 (FORWARD_CHAR, BACKWARD_CHAR, CHAR_COMPOSABLE_P): New macros.
8375 (find_automatic_composition): New function.
8376 (composition_adjust_point): Use find_automatic_composition.
8377
8378 * dispextern.h (struct composition_it): New member lookback.
8379
8380 2008-09-02 Chong Yidong <cyd@stupidchicken.com>
8381
8382 * indent.c (Fvertical_motion): Don't call move_it_by_lines again
8383 if moving by a single line.
8384
8385 2008-09-02 Andreas Schwab <schwab@suse.de>
8386
8387 * xterm.c (x_delete_display): Fix merge error.
8388
8389 * fileio.c (Fexpand_file_name): Remove unused variables.
8390
8391 2008-09-02 Eli Zaretskii <eliz@gnu.org>
8392
8393 * fileio.c (Fexpand_file_name): Copy argument `name' into local
8394 storage on all platforms, not just on DOS_NT.
8395
8396 2008-09-02 Jason Rumney <jasonr@gnu.org>
8397
8398 * w32menu.c (Fx_popup_menu, Fx_popup_dialog, w32_menu_show):
8399 Ensure mouse is not grabbed after menu is finished.
8400
8401 2008-09-01 Chong Yidong <cyd@stupidchicken.com>
8402
8403 * xfaces.c (Finternal_set_alternative_font_family_alist)
8404 (Finternal_set_alternative_font_registry_alist): Properly copy
8405 entire alist structure.
8406
8407 2008-09-01 Kenichi Handa <handa@m17n.org>
8408
8409 * ftfont.c (ftfont_spec_pattern): Don't create a charset if the
8410 representative chars of the script is a vector.
8411 (ftfont_list): Handle the case where the representative chars of
8412 the script is a vector.
8413
8414 * character.c (syms_of_character): Docstring of
8415 script-representative-chars fixed.
8416
8417 2008-08-31 Eli Zaretskii <eliz@gnu.org>
8418
8419 * msdos.c (BUILD_CHAR_GLYPH): New macro.
8420 (IT_menu_display): Use it instead of SET_CHAR_GLYPH to construct
8421 the menu. Allocate larger buffer for `text', to account for
8422 possible ^C characters.
8423
8424 2008-08-31 Martin Rudalics <rudalics@gmx.at>
8425
8426 * xdisp.c (prepare_menu_bars): Don't call
8427 Vwindow_size_change_functions with arg Qt.
8428
8429 2008-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
8430
8431 * font.h (font_range):
8432 * fileio.c (report_file_error):
8433 * composite.c (composition_update_it): Yet another int/Lisp_Object
8434 mixup (YAILOM).
8435
8436 2008-08-30 Glenn Morris <rgm@gnu.org>
8437
8438 * data.c (Fmake_variable_frame_local): Doc fix.
8439
8440 * frame.c (Fmodify_frame_parameters): Doc fix.
8441
8442 2008-08-30 Eli Zaretskii <eliz@gnu.org>
8443
8444 * w32.c (init_user_info): Allocate buf[] with xmalloc using the size
8445 needed by GetTokenInformation.
8446 (w32_system_process_attributes): Check return values of all system
8447 APIs.
8448
8449 * msdos.c (IT_display_cursor): Write "CURSOR ON/OFF" to termscript
8450 only when the state changes.
8451 (IT_update_begin, IT_update_end): Add termscript trace.
8452
8453 * w16select.c (Fw16_set_clipboard_data): Don't encode text if
8454 clipboard is unavailable. Set dst to NULL if it doesn't point to
8455 malloc'ed data.
8456 (Fw16_get_clipboard_data): Initialize htext to NULL, to avoid
8457 passing random values to xfree.
8458
8459 * dispnew.c (init_display): Set `tty's association in frame's
8460 parameters alist to the name of the terminal device, if that is known.
8461
8462 2008-08-29 Jason Rumney <jasonr@gnu.org>
8463
8464 * w32uniscribe.c (uniscribe_check_otf): Don't fallback on DFLT script.
8465
8466 2008-08-29 Eli Zaretskii <eliz@gnu.org>
8467
8468 * composite.c (fill_gstring_body): Avoid compiler warnings.
8469
8470 * font.c (font_fill_lglyph_metrics): Use EMACS_INT in
8471 LGLYPH_SET_CODE to avoid compiler warnings.
8472
8473 * makefile.w32-in ($(BLD)/w32uniscribe.$(O)): Depend on composite.h.
8474
8475 * composite.h (LGLYPH_SET_CODE): Cast `val' to EMACS_INT.
8476
8477 * w32uniscribe.c (uniscribe_shape): Shut up compiler warning in
8478 LGLYPH_SET_CODE.
8479
8480 2008-08-29 Kenichi Handa <handa@m17n.org>
8481
8482 * fileio.c (report_file_error): Don't downcase the first character
8483 of errstring if it is still unibyte.
8484
8485 2008-08-29 Kenichi Handa <handa@m17n.org>
8486
8487 These changes are to re-implement the automatic composition so
8488 that it doesn't use text properties.
8489
8490 * Makefile.in (ftfont.o): Depend on composite.h.
8491 (composite.o): Depend dispextern.h, font.h, frame, and window.h.
8492
8493 * character.h (Vunicode_category_table): Extern it.
8494
8495 * character.c (Vunicode_category_table): New variable.
8496 (syms_of_character): DEFVAR_LISP Vunicode_category_table.
8497
8498 * chartab.c (optimize_sub_char_table): Perform more greedy
8499 optimization.
8500
8501 * composite.h (enum composition_method):
8502 Delete COMPOSITION_WITH_GLYPH_STRING.
8503 (COMPOSITION_METHOD): Don't check COMPOSITION_WITH_GLYPH_STRING.
8504 (Vcomposition_function_table): Extern it.
8505 (LGSTRING_XXX, LGLYPH_XXX): Macros moved from font.h.
8506 (composition_gstring_put_cache, composition_gstring_from_id)
8507 (composition_gstring_p, composition_gstring_width)
8508 (composition_compute_stop_pos, composition_reseat_it)
8509 (composition_update_it, composition_adjust_point): Extern them.
8510 (Fcomposition_get_gstring): EXFUN it.
8511
8512 * composite.c: Include window.h, frame.h, dispextern.h, font.h.
8513 (Vcomposition_function_table)
8514 (get_composition_id): Don't handle COMPOSITION_WITH_GLYPH_STRING.
8515 (gstring_hash_table, gstring_work, gstring_work_headers):
8516 New variables.
8517 (gstring_lookup_cache, composition_gstring_put_cache)
8518 (composition_gstring_from_id, composition_gstring_p)
8519 (composition_gstring_width, fill_gstring_header)
8520 (fill_gstring_body, autocmp_chars, composition_compute_stop_pos)
8521 (composition_reseat_it, composition_update_it)
8522 (composition_adjust_point, Fcomposition_get_gstring): New functions.
8523 (syms_of_composite): Initialize gstring_hash_table, gstrint_work,
8524 and gstring_work_headers. DEFVAR_LISP composition-function-table.
8525 Defsubr compostion_get_gstring.
8526
8527 * dispextern.h (struct glyph): New union u.cmp. Delete the member
8528 cmp_id.
8529 (struct glyph_string): Delete the member gidx. New members
8530 cmp_id, cmp_from, and cmp_to.
8531 (enum it_method): Delete GET_FROM_COMPOSITION.
8532 (struct composition_it): New struct.
8533 (struct it): New member cmp_it, and iterator_stack_entry.cmp_it.
8534 Delete c, len, cmp_id, cmp_len in u.comp.
8535
8536 * font.h (enum lgstring_indices): Delete it.
8537 (LGSTRING_XXX, LGLYPH_XXX): Move these macros to composite.h.
8538 (enum lglyph_indices): Likewise.
8539 (font_range): Adjust extern.
8540 (font_fill_lglyph_metrics): Extern it.
8541
8542 * font.c (QCf): New variable.
8543 (check_gstring): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8544 (font_prepare_composition): Delete this function.
8545 (font_range): Type and arguments changed.
8546 (Ffont_make_gstring, Ffont_fill_gstring): Delete them.
8547 (font_fill_lglyph_metrics): New function.
8548 (Ffont_shape_text): Rename to Ffont_shape_gstring and change arguments.
8549 (syms_of_font): DEFSYM QCf. Delete defsubr for
8550 Sfont_make_gstring, Sfont_fill_gstring, Sfont_shape_text.
8551 Defsubr Sfont_shape_gstring.
8552
8553 * fontset.h (font_for_char): Extern it.
8554
8555 * fontset.c (font_for_char): New function.
8556
8557 * ftfont.c: Include composite.h.
8558 (ftfont_resolve_generic_family): Add langset "en" to pattern.
8559 (ftfont_shape_by_flt): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8560
8561 * indent.c: Include composite.h and dispextern.h.
8562 (check_composition): Delete this function.
8563 (scan_for_column): Handle composition by
8564 composition_compute_stop_pos, composition_reseat_it, and
8565 composition_update_it.
8566 (compute_motion): Likewise.
8567 (Fvertical_motion): Fix checking of composition.
8568
8569 * keyboard.c (adjust_point_for_property): Check composition by
8570 composition_adjust_point.
8571
8572 * nsterm.m (ns_draw_glyph_string): Adjust for the change of
8573 struct glyph_string.
8574
8575 * term.c (encode_terminal_code): Adjust for the change of struct glyph.
8576 (append_composite_glyph): Adjust for the change of struct it and
8577 struct glyph.
8578 (produce_composite_glyph): Likewise.
8579
8580 * w32term.c (x_draw_composite_glyph_string_foreground):
8581 Adjust for the change of struct glyph_string.
8582 (x_draw_glyph_string): Likewise.
8583
8584 * w32uniscribe.c (struct uniscribe_font_info): Include composite.h.
8585 (uniscribe_shape): Use LGSTRING_GLYPH_LEN, not LGSTRING_LENGTH.
8586
8587 * xdisp.c: Include font.h.
8588 (it_props): Delete the entry for Qauto_composed.
8589 (init_iterator): Initialize it->cmp_it.id to -1.
8590 (compute_stop_pos): Call composition_compute_stop_pos.
8591 (face_before_or_after_it_pos): Adjust for the change of struct it.
8592 (handle_auto_composed_prop): Delete it.
8593 (handle_composition_prop): Handle only static composition.
8594 (next_overlay_string): Remove it->method == GET_FROM_COMPOSITION
8595 from xassert. Initialize it->cmp_it.stop_pos.
8596 (push_it): Adjust for the change of struct it.
8597 (pop_it): Likewise.
8598 (get_next_element): Delete next_element_from_composition.
8599 (CHAR_COMPOSED_P): New macro.
8600 (get_next_display_element): For automatic composition, get a face
8601 from the font in the glyph-string.
8602 (set_iterator_to_next): For GET_FROM_BUFFER and GET_FROM_STRING,
8603 check composition by it->cmp_it.id. Delete GET_FROM_COMPOSITION case.
8604 (next_element_from_string): Check if the character at the current
8605 position is composed by CHAR_COMPOSED_P.
8606 (next_element_from_buffer): Likewise.
8607 (next_element_from_composition): Adjust for the change of struct it.
8608 Update it->cmp_it.
8609 (dump_glyph): Adjust for the change of struct glyph.
8610 (fill_composite_glyph_string): Adjust for the change of struct
8611 it and struct glyph. Don't handle automatic composition here.
8612 (fill_gstring_glyph_string): New function.
8613 (x_get_glyph_overhangs): Handle automatic composition.
8614 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the change of struct glyph.
8615 (BUILD_GSTRING_GLYPH_STRING): New macro.
8616 (BUILD_GLYPH_STRINGS): Call BUILD_GSTRING_GLYPH_STRING for
8617 automatic composition.
8618 (append_composite_glyph): Adjust for the change of struct it and
8619 struct glyph.
8620 (x_produce_glyphs): Adjust for the change of struct it.
8621
8622 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
8623 the change of struct glyph_string.
8624 (x_draw_glyph_string): Likewise.
8625
8626 2008-08-29 Glenn Morris <rgm@gnu.org>
8627
8628 * buffer.c (word-wrap): Doc fix.
8629 * xdisp.c (truncate-partial-width-windows): Doc fix.
8630 Increase default to 50.
8631
8632 2008-08-29 Chong Yidong <cyd@stupidchicken.com>
8633
8634 * xdisp.c (update_tool_bar_unwind): New function.
8635 (update_tool_bar): Temporarily set selected frame before building
8636 tool-bar items.
8637
8638 2008-08-28 Michael Albinus <michael.albinus@gmx.de>
8639
8640 * dbusbind.c (XD_ERROR, XD_DEBUG_MESSAGE): Use strncpy and
8641 snprintf, respectively.
8642 (xd_append_arg): Convert strings with Fstring_make_unibyte.
8643
8644 2008-08-28 Chong Yidong <cyd@stupidchicken.com>
8645
8646 * Makefile.in: Revert (undocumented) 2008-08-20 change adding
8647 LDFLAGS to GNUstep CC invocation.
8648
8649 2008-08-27 Chong Yidong <cyd@stupidchicken.com>
8650
8651 * indent.c (Fvertical_motion): Revert last change. Handle the
8652 general case where we are moving forward, and PT spans multiple
8653 screen lines.
8654
8655 * eval.c (find_handler_clause): Temporarily increase
8656 max-lisp-eval-depth while printing the backtrace buffer, to
8657 guarantee that help-mode code can run.
8658
8659 2008-08-27 Eli Zaretskii <eliz@gnu.org>
8660
8661 * msdos.c (Fmsdos_remember_default_colors): Don't reverse frame
8662 colors under -rv.
8663 (IT_set_frame_parameters): Don't swap foreground and background
8664 colors if `(reverse . t)' is present in the frame properties.
8665 (internal_terminal_init): Call init_frame_faces only for the
8666 initial frame.
8667
8668 2008-08-27 Andreas Schwab <schwab@suse.de>
8669
8670 * dired.c (Ffile_attributes): Avoid compiler warning in bitshift.
8671
8672 2008-08-27 Andreas Schwab <schwab@suse.de>
8673
8674 * search.c (search_buffer): Set char_base to zero only at the end.
8675
8676 2008-08-27 Kenichi Handa <handa@m17n.org>
8677
8678 * fileio.c (report_file_error): Fix handling of multibyte error string.
8679
8680 2008-08-27 Andreas Seltenreich <seltenreich@gmx.de>
8681
8682 * xterm.c (x_term_init): Temporarily hide the partially
8683 initialized terminal while calling vendor-specific-keysyms.
8684
8685 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8686
8687 * msdos.c (internal_terminal_init): Most initializations done only
8688 once, especially initial_screen_colors[] and termscript open.
8689
8690 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8691
8692 * eval.c (Fcondition_case): Doc fix.
8693
8694 * widgetprv.h (EmacsFramePart): Change font member to the new font
8695 struct.
8696
8697 * widget.c: Include character.h and font.h for XSETFONT.
8698 (setup_frame_gcs): Compute X font id from font struct, just once.
8699
8700 2008-08-26 Eli Zaretskii <eliz@gnu.org>
8701
8702 * term.c (get_named_tty): Fix last change.
8703
8704 2008-08-26 Chong Yidong <cyd@stupidchicken.com>
8705
8706 * indent.c (Fvertical_motion): If moving forward starting from a
8707 multi-line string, move the iterator to the last line of that string.
8708
8709 2008-08-25 Eli Zaretskii <eliz@gnu.org>
8710
8711 * frame.c (do_switch_frame): Mark previously displayed frame as
8712 obscured for FRAME_MSDOS_P frames as well.
8713
8714 2008-08-24 Eli Zaretskii <eliz@gnu.org>
8715
8716 * frame.c (make_terminal_frame): Initialize f->terminal,
8717 f->terminal->reference_count, and scroll bars on MS-DOS as well.
8718 Set the top frame to newly created frame.
8719 (Fmake_terminal_frame): Reuse the_only_display_info.
8720
8721 * vm-limit.c (get_lim_data) [MSDOS]: Use alternative methods of
8722 estimating available memory.
8723
8724 2008-08-23 David Reitter <david.reitter@gmail.com>
8725
8726 * nsterm.m (ns_draw_window_cursor): Don't call
8727 NSDisableScreenUpdates and NSEnableScreenUpdates on
8728 non-NS_IMPL_COCOA systems.
8729
8730 2008-08-23 Andreas Schwab <schwab@suse.de>
8731
8732 * process.c (procfs_system_process_attributes): Fix use of
8733 uninitialized variables.
8734
8735 2008-08-23 Eli Zaretskii <eliz@gnu.org>
8736
8737 * emacs.c (main) [MSDOS]: Call syms_of_xmenu.
8738
8739 * dispnew.c (init_display): Remove MS-DOS specific conditions for
8740 calling tty-set-up-initial-frame-faces.
8741
8742 * xmenu.c (Fx_popup_dialog, Fx_popup_menu, xmenu_show):
8743 Allow MSDOS frames along with X frames.
8744
8745 * termhooks.h (TERMINAL_ACTIVE_P): Handle output_msdos_raw in
8746 addition to output_termcap.
8747
8748 * xdisp.c (redisplay_internal) [MSDOS]: Don't call set_tty_color_mode.
8749
8750 * termchar.h (FRAME_TTY): Support output_msdos_raw.
8751 (struct tty_display_info) [MSDOS]: Add fields related to mouse
8752 highlight.
8753
8754 * process.c [!subprocesses]: Define QCname.
8755 (syms_of_process): Intern and staticpro it.
8756
8757 * w16select.c (Fw16_set_clipboard_data, Fw16_get_clipboard_data):
8758 Adjust for changes in encoding/decoding routines.
8759 Use encode_coding_object and decode_coding_object instead of
8760 encode_coding and decode_coding.
8761
8762 * sysdep.c (init_sys_modes): Call dos_ttraw with tty_out as argument.
8763
8764 * dosfns.c: Include frame.h before termhooks.h.
8765 (dos_cleanup): Use CURTTY ()->termscript instead of a global
8766 variable termscript.
8767
8768 * s/msdos.h (USER_FULL_NAME): Define.
8769 (SYSTEM_PURESIZE_EXTRA): Bump up to 100K.
8770
8771 * editfns.c (USER_FULL_NAME): Define to pw->pw_gecos if undefined.
8772 (Fuser_full_name): Use USER_FULL_NAME instead of a literal
8773 pw->pw_gecos.
8774
8775 * keyboard.c (handle_interrupt) [MSDOS]: Call cursor_to with
8776 SELECTED_FRAME as additional (1st) argument.
8777 (tty_read_avail_input): Handle output_msdos_raw in
8778 addition to output_termcap.
8779
8780 * msdos.c: Include frame.h before termhooks.h.
8781 (mouse_on, mouse_off, mouse_moveto, mouse_init)
8782 (msdos_set_cursor_shape, IT_set_face, IT_write_glyphs)
8783 (show_mouse_face, IT_clear_end_of_line, IT_clear_screen)
8784 (IT_clear_to_end, IT_cursor_to, IT_display_cursor, IT_cmgoto)
8785 (IT_set_terminal_modes, IT_reset_terminal_modes)
8786 (IT_set_frame_parameters): Use tty->termscript instead of a global
8787 variable termscript.
8788 (IT_write_glyphs): Use tty->terminal->terminal_coding instead of a
8789 global variable terminal_coding. Don't refer to
8790 Vnonascii_translation_table.
8791 (internal_terminal_init): Set Vwindow_system in current_kboard.
8792 Don't use TTY_CHAR_INS_DEL_OK. Set Vinitial_window_system.
8793 Announce date and time of session start, if termscript is open.
8794 Don't zero out the_only_display_info (it is done in
8795 term.c:init_tty). Open termscript only of not already open.
8796 Log "SCREEN SAVED" here, instead of IT_set_terminal_modes. Init mouse
8797 here instead of dos_ttraw. Don't initialize display if this is an
8798 initial tty. Don't set FRAME_FONT.
8799 (Vwindow_system_version): Bump to 23.
8800 (dos_ttraw): Accept a TTY argument; all callers fixed. If mouse
8801 is available, set up mouse_position_hook.
8802 (dos_ttraw, IT_set_terminal_modes): If called with initial
8803 terminal, do nothing.
8804 (IT_set_frame_parameters): Handle the Qtty_type frame
8805 parameter by calling internal_terminal_init.
8806 (dos_set_window_size, show_mouse_face)
8807 (clear_mouse_face, IT_note_mode_line_highlight)
8808 (IT_note_mouse_highlight, IT_update_begin, IT_frame_up_to_date)
8809 (dos_rawgetc): Use tty_display_info instead of x_display_info.
8810 (initialize_msdos_display): New function.
8811 (IT_cursor_to, IT_clear_to_end, IT_clear_screen)
8812 (IT_clear_end_of_line, IT_insert_glyphs, IT_write_glyphs)
8813 (IT_delete_glyphs, IT_ring_bell, IT_reset_terminal_modes)
8814 (IT_set_terminal_modes, IT_set_terminal_window, IT_update_begin):
8815 Accept additional argument: a pointer to a frame. Update all callers.
8816 (request_sigio, unrequest_sigio): Don't define, now defined on
8817 sysdep.c.
8818 (IT_write_glyphs): Rewrite to use encode_terminal_code.
8819
8820 * term.c [MSDOS]: Include msdos.h.
8821 (init_tty) [MSDOS]: Reuse most of WINDOWSNT branch. Change cpp
8822 conditional to DOS_NT. Allow only one call to this function in a
8823 session. Don't allocate a new struct tty_display_info; instead,
8824 reuse the_only_display_info. Call get_tty_size to get screen
8825 dimensions. Call init_baud_rate to set bad_rate.
8826 (dissociate_if_controlling_tty) [MSDOS]: Ifdef away function body.
8827 (Fsuspend_tty) [MSDOS]: Don't close input and output.
8828 (Fresume_tty) [MSDOS]: Don't reopen the TTY; instead, use stdin/stdout.
8829 (get_tty_terminal, get_named_tty, Ftty_type)
8830 (Fcontrolling_tty_p): Handle output_msdos_raw in addition to
8831 output_termcap.
8832 (Fresume_tty, Fsuspend_tty, init_tty, delete_tty):
8833 Call add_keyboard_wait_descriptor and delete_keyboard_wait_descriptor
8834 only when subprocesses are supported.
8835
8836 * frame.c (make_terminal_frame) [MSDOS]: Adjust initialization of
8837 f->output_data.x.
8838 (Fmake_terminal_frame) [MSDOS]: Don't allow creation of new
8839 terminal devices.
8840
8841 * msdos.h: Remove definition of struct x_display_info and struct
8842 x_output.
8843 (FRAME_FONT): Use output_data.tty.
8844 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL): Don't define.
8845 (struct x_display_info): Rename from display_info. Update all users in
8846 msdos.c.
8847 (struct x_output): Remove background_pixel and foreground_pixel.
8848 (the_only_display_info): Rename from the_only_x_display.
8849 (dos_ttraw): Update prototype.
8850
8851 * Makefile.in (MSDOS_OBJ): Add xmenu.o.
8852 (SOME_MACHINE_LISP): Add ../lisp/term/pc-win.elc.
8853
8854 2008-08-23 Jason Rumney <jasonr@gnu.org>
8855
8856 * image.c (enum tiff_keyword_index, tiff_format): Add :index keyword.
8857 (fn_TIFFSetDirectory): New library function used.
8858 (init_tiff_functions) [HAVE_NTGUI]: Initialize it.
8859 (tiff_load): Use :index to select among multiple images. Set count
8860 property when multiple images exist.
8861 (gif_format): Use :index, not :image.
8862
8863 2008-08-23 Chong Yidong <cyd@stupidchicken.com>
8864
8865 * xdisp.c (try_scrolling): Check INT_MAX instead of
8866 MOST_POSITIVE_FIXNUM for maximum integer value. Include limits.h
8867 to obtain INT_MAX.
8868
8869 2008-08-21 İsmail Dönmez <ismail@namtrac.org> (tiny change)
8870
8871 * xterm.c (x_delete_display): Don't call XrmDestroyDatabase on GTK+.
8872
8873 2008-08-21 Christian Faulhammer <opfer@gentoo.org> (tiny change)
8874
8875 * Makefile.in (temacs${EXEEXT}): On GNUstep, link to appropriate
8876 GNUstep library location.
8877
8878 2008-08-21 Chong Yidong <cyd@stupidchicken.com>
8879
8880 * xfaces.c (x_update_menu_appearance): Check validity of menu font
8881 before using it.
8882
8883 * puresize.h (BASE_PURESIZE): Increase to 1250000.
8884
8885 2008-08-20 Adrian Robert <Adrian.B.Robert@gmail.com>
8886
8887 * nsfns.m (ns-read-file-name): Add casts to avoid warning.
8888 (ns-convert-utf8-nfd-to-nfc): Warn if cannot execute correctly.
8889 * nsfont.m (nsfont_draw): Compare indexed colors to 0, not nil.
8890 * nsterm.h (EmacsView-unlockFocusNeedsFlush:): Add declaration.
8891 (EmacsApp-cursor_blink_handler): Remove declaration.
8892 * nsterm.m (ns_draw_glyph_string): Update first conditional body to
8893 match 01 Feb 2008 changes in xterm.c.
8894 (ns_read_socket): Add cast to avoid warning.
8895 (EmacsApp-application:openFiles:): Don't call replyToOpenOrPrint: on
8896 GNUstep.
8897
8898 2008-08-20 Chong Yidong <cyd@stupidchicken.com>
8899
8900 * xselect.c (x_get_foreign_selection): Return nil if desired
8901 selection could not be obtained, instead of signalling an error.
8902
8903 2008-08-20 David Reitter <david.reitter@gmail.com>
8904
8905 * nsfns.m (ns_lisp_to_cursor_type): Replace with generic xfns.c.
8906 * nsterm.m: Remove ns-specific code for cursor blinking.
8907 (ns_draw_window_cursor): Clear cursor properly rather than
8908 redrawing the area. Respect width of bar cursors.
8909 These changes enable the use of generic blink-cursor-mode and
8910 generic cursor types in NS and support smooth cursor movements (do
8911 not blink off after command).
8912 * xdisp.c (get_phys_cursor_geometry): Redraw wider rectangle on
8913 Nextstep, too.
8914
8915 2008-08-19 Kenichi Handa <handa@m17n.org>
8916
8917 * font.c (Vfont_log_deferred): New variable.
8918 (font_add_log): Check Vfont_log_deferred.
8919 (font_deferred_log): New function.
8920
8921 * font.h (font_deferred_log): Extern it.
8922
8923 * fontset.c (reorder_font_vector): Use encoding charset of fonts
8924 for sorting.
8925 (face_for_char): Use deferred log.
8926
8927 2008-08-18 Kenichi Handa <handa@m17n.org>
8928
8929 * fontset.c (face_for_char): Add font log.
8930
8931 * font.c (font_add_log): Add the font properties :script, :lang,
8932 and :otf in the log.
8933
8934 2008-08-17 Chong Yidong <cyd@stupidchicken.com>
8935
8936 * xdisp.c: Remove dead code.
8937 (handle_invisible_prop, next_overlay_string): Defer call to
8938 setup_for_ellipsis.
8939 (handle_stop, set_iterator_to_next): Call setup_for_ellipsis.
8940
8941 2008-08-15 Chong Yidong <cyd@stupidchicken.com>
8942
8943 * xfaces.c (lookup_derived_face): Properly handle possible zero
8944 return value of get_lface_attributes.
8945 (merge_faces): Don't tell lookup_derived_face to signal an error
8946 if face is not found.
8947
8948 * dired.c (Fdirectory_files): Doc fix.
8949
8950 * process.c (make_process): Initialize kill_without_query struct
8951 member.
8952
8953 2008-08-15 Eli Zaretskii <eliz@gnu.org>
8954
8955 * w32.c (w32_system_process_attributes) [_MSC_VER < 1300]:
8956 Alternative calculation of totphys for Visual Studio 6.
8957
8958 * w32fns.c [_MSC_VER && _MSC_VER < 1300]: Declare HMONITOR.
8959
8960 * w32.c (_MEMORY_STATUS_EX, MEMORY_STATUS_EX, LPMEMORY_STATUS_EX):
8961 Rename from _MEMORYSTATUSEX, MEMORYSTATUSEX, LPMEMORYSTATUSEX.
8962 All users changed.
8963 (stat): Only root directory passed to GetDriveType. Allow RAM
8964 disk as well as local fixed disk when w32-get-true-file-attributes
8965 is set to `local'.
8966 (CopySid_Proc, EqualSid_Proc, GetLengthSid_Proc): New typedefs.
8967 (equal_sid, get_length_sid, copy_sid): New wrapper functions.
8968 (w32_cached_id, w32_add_to_cache): New functions.
8969 (get_name_and_id): Look account names in the cache before calling
8970 lookup_account_sid.
8971 (g_b_init_get_length_sid, g_b_init_equal_sid, g_b_init_copy_sid):
8972 New initialization flags.
8973 (globals_of_w32): Initialize them to zero.
8974 (w32_system_process_attributes): Use w32_cached_id and
8975 w32_add_to_cache.
8976
8977 2008-08-14 Lawrence Mitchell <wence@gmx.li>
8978
8979 * lread.c (Fread_char, Fread_char_exclusive): If no character
8980 event is read before timeout is reached, return nil, rather than
8981 converting to a number.
8982
8983 2008-08-14 Chong Yidong <cyd@stupidchicken.com>
8984
8985 * fns.c (use_dialog_box): Doc fix.
8986
8987 * s/darwin.h: Undefine HAVE_RES_INIT, which appears to be harmful
8988 on OS X.
8989
8990 2008-08-13 Chong Yidong <cyd@stupidchicken.com>
8991
8992 * frame.c (Qns_parse_geometry): New var.
8993 (Fx_parse_geometry): For HAVE_NS, call ns-parse-geometry.
8994
8995 2008-08-11 Chong Yidong <cyd@stupidchicken.com>
8996
8997 * xdisp.c (x_produce_glyphs): Handle the case when font has no
8998 space character in calculating tabs.
8999
9000 2008-08-11 Dan Nicolaescu <dann@ics.uci.edu>
9001
9002 * Makefile.in (bootstrap-emacs): Use ln -f in the CANNOT_DUMP case.
9003
9004 2008-08-10 Glenn Morris <rgm@gnu.org>
9005
9006 * process.c (procfs_system_process_attributes): Use EMACS_INTs to
9007 silence gcc "limited range of data type" warnings in some
9008 make_fixnum_or_float calls.
9009
9010 2008-08-09 Eli Zaretskii <eliz@gnu.org>
9011
9012 * w32.c (w32_system_process_attributes): If the process does not
9013 exist, return nil.
9014
9015 * w32.c: Include thelp32.h, psapi.h and coding.h.
9016 (_MEMORYSTATUSEX, _PROCESS_MEMORY_COUNTERS_EX): New struct
9017 declarations.
9018 (CreateToolhelp32Snapshot_Proc, Process32First_Proc)
9019 (Process32Next_Proc): New typedefs.
9020 (g_b_init_create_toolhelp32_snapshot, g_b_init_process32_first)
9021 (g_b_init_process32_next, g_b_init_open_thread_token)
9022 (g_b_init_impersonate_self, g_b_init_revert_to_self)
9023 (g_b_init_get_process_memory_info, g_b_init_global_memory_status)
9024 (g_b_init_get_process_working_set_size)
9025 (g_b_init_global_memory_status_ex): New static variables.
9026 (globals_of_w32): Initialize them.
9027 (create_toolhelp32_snapshot, process32_first, process32_next)
9028 (open_thread_token, impersonate_self, revert_to_self)
9029 (get_process_memory_info, get_process_working_set_size)
9030 (global_memory_status, global_memory_status_ex): New wrapper
9031 functions.
9032 (w32_list_system_processes, w32_system_process_attributes)
9033 (enable_privilege, restore_privilege, ltime, process_times):
9034 New functions.
9035 (convert_time_raw): New function.
9036 (convert_time): Remove conversion of FILETIME into time in 100
9037 nsec units, call convert_time_raw instead.
9038
9039 * process.h (w32_list_system_processes, w32_system_process_attributes):
9040 Add prototypes.
9041 (Qeuid, Qegid, Qcomm, Qstate, Qppid, Qpgrp, Qsess, Qttname)
9042 (Qminflt, Qmajflt, Qcminflt, Qcmajflt, Qutime, Qstime, Qcutime)
9043 (Qpri, Qnice, Qthcount, Qstart, Qvsize, Qrss, Qargs, Quser, Qgroup)
9044 (Qetime, Qpcpu, Qpmem, Qtpgid, Qcstime): Add extern declarations.
9045
9046 * process.c (Fsystem_process_attributes): Doc fix.
9047
9048 2008-08-08 Chong Yidong <cyd@stupidchicken.com>
9049
9050 * xdisp.c (move_it_to): When stopping at a charpos, check if that's
9051 a continued multi-char glyph; if so, advance to the actual glyph.
9052
9053 2008-08-07 Dan Nicolaescu <dann@ics.uci.edu>
9054
9055 * s/darwin.h (OTHER_FILES): Do not define here, defined in config.in.
9056
9057 * Makefile.in (ALL_OBJC_CFLAGS): New variable.
9058 (.m.o): Use it.
9059 * config.in: Regenerate.
9060
9061 2008-08-07 Chong Yidong <cyd@stupidchicken.com>
9062
9063 * xdisp.c (redisplay_window): Revert last change.
9064 (try_window): Check bottom scroll margin too.
9065
9066 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9067
9068 * config.in: Regenerate.
9069
9070 * Makefile.in (emacs): Remove ifndef NS conditional for 'emacs
9071 -list-load-path-shadows'.
9072 (nsgui.h): Reduce number of things depending on it.
9073
9074 2008-08-06 Chong Yidong <cyd@stupidchicken.com>
9075
9076 * xdisp.c (try_scrolling): Use iterator to find the scroll margin,
9077 instead of window-end which does the wrong thing at eob.
9078 (try_cursor_movement): Minor optimization.
9079 (redisplay_window): If scroll margin is defined, don't assume
9080 window doesn't need scrolling.
9081
9082 2008-08-06 Adrian Robert <Adrian.B.Robert@gmail.com>
9083
9084 * config.in: Regenerate.
9085
9086 * Makefile.in: Move nsXXX.m dependencies into big alphabetical list.
9087 (mostlyclean): Don't delete *.d under NS.
9088
9089 * nsterm.h (NS_HAVE_INTEGER): Change to NS_HAVE_NSINTEGER.
9090
9091 2008-08-06 Kenichi Handa <handa@m17n.org>
9092
9093 * xfont.c (xfont_list_family): Return a list of symbols, not strings.
9094
9095 2008-08-06 Andreas Schwab <schwab@suse.de>
9096
9097 * config.in: Regenerate.
9098
9099 2008-08-05 Chong Yidong <cyd@stupidchicken.com>
9100
9101 * xdisp.c (redisplay_window): Don't enforce scroll-margin when
9102 forcing a window start.
9103
9104 * fileio.c (Vauto_save_list_file_name): Move here from file.el.
9105 (auto_save_1): Update modtime when auto-save-list-file-name is on.
9106
9107 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9108
9109 * emacs.c (main): Under NS, set working dir to HOME when get a "psn"
9110 argument.
9111
9112 2008-08-05 Juanma Barranquero <lekktu@gmail.com>
9113
9114 * buffer.c (syms_of_buffer) <scroll-up-aggressively>:
9115 <scroll-down-aggressively, before-change-functions>:
9116 <after-change-functions>: Reflow docstrings.
9117
9118 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9119 Ken Raeburn <raeburn@gnu.org>
9120
9121 Dock menu customization, based on a patch by Ken Raeburn, plus some
9122 other fixes.
9123 * nsmenu.m (dockMenu): New variable.
9124 (EmacsDialog -clicked:): Fix mistake in change of 2008-07-17.
9125
9126 * nsterm.h (dockMenu): Declare.
9127
9128 * nsterm.m (KEY_NS_NEW_FRAME): New definition.
9129 (ns_term_init): Initialize dockMenu.
9130 (EmacsApp -newFrame:, -applicationDockMenu:): New methods.
9131 (EmacsView -windowShouldClose:): Don't behave specially if <= 1 frame
9132 left.
9133
9134 * lisp.h (LSB_TAG): Use on DARWIN_OS, not NS_IMPL_COCOA.
9135
9136 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9137
9138 * nsterm.h: Test directly for NS_HAVE_INTEGER before defining it.
9139
9140 * config.in: Regenerate.
9141
9142 2008-08-04 Seiji Zenitani <zenitani@mac.com>
9143
9144 * nsfns.m (x-create-frame): Set the frame parameter alpha to nil.
9145
9146 2008-08-04 Chong Yidong <cyd@stupidchicken.com>
9147
9148 * nsterm.h (find_and_call_menu_selection): Fix prototype.
9149
9150 2008-08-04 Adrian Robert <Adrian.B.Robert@gmail.com>
9151
9152 * emacs.c (main: unexec_init_emacs_zone): Call if on DARWIN_OS.
9153
9154 * keyboard.h: Comment an #endif.
9155
9156 * lisp.h (have_menus_p): Adjust comment.
9157
9158 * menu.c (find_and_return_menu_selection): Fix comparison with
9159 client_data.
9160
9161 * nsmenu.m (popup_activated_flag): New variable.
9162 (popup_activated): New function.
9163 (menu-or-popup-active-p): New exported lisp definition.
9164 (ns_popup_menu): Set popup_activated_flag. Call discard_menu_items()
9165 when popup done.
9166 (ns_popup_dialog): Set popup_activated_flag.
9167
9168 * nsterm.m (EmacsView -conversationIdentifier): Use NSInteger
9169 version for GNUstep (handled by conditional typedef in nsterm.m).
9170 (ns_get_color): Remove special-casing for "darkblue", "dark blue" (now
9171 in rgb.txt).
9172
9173 * process.c (init_process): Use DARWIN_OS, not DARWIN.
9174
9175 * sysselect.h: Conditionalize init_process undef on DARWIN_OS.
9176
9177 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): Do it also under NS.
9178
9179 * xdisp.c (redisplay_internal, note_mouse_highlight): Under NS,
9180 shortcircuit if popup_activated like GTK and X toolkit.
9181
9182 * m/inter386.h: Change DARWIN to DARWIN_OS.
9183
9184 * s/darwin.h: Add #define DARWIN_OS. Get rid of C_SWITCH_SYSTEM def.
9185 Change LIBS_MACGUI to LIBS_NSGUI. Move temacs-conditionalized defs
9186 closer to C_SWITCH_SYSTEM_TEMACS so usage is understood. Expand
9187 comment on NO_SOCK_SIGIO.
9188
9189 2008-08-03 Chong Yidong <cyd@stupidchicken.com>
9190
9191 * nsterm.m (windowDidResize): Remove stopModal call.
9192
9193 2008-08-03 Andreas Schwab <schwab@suse.de>
9194
9195 * vm-limit.c (get_lim_data) [HAVE_GETRLIMIT && RLIMIT_AS]: Define.
9196 (check_memory_limits): Don't handle HAVE_GETRLIMIT here.
9197
9198 2008-08-02 Chong Yidong <cyd@stupidchicken.com>
9199
9200 * vm-limit.c (check_memory_limits): Don't use getrlimit on cygwin.
9201 Don't use uninitialized pointer variable when using getrlimit.
9202
9203 2008-08-02 Jason Rumney <jasonr@gnu.org>
9204
9205 * w32font.c (compute_metrics): Don't mess with glyph_idx setting here.
9206
9207 2008-08-02 Eli Zaretskii <eliz@gnu.org>
9208
9209 * alloc.c (NSTATICS): Bump to 0x640.
9210
9211 * s/gnu-linux.h (HAVE_PROCFS, LISTPROC, PROCATTR): New defines.
9212
9213 * lisp.h: Add prototype for directory_files_internal.
9214
9215 * process.c (Fsystem_processes_list, Fsystem_process_attributes):
9216 New functions.
9217 (syms_of_process): Defsubr them. Add initializations for various
9218 Q* symbols used in procfs_system_process_attributes.
9219 (procfs_list_system_processes, procfs_system_process_attributes)
9220 [HAVE_PROCFS]: New functions.
9221 (time_from_jiffies, ltime_from_jiffies, get_up_time, procfs_ttyname)
9222 (procfs_get_total_memory): New functions.
9223
9224 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9225
9226 * xfaces.c (Fx_load_color_file): Fix previous change;
9227 it is #ifdef WINDOWSNT, not WINDOWS_NT.
9228
9229 2008-08-01 Michael Albinus <michael.albinus@gmx.de>
9230
9231 * dbusbind.c (xd_read_message): Handle D-Bus error messages.
9232
9233 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9234
9235 * nsterm.h (NSInteger, NSUInteger): Add defines for non-Leopard.
9236
9237 2008-08-01 Chong Yidong <cyd@stupidchicken.com>
9238
9239 * nsfns.m (ns_frame_parm_handlers): Add empty entry for x_set_alpha.
9240
9241 * nsterm.m (EmacsApp -application:openFiles:): GNUstep does not
9242 define NSApplicationDelegateReplySuccess.
9243 (EmacsView -converstationIdentifier): Use long instead of
9244 NSInteger for GNUstep, since it doesn't have NSInteger.
9245
9246 * xmenu.c: Revert last change.
9247
9248 * keyboard.h: Fix last change.
9249
9250 2008-08-01 Juanma Barranquero <lekktu@gmail.com>
9251
9252 * xfaces.c (x-load-color-file): Use RGB() instead of manually shifting
9253 on Windows.
9254
9255 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9256
9257 Warning clearing and clean-up in NS port.
9258 * keyboard.h (xmalloc_widget_value, digest_single_submenu):
9259 Add prototypes.
9260 * nsgui.h (FACE_DEFAULT): Remove, unused.
9261 (XGCValues): Change colors to unsigned long.
9262 * nsterm.h (EmacsApp): Add declaration of all methods implemented in
9263 nsterm.m.
9264 (EmacsMenu -addItemWithWidgetValue:): Change to use NSMenuItem class.
9265 (ns_list_fonts): Remove, unused.
9266 (ns_font_to_xlfd, ns_fontname_to_xlfd): Drop prototypes.
9267 * nsfns.m (interpret_services_menu): Use NSMenuItem class.
9268 * nsfont.m (nsfont_open): Fix cast error in glyphs,metrics alloc.
9269 (nsfont_draw): Compare face colors to 0, not nil.
9270 * nsmenu.m (struct widget_value): Drop unneeded declaration.
9271 (EmacsMenu -addItemWithWidgetValue:, -fillWithWidgetValue:)
9272 (-addSubmenuWithTitle:): Use NSMenuItem class.
9273 (ns_popup_menu): Use NO, not NULL, for enabled setting.
9274 * nsterm.m (ns_draw_glyph_string): Don't compare font to ~0.
9275 (ns_clip_to_row): Make gc arg a BOOL.
9276 (ns_draw_fringe_bitmap, ns_draw_window_cursor): Use YES, NO in
9277 ns_clip_to_row() call.
9278 (ns_draw_glyph_string): Drop face comparison to ~0 (no longer
9279 used). Cast FRAME_FONT assignments.
9280 (ns_read_socket): Cast call to EmacsApp-fulfillService:withArg:.
9281 (ns_string_to_lispmod): Change arg to const char.
9282 (ns_term_init): Use NSMenuItem class.
9283 (EmacsApp -openFile:): Move to different section of file.
9284 (EmacsApp -application:openFiles:): Don't return a value, call
9285 -replyToOpenOrPrint:.
9286 (EmacsView -keyDown:): Fix up cast.
9287 (EmacsView -converstationIdentifier): Use NSInteger instead of long.
9288 (EmacsView -menuDown:): Cast tag in call to
9289 find_and_call_menu_selection().
9290 (ns_list_fonts): Remove, unused.
9291 (ns_font_to_xlfd): Make static. Cast result of UTF8String.
9292 (ns_fontname_to_xlfd): Make static.
9293 * w32menu.c (xmalloc_widget_value, digest_single_submenu):
9294 Remove prototypes (now in keyboard.h).
9295 (next_menubar_widget_id): Remove, unused.
9296 * xmenu.c (xmalloc_widget_value, digest_single_submenu):
9297 Remove prototypes (now in keyboard.h).
9298 * xfaces.c (ns_list_fonts, w32_list_fonts): Remove, unused.
9299
9300 2008-08-01 Dan Nicolaescu <dann@ics.uci.edu>
9301
9302 * Makefile.in (dispnew.o, gtkutil.o, sound.o, atimer.o)
9303 (floatfns.o): Depend on syssignal.h.
9304 (term.o): Depend on syssignal.h, systty.h, and $(INTERVAL_SRC).
9305
9306 * systty.h: Fix previous change that removed BSD_TERMIOS.
9307 Add comments to #ifdefs.
9308
9309 2008-08-01 Adrian Robert <Adrian.B.Robert@gmail.com>
9310
9311 * w32fns.c (w32-load-color-file): Remove.
9312 (x-open-connection): Use renamed Fx_load_color_file.
9313 * xfaces.c (x-load-color-file): Add.
9314 * nsterm.m (ns_initialize): Load colors from etc/rgb.txt instead of
9315 Emacs.clr.
9316 (hide_hourglass): BLOCK_INPUT before UNBLOCK.
9317
9318 2008-07-31 Michael Albinus <michael.albinus@gmx.de>
9319
9320 * dbusbind.c (Fdbus_call_method_asynchronously)
9321 (Fdbus_method_error_internal): New defuns.
9322 (xd_read_message): Handle also reply messages.
9323 (Vdbus_registered_functions_table): Extend docstring.
9324
9325 2008-07-31 Juanma Barranquero <lekktu@gmail.com>
9326
9327 * keyboard.c (gobble_input): Fix previous change.
9328
9329 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9330
9331 * bitmaps/README:
9332 * xfns.c:
9333 * termcap.c:
9334 * term.c:
9335 * syswait.h:
9336 * systty.h:
9337 * systime.h:
9338 * syssignal.h:
9339 * sysdep.c:
9340 * process.h:
9341 * process.c:
9342 * print.c:
9343 * ndir.h:
9344 * lread.c:
9345 * keyboard.c:
9346 * getpagesize.h:
9347 * floatfns.c:
9348 * fileio.c:
9349 * emacs.c:
9350 * doc.c:
9351 * dispnew.c:
9352 * dired.c:
9353 * data.c:
9354 * callproc.c:
9355 * buffer.c:
9356 * README:
9357 * Makefile.in:
9358 * s/template.h:
9359 * s/msdos.h:
9360 * m/vax.h: Remove VMS support.
9361 * s/vms.h:
9362 * vlimit.h:
9363 * uaf.h:
9364 * temacs.opt:
9365 * param.h:
9366 * ioctl.h: Remove file.
9367
9368 2008-07-31 Dan Nicolaescu <dann@ics.uci.edu>
9369
9370 * s/ms-w32.h (MULTI_KBOARD): Remove.
9371 * xterm.c:
9372 * xselect.c:
9373 * xfns.c:
9374 * window.c:
9375 * w32term.c:
9376 * w32fns.c:
9377 * terminal.c:
9378 * termhooks.h:
9379 * term.c:
9380 * sysdep.c:
9381 * keyboard.h:
9382 * keyboard.c:
9383 * frame.h:
9384 * frame.c:
9385 * frame.c: Remove references to MULTI_KBOARD, it is now the default.
9386 * config.in: Regenerate.
9387
9388 2008-07-30 Jason Rumney <jasonr@gnu.org>
9389
9390 * w32font.h (struct w32font_info): Use unicode version of textmetrics.
9391
9392 * w32font.c (w32font_encode_char): Leave as unicode if in range.
9393 (w32font_open_internal): Get unicode version of textmetrics.
9394 Don't enable or disable glyph indices here.
9395 (w32font_open): Disable use of glyph indices.
9396
9397 * w32uniscribe.c (uniscribe_open): Enable use of glyph indices.
9398
9399 2008-07-30 Chong Yidong <cyd@stupidchicken.com>
9400
9401 * minibuf.c (Vread_buffer_function): Doc fix.
9402
9403 2008-07-30 John Paul Wallington <jpw@pobox.com>
9404
9405 * minibuf.c (read_buffer_completion_ignore_case): New var.
9406 (Fread_buffer): Use it.
9407
9408 2008-07-30 Dan Nicolaescu <dann@ics.uci.edu>
9409
9410 * systty.h (sensemode): Remove empty #if. Remove reference to
9411 BSD_TERMIOS, unused.
9412
9413 * sysdep.c: Remove reference to DGUX.
9414 (closedir): Remove reference to BROKEN_CLOSEDIR, unused.
9415
9416 * config.in: Regenerate.
9417
9418 2008-07-30 Jason Rumney <jasonr@gnu.org>
9419
9420 * w32uniscribe.c (uniscribe_encode_char): Fix glyph buffer size.
9421
9422 2008-07-29 Jason Rumney <jasonr@gnu.org>
9423
9424 * w32uniscribe.c (uniscribe_shape): Avoid using context if cache
9425 is populated.
9426 (uniscribe_encode_char): Always use uniscribe.
9427 Avoid using context if cache is populated.
9428
9429 2008-07-29 Jan Djärv <jan.h.d@swipnet.se>
9430
9431 * xmenu.c (Fx_menu_bar_open_internal): Use activate_item signal to
9432 open menu.
9433
9434 * gtkutil.c (menu_nav_ended): Remove.
9435 (create_menus): Remove signal connect for menu_nav_ended.
9436
9437 2008-07-28 Chong Yidong <cyd@stupidchicken.com>
9438
9439 * xdisp.c (redisplay_window): Check return value of
9440 compute_window_start_on_continuation_line before forcing a window
9441 start.
9442
9443 2008-07-28 Jason Rumney <jasonr@gnu.org>
9444
9445 * w32font.c (w32font_text_extents): Use w32_metric_cache consistently.
9446
9447 * w32term.c (w32_enable_unicode_output, cleartype_active):
9448 Remove obsolete display options.
9449 (x_draw_glyph_string_background): Don't use old cleartype_active
9450 workaround.
9451 (w32_initialize): Remove cleartype_active initialization.
9452 (syms_of_w32term): Remove w32_enable_unicode_output initialization.
9453
9454 2008-07-28 Andreas Schwab <schwab@suse.de>
9455
9456 * lisp.h (init_weak_hash_tables, syms_of_font)
9457 (xd_read_queued_messages, syms_of_dbusbind): Declare.
9458 (remove_hash_entry): Don't declare.
9459 * eval.c (maybe_call_debugger): Make static and move before use.
9460 * gtkutil.c: Include <X11/Xft/Xft.h> if HAVE_XFT.
9461 * xdisp.c: Include "gtkutil.h" if USE_GTK.
9462 * xterm.h (x_set_frame_alpha): Declare.
9463
9464 2008-07-28 Jan Djärv <jan.h.d@swipnet.se>
9465
9466 * gtkutil.c (menu_nav_ended): Revert change from 2008-07-24.
9467 (create_menus): Connect selection-done to menu_nav_ended.
9468
9469 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9470
9471 * nsfns.m (x-create-frame): Add copy of parms argument to beginning.
9472 Set Vx_resource_name to a fallback. Replace read of 'buffered'
9473 parameter with read of 'alpha' one.
9474 (Qns_frame_parameter): Remove.
9475 * nsselect.m (selection-coding-system)
9476 (next-selection-coding-system, Vselection_coding_system)
9477 (Vnext_selection_coding_system): Drop.
9478
9479 2008-07-27 Adrian Robert <Adrian.B.Robert@gmail.com>
9480
9481 * nsfns.m (do-applescript, do_applescript): Rename to
9482 ns-do-applescript, ns_do_applescript, and move within file.
9483
9484 2008-07-27 Dan Nicolaescu <dann@ics.uci.edu>
9485
9486 Remove support for Mac Carbon.
9487 * mactoolbox.c:
9488 * macterm.h:
9489 * macterm.c:
9490 * macselect.c:
9491 * macmenu.c:
9492 * macgui.h:
9493 * macfns.c:
9494 * mac.c: Remove file.
9495 * s/darwin.h:
9496 * m/intel386.h:
9497 * xfaces.c:
9498 * xdisp.c:
9499 * window.c:
9500 * tparam.c:
9501 * termhooks.h:
9502 * termcap.c:
9503 * term.c:
9504 * syssignal.h:
9505 * sysselect.h:
9506 * sysdep.c:
9507 * process.c:
9508 * lread.c:
9509 * lisp.h:
9510 * keyboard.c:
9511 * image.c:
9512 * fringe.c:
9513 * frame.h:
9514 * frame.c:
9515 * fontset.c:
9516 * font.h:
9517 * font.c:
9518 * fns.c:
9519 * fileio.c:
9520 * emacs.c:
9521 * dispnew.c:
9522 * dispextern.h:
9523 * config.in:
9524 * atimer.c:
9525 * Makefile.in: Remove code for Carbon.
9526
9527 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9528
9529 * macterm.c (XDrawLine) [USE_MAC_IMAGE_IO]: Remove spurious return.
9530
9531 2008-07-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9532
9533 * macterm.h (kCGBitmapByteOrder32Host): New define for
9534 non-universal SDKs.
9535
9536 * image.c (mac_create_cg_image_from_image, image_load_image_io)
9537 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9538
9539 * macterm.c (XDrawLine, XCreatePixmapFromBitmapData)
9540 [USE_MAC_IMAGE_IO]: Remove conditionals for kCGBitmapByteOrder32Host.
9541
9542 2008-07-26 David Robinow <drobinow@gmail.com> (tiny change)
9543
9544 * w32inevt.c: Include dispextern.h.
9545
9546 2008-07-26 Andreas Schwab <schwab@suse.de>
9547
9548 * print.c (print_object): Fix off-by-one in last change.
9549
9550 2008-07-25 Juanma Barranquero <lekktu@gmail.com>
9551
9552 * term.c (syms_of_term): Don't initialize default_orig_pair,
9553 default_set_foreground and default_set_background on Windows.
9554
9555 2008-07-25 Jason Rumney <jasonr@gnu.org>
9556
9557 * w32uniscribe.c (uniscribe_shape): Pass NULL for control arg to
9558 ScriptItemize. Clean up return value checking. Remove unused
9559 variables.
9560 (uniscribe_encode_char): Encode non-BMP characters with uniscribe
9561 shaping engine.
9562
9563 * w32font.c (w32font_has_char): Handle the case where we can't
9564 determine the script for a character.
9565
9566 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9567
9568 * term.c (syms_of_term): Initialize default_orig_pair,
9569 default_set_foreground, and default_set_background.
9570
9571 * getloadavg.c (nl): Rename to name_list to avoid ncurses.h
9572 clash (bug#86).
9573 (getloadavg): Callers changed.
9574
9575 * image.c (svg_load_image): Fix last change.
9576 (svg_load_image): Use rsvg_handle_get_dimensions to check that
9577 image size is valid. Use g_object_unref instead of deprecated
9578 rsvg_handle_free to free rsvg handle.
9579 (x_from_xcolors): Don't initialize pixmap (silence compiler).
9580
9581 2008-07-25 Jason Rumney <jasonr@gnu.org>
9582
9583 * w32font.c (w32font_encode_char): Encode characters outside BMP as
9584 surrogates before looking up glyph index.
9585 (w32font_text_extents): Encode as surrogates if falling back to
9586 functions that need UTF-16 wide chars.
9587
9588 * w32uniscribe.c (uniscribe_encode_char): Encode characters outside
9589 BMP as surrogates before looking up glyph index.
9590
9591 2008-07-25 Chong Yidong <cyd@stupidchicken.com>
9592
9593 * image.c (svg_load_image): Check for failure in return value of
9594 rsvg_handle_get_pixbuf. Free rsvg handle when done.
9595
9596 2008-07-25 Jason Rumney <jasonr@gnu.org>
9597
9598 * w32font.c (Fx_select_font): Reverse sense of second arg.
9599
9600 2008-07-24 Stefan Monnier <monnier@iro.umontreal.ca>
9601
9602 * syntax.c (struct lisp_parse_state, char_quoted, inc_bytepos)
9603 (dec_bytepos, find_defun_start): Use EMACS_INT for buffer positions.
9604
9605 * puresize.h (PURESIZE_CHECKING_RATIO): New macro.
9606 (PURESIZE): Use it.
9607
9608 2008-07-24 Dan Nicolaescu <dann@ics.uci.edu>
9609
9610 * m/amdx86-64.h (HAVE_LIB64_DIR): Consolidate ifdefs.
9611 * m/alpha.h (TEXT_END):
9612 * m/ibmrs6000.h (TEXT_END):
9613 * m/macppc.h (TEXT_END):
9614 * s/darwin.h (TEXT_END):
9615 * s/msdos.h (TEXT_END): Remove, unused.
9616 * s/gnu-linux.h (BSD_PGRPS): Add a comment.
9617 * s/cygwin.h: Remove comment.
9618
9619 * ecrt0.c (NODOT_GLOBAL_START): Remove code, unused.
9620 (DOT_GLOBAL_START): Remove conditional, redundant for CRT0_DUMMIES.
9621 * m/intel386.h (DOT_GLOBAL_START):
9622 * m/vax.h (DOT_GLOBAL_START): Remove, redundant with CRT0_DUMMIES.
9623 (USG): Remove, file not used on USG platforms.
9624
9625 * Makefile.in (HAVE_X11): Remove empty #else.
9626
9627 2008-07-24 Andreas Schwab <schwab@suse.de>
9628
9629 * fileio.c (Finsert_file_contents): Properly adjust undo list
9630 after format conversion.
9631
9632 2008-07-24 Jan Djärv <jan.h.d@swipnet.se>
9633
9634 * gtkutil.c (xg_get_font_name): Cast w to GTK_FONT_SELECTION_DIALOG.
9635 (menu_nav_ended): Remove.
9636 (create_menus): Remove signal connect for menu_nav_ended.
9637 (xg_update_menubar): Also take deactivate_cb as parameter, pass it to
9638 create_menus.
9639 (xg_modify_menubar_widgets): Pass deactivate_cb to xg_update_menubar.
9640
9641 2008-07-23 Jason Rumney <jasonr@gnu.org>
9642
9643 * w32font.c (w32_enumfont_pattern_entity): Return height consistent
9644 with opened font.
9645 (w32font_open): Set font type to gdi.
9646
9647 * w32uniscribe.c (uniscribe_open): Set font type to uniscribe.
9648
9649 2008-07-23 Dan Nicolaescu <dann@ics.uci.edu>
9650
9651 * s/usg5-4.h (ADDR_CORRECT): Remove, unused.
9652 * unexaix.c (ADDR_CORRECT): Remove conditional, the only user
9653 defines it.
9654 * unexec.c (ADDR_CORRECT): Define unconditionally.
9655
9656 * m/ibmrs6000.h (C_SWITCH_MACHINE): Remove.
9657
9658 * unexec.c: Remove code depending on !COFF and USG, the file is
9659 not used for such systems.
9660
9661 * s/netbsd.h (A_TEXT_OFFSET, A_TEXT_SEEK):
9662 * s/freebsd.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, unused.
9663 (LD_SWITCH_SYSTEM_1): Remove, update users.
9664
9665 * s/darwin.h (DATA_END):
9666 * m/intel386.h (DATA_END):
9667 * m/ibmrs6000.h (DATA_END):
9668 * m/alpha.h (DATA_END): Remove, unused.
9669
9670 * config.in: Regenerate.
9671 * s/ms-w32.h (subprocesses): Define unconditionally.
9672 * s/template.h (subprocesses): Update comment.
9673 * s/vms.h (subprocesses):
9674 * s/usg5-4.h (subprocesses):
9675 * s/hpux10-20.h (subprocesses):
9676 * s/gnu-linux.h (subprocesses):
9677 * s/cygwin.h (subprocesses):
9678 * s/bsd-common.h (subprocesses):
9679 * s/aix4-2.h (subprocesses):
9680 * s/darwin.h (subprocesses): Do not define, defined by default now.
9681
9682 * Makefile.in (C_SWITCH_SITE, LD_SWITCH_SITE): Remove, unused.
9683 Remove all references.
9684 (temacs): Add GNUstep specific ld flags.
9685
9686 * nsterm.m (syms_of_nsterm): Provide ns, not ns-windowing,
9687 similarly to what X does.
9688
9689 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9690
9691 * nsfns.m (x-list-fonts): Remove.
9692 (syms_of_nsfns): Drop the x-list-fonts declaration.
9693 * nsterm.m: Get rid of remaining "//" comments.
9694
9695 2008-07-22 Chong Yidong <cyd@stupidchicken.com>
9696
9697 * xselect.c (Fx_rotate_cut_buffers_internal): Doc fix.
9698
9699 * nsselect.m (Fns_selection_exists_p, Fns_selection_owner_p)
9700 (Fx_get_selection_internal, Fns_rotate_cut_buffers_internal)
9701 (Fns_own_selection_internal, Fx_disown_selection_internal)
9702 (Fns_get_cut_buffer_internal, Fns_store_cut_buffer_internal):
9703
9704 * nsmenu.m (Fns_reset_menu, Fx_popup_menu): Change to use 'doc: /*
9705 ... */' style of docstrings. Doc fixes.
9706
9707 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9708
9709 * terminfo.c (UP, BC, PC): Undo previous change.
9710
9711 * nsfns.m: Rename ns prefixed functions/variables to the
9712 corresponding x versions. Update references.
9713
9714 2008-07-22 Stefan Monnier <monnier@iro.umontreal.ca>
9715
9716 * syntax.c (char_quoted): Check "charpos > beg" before decrementing.
9717
9718 2008-07-22 Dan Nicolaescu <dann@ics.uci.edu>
9719
9720 * nsfns.m (x_set_menu_bar_lines, x_set_tool_bar_lines):
9721 Remove forwarding functions.
9722 (ns_set_menu_bar_lines): Rename to x_set_menu_bar_lines, make
9723 non-static.
9724 (ns_set_tool_bar_lines): Rename to x_set_tool_bar_lines, make
9725 non-static.
9726 (ns_frame_parm_handlers): Use the new names.
9727 (syms_of_nsfns): Move to the end of file.
9728
9729 * nsterm.m (syms_of_nsterm): Move to the end of file.
9730
9731 * dispnew.c (init_display): Remove code for X10.
9732
9733 2008-07-22 Jason Rumney <jasonr@gnu.org>
9734
9735 * w32proc.c (Fw32_long_file_name): Don't append dir separator to
9736 bare drive.
9737
9738 2008-07-22 Adrian Robert <Adrian.B.Robert@gmail.com>
9739
9740 * nsterm.m (syms_of_nsterm): Remove debugging println.
9741
9742 2008-07-22 David Reitter <david.reitter@gmail.com>
9743
9744 * nsfns.m (do_applescript, F_do_applescript): NS version of the
9745 Carbon implementation of the same functionality: execute arbitrary
9746 AppleScript code.
9747
9748 2008-07-21 Adrian Robert <Adrian.B.Robert@gmail.com>
9749
9750 * nsfns.m (Fx_create_frame, Fx_read_file_name, Fx_get_resource)
9751 (Fx_set_resource, Fx_set_alpha, Fx_server_max_request_size)
9752 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
9753 (Fx_display_mm_height, Fx_display_mm_width)
9754 (Fx_display_backing_store, Fx_display_visual_class)
9755 (Fx_display_save_under, Fx_open_connection)
9756 (Fx_close_connection, Fx_hide_emacs, Fx_font_name)
9757 (Fx_list_colors, Fx_perform_service, Fx_color_defined_p)
9758 (Fx_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9759 (Fx_display_pixel_width, Fx_display_pixel_height)
9760 (Fx_display_usable_bounds, Fx_display_planes)
9761 (Fx_display_color_cells, Vns_icon_type_alist): Change to use 'doc: /*
9762 ... */' style of docstrings.
9763
9764 2008-07-21 Dan Nicolaescu <dann@ics.uci.edu>
9765
9766 * m/mips.h (LOAD_AVE_TYPE, LOAD_AVE_CVT): Do not define, not used
9767 on this platform.
9768 (mips):
9769 * m/iris4d.h (mips): Do not define.
9770 * sysdep.c (init_sys_modes): Use __mips__ instead of mips.
9771
9772 * m/ibmrs6000.h (LD_SWITCH_SITE): Remove.
9773
9774 * image.c:
9775 * nsfns.m:
9776 * nsselect.m:
9777 * nsterm.h:
9778 * nsterm.m: Rename ns prefixed functions/variables to the
9779 corresponding x versions. Update references.
9780
9781 * m/ibms390x.h (NO_REMAP): Do not undefine.
9782
9783 * m/amdx86-64.h: Use SOLARIS2 instead of sun.
9784
9785 2008-07-21 Chong Yidong <cyd@stupidchicken.com>
9786
9787 * nsfns.m: Change NS to Nextstep in docstrings and error messages.
9788 (Fns_create_frame, Fns_read_file_name, Fns_get_resource)
9789 (Fns_set_resource, Fns_set_alpha, Fns_server_max_request_size)
9790 (Fns_server_vendor, Fns_server_version, Fns_display_screens)
9791 (Fns_display_mm_height, Fns_display_mm_width)
9792 (Fns_display_backing_store, Fns_display_visual_class)
9793 (Fns_display_save_under, Fns_open_connection)
9794 (Fns_close_connection, Fns_hide_emacs, Fns_font_name)
9795 (Fns_list_colors, Fns_perform_service, Fns_color_defined_p)
9796 (Fns_color_values, Fxw_display_color_p, Fx_display_grayscale_p)
9797 (Fns_display_pixel_width, Fns_display_pixel_height)
9798 (Fns_display_usable_bounds, Fx_display_planes)
9799 (Fns_display_color_cells, Vns_icon_type_alist): Doc fixes.
9800
9801 2008-07-21 Ami Fischman <ami@fischman.org> (tiny change)
9802
9803 * print.c (print_object): Check print_depth before searching for
9804 circularities.
9805
9806 2008-07-21 Michael Albinus <michael.albinus@gmx.de>
9807
9808 * dbusbind.c (Fdbus_register_signal): Use sprintf + strcat instead
9809 only sprintf.
9810
9811 2008-07-21 Kenichi Handa <handa@m17n.org>
9812
9813 * ftfont.c (adjust_anchor): Check if DeltaValue is not NULL.
9814
9815 2008-07-20 Andreas Schwab <schwab@suse.de>
9816
9817 * syntax.c (find_start_pos, find_start_value)
9818 (find_start_value_byte, find_start_begv, find_defun_start)
9819 (back_comment, scan_sexps_forward): Use EMACS_INT for buffer positions.
9820
9821 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9822
9823 * s/sol2-3.h: Insert contents of s/sol2.h.
9824 (LD_SWITCH_SYSTEM): Remove redundant definition.
9825 * s/sol2.h: Remove, unused.
9826
9827 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9828
9829 * nsterm.m (ns_get_color): Recognize HSB,AHSB be synonyms for HSV,AHSV.
9830
9831 2008-07-20 Adrian Robert <Adrian.B.Robert@gmail.com>
9832
9833 * Makefile.in (ns_appdir): Fix typo in find command.
9834
9835 2008-07-20 Dan Nicolaescu <dann@ics.uci.edu>
9836
9837 * m/intel386.h (NO_REMAP): Do no define for USG, not used.
9838
9839 * s/usg5-4.h (LIBS_SYSTEM): Remove, system for which this was
9840 added not supported anymore.
9841
9842 * s/usg5-4-2.h (LIBS_SYSTEM):
9843 * s/sol2.h (LIBS_SYSTEM): Do not undefine.
9844
9845 * s/netbsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9846 * s/lynxos.h (GETPGRP_NO_ARG):
9847 * s/hpux10-20.h (NO_SIOCTL_H):
9848 * s/gnu.h (GETPGRP_NO_ARG):
9849 * s/gnu-linux.h (NO_SIOCTL_H):
9850 * s/freebsd.h (GETPGRP_NO_ARG, N_TRELOFF):
9851 * s/cygwin.h (GETPGRP_NO_ARG):
9852 * s/irix6-5.h (LIBS_SYSTEM, GETPGRP_NO_ARG): Remove, unused.
9853 (C_DEBUG_SWITCH): Remove duplicate definition.
9854
9855 * m/ibms390.h: Remove boilerplate comments.
9856
9857 * sysdep.c (closedir): Use SOLARIS2 instead of sun && USG5_4.
9858
9859 * process.c (HAVE_SERIAL): Consolidate ifdefs.
9860 (wait_reading_process_output): Remove code for SunOS, platform not
9861 supported anymore. Use SOLARIS2 instead of sun.
9862
9863 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9864
9865 * font.c (font_open_by_name): Under NS, default lface height to zero.
9866 (font_open_for_lface): Under NS, set size based on frame fontsize.
9867 * nsterm.m (EmacsView-changeFont:): Remove some commented code.
9868 * frame.c (x_set_frame_parameters): Remove HAVE_NS ifdef.
9869
9870 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9871
9872 * nsterm.m (ns_antialias_text, ns_use_qd_smoothing)
9873 (ns_use_system_highlight_color): Switch these from DEFVAR_BOOL to
9874 DEFVAR_LISP and change all code accordingly to use Qt/Qnil instead of
9875 YES/NO.
9876 * nsterm.h (prevUseHighlightColor): Make a Lisp_Object.
9877 * nsfont.m (nsfont_draw): Treat ns_use_qd_smoothing as Lisp_Object.
9878 * Makefile.in (clean): Clear out build destination dir.
9879
9880 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9881
9882 * Makefile.in (nsgui.h-related dependencies): Remove abbrev, xfns,
9883 xterm, xselect.
9884 * lisp.h: Remove declaration of hash_remove.
9885 * nsgui.h: Remove redefinitions of hash_remove.
9886 * fns.c (hash_remove): Rename to hash_remove_from_table.
9887
9888 2008-07-19 Seiji Zenitani <zenitani@mac.com>
9889
9890 * nsfont.m (nsfont_fmember_to_entity, nsfont_make_fontset_for_font):
9891 strdup() the family UTF8String before modifying it.
9892
9893 2008-07-19 Adrian Robert <Adrian.B.Robert@gmail.com>
9894
9895 * nsterm.m (ns_maybe_dumpglyphs_background): Compare result from
9896 NS_FACE_BACKGROUND with 0 instead of nil.
9897 * nsfont.m (nsfont_draw): Same.
9898
9899 2008-07-19 Chong Yidong <cyd@stupidchicken.com>
9900
9901 * nsfns.m (ns_set_background_color): Fix crash.
9902
9903 2008-07-18 Chong Yidong <cyd@stupidchicken.com>
9904
9905 * Makefile.in (SOME_MACHINE_LISP): Remove ns-carbon-compat.elc.
9906
9907 2008-07-18 Dan Nicolaescu <dann@ics.uci.edu>
9908
9909 * puresize.h (BASE_PURESIZE): Increase to 1240000.
9910
9911 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9912
9913 * gtkutil.c: Include <config.h> instead of "config.h".
9914
9915 * lisp.h (Foverlay_buffer): Add EXFUN.
9916
9917 * process.c (create_process) [!WINDOWSNT && FD_CLOEXEC]: Wait for
9918 child process to complete child_setup. Undo 2005-09-21 change.
9919
9920 * s/darwin.h: Mention setsid after vfork.
9921
9922 2008-07-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9923
9924 * Makefile.in (frame.o, keyboard.o, xdisp.o, xfaces.o):
9925 Depend on macgui.h.
9926
9927 * macfns.c (Fx_server_version): Don't use gestaltSystemVersionMajor,
9928 gestaltSystemVersionMinor, or gestaltSystemVersionBugFix.
9929
9930 * macterm.c (keycode_to_xkeysym_table): Add entries for f17, f18,
9931 and f19.
9932 [MAC_OSX] (fn_keycode_to_keycode_table): Likewise.
9933
9934 * macterm.h (gestaltSystemVersionMajor, gestaltSystemVersionMinor)
9935 (gestaltSystemVersionBugFix) [MAC_OS_X_VERSION_MAX_ALLOWED < 1040]:
9936 Remove enumerators.
9937
9938 * mactoolbox.c [USE_MAC_TSM] (mac_handle_text_input_event):
9939 Check if FACE_FROM_ID returns NULL.
9940
9941 2008-07-17 David Robinow <drobinow@gmail.com> (tiny change)
9942
9943 * w32inevt.c (change_frame_size): Remove extern declaration.
9944 (resize_event, maybe_generate_resize_event): Pass SAFE arg to
9945 change_frame_size.
9946
9947 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9948
9949 * getloadavg.c: Revert last change (2008-07-15).
9950
9951 2008-07-17 Adrian Robert <Adrian.B.Robert@gmail.com>
9952
9953 * Makefile.in: Replace emacsapp, emacsbindir, emacsappsrc variables
9954 set here with ns_appdir, ns_appresdir, ns_appbindir, ns_appsrc set
9955 from configure.
9956
9957 2008-07-17 Dan Nicolaescu <dann@ics.uci.edu>
9958
9959 * s/sol2.h:
9960 * s/sol2-4.h: Reorganize conditionals.
9961
9962 * ecrt0.c: Remove code depending on m68000, not used anymore.
9963
9964 * fns.c (hash_remove): Make static.
9965 * lisp.h (hash_remove): Don't prototype.
9966
9967 * m/ibmrs6000.h:
9968 * m/ibms390x.h:
9969 * m/macppc.h: Remove boilerplate comments.
9970
9971 * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
9972 Solaris, which does not need them.
9973
9974 * m/vax.h: Remove comments about unsupported systems.
9975
9976 * s/darwin.h: Reorganize ifdefs.
9977
9978 2008-07-17 Andreas Schwab <schwab@suse.de>
9979
9980 * s/cygwin.h (LIB_STANDARD_LIBSRC): Don't define.
9981
9982 2008-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
9983
9984 Use SDATA. Follow coding convention of placing operators at
9985 beginning of next line rather than end of previous line, and placing
9986 spaces around infix operators.
9987
9988 * Makefile.in: Undef LIB_STANDARD before defining it to silence warning
9989 in case it was defined already.
9990 USE @GNUSTEP_MAKEFILES@ rather than envvars.
9991 * nsterm.m (ns_term_init): Pass Qt and Qnil rather than YES/NO to
9992 ns_default.
9993 (applicationShouldTerminate, setValuesFromPanel): Use EQ to compare
9994 Lisp_Objects.
9995 * nsterm.h (Fx_display_grayscale_p, Fx_display_planes)
9996 (ns_defined_color, ns_color_to_lisp): Declare.
9997 * nsselect.m (ns_handle_selection_request, ns_handle_selection_clear)
9998 (Fns_own_selection_internal): Make the big ugly hack more explicit, so
9999 it's accepted even with USE_LISP_UNION_TYPE.
10000 * nsmenu.m (ns_update_menubar): Use EQ to compare Lisp_Objects.
10001 (update_frame_tool_bar): Remove apparently obsolete tests for
10002 non-integerness of f->tool_bar_lines.
10003 (windowShouldClose, addButton, clicked, runDialogAt): Make the big ugly
10004 hack more explicit, so it's accepted even with USE_LISP_UNION_TYPE.
10005 * nsfont.m (nsfont_driver): Use just 0 rather than an invalid cast.
10006 (nsfont_open): Don't confuse NULL for Qnil.
10007 * nsfns.m (ns_implicitly_set_icon_type): Use EQ to compare Lisp_Objects.
10008 * menu.h (find_and_call_menu_selection):
10009 * menu.c (find_and_call_menu_selection): Use just int for vector size.
10010 (find_and_return_menu_selection): Always return something.
10011 * frame.h: Include dispextern.h for Display_Info.
10012 (display_x_get_resource): Declare.
10013
10014 2008-07-16 Adrian Robert <Adrian.B.Robert@gmail.com>
10015
10016 * syntax.c: Remove stdio.h include accidentally introduced in
10017 Emacs.app commit.
10018 * Makefile.in: Change GNUSTEP to NS_IMPL_GNUSTEP, COCOA to
10019 NS_IMPL_COCOA.
10020 * keyboard.c (handle_async_input, input_available_signal): Remove
10021 BSD4_1 conditional code, introduced accidentally in Emacs.app commit.
10022
10023 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10024
10025 * nsterm.m (lisp_to_mod): Use parse_solitary_modifier instead.
10026 (ns_lisp_to_color): Don't mess with internal Lisp data fields.
10027 (ns_term_init, ns_term_shutdown, initFrameFromEmacs, ns_list_fonts):
10028 Use SDATA.
10029
10030 * keymap.c: Remove all NS-specific code.
10031 (where_is_preferred_modifier, Vwhere_is_preferred_modifier): New vars.
10032 (preferred_sequence_p): Rename from ascii_sequence_p; pay attention to
10033 where_is_preferred_modifier, return a different value depending on how
10034 preferred is the binding.
10035 (where_is_internal): Adjust accordingly.
10036 (Fwhere_is_internal): Refresh where_is_preferred_modifier.
10037 Adjust to new preferred_sequence_p.
10038 (syms_of_keymap): Declare `where-is-preferred-modifier'.
10039 * keyboard.c (parse_solitary_modifier): Not static any more.
10040 * keyboard.h (parse_solitary_modifier): Declare.
10041
10042 2008-07-16 Andreas Schwab <schwab@suse.de>
10043
10044 * Makefile.in (SOME_MACHINE_LISP): Remove easy-mmode, fix spelling
10045 of easymenu.
10046
10047 2008-07-16 Chong Yidong <cyd@stupidchicken.com>
10048
10049 * xdisp.c (move_it_in_display_line): Account for word wrap, so
10050 that we don't move off the line.
10051
10052 2008-07-16 Stefan Monnier <monnier@iro.umontreal.ca>
10053
10054 * keyboard.c (Qsuper): Remove.
10055 (parse_menu_item): Don't call where_is_internal specially for NS.
10056
10057 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10058
10059 * s/gnu-linux.h: Remove boilerplate comments.
10060
10061 * m/alpha.h (__ELF__): Consolidate conditions.
10062
10063 * m/m68k.h (linux): Use GNU_LINUX instead.
10064 Remove boilerplate comments.
10065
10066 * m/intel386.h: Undo refactoring from previous change.
10067 (LIB_STANDARD): All systems that define USG define LIB_STANDARD
10068 too, remove dead code.
10069 (linux): Use GNU_LINUX instead.
10070
10071 2008-07-16 Jason Rumney <jasonr@gnu.org>
10072
10073 * w32gui.h: Repeat 26 June changes lost by last change.
10074
10075 2008-07-16 Dan Nicolaescu <dann@ics.uci.edu>
10076
10077 * systty.h: Remove code for Aix on 386, unsupported platform.
10078
10079 * s/ms-w32.h: Remove boilerplate comments.
10080 (fcloseall, fgetchar, flushall, fputchar, getw, putw): Remove, unused.
10081
10082 * s/gnu-linux.h (TERM): Remove support.
10083 (HAVE_SYSVIPC): Remove, unused.
10084 (A_TEXT_OFFSET, A_TEXT_SEEK, ADJUST_EXEC_HEADER): Remove, not used
10085 for this system.
10086
10087 * process.c: Remove support for IRIS, unused.
10088 Remove support for TERM, not relevant anymore.
10089
10090 * unexalpha.c (DEFAULT_ENTRY_ADDRESS): Remove, replace the only
10091 used with the definition.
10092
10093 * s/aix4-2.h (static): Do not undef.
10094
10095 * m/ibmrs6000.h: Remove code depending on USG5_4, this file is
10096 only used on Aix.
10097 (HAVE_SYSVIPC): Remove, unused.
10098
10099 * m/hp800.h (CANNOT_DUMP): Do not undef.
10100
10101 * m/alpha.h: Fix comment.
10102
10103 * s/usg5-4.h (HAVE_SYSVIPC): Remove, unused.
10104 (USG_SHARED_LIBRARIES): Remove, only used in unexec.c which is not
10105 used by this configuration.
10106 * emacs.c: Remove code depending on USG_SHARED_LIBRARIES.
10107 * unexec.c: Remove code depending on HPUX and
10108 USG_SHARED_LIBRARIES, not used with this file. Remove code
10109 depending on IRIS, unused. Remove if 0-ed code.
10110
10111 * s/template.h: Remove comments about static.
10112
10113 * sysdep.c: Remove code depending on NEED_PTEM_H, unused.
10114 Remove if 0-ed code.
10115 (baud_convert): Don't depend on BAUD_CONVERT, all definitions the
10116 were the same as the default.
10117 * s/vms.h (BAUD_CONVERT): Remove, same as the default.
10118 Remove boilerplate comments.
10119 * s/hpux10-20.h (BAUD_CONVERT): Remove, same as the default.
10120 (HAVE_SYSVIPC): Remove, unused.
10121 (LD_SWITCH_SYSTEM_TEMACS): Simplify, hp9000s700 not supported anymore.
10122
10123 * m/ia64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10124 Remove boilerplate comments.
10125 * m/amdx86-64.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10126 Remove boilerplate comments.
10127 * m/ibms390x.h (PNTR_COMPARISON_TYPE): Remove, same as the default.
10128 Remove boilerplate comments.
10129 * lisp.h (PNTR_COMPARISON_TYPE): Define it unconditionally.
10130
10131 * m/intel386.h (DATA_SEG_BITS): Remove definitions, only used on
10132 USG systems which do not use DATA_SEG_BITS.
10133 Refactor code. Remove boilerplate comments.
10134
10135 * m/ibms390.h:
10136 * m/m68k.h:
10137 * s/bsd-common.h:
10138 * s/cygwin.h:
10139 * s/darwin.h:
10140 * s/freebsd.h:
10141 * s/gnu.h:
10142 * s/msdos.h: Remove boilerplate comments.
10143
10144 * m/iris4d.h: Remove boilerplate comments and code for systems that
10145 do not use this file.
10146 (IRIS_4D): Remove, unused.
10147
10148 * m/mips.h: Remove boilerplate comments and code for systems that
10149 do not use this file.
10150 (SIGN_EXTEND_CHAR):
10151 * m/arm.h (SIGN_EXTEND_CHAR): Remove, unused.
10152 * unexmips.c: Remove file, unused.
10153
10154 * editfns.c (Fuser_full_name): Replace the only use of
10155 USER_FULL_NAME with its value.
10156 * config.in: Regenerate.
10157
10158 2008-07-16 David Reitter <david.reitter@gmail.com>
10159
10160 * Makefile.in: Add ns-win, ns-carbon-compat, easy-mmode and
10161 easy-menu to SOME_MACHINE_LISP for the new NeXTstep port.
10162
10163 2008-07-16 Glenn Morris <rgm@gnu.org>
10164
10165 * emacs.c (system-type): Doc fix.
10166
10167 2008-07-15 Stefan Monnier <monnier@iro.umontreal.ca>
10168
10169 * keyboard.c (parse_menu_item): Don't use cachelist, even under NS.
10170 If the cache doesn't work, let's fix it, rather than work around it.
10171
10172 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10173
10174 * Makefile.in: Correct additions for nsfont.o in last commit.
10175 * nsfont.m: New file (forgot last commit).
10176
10177 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10178
10179 * callproc.c (set_initial_environment): Initialize
10180 Vprocess_environment under CANNOT_DUMP (fixes crash when
10181 batch-compiling for bootstrap).
10182
10183 2008-07-15 Chris Hall <chris@web.workinglinux.com> (tiny change)
10184 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10185
10186 (make_initial_frame): Call init_frame_faces(f) in CANNOT_DUMP case --
10187 fix crash due to different init order.
10188
10189 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10190
10191 Changes and additions for NeXTstep windowing system (Cocoa and
10192 GNUstep) support.
10193
10194 * Makefile.in:
10195 * config.in: Support defines and build commands for NS port.
10196 * blockinput.h (BLOCK_INPUT, UNBLOCK_INPUT, TOTALLY_UNBLOCK_INPUT)
10197 (UNBLOCK_INPUT_TO): Don't use under NS unless EXPERIMENTAL_CONTROL_G.
10198 * dispextern.h: Include nsgui.h and add needed typedefs under NS
10199 windowing.
10200 (struct face): Add synth_ital field.
10201 * dispnew.c: Include nsterm.h when compiling under NS windowing.
10202 (init_display): Initialize Vinitial_window_system to "ns" when so
10203 compiled.
10204 * emacs.c: Include GSConfig.h when compiling under GNUstep.
10205 (display_arg): Use under NS.
10206 (main): Under NS, allocate autorelease pool and handle command line
10207 args. Move syms_of_xmenu() call under #ifdef HAVE_X_WINDOWS.
10208 (standard_args): Add NS-specific args.
10209 (shut_down_emacs): Shut down NS terminal if compiled under NS.
10210 * font.c (DEFAULT_ENCODING): New variable.
10211 (font_find_for_lface): Use it.
10212 (syms_of_font): Load syms_of_nsfont under NS.
10213 * font.h: Declare nsfont_driver when compiled under NS.
10214 * fontset.c: When compiling under NS, include nsterm.h.
10215 (fontset_from_font): Autoconstruct fontset under NS.
10216 * frame.c (various): Under NS, include nsterm.h, add Qns window system
10217 symbol, document and use it.
10218 (do_switch_frame): When for_deletion under Cocoa, add
10219 Fraise_frame(Qnil).
10220 (x_set_frame_parameters): Ensure font attribute changes are picked up.
10221 (x_get_arg): Allow "yes" and "no" as boolean values.
10222 (syms_of_frame): Declare Qns. Init Vdefault_frame_scroll_bars to
10223 Qright under Cocoa.
10224 (focus-follows-mouse): Default to 0 under NS.
10225 * frame.h (enum output_method): Add output_ns.
10226 (external_tool_bar, external_menu_bar, FRAME_EXTERNAL_TOOLBAR)
10227 (FRAME_EXTERNAL_MENU_BAR): Use under NS.
10228 (FRAME_WINDOW_P): NS-specific definition.
10229 * fringe.c (max_used_fringe_bitmap): Make public.
10230 * getloadavg.c (mach/mach.h): Include it under NeXT descendant OS's.
10231 (getloadavg): Use NeXT code under descendant OS's.
10232 * image.c (includes and header section, x_create_bitmap_from_data)
10233 (x_create_bitmap_from_file, free_bitmap_record, image_background)
10234 (image_background_transparent, x_clear_image_1)
10235 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
10236 (Create_Pixmap_From_Bitmap_Data, xpm_load_image, lookup_rgb_color)
10237 (x_to_xcolors, x_from_xcolors, x_disable_image)
10238 (x_build_heuristic_mask, syms_of_image): Add NS support parallel to
10239 other GUIs, including XPM support using code originally written for
10240 Carbon GUI.
10241 (png_load, jpeg_load, tiff_load, gif_load): Add implementations
10242 using NS API.
10243 (image_ascent): Use font metrics macros instead of direct struct field
10244 access.
10245 * keyboard.c (includes): Add nsterm.h when compiling under NS.
10246 (kbd_buffer_get_event): Handle NS as other GUI windowing systems.
10247 Also, handle NS as GTK for menu bar purposes.
10248 (make_lispy_event): Handle NS as other GUI windowing systems, and as X
10249 toolkit where they differ.
10250 (parse_menu_item): Prefer keybindings using 'super' modifier. Also,
10251 use cachelist, still needed under NS.
10252 * keyboard.h (ENCODE_MENU_STRING, XtPointer, Boolean): Handle as NTGUI.
10253 (struct widget_value): Define it here for menu.c.
10254 * keymap.c (includes): Include modifier internals.
10255 (lisp_to_mod, modifier_sequence_p): New functions, compiled only under
10256 NS.
10257 (where_is_internal, Fwhere_is_internal): When compiled under NS, add
10258 support for preferring sequences using certain modifiers, specified by
10259 the FIRSTONLY argument.
10260 * lisp.h (hash_remove): Rename to avoid name clash when compiling
10261 under NS GNUstep implementation.
10262 (USE_LSB_TAG): Use it under Cocoa when compiling under NS.
10263 * lread.c (init_lread): Treat NS as HAVE_CARBON for turn_off_warning.
10264 * menu.c: Include nsterm.h under NS.
10265 (single_menu_item, parse_single_submenu, xmalloc_widget_value)
10266 (free_menubar_widget_tree_value, update_submenu_strings)
10267 (find_and_call_menu_selection): Treat NS as X and NT.
10268 (find_and_return_menu_selection): New function, used for popup menus.
10269 * nsgui.h:
10270 * nsterm.h:
10271 * nsfns.m:
10272 * nsimage.m:
10273 * nsmenu.m:
10274 * nsselect.m:
10275 * nsterm.m: New files.
10276 * process.c (wait_reading_process_output): Under NS, call ns_select()
10277 instead of plain select().
10278 * syntax.c (char_quoted): Under NS, avoid a crash when called near
10279 beginning of buffer.
10280 * sysselect.h (init_process): Rename when compiling under Cocoa to
10281 avoid name conflict.
10282 * termhooks.h (display_info): Add ns_display_info to union.
10283 * terminal.c (Fterminal_live_p): Add ns to terminal types.
10284 * terminfo.c (UP, BC, PC): Don't declare when compiling under NS in
10285 COCOA environment.
10286 * unexnext.c: Update to work with mach API on Mac OS X, and to use new
10287 unexec() signature. (Note, this will dump, but the resulting file
10288 crashes; unexosx is used instead; keeping around for reference and
10289 possible aid in getting dump working under GNUstep.)
10290 * w32gui.h (button_type, widget_value): Remove definitions (now in
10291 keyboard.h).
10292 * window.c: Include nsterm.h when compiling under NS.
10293 * xdisp.c (includes): Include nsterm.h when compiling under NS.
10294 (set_frame_menubar, update_menu_bar, display_menu_bar): Handle NS as
10295 other GUI windowing systems.
10296 (update_tool_bar, redisplay_tool_bar, redisplay_window): Handle NS as
10297 GTK.
10298 (x_consider_frame_title): Under NS, set icon type and frame
10299 modified-state indicator; use ns_set_name_as_filename() when using
10300 formatted title.
10301 (update_window_cursor): Make public when compiling under NS.
10302 (display_hourglass_p, syms_of_xdisp, hourglass_shown_p)
10303 (hourglass_atimer, Vhourglass_delay
10304 * xfaces.c (header section, init_frame_faces, clear_font_table)
10305 (defined_color, unload_color, x_face_list_fonts)
10306 (prepare_face_for_display): Add NS support parallel to other GUIs.
10307 Emulate GCs like other non-X GUIs.
10308 (split_font_name): Don't lowercase font name under NS.
10309 (merge_face_ref, Finternal_set_lisp_face_attribute): Support stippling
10310 under NS.
10311 * s/darwin.h: Add support for compilation under NS.
10312
10313 2008-07-15 Jason Rumney <jasonr@gnu.org>
10314
10315 * w32fns.c (Fx_create_frame): Remove duplicate unwind_protect.
10316 (w32_show_hourglass): Rename from show_hourglass.
10317 (w32_hide_hourglass): Rename from hide_hourglass.
10318 (DEFAULT_HOURGLASS_DELAY): Revert from last change.
10319 (Vhourglass_delay): Declare extern.
10320 (hourglass_started): Remove.
10321
10322 * xdisp.c (Vhourglass_delay): Remove static.
10323 (hourglass_started, start_hourglass, cancel_hourglass):
10324 Don't include these versions on WINDOWSNT.
10325
10326 2008-07-15 Adrian Robert <Adrian.B.Robert@gmail.com>
10327
10328 * dispextern.h (hourglass_shown_p, hourglass_atimer): New extern
10329 variables (formerly in xfns.c).
10330 (show_hourglass, hide_hourglass): New prototypes (same).
10331 * xdisp.c (display_hourglass_p, hourglass_shown_p, hourglass_atimer)
10332 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY): New variables (formerly
10333 in xfns.c).
10334 (syms_of_xdisp): Declare/initialize display-hourglass,
10335 hourglass-delay. Initialize hourglass_atimer, hourglass_shown_p.
10336 (hourglass_started, start_hourglass, cancel_hourglass): New functions,
10337 formerly in xfns.c.
10338 * xfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10339 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10340 (start_hourglass, cancel_hourglass): Remove.
10341 (show_hourglass, hide_hourglass): Remove prototypes and static
10342 modifiers.
10343 (syms_of_xfns): Remove display-hourglass, hourglass-delay,
10344 hourglass_atimer, hourglass_shown_p declaration/initialization.
10345 * macfns.c (display_hourglass_p, hourglass_atimer, hourglass_shown_p)
10346 (Vhourglass_delay, DEFAULT_HOURGLASS_DELAY, hourglass_started)
10347 (start_hourglass, cancel_hourglass): Remove.
10348 (show_hourglass, hide_hourglass): Remove prototypes and static
10349 modifiers.
10350 (syms_of_macfns): Remove display-hourglass, hourglass-delay,
10351 hourglass_atimer, hourglass_shown_p declaration/initialization.
10352 * w32fns.c (display_hourglass_p, Vhourglass_delay)
10353 (DEFAULT_HOURGLASS_DELAY): Remove.
10354 (syms_of_w32fns): Remove display-hourglass, hourglass-delay,
10355 hourglass_shown_p declaration/initialization.
10356
10357 2008-07-14 Jason Rumney <jasonr@gnu.org>
10358
10359 * w32fns.c (w32_get_arg): Remove wrapper function.
10360 (w32_createwindow, x_icon, x_create_tip_frame): Use x_get_arg
10361 directly.
10362 (Fx_create_frame): Sync with xfns.c. Use x_get_arg directly.
10363
10364 2008-07-14 Kenichi Handa <handa@m17n.org>
10365
10366 * xfont.c (xfont_open): Add workaround for X's bug.
10367
10368 2008-07-14 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
10369
10370 * fontset.c: Include <stdio.h> unconditionally.
10371
10372 2008-07-13 Michael Albinus <michael.albinus@gmx.de>
10373
10374 * dbusbind.c (Fdbus_register_signal): Allow also signal arguments
10375 for filtering.
10376
10377 2008-07-13 Dan Nicolaescu <dann@ics.uci.edu>
10378
10379 * s/vms.h: Use __GNUC__ instead of _GNUC_.
10380
10381 * m/macppc.h:
10382 * m/alpha.h: Use GNU_LINUX instead of LINUX. Reorganize conditionals.
10383
10384 * m/ibms390x.h (XINT, XUINT): Don't define, same as the default
10385 (SPECIAL_EMACS_INT):
10386 * m/ia64.h (SPECIAL_EMACS_INT):
10387 * m/amdx86-64.h (SPECIAL_EMACS_INT):
10388 * s/gnu.h (NLIST_STRUCT):
10389 * s/aix4-2.h (X11R5_INHIBIT_I18N):
10390 * s/gnu-linux.h (LINUX):
10391 * s/msdos.h (HAVE_FACES):
10392 * s/ms-w32.h (HAVE_FACES): Don't define, unused.
10393
10394 * systty.h:
10395 * sysdep.c (setup_pty): Don't depend on SYSV_PTYS, it is not used
10396 anymore.
10397
10398 2008-07-12 Dan Nicolaescu <dann@ics.uci.edu>
10399
10400 * syswait.h: Remove old if 0 code. Do not define WAITTYPE, it was
10401 always defined as int.
10402
10403 * s/netbsd.h (HAVE_UNION_WAIT, HAVE_WAIT_HEADER, WAIT_USE_INT):
10404 * s/gnu.h (HAVE_WAIT_HEADER, WAIT_USE_INT, HAVE_UNION_WAIT):
10405 * s/gnu-linux.h (HAVE_WAIT_HEADER):
10406 * s/freebsd.h (HAVE_WAIT_HEADER):
10407 * s/bsd-common.h (HAVE_UNION_WAIT):
10408 * s/aix4-2.h (HAVE_WAIT_HEADER):
10409 * m/mips.h (HAVE_UNION_WAIT):
10410 * s/usg5-4.h (HAVE_WAIT_HEADER, WAITTYPE): Do not define, not used.
10411 (COFF, static): Do not define, they are undefined later in the file.
10412
10413 * process.c (update_status): Don't use a union.
10414 (status_convert):
10415 (sigchld_handler): Use int instead of WAITTYPE.
10416
10417 2008-07-12 Chong Yidong <cyd@stupidchicken.com>
10418
10419 * indent.c (Fvertical_motion): Restore hscroll before moving to
10420 goal column.
10421
10422 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10423
10424 * lisp.h: Remove left over code.
10425
10426 2008-07-11 Andreas Schwab <schwab@suse.de>
10427
10428 * lisp.h: Fix logic in last change.
10429
10430 * menu.h: New file.
10431 * menu.c: Include it.
10432 * xmenu.c: Likewise.
10433 * Makefile.in: Update dependencies.
10434
10435 2008-07-11 Kenichi Handa <handa@m17n.org>
10436
10437 * fontset.c (fontset_from_font): Cancel the previous change.
10438
10439 2008-07-11 Dan Nicolaescu <dann@ics.uci.edu>
10440
10441 * lisp.h:
10442 * w32heap.c:
10443 * emacs.c:
10444 * alloc.c: Replace all references of NO_UNION_TYPE with
10445 USE_LISP_UNION_TYPE.
10446
10447 * m/xtensa.h (NO_UNION_TYPE):
10448 * m/vax.h (NO_UNION_TYPE):
10449 * m/template.h (NO_UNION_TYPE):
10450 * m/sparc.h (NO_UNION_TYPE):
10451 * m/mips.h (NO_UNION_TYPE):
10452 * m/macppc.h (NO_UNION_TYPE):
10453 * m/m68k.h (NO_UNION_TYPE):
10454 * m/iris4d.h (NO_UNION_TYPE):
10455 * m/intel386.h (NO_UNION_TYPE):
10456 * m/ibms390x.h (NO_UNION_TYPE):
10457 * m/ibms390.h (NO_UNION_TYPE):
10458 * m/ibmrs6000.h (NO_UNION_TYPE):
10459 * m/ia64.h (NO_UNION_TYPE):
10460 * m/hp800.h (NO_UNION_TYPE):
10461 * m/arm.h (NO_UNION_TYPE):
10462 * m/amdx86-64.h (NO_UNION_TYPE):
10463 * m/alpha.h (NO_UNION_TYPE): Remove definition, all platform were
10464 defining it the same.
10465
10466 2008-07-10 Chong Yidong <cyd@stupidchicken.com>
10467
10468 * xdisp.c (move_it_to): Backtrack if past the edge of a wrapped line.
10469
10470 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10471
10472 * fileio.c:
10473 * sysdep.c:
10474 * systty.h:
10475 * m/ibmrs6000.h:
10476 * m/iris4d.h:
10477 * s/aix4-2.h:
10478 * s/freebsd.h:
10479 * s/gnu-linux.h:
10480 * s/hpux10-20.h:
10481 * s/hpux11.h:
10482 * s/netbsd.h:
10483 * s/sol2-3.h:
10484 * s/sol2-4.h:
10485 * s/sol2.h:
10486 * s/usg5-4.h:
10487 * s/vms.h: Remove references to unused variables.
10488
10489 2008-07-10 Andreas Schwab <schwab@suse.de>
10490
10491 * ftfont.c (ftfont_resolve_generic_family): Remove foundry from
10492 pattern before matching the generic family.
10493
10494 2008-07-10 Dan Nicolaescu <dann@ics.uci.edu>
10495
10496 * unexec.c:
10497 * s/vms.h:
10498 * s/usg5-4-2.h:
10499 * s/sol2-5.h:
10500 * s/freebsd.h:
10501 * s/darwin.h: Remove dead code.
10502
10503 * m/template.h:
10504 * m/sparc.h:
10505 * m/mips.h:
10506 * m/m68k.h:
10507 * m/iris4d.h:
10508 * m/intel386.h:
10509 * m/ibms390x.h:
10510 * m/ibms390.h:
10511 * m/ia64.h:
10512 * m/hp800.h:
10513 * m/arm.h:
10514 * m/amdx86-64.h: Remove dead code and references to unused
10515 and compiler defined symbols.
10516
10517 * unexmips.c:
10518 * unexelf.c: Remove references to desupported systems.
10519
10520 * m/powermac.h: Remove file, it is now identical to m/macppc.h.
10521
10522 * m/powermac.h: Remove boilerplate comments.
10523 (NO_REMAP): Remove unused definition.
10524
10525 * m/macppc.h (UNEXEC, NO_TERMIO): Don't define, the s/ files
10526 define them.
10527
10528 2008-07-10 Kenichi Handa <handa@m17n.org>
10529
10530 * xfont.c (xfont_open): Log the reason of failure.
10531
10532 2008-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
10533
10534 * fontset.c (fontset_get_font_group):
10535 * font.c (font_check_otf): Specify argument types.
10536
10537 2008-07-09 Kenichi Handa <handa@m17n.org>
10538
10539 * coding.c (detect_coding_utf_8): Set detect_info->found only when
10540 non-ASCII char is found.
10541
10542 * fontset.c (fontset_compare_rfontdef): Fix plus/minus.
10543 (reorder_font_vector): Change the arg preferred_family to font.
10544 Prefer the spec matching with font.
10545 (fontset_get_font_group): New function.
10546 (fontset_find_font): Change the format of an element of a realized
10547 fontset. Use fontset_get_font_group.
10548 (fontset_font): Try the current fontset, the default fontset, the
10549 fallbacks of the current fontset, and the fallbacks of the default
10550 fontset in this order.
10551 (face_for_char): Delete the shortcut to use the current font.
10552 (fontset_from_font): Don't set fonts for Latin in the fontset.
10553
10554 * font.h (font_make_object, font_match_p): Adjust prototypes.
10555
10556 * ftfont.h [FT_BDF_H]: Include FT_BDF_H.
10557
10558 * font.c (font_make_object): New arg entity and pixelsize.
10559 (font_check_otf_features, font_check_otf): New functions.
10560 (font_match_p): Check :lang, :script, and :otf properties.
10561
10562 * xfont.c (xfont_open): Adjust it for the change of
10563 font_make_object.
10564 (xfont_text_extents): Fix initial setting of metrics.
10565
10566 * ftfont.c (struct ftfont_info): New member index, delete member
10567 fc_charset_idx. Make the member order compatible with struct
10568 xftfont_info.
10569 (fc_charset_table): Change charset names to registry names.
10570 (ftfont_pattern_entity): Delete the args registry and
10571 fc_charset_idx. Change the value of :font-entity property
10572 to (FONTNAME . INDEX). Always set :registry property to
10573 `iso10646-1'.
10574 (struct ftfont_cache_data): New struct.
10575 (ftfont_lookup_cache): New arg for_face.
10576 (ftfont_get_fc_charset, ftfont_get_otf): New functions.
10577 (ftfont_driver): Set the member otf_capability.
10578 (ftfont_get_charset): Adjust it for the change of
10579 fc_charset_table.
10580 (OTF_TAG_SYM): New macro.
10581 (ftfont_spec_pattern): Delete the arg fc_charset_idx. Adjust it
10582 for the change of fc_charset_table.
10583 (ftfont_list): Adjust it for the change of ftfont_spec_pattern and
10584 ftfont_pattern_entity. Add FC_INDEX to objset.
10585 (ftfont_match): Adjust it for the change of ftfont_spec_pattern
10586 and ftfont_pattern_entity.
10587 (ftfont_open): Adjust it for the change of ftfont_lookup_cache,
10588 font_make_object, struct ftfont_info.
10589 (ftfont_has_char): Use ftfont_get_fc_charset.
10590 (ftfont_otf_features, ftfont_otf_capability): New functions.
10591 (ftfont_shape): Use ftfont_get_otf.
10592 (ftfont_text_extents): Fix initial setting of metrics.
10593
10594 * xftfont.c (struct xftfont_info): New member ft_size. Make the
10595 member order compatible with struct ftfont_info.
10596 (xftfont_open): Add FC_CHARSET to the pattern. Set
10597 xftfont_info->ft_size. Don't unlock the face. Check BDF
10598 properties if appropriate.
10599 (xftfont_close): Unlock the face.
10600 (xftfont_anchor_point, xftfont_shape): Deleted.
10601 (syms_of_xftfont): Don't set members anchor_point and shape of
10602 xftfont_driver.
10603
10604 * w32uniscribe.c (uniscribe_open): Adjust it for the change of
10605 font_make_object.
10606
10607 * w32font.c (w32font_open): Adjust it for the change of
10608 font_make_object.
10609 (w32font_open_internal): Don't set properties of font_object here.
10610
10611 2008-07-08 Chong Yidong <cyd@stupidchicken.com>
10612
10613 * macfns.c (x_create_tip_frame):
10614 * w32fns.c (x_create_tip_frame):
10615 * xfns.c (x_create_tip_frame): Pass parameter argument to
10616 face-set-after-frame-default.
10617
10618 * xfaces.c (Finternal_merge_in_global_face): Save merged
10619 attributes for the default face back into the face vector.
10620
10621 2008-07-08 Andreas Schwab <schwab@suse.de>
10622
10623 * fontset.h: Declare fontset_from_font. Don't declare
10624 new_fontset_from_font and fontset_from_font_name.
10625 * xterm.c: Include "fontset.h".
10626 * Makefile.in (xterm.o): Update dependencies.
10627
10628 2008-07-08 Glenn Morris <rgm@gnu.org>
10629
10630 * m/sparc.h: Define __sparc__ rather than sparc. (Bug#507.)
10631 * alloc.c, ecrt0.c: Use __sparc__ rather than sparc.
10632
10633 2008-07-07 Chong Yidong <cyd@stupidchicken.com>
10634
10635 * frame.c (Qinhibit_face_set_after_frame_default): Var deleted.
10636 (x_set_frame_parameters): Don't bind it.
10637
10638 2008-07-07 Juanma Barranquero <lekktu@gmail.com>
10639
10640 * w32fns.c (map_w32_filename): Declare extern.
10641
10642 2008-07-07 Jason Rumney <jasonr@gnu.org>
10643
10644 * w32term.c (WS_EX_LAYERED): Define if not already.
10645
10646 2008-07-06 Chong Yidong <cyd@stupidchicken.com>
10647
10648 * xfaces.c (set_font_frame_param): Don't try to set the font
10649 parameter if it is still unspecified in the lface.
10650
10651 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10652
10653 * xfaces.c (Finternal_merge_in_global_face): Don't realize default
10654 face if it didn't already exist.
10655
10656 * xdisp.c (try_window_id): Give up if word-wrapping is on.
10657
10658 2008-07-05 Andreas Schwab <schwab@suse.de>
10659
10660 * xdisp.c (get_it_property): Move out of HAVE_WINDOW_SYSTEM section.
10661
10662 2008-07-05 Chong Yidong <cyd@stupidchicken.com>
10663
10664 * xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): Turn it off if
10665 word-wrapping.
10666 (IT_DISPLAYING_WHITESPACE): New macro.
10667 (move_it_in_display_line_to): Handle MOVE_TO_X requests properly
10668 when word-wrapping. Simplify word-wrapping logic. Use correct
10669 pixel positions when saving copies of the iterator.
10670 (display_line): Use proper wrap point if the last character on a
10671 line was preceded by whitespace.
10672
10673 2008-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
10674
10675 * Makefile.in (${etc}DOC): Depend on ${lisp} rather than ${shortlisp}.
10676
10677 2008-07-04 Kenichi Handa <handa@m17n.org>
10678
10679 * fns.c (Fstring_to_unibyte): Delete the arg ACCEPT-LATIN-1.
10680
10681 * lisp.h: EXFUN adjusted for the change of Fstring_to_unibyte.
10682
10683 2008-07-02 Jason Rumney <jasonr@gnu.org>
10684
10685 * xfns.c (syms_of_xfns): Only define x-select-font when both
10686 HAVE_FREETYPE and USE_GTK.
10687
10688 * xdisp.c (next_element_from_display_vector): Move assignment out
10689 of if statement.
10690
10691 2008-07-02 Toru Tsuneyoshi <t_tuneyosi@hotmail.com>
10692
10693 * lisp.h (Qdelete_file, Qdelete_directory): Declare extern.
10694
10695 * fileio.c (delete_by_moving_to_trash, Qmove_file_to_trash): New vars.
10696 (syms_of_fileio): Initialize and export them.
10697 (Fdelete_directory, Fdelete_file): Optionally delete via trash.
10698
10699 * w32fns.c (FOF_NO_CONNECTED_ELEMENTS): Define if not already.
10700 (Fsystem_move_file_to_trash): New function.
10701 (syms_of_w32fns): Export it to lisp.
10702
10703 2008-07-01 Jason Rumney <jasonr@gnu.org>
10704
10705 * w32font.c (w32font_text_extents): Don't count overhang as part
10706 of width.
10707
10708 2008-06-30 Miles Bader <miles@gnu.org>
10709
10710 * dispextern.h (struct glyph, struct it, struct iterator_stack_entry):
10711 Add `avoid_cursor_p' field.
10712
10713 * xdisp.c (push_it, pop_it): Save/restore avoid_cursor_p field.
10714 (set_cursor_from_row): Skip glyphs with avoid_cursor_p set.
10715 (append_glyph, append_composite_glyph, produce_image_glyph)
10716 (append_stretch_glyph): Initialize avoid_cursor_p.
10717 (get_it_property): Rename from `get_line_height_property'.
10718 (x_produce_glyphs): Use get_it_property.
10719 (handle_line_prefix, push_display_prop): New functions.
10720 (display_line, move_it_in_display_line_to): Handle line/wrap prefixes.
10721 (Vwrap_prefix, Qwrap_prefix, Vline_prefix, Qline_prefix):
10722 New variables.
10723 (syms_of_xdisp): Initialize them.
10724
10725 2008-06-30 Kenichi Handa <handa@m17n.org>
10726
10727 * xftfont.c (xftfont_open): Don't call FcConfigSubstitute and
10728 XftDefaultSubstitute (they are called in XftFontMatch).
10729 (xftfont_open): Fix args to ftfont_font_format.
10730
10731 * ftfont.c (fc_charset_table): New member lang.
10732 (ftfont_resolve_generic_family): New arg pattern.
10733 (ftfont_spec_pattern): Check fc_charset_table[]->lang.
10734 (ftfont_list): Call ftfont_resolve_generic_family with `pattern'.
10735 (ftfont_open): Fix args to ftfont_font_format.
10736 (ftfont_font_format): New arg filename.
10737
10738 2008-06-30 Chong Yidong <cyd@stupidchicken.com>
10739
10740 * xfaces.c (Finternal_merge_in_global_face): If default face was
10741 modified, realize it again. Update the font face attribute.
10742
10743 2008-06-29 Jason Rumney <jasonr@gnu.org>
10744
10745 * w32term.c (x_set_frame_alpha): Fix logic.
10746
10747 2008-06-29 Kenichi Handa <handa@m17n.org>
10748
10749 * fontset.c (Finternal_char_font): Return font-object instead of
10750 font-name.
10751
10752 * composite.c (get_composition_id): Fix the width calculation for TAB.
10753
10754 2008-06-29 Stefan Monnier <monnier@iro.umontreal.ca>
10755
10756 * indent.c (Fvertical_motion): Properly handle float column arg.
10757
10758 2008-06-28 Jason Rumney <jasonr@gnu.org>
10759
10760 * w32term.c (pfnGetFontUnicodeRanges): Remove unused function pointer.
10761 (pfnSetLayeredWindowAttributes): New function pointer.
10762 (w32_initialize): Initialize it when supported.
10763 (x_set_frame_alpha): New function.
10764
10765 * w32fns.c (Fx_create_frame): Initialize frame parameter `alpha'.
10766 (w32_frame_parm_handlers): Set alpha handler.
10767
10768 * frame.c (x_set_alpha) [HAVE_NTGUI]: Call x_set_frame_alpha.
10769
10770 2008-06-27 Jason Rumney <jasonr@gnu.org>
10771
10772 * w32fns.c (x_to_w32_font, w32_to_x_font, x_to_w32_weight)
10773 (w32_to_x_weight, w32_to_all_x_charsets): Remove obsolete functions.
10774 (w32_to_x_charset, x_to_w32_charset)
10775 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10776 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10777 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10778 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10779 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10780 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10781 (Qw32_charset_mac, Vw32_charset_info_alist): Move to w32font.c.
10782 (Qw32_charset_unicode): Remove.
10783 (syms_of_w32fns): Update for above changes.
10784
10785 * w32font.c (w32_to_x_charset, x_to_w32_charset)
10786 (Qw32_charset_ansi, Qw32_charset_symbol, Qw32_charset_default)
10787 (Qw32_charset_shiftjis, Qw32_charset_hangeul, Qw32_charset_johab)
10788 (Qw32_charset_chinesebig5, Qw32_charset_gb2312, Qw32_charset_oem)
10789 (Qw32_charset_easteurope, Qw32_charset_turkish, Qw32_charset_baltic)
10790 (Qw32_charset_russian, Qw32_charset_arabic, Qw32_charset_greek)
10791 (Qw32_charset_hebrew, Qw32_charset_vietnamese, Qw32_charset_thai)
10792 (Qw32_charset_mac, Vw32_charset_info_alist): Move from w32fns.c.
10793 (syms_of_w32font): Update for above changes.
10794
10795 2008-06-27 Dan Nicolaescu <dann@ics.uci.edu>
10796
10797 * s/usg5-4.h: Fix previous change: keep the correct branch of a
10798 removed #if.
10799 (USG_SHARED_LIBRARIES): Remove duplicate definition.
10800
10801 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10802 Eli Zaretskii <eliz@gnu.org>
10803
10804 * makefile.w32-in (LOCAL_FLAGS):
10805 Don't include WINDOWSNT, DOS_NT and _UCHAR_T.
10806
10807 * sysdep.c (_spawnlp, _getpid):
10808 Declare with explicit _cdecl instead of _CRTAPI1.
10809
10810 * editfns.c (Fget_internal_run_time):
10811 Check for WINDOWSNT with #ifdef, not #if.
10812
10813 2008-06-26 Jason Rumney <jasonr@gnu.org>
10814
10815 * w32font.h (FONT_HANDLE, FONT_TEXTMETRIC): New macros.
10816
10817 * w32term.c (x_draw_glyph_string_foreground)
10818 (x_draw_composite_glyph_string_foreground): Sync with xterm.c.
10819 Use FONT_HANDLE macro.
10820 (x_draw_glyph_string): Use FONT_TEXTMETRIC macro.
10821
10822 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10823 (uniscribe_encode_char): Use FONT_HANDLE macro.
10824
10825 * w32font.c (Fx_select_font): Use FONT_HANDLE macro.
10826 (w32font_text_extents): Use precast w32_font.
10827 (w32font_close): Free cached metrics.
10828 (w32font_open_internal): Allocate space for name on stack.
10829
10830 2008-06-26 Chong Yidong <cyd@stupidchicken.com>
10831
10832 * xdisp.c (extend_face_to_end_of_line): Fix last change.
10833
10834 2008-06-26 Jason Rumney <jasonr@gnu.org>
10835
10836 * w32term.h (FONT_AVG_WIDTH): Remove obsolete macro.
10837 (CP_8BIT, CP_UNICODE, CP_UNKNOWN): Remove obsolete constants.
10838
10839 2008-06-26 Juanma Barranquero <lekktu@gmail.com>
10840
10841 * Makefile.in (SOME_MACHINE_OBJECTS): Remove w32bdf.o.
10842
10843 2008-06-26 Jason Rumney <jasonr@gnu.org>
10844
10845 * w32bdf.c, w32bdf.h: Remove obsolete files.
10846
10847 * makefile.w32-in: Remove refs to w32bdf.h and w32bdf.c.
10848
10849 * w32gui.h: Don't include w32bdf.h.
10850 (XCharStruct, enum w32_char_font_type, W32FontStruct):
10851 Remove obsolete font support.
10852
10853 * w32font.h (struct w32font_info): Remove compat_w32_font.
10854 Add hfont member.
10855 (FONT_COMPAT): Remove obsolete macro.
10856
10857 * w32font.c (w32font_close): Remove compat code. Delete hfont member.
10858 (w32font_encode_char, w32font_text_extents): Use new hfont member.
10859 (w32font_open_internal): Remove compat code. Set new hfont member.
10860 (Fx_select_font): Use new hfont member.
10861
10862 * w32uniscribe.c (uniscribe_otf_capability, uniscribe_shape)
10863 (uniscribe_encode_char): Use new hfont member.
10864
10865 * w32term.c (x_draw_glyph_string_foreground)
10866 (x_draw_composite_glyph_string_foreground): Use new hfont member.
10867 (x_draw_glyph_string): Use metrics in w32font_info.
10868
10869 2008-06-26 Kenichi Handa <handa@m17n.org>
10870
10871 * xdisp.c (handle_auto_composed_prop): Fix for the terminal case.
10872
10873 2008-06-26 Dan Nicolaescu <dann@ics.uci.edu>
10874
10875 * unexnext.c:
10876 * m/ews4800.h:
10877 * m/hp9000s300.h:
10878 * m/ibm370aix.h:
10879 * m/mips-siemens.h:
10880 * m/ncr386.h:
10881 * m/next.h:
10882 * m/pmax.h:
10883 * m/powerpcle.h:
10884 * m/tandem-s2.h:
10885 * s/386bsd.h:
10886 * s/bsd386.h:
10887 * s/bsd4-1.h:
10888 * s/bsd4-2.h:
10889 * s/bsdos2-1.h:
10890 * s/bsdos2.h:
10891 * s/bsdos3.h:
10892 * s/bsdos4.h:
10893 * s/nextstep.h:
10894 * s/ultrix4-3.h:
10895 * s/usg5-0.h:
10896 * s/usg5-2-2.h:
10897 * s/usg5-2.h:
10898 * s/usg5-4-3.h:
10899 * s/ux4800.h:
10900 * s/uxpds.h:
10901 * s/uxpv.h: Remove support for obsolete systems.
10902 * s/hpux.h, s/hpux10.h, s/hpux8.h, s/hpux9.h, s/hpux9shr.h:
10903 Remove, insert contents in s/hpux10-20.h.
10904 * s/aix3-1.h, s/aix3-2-5.h, s/aix3-2.h, s/aix4-1.h, s/aix4.h:
10905 Remove, insert contents in s/aix4-2.h.
10906 * s/usg5-3.h: Remove, insert contents in s/usg5-4.h.
10907 * s/bsd4-3.h: Rename to ...
10908 * s/bsd-common.h: ... this.
10909 * data.c:
10910 * doc.c:
10911 * ecrt0.c:
10912 * emacs.c:
10913 * fileio.c:
10914 * floatfns.c:
10915 * keyboard.c:
10916 * mem-limits.h:
10917 * print.c:
10918 * process.c:
10919 * sysdep.c:
10920 * syssignal.h:
10921 * systty.h:
10922 * syswait.h:
10923 * term.c:
10924 * unexec.c:
10925 * unexelf.c:
10926 * unexhp9k800.c:
10927 * m/hp800.h:
10928 * m/ibmrs6000.h:
10929 * m/mips.h:
10930 * m/vax.h:
10931 * s/darwin.h:
10932 * s/freebsd.h:
10933 * s/gnu.h:
10934 * s/ms-w32.h:
10935 * s/msdos.h:
10936 * s/netbsd.h:
10937 * s/template.h: Remove references to obsolete variables.
10938
10939 * Makefile.in: Add dependencies for all unexec files.
10940 (admindir): Remove unused variable.
10941 (UNEXEC_SRC): Remove references.
10942
10943 2008-06-25 Chong Yidong <cyd@stupidchicken.com>
10944
10945 * xfns.c (x_default_font_parameter): If Xft is available, first
10946 try Monospace-12 for the default font.
10947
10948 2008-06-25 Jason Rumney <jasonr@gnu.org>
10949
10950 * xdisp.c (get_glyph_face_and_encoding): Encode invalid glyphs as 0.
10951
10952 2008-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
10953
10954 * bytecode.c (Fbyte_code): Disable debugging code that doesn't compile.
10955
10956 * buffer.c (syms_of_buffer): Remove default-word-wrap.
10957
10958 2008-06-25 Juanma Barranquero <lekktu@gmail.com>
10959
10960 * xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>: Doc fix.
10961 <scroll-conservatively>: Fix typo in docstring.
10962
10963 * xselect.c (Fx_send_client_event): Doc fix.
10964
10965 2008-06-25 Kenichi Handa <handa@m17n.org>
10966
10967 * xfaces.c (Fx_list_fonts): Call Flist_fonts with the arg PREFER.
10968
10969 * font.c (font_parse_fcname): Remove unused variables.
10970 (font_sort_entites): Delete the arg SPEC. Caller changed.
10971 Fix for the case of ! best_only.
10972 (font_delete_unmatched): Check DPI and AVGWIDTH too.
10973
10974 * lisp.h (Fstring_to_unibyte): EXFUN it.
10975
10976 * character.h (str_to_unibyte): Extern it.
10977
10978 * character.c (str_to_unibyte): New function.
10979
10980 * fns.c (Fstring_to_unibyte): New function.
10981 (syms_of_fns): Defsubr it.
10982
10983 2008-06-24 Kenichi Handa <handa@m17n.org>
10984
10985 * font.c (font_score): Even if the PIXEL_SIZE is the same, check
10986 DPI too.
10987 (font_sort_entites): Setup prefer_prop[FONT_DPI_INDEX] too.
10988
10989 2008-06-24 Andreas Schwab <schwab@suse.de>
10990
10991 * Makefile.in (${lispsource}loaddefs.el): Rename from
10992 ../lisp/loaddefs.el.
10993 (bootstrap-clean): Do what distclean does but don't remove
10994 Makefile.
10995 (distclean): Depend on bootstrap-clean and remove Makefile.
10996
10997 2008-06-24 Chong Yidong <cyd@stupidchicken.com>
10998
10999 * buffer.h (struct buffer): New member word_wrap.
11000
11001 * buffer.c (syms_of_buffer): New variables default-word-wrap and
11002 word-wrap.
11003 (init_buffer_once): Initialize them.
11004
11005 * dispextern.h (struct it): Replace bool truncate_lines_p with a
11006 line_wrap enum possessing three possible values.
11007
11008 * termopts.h: Replace truncate_partial_width_windows with
11009 Vtruncate_partial_width_windows.
11010
11011 * dispnew.c (direct_output_for_insert): Avoid direct output when
11012 inserting a space with word wrap on.
11013
11014 * indent.c (compute_motion): Obey integer values of
11015 truncate-partial-width-windows.
11016
11017 * xdisp.c (Vtruncate_partial_width_windows): New Lisp_Object,
11018 replacing truncate_partial_width_windows.
11019 (init_iterator): If Vtruncate_partial_width_windows is an integer,
11020 truncate only if the window width is below that integer.
11021 (start_display, resize_mini_window, produce_stretch_glyph)
11022 (display_string, move_it_in_display_line_to): Use line_wrap.
11023 (back_to_previous_visible_line_start, reseat_1): Reset
11024 string_from_display_prop_p.
11025 (display_line): Extend default face to end of line when wrapping.
11026
11027 2008-06-24 Kim F. Storm <storm@cua.dk>
11028
11029 * xdisp.c (display_line, move_it_in_display_line_to): Add ability
11030 to wrap continued lines at word boundaries.
11031
11032 2008-06-24 Jason Rumney <jasonr@gnu.org>
11033
11034 * font.c (Ffont_face_attributes): Multiply pixel size before point
11035 conversion to avoid multiplying rounding error.
11036
11037 2008-06-23 Jason Rumney <jasonr@gnu.org>
11038
11039 * w32term.c (x_draw_glyph_string_background)
11040 (x_draw_glyph_string): Remove old bdf font code.
11041
11042 * w32term.h (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): Remove.
11043
11044 2008-06-22 Kenichi Handa <handa@m17n.org>
11045
11046 * font.c (font_find_for_lface): Try the adstyle specified in
11047 the property of LFACE_FONT of LFACE (if any).
11048
11049 2008-06-21 Seiji Zenitani <zenitani@mac.com>
11050 Ryo Yoshitake <ryo@shiftmode.net>
11051
11052 * xterm.c (x_set_frame_alpha): Add x_catch_errors for bug#437.
11053
11054 2008-06-22 Stefan Monnier <monnier@iro.umontreal.ca>
11055
11056 * Makefile.in (${lisp} ${SOME_MACHINE_LISP}, ../lisp/loaddefs.el):
11057 Use $(BOOTSTRAPEMACS) rather than witness-emacs.
11058 (bootstrap-emacs${EXEEXT}): Merge witness-emacs into it.
11059 (witness-emacs): Remove.
11060 (lisp, shortlisp): Move loaddefs.el earlier.
11061 (mostlyclean): Forget about witness-emacs.
11062
11063 2008-06-22 Glenn Morris <rgm@gnu.org>
11064
11065 * Makefile.in (witness-emacs): Depend on temacs${EXEEXT}.
11066 (.SUFFIXES): Declare .el.elc as a suffix rule, for non-GNU makes.
11067
11068 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11069
11070 * Makefile.in (PRECOMP): Remove.
11071 (${lisp} ${SOME_MACHINE_LISP}): Remove pseudo dependency on PRECOMP.
11072 (witness-emacs): Run `compile-first'.
11073 (.el.elc): Use the new compile-onefile target.
11074
11075 2008-06-21 Kenichi Handa <handa@m17n.org>
11076
11077 * xftfont.c (xftfont_open): Handle QCembolden only when
11078 FC_EMBOLDEN is defined.
11079
11080 2008-06-21 Andreas Schwab <schwab@suse.de>
11081
11082 * Makefile.in (witness-emacs): Use ../lisp, not $(lispsource).
11083 (.el.elc): Likewise.
11084
11085 2008-06-21 Miles Bader <miles@gnu.org>
11086
11087 * Makefile.in (../lisp/loaddefs.el): Build autoloads in the lisp
11088 build dir, not the lisp source dir.
11089
11090 2008-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
11091
11092 * Makefile.in (emacs${EXEEXT}): Link the new emacs to bootstrap-emacs.
11093 (bootstrapclean): Remove.
11094 (.el.elc): New rule.
11095 (PRECOMP): New var.
11096 (../lisp/subdirs.el): Remove.
11097 (bootstrap-emacs${EXEEXT}): Remove subdirs.el and charpro.el dependency.
11098 (witness-emacs): New target.
11099 (mostlyclean): Remove witness-emacs as well.
11100 (../lisp/loaddefs.el, ${lisp} ${SOME_MACHINE_LISP}):
11101 Add witness-emacs dependency.
11102
11103 2008-06-20 Chong Yidong <cyd@stupidchicken.com>
11104
11105 * font.c (Ffont_face_attributes): Omit key-attribute pairs not
11106 defined by the font.
11107
11108 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11109
11110 * Makefile.in (emacs${EXEEXT}): Depend on the machine-specific files.
11111 (bootstrap-clean): New target that keeps TAGS around.
11112 (../lisp/subdirs.el, ../lisp/loaddefs.el): New targets.
11113 (bootstrap-emacs${EXEEXT}): Depend on subdirs.el.
11114
11115 2008-06-20 Jason Rumney <jasonr@gnu.org>
11116
11117 * w32fns.c, w32term.c, w32term.h, w32gui.h [OLD_FONT]:
11118 Remove obsolete font code.
11119
11120 * w32font.c (font_matches_spec): Use csb bitfield from font signature
11121 to determine language support.
11122
11123 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11124
11125 * sysdep.c (cfsetspeed): New fun extracted from the code.
11126 (cfmakeraw): Move before first use.
11127
11128 2008-06-20 Angelo Graziosi <angelo.graziosi@alice.it> (tiny change)
11129
11130 * sysdep.c (cfmakeraw): Provide fallback implementation.
11131 (serial_configure): Provide fallback implementation of cfsetspeed.
11132
11133 2008-06-20 Kenichi Handa <handa@m17n.org>
11134
11135 * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
11136 the pattern.
11137
11138 * fontset.c (fontset_from_font): Copy font_spec before changing
11139 the elements.
11140
11141 * xfns.c (x_default_font_parameter): Try "monospace-12" too.
11142
11143 2008-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
11144
11145 * w32fns.c, xfns.c (x_default_font_parameter): Only set `font-param'
11146 for explicit `font' parameters.
11147
11148 * frame.c (x_set_font): Remove unexplained call to fix inf-recursion.
11149
11150 2008-06-19 Kenichi Handa <handa@m17n.org>
11151
11152 * frame.c: Include <ctype.h>.
11153 (x_set_font_backend): Allow spacing characters in the X resource
11154 for FontBackend.
11155
11156 2008-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
11157
11158 * w32fns.c, xfns.c (Qfont_param): New var.
11159 (syms_of_w32fns): Initialize it.
11160 (x_default_font_parameter): Record explicit `font' into
11161 `font-parameter'.
11162
11163 2008-06-18 Kenichi Handa <handa@m17n.org>
11164
11165 * font.c (font_parse_xlfd): Fix previous change.
11166 (font_parse_fcname): Don't use :fc-unknown-spec.
11167 (FRAME_X_DISPLAY_INFO): Be sure to have at least 1 pixel height.
11168 (Fcopy_font_spec): Preserve the order of elements in FONT_EXTRA.
11169 (font_add_log): Prepend the driver name to the resulting fonts.
11170
11171 * ftfont.c (ftfont_pattern_entity): New arg extra. Caller changed.
11172 (ftfont_spec_pattern): Don't check QCfc_unknown_spec and QCname.
11173 (ftfont_list) [FC_FONTFORMAT]: Include FC_FONTFORMAT in objset.
11174
11175 * xftfont.c (QChinting , QCautohint, QChintstyle, QCrgba)
11176 (QCembolden): New variables.
11177 (syms_of_xftfont): DEFSYM them.
11178 (xftfont_open): Call XftFontMatch. Don't trust the result of
11179 XftTextExtents8 if the pixel_size is less than 5.
11180
11181 2008-06-18 Andreas Schwab <schwab@suse.de>
11182
11183 * font.c (Ffont_face_attributes): Only define if HAVE_WINDOW_SYSTEM.
11184 (syms_of_font): Only defsubr if HAVE_WINDOW_SYSTEM.
11185
11186 2008-06-18 Jason Rumney <jasonr@gnu.org>
11187
11188 * w32font.c (w32font_list, w32font_match): Add logging.
11189
11190 * w32uniscribe.c (uniscribe_list, uniscribe_match): Add logging.
11191
11192 2008-06-17 Chong Yidong <cyd@stupidchicken.com>
11193
11194 * font.c (font_parse_fcname): Store divider characters for
11195 unknown-spec list. For known key symbols, intern using correct
11196 symbol name.
11197
11198 2008-06-17 Kenichi Handa <handa@m17n.org>
11199
11200 * xfaces.c (realize_default_face): If the frame is not on window
11201 system, set the fontset of face to nil.
11202
11203 2008-06-17 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11204
11205 * fontset.c (fontset_pattern_regexp): Escape some reg-expr characters.
11206
11207 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11208
11209 * dispextern.h (lookup_non_ascii_face, split_font_name_into_vector)
11210 (build_font_name_from_vector): Delete externs.
11211
11212 * xfaces.c (struct font_name): Don't declare.
11213
11214 2008-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
11215
11216 * font.c (font_unparse_gtkname): Use EQ to compare Lisp_Objects.
11217
11218 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11219
11220 * font.c (font_parse_fcname): Fix handling of unknown-spec string.
11221
11222 2008-06-16 Juanma Barranquero <lekktu@gmail.com>
11223
11224 * font.c (Ffont_spec): Fix usage in docstring.
11225 (Ffont_face_attributes): Doc fix.
11226
11227 2008-06-16 Andreas Schwab <schwab@suse.de>
11228
11229 * font.c (Ffont_face_attributes): Fix definition.
11230
11231 2008-06-16 Jason Rumney <jasonr@gnu.org>
11232
11233 * font.h (font_style_symbolic_from_value): Remove.
11234
11235 * font.c (font_style_symbolic_from_value): Remove.
11236 (font_style_symbolic): Revert to pre 2008-06-13 version.
11237
11238 * w32font.c (w32_to_fc_weight): New function.
11239 (w32font_full_name, logfont_to_fcname): Use it.
11240
11241 2008-06-16 Kenichi Handa <handa@m17n.org>
11242
11243 * font.c (font_check_object): Delete it.
11244 (font_clear_cache): Check if a font-object is alive.
11245 (font_open_entity): Likewise. Set FONT_OBJLST_INDEX of a
11246 font-object to nil.
11247 (font_close_object): Don't check FONT_CLOSE_OBJECT.
11248 (font_at): Don't call font_check_object.
11249 (Ffont_get): Return a symbol for :weight, :slant, and :width.
11250
11251 2008-06-16 Katsumi Yamaoka <yamaoka@jpl.org>
11252
11253 * puresize.h (BASE_PURESIZE): Increase to 1230000.
11254
11255 2008-06-16 Chong Yidong <cyd@stupidchicken.com>
11256
11257 * font.c (font_parse_fcname): Correctly parse KEY=VAL values.
11258
11259 2008-06-15 Chong Yidong <cyd@stupidchicken.com>
11260
11261 * font.c (font_parse_fcname): Only one decimal point.
11262 (font_unparse_fcname): Handle data in family and foundry indices
11263 as symbols, not strings.
11264 (font_unparse_gtkname, Ffont_face_attributes): New functions.
11265
11266 * xfns.c (Fx_select_font): Give GTK font dialog the default font name.
11267
11268 * font.h (font_unparse_gtkname): Add prototype.
11269
11270 2008-06-15 Naohiro Aota <nao.aota@gmail.com> (tiny change)
11271
11272 * fontset.c (fontset_pattern_regexp): Escape `+' characters in pattern.
11273
11274 2008-06-15 Andreas Schwab <schwab@suse.de>
11275
11276 * font.c (font_update_drivers): Fix crash when no drivers match.
11277
11278 2008-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
11279
11280 * xfns.c (Fx_create_frame): internal-border-width default to 0 for Gtk.
11281 * gtkutil.c (xg_create_frame_widgets): Don't set internal_border_width.
11282
11283 2008-06-14 Stefan Monnier <monnier@iro.umontreal.ca>
11284
11285 * xdisp.c (syms_of_xdisp): Default underline-minimum-offset to 1.
11286
11287 2008-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
11288
11289 * process.c (Fserial_process_configure, Fprocess_send_eof):
11290 Use EQ to compare Lisp_Objects.
11291
11292 2008-06-13 Jason Rumney <jasonr@gnu.org>
11293
11294 * w32fns.c (Fw32_select_font): Remove old font API function.
11295
11296 * w32font.c (logfont_to_fcname): New function.
11297 (Fx_select_font): New font dialog function compatible with
11298 GTK/fontconfig version.
11299
11300 * font.c (font_style_symbolic_from_value): New function.
11301 (font_style_symbolic): Use it.
11302
11303 * font.h (font_style_symbolic_from_value): Declare new function.
11304
11305 2008-06-13 Juanma Barranquero <lekktu@gmail.com>
11306
11307 * font.c (syms_of_font) <font-weight-table, font-slant-table>:
11308 <font-width-table>: Fix typos in docstrings.
11309
11310 2008-06-13 Daniel Engeler <engeler@gmail.com>
11311
11312 These changes add serial port access.
11313 * process.c: Add HAVE_SERIAL.
11314 (Fdelete_process, Fprocess_status, Fset_process_buffer)
11315 (Fset_process_filter, Fset_process_sentinel, Fprocess_contact)
11316 (list_processes_1, select_wrapper, Fstop_process)
11317 (Fcontinue_process, Fprocess_send_eof, kill_buffer_processes)
11318 (status_notify): Modify to handle serial processes.
11319 [HAVE_SERIAL] (Fserial_process_configure)
11320 [HAVE_SERIAL] (make_serial_process_unwind, Fmake_serial_process):
11321 New functions.
11322 * process.h (struct Lisp_Process): Add `type'.
11323 * sysdep.c [HAVE_TERMIOS] (serial_open, serial_configure):
11324 New functions.
11325 * w32.c (_sys_read_ahead, sys_read, sys_write): Modify to handle
11326 serial ports.
11327 (serial_open, serial_configure): New functions.
11328 * w32.h: Add FILE_SERIAL.
11329 (struct _child_process): Add ovl_read, ovl_write.
11330
11331 2008-06-13 Kenichi Handa <handa@m17n.org>
11332
11333 * dispextern.h (enum lface_attribute_index): New member
11334 LFACE_FOUNDRY_INDEX.
11335
11336 * font.c (font_score): Delete arg alternate_families. Check only
11337 weight, slant, width, and size. Ignore the difference of alias
11338 style symbols.
11339 (font_sort_entites): Adjust for the above change. Reflect the
11340 order of font-driver to scores.
11341 (font_list_entities): Don't check alternate_familes here.
11342 (font_clear_prop): Handle foundry.
11343 (font_update_lface): Don't parse "foundry-family" form here.
11344 Handle FONT_FOUNDRY_INDEX.
11345 (font_find_for_lface): Likewise. Handle alternate families here.
11346 If registry is nil, try iso8859-1 and ascii-0.
11347 (font_open_for_lface): Pay attention to size in ENTITY.
11348 (font_open_by_name): Simplify by calling font_load_for_lface.
11349 (free_font_driver_list): Delete it.
11350 (font_update_drivers): Preserve the order of backends.
11351 (syms_of_font): Setting of sort_shift_bits adjusted for the change
11352 of font_score and font_sort_entites.
11353 (font_update_sort_order): Likewise.
11354
11355 * xfaces.c (LFACE_FOUNDRY): New macro.
11356 (check_lface_attrs): Check foundry.
11357 (set_lface_from_font): Don't parse "FOUNDRY-FAMILY" form.
11358 (merge_face_vectors): Check foundry.
11359 (merge_face_ref): Likewise.
11360 (Finternal_set_lisp_face_attribute): Likewise.
11361 (x_update_menu_appearance): Likewise.
11362 (Finternal_get_lisp_face_attribute): Likewise.
11363 (lface_hash): Likewise.
11364 (lface_same_font_attributes_p): Likewise.
11365 (x_supports_face_attributes_p): Likewise.
11366 (tty_supports_face_attributes_p): Likewise.
11367 (Finternal_set_alternative_font_family_alist): Intern strings.
11368 (Finternal_set_alternative_font_registry_alist): Downcase strings.
11369 (realize_default_face): Set LFACE_FOUNDRY (lface).
11370
11371 * xfns.c (Fx_create_frame, x_create_tip_frame): Register X
11372 font-driver at first.
11373
11374 * ftfont.c (ftfont_font_format) [! FC_FONTFORMAT]: Declare "int len;".
11375
11376 2008-06-12 Emanuele Giaquinta <emanuele.giaquinta@gmail.com> (tiny change)
11377
11378 * lread.c (Fload): Use xfree, not free on saved_doc_string.
11379
11380 2008-06-12 Jim Meyering <meyering@redhat.com>
11381
11382 Make unexec_free handle NULL the same way free does.
11383 * unexmacosx.c (unexec_free): Ignore a NULL argument.
11384
11385 2008-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
11386
11387 * character.h (CHAR_TO_BYTE_SAFE): New macro.
11388 * character.c (Fmultibyte_char_to_unibyte): Obey the docstring.
11389 * regex.c (RE_CHAR_TO_UNIBYTE): Use the new macro.
11390 (WEAK_ALIAS): Simplify.
11391 * syntax.c (skip_chars): Don't mark non-byte chars in the fastmap
11392 when searching a unibyte buffer.
11393
11394 2008-06-12 Chong Yidong <cyd@stupidchicken.com>
11395
11396 * xfns.c (Fx_select_font): Rename from x-font-dialog.
11397
11398 2008-06-12 Juanma Barranquero <lekktu@gmail.com>
11399
11400 * w32font.c: Include ctype.h.
11401
11402 2008-06-11 Jason Rumney <jasonr@gnu.org>
11403
11404 * w32font.c (w32font_encode_char): Detect missing glyphs that are
11405 misreported as space.
11406 (add_font_entity_to_list): Support unicode-bmp and unicode-sip
11407 as aliases for registry iso10646-1.
11408
11409 2008-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
11410
11411 * buffer.c (clone_per_buffer_values): Skip `name'.
11412
11413 2008-06-11 Chong Yidong <cyd@stupidchicken.com>
11414
11415 * font.c (font_parse_fcname): Fix last change; accept decimal
11416 points in font size.
11417
11418 2008-06-10 Jason Rumney <jasonr@gnu.org>
11419
11420 * w32uniscribe.c (add_opentype_font_name_to_list):
11421 Skip non unicode fonts.
11422
11423 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11424
11425 * xfns.c (Fx_font_dialog): New function.
11426
11427 * gtkutil.c (xg_dialog_response_cb): Rename from
11428 xg_file_response_callback.
11429 (pop_down_dialog): Rename from pop_down_file_dialog.
11430 (xg_get_file_name): Callers changed.
11431 (xg_get_font_name): New function.
11432
11433 * gtkutil.h (xg_get_font_name): Insert prototype.
11434
11435 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11436
11437 * xdisp.c (underline_minimum_offset): Rename from xterm.c's
11438 x_underline_minimum_display_offset.
11439 (syms_of_xdisp): Declare it here rather than in xterm.c.
11440 * dispextern.h (underline_minimum_offset): Declare it.
11441 * w32term.c (x_draw_glyph_string): Use it.
11442 * xterm.c (x_underline_minimum_display_offset): Move to xdisp.c.
11443 (syms_of_xterm): Don't declare it any more.
11444 (x_draw_glyph_string): Adjust to the new name.
11445
11446 2008-06-10 David De La Harpe Golden <david@harpegolden.net>
11447
11448 * xterm.c (x_underline_minimum_display_offset): New var.
11449 (x_draw_glyph_string): Use it.
11450 (syms_of_xterm): Declare it.
11451
11452 2008-06-10 Chong Yidong <cyd@stupidchicken.com>
11453
11454 * font.c (font_parse_fcname): Accept GTK-style font names too.
11455
11456 2008-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
11457
11458 * dired.c (file_name_completion): Don't return t if the match is exact
11459 but with different capitalization.
11460 * minibuf.c (Ftry_completion): Simplify.
11461
11462 * window.c (Vwindow_point_insertion_type): New var.
11463 (set_window_buffer): Use it.
11464 (syms_of_window): Init and export it to Lisp.
11465
11466 2008-06-10 Kenichi Handa <handa@m17n.org>
11467
11468 * font.h (font_intern_prop): Prototype adjusted.
11469
11470 * font.c (font_intern_prop): New arg force_symbol.
11471 (font_parse_xlfd, font_parse_fcname, font_parse_family_registry):
11472 Adjust for the change of font_intern_prop.
11473
11474 * ftfont.c (ftfont_pattern_entity):
11475 * w32font.c (add_font_name_to_list, w32_enumfont_pattern_entity)
11476 (w32_registry):
11477 * w32uniscribe.c (add_opentype_font_name_to_list): Adjust for
11478 the change of font_intern_prop.
11479
11480 2008-06-09 Juanma Barranquero <lekktu@gmail.com>
11481
11482 * w32menu.c (digest_single_submenu): Declare extern.
11483
11484 2008-06-09 Jason Rumney <jasonr@gnu.org>
11485
11486 * w32term.c (x_make_frame_visible): Use alternate restore flags.
11487
11488 * w32menu.c (Fx_popup_menu): Unwind protect while building menu.
11489 (parse_single_submenu): Remove.
11490 (digest_single_submenu): Remove.
11491 (syms_of_w32menu): Don't initialise variables that have moved
11492 to menu.c.
11493 (set_frame_menubar): Sync with version in xmenu.c.
11494 (w32_menu_show): Sync with xmenu_show in xmenu.c.
11495
11496 * menu.c (single_keymap_panes, push_menu_pane, push_menu_item):
11497 Make static again.
11498
11499 2008-06-09 Jason Rumney <jasonr@gnu.org>
11500
11501 Changes to w32 files related to the move of common menu code
11502 to menu.c on 2008-06-08 by Chong Yidong.
11503
11504 * menu.c [HAVE_NTGUI]: Include w32term.h, move widget related
11505 defs to w32gui.h.
11506 (single_keymap_panes, push_menu_item, push_menu_pane):
11507 Make globally visible.
11508
11509 * w32menu.c (enum button_type, widget_value, local_heap, local_alloc)
11510 (local_free, malloc_widget_value, free_widget_value)
11511 (MENU_ITEMS_ITEM_NAME, MENU_ITEMS_ITEM_ENABLE, MENU_ITEMS_ITEM_VALUE)
11512 (MENU_ITEMS_ITEM_EQUIV_KEY, MENU_ITEMS_ITEM_DEFINITION)
11513 (MENU_ITEMS_ITEM_TYPE, MENU_ITEMS_ITEM_SELECTED, MENU_ITEMS_ITEM_HELP)
11514 (MENU_ITEMS_ITEM_LENGTH, enum menu_item_idx): Remove defs.
11515 (menu_items, menu_items_allocated, menu_items_used)
11516 (menu_items_n_panes, menu_items_submenu_depth): Remove global vars.
11517 (init_menu_items, finish_menu_items, discard_menu_items)
11518 (grow_menu_items, push_submenu_start, push_submenu_end)
11519 (push_left_right_boundary, push_menu_pane, push_menu_item)
11520 (keymap_panes, single_keymap_panes, list_of_panes, list_of_items)
11521 (free_menubar_widget_tree_value, parse_single_submenu)
11522 (update_submenu_strings): Remove functions.
11523 (xmalloc_widget_value): Remove and declare extern.
11524
11525 * makefile.w32-in ($(SRC)/menu.$(O)): New target.
11526 (OBJ1): Build it.
11527
11528 * w32gui.h (widget_value, XtPointer, Boolean, enum button_type)
11529 (local_heap, local_alloc, local_free, malloc_widget_value)
11530 (free_widget_value): Define here.
11531
11532 2008-06-09 Kenichi Handa <handa@m17n.org>
11533
11534 * font.h (Qascii_0): Extern it.
11535
11536 * font.c (Qascii_0): New variable.
11537 (syms_of_font): DEFSYM it.
11538 (font_open_by_name): If the registry "iso8859-1" fails, try also
11539 "ascii-0".
11540
11541 * ftfont.c (ftfont_spec_pattern): Accept the registry `ascii-0'.
11542
11543 2008-06-08 Kenichi Handa <handa@m17n.org>
11544
11545 * .gdbinit (xfont): New command.
11546
11547 2008-06-08 Andreas Schwab <schwab@suse.de>
11548
11549 * menu.c [HAVE_X_WINDOWS]: Include "xterm.h".
11550 * Makefile.in (menu.o): Update dependencies.
11551
11552 * Makefile.in (obj): Always add menu.o.
11553 * emacs.c (main): Always call syms_of_menu.
11554 * keyboard.h: Remove extra #ifdef HAVE_X_WINDOW.
11555
11556 2008-06-08 Chong Yidong <cyd@stupidchicken.com>
11557
11558 * Makefile.in: Compile menu.c.
11559
11560 * lisp.h: Declare syms_of_menu.
11561
11562 * emacs.c (main): Call syms_of_menu.
11563
11564 * keyboard.h: Relocate platform-independent menu definitions from
11565 xmenu.c.
11566
11567 * menu.c: New file. Relocate platform-independent menu
11568 definitions from xmenu.c. Suggested by Adrian Robert.
11569
11570 * xmenu.c: Remove platform-independent menu definitions.
11571 (menu_items menu_items_inuse, menu_items_allocated)
11572 (menu_items_used, menu_items_n_panes)
11573 (menu_items_submenu_depth): Move to keyboard.h.
11574 (init_menu_items, finish_menu_items, unuse_menu_items)
11575 (discard_menu_items, restore_menu_items, save_menu_items)
11576 (grow_menu_items, push_submenu_start, push_submenu_end)
11577 (push_left_right_boundary, push_menu_pane, push_menu_item)
11578 (keymap_panes, single_keymap_panes, single_menu_item)
11579 (list_of_panes, list_of_items, find_and_call_menu_selection)
11580 (xmalloc_widget_value, free_menubar_widget_value_tree)
11581 (parse_single_submenu, digest_single_submenu)
11582 (update_submenu_strings): Move to menu.c.
11583
11584 2008-06-07 Stefan Monnier <monnier@iro.umontreal.ca>
11585
11586 * dispnew.c (Flast_nonminibuf_frame): Handle the NULL case.
11587
11588 2008-06-06 Miles Bader <miles@gnu.org>
11589
11590 * xdisp.c (x_produce_glyphs): Calculate tab width based on current
11591 face, not frame default.
11592
11593 2008-06-05 Martin Rudalics <rudalics@gmx.at>
11594
11595 * window.c (pop_up_windows, pop_up_frames)
11596 (display_buffer_reuse_frames, Vpop_up_frame_function)
11597 (Vdisplay_buffer_function, Veven_window_heights)
11598 (Vspecial_display_buffer_names, Vspecial_display_regexps)
11599 (Vspecial_display_function, Vsame_window_buffer_names)
11600 (Vsame_window_regexps, split_height_threshold)
11601 (Vsplit_window_preferred_function): Move those vars to window.el.
11602 (display_buffer_1, Fspecial_display_p, Fsame_window_p)
11603 (Fdisplay_buffer): Move those functions to window.el.
11604 (syms_of_window): Remove corresponding declarations.
11605 (display_buffer): New function.
11606 (temp_output_buffer_show, Fother_window_for_scrolling): Use it.
11607 * dispnew.c (Flast_nonminibuf_frame): New function.
11608 * buffer.c (Fpop_to_buffer): Move to window.el.
11609
11610 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11611
11612 * data.c (set_internal): Fix up call to let_shadows_buffer_binding_p.
11613
11614 2008-06-05 Kenichi Handa <handa@m17n.org>
11615
11616 * coding.c (detect_coding): Fix previous change.
11617 (detect_coding_system): Likewise.
11618
11619 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11620
11621 * character.h (MAKE_CHAR_MULTIBYTE): Check the arg is a (uni)byte.
11622
11623 * keymap.c (Vminibuffer_local_filename_must_match_map):
11624 Rename from Vminibuffer_local_must_match_filename_map.
11625 (syms_of_keymap):
11626 * minibuf.c (Fcompleting_read): Adjust accordingly.
11627 * commands.h: Rename declaration as well.
11628
11629 2008-06-05 Kenichi Handa <handa@m17n.org>
11630
11631 * font.c (Ffont_spec): Don't use font_parse_family_registry for
11632 family name.
11633 (Ffont_put): Likewise.
11634
11635 * fontset.c (fontset_find_font): Call font_open_for_lface with the
11636 current font-spec.
11637
11638 * xfont.c (xfont_list): Don't set registry to iso8859-1 even if it
11639 is unspecified.
11640
11641 * xfaces.c (realize_x_face): If the font-related face attributes
11642 are the same as those of default face, realize a new fontset from
11643 default->fontset.
11644 (Fx_family_fonts): Use font_parse_family_registry instead of Ffont_put.
11645
11646 2008-06-05 Stefan Monnier <monnier@iro.umontreal.ca>
11647
11648 * xdisp.c (move_it_in_display_line_to): Improve the type of its args.
11649 (move_it_in_display_line): New wrapper.
11650
11651 * window.c (window_scroll_pixel_based_preserve_x)
11652 (window_scroll_preserve_hpos, window_scroll_preserve_vpos): New vars.
11653 (window_scroll_pixel_based, window_scroll_line_based):
11654 Use them to preserve column positions.
11655 (syms_of_window): Initialize them.
11656
11657 * indent.c (Fvertical_motion): Extend first arg to allow passing an
11658 (HPOS . VPOS) pair.
11659
11660 * dispextern.h (move_it_in_display_line): Declare.
11661
11662 2008-06-05 Juanma Barranquero <lekktu@gmail.com>
11663
11664 * window.c (Fwindow_parameter): Return VALUE, not (PARAMETER . VALUE).
11665 (Fwindow_parameters): Return copy of parameter alist. Doc fix.
11666 (Fset_window_parameter): Return VALUE, not parameter alist. Doc fix.
11667
11668 2008-06-04 Juanma Barranquero <lekktu@gmail.com>
11669
11670 * window.c (Fset_window_parameter): Doc fix.
11671 (Fwindow_parameters, Fwindow_parameter): Remove redundant check.
11672
11673 2008-06-04 Joakim Verona <joakim@verona.se>
11674
11675 * window.h (struct window): Add new member window_parameters.
11676
11677 * window.c (Fwindow_parameters, Fwindow_parameter)
11678 (Fset_window_parameter): New defuns.
11679 (syms_of_window): Defsubr the new defuns.
11680 (make_window): Initialize window_parameters to nil.
11681
11682 2008-06-04 John Paul Wallington <jpw@pobox.com>
11683
11684 * eval.c (Fdefmacro): Doc fix.
11685
11686 2008-06-04 Kenichi Handa <handa@m17n.org>
11687
11688 * coding.c (detect_coding): Fix handling of coding->head_ascii.
11689 Be sure to call setup_coding_system when we find a proper coding system.
11690 (detect_coding_system): Fix handling of coding->head_ascii.
11691
11692 2008-06-03 Andreas Schwab <schwab@suse.de>
11693
11694 * font.c (font_prop_validate_spacing): Fix last change.
11695
11696 2008-06-03 Kenichi Handa <handa@m17n.org>
11697
11698 * font.c (font_prop_validate_spacing): Handle uppercase symbols.
11699 (font_parse_fcname): Fix handling of unknown key.
11700
11701 * xfont.c (xfont_list): Try an alias.
11702
11703 * charset.c (char_charset): Return NULL if the arg charset_list is
11704 specified and C doesn't belong to any of them.
11705
11706 2008-06-02 Chip Coldwell <coldwell@redhat.com>
11707
11708 * font.c (font_pixel_size): Don't take cdr of an integer.
11709
11710 2008-06-02 Jim Meyering <meyering@redhat.com>
11711
11712 Make "xfree (NULL)" a no-op; remove useless if-before-xfree.
11713 * alloc.c (xfree): Return right away for a NULL arg.
11714 * lread.c (nosuffix): Remove now-useless if-before-xfree tests.
11715 * gtkutil.c (xg_gtk_scroll_destroy): Likewise.
11716 * mac.c (create_apple_event_from_event_ref): Likewise.
11717 (create_apple_event_from_drag_ref, cfstring_create_normalized):
11718 Likewise.
11719 * doprnt.c (doprnt1): Likewise.
11720 * frame.c (frame): Likewise.
11721 * keyboard.c (wipe_kboard): Likewise.
11722 * macterm.c (x_free_frame_resources, xlfdpat_destroy, XFreePixmap)
11723 (init_font_name_table, mac_unload_font, x_delete_display): Likewise.
11724 * term.c (tty_default_color_capabilities, maybe_fatal)
11725 (delete_tty): Likewise.
11726 * w16select.c (string): Likewise.
11727 * w32.c (w32_get_resource, SET_ENV_BUF_SIZE): Likewise.
11728 * w32bdf.c (w32_free_bdf_font): Likewise.
11729 * w32fns.c (w32_unload_font): Likewise.
11730 * w32font.c (w32font_close): Likewise.
11731 * window.c (size_window): Likewise.
11732 * xselect.c (receive_incremental_selection): Likewise.
11733 * xterm.c (x_free_frame_resources, x_delete_display): Likewise.
11734 * mactoolbox.c (create_apple_event_from_drag_ref): Likewise.
11735 * w32.c (stat): Likewise.
11736
11737 Remove useless if-before-free tests.
11738 * editfns.c (Fset_time_zone_rule): Likewise.
11739 * lread.c (nosuffix): Likewise.
11740 * ralloc.c (get_bloc): Likewise.
11741 * regex.c (reg_free): Likewise.
11742 * xftfont.c (xftfont_open, xftfont_close): Likewise.
11743 * xrdb.c (get_user_app, get_environ_db, x_load_resources): Likewise.
11744 * xsmfns.c (smc_save_yourself_CB): Likewise.
11745
11746 2008-06-02 Kenichi Handa <handa@m17n.org>
11747
11748 * font.c (font_find_for_lface): Handle float font size.
11749 (font_open_for_lface): Likewise.
11750
11751 * xfaces.c (x_supports_face_attributes_p): Check face->font before
11752 comparing the properties.
11753
11754 2008-06-01 Jason Rumney <jasonr@gnu.org>
11755
11756 * w32font.c (w32_enumfont_pattern_entity): Use requested registry.
11757 Treat iso10646-1 and Windows DEFAULT_CHARSET specially.
11758 Duplicate iso8859-1 fonts as iso10646-1 if no registry specified.
11759 Don't add empty script list.
11760 (w32_registry): Only map DEFAULT_CHARSET to iso10646-1 here.
11761
11762 2008-06-01 Dan Nicolaescu <dann@ics.uci.edu>
11763
11764 * Makefile.in (dot, dotdot): Remove, update users.
11765 ".." has been used elsewhere in the file for a long time.
11766 (LIBXT_STATIC): Remove conditional based on unused variable.
11767
11768 2008-06-01 Miles Bader <miles@gnu.org>
11769
11770 * xfaces.c (Vface_remapping_alist): New variable.
11771 (syms_of_xfaces): Initialize it.
11772 (enum named_merge_point_kind): New type.
11773 (struct named_merge_point): Add `named_merge_point_kind' field.
11774 (push_named_merge_point): Make cycle detection respect different
11775 named-merge-point kinds.
11776 (lface_from_face_name_no_resolve): Rename from `lface_from_face_name'.
11777 Remove face-name alias resolution.
11778 (lface_from_face_name): New definition using
11779 `lface_from_face_name_no_resolve'.
11780 (get_lface_attributes_no_remap): Rename from `get_lface_attributes'.
11781 Call lface_from_face_name_no_resolve instead of lface_from_face_name.
11782 (get_lface_attributes): New definition that layers face-remapping on
11783 top of get_lface_attributes_no_remap. New arg `named_merge_points'.
11784 (lookup_basic_face): New function.
11785 (lookup_derived_face): Pass new last arg to `get_lface_attributes'.
11786 (realize_named_face): Call `get_lface_attributes_no_remap' instead of
11787 `get_lface_attributes'.
11788 (face_at_buffer_position): Use `lookup_basic_face' to lookup
11789 DEFAULT_FACE_ID if necessary. When optimizing the default-face case,
11790 return default_face's face-id instead of the constant DEFAULT_FACE_ID.
11791
11792 * xdisp.c (init_iterator): Pass base_face_id through
11793 `lookup_basic_face' when we actually use it as a face-id.
11794 (handle_single_display_prop): Use `lookup_basic_face' to lookup
11795 DEFAULT_FACE_ID.
11796
11797 * fontset.c (Finternal_char_font): Use `lookup_basic_face' to
11798 lookup the initial face-id.
11799
11800 * dispextern.h (lookup_basic_face, Vface_remapping_alist): New decls.
11801
11802 2008-06-01 Juanma Barranquero <lekktu@gmail.com>
11803
11804 * textprop.c (syms_of_textprop) <text-property-default-nonsticky>:
11805 (Fremove_text_properties): Fix typos in docstrings.
11806
11807 2008-05-31 Kenichi Handa <handa@m17n.org>
11808
11809 * font.c (font_list_entities): Fix the car part of data to be
11810 stored in the cache.
11811
11812 * ftfont.c (ftfont_font_format): Don't use strcasestr.
11813
11814 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11815
11816 * chartab.c (Foptimize_char_table, optimize_sub_char_table):
11817 Add a `test' argument so another predicate than `equal' can be used.
11818 (map_sub_char_table): Use `eq' rather than `equal' to merge ranges.
11819 (map_char_table): Remove unused vars `c' and `i'.
11820 * lisp.h (Foptimize_char_table): Adjust declaration.
11821 * charset.c (Fclear_charset_maps): Adjust call to Foptimize_char_table.
11822
11823 2008-05-30 Kenichi Handa <handa@m17n.org>
11824
11825 * font.c (Ffont_info): Define only if HAVE_WINDOW_SYSTEM is defined.
11826 (syms_of_font): Defsubr Sfont_info only if HAVE_WINDOW_SYSTEM is
11827 defined.
11828
11829 2008-05-30 Stefan Monnier <monnier@iro.umontreal.ca>
11830
11831 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11832 (Fmake_variable_frame_local): Disallow mixing buffer-local and
11833 frame-local settings for the same variable.
11834
11835 2008-05-30 Kenichi Handa <handa@m17n.org>
11836
11837 * fontset.c (Ffont_info): Move to font.c.
11838 (syms_of_fontset): Delete defsubr of Sfont_info.
11839
11840 * font.c (font_style_to_value, font_score): Delete casting of the
11841 args to xstcasecmp.
11842 (register_font_driver): Increment num_font_drivers only when
11843 registering the driver globally.
11844 (Ffont_info): Move from fontset.c. Handle a font object too.
11845 (syms_of_font): Defsubr Sfont_info.
11846
11847 2008-05-29 Kenichi Handa <handa@m17n.org>
11848
11849 * coding.h (enum define_coding_utf8_arg_index): New enum.
11850 (enum coding_attr_index): Change coding_attr_utf_16_bom to
11851 coding_attr_utf_bom.
11852 (enum utf_bom_type): Rename from utf_16_bom_type.
11853 (struct utf_16_spec): Adjust for the above change.
11854 (struct coding_system): Add utf_8_bom in `spec' union.
11855
11856 * coding.c (CODING_UTF_8_BOM): New macro.
11857 (enum coding_category): Delete coding_category_utf_8, add
11858 coding_category_utf_8_auto, coding_category_utf_8_nosig, and
11859 coding_category_utf_8_sig.
11860 (CATEGORY_MASK_UTF_8): Delete it.
11861 (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG)
11862 (CATEGORY_MASK_UTF_8_SIG): New macros.
11863 (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add
11864 CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and
11865 CATEGORY_MASK_UTF_8_SIG.
11866 (CATEGORY_MASK_UTF_8): New macro.
11867 (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros.
11868 (detect_coding_utf_8): Check BOM.
11869 (decode_coding_utf_8, encode_coding_utf_8): Handle BOM.
11870 (decode_coding_utf_16): Adjust for the change of enum utf_bom_type.
11871 (encode_coding_utf_16): Likewise.
11872 (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding).
11873 (detect_coding, detect_coding_system): Handle utf-8-auto.
11874 (Fdefine_coding_system_internal): Handle `bom' property for utf-8.
11875 (syms_of_coding): Fix setting up of Vcoding_category_table.
11876
11877 2008-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
11878
11879 * process.c (Faccept_process_output): If `millisec' is non-nil,
11880 `seconds' default to 0.
11881 (wait_reading_process_output): Also return non-nil if we read output
11882 from a non-running process.
11883
11884 2008-05-29 Jason Rumney <jasonr@gnu.org>
11885
11886 * w32font.c (w32font_open_internal): Prefer truetype fonts unless
11887 `raster' specified.
11888 (add_font_entity_to_list): Allow non-opentype truetype fonts back
11889 in the uniscribe backend, but disallow any font that has no
11890 unicode subrange support.
11891
11892 2008-05-29 Juanma Barranquero <lekktu@gmail.com>
11893
11894 * xfaces.c (Fx_list_fonts, Finternal_copy_lisp_face):
11895 Fix typos in docstrings.
11896
11897 2008-05-29 Kenichi Handa <handa@m17n.org>
11898
11899 * xfaces.c (Fx_list_fonts): Make it return a list of font names.
11900 (Fx_family_fonts): Set frame correctly.
11901
11902 2008-05-28 Jason Rumney <jasonr@gnu.org>
11903
11904 * w32term.c (x_draw_glyph_string): Use clipmask if specified.
11905
11906 2008-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
11907
11908 * fileio.c (Fwrite_region): Delay the defaulting to beg&z to after
11909 calling build_annotations.
11910
11911 2008-05-28 Juanma Barranquero <lekktu@gmail.com>
11912
11913 * coding.c (Fdecode_coding_region, Fencode_coding_region)
11914 (Fencode_coding_string):
11915 (syms_of_coding) <coding-system-for-read, coding-system-for-write>:
11916 <latin-extra-code-table>: Fix typos in docstrings.
11917 (syms_of_coding) <coding-system-alist>: Doc fix.
11918 (syms_of_coding) <translation-table-for-input>: Reflow docstring.
11919
11920 2008-05-28 Kenichi Handa <handa@m17n.org>
11921
11922 * fontset.c (Ffont_info): Don't call font_close_object.
11923
11924 * font.c (font_parse_family_registry): Use Ffont_put to validate
11925 foundry and family.
11926 (font_delete_unmatched): Don't check spacing.
11927 (font_list_entities): Add spacing to the spec to list fonts.
11928
11929 * ftfont.c (ftfont_spec_pattern): Don't set FC_SPACING to pattern.
11930 (ftfont_list): Check spacing here. Don't include FC_CHARSET in objset.
11931
11932 * coding.c (encode_coding_raw_text): Fix previous change.
11933 (encode_coding_object): When the dst_object is a buffer and is
11934 different from src_object, move gap to PT.
11935
11936 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11937
11938 * xterm.c (x_draw_glyph_string): If a clipmask is specified, use it.
11939
11940 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11941
11942 * coding.c (encode_coding_raw_text): Set coding->produced_char for
11943 all branches. Compute it differently.
11944
11945 * xdisp.c [!HAVE_WINDOW_SYSTEM]: Include font.h for --without-x.
11946
11947 2008-05-27 Juanma Barranquero <lekktu@gmail.com>
11948
11949 * w32font.c (compute_metrics): Rewrite an "else { if () ... else ... }"
11950 into "else if () ... else ...".
11951
11952 2008-05-27 Jason Rumney <jasonr@gnu.org>
11953
11954 * w32font.c (w32font_open_internal): Determine if glyph indices
11955 are likely to work here.
11956
11957 2008-05-27 Chong Yidong <cyd@stupidchicken.com>
11958
11959 * xdisp.c (draw_glyphs): If mouse-highlighting is on, attempt to
11960 draw overlap glyphs with appropriate highlighting.
11961
11962 2008-05-27 Kenichi Handa <handa@m17n.org>
11963
11964 * xfont.c (xfont_open): Fix calculation of font->average_width.
11965
11966 2008-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
11967
11968 * casefiddle.c (casify_object): Try to guess better whether the
11969 argument is a byte or a char.
11970
11971 2008-05-26 Andreas Schwab <schwab@suse.de>
11972
11973 * xselect.c (x_reply_selection_request): Properly handle format == 32.
11974 Always send multiples of format size.
11975
11976 * xterm.c (x_set_frame_alpha): Fix type mismatch.
11977
11978 2008-05-26 Jason Rumney <jasonr@gnu.org>
11979
11980 * w32font.c (w32font_text_extents): Zero whole metrics struct first.
11981 (compute_metrics): Don't set failure if we just cleared the cache.
11982 (w32_weight_table): Remove unused variable.
11983 (w32_enumfont_pattern_entity): Use FONT_SPACING_CHARCELL for
11984 backwards compatibility.
11985
11986 2008-05-25 Kenichi Handa <handa@m17n.org>
11987
11988 * w32term.c (x_draw_glyph_string):
11989 * xterm.c (x_draw_glyph_string): Fix calculation of underline position.
11990
11991 * xfaces.c: Delete unused function prototypes.
11992 (xstrlwr, font_frame): Delete them.
11993 (clear_face_cache): Delete unused variable.
11994
11995 * xftfont.c (xftfont_open): Delete unused variable.
11996 If underline_thickness is not 1, adjust underline_position.
11997
11998 * ftxfont.c (ftxfont_open): Delete unused variable.
11999
12000 * fontset.c (face_for_char): Optimize for the case of no charset
12001 property.
12002
12003 * font.c (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE)
12004 (check_gstring, check_otf_features, otf_list, otf_tag_symbol)
12005 (otf_open, font_otf_capability, generate_otf_features)
12006 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
12007 Comment out by surrounding "#if 0" and "#endif" for the moment.
12008 (Ffont_drive_otf, Ffont_otf_alternates): Likewise.
12009 (syms_of_font): Codes for accessing above commented out.
12010
12011 2008-05-24 Eli Zaretskii <eliz@gnu.org>
12012
12013 * w32proc.c: Include dispextern.h.
12014
12015 * w32.c: Include dispextern.h.
12016
12017 2008-05-23 Juanma Barranquero <lekktu@gmail.com>
12018
12019 * charset.c (Fencode_char, Fsplit_char): Doc fixes.
12020 (Fget_unused_iso_final_char, Fdecode_char, Fiso_charset):
12021 Fix typos in docstrings.
12022
12023 2008-05-23 Jason Rumney <jasonr@gnu.org>
12024
12025 * xsmfns.c: Remove includes that are already included by config.h.
12026
12027 2008-05-23 Kenichi Handa <handa@m17n.org>
12028
12029 * charset.c (Qemacs, charset_emacs): New variables.
12030 (char_charset): Fix for non-Unicode characters.
12031 (syms_of_charset): Define charset_emacs.
12032
12033 * w32term.c (x_draw_glyph_string): Be sure to update
12034 s->underline_thickness and s->underline_position. Be sure to draw
12035 underline within the current line area.
12036
12037 * xterm.c (x_draw_glyph_string): Be sure to update
12038 s->underline_thickness and s->underline_position. Be sure to draw
12039 underline within the current line area.
12040
12041 * fontset.c: Delete unused variables and add casting for char *
12042 throughout the file.
12043 (fontset_font): Try the fallback fonts of the current fontset
12044 before consulting the default fontset.
12045
12046 * ftfont.c (ftfont_spec_pattern): Free charset if necessary.
12047
12048 * xfont.c (xfont_list_pattern): Free names returned from XListFonts.
12049
12050 2008-05-22 Jason Rumney <jasonr@gnu.org>
12051
12052 * font.c: Don't include strings.h.
12053
12054 * dispextern.h, xfaces.c (xstrcasecmp): Rename from xstricmp.
12055
12056 * dosfns.c, fileio.c, font.c, fontset.c, image.c, macfns.c:
12057 * macterm.c, process.c, w32.c, w32fns.c, w32proc.c, xfaces.c:
12058 * xfns.c, xfont.c: All callers of stricmp and strcasecmp changed
12059 to call xstrcasecmp.
12060
12061 * xfont.c (xfont_list_pattern, compare_font_names): Use xstrcasecmp.
12062
12063 * fontset.c (fs_query_fontset): Use xstrcasecmp.
12064
12065 * font.c (font_style_to_value, font_score): Use xstrcasecmp.
12066
12067 * dosfns.c (msdos_stdcolor_idx): Use xstrcasecmp.
12068
12069 2008-05-22 Kenichi Handa <handa@m17n.org>
12070
12071 * puresize.h (BASE_PURESIZE): Increase to 1220000.
12072
12073 * font.c (font_prop_validate_style): Adjust for the format
12074 change of font_style_table.
12075
12076 * w32font.c (w32font_open_internal): Call Ffont_xlfd_name with
12077 two args.
12078
12079 * xfaces.c (x_update_menu_appearance): Call Ffont_xlfd_name with
12080 two args.
12081
12082 2008-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
12083
12084 * minibuf.c (keys_of_minibuf): Delete.
12085 * lisp.h (keys_of_minibuf): Delete.
12086 * emacs.c (main): Don't call keys_of_minibuf.
12087
12088 2008-05-22 Kenichi Handa <handa@m17n.org>
12089
12090 * ftfont.c (ftfont_resolve_generic_family): Rename from
12091 ftfont_list_generic_family. Return a single family for each
12092 generic family.
12093 (ftfont_spec_pattern): Add FC_FAMILY to pattern.
12094 (ftfont_list): Adjust for the change of ftfont_resolve_generic_family.
12095 Call font_add_log.
12096 (ftfont_match): Call font_add_log.
12097
12098 * font.h (Ffont_xlfd_name): EXFUN adjusted.
12099 (FONT_DEBUG): Define it.
12100 (font_add_log): Extern it.
12101 (font_assert): Rename from xassert.
12102
12103 * xfont.c (xfont_get_pcm): Change xassert to font_assert.
12104 (xfont_list_family): Call font_add_log.
12105 (xfont_match): Likewise.
12106 (memq_no_quit): Delete.
12107
12108 * fontset.c (fontset_from_font, Ffontset_info): Add the 2nd arg in
12109 call of Ffont_xlfd_name.
12110
12111 * xfaces.c (struct table_entry, slant_table, weight_table)
12112 (swidth_table): Move to font.c.
12113
12114 * font.c: Checking of FONT_DEBUG is moved to font.h. All calls of
12115 xassert are changed to font_assert. Delete many unused variables.
12116 (Vfont_weight_table, Vfont_slant_table, Vfont_width_table):
12117 New variables.
12118 (struct table_entry): Move from xfaces.c and modified.
12119 (weight_table, slant_table, width_table): Move from xfaces.c and
12120 contents adjusted for the change of struct table_entry.
12121 (font_style_to_value, font_style_symbolic): Adjust for the
12122 format change of font_style_table.
12123 (font_parse_family_registry): Don't overwrite existing foundry and
12124 family of font_spec.
12125 (font_score): Fix calculation of diff for sizes.
12126 (font_sort_entites): Call font_add_log.
12127 (font_delete_unmatched): Return a newly created list.
12128 (font_list_entities): Fix previous change. Call font_add_log.
12129 (font_matching_entity, font_open_entity, font_close_entity):
12130 Call font_add_log.
12131 (Ffont_xlfd_name): New arg FOLD-WILDCARDS.
12132 (Finternal_set_font_style_table): Delete.
12133 (BUILD_STYLE_TABLE): New macro.
12134 (build_style_table): New function.
12135 (Vfont_log, font_log_env_checked): New variables.
12136 (font_add_log): New function.
12137 (syms_of_font): Delete defsubr Sinternal_set_font_style_table.
12138 Declare Lisp variables "font-weight-table", "font-slant-table",
12139 "font-width-table", and "font-log". Initialize font_style_table.
12140
12141 2008-05-21 Dan Nicolaescu <dann@ics.uci.edu>
12142
12143 * xterm.c (x_set_frame_alpha): Move declarations before statements.
12144
12145 2008-05-21 Seiji Zenitani <zenitani@mac.com>
12146 Ryo Yoshitake <ryo@shiftmode.net>
12147
12148 * frame.c (Qalpha): Add a new frame parameter `alpha'.
12149 (Vframe_alpha_lower_limit): New variable.
12150 (x_set_alpha): New function.
12151
12152 * frame.h (Qalpha, Vframe_parameter_lower_limit): Export them.
12153
12154 * xfns.c (x-create-frame, Qalpha):
12155 Initialize the frame parameter `alpha'.
12156 * xterm.c (OPAQUE, OPACITY): New.
12157 (x_set_frame_alpha): New function.
12158 (frame_highlight, frame_unhighlight): Call x_set_frame_alpha.
12159
12160 * macfns.c (mac_frame_parm_handlers): A null handler for x_set_alpha.
12161 * w32fns.c (w32_frame_parm_handlers): Likewise.
12162
12163 2008-05-20 Jason Rumney <jasonr@gnu.org>
12164
12165 * w32font.c (add_font_entity_to_list): Don't add non-opentype
12166 truetype fonts to opentype list.
12167
12168 2008-05-20 Juanma Barranquero <lekktu@gmail.com>
12169
12170 * fontset.c (Ffontset_info): Doc fix.
12171 (syms_of_fontset) <font-encoding-charset-alist, use-default-ascent>:
12172 <ignore-relative-composition>: Fix typos in docstrings.
12173
12174 * font.c (syms-of-font) <font-encoding-alist>:
12175 (Ffontp, Ffont_make_gstring): Fix typos in docstrings.
12176 (Flist_fonts, Ffont_family_list, Ffont_fill_gstring, Fquery_font)
12177 (Ffont_otf_alternates): Doc fixes.
12178
12179 2008-05-20 Kenichi Handa <handa@m17n.org>
12180
12181 * Makefile.in (FONTSRC): Delete it. Change all $(FONTSRC) to
12182 font.h through out the file.
12183 (FONT_DRIVERS): Rename from FONTOBJ.
12184 (obj): Change $(FONTOBJ) to $(FONT_DRIVERS). Add font.o.
12185 (SOME_MACHINE_OBJECTS): Change $(FONTOBJ) to $(FONT_DRIVERS).
12186
12187 * emacs.c (main): Call syms_of_font unconditionally.
12188
12189 * font.h (find_font_encoding): Extern it.
12190
12191 * font.c (Vfont_encoding_alist, find_font_encoding): Move from
12192 fontset.c.
12193 (font_pixel_size) [! HAVE_WINDOW_SYSTEM]: Return 1.
12194 (font_open_entity): Update FRAME_X_DISPLAY_INFO (f)->n_fonts,
12195 FRAME_SMALLEST_CHAR_WIDTH (f), and FRAME_SMALLEST_FONT_HEIGHT (f)
12196 only when HAVE_WINDOW_SYSTEM is defined.
12197 (font_close_object): Update FRAME_X_DISPLAY_INFO (f)->n_fonts only
12198 when HAVE_WINDOW_SYSTEM is defined.
12199
12200 * fontset.c (Vfont_encoding_alist, find_font_encoding): Move to font.c.
12201 (syms_of_fontset): Move declaration of font-encoding-alist to font.c.
12202
12203 * xfaces.c: Include font.h unconditionally.
12204 (merge_face_ref, merge_face_vectors)
12205 (Finternal_set_lisp_face_attribute): Cancel the previous change.
12206
12207 2008-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
12208
12209 * xdisp.c (select_frame_for_redisplay): Adjust for last change to
12210 indirect_variable.
12211 * eval.c (lisp_indirect_variable): New fun.
12212 (Fuser_variable_p): Use it.
12213
12214 2008-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
12215
12216 * lisp.h (indirect_variable):
12217 * data.c (indirect_variable, let_shadows_buffer_binding_p):
12218 Use Lisp_Symbol pointers rather than Lisp_Object.
12219 Adjust callers.
12220 * buffer.c (buffer_slot_type_mismatch): Use wrong-type-argument.
12221 To this end, change calling-convention.
12222
12223 * minibuf.c (Finternal_complete_buffer): Only strip out hidden buffers
12224 if some non-hidden buffers are selected by string&pred.
12225
12226 2008-05-19 Chong Yidong <cyd@stupidchicken.com>
12227
12228 * process.c (wait_reading_process_output): Always check status
12229 when in batch mode.
12230
12231 2008-05-19 Kenichi Handa <handa@m17n.org>
12232
12233 * font.c (font_list_entities): Fix handling of cache.
12234 (font_matching_entity): Likewise.
12235
12236 * ftfont.c (cs_iso8859_1): Delete.
12237 (ft_face_cache): New variable.
12238 (struct ftfont_info): New member fc_charset_idx.
12239 (ftfont_build_basic_charsets): Delete.
12240 (fc_charset_table): New variable.
12241 (ftfont_pattern_entity): New arg fc_charset_idx. Store (FILENAME
12242 . FC_CHARSET_IDX) as :font-entity property in the font entity.
12243 Callers changed.
12244 (ftfont_lookup_cache, ftfont_get_charset): New functions.
12245 (ftfont_spec_pattern): New argument fc_charset_idx.
12246 Check registry more rigidly. Change callers.
12247 (ftfont_open, ftfont_close, ftfont_has_char): Adjust for the
12248 change of :font-entity property of the font.
12249
12250 * xftfont.c (xftfont_open): Adjust for the change of :font-entity
12251 property of the font.
12252
12253 2008-05-18 Juanma Barranquero <lekktu@gmail.com>
12254
12255 * coding.c (Fcoding_system_p): Rename argument to match docstring.
12256 (Funencodable_char_position, Fcheck_coding_systems_region)
12257 (Fdecode_coding_string, Fencode_coding_string): Fix typos in docstrings.
12258 (Fdetect_coding_region, Fdetect_coding_string, Fencode_coding_region)
12259 (Ffind_operation_coding_system, Fset_coding_system_priority)
12260 (Fcoding_system_eol_type): Doc fixes.
12261
12262 2008-05-17 Glenn Morris <rgm@gnu.org>
12263
12264 * sysdep.c (child_setup_tty): Handle systems with NLDLY, without FFDLY.
12265
12266 2008-05-16 Eli Zaretskii <eliz@gnu.org>
12267
12268 * dired.c (Ffile_attributes): Shut up GCC warnings about st_uid
12269 and st_gid.
12270
12271 * frame.c (Fdelete_frame): Don't call font_update_drivers if
12272 HAVE_WINDOW_SYSTEM is not defined.
12273
12274 * xfaces.c (merge_face_ref, merge_face_vectors)
12275 (Finternal_set_lisp_face_attribute): Use FONT_*_INDEX only when
12276 HAVE_WINDOW_SYSTEM is defined.
12277 (Fface_font): Fix non-HAVE_WINDOW_SYSTEM case.
12278
12279 2008-05-16 Stefan Monnier <monnier@iro.umontreal.ca>
12280
12281 * keyboard.c (parse_menu_item): Do not cache key shortcut any more.
12282
12283 2008-05-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12284
12285 * macterm.c (x_draw_relief_rect): Remove unused variable `dpy'.
12286
12287 2008-05-15 Kenichi Handa <handa@m17n.org>
12288
12289 * font.c (font_find_for_lface): Reflect LFACE_FONT in the font
12290 preference.
12291
12292 2008-05-15 Glenn Morris <rgm@gnu.org>
12293
12294 * emacs.c (USAGE1, standard_args): Remove -disable-font-backend.
12295
12296 2008-05-15 Chong Yidong <cyd@stupidchicken.com>
12297
12298 * fns.c (init_fns): Don't initialize weak_hash_tables here.
12299 (init_weak_hash_tables): New fun. Initialize weak_hash_tables.
12300
12301 * alloc.c (init_alloc_once): Call init_weak_hash_tables.
12302
12303 2008-05-15 Kenichi Handa <handa@m17n.org>
12304
12305 * ftfont.c (ftfont_list): Downcase family name to check generic
12306 families.
12307
12308 * xfaces.c (Finternal_set_lisp_face_attribute): Be sure to make a
12309 font-spec for QCfont value.
12310
12311 * fontset.c (Fnew_fontset): Call font_unparse_xlfd with 256-byte
12312 buffer. Check the return value of it.
12313
12314 2008-05-14 Jason Rumney <jasonr@gnu.org>
12315
12316 * w32term.c (w32_get_glyph_overhangs): Remove.
12317 (w32_redisplay_interface): Use x_get_glyph_overhangs instead.
12318
12319 2008-05-14 Kenichi Handa <handa@m17n.org>
12320
12321 * font.c (font_prop_validate): Make nil a valid value.
12322 (font_clear_cache): Check if the cached vector of entities is nil
12323 or not.
12324
12325 2008-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12326
12327 * emacs.c (main_thread): Conditionalize on
12328 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12329 (main) [FORWARD_SIGNAL_TO_MAIN_THREAD]: Initialize it.
12330
12331 * syssignal.h (FORWARD_SIGNAL_TO_MAIN_THREAD): New define.
12332 (main_thread, SIGNAL_THREAD_CHECK): Conditionalize on
12333 FORWARD_SIGNAL_TO_MAIN_THREAD instead of HAVE_GTK_AND_PTHREAD.
12334
12335 2008-05-14 Kenichi Handa <handa@m17n.org>
12336
12337 * coding.c (detect_coding_iso_2022): Ignore a coding category that
12338 has no corresponding coding system.
12339
12340 2008-05-14 Jason Rumney <jasonr@gnu.org>
12341
12342 * font.h (struct font) [WINDOWSNT]: Remove codepage member.
12343
12344 * w32font.h (w32font_open_internal): Update declaration.
12345
12346 * w32font.c (w32font_open_internal): Change last argument from
12347 w32font_info struct to font object. Fill in font object from
12348 font_entity. Get Outline metrics if possible. Use them to
12349 calculate underline position and thickness. Use xlfd name as name
12350 property. Don't set codepage.
12351 (w32font_open): Pass font_object to w32font_open_internal. Don't
12352 update dpyinfo->smallest_font_height and dpyinfo->smallest_char_width.
12353 (w32font_draw): Use s->font.
12354 (clear_cached_metrics): Don't clear non-existent blocks.
12355
12356 * w32term.c (w32_compute_glyph_string_overhangs): Don't compute if
12357 font was not found.
12358 (x_draw_glyph_string): Use underline position and thickness from font.
12359
12360 * w32uniscribe.c (uniscribe_open): Pass font_object to
12361 w32font_open_internal.
12362
12363 2008-05-14 Kenichi Handa <handa@m17n.org>
12364
12365 These changes are to delete all legacy font-handling codes, and
12366 make Emacs use only font-backends.
12367
12368 * Makefile.in: Delete USE_FONT_BACKEND conditionals.
12369 (frame.o, image.o, print.o): Depend on $(FONTSRC).
12370
12371 * makefile.w32-in (WIN32OBJ): Add w32reg.$(O), remove w32bdf.$(O).
12372
12373 * charset.h (Vcharset_non_preferred_head)
12374 (Vcurrent_iso639_language): Extern them.
12375
12376 * charset.c (Vcharset_non_preferred_head): New variable.
12377 (Vcurrent_iso639_language): New variable.
12378 (syms_of_charset): Declare it as a Lisp variable.
12379 (char_charset): Don't check non preferred charsets. As a last
12380 resort, return charset_unicode.
12381 (Fset_charset_priority): Update Vcharset_non_preferred_head.
12382
12383 * composite.c: Throughout the file, delete all USE_FONT_BACKEND
12384 conditionals. Don't check enable_font_backend. Delete all codes
12385 used only when USE_FONT_BACKEND is not defined.
12386
12387 * dispextern.h (struct glyph_string): Change type of `font' to
12388 `struct font *'.
12389 (struct glyph_string): New member underline_position and
12390 underline_thickness.
12391 (enum lface_attribute_index): Remove LFACE_AVGWIDTH_INDEX.
12392 (struct face): Change type of `font' to `struct font *'. Remove
12393 members `font_name', `font_info_id'.
12394 (per_char_metric, encode_char): Delete externs.
12395 (calc_pixel_width_or_height): Adjust the prototype.
12396
12397 * emacs.c (enable_font_backend): Delete extern.
12398 (main): Don't set enable_font_backend. Don't check the command
12399 line argument "-disable-font-backend".
12400
12401 * font.h (Qfont_spec, Qfont_entity, Qfont_object): Extern them.
12402 (enum font_property_index): New members FONT_DPI_INDEX,
12403 FONT_SPACING_INDEX, FONT_AVGWIDTH_INDEX, FONT_NAME_INDEX,
12404 FONT_FULLNAME_INDEX, FONT_FILE_INDEX, FONT_FORMAT_INDEX,
12405 FONT_OBJECT_MAX. Delete FONT_FRAME_INDEX.
12406 (FONT_WEIGHT_NUMERIC, FONT_SLANT_NUMERIC, FONT_WIDTH_NUMERIC)
12407 (FONT_WEIGHT_SYMBOLIC, FONT_SLANT_SYMBOLIC, FONT_WIDTH_SYMBOLIC)
12408 (FONT_WEIGHT_FOR_FACE, FONT_SLANT_FOR_FACE, FONT_WIDTH_FOR_FACE)
12409 (FONT_WEIGHT_NAME_NUMERIC, FONT_SLANT_NAME_NUMERIC)
12410 (FONT_WIDTH_NAME_NUMERIC, FONT_SET_STYLE): New macros.
12411 (struct font_spec, struct font_entity): New structs.
12412 (FONT_ENCODING_NOT_DECIDED): Moved from fontset.h.
12413 (struct font): Many members from old "struct font_info" moved to
12414 here. Members font and entity deleted.
12415 (FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P, FONTP): Modified for
12416 the new font-related objects.
12417 (CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
12418 (CHECK_FONT_GET_OBJECT): Likewise.
12419 (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, XSETFONT): New macros.
12420 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved from font.h.
12421 (struct font_driver): New members case_sensitive anc check. Type
12422 of the member list and open changed.
12423 (enable_font_backend, font_symbolic_weight, font_symbolic_slant)
12424 (font_symbolic_width, font_find_object, font_get_spec)
12425 (font_set_lface_from_name): Delete extern.
12426 (Fcopy_font_spec, Fmerge_font_spec, Ffont_family_list): New EXFUNs.
12427
12428 * font.c: Include <strings.h>.
12429 (enable_font_backend): Delete it.
12430 (Qfont_spec, Qfont_entity, Qfont_object): New variables.
12431 (CHECK_VALIDATE_FONT_SPEC): Delete it.
12432 (PT_PER_INCH, POINT_TO_PIXEL, PIXEL_TO_POINT): Moved to font.h.
12433 (null_string): Delete it.
12434 (null_vector): Make it static.
12435 (font_family_alist): Delete it.
12436 (Qnormal): Extern it.
12437 (QCextra, QClanguage): Delete it.
12438 (QClang, QCavgwidth, QCfont_entity, QCfc_unknown_spec): New variables.
12439 (font_make_spec, font_make_entity, font_make_object)
12440 (font_intern_prop): Renamed from intern_downcase. Don't downcase
12441 the string. Callers changed.
12442 (font_pixel_size): Adjusted for the format change of font-related
12443 objects.
12444 (prop_name_to_numeric, prop_numeric_to_name): Delete them.
12445 (font_style_to_value, font_style_symbolic): New function.
12446 (build_font_family_alist): Delete it.
12447 (font_registry_charsets): Use Fassoc_string instead of
12448 assq_no_quit.
12449 (font_prop_validate_symbol): Don't return null_string.
12450 (font_prop_validate_style): Adjusted for the change of
12451 style-related values in a font vector.
12452 (font_property_table): Delete entries for QClanguage and
12453 QCantialias, add entries for QCavgwidth.
12454 (get_font_prop_index): Delete the 2nd argument FROM.
12455 (font_prop_validate): Arguments changed.
12456 (font_put_extra): Adjusted for the change of font-related objects.
12457 (font_expand_wildcards, font_parse_xlfd, font_unparse_xlfd)
12458 (font_parse_fcname, font_unparse_fcname)
12459 (font_prepare_composition): Likewise.
12460 (font_parse_family_registry): Renamed from font_merge_old_spec.
12461 (otf_open): Delete the 1st arg entity.
12462 (font_otf_capability): Adjusted for the above change.
12463 (font_score): New arg alternate_families. Adjusted for the change
12464 of font-related objects.
12465 (font_sort_entites): New arg best_only.
12466 (font_symbolic_weight, font_symbolic_slant, font_symbolic_width):
12467 Delete them.
12468 (font_match_p): Check alternate families.
12469 (font_find_object): Delete it.
12470 (font_check_object): New function.
12471 (font_clear_cache): Adjusted for the change of font-related objects.
12472 (font_delete_unmatched): New arg.
12473 (font_list_entities): Call font_driver->list with a spec that
12474 doesn't specify style-related properties.
12475 (font_matching_entity): Arguments changed. Caller changed.
12476 (font_open_entity): Adjusted for the change of font-related objects.
12477 (font_close_object, font_has_char, font_encode_char)
12478 (font_get_name, font_get_spec): Likewise.
12479 (font_spec_from_name, font_clear_prop, font_update_lface):
12480 New functions.
12481 (font_find_for_lface, font_open_for_lface, font_load_for_lface)
12482 (font_prepare_for_face, font_done_for_face, font_open_by_name)
12483 (font_at): Adjusted for the change of font-related objects.
12484 (font_range): New function.
12485 (Ffontp, Ffont_spec, Ffont_get, Ffont_put, Flist_fonts)
12486 (Ffont_xlfd_name): Adjusted for the change of font-related objects.
12487 (Fcopy_font_spec, Fmerge_font_spec): New function.
12488 (Ffont_family_list): Renamed from list-families.
12489 (Finternal_set_font_style_table): Arguments changed.
12490 (Ffont_fill_gstring, Ffont_shape_text, Fopen_font)
12491 (Ffont_drive_otf, Fquery_font, Ffont_match_p): Adjusted for the
12492 change of font-related objects.
12493 (syms_of_font): Delete "ifdef USE_FONT_BACKEND". DEFSYM new symbols.
12494
12495 * fontset.h (struct font_info): Delete it. Most members go to
12496 struct font.
12497 (FONT_ENCODING_NOT_DECIDED): Moved to font.h.
12498 (enum FONT_SPEC_INDEX): Delete it.
12499 (font_info, list_fonts_func, load_font_func, query_font_func)
12500 (set_frame_fontset_func, find_ccl_program_func)
12501 (get_font_repertory_func, new_fontset_from_font_name): Delete
12502 externs.
12503 (fontset_from_font_name): Extern it.
12504 (FS_LOAD_FONT, FONT_INFO_ID, FONT_INFO_FROM_ID)
12505 (FONT_INFO_FROM_FACE): Deleted.
12506 (face_for_font): Adjust prototype.
12507
12508 * fontset.c: Throughout the file, delete all USE_FONT_BACKEND
12509 conditionals. Don't check enable_font_backend. Delete all codes
12510 used only when USE_FONT_BACKEND is not defined.
12511 (get_font_info_func, list_font_func, load_font_func)
12512 (query_font_func, set_frame_fontset_func, find_ccl_program_func)
12513 (get_font_repertory_func): Delete them.
12514 (FONTSET_SPEC, FONT_DEF_NEW, FONT_DEF_SPEC, FONT_DEF_ENCODING)
12515 (FONT_DEF_REPERTORY, RFONT_DEF_FACE, RFONT_DEF_SET_FACE)
12516 (RFONT_DEF_FONT_DEF, RFONT_DEF_SPEC, RFONT_DEF_REPERTORY)
12517 (RFONT_DEF_OBJECT, RFONT_DEF_SET_OBJECT, RFONT_DEF_SCORE)
12518 (RFONT_DEF_SET_SCORE, RFONT_DEF_NEW): New macros.
12519 (fontset_compare_rfontdef): New function.
12520 (reorder_font_vector): Remove the argument CHARSET-ID. Sort
12521 rfont-defs by qsort. Adjusted for the change of font-group vector.
12522 (load_font_get_repertory): Deleted.
12523 (fontset_find_font): Use new macros to ref/set elements of
12524 font-def and rfont-def.
12525 (fontset_font): Fix the timing of remembering that no font for C.
12526 (free_face_fontset): Do nothing if the face has no fontset.
12527 (face_suitable_for_char_p): Use new macros to ref/set elements of
12528 rfont-def.
12529 (face_for_char): Likewise. Call face_for_char with font_object.
12530 (fs_load_font): Delete. Delete #pragma surrounding it.
12531 (fs_query_fontset): Use strcasecmp instead of strcmp.
12532 (generate_ascii_font_name): Adjusted for the format change of
12533 font-spec.
12534 (Fset_fontset_font): Likewise. Use new macros to set elements of
12535 font-def.
12536 (Fnew_fontset): Use font_unparse_xlfd to generate
12537 FONTSET_ASCII (fontset).
12538 (new_fontset_from_font_name): Deleted.
12539 (fontset_from_font): Renamed from new_fontset_from_font. Check if
12540 a fontset is already created for the font. FIx updating of
12541 Vfontset_alias_alist.
12542 (fontset_ascii_font): Deleted.
12543 (Ffont_info): Adjusted for the format change of font-spec.
12544 (Finternal_char_font): Likewise.
12545 (Ffontset_info): Likewise.
12546 (syms_of_fontset): Don't check load_font_func.
12547
12548 * fns.c (internal_equal): Handle PREV_FONT.
12549
12550 * frame.h: Delete USE_FONT_BACKEND conditional.
12551
12552 * frame.c: Throughout the file, delete all USE_FONT_BACKEND
12553 conditionals. Don't check enable_font_backend. Delete all codes
12554 used only when USE_FONT_BACKEND is not defined.
12555 (x_set_font): Call x_new_font, not x_new_fontset2.
12556 (x_set_font_backend): Use FRAME_FONT macro to check if a font is
12557 already set for the frame.
12558
12559 * ftfont.c (ftfont_pattern_entity): Argument FRAME removed. Make
12560 a font-entity by font_make_entity. Use font_intern_prop instead
12561 of intern_downcase. Use FONT_SET_STYLE to set a style-related
12562 font property. If a font is scalable, set avgwidth property to 0.
12563 Set font-entity property by font_put_extra.
12564 (ftfont_list_generic_family): Argument SPEC and REGISTRY removed.
12565 (ffont_driver): Adjusted for the change of struct font_driver.
12566 (ftfont_spec_pattern): New function.
12567 (ftfont_list): Return a list, not vector.
12568 (ftfont_match): Use ftfont_spec_pattern to get a pattern.
12569 (ftfont_list_family): Don't downcase names.
12570 (ftfont_free_entity): Deleted.
12571 (ftfont_open): Return a font-object. Adjusted for the change of
12572 struct font. Get underline_thickness and underline_position from
12573 font property. Don't update dpyinfo->smallest_font_height and
12574 dpyinfo->smallest_char_width.
12575 (ftfont_close): Don't free `struct font'.
12576 (ftfont_has_char): Adjusted for the format change of font-entity.
12577 (ftfont_encode_char, ftfont_text_extents): Likewise.
12578
12579 * ftxfont.c (ftxfont_list): Return a list, not vector.
12580 (ftxfont_open): Return a font-object. Adjusted for the change of
12581 struct font. Get underline_thickness and underline_position from
12582 font property. Don't update dpyinfo->smallest_font_height and
12583 dpyinfo->smallest_char_width.
12584 (ftxfont_close): Don't decrease FRAME_X_DISPLAY_INFO (f)->n_fonts.
12585 (ftxfont_draw): Adjusted for the change of struct font.
12586
12587 * image.c (image_ascent): Don't include "charset.h". Include
12588 "character.h" and "font.h".
12589
12590 * lisp.h (enum pvec_type): New member PREV_FONT.
12591 (Fassoc_string): EXFUN it.
12592
12593 * print.c: Include font.h.
12594 (print_object): Handle font-related objects.
12595
12596 * xdisp.c: Throughout the file, delete all USE_FONT_BACKEND
12597 conditionals. Don't check enable_font_backend. Delete all codes
12598 used only when USE_FONT_BACKEND is not defined.
12599 (handle_auto_composed_prop): Do nothing if it->f is not on a
12600 window system. Check how many following characters can be
12601 displayed by the same font.
12602 (calc_pixel_width_or_height): Type of the 4th arg is changed to
12603 'struct font *'.
12604 (get_char_face_and_encoding): Assign the whole encoding task to
12605 the `encode-char' method of a font driver.
12606 (fill_composite_glyph_string): Adjusted for the change of `struct
12607 face' and `struct glyph_string'.
12608 (fill_glyph_string): Likewise.
12609 (get_per_char_metric): Arguments changed.
12610 (x_get_glyph_overhangs): Adjusted for the change of `struct face'
12611 and `struct glyph_string'.
12612 (produce_stretch_glyph, calc_line_height_property)
12613 (x_produce_glyphs): Likewise.
12614
12615 * xfaces.c: Throughout the file, delete all USE_FONT_BACKEND
12616 conditionals. Don't check enable_font_backend. Delete all codes
12617 used only when USE_FONT_BACKEND is not defined. Use
12618 FONT_XXX_NAME_NUMERIC instead of face_numeric_xxx.
12619 (QCfoundry, QCadstyle, QCregistry, QCspacing, QCsize, QCavgwidth)
12620 (Qp): Extern them.
12621 (clear_font_table, load_face_font, xlfd_lookup_field_contents):
12622 Deleted.
12623 (struct font_name): Deleted.
12624 (xlfd_numeric_value, xlfd_symbolic_value): Deleted.
12625 (compare_fonts_by_sort_order): New function.
12626 (xlfd_numeric_slant, xlfd_symbolic_slant, xlfd_numeric_weight)
12627 (xlfd_symbolic_weight, xlfd_numeric_swidth, xlfd_symbolic_swidth):
12628 Deleted.
12629 (Fx_family_fonts): Use font_list_entities, and sort fonts by
12630 compare_fonts_by_sort_order.
12631 (Fx_font_family_list): Call Ffont_family_list.
12632 (face_numeric_value, face_numeric_weight, face_numeric_slant)
12633 (face_numeric_swidth, face_symbolic_value, face_symbolic_weight)
12634 (face_symbolic_slant, face_symbolic_swidth)
12635 (split_font_name_into_vector, build_font_name_from_vector)
12636 (xlfd_fixed_p, xlfd_point_size, pixel_point_size)
12637 (font_rescale_ratio, split_font_name, build_font_name)
12638 (free_font_names, sort_fonts, x_face_list_fonts)
12639 (face_font_available_p, sorted_font_list, cmp_font_names)
12640 (font_list_1, concat_font_list, font_list, remove_duplicates):
12641 Deleted.
12642 (Fx_list_fonts): Use Ffont_list.
12643 (LFACE_AVGWIDTH): Deleted.
12644 (check_lface_attrs): Don't check LFACE_AVGWIDTH. Check LFACE_FONT
12645 by FONTP.
12646 (lface_fully_specified_p): Don't check LFACE_AVGWIDTH.
12647 (set_lface_from_font_name): Delete it.
12648 (set_lface_from_font): Renamed from
12649 set_lface_from_font_and_fontset. Caller changed. Don't set
12650 LFACE_AVGWIDTH. Use FONT_XXX_FOR_FACE to get a symbol suitable
12651 for face.
12652 (merge_face_vectors): Copy font-spec if necessary.
12653 Clear properties of the font-spec if necessary.
12654 (merge_face_ref): Clear properties of the font-spec if necessary.
12655 (Finternal_set_lisp_face_attribute): Likewise.
12656 (set_font_frame_param): Use font_load_for_lface to load a
12657 font-object, and call Fmodify_frame_parameters with it.
12658 (x_update_menu_appearance): Don't check LFACE_AVGWIDTH. Get XLFD
12659 font name by Ffont_xlfd_name.
12660 (Finternal_lisp_face_attribute_values): Don't check QCweight,
12661 QCslant, and QCwidth.
12662 (Fface_font): Get a font name from font->props[FONT_NAME_INDEX].
12663 (lface_same_font_attributes_p): Don't check LFACE_AVGWIDTH.
12664 Compare fonts by EQ.
12665 (lookup_non_ascii_face): Deleted.
12666 (face_for_font): The 2nd argument changed.
12667 (x_supports_face_attributes_p): Don't check LFACE_AVGWIDTH.
12668 Check atomic font properties by case insensitive.
12669 (realize_non_ascii_face): Set face->overstrike correctly.
12670 (realize_x_face): Likewise. Check if LFACE_FONT is a font_object.
12671 (dump_realized_face): Get font name from
12672 font->props[FONT_NAME_INDEX]. Don't print font_info_id.
12673
12674 * xfns.c: Throughout the file, delete all USE_FONT_BACKEND
12675 conditionals. Don't check enable_font_backend. Delete all codes
12676 used only when USE_FONT_BACKEND is not defined.
12677 (xic_create_xfontset): Original code deleted and renamed from
12678 xic_create_xfontset2. Use FRAME_FONT, not FRAME_FONT_OBJECT.
12679 (x_make_gc): Don't set GCFont in GCs.
12680 (Fx_create_frame) [USE_LUCID]: Set xlwmenu_default_font to a font
12681 opened by "fixed".
12682 (syms_of_xfns): Don't set get_font_info_func, load_font_func,
12683 find_ccl_program_func, query_font_func, set_frame_fontset_func,
12684 get_font_repertory_func.
12685
12686 * xfont.c: Include <stdlib.h> and "ccl.h".
12687 (struct xfont_info): New structure.
12688 (xfont_query_font): Deleted.
12689 (xfont_find_ccl_program): Renamed from x_find_ccl_program and
12690 moved from xterm.c.
12691 (xfont_driver): Adjusted for the change of struct font_driver.
12692 (compare_font_names): New function.
12693 (xfont_list_pattern): Sort font names case insensitively. Make
12694 font_entity by calling font_make_entity. Avoid auto-scaled fonts.
12695 (xfont_list): Return a list, not vector.
12696 (xfont_match): If the font doesn't have QCname property, generate
12697 a name from the other font properties.
12698 (xfont_open): Return a font-object. Adjusted for the change of
12699 struct font. Get underline_thickness and underline_position from
12700 font property. Don't update dpyinfo->smallest_font_height and
12701 dpyinfo->smallest_char_width.
12702 (xfont_close): Don't free struct font.
12703 (xfont_prepare_face): Adjusted for the change of struct font.
12704 (xfont_done_face): Deleted.
12705 (xfont_has_char): Adjusted for the change of struct font.
12706 (xfont_encode_char, xfont_draw): Likewise.
12707 (xfont_check): New function.
12708
12709 * xftfont.c (xftfont_list): Adjusted for the change of `list'
12710 callback function.
12711 (xftfont_match): Adjusted for the format change of font-entity.
12712 (xftfont_open): Adjusted for the format change of font-entity and
12713 font-object. Adjusted for the change of struct font. Return a
12714 font-object. Don't update dpyinfo->smallest_font_height and
12715 dpyinfo->smallest_char_width.
12716 (xftfont_close): Block input while calling XftFontClose.
12717 (xftfont_prepare_face): Don't block input while calling
12718 xftfont_get_colors. Adjusted for the change of struct font.
12719 (xftfont_shape): Return value of error case fixed.
12720
12721 * xrdb.c (x_load_resources): Don't setup a fontset resource.
12722
12723 * xterm.h: Throughout the file, delete all USE_FONT_BACKEND
12724 conditionals.
12725 (FONT_WIDTH): Return (f)->max_width.
12726 (struct x_display_info): Delete member `font'.
12727 (x_list_fonts, x_get_font_info, x_load_font, x_query_font)
12728 (x_find_ccl_program, x_get_font_repertory): Delete externs.
12729 (struct x_output): Change type of `font' to `struct font *'.
12730
12731 * xterm.c: Throughout the file, delete all USE_FONT_BACKEND
12732 conditionals. Don't check enable_font_backend. Delete all codes
12733 used only when USE_FONT_BACKEND is not defined. Don't include ccl.h.
12734 (x_per_char_metric, x_encode_char): Deleted.
12735 (x_set_cursor_gc, x_set_mouse_face_gc): Don't set GCFont.
12736 (x_compute_glyph_string_overhangs): Adjusted for the change of
12737 `struct face'.
12738 (x_draw_glyph_string_foreground)
12739 (x_draw_composite_glyph_string_foreground): Likewise.
12740 (x_draw_glyph_string): Likewise. Use font->underline_position and
12741 font->underline_thickness.
12742 (x_new_font): Renamed from x_new_fontset2.
12743 (x_new_fontset, x_get_font_info, x_list_fonts): Deleted.
12744 (x_check_font): Call `check' method of a font driver.
12745 (x_font_min_bounds, x_compute_min_glyph_bounds, x_load_font)
12746 (x_query_font, x_get_font_repertory): Deleted.
12747 (x_find_ccl_program): Renamed and moved to xfont.c.
12748 (x_redisplay_interface): Adjusted for the change of `struct
12749 redisplay_interface'.
12750
12751 * w32fns.c: Throughout the file, delete all USE_FONT_BACKEND
12752 conditionals. Don't check enable_font_backend. Delete all codes
12753 used only when USE_FONT_BACKEND is not defined. Surround non-used
12754 code by "#ifdef OLD_FONT" and "endif".
12755 (Fw32_select_font): Use FONT_COMPAT to get old font structure.
12756
12757 * w32font.h (struct w32font_info): New member.
12758 (FONT_COMPAT): New macro.
12759 (w32font_open_internal): Prototype adjusted.
12760
12761 * w32gui.h (XGCValues): Surround `XFontStruct *font' by "if
12762 OLD_FONT" and "endif".
12763
12764 * w32font.c: Throughout the file, delete all USE_FONT_BACKEND
12765 conditionals. Don't check enable_font_backend. Delete all codes
12766 used only when USE_FONT_BACKEND is not defined.
12767 (w32font_open): Return a font-object. Make a font-object by
12768 font_make_object. Adjusted for the change of struct w32font_info.
12769 (w32font_close): Don't free struct font. Adjusted for the change
12770 of struct w32font_info.
12771 (w32font_encode_char, w32font_text_extents, w32font_draw):
12772 Adjusted for the change of struct w32font_info.
12773 (w32font_draw): Likewise.
12774 (w32font_list_internal): Return a list, not vector.
12775 (w32font_open_internal): Change the 4th arg to font-object.
12776 Adjusted for the change of struct w32font_info and font-object format.
12777 (add_font_name_to_list): Don't downcase names.
12778 (w32_enumfont_pattern_entity): Make a font-entity by
12779 font_make_entity. Adjusted for the format change of font-entity.
12780 Use FONT_SET_STYLE to set a style-related font property. If a
12781 font is scalable, set avgwidth property to 0. Set font-entity
12782 property by font_put_extra.
12783 (font_matches_spec): Adjusted for the format change of font-entity.
12784 (w32_weight_table, w32_decode_weight): New variables.
12785 (w32_encode_weight): New function.
12786 (fill_in_logfont): Adjusted for the format change of font-spec.
12787 (w32font_full_name): Use FONT_WEIGHT_SYMBOLIC to get a symbol
12788 weight value.
12789 (w32font_driver): Adjusted for the change of struct font_driver.
12790
12791 * w32term.h: Throughout the file, delete all USE_FONT_BACKEND
12792 conditionals. Don't check enable_font_backend. Surround non-used
12793 code by "#ifdef OLD_FONT" and "endif".
12794 (FONT_WIDTH, FONT_HEIGHT, FONT_BASE, FONT_DESCENT)
12795 (FONT_AVG_WIDTH): Adjusted for the change of struct font.
12796
12797 * w32term.c: Throughout the file, delete all USE_FONT_BACKEND
12798 conditionals. Don't check enable_font_backend. Delete all codes
12799 used only when USE_FONT_BACKEND is not defined. Surround non-used
12800 code by "#ifdef OLD_FONT" and "endif".
12801
12802 * w32uniscribe.c: Delete USE_FONT_BACKEND conditional.
12803 (uniscribe_open): Return value changed to font-object.
12804 Adjusted for the format change of font-object.
12805 (uniscribe_otf_capability): Adjusted for the change of struct font.
12806 (add_opentype_font_name_to_list): Don't downcase names.
12807 (uniscribe_font_driver): Adjusted for the change of struct
12808 font_driver.
12809
12810 2008-05-13 Chong Yidong <cyd@stupidchicken.com>
12811
12812 * dispnew.c (update_frame_1): Check if tty output is still valid
12813 before flushing it.
12814
12815 2008-05-13 Jan Djärv <jan.h.d@swipnet.se>
12816
12817 * xterm.c (handle_one_xevent): Don't pass buttons higher than 3
12818 to Gtk+ menus.
12819
12820 2008-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
12821
12822 * dired.c (file_name_completion): Tweak the code so as to always do it
12823 in a single pass. Tighten the scope of some variables.
12824
12825 * dired.c (Qdefault_directory): New var.
12826 (file_name_completion): Use it instead of Fexpand_file_name.
12827 (syms_of_dired): Initialize it.
12828
12829 2008-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
12830
12831 * fileio.c (double_dollars): Remove dead code.
12832
12833 2008-05-10 Eli Zaretskii <eliz@gnu.org>
12834
12835 * dired.c (Ffile_attributes, Fdirectory_files_and_attributes):
12836 Mention w32-get-true-file-attributes in doc string.
12837
12838 * w32proc.c (syms_of_ntproc) <w32-get-true-file-attributes>: Doc fix.
12839
12840 2008-05-09 Glenn Morris <rgm@gnu.org>
12841
12842 * fileio.c (Fread_file_name): Remove reference to insdef, deleted
12843 2008-04-23.
12844
12845 2008-05-09 Eli Zaretskii <eliz@gnu.org>
12846
12847 Support for reporting owner and group of each file on MS-Windows:
12848 * dired.c (stat_uname, stat_gname): New functions, with special
12849 implementation for w32.
12850 (Ffile_attributes): Use them instead of getpwuid and getgrgid.
12851
12852 * w32.c: Rename the_passwd_* to dflt_passwd_*.
12853 (dflt_group_name): New static variable.
12854 (dflt_group): Rename from the_group.
12855 (init_user_info): Init dflt_group fields. Get user's group name
12856 from LookupAccountSid.
12857 (g_b_init_get_file_security, g_b_init_get_security_descriptor_owner)
12858 (g_b_init_get_security_descriptor_group, g_b_init_is_valid_sid):
12859 New initialization states.
12860 (globals_of_w32): Initialize them to zero. Initialize the default
12861 group name to "None".
12862 (GetFileSecurity_Name): New global var, the name of the function
12863 to call for GetFileSecurity.
12864 (GetFileSecurity_Proc, GetSecurityDescriptorOwner_Proc)
12865 (GetSecurityDescriptorGroup_Proc, IsValidSid_Proc): New typedefs.
12866 (get_file_security, get_security_descriptor_owner)
12867 (get_security_descriptor_group, is_valid_sid)
12868 (get_file_security_desc, get_rid, get_name_and_id)
12869 (get_file_owner_and_group): New functions.
12870 (stat): Use get_file_security_desc and get_file_owner_and_group to
12871 report the owner and primary group of each file. Don't ignore the
12872 high 32 bits of file's size, now that st_size is 64-bit wide.
12873 Fix test when to get true file attributes.
12874 (init_user_info): Use get_rid instead of equivalent inline code.
12875 (fstat): Don't ignore the high 32 bits of file's size.
12876
12877 2008-05-09 Chong Yidong <cyd@stupidchicken.com>
12878
12879 * image.c (png_load): Use correct bit-depth for setting background
12880 color.
12881
12882 2008-05-08 Eli Zaretskii <eliz@gnu.org>
12883
12884 * Makefile.in (lisp, shortlisp): Rename epa-file-hook.elc to
12885 epa-hook.elc.
12886
12887 2008-05-08 Juanma Barranquero <lekktu@gmail.com>
12888
12889 * font.c (Ffont_match_p): Don't use `iff' in docstring.
12890
12891 2008-05-07 Dan Nicolaescu <dann@ics.uci.edu>
12892
12893 * macfns.c (Fx_create_frame): Make a copy of frame parameters
12894 because the original parameters are in pure storage now.
12895 (mac_window): Remove unused params. Update callers.
12896
12897 2008-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
12898
12899 * lread.c (substitute_object_recurse): Use lower-level primitives.
12900 Don't signal errors when traversing sub-char-tables.
12901 Don't loop over all the possible characters when traversing char-tables.
12902
12903 * print.c (print_preprocess): Add sub-char-tables to the print-table,
12904 just like we do in print.c.
12905
12906 2008-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
12907
12908 * minibuf.c (Ftry_completion): Remove code left over from when we used
12909 scmp instead of Fcompare_strings.
12910
12911 2008-05-04 Juanma Barranquero <lekktu@gmail.com>
12912
12913 * w32fns.c (Fw32_battery_status): Fix computation of %t (h:min) format.
12914
12915 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12916
12917 * image.c [USE_MAC_IMAGE_IO] (image_load_image_io):
12918 Create bitmap context in native byte order.
12919
12920 * macterm.c (XDrawLine)
12921 (XCreatePixmapFromBitmapData) [USE_MAC_IMAGE_IO]: Create bitmap
12922 context in native byte order.
12923
12924 2008-05-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12925
12926 * config.in: Regenerate.
12927
12928 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN) [USE_MAC_IMAGE_IO]:
12929 New definitions for Image I/O support.
12930 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
12931 (mac_create_cg_image_from_image, x_create_x_image_and_pixmap)
12932 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12933 (mac_data_provider_release_data, image_load_image_io)
12934 [USE_MAC_IMAGE_IO]: New functions.
12935 (CGImageCreateWithPNGDataProviderProcType) [MAC_OSX]: Remove typedef.
12936 (MyCGImageCreateWithPNGDataProvider) [MAC_OSX]: Remove variable.
12937 (init_image_func_pointer) [MAC_OSX]: Remove function.
12938 (image_load_quartz2d) [MAC_OSX]: Check availability of
12939 CGImageCreateWithPNGDataProvider at compile time.
12940 Use lowercase `false' for boolean constant.
12941 (png_load, jpeg_load, tiff_load, gif_load) [USE_MAC_IMAGE_IO]:
12942 Use image_load_image_io.
12943 (png_load) [!USE_MAC_IMAGE_IO && MAC_OSX]:
12944 Don't check MyCGImageCreateWithPNGDataProvider.
12945 (init_image) [MAC_OSX && TARGET_API_MAC_CARBON]:
12946 Don't call init_image_func_pointer.
12947
12948 * macgui.h (Pixmap) [USE_MAC_IMAGE_IO]: New definition for Image I/O.
12949
12950 * macterm.c (mac_cg_color_space_rgb) [USE_CG_DRAWING]:
12951 Make variable non-static.
12952 (XDrawLine, XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
12953 [USE_MAC_IMAGE_IO]: Add implementations for Image I/O support.
12954
12955 * macterm.h (ARGB_TO_ULONG, ALPHA_FROM_ULONG): New macros.
12956 (RED_FROM_ULONG): Mask off higher bits.
12957 (mac_cg_color_space_rgb) [USE_MAC_IMAGE_IO]: New extern.
12958
12959 * s/darwin.h [HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
12960 Include AvailabilityMacros.h.
12961 (USE_MAC_IMAGE_IO, LIBS_IMAGE) [HAVE_CARBON]: New defines.
12962 (LIBS_CARBON) [HAVE_CARBON]: Use LIBS_IMAGE.
12963
12964 2008-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
12965
12966 * chartab.c (Fset_char_table_range): If range is t, really set all
12967 chars to that value.
12968
12969 2008-05-03 Eli Zaretskii <eliz@gnu.org>
12970
12971 * dired.c (Ffile_attributes): Don't allow the device number become
12972 negative.
12973
12974 2008-05-02 Daiki Ueno <ueno@unixuser.org>
12975
12976 * Makefile.in (lisp, shortlisp): Add epa-file-hook.elc.
12977
12978 2008-05-02 Juri Linkov <juri@jurta.org>
12979
12980 * minibuf.c (Fread_from_minibuffer, Fread_string, Fread_command)
12981 (Fread_variable, Fread_buffer, Fcompleting_read): Document the
12982 DEFAULT argument as a list of default values in docstrings.
12983
12984 2008-05-01 Chong Yidong <cyd@stupidchicken.com>
12985
12986 * puresize.h (BASE_PURESIZE): Increase to 1210000.
12987
12988 2008-05-01 Martin Rudalics <rudalics@gmx.at>
12989
12990 * dispnew.c (change_frame_size_1): Preserve small windows when
12991 shrinking frames by calling set_window_height|width with third
12992 arg 2.
12993
12994 * window.h (struct window): Replace field too_small_ok by field
12995 resize_proportionally.
12996
12997 * window.c (make_window): Initialize resize_proportionally.
12998 (enlarge_window): Temporarily set resize_proportionally to make
12999 sure that shrink_windows does scale the window proportionally.
13000 (shrink_windows): When window has resize_proportionally set try
13001 to shrink it proportionally by stealing from other windows.
13002 (struct saved_window, Fset_window_configuration)
13003 (compare_window_configurations): Handle resize_proportionally.
13004 (WINDOW_TOTAL_SIZE): New macro.
13005 (window_min_size, shrink_windows, size_window): Use it.
13006 (check_min_window_sizes): Remove. Invalid values of
13007 window-min-height|width are handled by window_min_size_2 now.
13008 (size_window, Fsplit_window, enlarge_window)
13009 (adjust_window_trailing_edge, grow_mini_window): Don't call
13010 check_min_window_sizes.
13011 (window_min_size_2, window_min_size_1, window_min_size):
13012 New argument safe_p for retrieving "safe" minimum sizes.
13013 (Fdisplay_buffer, Fsplit_window, enlarge_window)
13014 (adjust_window_trailing_edge, grow_mini_window):
13015 Adjust arguments of window_min_size... functions.
13016 (shrink_windows): Argument min_size removed. New argument
13017 safe_p allows shrinking windows to their safe minimum sizes.
13018 Calculate minimum size and decide whether a window shall be
13019 deleted for each window individually.
13020 (size_window): When nodelete_p equals 2, tell shrink_windows to
13021 delete windows only if their new minimum size is no more safe.
13022 (shrink_window_lowest_first): Call window_min_size_1 to make
13023 sure to preserve modeline of bottom-most window when resizing
13024 the minibuffer.
13025 (Fset_window_configuration, Fcurrent_window_configuration)
13026 (compare_window_configurations): Do not handle
13027 window-min-height|width any more.
13028 (syms_of_window): Clarify window-min-height|width doc-strings.
13029
13030 2008-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
13031
13032 * dired.c (file_name_completion): Fix up the encoding/decoding issue
13033 some more. Copy some of the code from Ftry_completions.
13034 Remove special case code that dates back to initial revision when the
13035 slash was only added when necessary and that can't trigger nowadays.
13036
13037 2008-04-27 Kenichi Handa <handa@m17n.org>
13038
13039 * font.c (font_prop_validate): Signal `error' instead of `font'.
13040
13041 2008-04-29 Jason Rumney <jasonr@gnu.org>
13042
13043 * w32fns.c (Fw32_battery_status): New defun.
13044 (syms_of_w32fns): Defsubr it.
13045
13046 2008-04-28 Andreas Schwab <schwab@suse.de>
13047
13048 * dired.c (file_name_completion): Fix another mixing of encoded
13049 and decoded names.
13050
13051 2008-04-28 Juanma Barranquero <lekktu@gmail.com>
13052
13053 * w32fns.c (Fw32_define_rgb_color): Fix typo in docstring.
13054
13055 2008-04-27 Juanma Barranquero <lekktu@gmail.com>
13056
13057 * fringe.c (Fdefine_fringe_bitmap): Doc fix.
13058
13059 2008-04-27 Andreas Schwab <schwab@suse.de>
13060
13061 * dired.c (file_name_completion): Fix inappropriate mixing of
13062 encoded and decoded names.
13063
13064 * xterm.c (XTread_socket): Fix use of uninitialized variable.
13065
13066 * puresize.h (BASE_PURESIZE): Increase to 1200000.
13067
13068 2008-04-26 Eli Zaretskii <eliz@gnu.org>
13069
13070 * dired.c (Ffile_attributes) [WINDOWSNT]: Undo change from
13071 2008-03-31, it's not needed anymore with `struct stat' definition
13072 on nt/inc/sys/stat.h. Undo changes from 2007-01-12 and 2007-01-13
13073 for the same reasons.
13074
13075 2008-04-25 Dennis Gilmore <ausil@fedoraproject.org> (tiny change)
13076
13077 * m/sparc.h: Additional redefinitions for GNU/Linux.
13078
13079 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13080
13081 * macterm.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: New variable.
13082 (syms_of_macterm) [USE_MAC_TSM]: Defvar it.
13083 (Qmouse_drag_overlay) [MAC_OSX]: New variable.
13084 (syms_of_macterm) [MAC_OSX]: Intern and staticpro it.
13085 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13086 (mac_ax_selected_text_range) [MAC_OSX]: New functions.
13087 (mac_ax_number_of_characters) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13088 Likewise.
13089
13090 * mactoolbox.c (Vmac_ts_active_input_buf) [USE_MAC_TSM]: Add extern.
13091 (fast_find_position, x_y_to_hpos_vpos, mac_ax_selected_text_range)
13092 (mac_ax_number_of_characters): Add externs.
13093 (mac_get_selected_range, mac_store_buffer_text_to_unicode_chars)
13094 [USE_MAC_TSM]: Likewise.
13095 (mac_handle_text_input_event) [MAC_OSX]:
13096 Handle kEventTextInputOffsetToPos for no active input area case.
13097 Handle kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13098 (mac_handle_document_access_event)
13099 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: New function.
13100 (install_application_handler) [MAC_OSX]: Register handlers for
13101 kEventTextInputPosToOffset and kEventTextInputGetSelectedText.
13102 (install_application_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
13103 Register mac_handle_document_access_event.
13104
13105 * xdisp.c (x_y_to_hpos_vpos, fast_find_position) [HAVE_CARBON]:
13106 Make functions non-static.
13107
13108 2008-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
13109
13110 * fileio.c (Vread_file_name_function, Vread_file_name_predicate)
13111 (read_file_name_completion_ignore_case, insert_default_directory)
13112 (Qdefault_directory): Move to minibuffer.el.
13113 (Fread_file_name): Call the new `read-file-name' instead.
13114
13115 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13116
13117 * mac.c (create_apple_event) [TARGET_API_MAC_CARBON]:
13118 Make function non-static.
13119 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]:
13120 Remove function.
13121 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13122 Move to mactoolbox.c.
13123 (mac_event_parameters_to_lisp) [TARGET_API_MAC_CARBON]: New function.
13124
13125 * macgui.h (CGFloat) [!CGFLOAT_DEFINED]: New typedef.
13126 (mac_rect_make): New macro.
13127
13128 * macterm.c (mac_draw_image_string_atsui) [MAC_OSX]: Use CGFloat
13129 instead of float.
13130 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13131 (init_cg_color, mac_draw_line, mac_draw_cg_image, XSetForeground)
13132 (XSetBackground) [USE_CG_DRAWING]: Likewise.
13133 (mac_draw_image_string_atsui) [MAC_OSX]: Use mac_rect_make instead of
13134 CGRectMake.
13135 (mac_draw_image_string_cg) [USE_CG_TEXT_DRAWING]: Likewise.
13136 (mac_erase_rectangle, mac_draw_cg_image, mac_fill_rectangle)
13137 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Likewise.
13138 (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13139 instead of WindowRef in argument type.
13140 (XCreatePixmap) [!MAC_OS8]: Don't call SetPortWindowPort.
13141 (mac_invert_rectangle): Use CGContextSetBlendMode if available.
13142 (mac_set_clip_rectangles, mac_reset_clip_rectangles): Take argument F
13143 instead of DISPLAY. All uses changed.
13144 (mac_handle_size_change): Don't call SET_FRAME_GARBAGED.
13145 (x_calc_absolute_position): Simplify so as not to use
13146 FRAME_PIXEL_WIDTH/FRAME_PIXEL_HEIGHT.
13147
13148 * macterm.h (XCreatePixmap, XCreatePixmapFromBitmapData): Use Window
13149 instead of WindowRef in argument type.
13150 (create_apple_event_from_event_ref, create_apple_event_from_drag_ref)
13151 [TARGET_API_MAC_CARBON]: Remove externs.
13152 (create_apple_event, mac_event_parameters_to_lisp)
13153 [TARGET_API_MAC_CARBON]: Add externs.
13154
13155 * mactoolbox.c (Vmac_ts_script_language_on_focus)
13156 (saved_ts_script_language_on_focus) [USE_MAC_TSM]: Remove externs.
13157 (XTread_socket) [USE_MAC_TOOLBAR]: Select window if its structure part
13158 is clicked.
13159 (x_activate_menubar): Remove extern for saved_menu_event_location.
13160 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]:
13161 Move from mac.c.
13162
13163 2008-04-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13164
13165 * alloc.c [!SYSTEM_MALLOC && !SYNC_INPUT] (uninterrupt_malloc)
13166 [HAVE_GTK_AND_PTHREAD && !DOUG_LEA_MALLOC]: Don't use recursive mutex.
13167
13168 2008-04-23 Jason Rumney <jasonr@gnu.org>
13169
13170 * w32.c (stat): When Vw32_get_true_file_attributes is Qlocal, get
13171 attributes only for local files.
13172
13173 * w32proc.c (syms_of_ntproc): Change Vw32_get_true_file attributes
13174 default to Qlocal.
13175
13176 2008-04-22 Juri Linkov <juri@jurta.org>
13177
13178 * buffer.c (Fswitch_to_buffer): Change interactive spec to call
13179 read-buffer-to-switch instead of using the letter "B".
13180
13181 2008-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
13182
13183 * fileio.c (Qdefault_directory): New variable.
13184 (Fread_file_name): Use it to pass `dir' to the completion functions.
13185
13186 2008-04-20 Chong Yidong <cyd@stupidchicken.com>
13187
13188 * xdisp.c (pos_visible_p): Check if iterator stops on a display string.
13189
13190 2008-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
13191
13192 * keyboard.c (Vpre_help_message): Remove.
13193 (show_help_echo): Remove default C code.
13194
13195 * dired.c (directory_files_internal, file_name_completion):
13196 Only call ENCODE_FILE if the string is indeed decoded.
13197
13198 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13199
13200 * Makefile.in (TOOLKIT_DEFINES): Remove.
13201 (LIBW): Use a bit less #if, remove left over OPEN_LOOK stuff.
13202
13203 2008-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13204
13205 * Makefile.in (MAC_OBJ): Add mactoolbox.o.
13206 (mactoolbox.o): New target.
13207
13208 * mac.c [MAC_OSX] (select_and_poll_event, sys_select):
13209 Use mac_run_loop_run_once instead of CFRunLoopRunInMode.
13210
13211 * macfns.c (x_set_background_color, mac_window, x_create_tip_frame):
13212 Use mac_set_frame_window_background instead of XSetWindowBackground.
13213 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]:
13214 Use mac_is_window_toolbar_visible instead of IsWindowToolbarVisible.
13215 (x_set_name_internal) [TARGET_API_MAC_CARBON]: Use mac_set_window_title
13216 instead of SetWindowTitleWithCFString.
13217 (mac_update_proxy_icon) [TARGET_API_MAC_CARBON]: Remove BLOCK_INPUT.
13218 Move function to mactoolbox.c.
13219 (mac_update_title_bar) [TARGET_API_MAC_CARBON]:
13220 Use mac_set_window_modified instead of SetWindowModified.
13221 Add BLOCK_INPUT around mac_set_window_modified/mac_update_proxy_icon.
13222 (mac_window, x_create_tip_frame): Use mac_create_frame_window.
13223 (Fx_focus_frame): Use mac_front_non_floating_window instead of
13224 FrontNonFloatingWindow. Use mac_activate_window instead of
13225 ActivateWindow. Use mac_active_non_floating_window instead of
13226 ActiveNonFloatingWindow.
13227 (show_hourglass, hide_hourglass) [TARGET_API_MAC_CARBON]:
13228 Use mac_show_hourglass and mac_hide_hourglass.
13229 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use mac_get_global_mouse
13230 instead of GetGlobalMouse.
13231 (Fx_show_tip): Use mac_move_window/mac_size_window/mac_show_window
13232 instead of MoveWindow/SizeWindow/ShowWindow, respectively.
13233 Use mac_bring_window_to_front instead of BringToFront.
13234 (Qfile_name_history) [TARGET_API_MAC_CARBON]: Move extern to
13235 mactoolbox.c.
13236 (Fx_file_dialog) [TARGET_API_MAC_CARBON]: Move function body to
13237 mac_file_dialog in mactoolbox.c. Use mac_file_dialog.
13238 (mac_nav_event_callback) [TARGET_API_MAC_CARBON]: Move function to
13239 mactoolbox.c.
13240
13241 * macgui.h [!HAVE_CARBON]: Include Quickdraw.h instead of QuickDraw.h.
13242 (XtPointer): Move typedef from macmenu.c.
13243 (enum button_type): Move enum from macmenu.c.
13244 (widget_value): Move typedef from macmenu.c.
13245 (M_APPLE, I_ABOUT, EXTRA_STACK_ALLOC, ARGV_STRING_LIST_ID)
13246 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13247 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13248 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13249 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13250 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13251 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13252 (DIALOG_ICON_TOP_MARGIN): Move defines from macmenu.c.
13253 (Selection): Move typedef from macselect.c.
13254 (RAM_TOO_LARGE_ALERT_ID, ABOUT_ALERT_ID) [MAC_OS8]: Move defines from
13255 macterm.c.
13256 (mac_set_window_title, mac_set_window_modified, mac_is_window_visible)
13257 (mac_is_window_collapsed, mac_bring_window_to_front)
13258 (mac_send_window_behind, mac_hide_window, mac_show_window)
13259 (mac_collapse_window, mac_front_non_floating_window)
13260 (mac_active_non_floating_window, mac_activate_window)
13261 (mac_move_window_structure, mac_move_window, mac_size_window)
13262 (mac_get_global_mouse, mac_is_window_toolbar_visible): New defines.
13263
13264 * macmenu.c [!TARGET_API_MAC_CARBON]: Move includes to mactoolbox.c.
13265 (enum mac_menu_kind): Move enum to mactoolbox.c.
13266 (min_menu_id): Move variable to mactoolbox.c.
13267 (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]: Likewise.
13268 (DIALOG_WINDOW_RESOURCE): Move define to mactoolbox.c.
13269 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
13270 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
13271 [TARGET_API_MAC_CARBON]: Likewise.
13272 (XtPointer): Move typedef to macgui.h.
13273 (enum button_type): Move enum to macgui.h.
13274 (widget_value): Move typedef to macgui.h.
13275 (DIALOG_LEFT_MARGIN, DIALOG_TOP_MARGIN, DIALOG_RIGHT_MARGIN)
13276 (DIALOG_BOTTOM_MARGIN, DIALOG_MIN_INNER_WIDTH, DIALOG_MAX_INNER_WIDTH)
13277 (DIALOG_BUTTON_BUTTON_HORIZONTAL_SPACE)
13278 (DIALOG_BUTTON_BUTTON_VERTICAL_SPACE, DIALOG_BUTTON_MIN_WIDTH)
13279 (DIALOG_TEXT_MIN_HEIGHT, DIALOG_TEXT_BUTTONS_VERTICAL_SPACE)
13280 (DIALOG_ICON_WIDTH, DIALOG_ICON_HEIGHT, DIALOG_ICON_LEFT_MARGIN)
13281 (DIALOG_ICON_TOP_MARGIN): Move defines to macgui.h.
13282 (popup_activated_flag): Make variable non-static.
13283 (x_activate_menubar, install_menu_quit_handler, pop_down_menu)
13284 (add_menu_item, fill_menu, dispose_menus):
13285 Move functions to mactoolbox.c.
13286 (restore_show_help_function, menu_target_item_handler)
13287 (install_menu_target_item_handler, mac_handle_dialog_event)
13288 (install_dialog_event_handler, pop_down_dialog, create_and_show_dialog)
13289 [TARGET_API_MAC_CARBON]: Likewise.
13290 (menu_quit_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]: Likewise.
13291 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13292 (find_and_call_menu_selection, name_is_separator): Make function
13293 non-static.
13294 (Vshow_help_function, timer_check) [TARGET_API_MAC_CARBON]: Move extern
13295 to mactoolbox.c.
13296 (set_frame_menubar): Don't call install_menu_quit_handler.
13297 (menu_item_selection): New variable.
13298 (mac_menu_show): Use create_and_show_popup_menu.
13299 (create_and_show_dialog) [TARGET_API_MAC_CARBON]: Don't return
13300 selection but set variable menu_item_selection. All uses changed.
13301 (mac_fill_menubar): Rename from fill_menubar. All uses changed.
13302 Call install_menu_quit_handler. Move to mactoolbox.c.
13303
13304 * macselect.c [!TARGET_API_MAC_CARBON]: Don't include Scrap.h.
13305 (Selection): Move typedef to macgui.h.
13306 (Vselection_converter_alist, Qmac_scrap_name, Qmac_ostype)
13307 (Vmac_apple_event_map, Qmac_apple_event_class, Qmac_apple_event_id):
13308 Make variables non-static.
13309 (Vmac_dnd_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13310 (mac_handle_apple_event, cleanup_all_suspended_apple_events):
13311 Make functions non-static.
13312 (Vmac_service_selection) [MAC_OSX]: Likewise.
13313 (mac_get_selection_from_symbol, get_flavor_type_from_symbol)
13314 (mac_valid_selection_target_p, mac_clear_selection)
13315 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13316 (mac_put_selection_value, mac_selection_has_target_p)
13317 (mac_get_selection_value, mac_get_selection_target_list)
13318 (init_apple_event_handler, install_drag_handler, remove_drag_handler):
13319 Move functions to mactoolbox.c.
13320 (mac_do_track_drag, mac_do_receive_drag) [TARGET_API_MAC_CARBON]:
13321 Likewise.
13322 (copy_scrap_flavor_data, mac_handle_service_event)
13323 (install_service_handler) [MAC_OSX]: Likewise.
13324 (syms_of_macselect) <Vmac_dnd_known_types>:
13325 Use mac_dnd_default_known_types.
13326
13327 * macterm.h (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y):
13328 Move to mactoolbox.c.
13329 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): Change to 15.
13330 (Fx_selection_owner_p): Add EXFUN.
13331 (install_window_handler, remove_window_handler, XSetWindowBackground):
13332 Remove externs.
13333 (do_apple_menu) [!TARGET_API_MAC_CARBON]: Likewise.
13334 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Likewise.
13335 (x_raise_frame, x_lower_frame, mac_alert_sound_play)
13336 (install_application_handler, mac_get_frame_bounds, mac_get_frame_mouse)
13337 (mac_convert_frame_point_to_global, mac_set_frame_window_background)
13338 (mac_update_begin mac_update_end, mac_frame_up_to_date, x_flush)
13339 (mac_create_frame_window, mac_dispose_frame_window, mac_begin_clip)
13340 (mac_end_clip, mac_create_scroll_bar, mac_dispose_scroll_bar)
13341 (mac_set_scroll_bar_bounds, mac_redraw_scroll_bar, mac_fill_menubar)
13342 (create_and_show_popup_menu, mac_get_selection_from_symbol)
13343 (mac_valid_selection_target_p, mac_clear_selection)
13344 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
13345 (mac_put_selection_value, mac_selection_has_target_p)
13346 (mac_get_selection_value, mac_get_selection_target_list): Add externs.
13347 (mac_update_proxy_icon, mac_show_hourglass, mac_hide_hourglass)
13348 (mac_reposition_hourglass, mac_file_dialog, create_and_show_dialog)
13349 (mac_dnd_default_known_types) [TARGET_API_MAC_CARBON]: Likewise.
13350 (mac_run_loop_run_once) [MAC_OSX]: Likewise.
13351 (mac_dialog) [!TARGET_API_MAC_CARBON]: Likewise.
13352 (mac_begin_cg_clip, mac_end_cg_clip) [USE_CG_DRAWING]: Likewise.
13353 (x_set_toolkit_scroll_bar_thumb) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13354 (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]: Likewise.
13355
13356 * mactoolbox.c: New file.
13357
13358 2008-04-18 Jason Rumney <jasonr@gnu.org>
13359
13360 * dired.c (Ffile_attributes) [WINDOWSNT]: Cast uid and gid to unsigned.
13361
13362 2008-04-18 Stefan Monnier <monnier@iro.umontreal.ca>
13363
13364 * character.c (Fmultibyte_char_to_unibyte):
13365 Return latin1 chars unchanged.
13366
13367 * fileio.c (Fexpand_file_name): Refine last fix so `nm' is only
13368 relocated if it points to `name'.
13369
13370 2008-04-17 Kenichi Handa <handa@m17n.org>
13371
13372 * data.c (Faset): Allow setting a multibyte character in an
13373 ASCII-only unibyte string.
13374
13375 * lisp.h (STRING_SET_MULTIBYTE): New macro.
13376
13377 2008-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
13378
13379 * Makefile.in: Don't use HAVE_GTK and don't -DUSE_GTK since it's now
13380 done in config.h.
13381
13382 2008-04-16 Juanma Barranquero <lekktu@gmail.com>
13383
13384 * character.c (Fchar_bytes, Fchar_width, Fstring_width)
13385 (Fchar_direction): Add usage in the docstring.
13386
13387 2008-04-15 Chong Yidong <cyd@stupidchicken.com>
13388
13389 * keyboard.c (read_key_sequence): Remove always-true checks.
13390
13391 2008-04-14 Jason Rumney <jasonr@gnu.org>
13392
13393 * w32font.c (w32font_open_internal): Set max_bounds.descent in
13394 compatibility struct, for better underline positioning.
13395
13396 2008-04-13 David Hansen <david.hansen@gmx.net>
13397
13398 * dbusbind.c (dbus-get-unique-name): Remove extra copying of name
13399 string.
13400
13401 2008-04-12 Dan Nicolaescu <dann@ics.uci.edu>
13402
13403 * m/hp800.h (XUINT, XSET): Remove.
13404
13405 2008-04-12 Juanma Barranquero <lekktu@gmail.com>
13406
13407 * fileio.c (Fexpand_file_name): Add declaration for `p' missing in
13408 previous change.
13409
13410 2008-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
13411
13412 * fileio.c (Fexpand_file_name): Tighten the scope of `p' and `o' vars.
13413 Relocate `nm' after calling DECODE_FILE, in case the GC was run.
13414
13415 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13416
13417 * keymap.h (map_keymap_canonical): Declare.
13418 * xmenu.c (single_keymap_panes): Use it.
13419
13420 2008-04-11 Glenn Morris <rgm@gnu.org>
13421
13422 * eval.c (Fdefvaralias): If the alias is bound and the target is not,
13423 set the target's value to that of the alias.
13424
13425 2008-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
13426
13427 * term.c (set_tty_color_mode): Left over typo.
13428
13429 2008-04-10 Michael Albinus <michael.albinus@gmx.de>
13430
13431 * fileio.c (Fmake_symbolic_link): Surround code by #ifdef S_IFLNK
13432 only after check for file name handler functions. Signal, when
13433 native functionality is not supported.
13434 (syms_of_fileio): Declare it unconditionally.
13435
13436 2008-04-10 Jason Rumney <jasonr@gnu.org>
13437
13438 * w32menu.c (is_simple_dialog, simple_dialog_show): New functions.
13439 (Fx_popup_dialog): Handle simple yes/no questions as dialogs.
13440
13441 * w32.c (logon_network_drive): Also logon to remote drives that
13442 are mapped to drive letters.
13443
13444 2008-04-10 Glenn Morris <rgm@gnu.org>
13445
13446 * xdisp.c (truncate-partial-width-windows): Doc fix.
13447
13448 2008-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
13449
13450 * fileio.c (read_file_name_cleanup, Fread_file_name_internal):
13451 Move functions to minibuffer.el.
13452 (syms_of_fileio): Don't declare them.
13453
13454 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13455
13456 * minibuf.c (Vcompletion_auto_help): Move to minibuffer.el.
13457 (syms_of_minibuf): Remove its initialization.
13458
13459 * minibuf.c (temp_echo_area_glyphs): Remove unused function.
13460
13461 2008-04-09 Juanma Barranquero <lekktu@gmail.com>
13462
13463 * editfns.c (Ffield_string_no_properties): Fix typo in docstring.
13464
13465 2008-04-09 Jason Rumney <jasonr@gnu.org>
13466
13467 * makefile.w32-in (distclean): Delete makefile too.
13468 (maintainer-clean): New target.
13469
13470 * xdisp.c (redisplay_internal) [!WINDOWSNT]: Conditionalize last change.
13471
13472 * w32term.c (w32_compute_glyph_string_overhangs): Compute overhangs
13473 for new font backend and composite cases.
13474
13475 2008-04-09 Jan Djärv <jan.h.d@swipnet.se>
13476
13477 * atimer.c (alarm_signal_handler): Call run_timers if not SYNC_INPUT.
13478 Most of the code moved to run_timers.
13479 (do_pending_atimers): Call run_timers.
13480 (run_timers): New function.
13481
13482 * sysdep.c (emacs_write): If SYNC_INPUT and pending_atimers,
13483 run atimers.
13484
13485 * process.c (wait_reading_process_output): The same as above.
13486
13487 2008-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
13488
13489 * minibuf.c (last_exact_completion): Remove variable.
13490 (Fdelete_minibuffer_contents, do_completion, Fminibuffer_complete)
13491 (complete_and_exit_1, complete_and_exit_2)
13492 (Fminibuffer_complete_and_exit, Fminibuffer_complete_word)
13493 (Fdisplay_completion_list, display_completion_list_1)
13494 (Fminibuffer_completion_help, Fself_insert_and_exit)
13495 (Fexit_minibuffer, Fminibuffer_message): Move functions to
13496 minibuffer.el.
13497 (syms_of_minibuf): Remove corresponding initializations.
13498
13499 * keyboard.c (Qdeactivate_mark): New var.
13500 (command_loop_1): Use it to call `deactivate-mark'.
13501 (syms_of_keyboard): Initialize it.
13502
13503 * xdisp.c (redisplay_internal): Reset tty's color_mode when switching
13504 to another frame.
13505 * frame.c (do_switch_frame): Refine the top_frame/async_visible code.
13506 Don't call set_tty_color_mode.
13507 (store_frame_param): Reset previous_frame rather than call
13508 set_tty_color_mode.
13509 * term.c (set_tty_color_mode): Rewrite.
13510 * dispextern.h (set_tty_color_mode): New type.
13511 * termchar.h (struct tty_display_info): Add `previous_color_mode'.
13512
13513 2008-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
13514
13515 * keymap.c (access_keymap): Remove the value 2 for t_ok which was used
13516 for generic chars, which do not exist any more in emacs-unicode.
13517
13518 2008-04-08 Michael Albinus <michael.albinus@gmx.de>
13519
13520 * coding.c (detect_coding_emacs_mule)
13521 (Ffind_operation_coding_system): Fix typo.
13522
13523 2008-04-08 Jason Rumney <jasonr@gnu.org>
13524
13525 * w32uniscribe.c (SNAME): Extract only symbol name.
13526
13527 * w32font.h (struct w32_metric_cache): New struct.
13528 (w32font_info): Use it.
13529 (W32METRIC_NO_ATTEMPT, W32METRIC_SUCCESS, W32METRIC_FAIL)
13530 (CACHE_BLOCKSIZE): New constants.
13531
13532 * w32font.c (Qja, Qko, Qzh): New symbols.
13533 (syms_of_w32font): Initialise them.
13534 (font_matches_spec): Use them to filter by language.
13535 (recompute_cached_metrics): Remove function.
13536 (compute_metrics, clear_cached_metrics): New functions.
13537 (w32font_encode_char): Use them to manage metric cache.
13538 (w32font_text_extents): Cache metrics for all glyphs on demand.
13539 Delay converting glyph indices to WORD until needed.
13540 (w32font_open_internal): Initialize metric cache to empty.
13541 (registry_to_w32_charset): Charset should always be a symbol.
13542 (fill_in_logfont, list_all_matching_fonts): Family should
13543 always be a symbol.
13544
13545 2008-04-06 Jason Rumney <jasonr@gnu.org>
13546
13547 * w32uniscribe.c (uniscribe_shape): Increase items buffer size.
13548 Give up if glyph indices not supported. Use uniscribe obtained
13549 ABC widths for individual metrics. Map glyph clusters back to
13550 characters using fClusterStart flag. Return number of glyphs
13551 produced, not chars processed.
13552 (uniscribe_shape): Map char at FROM to current glyph.
13553
13554 2008-04-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13555
13556 * macmenu.c (fill_menu) [TARGET_API_MAC_CARBON]:
13557 Use SetMenuItemHierarchicalMenu.
13558
13559 2008-04-05 Jason Rumney <jasonr@gnu.org>
13560
13561 * image.c (pbm_load): Allow color values up to 65535.
13562 Throw an error if max_color_idx is outside the supported range.
13563 Report an error when image size is invalid.
13564 Read two bytes at a time when raw images have max_color_idx above 255.
13565
13566 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13567
13568 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13569 cFileName a file name that includes `?' characters, use the 8+3
13570 alias in cAlternateFileName instead.
13571
13572 2008-04-05 Kenichi Handa <handa@ni.aist.go.jp>
13573
13574 * ccl.c (ccl_driver): If ccl->quit_silently is nonzero, don't
13575 append "CCL: Quitted" when the CCL program is quitted.
13576 (setup_ccl_program): Initialize ccl->quit_silently to zero.
13577
13578 * ccl.h (struct ccl_program): New member quit_silently.
13579
13580 2008-04-05 Chong Yidong <cyd@stupidchicken.com>
13581
13582 * search.c (compile_pattern_1): Treat non-nil and non-string of
13583 search-spaces-regexp as nil.
13584
13585 * minibuf.c (Fassoc_string): Tweak docstring.
13586
13587 2008-04-05 Eli Zaretskii <eliz@gnu.org>
13588
13589 * dired.c (Ffile_attributes): Support inode numbers wider than 32
13590 bits. Remove ugly WINDOWSNT-specific kludge introduced on
13591 2008-03-14 to force inode be positive.
13592
13593 * w32.c (sys_chown, stat, fstat): Use S_* constants instead of
13594 _S_* ones, since we now use our own sys/stat.h.
13595 (stat, fstat): Don't mangle the inode number.
13596 (init_user_info): Don't restrict UID and GID to 0-60000 range.
13597
13598 2008-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
13599
13600 * frame.h (struct frame): Give one more bit to `visible' since we use
13601 values larger than 1 to indicate obscured frames on ttys.
13602
13603 * keymap.c (Qkeymap_canonicalize): New var.
13604 (Fmap_keymap_internal): New fun.
13605 (describe_map): Use keymap-canonicalize.
13606
13607 * undo.c (last_boundary_buffer, last_boundary_position): New vars.
13608 (Fundo_boundary): Set them.
13609 (syms_of_undo): Initialize them.
13610 (record_point): Use them instead of last_point_position*.
13611 (last_undo_buffer): Change type.
13612
13613 2008-04-04 Jason Rumney <jasonr@gnu.org>
13614
13615 * w32font.c (w32font_text_extents): Use font's ascent and descent.
13616 (recompute_cached_metrics): Don't set ascent and descent per char.
13617
13618 * w32uniscribe.c (uniscribe_check_otf): Fix last change.
13619 (uniscribe_check_otf): Add GC protection before consing.
13620 Rearrange loop for counting features.
13621
13622 2008-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
13623
13624 * insdel.c (insert_from_buffer_1): Don't compare bytes in destination
13625 buffer with byte-size of source buffer.
13626
13627 2008-04-03 Chong Yidong <cyd@stupidchicken.com>
13628
13629 * callint.c (Fcall_interactively): Handle temporary region even
13630 when shift-select-mode is off.
13631
13632 2008-04-03 Jason Rumney <jasonr@gnu.org>
13633
13634 * w32uniscribe.c (uniscribe_check_otf): Sanity check otf_spec.
13635
13636 2008-04-03 Kenichi Handa <handa@m17n.org>
13637
13638 * coding.c (CATEGORY_MASK_ANY): Add CATEGORY_MASK_UTF_16_AUTO.
13639 (CATEGORY_MASK_UTF_16): Likewise.
13640 (detect_coding_utf_16): Add heuristics to reject utf-16 for a
13641 binary file.
13642 (detect_coding): Add null-byte detection for a binary file.
13643 (detect_coding_system): Likewise.
13644
13645 2008-04-03 Jason Rumney <jasonr@gnu.org>
13646
13647 * w32uniscribe.c: New file.
13648
13649 * font.h (uniscribe_font_driver) [WINDOWSNT]: Declare for w32fns.c.
13650
13651 * w32font.h (uniscribe_check_otf): Declare for w32font.c.
13652
13653 * w32font.c (Qbalinese, Qbuginese, Qbuhid, Qcuneiform, Qcypriot)
13654 (Qdeseret, Qglagolitic, Qgothic, Qhanunoo, Qkharoshthi)
13655 (Qlimbu, Qlinear_b, Qold_italic, Qold_persian, Qosmanya)
13656 (Qphags_pa, Qphoenician, Qshavian, Qsyloti_nagri)
13657 (Qtagalog, Qtagbanwa, Qtai_le, Qtifinagh, Qugaritic)
13658 (Qphonetic): New symbols.
13659 (syms_of_w32font): Initialize them.
13660 (font_supported_scripts): Use them.
13661 (w32font_list_family): List all charsets.
13662 (w32font_text_extents, recompute_cached_metrics): Fix metric
13663 calculations.
13664 (w32_enumfont_pattern_entity): Make full_type a DWORD.
13665 Give opentype fonts their own format.
13666 (font_matches_spec): New arguments backend and logfont.
13667 Handle :otf spec for uniscribe backend.
13668 (add_font_entity_to_list): Match truetype fonts in uniscribe backend.
13669 (fill_in_logfont): Use DEFAULT_CHARSET when charset not supplied.
13670
13671 * w32fns.c (Fx_create_frame): Conditionally register uniscribe
13672 font backend.
13673 (globals_of_w32fns): Initialize uniscribe font backend.
13674
13675 * makefile.w32-in (CONFIG_H): New variable. Use it to clean up
13676 dependencies.
13677 (w32uniscribe.$(O)): New file to build.
13678 (FONT_OBJ): Include w32uniscribe.$(O).
13679 (LIBS): Add uniscribe libraries.
13680
13681 * ftfont.c (ftfont_get_open_type_spec): Check spec->script, not val.
13682
13683 2008-04-02 Chong Yidong <cyd@stupidchicken.com>
13684
13685 * callint.c (Vshift_select_mode): New var.
13686 (Finteractive): Document new ^ spec.
13687 (Fcall_interactively): Call handle-shift-selection if the ^ spec
13688 is present.
13689
13690 * keyboard.c (Vthis_command_keys_shift_translated): New var.
13691 (command_loop_1): Avoid running the direct display versions of
13692 forward-char and backward-char if shift-selection may occur.
13693 (read_key_sequence): Set Vthis_command_keys_shift_translated if
13694 shift-translation takes place.
13695
13696 * buffer.c (Vtransient_mark_mode): Move docstring to simple.el to
13697 avoid clobbering by define-minor-mode.
13698
13699 * cmds.c (Fforward_char, Fbackward_char, Fforward_line)
13700 (Fbeginning_of_line, Fend_of_line): Add ^ interactive spec.
13701
13702 * syntax.c (Fforward_word): Add ^ interactive spec.
13703
13704 * window.c (Fscroll_up, Fscroll_down, Fscroll_left)
13705 (Fscroll_right): Add ^ interactive spec.
13706
13707 2008-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
13708
13709 * xdisp.c (try_window_id): Don't forget to reset delta_bytes.
13710
13711 * casefiddle.c (casify_object): Fix up int/EMACS_INT mixup.
13712
13713 * charset.c (Funibyte_charset, Fset_unibyte_charset): Remove.
13714
13715 2008-03-31 Juri Linkov <juri@jurta.org>
13716
13717 * window.c (Fdisplay_buffer): Reinitialize `tem' to nil.
13718
13719 2008-03-30 Jan Djärv <jan.h.d@swipnet.se>
13720
13721 * gtkutil.c (xg_set_geometry): Fix indentation.
13722 (xg_resize_outer_widget): Remove.
13723 (x_wm_size_hint_off): Fix indentation.
13724 (xg_frame_set_char_size): Call flush_and_sync after
13725 gtk_window_resize.
13726 (x_wm_set_size_hint): Pass NULL as geometry window to
13727 gtk_window_set_geometry_hints due to Gtk+ bug nr 68668.
13728 Add menu bar and tool bar height to base height.
13729 (xg_update_frame_menubar, free_frame_menubar)
13730 (xg_tool_bar_detach_callback, xg_tool_bar_attach_callback)
13731 (update_frame_tool_bar, free_frame_tool_bar):
13732 Change xg_resize_outer_widget to xg_frame_set_char_size.
13733
13734 2008-03-30 Michael Albinus <michael.albinus@gmx.de>
13735
13736 * dbusbind.c (QCdbus_timeout): New D-Bus internal symbol.
13737 (Fdbus_call_method): New parameter TIMEOUT.
13738 (dbus-send-signal): Optimize UNGCPRO call.
13739
13740 2008-03-29 Juri Linkov <juri@jurta.org>
13741
13742 * window.c (Fdisplay_buffer): Move call to
13743 Vsplit_window_preferred_function out of conditions that check
13744 if window is eligible for vertical splitting.
13745 When Vsplit_window_preferred_function is non-nil, call it and use
13746 its non-nil return value as window. Otherwise, continue doing
13747 vertical splitting using Fsplit_window with arg horflag=nil.
13748 (syms_of_window) <Vsplit_window_preferred_function>: Change the
13749 default value from `split-window' to nil.
13750
13751 2008-03-29 Juri Linkov <juri@jurta.org>
13752
13753 * callint.c (Fcall_interactively): Revert 2008-03-16 change
13754 for interactive code letters 'b' and 'B'.
13755
13756 2008-03-29 Eli Zaretskii <eliz@gnu.org>
13757
13758 * fileio.c (Fexpand_file_name): Convert the value of $HOME to a
13759 multibyte string.
13760
13761 2008-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
13762
13763 * keyboard.c (pending_funcalls): New var.
13764 (timer_check): Run it.
13765 (syms_of_keyboard): Initialize it.
13766 * terminal.c (Qrun_hook_with_args, Qdelete_terminal_functions)
13767 (Vdelete_terminal_functions): New vars.
13768 (syms_of_terminal): Initialize them.
13769 (Fdelete_terminal): Run delete-terminal-functions.
13770 * xdisp.c (safe_eval): Rewrite.
13771 (safe_call2): New fun.
13772 * frame.c (Qdelete_frame_functions): New var.
13773 (syms_of_frame): Initialize it.
13774 (Fdelete_frame): Use it and use safe_call2 and pending_funcalls.
13775 * lisp.h (safe_call2, pending_funcalls): Declare.
13776
13777 2008-03-28 Andreas Schwab <schwab@suse.de>
13778
13779 * indent.c (Fmove_to_column): Move declaration before statements.
13780
13781 2008-03-27 Stefan Monnier <monnier@iro.umontreal.ca>
13782
13783 * frame.h (enum fullscreen_type): Give it a name. Move it before use.
13784 (struct frame): Use bit fields for boolean vars.
13785
13786 * process.c (server_accept_connection): Simplify naming.
13787 (emacs_get_tty_pgrp): Use SDATA.
13788
13789 * coding.c (decode_coding_object): Fix last change.
13790
13791 2008-03-27 Jason Rumney <jasonr@gnu.org>
13792
13793 * w32fns.c (start_hourglass): Suppress hourglass on tty frames.
13794
13795 2008-03-27 Kenichi Handa <handa@ni.aist.go.jp>
13796
13797 * charset.c (Fdefine_charset_internal): Change the way of
13798 registering charsets in Vcharset_order_list.
13799 (syms_of_charset): Make the charset `eight-bit' supplementary.
13800
13801 2008-03-26 Alexandre Oliva <aoliva@redhat.com> (tiny change)
13802
13803 * regex.c (EXTEND_BUFFER): Change order of pointer addition
13804 operations, to avoid having the difference between pointers
13805 overflow.
13806
13807 2008-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
13808
13809 * indent.c (check_display_width): New fun.
13810 (scan_for_column): Use it.
13811
13812 * data.c (syms_of_data): Mark most-positive-fixnum and
13813 most-negative-fixnum as constants.
13814
13815 * xdisp.c (redisplay_internal): Reset selected_frame earlier.
13816
13817 * indent.c (scan_for_column): Extract from current_column_1.
13818 Merge with the same code from Fmove_to_column.
13819 (current_column_1, Fmove_to_column): Use it.
13820
13821 2008-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
13822
13823 * keymap.c (map_keymap_internal): New fun.
13824 (map_keymap): Use it.
13825 (Fmap_keymap_internal): New fun.
13826 (Fmap_keymap): Remove left-out test from before make_save_value.
13827
13828 * keymap.c (Fmap_keymap): Use `map-keymap-sorted.
13829
13830 * frame.c (Fmodify_frame_parameters, x_set_frame_parameters):
13831 Use XCAR/XCDR.
13832
13833 * process.h (struct Lisp_Process): Remove filter_multibyte.
13834 * process.c (QCfilter_multibyte): Remove.
13835 (setup_process_coding_systems): Don't use filter_multibyte.
13836 (Fstart_process, Fmake_network_process): Don't set filter_multibyte.
13837 (read_process_output): Don't adjust multibyteness to filter_multibyte.
13838 (Fset_process_filter_multibyte): Change the coding-system to
13839 approximate the previous behavior.
13840 (Fprocess_filter_multibyte_p): Get the multibyteness straight from the
13841 coding-system.
13842
13843 * coding.c (decode_coding_object): When not decoding into a buffer,
13844 obey the coding system's preference of (uni|multi)byte.
13845
13846 2008-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
13847
13848 * casefiddle.c (casify_object): Avoid pathological N^2 worst case if
13849 every char is changed and has a different byte-length.
13850 (Fupcase_word, Fdowncase_word, Fcapitalize_word, operate_on_word):
13851 Fix int -> EMACS_INT.
13852
13853 2008-03-23 David Hansen <david.hansen@gmx.net>
13854
13855 * dbusbind.c (xd_read_message): Remove extra copying of message
13856 strings. Check for NULL `interface' or `member'.
13857
13858 2008-03-22 Eli Zaretskii <eliz@gnu.org>
13859
13860 * w32.c (readdir): If FindFirstFile/FindNextFile return in
13861 cFileName a file name that includes `?' characters, use the 8+3
13862 alias in cAlternateFileName instead.
13863
13864 2008-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
13865
13866 * buffer.c (enlarge_buffer_text): Fix int -> EMACS_INT.
13867
13868 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13869
13870 * intervals.c (temp_set_point, temp_set_point_both): Use EMACS_INT.
13871 (set_point, set_point_both): Use EMACS_INT. Remove `buffer' arg,
13872 work on current_buffer only instead (that was already the case
13873 for some of the code anyway).
13874 * buffer.h (set_point, set_point_both): Remove buffer arg, use long int.
13875 (temp_set_point, temp_set_point_both): Use EMACS_INT.
13876 (SET_PT, SET_PT_BOTH): Adjust.
13877 * intervals.h (set_point, temp_set_point, set_point_both)
13878 (temp_set_point_both): Remove redundant declarations.
13879
13880 2008-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
13881
13882 * fileio.c (Finsert_file_contents):
13883 * lread.c (Feval_buffer): Use BUF_TEMP_SET_PT.
13884 * buffer.h (BUF_SET_PT): Remove. set_point_both doesn't work right
13885 when buffer != current_buffer anyway.
13886
13887 2008-03-20 Andreas Schwab <schwab@suse.de>
13888
13889 * callint.c (Fcall_interactively) [case 'B']: Use other-buffer
13890 as default.
13891
13892 2008-03-19 Jason Rumney <jasonr@gnu.org>
13893
13894 * w32fns.c (hourglass_timer, hourglass_hwnd): New variables.
13895 (syms_of_w32fns): Initialize them.
13896 (HOURGLASS_ID): New constant.
13897 (x_window_to_frame): Don't check hourglass_window.
13898 (w32_wnd_proc) <WM_TIMER>: Handle hourglass_timer.
13899 (w32_wnd_proc) <WM_EXITMENULOOP>: Set pending hourglass cursor.
13900 (w32_wnd_proc) <WM_SETCURSOR>: Set the hourglass or current cursor.
13901 (w32_wnd_proc) <WM_EMACS_SETCURSOR>: Set frame's current_cursor.
13902 Only change the cursor if hourglass is not active.
13903 (Fx_create_frame): Initialize frame's current_cursor.
13904 (hourglass_atimer): Remove.
13905 (hourglass_started): New function.
13906 (start_hourglass, cancel_hourglass, hide_hourglass): Adapt to w32.
13907 (show_hourglass): Adapt to w32, changing argument to frame.
13908
13909 * w32term.h (struct w32_output): Remove hourglass_window.
13910 Add current_cursor.
13911
13912 * eval.c (call_debugger, Fsignal):
13913 * keyboard.c (recursive_edit_1, cmd_error, Ftop_level)
13914 (command_loop_1, Fread_key_sequence, Fread_key_sequence_vector)
13915 (Fexecute_extended_command, cancel_hourglass_unwind):
13916 * minibuf.c (read_minibuf):
13917 * fns.c (Fy_or_n_p): Enable hourglass when HAVE_WINDOW_SYSTEM.
13918
13919 2008-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
13920
13921 * window.c (run_funs): New fun.
13922 (run_window_configuration_change_hook): Use it to run the buffer-local
13923 and the global part of the hook.
13924
13925 * xdisp.c (format_mode_line_unwind_data): Add window argument.
13926 (unwind_format_mode_line): Restore selected window.
13927 (x_consider_frame_title, Fformat_mode_line): Set selected window.
13928
13929 2008-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
13930
13931 * editfns.c (Fchar_equal): Check they are valid characters.
13932
13933 * buffer.h (Fbuffer_list): Declare (for use in callint.c).
13934
13935 2008-03-17 Andreas Schwab <schwab@suse.de>
13936
13937 * regex.c (re_match_2_internal): Properly match raw 8-bit bytes
13938 against a charset.
13939
13940 * lisp.h (Fbuffer_list): Declare.
13941
13942 2008-03-17 Jan Djärv <jan.h.d@swipnet.se>
13943
13944 * gtkutil.c (free_frame_tool_bar): Only call gtk_container_remove if
13945 handlebox_widget is != 0.
13946
13947 2008-03-16 Juri Linkov <juri@jurta.org>
13948
13949 * callint.c (Fcall_interactively): For interactive code letters
13950 'b' and 'B' put the buffer list into the list of default "future"
13951 values of the minibuffer.
13952
13953 2008-03-16 Andreas Schwab <schwab@suse.de>
13954
13955 * keyboard.c (read_key_sequence): Fix downcasing of letters with
13956 modifiers.
13957
13958 * regex.c (re_match_2_internal): Correct matching of a charset
13959 against latin-1 characters.
13960
13961 2008-03-16 Kenichi Handa <handa@m17n.org>
13962
13963 * coding.c (CHAR_STRING_ADVANCE_NO_UNIFY)
13964 (STRING_CHAR_ADVANCE_NO_UNIFY): New macros.
13965 (coding_alloc_by_making_gap): Fix the way to preserve data in the gap.
13966 (alloc_destination): Fix the 2nd arg to coding_alloc_by_making_gap.
13967 (encode_coding_utf_8): Use CHAR_STRING_ADVANCE_NO_UNIFY instead of
13968 CHAR_STRING_ADVANCE.
13969 (produce_chars): Fix for the case that the source and the
13970 destination are the same buffer. Use CHAR_STRING_ADVANCE_NO_UNIFY
13971 instead of CHAR_STRING_ADVANCE.
13972 (consume_chars): Use STRING_CHAR_ADVANCE_NO_UNIFY instead of
13973 STRING_CHAR_ADVANCE.
13974
13975 2008-03-15 Andreas Schwab <schwab@suse.de>
13976
13977 * regex.c (re_match_2_internal): Correct matching of eight bit
13978 characters in unibyte strings.
13979
13980 2008-03-15 Martin Rudalics <rudalics@gmx.at>
13981
13982 * buffer.c (overlays_in, Foverlays_in): Include empty overlays
13983 at end of range when it coincides with the end of the buffer.
13984
13985 2008-03-14 Eli Zaretskii <eliz@gnu.org>
13986
13987 * dired.c (Ffile_attributes) [WINDOWSNT]: Force inode be positive.
13988
13989 * w32fns.c (globals_of_w32fns, Fx_create_frame): Fix last change.
13990
13991 2008-03-14 Jason Rumney <jasonr@gnu.org>
13992
13993 * editfns.c (initial_tz): New variable.
13994 (syms_of_editfns): Initialize it.
13995 (Fset_time_zone_rule): Set it when first called.
13996 Use it when TZSTRING is nil.
13997
13998 * w32fns.c (MONITOR_DEFAULT_TO_NEAREST, struct MONITOR_INFO)
13999 (MonitorFromPoint_Proc, GetMonitorInfo_Proc): New definitions.
14000 (monitor_from_point_fn, get_monitor_info_fn): New globals.
14001 (globals_of_w32fns): Initialize them.
14002 (compute_tip_xy): Use them to position tooltips.
14003
14004 2008-03-14 Glenn Morris <rgm@gnu.org>
14005
14006 * emacs.c (main): Revert previous change.
14007 (standard_args): Revert -internal-script back to -scriptload,
14008 and remove the long-option form.
14009
14010 2008-03-13 Glenn Morris <rgm@gnu.org>
14011
14012 * emacs.c (main, standard_args): Rename -scriptload to -internal-script.
14013 Remove option -enable-font-backend.
14014
14015 2008-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
14016
14017 * buffer.c (Fswitch_to_buffer): Fall back on pop-to-buffer.
14018
14019 2008-03-11 Jan Djärv <jan.h.d@swipnet.se>
14020
14021 * xterm.c (x_connection_closed): For GTK: If this is the last
14022 terminal just exit without closing the display.
14023
14024 2008-03-11 Jason Rumney <jasonr@gnu.org>
14025
14026 * w32font.c (w32font_full_name): Use floor to round.
14027
14028 2008-03-10 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
14029
14030 * sound.c (alsa_configure): Declare vol at beginning of block.
14031
14032 * fontset.c (Ffontset_info): Remove extra semicolon.
14033
14034 2008-03-10 Stefan Monnier <monnier@iro.umontreal.ca>
14035
14036 * fileio.c (Fsubstitute_in_file_name): Fix up computation of maximum
14037 size of resulting string.
14038
14039 2008-03-10 Jason Rumney <jasonr@gnu.org>
14040
14041 * dispnew.c (adjust_glyph_matrix): Initialize window_height.
14042
14043 2008-03-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14044
14045 * xdisp.c (handle_single_display_spec): Undo 2007-10-16 changes.
14046 Don't pretend as if characters with display property haven't been
14047 consumed for string-replacing-string case.
14048
14049 2008-03-08 Kim F. Storm <storm@cua.dk>
14050
14051 * xdisp.c (GET_NEXT_DISPLAY_ELEMENT): New macro.
14052 (get_next_display_element, next_element_from_string)
14053 (next_element_from_ellipsis, next_element_from_buffer): Use it.
14054
14055 2008-03-08 Andreas Schwab <schwab@suse.de>
14056
14057 * process.h (struct Lisp_Process): Declare bit fields as unsigned.
14058
14059 2008-03-06 Jason Rumney <jasonr@gnu.org>
14060
14061 * w32font.c (w32_registry): Take font_type argument. Use ANSI
14062 when charset not specified. Only translate ANSI to unicode when
14063 font_type is truetype.
14064 (w32font_coverage_ok): New function.
14065 (add_font_entity_to_list): Use it to filter unsuitable fonts.
14066
14067 2008-03-05 Kenichi Handa <handa@ni.aist.go.jp>
14068
14069 * lread.c (Fread_char): Resolve modifiers.
14070 (Fread_char_exclusive): Likewise.
14071
14072 * character.c (char_resolve_modifier_mask): New function.
14073 (char_string): Use char_resolve_modifier_mask.
14074 (Fchar_resolve_modifiers): New function.
14075 (syms_of_character): Declare Fchar_resolve_modifiers as Lisp
14076 function.
14077
14078 2008-03-04 Jason Rumney <jasonr@gnu.org>
14079
14080 * makefile.w32-in: Always include w32font.c in the build.
14081 * w32font.c: Wrap in USE_FONT_BACKEND conditional.
14082
14083 2008-03-04 Andreas Schwab <schwab@suse.de>
14084
14085 * Makefile.in (clean): Remove emacs-*.*.* instead of emacs-*.
14086 (versionclean): Likewise.
14087
14088 2008-03-04 Juanma Barranquero <lekktu@gmail.com>
14089
14090 * .cvsignore: Add oo.
14091
14092 2008-03-03 Andreas Schwab <schwab@suse.de>
14093
14094 * coding.c (decode_coding_object): Inhibit gap shrinking while
14095 decoding in place.
14096
14097 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu>
14098
14099 * w32term.c: Remove unused include "gnu.h".
14100 * makefile.w32-in (w32term.o): Don't depend on gnu.h.
14101
14102 * gnu.h: Rename to ...
14103 * emacs-icon.h: ... this.
14104 * xterm.c: Use emacs-icon.h instead of gnu.h.
14105 * Makefile (xterm.o): Depend on emacs-icon.h, not gnu.h.
14106
14107 2008-03-03 Juanma Barranquero <lekktu@gmail.com>
14108
14109 * w32font.c: Include math.h.
14110
14111 2008-03-03 Jason Rumney <jasonr@gnu.org>
14112
14113 * w32font.c (recompute_cached_metrics): Change font arg to w32font_info.
14114 Compute options separately.
14115 (w32font_open_internal): Set glyph_idx before caching metrics.
14116
14117 * w32font.h (NTM_PS_OPENTYPE, NTM_TT_OPENTYPE, NTM_TYPE1):
14118 Define if system headers don't.
14119 (struct w32font_info): Enlarge ascii_metrics. Add glyph_idx.
14120 (w32font_encode_char): Don't declare here.
14121
14122 * w32font.c (Quniscribe, QCformat): New symbols.
14123 (syms_of_w32font): Define them.
14124 (w32font_has_char): Indicate uncertainty.
14125 (w32font_encode_char): Encode as glyph point. Make static.
14126 (recompute_cached_metrics): New function.
14127 (w32font_open_internal): Use it. Set font to use glyph points
14128 initially. Set format based on type of font.
14129 (w32font_text_extents, w32font_draw): Optionally use glyph points.
14130 (w32_enumfont_pattern_entity): Accept backend arg. Set type based
14131 on it. Set format based on information available here.
14132 (add_font_entity_to_list): Identify backend based on opentype_only.
14133
14134 2008-03-02 Andreas Schwab <schwab@suse.de>
14135
14136 * ftfont.c (ftfont_pattern_entity): Fix aliasing violations.
14137
14138 * coding.c (decode_coding_big5, produce_chars):
14139 Fix typos in last change.
14140
14141 2008-03-02 Kentaro Ohkouchi <nanasess@fsm.ne.jp>
14142
14143 * gnu.h: New icon.
14144
14145 2008-03-02 Kenichi Handa <handa@m17n.org>
14146
14147 * coding.c (decode_coding_utf_8): When eol-type of CODING is
14148 `dos', don't decode '\r' if that is the last in the source.
14149 (decode_coding_utf_16, decode_coding_emacs_mule)
14150 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
14151 (decode_coding_raw_text, decode_coding_charset): Likewise.
14152 (produce_chars): Don't decode EOL here. Use EMACS_INT.
14153
14154 2008-03-01 Jason Rumney <jasonr@gnu.org>
14155
14156 * w32font.c (w32font_full_name): Report point size for scalable fonts.
14157
14158 2008-03-01 Kim F. Storm <storm@cua.dk>
14159
14160 * dispextern.h (CHAR_GLYPH_SPACE_P): Check for default face.
14161
14162 2008-03-01 Jason Rumney <jasonr@gnu.org>
14163
14164 * w32font.c (w32font_full_name): New function.
14165 (w32font_open_internal): Use it.
14166
14167 2008-03-01 Kim F. Storm <storm@cua.dk>
14168
14169 * dispnew.c (line_draw_cost): Fix invalid glyph check.
14170
14171 2008-03-01 Jason Rumney <jasonr@gnu.org>
14172
14173 * font.c (font_unparse_fcname): Increase len when style is a symbol.
14174
14175 2008-03-01 Jan Djärv <jan.h.d@swipnet.se>
14176
14177 * xterm.c (handle_one_xevent): For Gtk+ and ConfigureNotify, call
14178 xg_frame_resized when the event is for the edit widget.
14179
14180 * gtkutil.h (xg_frame_resized): Renamed from xg_resize_widgets.
14181
14182 * gtkutil.c (xg_resize_outer_widget): Only do one of set_geometry or
14183 set_char_size.
14184 (xg_frame_resized): Renamed from xg_resize_widgets. Remove all
14185 operations on widgets here. Just set frame size if needed.
14186 (flush_and_sync, x_wm_size_hint_off, xg_pack_tool_bar): New functions.
14187 (xg_frame_set_char_size): Call x_wm_size_hint_off before resizing.
14188 (x_wm_set_size_hint): Set size hints on the edit widget only, not
14189 the whole frame.
14190 (xg_create_tool_bar): Move attachment of the tool bar to
14191 xg_pack_tool_bar. Do not attach the tool bar if there are no items.
14192 (free_frame_tool_bar): Remove call to SET_FRAME_GARBAGED.
14193
14194 2008-03-01 Jason Rumney <jasonr@gnu.org>
14195
14196 * w32fns.c (w32_msg_pump): Disable debug code.
14197
14198 2008-03-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
14199
14200 * m/intel386.h [MAC_OSX || DARWIN]: Define NO_ARG_ARRAY if _LP64.
14201
14202 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14203
14204 * xdisp.c (next_overlay_string): Don't set
14205 overlay_strings_at_end_processed_p if we're currently reading from
14206 a display string.
14207
14208 2008-02-29 Stefan Monnier <monnier@iro.umontreal.ca>
14209
14210 * xdisp.c (get_overlay_strings_1): Fix typo.
14211
14212 2008-02-29 Chong Yidong <cyd@stupidchicken.com>
14213
14214 * xdisp.c (get_overlay_strings_1): Add missing argument type.
14215
14216 2008-02-28 Kenichi Handa <handa@ni.aist.go.jp>
14217
14218 * ftfont.c (ftfont_match): Explicitly set pixelsize in pattern.
14219
14220 * xdisp.c (display_mode_element): Cancel the previous change.
14221 (decode_mode_spec): Likewise.
14222 (handle_auto_composed_prop): Don't make composition if it->string
14223 is a string.
14224
14225 2008-02-27 Kim F. Storm <storm@cua.dk>
14226
14227 * lisp.h (GLYPH): Change type from int to struct with separate char
14228 and face_id members.
14229 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Delete macros.
14230 (GLYPH_CHAR, GLYPH_FACE): Remove slow versions with frame arg.
14231 (FAST_GLYPH_CHAR, FAST_GLYPH_FACE): Rename macros to ...
14232 (GLYPH_CHAR, GLYPH_FACE): ... these. Change users.
14233 (FAST_MAKE_GLYPH, MAKE_GLYPH): Remove. Rewrite users to use ...
14234 (SET_GLYPH, SET_GLYPH_CHAR, SET_GLYPH_FACE): ... these macros instead.
14235 (GLYPH_CODE_CHAR, GLYPH_CODE_FACE, GLYPH_CODE_P)
14236 (GLYPH_CODE_CHAR_VALID_P, SET_GLYPH_FROM_GLYPH_CODE): New macros to
14237 handle new Lisp glyph code encoding, either an integer or a cons.
14238
14239 * disptab.h (GLYPH_SIMPLE_P): Rewrite.
14240 (GLYPH_ALIAS): Delete.
14241 (GLYPH_ALIAS_P, GLYPH_FOLLOW_ALIASES): Rewrite.
14242 (GLYPH_LENGTH, GLYPH_STRING): Use GLYPH_CHAR.
14243 (GLYPH_FROM_CHAR): Replace macro by ...
14244 (SET_GLYPH_FROM_CHAR): ... this macro. Change users.
14245
14246 * dispextern.h (CHAR_GLYPH_SPACE_P): Simplify.
14247 (GLYPH_FROM_CHAR_GLYPH): Replace macro by ...
14248 (SET_GLYPH_FROM_CHAR_GLYPH): ... this macro. Change users.
14249 (GLYPH_INVALID_P): New macro.
14250 (spec_glyph_lookup_face): Update prototype.
14251
14252 * dispnew.c (line_draw_cost): Adapt to new glyph type.
14253 (build_frame_matrix_from_leaf_window): Adapt to new glyph type and
14254 new glyph code encoding.
14255 (spec_glyph_lookup_face): No return value; update passed glyph instead.
14256 (init_display): Use SET_CHAR_GLYPH to initialize space_glyph.
14257
14258 * xdisp.c (get_next_display_element, next_element_from_display_vector):
14259 Adapt to new glyph type and new glyph code encoding.
14260
14261 * term.c (encode_terminal_code, produce_special_glyphs): Likewise.
14262
14263 * indent.c (current_column, current_column_1, Fmove_to_column)
14264 (compute_motion): Adapt to new glyph code encoding.
14265
14266 * msdos.c (IT_write_glyphs): Adapt to new glyph type.
14267
14268 2008-02-27 Chong Yidong <cyd@stupidchicken.com>
14269
14270 * process.c (wait_reading_process_output): Check for window
14271 changes caused by timers.
14272 Suggested by Johan Bockgård.
14273
14274 2008-02-27 Glenn Morris <rgm@gnu.org>
14275
14276 * emacs.c (USAGE1): Add `--disable-font-backend'.
14277
14278 2008-02-27 Stefan Monnier <monnier@iro.umontreal.ca>
14279
14280 * fileio.c (Finsert_file_contents): Don't reset undo_list if no change
14281 is made to the buffer.
14282
14283 2008-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
14284
14285 * dispextern.h (face_at_buffer_position, face_for_overlay_string)
14286 (face_at_string_position):
14287 * xfaces.c (face_at_buffer_position, face_for_overlay_string)
14288 (face_at_string_position):
14289 * xdisp.c (display_string, next_overlay_change):
14290 * buffer.h (overlays_at):
14291 * buffer.c (overlays_at): Use EMACS_INT for buffer positions.
14292 Update callers.
14293
14294 2008-02-26 Chong Yidong <cyd@stupidchicken.com>
14295
14296 * editfns.c (Fformat): Doc fix.
14297
14298 2008-02-26 Juanma Barranquero <lekktu@gmail.com>
14299
14300 * font.c (Ffont_spec, Ffont_at): Fix typos in docstrings.
14301 (Ffont_put, Flist_families, Ffont_fill_gstring, Ffont_drive_otf)
14302 (Ffont_otf_alternates, Fquery_font): Doc fixes.
14303
14304 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14305
14306 * buffer.c (Fbuffer_swap_text): New function.
14307 (syms_of_buffer): Defsubr it.
14308
14309 2008-02-25 Chong Yidong <cyd@stupidchicken.com>
14310
14311 * keyboard.c (command_loop_1): Revert 2006-10-09 change.
14312
14313 2008-02-25 Jason Rumney <jasonr@gnu.org>
14314
14315 * w32font.c (w32font_draw): Draw one character at a time when padding.
14316
14317 2008-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
14318
14319 * window.c (Fdelete_window, Fadjust_window_trailing_edge):
14320 Handle a nil arg. Use run_window_configuration_change_hook.
14321 (delete_window, adjust_window_trailing_edge): Don't handle nil any more.
14322 (Fenlarge_window, Fshrink_window, Fset_window_configuration):
14323 Use run_window_configuration_change_hook.
14324
14325 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14326
14327 * xdisp.c (x_produce_glyphs): For a visible glyph, assure at least
14328 1-pixel width.
14329
14330 2008-02-25 Kenichi Handa <handa@ni.aist.go.jp>
14331
14332 * xdisp.c (fill_glyph_string): Pay attention to glyph->padding_p.
14333 (append_glyph): Set glyph->pixel_width and glyph->padding_p to 1
14334 if the glyph in the font is zero pixel with.
14335
14336 * dispextern.h (struct glyph_string): New member padding_p.
14337
14338 * w32font.c (w32font_draw): Pay attention to s->padding_p.
14339
14340 * ftxfont.c (ftxfont_draw): Pay attention to s->padding_p.
14341
14342 * xfont.c (xfont_draw): Pay attention to s->padding_p.
14343
14344 * xftfont.c (xftfont_draw): Pay attention to s->padding_p.
14345
14346 * font.c: If the font driver doesn't have `shape' function, return Qnil.
14347
14348 2008-02-25 Jason Rumney <jasonr@gnu.org>
14349
14350 * w32fns.c (enum_font_cb2): Don't use raster fonts for Unicode.
14351
14352 2008-02-24 Stefan Monnier <monnier@iro.umontreal.ca>
14353
14354 Allow fine-grained image-cache flushing.
14355 * dispextern.h (struct image): Add `dependencies' field.
14356 (clear_image_caches): Change arg to Lisp_Object.
14357 * image.c (make_image): Initialize `dependencies' field.
14358 (clear_image_cache): Change arg to allow fine-grained flushing.
14359 Perform the flush even if image-cache-eviction-delay is nil.
14360 (clear_image_caches): Change arg to Lisp_Object.
14361 (Fclear_image_cache): Expand meaning of the argument.
14362 (mark_image): Mark `dependencies' field.
14363 * xfaces.c (clear_face_cache): Adapt arg to call to clear_image_caches.
14364 (lface_hash): Use XHASH rather than XFASTINT.
14365 (face_at_buffer_position): Fix int -> EMACS_INT position.
14366 * xdisp.c (next_overlay_change): Fix int -> EMACS_INT position.
14367 (select_frame_for_redisplay): Remove code duplication.
14368 (redisplay_internal): Adapt arg to call to clear_image_caches.
14369
14370 2008-02-24 Dan Nicolaescu <dann@ics.uci.edu>
14371
14372 * s/vms4-0.h:
14373 * s/vms4-2.h:
14374 * s/vms4-4.h:
14375 * s/vms5-5.h: Remove, unused.
14376
14377 * s/irix5-2.h:
14378 * s/irix6-0.h:
14379 * s/riscos5.h:
14380 * s/mach-bsd4-3.h:
14381 * m/mips4.h: Remove files for obsolete systems.
14382
14383 * Makefile.in:
14384 * filelock.c:
14385 * unexmips.c:
14386 * m/hp9000s300.h:
14387 * m/iris4d.h:
14388 * s/aix3-1.h:
14389 * s/hpux.h:
14390 * s/msdos.h:
14391 * s/usg5-0.h:
14392 * s/usg5-2-2.h:
14393 * s/usg5-2.h:
14394 * s/usg5-3.h: Remove references to obsolete variables.
14395
14396 * s/irix5-0.h: Remove, move all the contents ...
14397 * s/irix6-5.h: ... here. Simplify.
14398 * config.in: Regenerate.
14399
14400 2008-02-24 Jason Rumney <jasonr@gnu.org>
14401
14402 * w32term.c (x_draw_glyph_string_background): Clear the background
14403 manually when cleartype is in use.
14404 (x_draw_glyph_string_foreground): Draw text transparently when
14405 cleartype is in use.
14406
14407 * w32font.c (w32font_text_extents): Avoid getting HDC and selecting
14408 a font into it unless we have to.
14409
14410 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14411
14412 * intervals.h (INT_LISPLIKE): Remove. It may misfire.
14413 (NULL_INTERVAL_P, SET_INTERVAL_PARENT): Don't use it.
14414
14415 2008-02-18 Jason Rumney <jasonr@gnu.org>
14416
14417 * w32fns.c (Fw32_shell_execute): Encode parameters.
14418
14419 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14420
14421 * fileio.c (syms_of_fileio) <insert-default-directory>: Doc fix.
14422
14423 2008-02-05 Juanma Barranquero <lekktu@gmail.com>
14424
14425 * unexhp9k800.c (read_header): Replace `legal' with `valid'.
14426
14427 2008-02-24 Ulrich Neumerkel <ulrich@complang.tuwien.ac.at> (tiny change)
14428
14429 * xterm.c (x_set_offset): Don't change the gravity if
14430 CHANGE_GRAVITY is -1.
14431
14432 2008-02-23 Chong Yidong <cyd@stupidchicken.com>
14433
14434 * fileio.c (auto_save_error_occurred): New var.
14435 (auto_save_error): Set it.
14436 (Fdo_auto_save): Don't overwrite the error message if an auto-save
14437 error occurred.
14438
14439 2008-02-23 Eli Zaretskii <eliz@gnu.org>
14440
14441 * w32.c (globals_of_w32): Add initializations for
14442 g_b_init_get_sid_sub_authority and
14443 g_b_init_get_sid_sub_authority_count.
14444
14445 2008-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
14446
14447 * font.c (font_match_xlfd, font_check_xlfd_parse): New funs.
14448 (font_parse_xlfd): Use them for sanity check.
14449 (Finternal_set_font_style_table): Make sure the table is bijective.
14450
14451 Consolidate the image_cache to the terminal struct.
14452 * termhooks.h (P_): Remove redundant def.
14453 (struct terminal): New field `image_cache'.
14454 * frame.h (FRAME_IMAGE_CACHE): New macro. Use it everywhere in place
14455 of FRAME_X_IMAGE_CACHE.
14456 * xterm.h (struct x_display_info): Remove image_cache field.
14457 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14458 * w32term.h (struct w32_display_info): Remove image_cache field.
14459 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14460 * macterm.h (struct mac_display_info): Remove image_cache field.
14461 (FRAME_X_IMAGE_CACHE): Remove. Use FRAME_IMAGE_CACHE instead.
14462 * xterm.c (x_term_init):
14463 * w32term.c (w32_term_init):
14464 * macterm.c (mac_term_init): Set the image_cache in the terminal.
14465 * dispextern.h (clear_image_cache, forall_images_in_image_cache):
14466 Remove declarations.
14467 (clear_image_caches, mark_image_cache): New declarations.
14468 * xfaces.c (clear_face_cache):
14469 * xdisp.c (redisplay_internal): Use clear_image_caches.
14470 * image.c (clear_image_cache): Don't check that a frame is on
14471 a window-system before checking if it shares the same cache.
14472 (clear_image_caches): New function.
14473 (Fclear_image_cache): Use it.
14474 (mark_image): Move from allo.c.
14475 (mark_image_cache): Move from alloc.c and forall_images_in_image_cache.
14476 * alloc.c (mark_image, mark_image_cache): Move to image.c.
14477 (mark_object): Don't call mark_image_cache for frames.
14478 (mark_terminals): Call mark_image_cache.
14479
14480 * lisp.h (Fdelete_terminal): Declare.
14481
14482 * charset.h (CHECK_CHARSET, CHECK_CHARSET_GET_ID)
14483 (CHECK_CHARSET_GET_ATTR): Don't use the inexistent return value of
14484 wrong_type_argument.
14485
14486 2008-02-22 Kenichi Handa <handa@ni.aist.go.jp>
14487
14488 * Makefile.in (lisp): Remove devanagari.el, kannada.el,
14489 malayalam.el, and tamil.el. Add sinhala.el.
14490
14491 2008-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
14492
14493 * xterm.c (x_connection_closed): Consolidate identical tests.
14494 (x_delete_terminal): Don't crash if called via x_connection_closed.
14495
14496 2008-02-21 Kenichi Handa <handa@ni.aist.go.jp>
14497
14498 * xdisp.c (decode_mode_spec): New arg string.
14499 (display_mode_element): Adjust for the above change.
14500
14501 2008-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
14502
14503 * callint.c (Fcall_interactively): Use AREF.
14504
14505 2008-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
14506
14507 * font.c (font_unparse_xlfd): Don't ignore integer pixel size specs.
14508
14509 2008-02-18 Jan Djärv <jan.h.d@swipnet.se>
14510
14511 * xfns.c (Fx_show_tip): Set string to " " if empty.
14512
14513 2008-02-17 Dan Nicolaescu <dann@ics.uci.edu>
14514
14515 * callint.c (syms_of_callint): Initialize Vmark_even_if_inactive
14516 with Qt.
14517
14518 2008-02-17 Kenichi Handa <handa@m17n.org>
14519
14520 * ftfont.c (ftfont_shape): Return Lispy number.
14521
14522 * xfaces.c (prepare_face_for_display): Use display_info->font->fid
14523 for GCs.
14524 (Finternal_set_font_selection_order): Call font_update_sort_order
14525 only when enable_font_backend is set.
14526 (realize_x_face): Set face->font_info to that of default face only
14527 when enable_font_backend is set.
14528
14529 * xdisp.c (handle_composition_prop): Set it->c to the fist
14530 character of the composed region.
14531 (fill_composite_glyph_string): Set base_face->font_info to
14532 s->font_info. Get a face for ascii from base_face->ascii_face.
14533 (BUILD_COMPOSITE_GLYPH_STRING): Call fill_composite_glyph_string
14534 with a face already decided.
14535 (x_produce_glyphs): Be sure to set it->ascent and it->descent to
14536 non-negative.
14537 (x_produce_glyphs): If the composition method is ..._WITH_GLYPH_STRING,
14538 call font_prepare_composition unconditionally.
14539
14540 * xfns.c (x_make_gc): Use the default font id of the frame for GCs.
14541
14542 * xterm.h (struct x_display_info): New member font.
14543
14544 * xterm.c (x_set_cursor_gc): Use display_info->font->fid for GCs.
14545 (x_set_mouse_face_gc, x_new_font): Likewise.
14546 (x_term_init): Setup display_info->font.
14547 (x_delete_terminal): Free display_info->font.
14548
14549 * xfont.c (xfont_draw): Use BLOCK_INPUT and UNBLOCK_INPUT.
14550
14551 * ftxfont.c (ftxfont_default_fid): Delete it.
14552 (ftxfont_open): Set xfont->fid to 0.
14553 (ftxfont_end_for_frame): Clear data specific to the frame and the
14554 font-driver.
14555
14556 * xftfont.c (xftfont_default_fid): Delete it.
14557 (xftfont_open): Set xfont->fid to 0.
14558
14559 * fontset.c (FONTSET_OBJLIST): New macro.
14560 (fontset_find_font): Update font-object list of the fontset.
14561 (free_realized_fontset): New function.
14562 (free_face_fontset): Call free_realized_fontset.
14563 (Ffont_info): Call font_close_object only when enable_font_backend
14564 is set.
14565
14566 * font.c [HAVE_X_WINDOWS]: Include xterm.h.
14567 [HAVE_NTGUI]: Include w32term.h.
14568 [MAC_OS]: Include macterm.ch.
14569 (font_otf_ValueRecord): Use make_number.
14570 (font_finish_cache): Fix handling of reference count.
14571 (font_clear_cache): Update num_fonts.
14572 (font_open_entity): Update smallest_char_width and
14573 smallest_font_height of the frame.
14574 (font_close_object): Update num_fonts.
14575 (Fclear_font_cache): Fix finding the target cache data.
14576
14577 2008-02-16 Glenn Morris <rgm@gnu.org>
14578
14579 * fontset.c (Finternal_char_font): Fix compilation warning.
14580
14581 2008-02-16 Eli Zaretskii <eliz@gnu.org>
14582
14583 * w32.c (init_user_info): Use TOKEN_USER and TOKEN_PRIMARY_GROUP
14584 instead of char arrays. Enlarge the size of array passed to
14585 get_token_information.
14586
14587 * font.c (Ffont_fill_gstring, Fget_font_glyphs): Fix compilation
14588 warnings.
14589
14590 2008-02-15 Dan Nicolaescu <dann@ics.uci.edu>
14591
14592 * .gdbinit: Don't set `args', it breaks gdb --args.
14593
14594 2008-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
14595
14596 * fileio.c (Finsert_file_contents): Adjust offsets when replacing
14597 within a narrowed buffer.
14598
14599 2008-02-14 Kenichi Handa <handa@ni.aist.go.jp>
14600
14601 * coding.c (decode_coding_object, encode_coding_object):
14602 Preserve Vdeactivate_mark. Delete unnecessary call of Fcurrent_buffer.
14603
14604 2008-02-12 Stefan Monnier <monnier@iro.umontreal.ca>
14605
14606 * coding.c (coding_set_destination): Use BEG_BYTE rather than
14607 hardcoding 1.
14608 (detect_coding_system):
14609 * lisp.h (detect_coding_system, chars_in_text, multibyte_chars_in_text)
14610 (string_char_to_byte, string_byte_to_char, insert_from_gap):
14611 * insdel.c (insert_from_gap):
14612 * fns.c (string_char_byte_cache_charpos, string_char_byte_cache_bytepos)
14613 (string_char_to_byte, string_byte_to_char, string_make_multibyte)
14614 (string_to_multibyte):
14615 * character.c (chars_in_text, multibyte_chars_in_text):
14616 * fileio.c (Finsert_file_contents): Use EMACS_INT for buffer positions.
14617
14618 * character.h (FETCH_STRING_CHAR_ADVANCE)
14619 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE)
14620 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA and SREF.
14621 (DEC_POS, BUF_DEC_POS): Use BEG_BYTE rather than hardcoding 1.
14622
14623 * casefiddle.c (casify_region): Only call after-change and composition
14624 functions on the part of the region that was changed.
14625
14626 * keyboard.c (read_avail_input):
14627 * frame.c (Fdelete_frame): Call Fdelete_terminal.
14628
14629 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14630
14631 * buffer.c (clone_per_buffer_values, reset_buffer_local_variables)
14632 (Fbuffer_local_value, Fbuffer_local_variables): Don't forget undo_list.
14633
14634 2008-02-11 Juanma Barranquero <lekktu@gmail.com>
14635
14636 * w32menu.c (push_submenu_start, push_submenu_end)
14637 (push_left_right_boundary, push_menu_pane, push_menu_item):
14638 * keyboard.c (read_key_sequence): Don't pass args with side effects
14639 to AREF, it fails when compiling with -DENABLE_CHECKING.
14640
14641 2008-02-11 Kenichi Handa <handa@ni.aist.go.jp>
14642
14643 * Makefile.in (${lispsource}international/charprop.el):
14644 Delete this target.
14645
14646 * search.c (boyer_moore): Fix incorrect synching of the trunk and
14647 emacs-unicode-2.
14648
14649 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
14650
14651 * terminal.c (Fdelete_terminal): Clean up the `force' path.
14652
14653 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14654
14655 * frame.c (Qnoelisp): New symbol.
14656 (syms_of_frame): Initialize it.
14657 (Fdelete_frame): Use it to distinguish a mere `force' passed from some
14658 harmless Elisp code, from a strong `force' from x_connection_closed.
14659 * frame.h (Qnoelisp): Declare.
14660 * xterm.c (x_connection_closed): Pass `noelisp'.
14661
14662 * lisp.h (struct Lisp_Misc_Any, struct Lisp_Marker)
14663 (struct Lisp_Overlay, struct Lisp_Kboard_Objfwd)
14664 (struct Lisp_Save_Value, struct Lisp_Free): Use enum Lisp_Misc_Type
14665 rather than `int' for the type of `type'.
14666
14667 2008-02-10 Dan Nicolaescu <dann@ics.uci.edu>
14668
14669 * s/gnu-linux.h: Remove support for non-ELF and linux-1.x.
14670
14671 * Makefile.in (GNUC): Remove support for gcc-1.x.
14672
14673 2008-02-10 Richard Stallman <rms@gnu.org>
14674
14675 * lisp.h (ASET): Use AREF, not ASLOT.
14676
14677 2008-02-10 Stefan Monnier <monnier@iro.umontreal.ca>
14678
14679 * lisp.h (ASET): Check bounds.
14680
14681 2008-02-10 Glenn Morris <rgm@gnu.org>
14682
14683 * buffer.c (mode-name): Doc fix.
14684
14685 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14686
14687 * Makefile.in:
14688 * emacs.c:
14689 * gmalloc.c:
14690 * keyboard.c:
14691 * lisp.h:
14692 * m/ibm370aix.h:
14693 * process.c:
14694 * regex.c:
14695 * s/hpux.h:
14696 * sysdep.c:
14697 * sysselect.h:
14698 * systty.h:
14699 * unexec.c:
14700 * w32term.c:
14701 * xsmfns.c:
14702 * xterm.c: Remove code that deals with obsolete variables.
14703
14704 * s/msdos.h (DONT_NEED_ENVIRON): Don't define.
14705
14706 * ecrt0.c: Replace the DONT_NEED_ENVIRON test with MSDOS test,
14707 nothing else needs it anymore.
14708
14709 2008-02-09 Eli Zaretskii <eliz@gnu.org>
14710
14711 * buffer.h (FETCH_CHAR_AS_MULTIBYTE): Use unibyte_to_multibyte_table
14712 instead of unibyte_char_to_multibyte.
14713
14714 2008-02-09 Dan Nicolaescu <dann@ics.uci.edu>
14715
14716 * s/gnu-linux.h: Remove commented out code.
14717
14718 * unexec.c: Remove references to obsolete variable COFF_ENCAPSULATE.
14719
14720 * Makefile.in: Update what RMS says about using autoconf.
14721 (C_COMPILER, COFF_ENCAPSULATE, MAKE_PARALLEL): Remove obsolete variable.
14722 (C_SWITCH_MACHINE_1, C_SWITCH_SYSTEM_1, C_SWITCH_SITE_1)
14723 (C_SWITCH_X_SITE_1, C_SWITCH_X_MACHINE_1)
14724 (C_SWITCH_X_SYSTEM_1): Move invariant code outside conditional.
14725
14726 2008-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
14727
14728 * keymap.c (Fkey_description): Move side effect outside of macro call.
14729
14730 * xfaces.c (Finternal_make_lisp_face):
14731 * keyboard.c (add_command_key, parse_menu_item): Use ASET.
14732
14733 * fontset.c (free_face_fontset): Use FONTSET_FROM_ID.
14734 (syms_of_fontset): Use ASET.
14735
14736 * fns.c (concat): Move side effect outside of macro call.
14737 (hash_clear): Use ASET.
14738
14739 2008-02-08 Richard Stallman <rms@gnu.org>
14740
14741 * frame.c (Fdelete_frame): If FORCE, don't call hooks.
14742 If FORCE, and frame has a surrogate minibuffer for another frame,
14743 delete the other frame first.
14744
14745 2008-02-07 Timo Savola <timo.savola@iki.fi>
14746
14747 * xterm.c (x_detect_focus_change): Handle embed client message.
14748 (handle_one_xevent): Ditto.
14749 (handle_one_xevent): If embedded and we get a button press/release,
14750 request focus.
14751 (xembed_set_info, xembed_send_message): New functions.
14752 (x_make_frame_visible): Call xembed_set_info if embedded.
14753 (x_make_frame_invisible): Call xembed_set_info if embedded.
14754 (x_term_init): Initialize Xatom_XEMBED.
14755 (x_make_frame_visible): Check for FRAME_X_EMBEDDED_P also.
14756 (x_iconify_frame): Ditto.
14757
14758 * xterm.h (struct x_display_info): Add AtomXatom_XEMBED.
14759 (enum xembed_info, enum xembed_message, enum xembed_focus)
14760 (enum xembed_modifier, enum xembed_accelerator): New.
14761 (xembed_set_info, xembed_send_message): Declare.
14762 (FRAME_X_EMBEDDED_P): New.
14763
14764 * gtkutil.c (xg_create_frame_widgets): If frame is embedded, call
14765 gtk_plug_new.
14766
14767 * xfns.c (Fx_create_frame): Do not override the explicitly set parent
14768 window ID of a frame.
14769 (x_window): Reparent frame if embedded.
14770 (Fx_create_frame): Don't set border width if embedded.
14771
14772 * emacs.c (USAGE3): Add --parent-id.
14773 (standard_args): Ditto.
14774
14775 2008-02-07 Jan Djärv <jan.h.d@swipnet.se>
14776
14777 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Use "do...while (0)".
14778
14779 2008-02-07 Jim Meyering <meyering@redhat.com>
14780
14781 Use "do...while (0)", not "if (1)...else" in macro definitions.
14782 The latter provokes a warning from gcc about the empty else, when
14783 followed by ";". Also, without that trailing semicolon, it would
14784 silently swallow up any following statement.
14785 * syntax.h (SETUP_SYNTAX_TABLE)
14786 (SETUP_SYNTAX_TABLE_FOR_OBJECT): Likewise.
14787 * buffer.h (DECODE_POSITION): Likewise.
14788 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
14789 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): Likewise.
14790 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Likewise.
14791 (FETCH_CHAR_ADVANCE): Likewise.
14792 (FETCH_CHAR_ADVANCE_NO_CHECK): Likewise.
14793
14794 2008-02-07 Jim Meyering <meyering@redhat.com>
14795
14796 * lread.c [lint]: Don't include <sys/inode.h>.
14797
14798 2008-02-07 Stefan Monnier <monnier@iro.umontreal.ca>
14799
14800 * xselect.c (x_handle_dnd_message):
14801 * xmenu.c (digest_single_submenu, xmenu_show):
14802 * xdisp.c (with_echo_area_buffer_unwind_data)
14803 (format_mode_line_unwind_data, unwind_format_mode_line)
14804 (display_menu_bar):
14805 * eval.c (Ffetch_bytecode):
14806 * doc.c (store_function_docstring):
14807 * ccl.c (resolve_symbol_ccl_program, ccl_get_compiled_code)
14808 (Fccl_execute, Fccl_execute_on_string, Fregister_code_conversion_map):
14809 * buffer.c (add_overlay_mod_hooklist): Use ASET.
14810
14811 2008-02-07 Kenichi Handa <handa@m17n.org>
14812
14813 * ftxfont.c (ftxfont_open): Don't set
14814 dpyinfo->smallest_font_height and dpyinfo->smallest_char_width to 0.
14815
14816 * ftfont.c (ftfont_open): Fix previous change.
14817
14818 2008-02-06 Jason Rumney <jasonr@gnu.org>
14819
14820 * w32font.c (w32font_text_extents): Fill in lbearing metric.
14821 Use cached metrics for ASCII characters.
14822 (w32font_open_internal): Don't set font's owning_frame.
14823 Cache metrics for ASCII characters.
14824
14825 * w32font.h (struct w32font_info): Add ascii_metrics.
14826 Remove owning_frame.
14827
14828 2008-02-06 Kenichi Handa <handa@ni.aist.go.jp>
14829
14830 * xdisp.c (x_produce_glyphs): Don't set it->ascent and it->descent
14831 to negative value.
14832
14833 * ftxfont.c (ftxfont_draw): Use s->font_info, not face->font_info.
14834
14835 * ftfont.c (ftfont_open): Fix calculation of font->font.average_width.
14836
14837 * charset.c (syms_of_charset): Set QCtest and Qeq.
14838
14839 2008-02-06 Stefan Monnier <monnier@iro.umontreal.ca>
14840
14841 * process.c (Fstart_process):
14842 * callproc.c (Fcall_process): Handle the case where
14843 Funhandled_file_name_directory returns nil.
14844
14845 * font.h (enum lgstring_indices, enum lglyph_indices): New enums.
14846 (LGSTRING_SLOT, LGSTRING_SET_SLOT): New macros.
14847 * font.c (check_gstring): Use them and AREF to access the vector before
14848 we know it's really a gstring.
14849 (Ffont_shape_text): Fix typo.
14850 (Ffont_shape_text, Ffont_otf_alternates): Fix up int/Lisp_Object mixups.
14851
14852 * composite.h (Fcompose_region_internal, Fcompose_string_internal):
14853 Declare.
14854
14855 * chartab.c (make_sub_char_table): Remove noop-yet-incorrect statement.
14856
14857 2008-02-05 Jason Rumney <jasonr@gnu.org>
14858
14859 * w32font.c (w32font_open_internal): Fill min_width with tmAveCharWidth.
14860 Set smallest_font_height and smallest_char_width in display info.
14861
14862 2008-02-05 Kenichi Handa <handa@ni.aist.go.jp>
14863
14864 * coding.c (decode_eol): Pay attention to coding->dst_multibyte.
14865
14866 2008-02-05 Miles Bader <miles@gnu.org>
14867
14868 * xfaces.c (get_lface_attributes, merge_named_face)
14869 (lookup_named_face, lookup_derived_face, realize_named_face):
14870 Revert 2008-02-01 change by cyd@stupidchicken.com.
14871
14872 2008-02-04 Kenichi Handa <handa@ni.aist.go.jp>
14873
14874 * fontset.c (Ffontset_info): Handle the case of inhibitting the
14875 fallback fonts.
14876 (Ffontset_info) [USE_FONT_BACKEND]: Fix getting of opened font names.
14877
14878 2008-02-04 Jason Rumney <jasonr@gnu.org>
14879
14880 * w32font.c (w32font_open_internal): Use font_unparse_fcname to
14881 set full_name.
14882 (w32font_open_internal): Use xmalloc, xrealloc, xfree.
14883
14884 2008-02-03 Jason Rumney <jasonr@gnu.org>
14885
14886 * makefile.w32-in (OBJ1): Include font.o here.
14887 (FONTOBJ) [USE_FONTBACKEND]: Instead of here.
14888
14889 2008-02-02 Jason Rumney <jasonr@gnu.org>
14890
14891 * makefile.w32-in (temacs): Bump EMHEAP to 21.
14892
14893 2008-02-01 Jason Rumney <jasonr@gnu.org>
14894
14895 * s/cygwin.h: Define VIRT_ADDR_VARIES.
14896
14897 * puresize.h [VIRT_ADDR_VARIES]: Don't include CYGWIN in condition.
14898
14899 2008-02-01 Andreas Schwab <schwab@suse.de>
14900
14901 * Makefile.in (shortlisp, lisp): Update for rename of
14902 ../lisp/language/myanmar.el.
14903
14904 2008-02-01 Chong Yidong <cyd@stupidchicken.com>
14905
14906 * xfaces.c (get_lface_attributes): Delete function.
14907 (merge_named_face, lookup_named_face, lookup_derived_face)
14908 (realize_named_face): Call lface_from_face_name directly, and use
14909 the fact that merge_face_vectors does not alter its FROM argument.
14910
14911 2008-02-01 Jason Rumney <jasonr@gnu.org>
14912
14913 * w32term.c (w32_read_socket) <WM_CHAR>: Decode non-Unicode
14914 input in the default locale. Handle non-Unicode multibyte input.
14915
14916 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14917
14918 * fontset.c (reorder_font_vector): Exclude nil elements from the
14919 font group. Don't try multiple fonts.
14920 (fontset_font): Adjust for the above change.
14921 (Finternal_char_font): Return nil if the found font doesn't
14922 contain the character ch.
14923
14924 * Makefile.in (lisp, shortlisp): Add cham.el.
14925
14926 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14927
14928 * font.h (FONTP): Make it return 1 also for a font-object.
14929
14930 * .gdbinit (xfontset): New function.
14931
14932 * font.c (font_find_for_lface): Check if the character C is
14933 supported or not only for the first font.
14934
14935 * fontset.c (reorder_font_vector): Fix typo.
14936 (fontset_find_font): Don't add a font-spec specifying a script.
14937 Use 0 (not Qt) for the indication of empty font-group. Change the
14938 format of RFONT-DEF. Return Qt if no font in the font-group
14939 support the character.
14940 (fontset_font): Adjust for the above change. If no font was
14941 found the character, remember that.
14942 (face_for_char): Adjust for the change of RFONT-DEF.
14943 (Fset_fontset_font): Allow nil for FONT-SPEC to explicitly specify
14944 no font for the target.
14945 (Finternal_char_font): Adjust for the change of RFONT-DEF.
14946
14947 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14948
14949 * font.c (font_load_for_face): Handle the case that the font in
14950 face->lface is a string.
14951
14952 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14953
14954 * xfaces.c (set_lface_from_font_and_fontset): Set the fontname in lface.
14955
14956 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14957
14958 * xfaces.c (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]:
14959 Fix previous change. If the frame is not on a window system,
14960 signal an error.
14961
14962 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14963
14964 * coding.c (decode_coding_object, encode_coding_object): Adjust
14965 marker positions after conversion.
14966
14967 * lisp.h (struct Lisp_Marker): New member need_adjustment.
14968
14969 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14970
14971 * font.c (font_find_for_lface): Fix the handling of the return
14972 value of font_has_char.
14973 (Ffont_shape_text): Fix previous change.
14974
14975 * fontset.c (FONTSET_REF_AND_RANGE): Delete it.
14976 (fontset_ref_and_range): Delete it.
14977 (fontset_find_font): Call char_table_ref_and_range instead of
14978 FONTSET_REF_AND_RANGE.
14979 (make_fontset): Don't setup font groups of Latin here.
14980 (Fset_fontset_font): Don't overwrite the setting of FONTSET_ASCII.
14981 (new_fontset_from_font): Make the specified font the default for
14982 all Latin characters.
14983
14984 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14985
14986 * xfaces.c (Finternal_set_lisp_face_attribute): Check if the frame
14987 is on a window system before accessing the fontset of the frame.
14988
14989 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
14990
14991 * Makefile.in (lisp, shortlisp): Add kherm.el and myanmar.el.
14992
14993 * ftfont.c (ftfont_driver): Set ftfont_shape in ftfont_driver only
14994 when both HAVE_M17N_FLT and HAVE_LIBOTF are defined.
14995
14996 * font.c (Ffont_shape_text): If the font driver doesn't have a
14997 shaper function, make zero-width glyphs to have at least one-pixel
14998 width. Fix setting of `to' field of glyphs.
14999
15000 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15001
15002 * ftfont.c (ftfont_drive_otf): Fix setting of FROM and TO slots of
15003 glyphs.
15004
15005 * font.h (struct font_driver): Improve docstring of member `shape'.
15006
15007 2008-02-01 Kenichi Handa <handa@m17n.org>
15008
15009 * composite.c (syms_of_composite): Fix docstring of
15010 auto-composition-function.
15011
15012 * font.h (LGLYPH_SIZE): New macro.
15013
15014 * font.c (Ffont_fill_gstring): Stop filling when a character not
15015 supported by the font is found.
15016 (Ffont_shape_text): When a shape callback function returns nil,
15017 try at most two more times with larger gstring.
15018 (Ffont_at): Fix getting of w. Call font_at with correct 5th argument.
15019
15020 * xdisp.c (handle_auto_composed_prop): Change the argument to
15021 auto-composition-function.
15022
15023 * ftfont.c (ftfont_encode_char): Use the macro FONT_INVALID_CODE.
15024 (ftfont_shape_by_flt): If an element of lgstring is nil, make a
15025 Lispy glyph and store it in the lgstring.
15026
15027 * xfont.c (xfont_encode_char): Use the macro FONT_INVALID_CODE.
15028
15029 * xftfont.c (xftfont_encode_char): Use the macro FONT_INVALID_CODE.
15030
15031 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15032
15033 * font.c (Ffont_shape_text): Avoid unnecessary composition.
15034
15035 * fontset.c (Vfont_encoding_charset_alist): New variable.
15036 (syms_of_fontset): DEFVAR it.
15037 (reorder_font_vector, fontset_find_font): Optimize for the case of
15038 no need of reordering.
15039 (face_for_char): Map the charset property by
15040 Vfont_encoding_charset_alist.
15041
15042 2008-02-01 Jason Rumney <jasonr@gnu.org>
15043
15044 * w32font.c (logfonts_match): Don't check adstyle here.
15045 (font_matches_spec): Check here against physical font instead.
15046 (add_font_entity_to_list): Avoid some substitutions.
15047
15048 * font.c (font_parse_fcname): Default weight and slant to normal.
15049 (font_score): Prefer normal fonts if weight or slant unspecified.
15050 (font_score) [WINDOWSNT]: Scale weight difference down to closer
15051 match freetype scores.
15052
15053 2008-02-01 Jason Rumney <jasonr@gnu.org>
15054
15055 * w32font.c (w32font_text_extents): Don't use the frame stored in the
15056 font, as it may have been deleted.
15057 (w32_enumfont_pattern_entity): Map generic family to adstyle using
15058 most common hyphenless variation.
15059 (logfonts_match): Check generic family.
15060 (font_matches_spec): Don't check generic family here.
15061 (fill_in_logfont): Set generic family based on adstyle.
15062
15063 * w32font.h (w32font_get_cache): Update declaration.
15064
15065 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15066
15067 * ftfont.c (ftfont_get_cache): Adjust the argument type.
15068
15069 * frame.c (x_set_font_backend): Don't call Fclear_font_cache.
15070 If none of the new drivers are available, call font_update_drivers
15071 with the old drivers.
15072
15073 * w32font.c (w32font_get_cache): Adjust the argument type.
15074
15075 * xfont.c (xfont_get_cache): Adjust the argument type.
15076
15077 * font.h (struct font_driver): Change argument type of get_cache.
15078
15079 * xftfont.c (xftfont_start_for_frame): Delete prototype.
15080
15081 * font.c (Ffont_get): Fix arguments to Fassoc.
15082 (font_prepare_cache, font_finish_cache, font_get_cache): New functions.
15083 (font_clear_cache): New function.
15084 (font_list_entities, font_matching_entity): Use font_get_cache.
15085 (font_update_drivers): Call font_clear_cache when finishing a driver.
15086
15087 * fontset.c (fontset_find_font): Fix previous change.
15088
15089 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15090
15091 * xterm.c (x_check_font) [USE_FONT_BACKEND]: Don't access
15092 dpyinfo->font_table.
15093 (x_delete_display) [USE_FONT_BACKEND]: Likewise.
15094 (x_delete_terminal) [USE_FONT_BACKEND]: Likewise.
15095
15096 * font.c (font_at): Handle the case that the arg C is negative.
15097 Handle the unibyte case.
15098 (Ffont_at): Call font_at with the arg C -1.
15099
15100 * xdisp.c (handle_auto_composed_prop): Don't get a character at
15101 the position here, and call font_at with the arg C -1.
15102 Don't check the range of the existing composition at the point.
15103
15104 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15105
15106 * fontset.c (fontset_add): New args charset_id and family.
15107 Change caller.
15108 (load_font_get_repertory, fontset_find_font): Assume that
15109 font_spec is always a font-spec object.
15110 (Fset_fontset_font): Always store a font-spec object in a fontset.
15111
15112 * xdisp.c (handle_auto_composed_prop): Use Fget_text_property
15113 instead of get_property_and_range.
15114
15115 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15116
15117 * xftfont.c (struct xftfont_info): Delete the member ft_face.
15118 (xftfont_open): Don't keep locking face.
15119 (xftfont_close): Don't unlock face.
15120 (xftfont_anchor_point, xftfont_shape): Lock and unlock face.
15121
15122 * fontset.c (fontset_find_font): Don't prefer a font of
15123 supplementary charset.
15124
15125 2008-02-01 Kenichi Handa <handa@m17n.org>
15126
15127 * ftfont.c (struct OpenTypeSpec): Rename members script_tag to
15128 script, langsys_tag to langsys, new member script.
15129 (OTF_TAG_STR): Terminate by '\0'.
15130 (ftfont_get_open_type_spec): If :otf prop is spec, limit the
15131 listing to the script specified in that property. Fix arg to
15132 OTF_check_features.
15133
15134 2008-02-01 Jason Rumney <jasonr@gnu.org>
15135
15136 * w32font.h: New file.
15137
15138 * w32font.c: Include it.
15139 (struct w32font_info): Add owning_frame field. Move to w32font.h.
15140 (w32font_open): Set owning_frame.
15141 (w32font_text_extents): Use owning_frame.
15142 (struct font_callback_data): Add opentype_only field.
15143 (add_font_entity_to_list): Use it to filter fonts.
15144 Don't check against full name.
15145 (w32font_list_internal): New function.
15146 (w32font_list): Use it.
15147 (w32font_match_internal): New function.
15148 (w32font_match): Use it.
15149 (w32font_open_internal): New function.
15150 (w32font_open): Use it.
15151 (w32font_get_cache, w32font_close, w32font_has_char)
15152 (w32font_encode_char, w32font_text_extents, w32font_draw):
15153 Make non-static.
15154
15155 * makefile.w32-in (w32font.o): Depend on w32font.h.
15156
15157 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15158
15159 * charset.c (Fdefine_charset_internal): Record a supplementary
15160 charset at the tail of Vcharset_order_list.
15161
15162 * font.c (Ffont_shape_text): Fix the return value.
15163
15164 * ftfont.c (OTF_SYM_TAG, OTF_TAG_STR): Fix argument names.
15165
15166 * xdisp.c (handle_auto_composed_prop): Fix previous change.
15167
15168 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15169
15170 * ftfont.c (struct OpenTypeSpec): New struct.
15171 (OTF_SYM_TAG, OTF_TAG_STR): New macros.
15172 (ftfont_get_open_type_spec): New function.
15173 (ftfont_list) [HAVE_LIBOTF]: Check otf-spec property.
15174
15175 * lread.c (read1): Redo the previous change with checking Vpurify_flag.
15176
15177 2008-02-01 Jason Rumney <jasonr@gnu.org>
15178
15179 * w32font.c (add_font_entity_to_list): Compare only the beginning
15180 of full name.
15181
15182 2008-02-01 Kenichi Handa <handa@m17n.org>
15183
15184 * xdisp.c (handle_auto_composed_prop): Simplify the code.
15185 Never return HANDLED_RECOMPUTE_PROPS.
15186
15187 2008-02-01 Kenichi Handa <handa@m17n.org>
15188
15189 * font.c (font_gstring_produce): Delete it.
15190
15191 * composite.h (COMPOSITION_METHOD):
15192 Handle COMPOSITION_WITH_GLYPH_STRING.
15193
15194 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15195
15196 * xfont.c (Qx): Delete.
15197 (syms_of_xfont): Don't initialize Qx.
15198
15199 * composite.h (enum composition_method):
15200 Define COMPOSITION_WITH_GLYPH_STRING unconditionally.
15201
15202 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15203
15204 * xfaces.c [HAVE_WINDOW_SYSTEM]: Include "font.h" unconditionally.
15205 (choose_face_font): Accept new form of font-spec.
15206
15207 * frame.h (font_driver_list): Declare it unconditionally.
15208 (struct frame): Define members font_driver_list and font_data_list
15209 unconditionally.
15210
15211 * fontset.c: Include "font.h" unconditionally.
15212 (generate_ascii_font_name): Use font_parse_xlfd and font_unparse_xlfd.
15213 (Fset_fontset_font): Accept a font-spec object.
15214
15215 * font.c (font_unparse_xlfd): If pixel_size is zero, make the
15216 PIXEL_SIZE part a wild card.
15217
15218 * dispextern.h (struct glyph_string): Define members clip and
15219 num_clips unconditionally.
15220 (struct face): Define members font_info and extra unconditionally.
15221
15222 * ftfont.c (ftfont_open): Set members maybe_otf and otf of
15223 ftfont_info only when HAVE_LIBOTF is defined.
15224
15225 2008-02-01 Andreas Schwab <schwab@suse.de>
15226
15227 * xdisp.c (back_to_previous_visible_line_start): Fix type of beg
15228 and end.
15229
15230 2008-02-01 Jason Rumney <jasonr@gnu.org>
15231
15232 * w32font.c (w32font_driver): Add new fields.
15233
15234 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15235
15236 * Makefile.in (ALL_CFLAGS): Add @M17N_FLT_CFLAGS@.
15237 (FONTSRC, FONTOBJ) [HAVE_WINDOW_SYSTEM]: Set them unconditionally.
15238 (LIBES): Add @M17N_FLT_CFLAGS@.
15239
15240 * composite.c (compose_text): Don't treat the new style
15241 composition specially.
15242
15243 * emacs.c (main): Call syms_of_font unconditionally.
15244
15245 * font.h (FONT_ENTITY_NOT_LOADABLE)
15246 (FONT_ENTITY_SET_NOT_LOADABLE): New macros.
15247 (LGSTRING_XXXX, LGLYPH_XXX): Adjust for the change of lispy gstring.
15248 (struct font_driver): New member shape.
15249 (font_registry_charsets): Extern it.
15250 (font_find_for_lface, font_prepare_composition): Adjust prototype.
15251 (font_otf_capability, font_drive_otf): Delete their externs.
15252
15253 * font.c [HAVE_M17N_FLT]: Include <m17n-flt.h>.
15254 (font_charset_alist, font_registry_charsets): Move from xfont.c
15255 and rename.
15256 (font_prop_validate_otf): New function.
15257 (font_property_table): Register it for QCotf.
15258 (DEVICE_DELTA, adjust_anchor, REPLACEMENT_CHARACTER)
15259 (font_drive_otf): Delete.
15260 (font_prepare_composition): New arg F. Adjust for the change of
15261 lispy gstring.
15262 (font_find_for_lface): New arg C.
15263 (font_load_for_face): Adjust for the change of font_find_for_lface.
15264 (Ffont_make_gstring, Ffont_fill_gstring): Adjust for the change of
15265 lispy gstring.
15266 (Ffont_shape_text): New function.
15267 (Fopen_font): If the font size is not given, use 12-pixel.
15268 (Ffont_at): New arg STRING.
15269 (syms_of_font): Initalize font_charset_alist.
15270 Declare Ffont_shape_text as a Lisp function. Call syms_of_XXfont
15271 conditionally.
15272
15273 * fontset.c (fontset_find_font) [USE_FONT_BACKEND]: Try multiple
15274 fonts of the same font-spec. Change the format of RFONT-DEF.
15275 (face_for_char, make_fontset_for_ascii_face, Finternal_char_font):
15276 Adjust for the change of RFONT-DEF.
15277 (Fset_fontset_font) [USE_FONT_BACKEND]: Handle new format of font-spec.
15278
15279 * ftfont.h: New file.
15280
15281 * ftfont.c: Don't include Freetype headers. Include "ftfont.h".
15282 (struct ftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15283 (ftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15284 (ftfont_driver) [HAVE_LIBOTF, HAVE_M17N_FLT]: Don't set
15285 font_otf_capability and font_drive_otf, set ftfont_shape.
15286 (ftfont_list): Adjust for the change of :otf property value.
15287 (struct MFLTFontFT) [HAVE_LIBOTF, HAVE_M17N_FLT]: New struct.
15288 (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_check_otf)
15289 (adjust_anchor, ftfont_drive_otf, ftfont_shape_by_flt)
15290 (ftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15291 (DEVICE_DELTA) [HAVE_LIBOTF, HAVE_M17N_FLT]: New macro.
15292 (otf_gstring, gstring, m17n_flt_initialized): New variables.
15293
15294 * w32term.c (x_draw_composite_glyph_string_foreground):
15295 Adjust for the change of lispy gstring.
15296
15297 * xdisp.c (handle_composition_prop): Adjust for the change of
15298 lispy gstring. Call a function for auto-composition with the
15299 third arg it->window.
15300 (fill_composite_glyph_string): Adjust for the change of lispy string.
15301 (x_produce_glyphs): Adjust for the change of font_prepare_compositionl.
15302
15303 * xfaces.c (set_font_frame_param): Adjust for the change of
15304 font_find_for_lface.
15305
15306 * xfont.c (x_font_charset_alist): Move to font.c and rename.
15307 (xfont_registry_charsets): Likewise. Change caller.
15308 (syms_of_xfont): Don't handle x_font_charset_alist.
15309
15310 * xftfont.c: Include "ftfont.h".
15311 (struct xftfont_info) [HAVE_LIBOTF]: New members maybe_otf and otf.
15312 (xftfont_open) [HAVE_LIBOTF]: Initialize the above members.
15313 (xftfont_close) [HAVE_LIBOTF]: Close otf.
15314 (xftfont_shape) [HAVE_LIBOTF, HAVE_M17N_FLT]: New function.
15315 (syms_of_xftfont) [HAVE_LIBOTF, HAVE_M17N_FLT]:
15316 Set xftfont_driver.shape to xftfont_shape.
15317
15318 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
15319 the change of lispy gstring.
15320
15321 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15322
15323 * ftxfont.c (ftxfont_end_for_frame): Fix array indexing error.
15324
15325 2008-02-01 Jason Rumney <jasonr@gnu.org>
15326
15327 * w32font.c (w32font_draw): Fill background manually.
15328
15329 2008-02-01 Jason Rumney <jasonr@gnu.org>
15330
15331 * font.c (Qfontp): Remove unused symbol.
15332 (QCantialias): New symbol.
15333 (syms_of_font): Define it.
15334 (font_property_table): Set a validator for QCantialias.
15335
15336 * w32font.c (CLEARTYPE_QUALITY, CLEARTYPE_NATURAL_QUALITY):
15337 Define if not already.
15338 (QCfamily): Share with xfaces.c.
15339 (Qstandard, Qsubpixel, Qnatural): New symbols.
15340 (syms_of_w32font): Define them. Don't define QCfamily here.
15341 (w32_antialias_type, lispy_antialias_type): New functions.
15342 (w32_enumfont_pattern_entity): New arg requested_font.
15343 Set antialias parameter if non-default was requested.
15344 (fill_in_logfont): Fill in lfQuality if :antialias specified.
15345
15346 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15347
15348 * lread.c (read1): Undo the previous change.
15349
15350 2008-02-01 CHENG Gao <chenggao@gmail.com> (tiny change)
15351
15352 * frame.c (Fdelete_frame): Call font_update_drivers only when
15353 USE_FONT_BACKEND is defined.
15354
15355 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15356
15357 * font.h (struct font_bitmap): New member bits_per_pixel.
15358 (struct font_driver): New members start_for_frame and end_for_frame.
15359 (struct font_data_list): New struct.
15360 (font_put_frame_data, font_get_frame_data): Extern them.
15361
15362 * frame.h (struct frame): New member font_data_list.
15363
15364 * font.c (font_update_drivers): Call driver->start_for_frame and
15365 driver->end_for_frame at proper timings.
15366 (font_put_frame_data, font_get_frame_data): New functions.
15367 (Ffont_spec): Add usage in the docstring.
15368
15369 * frame.c (make_frame): Initialize f->font_data_list to NULL.
15370 (Fdelete_frame): Call font_update_drivers.
15371
15372 * xftfont.c (struct xftface_info): Delete the member xft_draw.
15373 (xftfont_prepare_face, xftfont_done_face): Adjust for the above change.
15374 (xftfont_get_xft_draw): New function.
15375 (xftfont_draw): Get XftDraw by xftfont_get_xft_draw.
15376 (xftfont_end_for_frame): New function.
15377 (syms_of_xftfont): Set xftfont_driver.end_for_frame.
15378
15379 * ftxfont.c (ftxfont_get_gcs): Rename from ftxfont_create_gcs.
15380 Change argument. Cache GCs in the per-frame data.
15381 (struct ftxfont_frame_data): New struct.
15382 (ftxfont_draw_bitmap): New arg gc_fore and flush.
15383 (ftxfont_prepare_face, ftxfont_done_face): Delete them.
15384 (ftxfont_draw): Get GCs by ftxfont_get_gcs. Reflect s->clip in GCs.
15385 (ftxfont_end_for_frame): New function.
15386 (syms_of_ftxfont): Set ftxfont_driver.end_for_frame.
15387
15388 * ftfont.c (ftfont_get_bitmap): Set bitmap->bits_per_pixel.
15389
15390 2008-02-01 Kenichi Handa <handa@m17n.org>
15391
15392 * xselect.c (Vselection_coding_system)
15393 (Vnext_selection_coding_system): Delete them.
15394 (syms_of_xselect): Don't declare selection-coding-system and
15395 next-selection-coding-system. They are declared in select.el.
15396
15397 2008-02-01 Jason Rumney <jasonr@gnu.org>
15398
15399 * w32term.h (WM_UNICHAR, UNICODE_NOCHAR): Define if not already.
15400
15401 * w32fns.c: Include imm.h.
15402 (get_composition_string_fn, get_ime_context_fn): New optional
15403 system functions.
15404 (globals_of_w32fns): Load them from imm32.dll.
15405 (ignore_ime_char): New flag.
15406 (w32_wnd_proc): Handle WM_UNICHAR, WM_IME_CHAR and
15407 WM_IME_ENDCOMPOSITION messages.
15408
15409 * w32term.c (w32_read_socket) [WM_UNICHAR]: Handle as
15410 MULTIBYTE_CHAR_KEYSTROKE_EVENT.
15411
15412 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15413
15414 * lread.c (READCHAR): Call readchar with the 2nd arg NULL.
15415 (READCHAR_REPORT_MULTIBYTE): New macro.
15416 (readchar): New 2nd arg MULTIBYTE.
15417 (read1): Use READCHAR_REPORT_MULTIBYTE for the first read.
15418 Make symbol's name multibyte according to the multibyteness of the
15419 source.
15420
15421 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15422
15423 * xfaces.c (face_for_overlay_string): Call lookup_face with
15424 correct arguments (fix of synching with the trunk).
15425
15426 2008-02-01 Kenichi Handa <handa@m17n.org>
15427
15428 * font.c (font_prop_validate_symbol, font_prop_validate_style)
15429 (font_prop_validate_non_neg, font_prop_validate_spacing):
15430 Delete argument prop_index.
15431 (font_property_table): Change arguments to validater. Change Callers.
15432 (font_lispy_object): Delete.
15433 (font_at): Use font_find_object instead fo font_lispy_object.
15434
15435 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
15436
15437 * fileio.c (Fexpand_file_name): Adjust multibyteness of directory
15438 and file names.
15439
15440 2008-02-01 Jason Rumney <jasonr@gnu.org>
15441
15442 * w32font.c (add_font_name_to_list): Avoid vertical fonts.
15443 (font_matches_spec): Remove debug output.
15444 (add_font_entity_to_list): Avoid using substituted fonts.
15445
15446 2008-02-01 Jason Rumney <jasonr@gnu.org>
15447
15448 * doc.c (Fsnarf_documentation):
15449 * Makefile.in (temacs${EXEEXT}, mostlyclean): Undo last change.
15450
15451 2008-02-01 Miles Bader <miles@gnu.org>
15452
15453 * dispextern.h (struct glyph_row): Only define "clip" field if
15454 HAVE_WINDOW_SYSTEM is defined.
15455
15456 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15457
15458 Fix up multi-tty merge.
15459
15460 * xterm.c (handle_one_xevent): Remove duplicate code and fix up nesting
15461 and indentation.
15462
15463 * xfaces.c (free_realized_face, clear_face_gcs):
15464 Include font_done_for_face in the input_blocked section, just in case.
15465
15466 * xdisp.c (decode_mode_spec): Use terminal-local coding systems.
15467 (get_char_face_and_encoding): Undo last change and remove the *other*
15468 duplicate definition (i.e. keep the one that's better scoped and that
15469 includes code for the font-backend).
15470
15471 * terminal.c (create_terminal): Default keyboard_coding to
15472 `no-conversion' and terminal_coding to `undecided'.
15473
15474 * lread.c (read1): Use XSETPVECTYPE to set a pseudovector's tag.
15475
15476 * fontset.c (free_realized_fontsets): Check that the table entry does
15477 contain a fontset before trying to compare it to `base'.
15478
15479 * emacs.c (main): Move syms_of_data, syms_of_fileio, syms_of_alloc,
15480 syms_of_charset, and syms_of_coding earlier because init_window_once
15481 now needs Vcoding_system_hash_table to be setup.
15482
15483 * coding.h (default_buffer_file_coding): Remove.
15484
15485 * coding.c (default_buffer_file_coding): Remove.
15486 (Fterminal_coding_system, Fkeyboard_coding_system): Use ->id rather
15487 than ->symbol, and use the terminal-local coding system.
15488 (syms_of_coding): Don't setup the coding-systems that are not
15489 terminal-local.
15490 (Fdefine_coding_system_internal): Use XCAR/XCDR.
15491
15492 * chartab.c (Fmake_char_table, make_sub_char_table, copy_char_table):
15493 Use XSETPVECTYPE now that XSETCHAR_TABLE doesn't set the tag anymore.
15494
15495 * alloc.c (Fmake_char_table, make_sub_char_table): Remove. They're now
15496 in chartab.c and were re-added here by mistake.
15497 (Fpurecopy): Use XSETPVECTYPE after copying a COMPILED pseudovector.
15498
15499 * doc.c (Fsnarf_documentation):
15500 * Makefile.in (temacs${EXEEXT}, mostlyclean): Move buildobj.lst from
15501 src to etc.
15502
15503 * ChangeLog.10: Add mistakenly removed entry.
15504
15505 2008-02-01 Dan Nicolaescu <dann@ics.uci.edu>
15506
15507 * Makefile.in (fringe.o, minibuf.o): Fix dependencies.
15508
15509 2008-02-01 Miles Bader <miles@gnu.org>
15510
15511 * xdisp.c (get_char_face_and_encoding): Remove extraneous definition.
15512 Add extra args to FACE_FOR_CHAR.
15513
15514 2008-02-01 Kenichi Handa <handa@m17n.org>
15515
15516 * keymap.c (where_is_internal_1): If key is a cons, store the copy
15517 in sequence.
15518
15519 * chartab.c (map_sub_char_table, map_char_table): If the range
15520 contains just one character, call the function with that character
15521 even if the depth is not 3.
15522
15523 2008-02-01 Jason Rumney <jasonr@gnu.org>
15524
15525 * w32font.c (w32font_text_extents): Calculate metrics for the
15526 whole string.
15527
15528 2008-02-01 Jason Rumney <jasonr@gnu.org>
15529
15530 * w32xfns.c (get_next_msg): Consolidate WM_PAINT messages.
15531
15532 2008-02-01 Jason Rumney <jasonr@gnu.org>
15533
15534 * w32term.c (x_set_glyph_string_clipping): Use
15535 get_glyph_string_clip_rects.
15536 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15537 Adjust for the change of struct glyph_string.
15538
15539 * w32font.c (w32font_draw): Do clipping here.
15540
15541 2008-02-01 Kenichi Handa <handa@m17n.org>
15542
15543 * xftfont.c (xftfont_draw): Adjust for the change of struct
15544 glyph_string.
15545
15546 * xterm.c (x_set_glyph_string_clipping): Use
15547 get_glyph_string_clip_rects.
15548 (x_set_glyph_string_clipping_exactly, x_draw_glyph_string):
15549 Adjust for the change of struct glyph_string.
15550
15551 * xdisp.c (get_glyph_string_clip_rects): Reflect s->row->clip to
15552 the resulting clip(s}.
15553 (expose_overlaps): Add arg r. Change callers. Set it to
15554 row->clip temporarily.
15555 (expose_window): Redraw rows overlapping the exposed area.
15556
15557 * dispextern.h (struct glyph_row): New member clip.
15558 (struct glyph_string): Delete members clip_x, clip_y, clip_width,
15559 clip_height, new member clip, and num_clips.
15560
15561 2008-02-01 Kenichi Handa <handa@m17n.org>
15562
15563 * data.c (Fchar_or_string_p): Fix docstring.
15564
15565 2008-02-01 Kenichi Handa <handa@m17n.org>
15566
15567 * xftfont.c (xftfont_draw): If s->font_info != s->face->font_info,
15568 create a temporary XftDraw object.
15569
15570 2008-02-01 Kenichi Handa <handa@m17n.org>
15571
15572 * font.c (Ffontp): Fix docstring.
15573
15574 * coding.c (detect_coding_iso_2022): Don't treat SI/SO codes as a
15575 strong evidence of ISO-2022.
15576
15577 2008-02-01 Kenichi Handa <handa@m17n.org>
15578
15579 * abbrev.c (abbrev_check_chars): Use CHAR_TABLE_REF, not
15580 SYNTAX_ENTRY_FOLLOW_PARENT.
15581
15582 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
15583
15584 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and change
15585 its type.
15586 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
15587 Update to the new type of weak_hash_tables and next_weak.
15588
15589 * lisp.h (struct Lisp_Hash_Table): Change next_weak from Lisp_Object to
15590 a plain C pointer to Lisp_Hash_Table.
15591
15592 * lisp.h (XGCTYPE, GC_HASH_TABLE_P, GC_NILP, GC_NUMBERP, GC_NATNUMP)
15593 (GC_INTEGERP, GC_SYMBOLP, GC_MISCP, GC_VECTORLIKEP, GC_STRINGP)
15594 (GC_CONSP, GC_FLOATP, GC_VECTORP, GC_OVERLAYP, GC_MARKERP)
15595 (GC_INTFWDP, GC_BOOLFWDP, GC_OBJFWDP, GC_BUFFER_OBJFWDP)
15596 (GC_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP)
15597 (GC_KBOARD_OBJFWDP, GC_PSEUDOVECTORP, GC_WINDOW_CONFIGURATIONP)
15598 (GC_PROCESSP, GC_WINDOWP, GC_SUBRP, GC_COMPILEDP, GC_BUFFERP)
15599 (GC_SUB_CHAR_TABLE_P, GC_CHAR_TABLE_P, GC_BOOL_VECTOR_P, GC_FRAMEP)
15600 (GC_EQ): Remove since they've been identical to their non-GC_
15601 alter-egos ever since the markbit was eradicated.
15602
15603 * alloc.c:
15604 * buffer.c:
15605 * buffer.h:
15606 * data.c:
15607 * fileio.c:
15608 * filelock.c:
15609 * fns.c:
15610 * frame.h:
15611 * lisp.h:
15612 * macterm.c:
15613 * print.c:
15614 * process.c:
15615 * w32fns.c:
15616 * w32menu.c:
15617 * w32term.c:
15618 * xfns.c:
15619 * xmenu.c:
15620 * xterm.c: Replace uses of GC_* macros with the non-GC_ versions.
15621
15622 2008-02-01 Kenichi Handa <handa@m17n.org>
15623
15624 * chartab.c (map_sub_char_table): Make it work for the top-level
15625 char-table. Fix handling of parent char-table.
15626 (map_char_table): Adjust for the above change.
15627
15628 2008-02-01 Jason Rumney <jasonr@gnu.org>
15629
15630 * w32font.c (Qgdi): Rename from Qw32.
15631
15632 2008-02-01 Jason Rumney <jasonr@gnu.org>
15633
15634 * w32bdf.c (get_quoted_string): Make function static.
15635
15636 2008-02-01 Kenichi Handa <handa@m17n.org>
15637
15638 * xftfont.c (xftfont_open): If one of font's ASCII glyph has
15639 bigger ascent and descent than those of the font, use them as
15640 font's ascent and descent.
15641
15642 2008-02-01 Kenichi Handa <handa@m17n.org>
15643
15644 * Makefile.in (${lispsource}international/charprop.el): Move this
15645 target within "#ifdef HAVE_UNIDATA" and "#endif".
15646
15647 2008-02-01 Kenichi Handa <handa@m17n.org>
15648
15649 * Makefile.in (lisp): Add ${lispsource}language/tai-viet.el.
15650 (shortlisp): Add ../lisp/language/tai-viet.el.
15651
15652 2008-02-01 Ulrich Mueller <ulm@gentoo.org>
15653
15654 * Makefile.in (${lispsource}international/charprop.el): Depend on
15655 temacs${EXEEXT}.
15656
15657 2008-02-01 Jason Rumney <jasonr@gnu.org>
15658
15659 * w32font.c (w32font_close): Delete the GDI font object.
15660
15661 * w32menu.c: Include character.h.
15662
15663 * w32proc.c: Likewise.
15664
15665 * w32select.c: Likewise.
15666
15667 * makefile.w32-in (w32proc.o): Depend on character.h.
15668
15669 2008-02-01 Jason Rumney <jasonr@gnu.org>
15670
15671 * w32fns.c (syms_of_w32fns): Use DEFSYM macro.
15672
15673 * w32menu.c (syms_of_w32menu): Likewise.
15674
15675 * w32proc.c (syms_of_ntproc): Likewise.
15676
15677 * w32select.c (syms_of_w32select): Likewise.
15678
15679 * w32term.c (syms_of_w32term): Likewise.
15680
15681 2008-02-01 Jason Rumney <jasonr@gnu.org>
15682
15683 * w32font.c (w32font_draw): Delete brush after using it.
15684
15685 2008-02-01 Jason Rumney <jasonr@gnu.org>
15686
15687 * w32font.c (w32font_open): Don't set font_idx.
15688 (w32font_text_extents): Try GetTextExtentPoint32W before defaulting
15689 to font settings.
15690 (w32font_draw): Fill background explicitly.
15691
15692 2008-02-01 Jason Rumney <jasonr@gnu.org>
15693
15694 * w32term.c (w32_initialize): Don't call w32font_initialize.
15695
15696 * w32font.c (w32font_info): Remove subranges.
15697 (QCsubranges, Qmodern, Qswiss, Qroman): Remove.
15698 (QCfamily, Qmonospace, Qsans_serif, Qmono, Qsans, Qsans__serif)
15699 (Qraster, Qoutline, Qlatin, Qgreek, Qcoptic, Qcyrillic, Qarmenian)
15700 (Qhebrew, Qarabic, Qsyriac, Qnko, Qthaana, Qdevanagari, Qbengali)
15701 (Qgurmukhi, Qgujarati, Qoriya, Qtamil, Qtelugu, Qkannada)
15702 (Qmalayalam, Qsinhala, Qthai, Qlao, Qtibetan, Qmyanmar, Qgeorgian)
15703 (Qhangul, Qethiopic, Qcherokee, Qcanadian_aboriginal, Qogham)
15704 (Qrunic, Qkhmer, Qmongolian, Qsymbol, Qbraille, Qhan)
15705 (Qideographic_description, Qcjk_misc, Qkana, Qbopomofo, Qkanbun)
15706 (Qyi, Qbyzantine_musical_symbol, Qmusical_symbol, Qmathematical):
15707 New symbols.
15708 (font_callback_data): New struct.
15709 (w32font_list, w32font_match): Use it.
15710 (w32font_open): Don't populate subranges.
15711 (w32font_has_char): Use script Lisp symbols, not subrange bitmask.
15712 (w32font_encode_char): Always return unicode code-point as-is.
15713 (w32font_text_extents): Supply a transformation matrix to
15714 GetGlyphOutline. Never look up by glyph index. Avoid looping
15715 twice. Use unicode version of GetTexExtentPoint32 instead of
15716 glyph index version.
15717 (set_fonts_frame): Remove.
15718 (w32_enumfont_pattern_entity): Add frame parameter, use it to
15719 set frame parameter. Use backward compatible fake foundries.
15720 Save generic family in extra slot under QCfamily. Make width slot
15721 constant. Save QCspacing value. Save list of scripts instead of
15722 binary subranges.
15723 (w32_generic_family, logfonts_match, font_matches_spec): New functions.
15724 (add_font_entity_to_list): Use font_callback_data struct. Filter
15725 unwanted fonts.
15726 (add_one_font_entity_to_list): Use font_callback_data struct.
15727 (w32_registry): Default to iso10646_1.
15728 (fill_in_logfont): Use dpi from extra slot. Don't bother with
15729 string font registries. Don't fill in font name if it is a generic
15730 family name, fill family instead. Use spacing, family and script
15731 extra info to fill pitch, family and charset fields.
15732 (list_all_matching_fonts): Use font_callback_data struct.
15733 (unicode_range_for_char): Remove.
15734 (font_supported_scripts): New function.
15735 (w32font_initialize): Remove.
15736 (syms_of_w32font): Update which symbols are defined.
15737
15738 2008-02-01 Jason Rumney <jasonr@gnu.org>
15739
15740 * font.c (font_pixel_size): Reverse assq_no_quit args.
15741
15742 * w32term.h (FONT_WIDTH): Report max width, not average.
15743 (FONT_MAX_WIDTH): Remove.
15744 (FONT_AVG_WIDTH): New macro.
15745
15746 * xfaces.c (Fx_list_fonts) [WINDOWSNT]: Remove Windows only
15747 redefinition of FONT_WIDTH.
15748
15749 * w32term.c (x_font_min_bounds): Use FONT_AVG_WIDTH.
15750 (w32_cache_char_metrics): Use FONT_WIDTH.
15751
15752 * w32fns.c (w32_load_system_font, w32_list_fonts): Use FONT_AVG_WIDTH.
15753
15754 2008-02-01 Jason Rumney <jasonr@gnu.org>
15755
15756 * w32font.c (w32font_open): Make lfHeight negative.
15757
15758 * w32fns.c (x_default_font_parameter): Use new style font name.
15759 (Fx_create_frame, x_create_tip_frame): Initialize resx and resy.
15760
15761 2008-02-01 Jason Rumney <jasonr@gnu.org>
15762
15763 * w32font.c (QCsubranges): New symbol.
15764 (w32font_open, w32font_has_char): Get subranges from subproperty
15765 of extra.
15766 (w32_enumfont_pattern_entity): Set subranges as subproperty of extra.
15767 (syms_of_w32font): Define :subranges symbol.
15768
15769 * font.c (font_put_extra): Expose externally.
15770
15771 * font.h (font_put_extra): Move declaration from font.c.
15772
15773 * font.c (Ffont_get): Use font driver to determine otf capability.
15774 (adjust_anchor): Check if driver defines anchor_point before using.
15775
15776 * w32font.c (w32font_open): Handle size, height and pixel_size better.
15777 (w32font_draw): Use options.
15778 (w32_enumfont_pattern_entity): Set size to 0 for scalable fonts.
15779 Fix detection of truetype fonts.
15780 (registry_to_w32_charset): Handle charsets other than iso8859-1
15781 expressed as lisp symbols.
15782 (w32_registry): Express charset as lisp symbol.
15783 (fill_in_logfont): Reverse pixel and point height logic.
15784 Don't set width here. Set quality to default.
15785
15786 * w32fns.c (w32_load_system_font): Fix detecting FIXED_PITCH fonts.
15787 (x_to_w32_font): Fill in lfPitchAndFamily correctly.
15788
15789 * xterm.c (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15790 Remove redundant loop and allocation.
15791
15792 * makefile.w32-in (font.o, w32font.o): New objects.
15793 (fontset.o, xdisp.o, xfaces.o, w32fns.o, w32term.o): Depend on font.h.
15794 (FONTOBJ): New group of objects conditioned on USE_FONT_BACKEND.
15795
15796 * xdisp.c (fill_composite_glyph_string): Make the first arg to
15797 STORE_XCHARB a valid l-value.
15798
15799 * w32term.c (w32_native_per_char_metric): Swap width and rbearing
15800 calculations for non-Truetype fonts.
15801 (x_draw_glyph_string): Sync with xterm.c.
15802 (x_draw_glyph_string_foreground) [USE_FONT_BACKEND]:
15803 Remove redundant code.
15804 (w32_initialize) [USE_FONT_BACKEND]: Call w32font_initialize.
15805
15806 * w32term.h (w32_output_data) [USE_FONT_BACKEND]: Add fontp member.
15807 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro from xterm.h.
15808
15809 * w32fns.c [USE_FONT_BACKEND]: Port font backend changes from xfns.c.
15810 (x_to_w32_charset, w32_to_x_charset): Expose externally.
15811
15812 * w32font.c: New file for w32 font backend.
15813
15814 2008-02-01 Kenichi Handa <handa@m17n.org>
15815
15816 * term.c: Don't include "buffer.h" twice.
15817
15818 2008-02-01 Kenichi Handa <handa@m17n.org>
15819
15820 * character.c (Funibyte_string): New function.
15821 (syms_of_character): Defsubr it.
15822
15823 2008-02-01 Jason Rumney <jasonr@gnu.org>
15824
15825 * w32term.c [USE_FONT_BACKEND]:
15826 (x_get_font_repertory, note_mouse_movement, x_set_mouse_face_gc)
15827 (x_set_glyph_string_clipping, x_set_glyph_string_clipping_exactly)
15828 (x_draw_glyph_string, x_draw_glyph_string_foreground)
15829 (x_draw_composite_glyph_string_foreground, x_new_fontset2)
15830 (x_free_frame_resources): Sync with xterm.c.
15831
15832 2008-02-01 Andreas Schwab <schwab@suse.de>
15833
15834 * lread.c (read1): Use CHAR_TABLE_STANDARD_SLOTS to validate
15835 char-table size.
15836
15837 2008-02-01 Kenichi Handa <handa@m17n.org>
15838
15839 * font.c (check_otf_features): Define it regardless of HAVE_LIBOTF.
15840
15841 2008-02-01 Kenichi Handa <handa@m17n.org>
15842
15843 * ftfont.c (ftfont_driver): Delete font_otf_gsub and
15844 font_otf_gpos, add font_drive_otf.
15845
15846 * fontset.c (fontset_find_font): Pay attention to font size
15847 specified for a font.
15848 (reorder_font_vector): Check contents of font_def.
15849
15850 * font.c (struct otf_list): Delete it.
15851 (otf_list): Make it a lisp variable.
15852 (otf_open): Use lispy otf_list.
15853 (generate_otf_features): Rename from parse_gsub_gpos_spec.
15854 (check_otf_features): New function.
15855 (font_otf_DeviceTable, font_otf_ValueRecord, font_otf_Anchor):
15856 New functions.
15857 (font_drive_otf): New function merging font_otf_gsub and
15858 font_otf_gpos.
15859 (font_open_for_lface): New arg spec. Change argument order.
15860 (font_load_for_face): Adjust for the change of font_open_for_lface.
15861 (Ffont_drive_otf): New function merging Ffont_otf_gsub and
15862 Ffont_otf_gpos.
15863 (syms_of_font): Staticpro otf_list. Delete defsubr of
15864 Sfont_otf_gsub and Sfont_otf_gpos. Defsubr Sfont_drive_otf.
15865
15866 * xfaces.c (set_font_frame_param): Adjust for the change of
15867 font_open_for_lface.
15868
15869 * font.h (font_open_for_lface): Adjust prototype.
15870 (struct font_driver): Delete members otf_gsub and otf_gpos, add
15871 member otf_drive.
15872 (font_otf_gsub, font_otf_gpos): Delete externs.
15873 (font_drive_otf): Extern it.
15874
15875 2008-02-01 Kenichi Handa <handa@m17n.org>
15876
15877 * font.c (font_at): If the window W is not on a window system,
15878 return Qnil.
15879
15880 * coding.c (produce_chars, encode_coding): Don't call
15881 insert_from_gap if no characters to produce.
15882
15883 2008-02-01 Kenichi Handa <handa@m17n.org>
15884
15885 * fontset.c (free_realized_fontsets): Avoid unnecessary call of
15886 Fclear_face_cache.
15887
15888 * xfaces.c (face_for_font): Check also face->font==font->font.font.
15889
15890 2008-02-01 Miles Bader <miles@gnu.org>
15891
15892 * emacs.c (main): Change default value of `enable_font_backend' to 1.
15893 Parse "--disable-font-backend" option.
15894 (standard_args): Add "--disable-font-backend" option.
15895
15896 2008-02-01 Kenichi Handa <handa@m17n.org>
15897
15898 * fontset.c (fontset_find_font): New function.
15899 (fontset_font): Use fontset_find_font.
15900 (make_fontset_for_ascii_face): Don't set face ID in rfont_def.
15901 Register the specified font for all Latin characters.
15902 (new_fontset_from_font): Register the specified font for all Latin
15903 characters.
15904 (dump_fontset): For a realized fontset, include the base fontset
15905 name in the returned vector.
15906
15907 2008-02-01 Kenichi Handa <handa@m17n.org>
15908
15909 * character.h (CHAR_STRING): Cast C to unsigned on calling
15910 char_string.
15911
15912 * character.c (char_string): Type of arg C changed to unsigned.
15913 Signal an error if C is an invalid character code.
15914
15915 * editfns.c (general_insert_function, Fchar_to_string):
15916 Use CHARACTERP, not INTEGERP.
15917
15918 2008-02-01 Kenichi Handa <handa@m17n.org>
15919
15920 * character.h (MIN_MULTIBYTE_LEADING_CODE)
15921 (MAX_MULTIBYTE_LEADING_CODE): New macros.
15922
15923 * regex.c (analyse_first): Fix for multibyte characters in "case
15924 charset:" and "case categoryspec:".
15925
15926 2008-02-01 Andreas Schwab <schwab@suse.de>
15927
15928 * Makefile.in (LIBES): Move standard libraries to the end.
15929
15930 2008-02-01 Kenichi Handa <handa@m17n.org>
15931
15932 * alloc.c (Fgarbage_collect): If nextb->text->inhibit_shrinking is
15933 nonzero, don't shrink the buffer nextb.
15934
15935 * buffer.h (struct buffer_text): New member inhibit_shrinking.
15936
15937 * coding.c (coding_alloc_by_making_gap): New arg offset.
15938 (alloc_destination): Call coding_alloc_by_making_gap with the arg
15939 offset.
15940 (decode_coding_iso_2022): Update coding->safe_charsets.
15941 (decode_coding_gap): Temporarily set
15942 current_buffer->text->inhibit_shrinking to 1.
15943
15944 2008-02-01 Kenichi Handa <handa@m17n.org>
15945
15946 * xterm.c (x_draw_composite_glyph_string_foreground): Fix
15947 indexing into elements of s->cmp and s->char2b.
15948
15949 2008-02-01 Juanma Barranquero <lekktu@gmail.com>
15950
15951 * regex.c (RE_STRING_CHAR_AND_LENGTH) [! emacs]: Add missing arg `len'.
15952
15953 2008-02-01 Kenichi Handa <handa@m17n.org>
15954
15955 * regex.c (GET_CHAR_BEFORE_2, GET_CHAR_AFTER): Check the variable
15956 target_multibyte instead of multibyte.
15957 (re_match_2_internal): Call bcmp_translate with target_multibyte.
15958 (bcmp_translate): Change the argument name from multibyte to
15959 target_multibyte.
15960
15961 2008-02-01 Kenichi Handa <handa@m17n.org>
15962
15963 These changes are to compile a regexp into a pattern that can be
15964 used both for multibyte and unibyte targets.
15965
15966 * Makefile.in (search.o): Depend on charset.h.
15967
15968 * character.c (multibyte_char_to_unibyte_safe): New function.
15969
15970 * search.c: Include "charset.h".
15971 (compile_pattern_1): Delete argument multibyte. Don't set
15972 cp->buf.target_multibyte here. Set cp->buf.charset_unibyte.
15973 (compile_pattern): Don't compare cp->buf.target_multibyte.
15974 Compare cp->buf.charset_unibyte.
15975 (compile_pattern): Set cp->buf.target_multibyte.
15976
15977 * lisp.h (multibyte_char_to_unibyte_safe): Extern it.
15978
15979 * regex.h (struct re_pattern_buffer): New member charset_unibyte.
15980
15981 * regex.c (RE_STRING_CHAR, RE_STRING_CHAR_AND_LENGTH): New arg
15982 multibyte. Change callers.
15983 (RE_CHAR_TO_MULTIBYTE, RE_CHAR_TO_UNIBYTE): New macros.
15984 (MAKE_CHAR_MULTIBYTE, MAKE_CHAR_UNIBYTE): Delete. Change callers
15985 to use RE_CHAR_TO_MULTIBYTE and RE_CHAR_TO_UNIBYTE, respectively.
15986 (SETUP_ASCII_RANGE, SETUP_UNIBYTE_RANGE): New macros.
15987 (SETUP_MULTIBYTE_RANGE): Generate a more compact range_table.
15988 (regex_compile): Make the compiled pattern usable both for
15989 multibyte and unibyte targets.
15990 (analyse_first): Make the fastmap usable both for multibyte and
15991 unibyte targets.
15992 (TRANSLATE_VIA_MULTIBYTE): Delete.
15993 (re_match_2_internal): Pay attention to the case that the
15994 multibyteness of bufp and target may be different.
15995
15996 2008-02-01 Kenichi Handa <handa@m17n.org>
15997
15998 * xdisp.c (x_produce_glyphs): When a font is not found, make the
15999 empty box occupy at least one column width.
16000
16001 2008-02-01 Miles Bader <miles@gnu.org>
16002
16003 * Makefile.in: Remove redundant HAVE_XFT clause.
16004
16005 2008-02-01 Kenichi Handa <handa@m17n.org>
16006
16007 * xrdb.c (x_load_resources): Setup the default fontSet X resource.
16008
16009 2008-02-01 Kenichi Handa <handa@m17n.org>
16010
16011 * fontset.c (Finternal_char_font): Fix for the case of POSITION
16012 being nil.
16013
16014 2008-02-01 Kenichi Handa <handa@m17n.org>
16015
16016 * xftfont.c (xftfont_open): Call FcConfigSubstitute.
16017
16018 2008-02-01 Kenichi Handa <handa@m17n.org>
16019
16020 * xftfont.c (xftfont_open): Don't enable antialias explicitly.
16021
16022 2008-02-01 Kenichi Handa <handa@m17n.org>
16023
16024 * search.c (simple_search): Fix previous change.
16025
16026 2008-02-01 Kenichi Handa <handa@m17n.org>
16027
16028 * xftfont.c (ftfont_font_format): Extern declaration.
16029
16030 * frame.c (x_set_font): Fix the second arg to fs_query_fontset.
16031
16032 * xfont.c (xfont_driver): Initialize ftfont_driver.type by 0.
16033 (xfont_list): Don't directly use Lisp_Object as an operand of &&.
16034
16035 * ftfont.c (ftfont_driver): Initialize ftfont_driver.type by 0.
16036 (ftfont_font_format): Fix previous change.
16037
16038 * font.h (Ffont_xlfd_name): EXFUN it.
16039
16040 * font.c (font_parse_xlfd): Fix the array size of `f'.
16041 (register_font_driver): Use EQ to compare driver->type.
16042
16043 * xfns.c (xic_create_xfontset2) [USE_FONT_BACKEND]: New function.
16044 (create_frame_xic) [USE_FONT_BACKEND]: Call xic_create_xfontset2.
16045 (xic_set_xfontset) [USE_FONT_BACKEND]: Likewise.
16046
16047 2008-02-01 Kenichi Handa <handa@m17n.org>
16048
16049 * ftfont.c (ftfont_pattern_entity, ftfont_list_generic_family)
16050 (ftfont_list, ftfont_font_format): Check if FC_FONTFORMAT is defined.
16051
16052 2008-02-01 Kenichi Handa <handa@m17n.org>
16053
16054 * xfont.c (xfont_open): Set font->format.
16055
16056 * xftfont.c (xftfont_open): Set font->format.
16057
16058 * ftfont.c (ftfont_pattern_entity): Add fontformat in a pattern.
16059 (ftfont_list): Include FC_FONTFORMAT in FcObject.
16060 (ftfont_open): Set font->format.
16061 (ftfont_font_format): New function.
16062
16063 * font.h (struct font): New member format.
16064
16065 * font.c (Qopentype): New variable.
16066 (syms_of_font): Defsym it.
16067 (Fquery_font): Change the format of the last element of the return
16068 value.
16069
16070 2008-02-01 Kenichi Handa <handa@m17n.org>
16071
16072 * xfns.c (xic_create_xfontset): Try the default fontset name as a
16073 last resort.
16074
16075 2008-02-01 Kenichi Handa <handa@m17n.org>
16076
16077 * coding.c (detect_coding_charset): Fix detection of multi-byte
16078 charset.
16079
16080 2008-02-01 Bob Halley <halley@play-bow.org> (tiny change)
16081
16082 * ccl.c (ccl_driver): If DST is NULL, set ccl->produced to 0.
16083
16084 2008-02-01 Kenichi Handa <handa@m17n.org>
16085
16086 * xdisp.c (get_next_display_element): Set it->face_id for the
16087 first component of a composition.
16088 (x_produce_glyphs): Check if the font is changed or not for composition.
16089
16090 2008-02-01 Kenichi Handa <handa@m17n.org>
16091
16092 * fontset.c (Qlatin): New variable.
16093 (syms_of_fontset): Define it as a lisp symbol.
16094 (Fset_fontset_font): If TARGET is `latin', use FONT_SPEC for ASCII.
16095
16096 2008-02-01 Kenichi Handa <handa@m17n.org>
16097
16098 * font.c (font_unparse_fcname): Pay attention to the case that
16099 some of font property is a null string.
16100
16101 2008-02-01 Kenichi Handa <handa@m17n.org>
16102
16103 * term.c: Include "composite.h".
16104 (encode_terminal_code): Output all components of composition.
16105 Check the size of encode_terminal_src.
16106 (produce_glyphs): For composition, call produce_composite_glyph.
16107 (append_composite_glyph, produce_composite_glyph): New functions.
16108
16109 * xdisp.c (x_produce_glyphs): In handling composition, if a font
16110 is not found, get font_info from the current ascii face.
16111
16112 2008-02-01 Kenichi Handa <handa@m17n.org>
16113
16114 * fileio.c (Finsert_file_contents): On replacing, temporarily bind
16115 buffer-file-name to Qnil before calling insert_from_buffer.
16116
16117 * font.c (font_unparse_fcname): Pay attention to the case that
16118 foundry is a null string.
16119
16120 2008-02-01 Kenichi Handa <handa@m17n.org>
16121
16122 * ftfont.c (ftfont_list): Allow registry "unicode-sip".
16123
16124 * font.c (Qunicode_sip): New variable.
16125 (syms_of_font): Declare it as a Lisp symbol.
16126
16127 * font.h (Qunicode_sip): Extern it.
16128
16129 2008-02-01 Kenichi Handa <handa@m17n.org>
16130
16131 * composite.c (get_composition_id): Pay attention to TAB component.
16132
16133 * xterm.c (x_draw_composite_glyph_string_foreground): Don't draw
16134 TAB. Adjust for the change of s->char2b which always points to
16135 the first element of allocated memory.
16136
16137 * xftfont.c (xftfont_text_extents): Fix calculation of descent value.
16138
16139 * xdisp.c (handle_composition_prop): Set it->c to the first
16140 non-TAB component.
16141 (fill_composite_glyph_string): Change argument.
16142 (BUILD_COMPOSITE_GLYPH_STRING): Adjust for the above change.
16143 (x_produce_glyphs): Fix handling of left/right padding.
16144
16145 2008-02-01 Kenichi Handa <handa@m17n.org>
16146
16147 * coding.c (detect_coding_system): Fix for handling off
16148 inhibit_iso_escape_detection. Fix for the case that no coding
16149 system is defined for a specific coding category.
16150
16151 2008-02-01 Kenichi Handa <handa@m17n.org>
16152
16153 * font.c (font_matching_entity): Delete unused local var.
16154
16155 * xftfont.c (xftfont_open): Call XftDefaultSubstitute before
16156 opening a font.
16157
16158 * fileio.c (Finsert_file_contents): On recovering a file, assume
16159 Unix-like eol.
16160 (choose_write_coding_system): On auto-saving a file, force
16161 Unix-like eol.
16162
16163 * coding.c (setup_coding_system): Fix setting of
16164 coding->common_flags based on eol_type.
16165 (coding_inherit_eol_type): If PARENT is not nil, be sure to
16166 inherit from it.
16167
16168 2008-02-01 Kenichi Handa <handa@m17n.org>
16169
16170 * alloc.c (NSTATICS): Increas to 0x600.
16171
16172 2008-02-01 Kenichi Handa <handa@m17n.org>
16173
16174 * ftfont.c (ftfont_driver): Set ftfont_driver.match to ftfont_match.
16175 (ftfont_list): Don't check :name property.
16176 (ftfont_match): New function.
16177 (ftfont_pattern_entity): If the pattern doesn't contain
16178 FC_SPACING, don't assume FC_MONO.
16179
16180 * font.h (struct font_driver): New member `match'.
16181 (font_update_drivers): Adjust prototype.
16182
16183 * font.c (font_parse_fcname, font_parse_name): Don't change :name
16184 property of FONT.
16185 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE, check_gstring): Define
16186 them unconditionally.
16187 (font_matching_entity): New function.
16188 (font_open_by_name): Try font_matching_entity if exact match is
16189 not found.
16190 (font_update_drivers): Delete the arg FONT. Return a list of
16191 actually used backends. Don't free faces, font caches here.
16192 Don't store data in frame parameters. Don't call x_set_font.
16193 (Ffont_spec): Store :name property as is.
16194 (Ffont_get): Check HAVE_LIBOTF before calling font_otf_capability.
16195 (Ffont_otf_gsub): Call font->driver->otf_gsub instead of font_otf_gsub.
16196 (Ffont_otf_gpos): Call font->driver->otf_gpos instead of font_otf_gpos.
16197 (Ffont_otf_alternates): Check if the driver has otf_gsub function.
16198 Call font->driver->otf_gsub instead of font_otf_gsub.
16199
16200 * frame.c (x_set_font_backend): Do more works that were done in
16201 font_update_drivers before.
16202
16203 * xfont.c (xfont_match): New function.
16204 (xfont_driver): Set xfont_driver.match to xfont_match.
16205 (xfont_draw): Set font in GC if necessary.
16206
16207 * ftxfont.c (ftxfont_match): New function.
16208 (syms_of_ftxfont): Set ftxfont_driver.match to ftxfont_match.
16209
16210 * xftfont.c (xftfont_match): New function.
16211 (syms_of_xftfont): Set xftfont_driver.match to xftfont_match.
16212
16213 2008-02-01 Kenichi Handa <handa@m17n.org>
16214
16215 * font.h (struct font): New member scalable.
16216 (struct font_driver): New arg ALTERANTE_SUBST to otf_gsub.
16217 (font_otf_gsub): Adjust prototype.
16218
16219 * font.c (font_otf_capability): Fix handling of the default langsys.
16220 (parse_gsub_gpos_spec): Change type to void. New arg nbytes.
16221 Check the contents of SPEC.
16222 (LGSTRING_HEADER_SIZE, LGSTRING_GLYPH_SIZE): New macros.
16223 (check_gstring): New function.
16224 (REPLACEMENT_CHARACTER): New macro.
16225 (font_otf_gsub): New arg alternate_subst. Be sure to set all
16226 glyph codes of GSTRING.
16227 (font_otf_gpos): Be sure to set all glyph codes of GSTRING.
16228 (font_prepare_composition): Set cmp->glyph_len.
16229 (font_open_entity): Set font->scalable.
16230 (Ffont_get): Handle :otf property.
16231 (Ffont_otf_gsub, Ffont_otf_gpos, Ffont_otf_alternates): New
16232 functions.
16233 (Fquery_font): Use font->font.full_name.
16234 (syms_of_font): Defsubr Sfont_otf_gsub, Sfont_otf_gpos, and
16235 Sfont_otf_alternates.
16236
16237 * ftfont.c (ftfont_open): Set font->font.full_name and
16238 font->font.name properly. Fix calculation of font->font.height
16239 and font->min_width.
16240
16241 * ftxfont.c (ftxfont_create_gcs): New function.
16242 (ftxfont_draw_bitmap): Fix arg to ftfont_driver.get_bitmap.
16243 (ftxfont_draw_backgrond): Fix filling region.
16244 (ftxfont_default_fid): New function.
16245 (ftxfont_open): Set xfont->fid to the return value of
16246 ftxfont_default_fid.
16247 (ftxfont_prepare_face): Use ftxfont_create_gcs to create GCs.
16248 (ftxfont_done_face): Free only GCs that are created by
16249 ftxfont_create_gcs.
16250 (ftxfont_draw): If face->gc != s->gc, create proper GCs.
16251
16252 * xterm.c (x_set_glyph_string_clipping_exactly) [USE_FONT_BACKEND]:
16253 Clip to src->width, etc (not src->clip_XXX).
16254
16255 * xfns.c (x_create_tip_frame) [USE_FONT_BACKEND]: Handle
16256 FontBackend frame parameter.
16257
16258 2008-02-01 Kenichi Handa <handa@m17n.org>
16259
16260 * font.h (struct font_driver_list): New member `on'.
16261 (Fclear_font_cache): EXFUN it.
16262 (font_update_drivers): Extern it.
16263
16264 * font.c (font_unparse_fcname): Fix typo (swidth->width).
16265 (font_list_entities): Check driver_list->on.
16266 (register_font_driver): Initalize `on' member to 0.
16267 (font_update_drivers): New function.
16268 (Fclear_font_cache): Check driver_list->on.
16269
16270 * frame.h (Qfont_backend): Extern it.
16271 (x_set_font_backend): Extern it.
16272
16273 * frame.c (Qfont_backend): New variable.
16274 (frame_parms): New element for font-backend.
16275 (x_set_font_backend): New function.
16276
16277 * xfns.c (Fx_create_frame) [USE_FONT_BACKEND]: Handle
16278 FontBackend frame parameter.
16279 (x_frame_parm_handlers) [USE_FONT_BACKEND]: New element
16280 x_set_font_backend.
16281
16282 * xfont.c (xfont_list): Don't try listing by :name property if the
16283 name is not for XLFD.
16284
16285 2008-02-01 Kenichi Handa <handa@m17n.org>
16286
16287 * font.h (LGLYPH_FROM, LGLYPH_TO, LGLYPH_SET_FROM)
16288 (LGLYPH_SET_TO): New macros.
16289 (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WADJUST): Check if adjustment
16290 element of G is vector or not.
16291 (font_at): Extern it.
16292
16293 * font.c: Include window.h.
16294 (font_lispy_object): New function.
16295 (font_prepare_composition): Check LGLYPH_FORM (g) to detect the
16296 end of valid glyph.
16297 (font_close_object): Fix getting (struct font *).
16298 (font_at): New function.
16299 (Ffont_get): If FONT is a font-object, get entity from it.
16300 (Ffont_make_gstring): Initialize elements of glyphs with nil.
16301 (Ffont_fill_gstring): Use macro LGSTRING_XXX and LGLYPH_XXX. Fix
16302 range check.
16303 (Ffont_at): New function.
16304 (syms_of_font): Defsubr Sfont_at.
16305
16306 * xdisp.c (it_props): Move the entry for Qauto_composed to just
16307 before the entry for Qcomposition.
16308 (handle_auto_composed_prop): Call auto-composition-function with 4 args.
16309 (handle_composition_prop) [USE_FONT_BACKEND]: Set it->face_id from
16310 the font in gstring.
16311 (fill_composite_glyph_string) [USE_FONT_BACKEND]: Check
16312 LGLYPH_FORM (g) to detect the end of valid glyph.
16313 (x_produce_glyphs) [USE_FONT_BACKEND]: Don't update it->face_id if
16314 we are composing with gstring.
16315
16316 * xterm.c (x_draw_composite_glyph_string_foreground) [USE_FONT_BACKEND]:
16317 Check if adjustment is vector or not.
16318
16319 * Makefile.in (font.o): Make it depends on window.h.
16320
16321 2008-02-01 Kenichi Handa <handa@m17n.org>
16322
16323 * xterm.c (x_draw_composite_glyph_string_foreground): Check if
16324 adjustment is vector or not.
16325
16326 2008-02-01 Miles Bader <miles@gnu.org>
16327
16328 * character.h (CHECK_CHARACTER): Redefine in terms of CHECK_TYPE.
16329
16330 2008-02-01 Kenichi Handa <handa@m17n.org>
16331
16332 * font.h (LGLYPH_XOFF, LGLYPH_YOFF, LGLYPH_WIDTH, LGLYPH_WADJUST)
16333 (LGLYPH_SET_WIDTH): Adjusted for the change of LGLYPH format.
16334 (LGLYPH_ADJUSTMENT, LGLYPH_SET_ADJUSTMENT): New macros.
16335
16336 * font.c (font_merge_old_spec): Treat '*' in foundry as a wild card.
16337 (DEVICE_DELTA): Fix typo.
16338 (font_otf_gpos, font_prepare_compositio): Adjust for the change of
16339 LGLYPH format.
16340
16341 * xterm.c (x_draw_composite_glyph_string_foreground): Adjust for
16342 the change of LGLYPH format.
16343
16344 2008-02-01 Kenichi Handa <handa@m17n.org>
16345
16346 * ftfont.c (ftfont_list): Fix typo.
16347 (ftfont_build_basic_charsets): Don't include letters with diacritics.
16348
16349 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16350
16351 * xfaces.c (realize_non_ascii_face): Set face->extra to NULL.
16352
16353 * xftfont.c (xftfont_done_face): Call XftDrawDestroy only if
16354 xftface_info is non-NULL.
16355
16356 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16357
16358 * ftfont.c (ftfont_list): Move misplaced #endif.
16359
16360 2008-02-01 Kenichi Handa <handa@m17n.org>
16361
16362 * ftfont.c (ftfont_list): Pay attention to the case that
16363 FC_CAPABILITY is not defined.
16364
16365 2008-02-01 Kenichi Handa <handa@m17n.org>
16366
16367 * xftfont.c (xftfont_open): Set charset related members to -1.
16368
16369 * ftfont.c (ftfont_list): Handle QCotf property. Fix handling of
16370 QCname.
16371 (ftfont_open): Set charset related members to -1.
16372
16373 * fontset.c (Votf_script_alist): New variable.
16374 (syms_of_fontset): Initialize it.
16375 (fontset_font): Delete unused variable.
16376
16377 * fontset.h (Votf_script_alist): Extern it.
16378
16379 * font.c (font_find_for_lface): Optimize code.
16380
16381 * font.h (font_close_object, font_merge_old_spec): Extern them.
16382
16383 2008-02-01 Kenichi Handa <handa@m17n.org>
16384
16385 * font.c (QCscalable, Qc, Qm, Qp, Qd): New variables.
16386 (syms_of_font): Initialize them.
16387 (font_pixel_size): Allow float value in dpi.
16388 (font_prop_validate_type): Delete.
16389 (font_prop_validate_symbol, font_prop_validate_style): Change argument.
16390 Change caller.
16391 (font_prop_validate_non_neg): Rename from font_prop_validate_size.
16392 (font_prop_validate_extra): Delete.
16393 (font_prop_validate_spacing): New function.
16394 (font_property_table): Add elements for all known properties.
16395 (get_font_prop_index): Rename from check_font_prop_name. New
16396 argument FROM. Change caller.
16397 (font_prop_validate): Validate all known properties.
16398 (font_put_extra): Delete argument force. Change caller.
16399 (font_expand_wildcards): Make it static. Fix the way of shrinking
16400 the possible range.
16401 (font_parse_xlfd): Delete argument merge. Fix handling of RESX,
16402 RESY, SPACING, and AVGWIDTH. Don't validate property values here.
16403 Change caller.
16404 (font_unparse_xlfd): Handle dpi, spacing, and scalable properties.
16405 (font_parse_fcname): Delete argument merge. Fix parsing of point
16406 size. Don't validate properties values here. Change caller.
16407 (font_unparse_fcname): Handle dpi, spacing, and scalable properties.
16408 (font_open_by_name): Delete unused variable.
16409 (Ffont_spec): Likewise. Validate property values.
16410 (Ffont_match_p): New function.
16411
16412 * font.h (QCscalable): Extern it.
16413 (font_parse_xlfd, font_parse_fcname): Adjust prototype.
16414
16415 * ftfont.c (ftfont_list): Handle properties dpi, spacing, and scalable.
16416
16417 * xfont.c (xfont_query_font): Adjust for the change of font_parse_xlfd.
16418 (xfont_list_pattern): New function.
16419 (xfont_list): Use xfont_list_pattern.
16420
16421 2008-02-01 Kenichi Handa <handa@m17n.org>
16422
16423 * font.h (Flist_fonts): EXFUN it.
16424
16425 2008-02-01 Jason Rumney <jasonr@gnu.org>
16426
16427 * w32term.c (w32_initialize): Add back smoothing_type and
16428 smoothing_enabled definitions.
16429
16430 2008-02-01 Kenichi Handa <handa@m17n.org>
16431
16432 * xterm.c (x_draw_glyph_string) [USE_FONT_BACKEND]: Check
16433 s->face->font on determining underline position.
16434
16435 2008-02-01 Kenichi Handa <handa@m17n.org>
16436
16437 * font.c (font_parse_xlfd): Fix generating of CHARSET_REGISTRY field.
16438 (font_has_char): Accept font-object too.
16439 (font_find_for_lface): Try at first with a size specified in face.
16440
16441 2008-02-01 Kenichi Handa <handa@m17n.org>
16442
16443 * frame.c (x_set_font) [USE_FONT_BACKEND]: Fix argument to
16444 font_open_by_name.
16445
16446 2008-02-01 Kenichi Handa <handa@m17n.org>
16447
16448 * font.h (QCspacing, QCdpi): Extern them.
16449 (enum font_spacing): New enum.
16450 (FONT_PIXEL_SIZE_QUANTUM): New macro.
16451
16452 * font.c (POINT_TO_PIXEL): Don't divide POINT by 10.
16453 (QCspacing, QCdpi): New variables.
16454 (syms_of_font): Initialize them.
16455 (font_pixel_size): New function.
16456 (font_put_extra): New function.
16457 (font_parse_xlfd): Fix handling of font size. Add QCdpi property
16458 in FONT_EXTRA.
16459 (font_parse_fcname): Handle enumerated values (e.g. bold).
16460 Fix handling font size. Add QCname property that contains only
16461 unknown properties.
16462 (font_score): Change argument. Change caller. Pay attention to
16463 FONT_PIXEL_SIZE_QUANTUM.
16464 (font_sort_entites, font_list_entities, font_find_for_lface)
16465 (font_open_for_lface, font_open_by_name): Fix handling of font size.
16466 (Ffont_spec): Add QCname property that contains only unknown properties.
16467
16468 * ftfont.c (ftfont_list): Use assq_no_quit, not Fassq. Don't
16469 include weight in listing pattern, instead check weight of each
16470 listed font. Don't include scalable in pattern. Pay attention to
16471 FONT_PIXEL_SIZE_QUANTUM.
16472
16473 2008-02-01 Kenichi Handa <handa@m17n.org>
16474
16475 * font.c (font_parse_fcname): Fix parsing of point-size.
16476 (font_unparse_fcname): Produce symbolic names for style properties.
16477 (font_list_entities): Handle float size correctly.
16478 (font_open_by_name): Prefer `normal' property values if the name
16479 doesn't specify them.
16480
16481 * fontset.c (Finternal_char_font): Use font_get_name, not
16482 Ffont_xlfd_name.
16483
16484 * ftfont.c (ftfont_pattern_entity): Use the numeric value 100 for
16485 FC_WEIGHT_REGULAR. Exclude FC_SIZE and FC_PIXEL_SIZE from listing
16486 pattern. Don't force scalable.
16487
16488 * xftfont.c (xftfont_open): For generating a name, start from
16489 96-byte buffer.
16490
16491 2008-02-01 Jan Djärv <jan.h.d@swipnet.se>
16492
16493 * frame.h (x_new_fontset2): Fix prototype.
16494
16495 2008-02-01 Kenichi Handa <handa@m17n.org>
16496
16497 * font.h (struct font_driver): Delete member parse_name.
16498 (font_match_p, font_get_spec, font_parse_fcname)
16499 (font_unparse_fcname): Extern them.
16500 (font_get_name): Adjust prototype.
16501
16502 * font.c (XLFD_SMALLNUM_MASK): Delete this macro.
16503 (XLFD_LARGENUM_MASK): Delete XLFD_ENCODING_MASK from it.
16504 (font_expand_wildcards): Fix handling ENCODING field. Avoid
16505 unnecessary checks for weight, slant, and swidth.
16506 (font_parse_fcname): New function.
16507 (font_unparse_fcname): New function.
16508 (font_parse_name): New function.
16509 (font_match_p): New function.
16510 (font_get_name): Change return value to Lisp string.
16511 (font_get_spec): New function.
16512 (Qunspecified, Qignore_defface): Don't extern them.
16513 (font_find_for_lface): Assume that LFACE is fully specified.
16514 (font_load_for_face): If lface[LFACE_FONT_INDEX] is an font
16515 object, use it for FACE.
16516 (font_open_by_name): Call Ffont_spec with QCname prop. Don't call
16517 driver->parse_name.
16518 (Ffont_spec): Call font_parse_name, not font_parse_xlfd.
16519
16520 * fontset.h (new_fontset_from_font) [USE_FONT_BACKEND]: Adjust
16521 prototype.
16522
16523 * fontset.c (new_fontset_from_font) [USE_FONT_BACKEND]: Delete
16524 argument F. Don't call Fnew_fontset. Instead, directly call
16525 make_fontset.
16526
16527 * frame.h (x_new_fontset2) [USE_FONT_BACKEND]: Adjust prototype.
16528
16529 * frame.c (x_set_font) [USE_FONT_BACKEND]: Adjust for the change
16530 of x_new_fontset2.
16531
16532 * ftfont.c (Qmonospace, Qsans_serif, Qserif, Qmono, Qsans)
16533 (Qsans__serif): New variables.
16534 (ftfont_generic_family_list): New variable.
16535 (syms_of_ftfont): Initialize the above variables.
16536 (ftfont_pattern_entity): Delete argument NAME.
16537 (ftfont_list_generic_family): New function.
16538 (ftfont_parse_name): Delete this function.
16539 (ftfont_list): Try generic family only when FcFontList found no font.
16540 (ftfont_list_family): Fix args to FcObjectSetBuild.
16541
16542 * xfaces.c (check_lface_attrs) [USE_FONT_BACKEND]: Accept font
16543 object in attrs[LFACE_FONT_INDEX].
16544 (set_lface_from_font_name): Cancel all changes for font-backend.
16545 (set_lface_from_font_and_fontset) [USE_FONT_BACKEND]: New
16546 function.
16547 (Finternal_set_lisp_face_attribute) [USE_FONT_BACKEND]: Accept a
16548 font object in QCfont attribute.
16549 (set_font_frame_param) [USE_FONT_BACKEND]: Likewise.
16550 (realize_default_face) [USE_FONT_BACKEND]: Call
16551 set_lface_from_font_and_fontset.
16552
16553 * xfns.c (x_default_font_parameter) [USE_FONT_BACKEND]: Try also
16554 "fixed", and signal error here if no suitable font was found.
16555
16556 * xfont.c (xfont_parse_name): Delete this function.
16557
16558 * xftfont.c (xftfont_open): Change coding style of error
16559 handling. Generate fontconfig's fontname pattern.
16560
16561 * xterm.h (struct x_output) [USE_FONT_BACKEND]: New member fontp.
16562 (FRAME_FONT_OBJECT) [USE_FONT_BACKEND]: New macro.
16563
16564 * xterm.c (x_new_fontset2) [USE_FONT_BACKEND]: Change arguments.
16565 Both args FONTSET and FONT_OBJECT must be existing ones.
16566
16567 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16568
16569 * macterm.c (mac_set_unicode_keystroke_event): Don't use MAKE_CHAR.
16570
16571 2008-02-01 Kenichi Handa <handa@m17n.org>
16572
16573 * xfont.c (xfont_open, xfont_encode_char): Fix typo.
16574
16575 * font.h (struct font): Fix typo.
16576
16577 * font.c (enum xlfd_field_index): Rename XLFD_XXX_SIZE_INDEX to
16578 XLFD_XXX_INDEX.
16579 (enum xlfd_field_mask): New enum.
16580 (intern_font_field): Changed argument. Change caller. If digits
16581 are followed by non-digits, return a symbol.
16582 (font_expand_wildcards): New function.
16583 (font_parse_xlfd): Fix wildcard handling.
16584 (Ffont_spec): If :name is specified, reflect the info in the other
16585 properties.
16586
16587 * ftfont.c (ftfont_pattern_entity): Fix typo.
16588 (ftfont_list): Enforce FC_LANG in PATTERN to cancel the effect of
16589 locale.
16590
16591 2008-02-01 Kenichi Handa <handa@m17n.org>
16592
16593 * font.h (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Extern them.
16594
16595 * font.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move from ftfont.c.
16596 (font_unparse_xlfd): Fix argument type declaration. Append "*" if
16597 registry doesn't specify encoding part.
16598 (font_find_for_lface): Pay attention to LFACE_FONT_INDEX.
16599 (font_open_by_name): At first try parsing the name.
16600 (syms_of_font): Declare Qiso8859_1, Qiso10646_1, and Qunicode_bmp
16601 as Lisp symbols.
16602
16603 * fontset.c (reorder_font_vector): Pay attention to the case that
16604 the 3rd element of font_def is nil.
16605 (fontset_font): For the default fontset, append one more fontset
16606 elements for a script-based font specification. Don't add script
16607 attribute on finding a font.
16608 (new_fontset_from_font): Unconditionally set FONTSET_ASCII to the
16609 font name.
16610 (fontset_ascii_font): If a font can't be opened, return nil.
16611
16612 * ftfont.c (Qiso8859_1, Qiso10646_1, Qunicode_bmp): Move to font.c.
16613 (ftfont_pattern_entity): New function.
16614 (ftfont_get_cache): Assume that freetype_font_cache is already
16615 initialized.
16616 (ftfont_list): Handle the case that a file is specified in font
16617 name. Use ftfont_pattern_entity to generate entities.
16618 (ftfont_has_char): Check if the pattern contains FC_CHARSET.
16619 (syms_of_ftfont): Initialize freetype_font_cache.
16620
16621 * xftfont.c (xftfont_open): Make the font name fontconfig's
16622 style. Add BLOCK_INPUT and UNBLOCK_INPUT.
16623 (xftfont_close): Free font->font.name if not NULL.
16624
16625 * xfont.c (xfont_list): If script is specified for a font, return
16626 null_vector.
16627 (xfont_list_family): Declare argument type.
16628
16629 * xfaces.c (set_lface_from_font_name): If a font doesn't have a
16630 name, set LFACE_FONT (lface) to nil.
16631
16632 * xterm.c (x_new_fontset2): If an ASCII font couldn't be loaded,
16633 return Qnil.
16634
16635 2008-02-01 Kenichi Handa <handa@m17n.org>
16636
16637 * emacs.c (main): Check -enable-font-backend arg after the check of -nl.
16638 (standard_args): Add "-enable-font-backend".
16639
16640 2008-02-01 Kenichi Handa <handa@m17n.org>
16641
16642 * xftfont.c (xftfont_default_fid): Set fid_known to 1.
16643 (struct xftdraw_list, xftdraw_list): Delete them.
16644 (register_xftdraw, check_xftdraw): Delete them.
16645 (xftfont_prepare_face): Don't call register_xftdraw.
16646 (xftfont_done_face): Don't call check_xftdraw.
16647 (xftfont_draw): Get background color only when with_background is
16648 nonzero.
16649
16650 * xfont.c (xfont_encode_char): Fix calculation of char2b.
16651
16652 2008-02-01 Kenichi Handa <handa@m17n.org>
16653
16654 These changes are for the new font handling codes.
16655
16656 * Makefile.in (ALL_CFLAGS): Add @FREETYPE_CFLAGS@,
16657 @FONTCONFIG_CFLAGS@, and @LIBOTF_CFLAGS@.
16658 (LIB_X11_LIB): If HAVE_XFT is defined, set to @XFT_LIBS@.
16659 (FONTSRC, FONTOBJ): New variables.
16660 (obj): Add $(FONTOBJ).
16661 (SOME_MACHINE_OBJECTS): Lib_X11_Lib.
16662 (LIBES): Add @FREETYPE_LIBS@, @FONTCONFIG_LIBS@, and
16663 @LIBOTF_LIBS@.
16664 (font.o, ftfont.o, xfont.o, xftfont.o, ftxfont.o): New targets.
16665 (fontset.o, xdisp.o, xfaces.o, xfns.o, xterm.o): Depend on $(FONTSRC).
16666
16667 * font.h, font.c, xfont.c, ftfont.c, xftfont.c, ftxfont.c: New files.
16668
16669 * character.h (Vscript_representative_chars): Extern it.
16670
16671 * character.c (Vscript_representative_chars): New variable.
16672 (syms_of_character): Declare it as a Lisp variable.
16673
16674 * composite.c (get_composition_id) [USE_FONT_BACKEND]: If
16675 enable_font_backend is nonzero, accept the composition method
16676 COMPOSITION_WITH_GLYPH_STRING.
16677
16678 * composite.h (enum composition_method) [USE_FONT_BACKEND]: New
16679 enumeration COMPOSITION_WITH_GLYPH_STRING.
16680
16681 * dispextern.h (struct glyph_string) [USE_FONT_BACKEND]: New
16682 members clip_x, clip_y, clip_width, and clip_height.
16683 (struct face) [USE_FONT_BACKEND]: New members font_info and extra.
16684
16685 * emacs.c (main) [USE_FONT_BACKEND]: Handle arg
16686 --enable-font-backend. Call syms_of_font.
16687
16688 * fns.c (assoc_no_quit): New function.
16689
16690 * fontset.h (FONT_INFO_FROM_FACE): New macro.
16691 (face_for_font, new_fontset_from_font)
16692 (fontset_ascii_font) [USE_FONT_BACKEND]: Extern them.
16693
16694 * fontset.c [USE_FONT_BACKEND]: Include "font.h".
16695 (fontset_font, fontset_ascii, face_for_char)
16696 (make_fontset_for_ascii_face, Ffont_info)
16697 (Finternal_char_font) [USE_FONT_BACKEND]: If enable_font_backend
16698 is nonzero, use font-backend mechanism.
16699 (find_font_encoding): Make it non-static.
16700 (new_fontset_from_font, fontset_ascii_font) [USE_FONT_BACKEND]:
16701 New functions.
16702
16703 * frame.h (struct frame): New members resx and resy.
16704 (struct frame) [USE_FONT_BACKEND]: New member font_driver_list.
16705 (x_new_fontset2) [USE_FONT_BACKEND]: Extern it.
16706
16707 * frame.c [USE_FONT_BACKEND]: Include "font.h".
16708 (make_frame, x_set_font) [USE_FONT_BACKEND]: Use font-backend mechanism.
16709
16710 * lisp.h (assoc_no_quit): Extern it.
16711
16712 * xdisp.c: If USE_FONT_BACKEND is defined, include "font.h".
16713 Through out the file, use FONT_INFO_FROM_FACE instead of
16714 FONT_INFO_FROM_ID, use get_per_char_metric instead of
16715 rif->per_char_metric.
16716 (handle_composition_prop) [USE_FONT_BACKEND]: If the composition
16717 method is COMPOSITION_WITH_GLYPH_STRING, just set it->c to ' '.
16718 (get_glyph_face_and_encoding, fill_composite_glyph_string)
16719 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
16720 (x_produce_glyphs) [USE_FONT_BACKEND]: If enable_font_backend is
16721 nonzero, use font-backend mechanism.
16722 (get_per_char_metric): New function.
16723
16724 * xfaces.c [USE_FONT_BACKEND]: Include "font.h".
16725 (set_lface_from_font_name)
16726 (set_font_frame_param, free_realized_face)
16727 (prepare_face_for_display, clear_face_gcs)
16728 (Finternal_set_font_selection_order, realize_x_face)
16729 [USE_FONT_BACKEND]: If enable_font_backend is nonzero, use
16730 font-backend mechanism.
16731 (clear_face_cache) [USE_FONT_BACKEND]: Don't call clear_font_table.
16732 (load_face_font) [USE_FONT_BACKEND]: Abort.
16733 (face_symbolic_value, face_symbolic_weight, face_symbolic_slant)
16734 (face_symbolic_swidth, face_for_font) [USE_FONT_BACKEND]: New functions.
16735
16736 * xfns.c [USE_FONT_BACKEND]: Include "font.h".
16737 (x_default_font_parameter) [USE_FONT_BACKEND]: New function.
16738 (Fx_create_frame) [USE_FONT_BACKEND]: If enable_font_backend is
16739 nonzero, register all available font drivers. Call
16740 x_default_font_parameter for deciding a font.
16741 (x_create_tip_frame) [USE_FONT_BACKEND]: Likewise.
16742
16743 * xterm.c [USE_FONT_BACKEND]: Include "font.h".
16744 (x_set_mouse_face_gc, x_set_glyph_string_clipping)
16745 (x_set_glyph_string_clipping_exactly)
16746 (x_compute_glyph_string_overhangs)
16747 (x_draw_glyph_string_foreground)
16748 (x_draw_composite_glyph_string_foreground, x_draw_glyph_string)
16749 (x_free_frame_resources) [USE_FONT_BACKEND]: If
16750 enable_font_backend is nonzero, use font-backend mechanism.
16751 (x_new_fontset2) [USE_FONT_BACKEND]: New function.
16752
16753 2008-02-01 Kenichi Handa <handa@m17n.org>
16754
16755 * coding.c (coding_inherit_eol_type): If PARENT is nil, inherit from
16756 system_eol_type.
16757 (syms_of_coding): Initialize system_eol_type.
16758
16759 * process.c (Fset_process_coding_system): Inherit system's eol
16760 format if necessary.
16761
16762 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16763
16764 * macgui.h (USE_ATSUI): Don't enable on emacs-unicode-2 branch.
16765
16766 2008-02-01 Kenichi Handa <handa@m17n.org>
16767
16768 * coding.c (decode_eol): Pay attention to buffer relocation in
16769 del_range_2.
16770 (decode_coding): Call decode_eol before restoring undo_list.
16771
16772 2008-02-01 Kenichi Handa <handa@m17n.org>
16773
16774 * charset.c (Fdefine_charset_internal): Fix setting of
16775 emacs_mule_bytes.
16776
16777 2008-02-01 Kenichi Handa <handa@m17n.org>
16778
16779 * keyboard.c (read_char): Check if C is a character or not before
16780 looking up Vkeyboard_translate_table.
16781
16782 2008-02-01 Kenichi Handa <handa@m17n.org>
16783
16784 * coding.c (DECODE_EMACS_MULE_20_RELATIVE_COMPOSITION): Fix
16785 condition to terminate the loop.
16786
16787 2008-02-01 Kenichi Handa <handa@m17n.org>
16788
16789 * coding.c (produce_composition): Compare charbuf[i] instead of
16790 args[i] against 0.
16791 (Fterminal_coding_system): Use EQ to compare Lisp objects.
16792
16793 2008-02-01 Kenichi Handa <handa@m17n.org>
16794
16795 * coding.c (DECODE_COMPOSITION_START): If the source is short, set
16796 coding->result to CODING_RESULT_INSUFFICIENT_SRC.
16797 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK after the call of
16798 detect_coding.
16799 (emacs_mule_char): Handle old style (Emacs 20) component character
16800 of a composition.
16801 (DECODE_EMACS_MULE_COMPOSITION_RULE_20)
16802 (DECODE_EMACS_MULE_20_RULEBASE_COMPOSITION): Fix parsing a
16803 composition rule.
16804 (decode_coding_emacs_mule): Handle invalid bytes correctly.
16805
16806 2008-02-01 Kenichi Handa <handa@m17n.org>
16807
16808 * coding.c (encode_coding_ccl): Allocate destination dynamically
16809 when necessary.
16810
16811 2008-02-01 Kenichi Handa <handa@m17n.org>
16812
16813 * ccl.c (Fccl_execute_on_string): Fix the condition of terminating
16814 the loop. When quitted, show a proper error message.
16815
16816 2008-02-01 Kenichi Handa <handa@m17n.org>
16817
16818 * xterm.c (x_set_glyph_string_clipping_exactly): Set
16819 src->clip_head and src->clip_tail temporarily instead of src->hl.
16820
16821 * ccl.c (CCL_WRITE_STRING): Handle a flag bit for multibyte
16822 character sequence.
16823 (Fccl_execute_on_string): Use ASET, not XSET.
16824
16825 2008-02-01 Kenichi Handa <handa@m17n.org>
16826
16827 * search.c (search_buffer): Fix handling of "\\" in a trivial regexp.
16828
16829 2008-02-01 Kenichi Handa <handa@m17n.org>
16830
16831 * coding.c (decode_coding): Fix the condition of terminating the
16832 decoding loop.
16833
16834 2008-02-01 Kenichi Handa <handa@m17n.org>
16835
16836 * data.c (Faset): On setting a character bigger than 255 in a
16837 unibyte string, signal an error instead of make the string multibyte.
16838
16839 2008-02-01 Kenichi Handa <handa@m17n.org>
16840
16841 * charset.c (map_charset_chars): Fix for ascii-compatible charset
16842 made by a mapping table.
16843
16844 2008-02-01 Kenichi Handa <handa@m17n.org>
16845
16846 * xdisp.c (fill_composite_glyph_string): Check s->face is NULL or
16847 not.
16848 (BUILD_COMPOSITE_GLYPH_STRING): If C is TAB, set s->face to NULL.
16849 (x_produce_glyphs): If CH is TAB, set cmp->offsets properly.
16850
16851 * xterm.c (x_draw_composite_glyph_string_foreground): Check
16852 s->face is NULL or not.
16853
16854 2008-02-01 Kenichi Handa <handa@m17n.org>
16855
16856 * xterm.c (x_set_glyph_string_clipping_exactly): New function.
16857 (x_draw_glyph_string): Fix drawing of right_overhang and
16858 left_overhang around/on cursor.
16859
16860 * xdisp.c (draw_glyphs): Fix inclusion of right_overwriting glyphs.
16861
16862 2008-02-01 Kenichi Handa <handa@m17n.org>
16863
16864 * xdisp.c (x_produce_glyphs): Handle composition with TAB.
16865
16866 2008-02-01 Kenichi Handa <handa@m17n.org>
16867
16868 * coding.c (Fdefine_coding_system_internal)
16869 (Fdefine_coding_system_alias): Avoid a duplicated element in
16870 Vcoding_system_alist.
16871
16872 2008-02-01 Kenichi Handa <handa@m17n.org>
16873
16874 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
16875
16876 * coding.c (Qcoding_system_define_form): New variable.
16877 (syms_of_coding): Intern and staticpro it.
16878 (Fcoding_system_p): Check Qcoding_system_define_form.
16879 (Fcheck_coding_system): Try to autoload the definition of CODING-SYSTEM.
16880
16881 * coding.h (CODING_SYSTEM_P): If ID is not available, call
16882 Fcoding_system_p.
16883 (CHECK_CODING_SYSTEM): If ID is not available, call
16884 Fcheck_coding_system.
16885 (CHECK_CODING_SYSTEM_GET_SPEC, CHECK_CODING_SYSTEM_GET_ID):
16886 Try also Fcheck_coding_system.
16887
16888 2008-02-01 Kenichi Handa <handa@m17n.org>
16889
16890 * coding.c (code_conversion_restore): GCPRO arg.
16891
16892 2008-02-01 Kenichi Handa <handa@m17n.org>
16893
16894 * character.c (lisp_string_width): Check multibyteness of STRING.
16895
16896 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16897
16898 * macterm.c (mac_encode_char): Call ccl_driver with the last arg
16899 Qnil. Use JIS_TO_SJIS instead of ENCODE_SJIS.
16900 (decode_mac_font_name): Use decode_coding_c_string instead of
16901 decode_coding.
16902 (x_load_font): Initialize fontp->fontset to -1. Set
16903 fontp->encoding_type.
16904
16905 2008-02-01 Kenichi Handa <handa@m17n.org>
16906
16907 * search.c (search_buffer): Give up BM search on case-fold-search
16908 if one of a target character has a case-equivalence of different
16909 byte length even if that target charcter is an ASCII.
16910 (simple_search): Fix calculation of byte length of matched text.
16911 (boyer_moore): Fix handling of case-equivalent multibyte characters.
16912
16913 2008-02-01 Kenichi Handa <handa@m17n.org>
16914
16915 * coding.c (decode_coding): Fix handling of invalid bytes.
16916
16917 2008-02-01 Kenichi Handa <handa@m17n.org>
16918
16919 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
16920 Unicode characters.
16921
16922 2008-02-01 Kenichi Handa <handa@m17n.org>
16923
16924 * coding.c (encode_coding_object): If a pre-write-conversion
16925 function makes a new buffer, kill it.
16926
16927 2008-02-01 Kenichi Handa <handa@m17n.org>
16928
16929 * coding.c (QCascii_compatible_p): New variable.
16930 (syms_of_coding): Initialize it.
16931 (ONE_MORE_BYTE, ONE_MORE_BYTE_NO_CHECK): Decrement `src' before
16932 calling string_char.
16933 (record_conversion_result): Add `default:' case.
16934 (coding_charset_list): Delete unused variable `coding_type'.
16935 (Fdefine_coding_system_internal): Add `ascii-compatible-p'
16936 property in the plist of the coding system.
16937 (Fcoding_system_put): Check QCascii_compatible_p.
16938
16939 2008-02-01 Miles Bader <miles@gnu.org>
16940
16941 * xfaces.c (Finternal_lisp_face_equal_p): Restore previously
16942 removed calculation of frame `f', as it's now used.
16943
16944 2008-02-01 Kenichi Handa <handa@m17n.org>
16945
16946 * Makefile.in (RUN_TEMACS): Include "-nl" if HAVE_SHM is defined.
16947 (emacs${EXEEXT}): Run $(RUN_TEMACS) unconditionally.
16948 (UNIDATA): New variable.
16949 (${lispsource}international/charprop.el): Depends on ${UNIDATA}.
16950 (bootstrap-emacs${EXEEXT}): Depends on charprop.el. Run
16951 $(RUN_TEMACS) unconditionally.
16952
16953 2008-02-01 Kenichi Handa <handa@m17n.org>
16954
16955 * Makefile.in (temacs${EXEEXT}): Build charprop.el if necessary.
16956 (admindir): New variable.
16957 ($(lispsource)international/charprop.el): New target.
16958
16959 2008-02-01 Miles Bader <miles@gnu.org>
16960
16961 * character.c (chars-in-region): Remove obsolete function.
16962 (syms_of_character): Remove its initialization.
16963
16964 2008-02-01 Benjamin Riefenstahl <b.riefenstahl@turtle-trading.net>
16965
16966 * w32select.c (validate_coding_system)
16967 (setup_windows_coding_system): New functions.
16968 (convert_to_handle_as_coded, Fw32_get_clipboard_data): Use
16969 setup_windows_coding_system.
16970 (setup_config, Fw32_get_clipboard_data): Use
16971 validate_coding_system.
16972 (Fx_selection_exists): Move call to setup_config to a place
16973 where signals are allowed.
16974
16975 * lisp.h (Fcoding_system_base, Fcoding_system_eol_type)
16976 (Fcheck_coding_system): Add declarations.
16977
16978 2008-02-01 Kenichi Handa <handa@m17n.org>
16979
16980 * charset.c (load_charset_map_from_vector): Fix for the first iteration.
16981
16982 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16983
16984 * macfns.c (Fx_create_frame, x_create_tip_frame): Pass Lisp
16985 string as the second argument for x_new_fontset.
16986
16987 2008-02-01 Kenichi Handa <handa@m17n.org>
16988
16989 * coding.c (decode_coding_object): Use safe_call1 instead of call1.
16990 (encode_coding_object): Use safe_call instead of call2.
16991
16992 2008-02-01 Kenichi Handa <handa@m17n.org>
16993
16994 * fontset.c (Fset_fontset_font): Check family element of a given vector.
16995
16996 * Makefile.in (lisp): Include charprop.el.
16997
16998 2008-02-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
16999
17000 * macfns.c (Fx_create_frame, x_create_tip_frame): Fix crash.
17001 Not sure if it's unnecessary.
17002
17003 2008-02-01 Steven Tamm <steventamm@mac.com>
17004
17005 * macfns.c (Fx_create_frame, x_create_tip_frame): ifdef'd out
17006 some possibly unnecessary fontset checking code that crashed
17007 when creating a new frame.
17008
17009 2008-02-01 Kenichi Handa <handa@m17n.org>
17010
17011 * xfaces.c (merge_faces): Fix argument to lookup_derived_face and
17012 lookup_face.
17013
17014 * xdisp.c (Fformat_mode_line): Fix argument to lookup_named_face.
17015
17016 * fringe.c (draw_fringe_bitmap_1): Fix argument to lookup_named_face.
17017
17018 2008-02-01 Kenichi Handa <handa@m17n.org>
17019
17020 * coding.c: Cancel the change done in HEAD on 2008-02-01.
17021 (coding_charset_list): New function.
17022
17023 * coding.h (coding_charset_list): Extern it.
17024
17025 2008-02-01 Kenichi Handa <handa@m17n.org>
17026
17027 * fontset.c (Fset_fontset_font): Call find_font_encoding with
17028 concatenation of family and registry.
17029
17030 2008-02-01 Kenichi Handa <handa@m17n.org>
17031
17032 * character.h (BYTE8_STRING): Fix typo.
17033
17034 * editfns.c (Ftranslate_region_internal): Don't convert unibyte
17035 string to multibyte (sync to HEAD).
17036
17037 * casefiddle.c (casify_region): Handle changes in byte-length
17038 using replace_range_2 (sync to HEAD).
17039
17040 2008-02-01 Andreas Schwab <schwab@suse.de>
17041
17042 * chartab.c (map_char_table): GCPRO table and arg.
17043
17044 2008-02-01 Kenichi Handa <handa@m17n.org>
17045
17046 * syntax.c (skip_syntaxes): Return lispy 0 (not nil) if point is
17047 already at limit.
17048
17049 2008-02-01 Kenichi Handa <handa@m17n.org>
17050
17051 * fontset.c (fs_load_font): Use fast_string_match_ignore_case
17052 instead of fast_c_string_match_ignore_case.
17053 (find_font_encoding): Change argument to Lisp_Object. Use
17054 fast_string_match_ignore_case instead of
17055 fast_c_string_match_ignore_case. Change caller.
17056
17057 2008-02-01 Kenichi Handa <handa@m17n.org>
17058
17059 * xdisp.c (get_next_display_element): In unibyte case, decide to
17060 display in octal form by checking a character by
17061 UNIBYTE_CHAR_HAS_MULTIBYTE_P.
17062
17063 * charset.c (Fset_unibyte_charset): Setup unibyte_has_multibyte_table.
17064
17065 * character.c (unibyte_has_multibyte_table): New variable.
17066
17067 * character.h (unibyte_has_multibyte_table): Extern it.
17068 (UNIBYTE_CHAR_HAS_MULTIBYTE_P): New macro.
17069
17070 2008-02-01 Kenichi Handa <handa@m17n.org>
17071
17072 * coding.c (encode_coding_iso_2022): Fix handling of charset
17073 annotation.
17074
17075 2008-02-01 Kenichi Handa <handa@m17n.org>
17076
17077 * coding.c (setup_coding_system): If coding_system is nil, use
17078 Qundecided.
17079 (Fterminal_coding_system): Return nil if terminal coding system is
17080 `undecided'.
17081 (syms_of_coding): Define coding-system `undecided' here. Setup
17082 terminal_coding as `undecided'.
17083
17084 2008-02-01 Kenichi Handa <handa@m17n.org>
17085
17086 * xdisp.c (message_dolog, set_message_1): Call
17087 unibyte_char_to_multibyte with arg type int.
17088
17089 * lread.c (read1): Fix reading of a char-table.
17090
17091 * print.c (print_object): Include sub char-table in circularities
17092 detection.
17093
17094 2008-02-01 Kenichi Handa <handa@m17n.org>
17095
17096 * keymap.c (where_is_internal_2): Fix for the case that KEY is a cons.
17097 Append the found sequences in car of ARGS instead of prepending.
17098
17099 2008-02-01 Kenichi Handa <handa@m17n.org>
17100
17101 * fileio.c (report_file_error): Make a unibyte string from
17102 strerror (errorno).
17103 (Fsubstitute_in_file_name): Fix the arg to
17104 unibyte_char_to_multibyte. It is evaluated twice.
17105
17106 2008-02-01 Kenichi Handa <handa@m17n.org>
17107
17108 * charset.h (CHAR_CHARSET): Shortcut for ASCII case.
17109
17110 2008-02-01 Kenichi Handa <handa@m17n.org>
17111
17112 * coding.c (detect_coding_utf_16): Don't set detect_info->found if
17113 BOM is not found.
17114 (detect_coding, detect_coding_system): Optimization for ISO-2022
17115 when no 8-bit data is found.
17116
17117 2008-02-01 Jason Rumney <jasonr@gnu.org>
17118
17119 * w32fns.c (x_to_w32_font): Update to use new coding struct.
17120
17121 2008-02-01 Kenichi Handa <handa@m17n.org>
17122
17123 * charset.c (Fdeclare_equiv_charset, Fiso_charset): Fix handing of
17124 CHARS.
17125
17126 2008-02-01 Steven Tamm <steventamm@mac.com>
17127
17128 * macterm.c (mac_encode_char): Add charset argument and update
17129 to use encoding_type.
17130 (x_new_font, x_new_fontset): Merge in changes from xterm.c;
17131 switch to pure fontset.
17132 (decode_mac_font_name): Temporarily remove decoding.
17133 (x_font_name_to_mac_font_name): Temporarily remove encoding.
17134 (x_load_font): Temporarily remove encoding.
17135
17136 2008-02-01 Kenichi Handa <handa@m17n.org>
17137
17138 * xfaces.c (Fface_font): If frame is not on a window system,
17139 ignore CHARACTER arg. If HAVE_WINDOW_SYSTEM is not defined, don't
17140 refer to face->font.
17141 (split_font_name_into_vector, build_font_name_from_vector)
17142 (lookup_non_ascii_face, realize_non_ascii_face): Define them only
17143 when HAVE_WINDOW_SYSTEM is defined.
17144
17145 2008-02-01 Kenichi Handa <handa@m17n.org>
17146
17147 * xdisp.c (BUILD_GLYPH_STRINGS): Check if s is NULL.
17148 (x_produce_glyphs): Fix setting of members of cmp in case
17149 cmp->glyph_len is zero.
17150
17151 * fontset.c (Fset_fontset_font): Fix docstring.
17152 (Ffontset_info): Make it backward compatible. New arg ALL.
17153
17154 2008-02-01 Kim F. Storm <storm@cua.dk>
17155
17156 * process.c (read_process_output): Grow decoding_buf when needed;
17157 this could cause a crash in allocate_string and compact_small_strings.
17158
17159 2008-02-01 Kenichi Handa <handa@m17n.org>
17160
17161 * fileio.c (WRITE_BUF_SIZE): Delete this macro.
17162
17163 2008-02-01 Kenichi Handa <handa@m17n.org>
17164
17165 * coding.c (setup_coding_system): Set coding->common_flags
17166 correctly for raw-text.
17167 (consume_chars): On encoding unibyte text by raw-text, don't check
17168 multibyte form.
17169 (encode_coding): On encoding by raw-text, never use translation tables.
17170
17171 * fileio.c (e_write): Short cut for the case of no encoding.
17172
17173 2008-02-01 Kenichi Handa <handa@m17n.org>
17174
17175 * coding.c (detect_coding, detect_coding_system): Delete unused
17176 variables.
17177
17178 2008-02-01 Kenichi Handa <handa@m17n.org>
17179
17180 * coding.c (encode_coding_utf_8): Fix handling of raw-byte char.
17181 (consume_chars): Fix handling of 8-bit bytes in unibyte source.
17182
17183 2008-02-01 Kenichi Handa <handa@m17n.org>
17184
17185 * coding.c (Ffind_coding_systems_region_internal): Include
17186 raw-text and no-conversion in the result.
17187
17188 2008-02-01 Kenichi Handa <handa@m17n.org>
17189
17190 * fontset.c (find_font_encoding): Return `ascii' for unknown encoding.
17191 (load_font_get_repertory): Delete unnecessary check of ENCODING of
17192 FONT_DEF.
17193 (font_def_arg, add_arg, from_arg, to_arg): New args.
17194 (set_fontset_font): Change argument.
17195 (Fset_fontset_font): Fix for the case that TARGET is a script
17196 name and charset name.
17197 (new_fontset_from_font_name): Fix argument to Fnew_fontset.
17198
17199 2008-02-01 Kenichi Handa <handa@m17n.org>
17200
17201 * fontset.c (fontset_font): Rename from fontset_face. Change return
17202 value.
17203 (face_suitable_for_char_p, face_for_char): Adjust for the change
17204 of fontset_font.
17205 (make_fontset_for_ascii_face): Fix setting of the fontset element
17206 for ASCII.
17207 (Finternal_char_font): Use fontset_font instead of FACE_FOR_CHAR
17208 to get a font name.
17209 (Ffontset_info): Adjust for the change of fontset_font.
17210
17211 * coding.c (emacs_mule_char): Check invalid code more rigidly.
17212
17213 * character.h (LEADING_CODE_LATIN_1_MIN)
17214 (LEADING_CODE_LATIN_1_MAX): Delete these macros.
17215
17216 2008-02-01 Kenichi Handa <handa@m17n.org>
17217
17218 * editfns.c (check_translation): New function.
17219 (Ftranslate_region_internal): Handle M:N mapping.
17220
17221 2008-02-01 Kenichi Handa <handa@m17n.org>
17222
17223 * xfaces.c (xlfd_point_size): Set font->numeric[XLFD_PIXEL_SIZE].
17224
17225 2008-02-01 Kenichi Handa <handa@m17n.org>
17226
17227 * coding.c (DECODE_DESIGNATION): Set chars_96 to -1 instead of
17228 goto invalid_code.
17229 (decode_coding_iso_2022): Fix handling of invalid designation.
17230
17231 * fileio.c (Finsert_file_contents): Be sure to call unbind_to
17232 after calling code_conversion_save.
17233
17234 2008-02-01 Kenichi Handa <handa@m17n.org>
17235
17236 * xdisp.c (handle_auto_composed_prop): Fix Lisp_Object/int mixup.
17237
17238 * print.c (print_prune_string_charset): Fix Lisp_Object/int mixup.
17239
17240 * fontset.c: Include "intervals.h".
17241 (fontset_face): Fix comparing of Lisp_Objects.
17242 (free_face_fontset, new_fontset_from_font_name): Fix
17243 Lisp_Object/int mixup.
17244
17245 * editfns.c (Ftranslate_region_internal): Fix Lisp_Object/int mixup.
17246
17247 * coding.c: Add many prototypes for static functions.
17248 (get_translation_table): Allow max_lookup to be NULL.
17249 (decode_coding, Ffind_coding_systems_region_internal)
17250 (Funencodable_char_position, Fcheck_coding_systems_region): Call
17251 get_translation_table with max_lookup NULL.
17252
17253 2008-02-01 Kenichi Handa <handa@m17n.org>
17254
17255 * coding.c (get_translation_table): Declare it as Lisp_Object.
17256 (LOOKUP_TRANSLATION_TABLE): New macro.
17257 (produce_chars, consume_chars): Use LOOKUP_TRANSLATION_TABLE
17258 instead of CHAR_TABLE_REF.
17259
17260 2008-02-01 Kenichi Handa <handa@m17n.org>
17261
17262 * coding.c (MAX_ANNOTATION_LENGTH): Adjust for the change of
17263 annotation data format.
17264 (ADD_ANNOTATION_DATA, ADD_COMPOSITION_DATA, ADD_CHARSET_DATA):
17265 Change arguments FROM and TO to single argument NCHARS. Change caller.
17266 (decode_coding_utf_8, decode_coding_utf_16, decode_coding_emacs_mule)
17267 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
17268 (decode_coding_ccl, decode_coding_charset): Pay attention to
17269 coding->charbuf_used.
17270 (get_translation): New function.
17271 (produce_chars): New arguments translation_table and last_block.
17272 Translate characters here. Return number of carryover chars.
17273 Change caller.
17274 (produce_composition): New argument pos. Change caller.
17275 Adjust for the change of annotation data format.
17276 (produce_charset, produce_annotation): Likewise.
17277 (decode_coding, encode_coding): Don't call translate_chars.
17278 (consume_chars): New arg translation_table. Change caller.
17279 (translate_chars): Delete.
17280 (syms_of_coding): Make translation-table's number of extra slots 2.
17281
17282 2008-02-01 Kenichi Handa <handa@m17n.org>
17283
17284 * search.c (simple_search): Fix setting this_pos_byte in backward
17285 search.
17286
17287 * coding.c (detect_coding_emacs_mule): Fix counting of encoded
17288 byte sequence.
17289 (detect_coding_ccl): Fix setting of the variable valids.
17290
17291 2008-02-01 Kenichi Handa <handa@m17n.org>
17292
17293 * xterm.c (x_list_fonts): Fix the detection of an auto-scaled font.
17294
17295 * coding.c (decode_coding_utf_16): Fix handling of surrogate pair.
17296
17297 * editfns.c (Ftranslate_region_internal): Rename from
17298 Ftranslate_region. Accept a char-table in TABLE.
17299 (syms_of_editfns): Defsubr Stranslate_region_internal.
17300
17301 * xfaces.c (set_lface_from_font_name): If a font is specified for
17302 a frame, generate a fontset from the font.
17303 (build_scalable_font_name): If the scalable font is requested for
17304 a specific size, don't change that size.
17305 (try_font_list): Try a scalable font also in the case that a
17306 pattern string is specified.
17307
17308 2008-02-01 Kenichi Handa <handa@m17n.org>
17309
17310 * xfaces.c (Fface_font): New optional arg CHARACTER.
17311
17312 2008-02-01 Kenichi Handa <handa@m17n.org>
17313
17314 * charset.h (CHARSET_OFFSET): New macro.
17315
17316 2008-02-01 Kenichi Handa <handa@m17n.org>
17317
17318 * xterm.c (x_get_font_repertory): Fix for non-Unicode-bmp charset.
17319
17320 * fontset.c (fontset_face): Handle the case that repertory is a
17321 char-table.
17322 (find_font_encoding): Return nil for unknown encoding.
17323 (Fset_fontset_font): Ignore a font of unknown encoding.
17324
17325 2008-02-01 Kenichi Handa <handa@m17n.org>
17326
17327 * keymap.c (describe_vector): Handle default value of a char table.
17328
17329 * fontset.c (fontset_face): Handle fallback fonts correctly.
17330 (Ffontset_info): Return infomation about fallback fonts.
17331
17332 2008-02-01 Kenichi Handa <handa@m17n.org>
17333
17334 * fontset.c (FONTSET_DEFAULT): New macro.
17335 (FONTSET_ADD, fontset_add): Handle the case that range is nil.
17336 (Fset_fontset_font): Change the 2nd arg name to TARGET, and handle
17337 the case that it is nil.
17338 (dump_fontset): Call FONTSET_DEFAULT, not FONTSET_FALLBACK.
17339 (syms_of_fontset): Set char-table-extra-slots property of fontset to 9.
17340
17341 * charset.h (CHAR_CHARSET_P): Fix for the case that the method is
17342 subset or superset.
17343
17344 2008-02-01 Kenichi Handa <handa@m17n.org>
17345
17346 * emacs.c (main): Call init_charset after syms_of_XXX.
17347
17348 * charset.c (Vcharset_map_directory): Delete.
17349 (Vcharset_map_path): New variable.
17350 (load_charset_map_from_file): Use Vcharset_map_path instead.
17351 (init_charset): Initialize Vcharset_map_path.
17352 (syms_of_charset): Delete declaration of "charset-map-directory",
17353 add declaration of "charset-map-path".
17354
17355 2008-02-01 Kenichi Handa <handa@m17n.org>
17356
17357 * fns.c (string_char_to_byte, string_byte_to_char): Optimize for
17358 ASCII only string.
17359
17360 * fileio.c (Finsert_file_contents): Avoid detecting a code twice.
17361
17362 * coding.c (detect_coding_iso_2022): Fix handling of SS2 and SS3.
17363 (detect_coding, detect_coding_system): Treat '\0' as normal ASCII byte.
17364
17365 2008-02-01 Kenichi Handa <handa@m17n.org>
17366
17367 * coding.h (SJIS_TO_JIS2, JIS_TO_SJIS2): New macros.
17368
17369 * coding.c (QCmnemonic, QCdefalut_char)
17370 (QCdecode_translation_table, QCencode_translation_table)
17371 (QCpost_read_conversion, QCpre_write_conversion): New variables.
17372 (get_translation_table): Return a list of translation tables if
17373 necessary.
17374 (decode_coding): Call get_translation_table with ENCODEP 0.
17375 (char_encodable_p): If translation_table is non-nil, always call
17376 translate_char.
17377 (Fdefine_coding_system_internal): Accept list of translation
17378 tables as :encode-translation-table and :decode-translation-table.
17379 (Fcoding_system_put): New function.
17380 (syms_of_coding): Declare new symbols. Defsubr
17381 Scoding_system_put.
17382 (decode_coding_sjis, encode_coding_sjis): Handle 4th charset,
17383 typically JISX0212.
17384
17385 * charset.c (map_charset_chars): Fix arg to map_charset_chars in
17386 when the charset is superset type.
17387
17388 * character.c (translate_char): Accept list of translation tables.
17389
17390 2008-02-01 Kenichi Handa <handa@m17n.org>
17391
17392 * coding.h (enum coding_attr_index): New member coding_attr_trans_tbl.
17393 (CODING_ATTR_TRANS_TBL): New macro.
17394
17395 * coding.c (get_translation_table): New function.
17396 (translate_chars): Fix the bug of skipping annotation data.
17397 (decode_coding, encode_coding): Utilize get_translation_table.
17398 (char_encodable_p, Funencodable_char_position): Translate char if
17399 necessary.
17400 (Ffind_coding_systems_region_internal)
17401 (Fcheck_coding_systems_region): Setup translation table for encode
17402 in a coding system attribute vector in advance.
17403 (Fdefine_coding_system_internal): Allow a symbol as translation
17404 table. For shift-jis type coding system, allow 4th charset.
17405
17406 2008-02-01 Kenichi Handa <handa@m17n.org>
17407
17408 * coding.c (decode_coding_sjis): Check the first byte rigidly.
17409
17410 * xdisp.c (get_next_display_element): Pass -1 as POS to
17411 FACE_FOR_CHAR if displaying a C-string.
17412
17413 2008-02-01 Kenichi Handa <handa@m17n.org>
17414
17415 * composite.c (get_composition_id): Handle xoff and yoff in a
17416 composition rule.
17417
17418 * composite.h (COMPOSITION_DECODE_RULE): New arg xoff and yoff.
17419 (struct composition): New member lbearing and rbearing.
17420
17421 * xdisp.c (move_it_to): Optimize for the case (op & MOVE_TO_Y).
17422 (x_get_glyph_overhangs): Handle a composition glyph.
17423 (x_produce_glyphs): Setup lbearing and rbreaing for a composition glyph.
17424
17425 * xterm.c (x_compute_glyph_string_overhangs): Handle also a
17426 composition glyph.
17427
17428 2008-02-01 Kenichi Handa <handa@m17n.org>
17429
17430 * print.c: Include charset.h.
17431 (Vprint_charset_text_property): New variable.
17432 (Qdefault): Extern it.
17433 (PRINT_STRING_NON_CHARSET_FOUND)
17434 (PRINT_STRING_UNSAFE_CHARSET_FOUND): New macros.
17435 (print_check_string_result): New variable.
17436 (print_check_string_charset_prop): New function.
17437 (print_prune_charset_plist): New variable.
17438 (print_prune_string_charset): New function.
17439 (print_object): Call print_prune_string_charset if
17440 Vprint_charset_text_property is not t.
17441 (print_interval): Print nothing if interval->plist is nil.
17442 (syms_of_print): Declare Vprint_charset_text_property as a lisp
17443 variable. Init and staticpro print_prune_charset_plist.
17444
17445 2008-02-01 Kenichi Handa <handa@m17n.org>
17446
17447 * fontset.c (new_fontset_from_font_name): Use the specified font
17448 for all characters in the new fontset.
17449
17450 * macterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17451 OBJECT args.
17452
17453 * xdisp.c (x_produce_glyphs): Call FACE_FOR_CHAR with POS and
17454 OBJECT args for composition too.
17455
17456 * w32term.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with POS and
17457 OBJECT args.
17458
17459 2008-02-01 Kenichi Handa <handa@m17n.org>
17460
17461 * dispextern.h (FACE_FOR_CHAR): New args POS and OBJECT.
17462
17463 * fontset.c (reorder_font_vector): Adjust for the change of
17464 FONT_DEF format.
17465 (fontset_face): New arg id. Change caller.
17466 (face_for_char): New args pos and object.
17467 (make_fontset_for_ascii_face): Adjust for the change of FONT_DEF format.
17468 (fs_query_fontset): Check NAME by Fassoc too.
17469 (Fset_fontset_font): Allow non-XLFD font name.
17470 (Ffontset_info): Adjust for the change of FONT_DEF format.
17471
17472 * fontset.h (face_for_char): Adjust prototype.
17473
17474 * xdisp.c (face_before_or_after_it_pos, get_next_display_element)
17475 (append_space, extend_face_to_end_of_line)
17476 (get_char_face_and_encoding, BUILD_COMPOSITE_GLYPH_STRING)
17477 (x_produce_glyphs): Call FACE_FOR_CHAR with POS and OBJECT args.
17478
17479 * xfaces.c (compute_char_face): Call FACE_FOR_CHAR with
17480 POS and OBJECT args.
17481
17482 * xterm.c (x_set_mouse_face_gc): Call FACE_FOR_CHAR with
17483 POS and OBJECT args.
17484
17485 2008-02-01 Jason Rumney <jasonr@gnu.org>
17486
17487 * w32select.c (Fw32_set_clipboard_data): Avoid potential realloc
17488 of GlobalAlloc'ed memory.
17489
17490 2008-02-01 Kenichi Handa <handa@m17n.org>
17491
17492 * ccl.c (Fccl_execute_on_string): Fix the condition of loop.
17493
17494 * charset.h (charset_table_used): Delete extern.
17495
17496 * charset.c (charset_table_used): Make it static.
17497 (map_charset_chars): Fix args to c_function with.
17498
17499 * chartab.c (map_sub_char_table_for_charset): Fix args to
17500 c_function with.
17501
17502 * coding.h (enum coding_result_code): Delete
17503 CODING_RESULT_INSUFFICIENT_CMP, add CODING_RESULT_INVALID_SRC.
17504
17505 * coding.c (Qinsufficient_source, Qinconsistent_eol)
17506 (Qinvalid_source, Qinterrupted, Qinsufficient_memory): New variables.
17507 (Vlast_code_conversion_error): New variables.
17508 (syms_of_coding): DEFSYM or DEFVAR_LISP them.
17509 (ONE_MORE_BYTE): Record error if any instead of signaling an
17510 error. If non-ASCII multibyte char is found, return the negative
17511 value of the code. All callers changed to check it.
17512 (ONE_MORE_BYTE_NO_CHECK): Likewise.
17513 (record_conversion_result): New function. Change all codes setting
17514 coding->result to call this function.
17515 (detect_coding_utf_8, decode_coding_utf_8)
17516 (detect_coding_emacs_mule, detect_coding_sji, detect_coding_big5):
17517 Don't use the local variable incomplete.
17518 (emacs_mule_char): Change the second arg to `const'.
17519 (decode_coding): Fix of flushing out unprocessed data.
17520 (make_conversion_work_buffer): Fix making of a work buffer.
17521 (decode_coding_object): Return coding->dst_object.
17522
17523 * fontset.c (set_fontset_font): Fix args.
17524
17525 * lisp.h (CHARACTERBITS): Define as 22.
17526
17527 * process.c (send_process): Be sure to set coding->src_multibyte.
17528
17529 * xdisp.c (handle_auto_composed_prop): Fix setting of limit.
17530
17531 2008-02-01 Kenichi Handa <handa@m17n.org>
17532
17533 * xdisp.c (handle_auto_composed_prop): Give limit to
17534 Fnext_single_char_property_change.
17535
17536 2008-02-01 Kenichi Handa <handa@m17n.org>
17537
17538 * composite.c (syms_of_composite): Don't make the composition hash
17539 table weak.
17540
17541 * fontset.c (Fset_fontset_font): Fix docstring.
17542
17543 * lisp.h (detect_coding_system): Adjust prototype.
17544
17545 * fileio.c (kill_workbuf_unwind): Delete this function.
17546 (Finsert_file_contents): Adjust the call of detect_coding_system.
17547 Get conversion_buffer by code_conversion_save. Use the macro
17548 CODING_MAY_REQUIRE_DECODING. After decoding, update
17549 coding_system.
17550
17551 * coding.h (make_conversion_work_buffer): Delete extern.
17552 (code_conversion_save): Extern it.
17553
17554 * coding.c (enum iso_code_class_type): Delete ISO_carriage_return.
17555 (CODING_GET_INFO): Delete argument eol_type. Change callers.
17556 (decode_coding_utf_8): Don't do eol converion.
17557 (detect_coding_utf_16): Check coding->src_chars, not
17558 coding->src_bytes. Add heuristics for those that have no signature.
17559 (decode_coding_emacs_mule, decode_coding_iso_2022)
17560 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
17561 Don't do eol converion.
17562 (adjust_coding_eol_type): Return a new coding system.
17563 (detect_coding): Don't detect eol. Fix for utf-16 detection.
17564 (decode_eol): In case of CRLF->LF conversion, use del_range_2 on
17565 each change.
17566 (decode_coding): Pay attention to undo_list. Do eol conversion for
17567 all types of coding-systems (if necessary).
17568 (Vcode_conversion_work_buf_list): Delete it.
17569 (Vcode_conversion_reused_workbuf): Rename from
17570 Vcode_conversion_reused_work_buf.
17571 (Vcode_conversion_workbuf_name): New variable.
17572 (reused_workbuf_in_use): New variable.
17573 (make_conversion_work_buffer): Delete the arg DEPTH.
17574 (code_conversion_restore): Change argument to cons.
17575 (code_conversion_save): Delete the argument BUFFER. Change callers.
17576 (detect_coding_system): New argument src_chars. Change callers.
17577 Fix for utf-16 detection.
17578 (init_coding_once): Don't use ISO_carriage_return.
17579 (syms_of_coding): Initialize Vcode_conversion_workbuf_name and
17580 reused_workbuf_in_use.
17581
17582 2008-02-01 Kenichi Handa <handa@m17n.org>
17583
17584 * keymap.c (store_in_keymap): Pay attention to the case that idx
17585 is a cons specifying a character range.
17586
17587 2008-02-01 Kenichi Handa <handa@m17n.org>
17588
17589 * xdisp.c (handle_auto_composed_prop): Fix the case of returning
17590 HANDLED_RECOMPUTE_PROPS.
17591
17592 * coding.c (Fdefine_coding_system_internal): Fix checking of
17593 ascii compatibility.
17594
17595 2008-02-01 Kenichi Handa <handa@m17n.org>
17596
17597 * charset.c (find_charsets_in_text): Delete unused locale variable.
17598 (Fset_charset_priority): Update Vemacs_mule_charset_list too.
17599
17600 * coding.c (encode_coding_emacs_mule): Emit bytes with MSB.
17601 Resync charset_list to Vemacs_mule_charset_list.
17602
17603 * keymap.c (store_in_keymap): Pay attention to the case that idx
17604 is a cons specifying a character range.
17605
17606 2008-02-01 Kenichi Handa <handa@m17n.org>
17607
17608 * composite.c (update_compositions): Bind inhibit-read-only, etc
17609 to t before calling remove-list-of-text-properties.
17610
17611 * print.c (print_object): Always print ASCII chars as is.
17612
17613 2008-02-01 Kenichi Handa <handa@m17n.org>
17614
17615 * keymap.c (Fdefine_key): Fix handling of Lucid style event type list.
17616
17617 * fns.c (Fmapconcat, Fmapcar, Fmapc): Signal an error if SEQUENCE
17618 is a char table.
17619
17620 2008-02-01 Kenichi Handa <handa@m17n.org>
17621
17622 * syntax.c (skip_chars): Be sure to alloca char_ranges when necessary.
17623
17624 2008-02-01 Kenichi Handa <handa@m17n.org>
17625
17626 * xfaces.c (set_lface_from_font_name): Fix for the case that
17627 FONTNAME is not fontset name.
17628
17629 2008-02-01 Kenichi Handa <handa@m17n.org>
17630
17631 * fns.c (base64_encode_1): Fix previous change.
17632
17633 2008-02-01 Kenichi Handa <handa@m17n.org>
17634
17635 * fontset.c (set_fontset_font): New function.
17636 (Fset_fontset_font): If a font is specified for a charset, use
17637 map_charset_chars to store the font spec in a fontset.
17638
17639 2008-02-01 Kenichi Handa <handa@m17n.org>
17640
17641 * fontset.c (fontset_face): Create a fallback fontset on demand.
17642 (make_fontset): Don't create a fallback fontset here.
17643 (free_face_fontset): Free a fallback fontset (if any) too.
17644 (n_auto_fontsets): Delete this variable.
17645 (auto_fontset_alist): New variable.
17646 (new_fontset_from_font_name): Check auto_fontset_alist.
17647 (dump_fontset) [FONTSET_DEBUG]: Fully re-written.
17648 (Ffontset_list_all) [FONTSET_DEBUG]: New function.
17649 (syms_of_fontset): Initialize and staticpro auto_fontset_alist.
17650 Defsubr Sfontset_list_all.
17651
17652 2008-02-01 Kenichi Handa <handa@m17n.org>
17653
17654 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
17655
17656 2008-02-01 Kenichi Handa <handa@m17n.org>
17657
17658 * fontset.c (Fnew_fontset): Check NAME more rigidly.
17659
17660 2008-02-01 Kenichi Handa <handa@m17n.org>
17661
17662 * editfns.c (Fgoto_char): Fix docstring.
17663
17664 2008-02-01 Kenichi Handa <handa@m17n.org>
17665
17666 * insdel.c (insert_from_gap): Adjust intervals correctly.
17667
17668 2008-02-01 Jason Rumney <jasonr@gnu.org>
17669
17670 * w32term.c (GLYPHSET, WCRANGE): Define if system headers don't.
17671 (pfnGetFontUnicodeRanges): New dynamically loaded function.
17672 (w32_initialize): Try to load it.
17673 (x_get_font_repertory): Use it if available.
17674 (w32_encode_char): Add shortcut for unicode output.
17675
17676 * w32fns.c (w32_load_system_font): Default charset to -1.
17677 (x_to_w32_charset): Match all fonts for unicode.
17678 (w32_to_x_charset): New parameter matching. Don't return partial
17679 or wildcard charsets.
17680 (w32_to_all_x_charsets): Don't return partial or wildcard charsets.
17681 (w32_codepage_for_font): Return CP_UNICODE for unicode.
17682 (w32_to_x_font): Match charset to real charset.
17683 (enum_font_cb2): Always list unicode versions.
17684
17685 * makefile.w32-in (temacs): Increase EMHEAP.
17686
17687 2008-02-01 Jason Rumney <jasonr@gnu.org>
17688
17689 * w32term.c (w32_encode_char): New charset parameter.
17690 font_info.encoding becomes encoding_type.
17691 (x_get_font_repertory): New function. Warning: stub only!
17692 (x_new_font): Return quickly if font already set.
17693 (x_new_fontset): fontsetname parameter is Lisp_Object.
17694 Use new fs_query_fontset. Try new_fontset_from_font_name.
17695 Use fontset_name for return value.
17696
17697 * w32term.h: Declare x_get_font_repertory.
17698
17699 * w32select.c (Fw32_set_clipboard_data): Use string_x_string_p in
17700 place of find_charset_in_text. Use encode_coding_object in place
17701 of encode_coding.
17702 (Fw32_get_clipboard_data): Use decode_coding_c_string in place of
17703 decode_coding.
17704
17705 * w32fns.c (Fx_create_frame, x_create_tip_frame): Use new version
17706 of x_new_fontset.
17707 (w32_load_system_font): Initialize charset as unicode.
17708 font_info.encoding becomes encoding_type.
17709 (w32_to_x_font): Use decode_coding_c_string in place of decode_coding.
17710 (x_to_w32_font): Use encode_coding_object in place of encode_coding.
17711 (syms_of_w32fns): Set get_font_repertory_func.
17712
17713 * w32console.c: Include character.h. Use terminal_encode_buffer
17714 from term.c.
17715 (write_glyphs): Use new version of encode_terminal_code. Use
17716 encode_coding_object in place of encode_coding.
17717
17718 * w32bdf.c (w32_load_bdf_font): Clear font_info before filling.
17719 encoding becomes encoding_type.
17720
17721 * term.c (terminal_encode_buffer): Make externally visible.
17722
17723 * makefile.w32-in: Add character.h dependancies.
17724 (character.o, chartab.o): New targets.
17725
17726 2008-02-01 Kenichi Handa <handa@m17n.org>
17727
17728 * fileio.c (Finsert_file_contents) [DOS_NT]: Use the macro
17729 CODING_ID_EOL_TYPE.
17730
17731 2008-02-01 Andreas Schwab <schwab@suse.de>
17732
17733 * coding.c (produce_chars): Revert last change.
17734
17735 2008-02-01 Kenichi Handa <handa@m17n.org>
17736
17737 * charset.h (charset_unicode): Extern it.
17738
17739 * charset.c (string_xstring_p): Check by (C >= 0x100).
17740 (find_charsets_in_text): Change format of the arc CHARSETS. New
17741 arg MULTIBYTE.
17742 (Ffind_charset_region, Ffind_charset_string): Adjust for the
17743 change of find_charsets_in_text.
17744 (Fsplit_char): Fix doc. Never return unknown.
17745
17746 * chartab.c (char_table_translate): Use CHARACTERP, not INTEGERP.
17747
17748 * coding.c (Fdefine_coding_system_alias): Update
17749 Vcoding_system_list.
17750
17751 * fontset.c (load_font_get_repertory): Pay attention to the case
17752 that ENCODING of a font is specified by a char-table.
17753
17754 * xterm.c (x_get_font_repertory): Handle the case that the
17755 encoding of font is other than Unicode.
17756
17757 2008-02-01 Kenichi Handa <handa@m17n.org>
17758
17759 * term.c (encode_terminal_code): Don't handle glyph-table. Check
17760 if a character is encodable by the terminal coding system. If
17761 not, produces proper number of `?'s. Update
17762 terminal_encode_buffer and terminal_encode_buf_size if necessary.
17763 (produce_glyphs): Check by CHAR_BYTE8_P, not SINGLE_BYTE_CHAR_P.
17764
17765 2008-02-01 Kenichi Handa <handa@m17n.org>
17766
17767 * term.c (terminal_encode_buffer, terminal_encode_buf_size): New
17768 variables.
17769 (encode_terminal_code): Change argument. Encode multiple
17770 characters at once. Store the result of encoding in
17771 terminal_encode_buffer.
17772 (write_glyphs, insert_glyphs): Adjust for the change of
17773 encode_terminal_code.
17774 (term_init): Initialize terminal_encode_buffer and
17775 terminal_encode_buf_size.
17776
17777 * coding.c (consume_chars): If coding->src_object is nil, don't
17778 check annotation.
17779
17780 2008-02-01 Kenichi Handa <handa@m17n.org>
17781
17782 * character.c (char_string): Use ASCII_CHAR_P instead of
17783 SINGLE_BYTE_CHAR_P.
17784
17785 2008-02-01 Kenichi Handa <handa@m17n.org>
17786
17787 * xdisp.c (handle_auto_composed_prop): Check if the last
17788 characters of auto-composed region is newly composed with the
17789 following characters.
17790 (handle_composition_prop): Fix checking of point being inside
17791 composition.
17792
17793 2008-02-01 Kenichi Handa <handa@m17n.org>
17794
17795 * fns.c (concat): Don't change multibyteness of the result by
17796 concatenating an 8-bit character.
17797
17798 * data.c (Faset): Check newelt by CHECK_CHARACTER. Don't change
17799 multibyteness of the result when newelt is an 8-bit character.
17800
17801 2008-02-01 Dave Love <fx@gnu.org>
17802
17803 * xmenu.c (find_and_call_menu_selection): Make menu_bar_items_used
17804 EMACS_INT.
17805
17806 * xfns.c (DefaultDepthOfScreen, x_encode_text): Remove unused vars.
17807
17808 * xfaces.c (face_numeric_value): Declare dim size_t.
17809 (Finternal_lisp_face_equal_p): Remove unused f.
17810
17811 * xdisp.c (BUILD_CHAR_GLYPH_STRINGS, display_and_set_cursor)
17812 (MATRIX_ROW): Remove unused vars.
17813 (draw_glyphs, x_insert_glyphs, fast_find_position)
17814 (fast_find_position, fast_find_string_pos): Use EMACS_INT for
17815 byte/char counts.
17816
17817 * regex.c (regex_compile): Remove unused var.
17818
17819 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
17820
17821 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
17822 (Faccessible_keymaps, where_is_internal): Remove unused vars.
17823
17824 * keyboard.c (cancel_hourglass_unwind): Return Qnil.
17825
17826 * frame.c (frame_name_fnn_p): Make len EMACS_INT.
17827
17828 * fileio.c (Fwrite_region): Remove unused var.
17829
17830 * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
17831 (adjust_frame_glyphs_for_window_redisplay): Remove unused ch_dim.
17832
17833 * composite.c (Fremove_list_of_text_properties): Declare.
17834
17835 * coding.c (inhibit_pre_post_conversion): Remove (unused).
17836 (alloc_destination, produce_chars): Use EMACS_INT for byte/char counts.
17837 (coding_inherit_eol_type): Remove unused attrs.
17838 (detect_coding): Cast arg of detect_eol.
17839
17840 * charset.c (syms_of_charset): Remove unused var p.
17841 (find_charsets_in_text, Ffind_charset_region): Use EMACS_INT for
17842 byte/char counts.
17843
17844 * casetab.c (set_case_table): Remove unused var.
17845
17846 * window.c (Fdisplay_buffer, Fframe_selected_window): Remove
17847 unused vars.
17848
17849 2008-02-01 Dave Love <fx@gnu.org>
17850
17851 * xterm.c (x_bitmap_mask): Declare.
17852
17853 2008-02-01 Dave Love <fx@gnu.org>
17854
17855 * xterm.c (x_term_init): Fix type error.
17856
17857 * lisp.h: Add Funibyte_char_to_multibyte.
17858
17859 * coding.c (Fread_coding_system): Fix arg of XSETSTRING.
17860 (Fset_coding_system_priority): Doc fix.
17861
17862 * ccl.c (ccl_driver): Fix arg of CHARACTERP.
17863
17864 * indent.c (check_composition): Make start and end EMACS_INT.
17865
17866 * character.c (lisp_string_width): Make ignore and end EMACS_INT.
17867
17868 * xdisp.c (handle_composition_prop, check_point_in_composition):
17869 Make buffer positions EMACS_INT.
17870
17871 * composite.c (find_composition, run_composition_function)
17872 (update_compositions, Ffind_composition_internal): Make buffer
17873 positions EMACS_INT.
17874
17875 * composite.h (find_composition, update_compositions): Make
17876 position args EMACS_INT.
17877
17878 * keyboard.c (adjust_point_for_property): Make beg and end EMACS_INT.
17879
17880 * intervals.c (get_property_and_range):
17881 * intervals.h (get_property_and_range): Make start and end EMACS_INT.
17882
17883 * unexalpha.c: Don't include varargs.h.
17884
17885 2008-02-01 Dave Love <fx@gnu.org>
17886
17887 * coding.h (ENCODE_UTF_8): New.
17888
17889 * Makefile.in (gtkutil.o): Depend on coding.h.
17890
17891 * coding.c (Fset_coding_system_priority): Doc fix.
17892
17893 2008-02-01 Kenichi Handa <handa@m17n.org>
17894
17895 * fileio.c (Finsert_file_contents): Call setup_coding_system in
17896 the case of auto saving.
17897
17898 2008-02-01 Andreas Schwab <schwab@suse.de>
17899
17900 * chartab.c (map_char_table, map_char_table_for_charset): Protect
17901 `range' from GC.
17902
17903 2008-02-01 Kenichi Handa <handa@m17n.org>
17904
17905 * coding.c (decode_coding_sjis): Check bytes more rigidly.
17906
17907 2008-02-01 Kenichi Handa <handa@m17n.org>
17908
17909 * fileio.c (choose_write_coding_system): Return a decided coding system.
17910 (Fwrite_region): Set Vlast_coding_system_used to the return value
17911 of choose_write_coding_system.
17912
17913 2008-02-01 Kenichi Handa <handa@m17n.org>
17914
17915 * charset.c (Fset_charset_priority): Pay attention to duplicated
17916 arguments.
17917
17918 * coding.c (QCcategory): New variable.
17919 (syms_of_coding): Defsym it. Set all elements of
17920 Vcoding_category_table and their symbol values.
17921 (Fset_coding_system_priority): Doc fix. Update symbol qvalues of
17922 coding-category-XXX, and coding-category-list.
17923 (Fdefine_coding_system_internal): Add category in the plist.
17924
17925 2008-02-01 Kenichi Handa <handa@m17n.org>
17926
17927 * callproc.c (Fcall_process): Handle carryover correctly.
17928
17929 * coding.c (decode_coding_iso_2022): Fix handling of invalid bytes.
17930 (raw_text_coding_system): Check NILP (coding_system).
17931 (coding_inherit_eol_type): Check NILP (coding_system) and
17932 NILP (parent).
17933 (consume_chars): Fix for the case of raw-text.
17934
17935 * process.c (read_process_output): Handle carryover correctly.
17936
17937 2008-02-01 Dave Love <fx@gnu.org>
17938
17939 * regex.c (re_search_2): Fix last change.
17940
17941 2008-02-01 Kenichi Handa <handa@m17n.org>
17942
17943 * regex.c (GET_CHAR_BEFORE_2): Check multibyte, not
17944 target_multibyte. Even in a unibyte case, return a converted
17945 multibyte char.
17946 (GET_CHAR_AFTER): New macro.
17947 (PATFETCH): Translate via multibyte char.
17948 (HANDLE_UNIBYTE_RANGE): Delete this macro.
17949 (SETUP_MULTIBYTE_RANGE): New macro.
17950 (regex_compile): Setup compiled code so that its multibyteness
17951 matches that of a target. Fix the handling of "[X-YZ]" using
17952 SETUP_MULTIBYTE_RANGE.
17953 (analyse_first) <charset>: For filling fastmap for all multibyte
17954 characters, don't check by BASE_LEADING_CODE_P.
17955 (re_search_2): Don't check RE_TARGET_MULTIBYTE_P (bufp). It is
17956 the same as RE_MULTIBYTE_P (bufp) now.
17957 (mutually_exclusive_p): Check by (! multibyte || IS_REAL_ASCII (c)).
17958 (TARGET_CHAR_AND_LENGTH): Delete this macro.
17959 (TRANSLATE_VIA_MULTIBYTE): New macro.
17960 (re_match_2_internal): Don't check RE_TARGET_MULTIBYTE_P (bufp).
17961 It is the same as RE_MULTIBYTE_P (bufp) now.
17962 <exactn>: Translate via multibyte.
17963 <anychar>: Fetch a character by RE_STRING_CHAR_AND_LENGTH. Don't
17964 translate it.
17965 <charset, charset_not>: Fetch a character by
17966 RE_STRING_CHAR_AND_LENGTH. Translate via multibyte.
17967 <duplicate>: Call bcmp_translate with the last arg `multibyte'.
17968 <wordbound, notwordbound, wordbeg, wordend, syntaxspec,
17969 notsyntaxspec, categoryspec, notcategoryspec> Fetch a character
17970 by GET_CHAR_AFTER.
17971 (bcmp_translate): Likewise.
17972
17973 * search.c (compile_pattern): Check the member target_multibyte,
17974 not the member multibyte of buf.
17975
17976 * lread.c (read1): While reading a string, set force_singlebyte
17977 and force_multibyte correctly.
17978
17979 * charset.c (Fset_unibyte_charset, init_charset_once): Fix setting
17980 up of unibyte_to_multibyte_table.
17981
17982 2008-02-01 Kenichi Handa <handa@m17n.org>
17983
17984 * coding.c (setup_coding_system): If coding has
17985 post-read-conversion or pre-write-conversion, set
17986 CODING_REQUIRE_DECODING_MASK and CODING_REQUIRE_ENCODING_MASK
17987 respectively.
17988 (decode_coding_gap): Run post-read-conversion if any.
17989
17990 * fileio.c (Finsert_file_contents): Even if we read into a
17991 unibyte buffer, check if we must decode the result or not.
17992
17993 2008-02-01 Kenichi Handa <handa@m17n.org>
17994
17995 * coding.c (make_conversion_work_buffer): Change the work buffer
17996 name to the same one as that of Emacs 21.
17997
17998 2008-02-01 Kenichi Handa <handa@m17n.org>
17999
18000 * coding.h (make_conversion_work_buffer): Adjust prototype.
18001 (code_conversion_restore): Don't extern it.
18002
18003 * coding.c (detected_mask): Delete unused variable.
18004 (decode_coding_iso_2022): Pay attention to the byte sequence of
18005 CTEXT extended segment, and retain those bytes as is.
18006 (decode_coding_ccl): Delete unused variable `valids'.
18007 (setup_coding_system): Delete unused variable `category'.
18008 (consume_chars): Delete unused variable `category'. Make it work
18009 for non-multibyte case.
18010 (make_conversion_work_buffer): Change argument.
18011 (saved_coding): Delete unused variable.
18012 (code_conversion_restore): Don't check saved_coding->destination.
18013 (code_conversion_save): New function.
18014 (decode_coding_gap, encode_coding_gap): Call code_conversion_save
18015 instead of record_unwind_protect.
18016 (decode_coding_object, encode_coding_object): Likewise. Recover PT.
18017 (detect_coding_system): Delete unused variable `mask'.
18018 (Fdefine_coding_system_internal): Delete unused variable id.
18019
18020 * fileio.c (kill_workbuf_unwind): New function.
18021 (Finsert_file_contents): On replacing, call
18022 make_conversion_work_buffer with correct args, and call
18023 record_unwind_protect with the first arg kill_workbuf_unwind.
18024
18025 * lisp.h (Fgenerate_new_buffer_name): EXFUN it.
18026
18027 2008-02-01 Kenichi Handa <handa@m17n.org>
18028
18029 * fontset.c (BASE_FONTSET_P): Check FONTSET_BASE, not FONTSET_NAME.
18030 (fontset_add): Fix for the case that TO is less than TO1.
18031 (Ffontset_info): Don't use fallback fontset on checking the
18032 default fontset.
18033 (dump_fontset): New function for debugging.
18034
18035 * coding.c (Fdefine_coding_system_internal): Fix for the case that
18036 coding_type is Qcharset.
18037
18038 2008-02-01 Kenichi Handa <handa@m17n.org>
18039
18040 * chartab.c (map_sub_char_table): New argument DEFAULT_VAL.
18041 (map_char_table): Don't inherit the value from the parent on
18042 initializing VAL. Adjust for the above change.
18043
18044 2008-02-01 Kenichi Handa <handa@m17n.org>
18045
18046 * coding.c (Qsignature, Qendian): Delete these variables.
18047 (syms_of_coding): Don't initialize them.
18048 (CATEGORY_MASK_UTF_16_AUTO): New macro.
18049 (detect_coding_utf_16): Add CATEGORY_MASK_UTF_16_AUTO in
18050 detect_info->found.
18051 (decode_coding_utf_16): Don't detect BOM here.
18052 (encode_coding_utf_16): Produce BOM if CODING_UTF_16_BOM (coding)
18053 is NOT utf_16_without_bom.
18054 (setup_coding_system): For a coding system of type utf-16, check
18055 if the attribute :endian is Qbig or not (not nil or not), and set
18056 CODING_REQUIRE_DETECTION_MASK if BOM detection is required.
18057 (detect_coding): If coding type is utf-16 and BOM detection is
18058 required, detect it.
18059 (Fdefine_coding_system_internal): For a coding system of type
18060 utf-16, check if the attribute :endian is Qbig or not (not nil or not).
18061
18062 2008-02-01 Kenichi Handa <handa@m17n.org>
18063
18064 * coding.c (coding_set_source): Fix for the case that the current
18065 buffer is different from coding->src_object.
18066 (decode_coding_object): Don't use the conversion work buffer if
18067 DST_OBJECT is a buffer.
18068
18069 2008-02-01 Dave Love <fx@gnu.org>
18070
18071 * lread.c (read_emacs_mule_char) [len==2]: Index
18072 emacs_mule_charset correctly.
18073
18074 2008-02-01 Dave Love <fx@gnu.org>
18075
18076 * coding.c (Qbig5, Vbig5_coding_system, CATEGORY_MASK_BIG5)
18077 (detect_coding_big5, decode_coding_big5, encode_coding_big5)
18078 (Fdecode_big5_char, Fencode_big5_char): Delete. (Big5 no longer
18079 treated specially.)
18080 (setup_coding_system, coding_category, CATEGORY_MASK_ANY)
18081 (detected_mask): Remove Big5 bits.
18082
18083 2008-02-01 Kenichi Handa <handa@m17n.org>
18084
18085 The following changes are to make the font rescaling facility
18086 compatible with Emacs 21.
18087
18088 * xfaces.c (Vface_font_rescale_alist): Rename from
18089 Vface_resizing_fonts.
18090 (struct font_name): Rename member resizing_ratio to rescale_ratio.
18091 (font_rescale_ratio): Rename from font_resizing_ratio.
18092 (split_font_name): Set font->rescale_ratio.
18093 (better_font_p): Pay attention to font->rescale_ratio.
18094 (build_scalable_font_name): Likewise. Change RESX, and RESY
18095 fields.
18096 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
18097
18098 2008-02-01 Kenichi Handa <handa@m17n.org>
18099
18100 * coding.c (Qutf_16_be_nosig, Qutf_16_be, Qutf_16_le_nosig)
18101 (Qutf_16_le): Remove these variables.
18102 (syms_of_coding): Don't DEFSYM them.
18103 (decode_coding_utf_16): Fix handling of BOM.
18104 (encode_coding_utf_16): Fix handling of BOM.
18105
18106 2008-02-01 Kenichi Handa <handa@m17n.org>
18107
18108 * fileio.c (Finsert_file_contents): On replacing, before decoding
18109 the file into the work buffer, set point of the work buffer to the end.
18110
18111 2008-02-01 Dave Love <fx@gnu.org>
18112
18113 * coding.c (Fcheck_coding_systems_region): Fix type errors.
18114
18115 2008-02-01 Dave Love <fx@gnu.org>
18116
18117 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18118 and fix C types.
18119
18120 2008-02-01 Kenichi Handa <handa@m17n.org>
18121
18122 * xdisp.c (SKIP_GLYPHS): New macro.
18123 (set_cursor_from_row): Pay attention to string display properties.
18124
18125 * category.c (copy_category_entry): Fix for the case that RANGE
18126 is an integer.
18127
18128 * xterm.c (x_encode_char): Call ccl_driver with the last arg Qnil.
18129
18130 * w32term.c (w32_encode_char): Call ccl_driver with the last arg Qnil.
18131
18132 2008-02-01 Kenichi Handa <handa@m17n.org>
18133
18134 * charset.c (Fcharset_id_internal): New function.
18135 (syms_of_charset): Defsubr it.
18136
18137 * coding.c (decode_coding_ccl, encode_coding_ccl): Call ccl_driver
18138 with the last arg charset_list acquired from coding.
18139 (Fdefine_coding_system_internal): For ccl-based coding system, fix
18140 the attribute coding_attr_ccl_valids.
18141
18142 * coding.h (enum define_coding_ccl_arg_index): Set the first
18143 member coding_arg_ccl_decoder to coding_arg_max.
18144
18145 * ccl.h (ccl_driver): Adjust prototype.
18146
18147 * ccl.c (CCL_DECODE_CHAR, CCL_ENCODE_CHAR): New macros.
18148 (ccl_driver): New arg CHARSET_LIST. Use the above macros instead
18149 of DECODE_CHAR, ENCODE_CHAR, CHAR_CHARSET.
18150 (Fccl_execute, Fccl_execute_on_string): Call ccl_driver with the
18151 last arg Qnil.
18152
18153 2008-02-01 Kenichi Handa <handa@m17n.org>
18154
18155 * charset.h (ENCODE_CHAR): If the method is SUBSET or SUPERSET,
18156 call encode_char.
18157
18158 * charset.c (encode_char): Fix handling of methods SUBSET and SUPERSET.
18159
18160 2008-02-01 Dave Love <fx@gnu.org>
18161
18162 * composite.c (syms_of_composite): Make composition_hash_table weak.
18163
18164 2008-02-01 Kenichi Handa <handa@m17n.org>
18165
18166 * dispextern.h (check_face_attributes, generate_ascii_font_name)
18167 (font_name_registry): Don't extern them.
18168 (split_font_name_into_vector, build_font_name_from_vector): Extern them.
18169
18170 * fontset.h (Qfontset): Don't extern it.
18171 (new_fontset_from_font_name): Extern it.
18172
18173 * fontset.c: Give 8 extra slots to fontset objects.
18174 (Qfontset_info): New variable.
18175 (syms_of_fontset): Defsym it.
18176 (FONTSET_FALLBACK): New macro.
18177 (fontset_face): Try also the default fontset.
18178 (make_fontset): Realize a fallback fontset from the default fontset.
18179 (generate_ascii_font_name): Move from xfaces.c. Rewritten by
18180 using split_font_name_into_vector and build_font_name_from_vector.
18181 (Fset_fontset_font): Access the elements of font_spec by enum
18182 FONT_SPEC_INDEX. If font_spec is a string, extract the registry
18183 name by using split_font_name_into_vector.
18184 (Fnew_fontset): If no ASCII font is specified in FONTLIST,
18185 generate a proper font name from the fontset name. Update
18186 Vfontset_alias_alist.
18187 (n_auto_fontsets): New variable.
18188 (new_fontset_from_font_name): New function.
18189 (Ffont_info): Store the information about fonts generated from the
18190 default fontset in the first extra slot of the returned char-table.
18191
18192 * xfaces.c (generate_ascii_font_name): Move to fontset.c.
18193 (font_name_registry): Delete function.
18194 (split_font_name_into_vector): New function.
18195 (build_font_name_from_vector): New function.
18196 (font_list): The argument REGISTRY is now a list of registry names.
18197 (choose_face_font): If we are choosing an ASCII font, and ATTRS
18198 specifies an explicit font name, return the name as is. Make a
18199 list of registy names.
18200
18201 * xfns.c (x_set_font, x_create_tip_frame): Adjust for the change
18202 of x_new_fontset.
18203 (Fx_create_frame): Don't call x_new_fontset here. Just use
18204 x_list_fonts to check the existence of fonts.
18205
18206 * xterm.h (x_new_fontset): Adjust prototype.
18207
18208 * xterm.c (x_new_fontset): Change the arg FONTSETNAME to Lisp
18209 string. Use new_fontset_from_font_name to create a fontset from a
18210 font name.
18211
18212 2008-02-01 Kenichi Handa <handa@m17n.org>
18213
18214 * syntax.c (Vfind_word_boundary_function_table): New name for
18215 Vnext_word_boundary_function_table.
18216 (find-word-boundary-function-table): New name for
18217 next-word-boundary-function-table.
18218
18219 2008-02-01 Dave Love <fx@gnu.org>
18220
18221 * Makefile.in: Fix some dependencies.
18222
18223 * keymap.c (Fapropos_internal): Don't gcpro apropos_predicate but
18224 set it to nil before returning.
18225
18226 * composite.c (update_compositions): Fix type error.
18227
18228 * syntax.c (skip_chars, skip_syntaxes): Fix type errors.
18229
18230 2008-02-01 Kenichi Handa <handa@m17n.org>
18231
18232 * xterm.c (x_new_font): Optimize for the case that the font is
18233 already set for the frame.
18234
18235 2008-02-01 Kenichi Handa <handa@m17n.org>
18236
18237 * chartab.c (char_table_ascii): Check if the char table contents
18238 is sub-char-table or not.
18239 (char_table_set, char_table_set_range): Fix argument to
18240 char_table_ascii.
18241
18242 * coding.c (CATEGORY_MASK_RAW_TEXT): New macro.
18243 (detect_coding_utf_8, detect_coding_utf_16)
18244 (detect_coding_emacs_mule, detect_coding_iso_2022)
18245 (detect_coding_sjis, detect_coding_big5)
18246 (detect_coding_ccl, detect_coding_charset): Change argument MASK
18247 to DETECT_INFO. Update DETECT_INFO and return 1 if the byte
18248 sequence is valid in this coding system. Change callers.
18249 (MAX_ANNOTATION_LENGTH): New macro.
18250 (ADD_ANNOTATION_DATA): New macro.
18251 (ADD_COMPOSITION_DATA): Change argument. Change callers. Call
18252 ADD_ANNOTATION_DATA. Change the format of annotation data.
18253 (ADD_CHARSET_DATA): New macro.
18254 (emacs_mule_char): New argument ID. Change callers.
18255 (decode_coding_emacs_mule, decode_coding_iso_2022)
18256 (decode_coding_sjis, decode_coding_big5, decode_coding_charset):
18257 Produce charset annotation data in coding->charbuf.
18258 (encode_coding_emacs_mule, encode_coding_iso_2022): Pay attention
18259 to charset annotation data in coding->charbuf.
18260 (setup_coding_system): Add CODING_ANNOTATE_CHARSET_MASK
18261 coding->common_flags if the coding system is iso-2022 based and
18262 uses designation.
18263 (produce_composition): Adjust for the new annotation data format.
18264 (produce_charset): New function.
18265 (produce_annotation): Handle charset annotation.
18266 (handle_composition_annotation, handle_charset_annotation): New
18267 functions.
18268 (consume_chars): Handle charset annotation. Utilize the above two
18269 functions.
18270 (encode_coding_object): If SRC_OBJECT and DST_OBJECT are the same
18271 buffer, get the deleted text as a string and set
18272 coding->src_object to that string.
18273 (detect_coding, detect_coding_system): Use the new struct
18274 coding_detection_info.
18275
18276 * coding.h (struct coding_detection_info): New structure.
18277 (struct coding_system): Adjust prototype of the member `detector'.
18278 (CODING_ANNOTATE_CHARSET_MASK): New macro.
18279
18280 2008-02-01 Kenichi Handa <handa@m17n.org>
18281
18282 * insdel.c (insert_from_gap): Fix argument to offset_intervals.
18283
18284 2008-02-01 Dave Love <fx@gnu.org>
18285
18286 * keymap.c (apropos_predicate, apropos_accumulate): Declare static.
18287 (Fapropos_internal): Don't gcpro apropos_accumulate. Set result
18288 to new local and nullify apropos_accumulate before returning.
18289 (syms_of_keymap): Staticpro and initialize apropos_accumulate.
18290
18291 2008-02-01 Kenichi Handa <handa@m17n.org>
18292
18293 * charset.c (Fdefine_charset_internal): Setup charset.fast_map
18294 correctly.
18295
18296 2008-02-01 Dave Love <fx@gnu.org>
18297
18298 * fns.c (Flanginfo): Call synchronize_system_time_locale.
18299
18300 2008-02-01 Kenichi Handa <handa@m17n.org>
18301
18302 The following changes are to make character composition happen
18303 automatically on displaying.
18304
18305 * Makefile.in (lisp, shortlisp): Add composite.elc.
18306
18307 * composite.h (Qauto_composed, Vauto_composition_function)
18308 (Qauto_composition_function): Extern them.
18309
18310 * composite.c (Vcomposition_function_table)
18311 (Qcomposition_function_table): Delete variables.
18312 (Qauto_composed, Vauto_composition_function)
18313 (Qauto_composition_function): New variables.
18314 (run_composition_function): Don't call
18315 compose-chars-after-function.
18316 (update_compositions): Clear `auto-composed' text property.
18317 (compose_chars_in_text): Delete this function.
18318 (syms_of_composite): Staticpro Qauto_composed and
18319 Qauto_composition_function. Declare Vauto_composition_function as
18320 a Lisp variable.
18321
18322 * dispextern.h (enum prop_idx): Add member AUTO_COMPOSED_PROP_IDX.
18323
18324 * xdisp.c (it_props): Add an entry for Qauto_composed.
18325 (handle_auto_composed_prop): New function.
18326
18327 * xselect.c (selection_data_to_lisp_data): Don't call
18328 compose_chars_in_text.
18329
18330 2008-02-01 Dave Love <fx@gnu.org>
18331
18332 * keyboard.c (read_char): Modify checking around use of
18333 Vkeyboard_translate_table.
18334
18335 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
18336 and fix C types.
18337
18338 2008-02-01 Kenichi Handa <handa@m17n.org>
18339
18340 * coding.c (decode_coding_utf_8, decode_coding_emacs_mule)
18341 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
18342 (decode_coding_charset, produce_chars): When eol_type is Qdos, handle
18343 the case that the last byte is '\r' correctly.
18344 (decode_coding): Flush out the unprocessed data correctly.
18345 (decode_coding_gap): Set CODING_MODE_LAST_BLOCK bit of coding->mode.
18346
18347 2008-02-01 Dave Love <fx@gnu.org>
18348
18349 * xterm.c (XTread_socket): Fix changes for defined keysyms.
18350 Add XK_ISO... case.
18351 (xaw_scroll_callback): Revert last change.
18352
18353 2008-02-01 Kenichi Handa <handa@m17n.org>
18354
18355 * charset.c (Fset_charset_priority): Update Viso_2022_charset_list.
18356
18357 2008-02-01 Kenichi Handa <handa@m17n.org>
18358
18359 * xfaces.c (Vface_resizing_fonts): New variable.
18360 (struct font_name): New member `resizing_ratio'.
18361 (font_resizing_ratio): New function.
18362 (split_font_name): Set font->resizing_ratio.
18363 (better_font_p): Pay attention to font->resizing_ratio.
18364 (build_scalable_font_name): Likewise. Don't change POINT_SIZE,
18365 RESX, and RESY fields.
18366 (try_alternative_families): Try scalable fonts if
18367 Vscalable_fonts_allowed is not Qt.
18368 (syms_of_xfaces): Declare Vface_resizing_fonts as a Lisp variable.
18369
18370 2008-02-01 Dave Love <fx@gnu.org>
18371
18372 * xterm.c (xaw_scroll_callback): Cast correctly.
18373
18374 2008-02-01 Dave Love <fx@gnu.org>
18375
18376 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extend.
18377 (lispy_kana_keys): Comment out.
18378 (make_lispy_event) [XK_kana_A]: Comment out.
18379
18380 * xterm.c (xaw_scroll_callback): Cast call_data.
18381 (XTread_socket): Deal with ASCII keysyms.
18382 (syms_of_xterm) <Vx_keysym_table>: Fix args of make_hash_table.
18383
18384 2008-02-01 Dave Love <fx@gnu.org>
18385
18386 * xterm.c (Vx_keysym_table): New.
18387 (syms_of_xterm): Initialize it.
18388 (XTread_socket): Use it.
18389 From head: Eliminate incorrect optimization that tried to avoid
18390 decoding the output of X*LookupString.
18391 (x_get_font_repertory): Delete charset declaration.
18392
18393 2008-02-01 Kenichi Handa <handa@m17n.org>
18394
18395 * coding.c (detect_coding_charset): If only ASCII bytes are found,
18396 return 0.
18397 (Fdefine_coding_system_internal): Setup
18398 CODING_ATTR_ASCII_COMPAT (attrs) correctly.
18399
18400 2008-02-01 Dave Love <fx@gnu.org>
18401
18402 * coding.c (Fcheck_coding_system): Doc fix.
18403
18404 * editfns.c (Finsert_byte): Return a proper value.
18405
18406 2008-02-01 Kenichi Handa <handa@m17n.org>
18407
18408 * coding.c (decode_coding): Fix args to translate_chars. Pay
18409 attention to Vstandard_translation_table_for_decode.
18410 (encode_coding): Fix args to translate_chars. Pay attention to
18411 Vstandard_translation_table_for_encode.
18412
18413 * data.c (Faset): Check NEWELT by ASCII_CHAR_P, not by
18414 SINGLE_BYTE_CHAR_P.
18415
18416 * editfns.c (general_insert_function): Check VAL by ASCII_CHAR_P,
18417 not by SINGLE_BYTE_CHAR_P.
18418
18419 * fns.c (concat): Check CH by ASCII_CHAR_P, not by
18420 SINGLE_BYTE_CHAR_P.
18421
18422 * insdel.c (copy_text): Check C by ASCII_CHAR_P, not by
18423 SINGLE_BYTE_CHAR_P.
18424
18425 * keymap.c (Ftext_char_description): Check C by ASCII_CHAR_P, not
18426 by SINGLE_BYTE_CHAR_P.
18427
18428 * search.c (Freplace_match): Check C by ASCII_CHAR_P, not by
18429 SINGLE_BYTE_CHAR_P.
18430
18431 2008-02-01 Dave Love <fx@gnu.org>
18432
18433 * fns.c (Fstring_as_multibyte, Fstring_to_multibyte): Doc fix.
18434
18435 2008-02-01 Dave Love <fx@gnu.org>
18436
18437 * fns.c (Flanginfo): Fix typo.
18438
18439 * unexelf.c (unexec): Make last change conditional on Irix 6.5.
18440
18441 2008-02-01 Kenichi Handa <handa@m17n.org>
18442
18443 * coding.c (detect_coding_utf_8, detect_coding_utf_16)
18444 (detect_coding_emacs_mule, detect_coding_iso_2022)
18445 (detect_coding_sjis, detect_coding_big5, detect_coding_ccl): Check
18446 incomplete byte sequence. Don't update *mask when correctly detected.
18447 (decode_coding_sjis): Fix decoding of katakana-jisx0201.
18448 (detect_eol): Delete the argument CODING, and add the argument CATEGORY.
18449 (detect_coding, detect_coding_system): Adjust for the changes above.
18450
18451 2008-02-01 Kenichi Handa <handa@m17n.org>
18452
18453 * character.c (char_string): Rename from
18454 char_string_with_unification. Pay attention to CHAR_MODIFIER_MASK.
18455 (string_char): Rename from string_char.
18456
18457 * character.h (CHAR_STRING, CHAR_STRING_ADVANCE): Call char_string
18458 if C is greater than MAX_3_BYTE_CHAR.
18459 (STRING_CHAR, STRING_CHAR_AND_LENGTH, STRING_CHAR_ADVANCE): Call
18460 string_char instead of string_char_with_unification.
18461
18462 2008-02-01 Dave Love <fx@gnu.org>
18463
18464 * coding.c (decode_coding_utf_8): Treat surrogates as invalid.
18465
18466 2008-02-01 Kenichi Handa <handa@m17n.org>
18467
18468 * keymap.c (push_key_description): Pay attention to force_multibyte.
18469
18470 * regex.c (re_search_2): Fix for the case of unibyte buffer.
18471
18472 2008-02-01 Dave Love <fx@gnu.org>
18473
18474 * charset.c (define_charset_internal): Rename `supprementary'.
18475
18476 * Makefile.in (lisp, shortlisp): Remove latin-N.
18477
18478 2008-02-01 Dave Love <fx@gnu.org>
18479
18480 * xfns.c (x_window, x_window): Use use_xim.
18481
18482 * xterm.c (use_xim): Initialize.
18483 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
18484 (x_term_init): Maybe set use_xim.
18485
18486 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
18487
18488 2008-02-01 Kenichi Handa <handa@m17n.org>
18489
18490 * search.c (search_buffer): Fix case-fold-search of multibyte
18491 characters.
18492 (boyer_moore): Rename the last argument to char_high_bits.
18493
18494 2008-02-01 Kenichi Handa <handa@m17n.org>
18495
18496 * xdisp.c (display_string): Fix for the case of zero width glyph.
18497
18498 * xfns.c (x_set_font): Change the error message of the case that
18499 x_new_fontset returns Qt.
18500
18501 * xfaces.c (set_lface_from_font_name): Reject the default fontset.
18502 (Finternal_set_lisp_face_attribute): Use signal_error for the
18503 error of invalid fontset.
18504
18505 * xterm.c (x_new_fontset): If FONTSETNAME specifies the default
18506 fontset, return Qt.
18507
18508 2008-02-01 Dave Love <fx@gnu.org>
18509
18510 * unexelf.c (unexec): Make .got handling not SGI-specific.
18511
18512 * syntax.c (syms_of_syntax) <multibyte-syntax-as-symbol>: Doc fix.
18513
18514 * regex.c: Use `ifdef HAVE_ALLOCA_H', not `if HAVE_ALLOCA_H'.
18515
18516 * keyboard.c (read_key_sequence): Fix type error.
18517
18518 * buffer.c (Fset_buffer_multibyte, Fset_buffer_multibyte): Fix
18519 type error.
18520
18521 * fontset.c (fontset_add): Return Lisp_Object.
18522
18523 2008-02-01 Dave Love <fx@gnu.org>
18524
18525 * charset.h (charset_ordered_list_tick): Declare extern.
18526
18527 2008-02-01 Kenichi Handa <handa@m17n.org>
18528
18529 The following changes (and some of 2008-02-01 changes of mine) are
18530 for handling syntax, category, and case conversion for unibyte
18531 characters by converting them to multibyte on the fly. With these
18532 changes, we don't have to setup syntax and case tables for unibyte
18533 characters in each language environment.
18534
18535 * abbrev.c (Fexpand_abbrev): Convert a unibyte character to
18536 multibyte if necessary.
18537
18538 * bytecode.c (Fbyte_code): Likewise.
18539
18540 * character.h (LEADING_CODE_LATIN_1_MIN)
18541 (LEADING_CODE_LATIN_1_MAX): New macros.
18542 (unibyte_to_multibyte_table): Extern it.
18543 (unibyte_char_to_multibyte): New macro.
18544 (MAKE_CHAR_MULTIBYTE): Use unibyte_to_multibyte_table.
18545 (CHAR_LEADING_CODE): New macro.
18546 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE): New macro.
18547
18548 * character.c (unibyte_to_multibyte_table): New variable.
18549 (unibyte_char_to_multibyte): Move to character.h and define as macro.
18550 (multibyte_char_to_unibyte): If C is an eight-bit character,
18551 convert it to the corresponding byte value.
18552
18553 * charset.c (Fset_unibyte_charset): If the dimension of CHARSET is
18554 not 1, signals an error. Update the elements of
18555 unibyte_to_multibyte_table.
18556 (init_charset_once): Initialize unibyte_to_multibyte_table.
18557 (syms_of_charset): Define the charset `iso-8859-1'.
18558
18559 * cmds.c (internal_self_insert): In a multibyte buffer, insert C
18560 as is without converting it to unibyte. In a unibyte buffer,
18561 convert C to multibyte before checking the syntax.
18562
18563 * lisp.h (unibyte_char_to_multibyte): Delete extern.
18564
18565 * minibuf.c (Fminibuffer_complete_word): Use the macro
18566 FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
18567
18568 * regex.h (struct re_pattern_buffer): New member target_multibyte.
18569
18570 * regex.c (RE_TARGET_MULTIBYTE_P): New macro.
18571 (GET_CHAR_BEFORE_2): Check target_multibyte, not multibyte. If
18572 that is zero, convert an eight-bit char to multibyte.
18573 (MAKE_CHAR_MULTIBYTE, CHAR_LEADING_CODE): New dummy new macros for
18574 non-emacs case.
18575 (PATFETCH): Convert an eight-bit char to multibyte.
18576 (HANDLE_UNIBYTE_RANGE): New macro.
18577 (regex_compile): Setup the compiled pattern for multibyte chars
18578 even if the given regex string is unibyte. Use PATFETCH_RAW
18579 instead of PATFETCH in many places. To handle `charset'
18580 specification of unibyte, call HANDLE_UNIBYTE_RANGE. Use bitmap
18581 only for ASCII chars.
18582 (analyse_first) <exactn>: Simplify because the compiled pattern
18583 is multibyte.
18584 <charset_not>: Setup fastmap from bitmap only for ASCII chars.
18585 <charset>: Use CHAR_LEADING_CODE to get leading codes.
18586 <categoryspec>: If multibyte, setup fastmap only for ASCII chars here.
18587 (re_compile_fastmap) [emacs]: Call analyse_first with the arg
18588 multibyte always 1.
18589 (re_search_2): In emacs, set the locale variable multibyte to 1,
18590 otherwise to 0. New local variable target_multibyte. Check it
18591 to decide the multibyteness of STR1 and STR2. If
18592 target_multibyte is zero, convert unibyte chars to multibyte
18593 before translating and checking fastmap.
18594 (TARGET_CHAR_AND_LENGTH): New macro.
18595 (re_match_2_internal): In emacs, set the locale variable multibyte
18596 to 1, otherwise to 0. New local variable target_multibyte. Check
18597 it to decide the multibyteness of STR1 and STR2. Use
18598 TARGET_CHAR_AND_LENGTH to fetch a character from D.
18599 <charset, charset_not>: If multibyte is nonzero, check fastmap
18600 only for ASCII chars. Call bcmp_translate with
18601 target_multibyte, not with multibyte.
18602 <begline>: Declare the local variable C as `unsigned'.
18603 (bcmp_translate): Change the last arg name to target_multibyte.
18604
18605 * search.c (compile_pattern_1): Don't adjust the multibyteness of
18606 the regexp pattern and the matching target. Set cp->buf.multibyte
18607 to the multibyteness of the regexp pattern. Set
18608 cp->but.target_multibyte to the multibyteness of the matching target.
18609 (wordify): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE instead of
18610 FETCH_STRING_CHAR_ADVANCE.
18611 (Freplace_match): Convert unibyte chars to multibyte.
18612
18613 * syntax.c (char_quoted, back_comment, scan_words)
18614 (Fforward_comment, scan_lists, Fbackward_prefix_chars)
18615 (scan_sexps_forward): Use FETCH_CHAR_AS_MULTIBYTE to convert
18616 unibyte chars to multibyte.
18617 (skip_chars): Delete the arg syntaxp, and move the code for
18618 handling syntaxes to skip_syntaxes. Change callers.
18619 Fix the case that the multibyteness of STRING and the current
18620 buffer doesn't match.
18621 (skip_syntaxes): New function.
18622 (SYNTAX_WITH_MULTIBYTE_CHECK): Check C by ASCII_CHAR_P, not by
18623 SINGLE_BYTE_CHAR_P.
18624
18625 2008-02-01 Kenichi Handa <handa@m17n.org>
18626
18627 * xfaces.c (QCfontset): New variable.
18628 (LFACE_FONTSET): New macro.
18629 (check_lface_attrs): Check also LFACE_FONTSET_INDEX.
18630 (set_lface_from_font_name): Setup LFACE_FONTSET (lface).
18631 (Finternal_set_lisp_face_attribute)
18632 (Finternal_get_lisp_face_attribute): Handle QCfontset.
18633 (lface_same_font_attributes_p): Fix checking of LFACE_FONT_INDEX,
18634 check also LFACE_FONTSET_INDEX.
18635 (face_fontset): Check attrs[LFACE_FONTSET_INDEX], not
18636 attrs[LFACE_FONT_INDEX].
18637 (syms_of_xfaces): Intern and staticpro QCfontset.
18638
18639 * dispextern.h (enum lface_attribute_index): New member
18640 LFACE_FONTSET_INDEX.
18641
18642 * fns.c (base64_encode_1): Handle eight-bit chars correctly.
18643
18644 2008-02-01 Kenichi Handa <handa@m17n.org>
18645
18646 * coding.c (coding_set_destination): Fix coding->destination for
18647 the case converting a region.
18648 (encode_coding_utf_8): Encode eight-bit chars as single byte.
18649 (encode_coding_object): Fix coding->dst_pos and
18650 coding->dst_pos_byte for the case converting a region.
18651
18652 * insdel.c (insert_from_gap): Make it work even if PT != GTP.
18653
18654 * character.h (BYTE8_STRING): New macro.
18655
18656 * fns.c (base64_decode_1): Insert eight-bit chars correctly.
18657
18658 2008-02-01 Kenichi Handa <handa@m17n.org>
18659
18660 * xdisp.c (get_next_display_element): Don't display unibyte 8-bit
18661 characters by octal form.
18662
18663 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18664
18665 * buffer.h (_fetch_multibyte_char_len): Delete extern.
18666 (FETCH_MULTIBYTE_CHAR, BUF_FETCH_MULTIBYTE_CHAR): Don't use
18667 _fetch_multibyte_char_len.
18668 (FETCH_CHAR_AS_MULTIBYTE): New macro.
18669
18670 * casetab.c (set_canon, set_identity, shuffle): Simplify.
18671
18672 * casefiddle.c (casify_object): Simplify. Handle the case that
18673 the case conversion change the byte length.
18674 (casify_region): Likewise.
18675
18676 * character.h (MAKE_CHAR_UNIBYTE, MAKE_CHAR_MULTIBYTE): New macros.
18677
18678 * character.c (_fetch_multibyte_char_len): Delete this variable.
18679 (syms_of_character): Setup Vprintable_chars.
18680
18681 * editfns.c (Fchar_equal): Fix for the unibyte case.
18682 (Finsert_byte): New function.
18683 (syms_of_editfns): Defsubr it.
18684
18685 * keyboard.c (read_key_sequence): Use ~CHAR_MODIFIER_MASK instead
18686 of direct code 0x3ffff.
18687
18688 * search.c (Freplace_match): Fix for the unibyte case.
18689
18690 2008-02-01 Kenichi Handa <handa@m17n.org>
18691
18692 * lread.c (safe_to_load_p): Fix the logic.
18693
18694 * syntax.c (scan_words): Don't treat characters belonging to
18695 different scripts as constituting a word.
18696
18697 * editfns.c (Fformat): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18698
18699 * fontset.c (Fset_fontset_font): Treat `ascii' as charset, not script.
18700
18701 * emacs.c (main): In the case of --unibyte, instead of aborting on
18702 finding non-empty buffer, make it unibyte.
18703
18704 2008-02-01 Kenichi Handa <handa@m17n.org>
18705
18706 * xterm.c (x_new_fontset): Call `create-fontset-from-ascii-font'
18707 to create a fontset.
18708
18709 2008-02-01 Dave Love <fx@gnu.org>
18710
18711 * character.c (Funibyte_char_to_multibyte): Doc fix.
18712
18713 * xfns.c [HAVE_STDLIB_H]: Fix last change.
18714
18715 2008-02-01 Kenichi Handa <handa@m17n.org>
18716
18717 * fontset.c (fontset_add): Make the type `int'.
18718 (fontset_id_valid_p): Define it if FONTSET_DEBUG is defined.
18719
18720 * character.c (unibyte_char_to_multibyte)
18721 (multibyte_char_to_unibyte, Funibyte_char_to_multibyte): Refer to
18722 charset_unibyte, not charset_primary.
18723
18724 * charset.h (charset_unibyte): Extern it instead of charset_primary.
18725
18726 * charset.c (charset_unibyte): Rename from charset_primary.
18727 (Funibyte_charset): Rename from Fprimary_charset.
18728 (Fset_unibyte_charset): Rename from Fset_primary_charset.
18729 (syms_of_charset): Adjust for the above changes.
18730
18731 * w32term.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18732 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18733 it->multibyte_p is zero.
18734
18735 * lisp.h (nonascii_insert_offset, Vnonascii_translation_table):
18736 Delete extern.
18737
18738 2008-02-01 Kenichi Handa <handa@m17n.org>
18739
18740 * coding.c (Fdefine_coding_system_internal): Fix category setting
18741 for a coding system of type iso-2022.
18742
18743 2008-02-01 Kenichi Handa <handa@m17n.org>
18744
18745 * fontset.h (FS_LOAD_FONT): Call fs_load_font with the arg CHARSET -1.
18746
18747 2008-02-01 Kenichi Handa <handa@m17n.org>
18748
18749 * syntax.c (Vnext_word_boundary_function_table): New variable.
18750 (next-word-boundary-function-table): Declare it as a Lisp variable
18751 in syms_of_syntax.
18752 (scan_words): Call functions in Vnext_word_boundary_function_table
18753 if any.
18754
18755 * xterm.c (x_load_font): Initialize fontp->fontset to -1.
18756
18757 * fontset.c (fs_load_font): If fontp->charset is not negative,
18758 return fontp without setting its members.
18759
18760 2008-02-01 Dave Love <fx@gnu.org>
18761
18762 * xfns.c [HAVE_STDLIB_H]: Change logic (instead of fixing typo).
18763
18764 * m/sparc.h (HAVE_ALLOCA): Delete.
18765
18766 * s/irix6-5.h: Don't include strings.h.
18767 (bcopy, bzero, bcmp): Don't undef.
18768
18769 * s/irix6-0.h (bcopy, bzero, bcmp): Don't undef.
18770
18771 * s/usg5-4.h (NO_SIOCTL_H): Don't define.
18772 (TIOCSIGSEND): Don't test IRIX6.
18773 (bcopy, bzero, bcmp): Define conditionally.
18774
18775 2008-02-01 Kenichi Handa <handa@m17n.org>
18776
18777 * buffer.c (Qas, Qmake, Qto): New variables.
18778 (Fset_buffer_multibyte): New optional arg METHOD. Change caller.
18779 (syms_of_buffer): Intern and staticpro Qas, Qmake, and Qto.
18780
18781 * callproc.c (Fcall_process): Don't call insert_1_both directly if
18782 we are inserting a process output into a multibyte buffer.
18783
18784 * character.h (CHAR_TO_BYTE8): If C is not eight-bit char, call
18785 multibyte_char_to_unibyte.
18786
18787 * character.c (Funibyte_char_to_multibyte): If C can't be decoded
18788 by the primary charset, make it eight-bit char.
18789 (Fmultibyte_char_to_unibyte): Call CHAR_TO_BYTE8.
18790
18791 * charset.c (charset_eight_bit, Qeight_bit_control): New variables.
18792 (charset_8_bit__control, charset_8_bit_graphic)
18793 (Qeight_bit_control, Qeight_bit_graphic): Delete these variables.
18794 (define_charset_internal): New function.
18795 (syms_of_charset): Call define_charset_internal for pre-defined
18796 charsets.
18797
18798 * charset.h (charset_8_bit): Extern it.
18799
18800 * coding.c (make_conversion_work_buffer): Adjust for the change
18801 of Fset_buffer_multibyte.
18802 (encode_coding_raw_text): Increment p0 in the loop.
18803
18804 * lisp.h (Fset_buffer_multibyte): Adjust prototype.
18805
18806 * xdisp.c (setup_echo_area_for_printing, set_message_1): Adjust
18807 for the change of Fset_buffer_multibyte.
18808
18809 * fns.c (Fstring_to_multibyte): New function.
18810 (syms_of_fns): Declare Fstring_to_multibyte as Lisp subroutine.
18811
18812 2008-02-01 Dave Love <fx@gnu.org>
18813
18814 * xfns.c (x_put_x_image): Declare args.
18815
18816 * xfaces.c (font_name_registry, choose_face_font): Delete unused vars.
18817 (try_font_list): Declare an arg.
18818
18819 * xdisp.c (message2_nolog, set_message): Declare an arg.
18820
18821 * terminfo.c (tparam): Declare an arg. Use P_ to declare tparm.
18822
18823 * syntax.c (scan_sexps_forward): Declare an arg.
18824
18825 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
18826 Declare an arg.
18827
18828 * lisp.h (Fnew_fontset): Declare.
18829
18830 * keymap.c (push_key_description): Call CHARACTERP correctly.
18831
18832 * fontset.c (fontset_add): Declare args. Call make_number correctly.
18833 (face_for_char): Delete unused vars.
18834 (Fset_fontset_font): Doc fix. Delete unused vars.
18835
18836 * doc.c (Fsubstitute_command_keys): Delete unused vars.
18837
18838 * composite.c (update_compositions): Declare arg.
18839
18840 * cm.c (calccost, cmgoto): Declare args.
18841
18842 * charset.c: Remove `emacs' conditional. Doc fixes.
18843 (map_char_table_for_charset): Declare.
18844
18845 * character.c (syms_of_character) <translation-table-vector>: Doc fix.
18846
18847 * ccl.c: Remove `emacs' conditional.
18848
18849 2008-02-01 Kenichi Handa <handa@m17n.org>
18850
18851 The following changes are to allow specifying multiple font
18852 patterns for a character range (specified by script or charset).
18853
18854 * Makefile.in (abbrev.o): Depend on syntax.h.
18855 (xfaces.o): Depend on charset.h.
18856
18857 * alloc.c (Fmake_string): Use ASCII_CHAR_P, not
18858 SINGLE_BYTE_CHAR_P.
18859
18860 * ccl.c (Fccl_execute_on_string): Add `const' to local variables.
18861
18862 * character.h (Vchar_script_table): Extern it.
18863
18864 * character.c (Vscript_alist): Delete.
18865 (Vchar_script_table, Qchar_script_table): New variable.
18866 (syms_of_character): Declare Vchar_script_table as a lisp variable
18867 and initialize it.
18868
18869 * chartab.c (Fmake_char_table): Doc fix. If PURPOSE doesn't
18870 have property char-table-extra-slots, make no extra slot.
18871
18872 * dispextern.h (struct face): Delete member `charset'.
18873 (FACE_SUITABLE_FOR_CHAR_P, FACE_FOR): Use ASCII_CHAR_P, not
18874 SINGLE_BYTE_CHAR_P.
18875 (choose_face_font, lookup_non_ascii_face, font_name_registry):
18876 Add prototypes.
18877 (lookup_face, lookup_named_face, lookup_derived_face): Fix prototype.
18878 (generate_ascii_font_name): Rename from generate_ascii_font.
18879
18880 * fontset.h (get_font_repertory_func): New prototype.
18881 (make_fontset_for_ascii_face, fs_load_font): Fix prototypes.
18882 (FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
18883
18884 * fontset.c (Qprepend, Qappend): New variables.
18885 (FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): Delete.
18886 (FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
18887 (FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
18888 (FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
18889 (fontset_ref_and_range, fontset_add, reorder_font_vector)
18890 (load_font_get_repertory): New functions.
18891 (fontset_set): Delete.
18892 (fontset_face): New arg FACE. Return face ID, not face.
18893 Complete re-write to handle new fontset structure. Change caller.
18894 (free_face_fontset): Use ASET istead of AREF (X) = Y.
18895 (face_for_char): Don't call lookup_face.
18896 (make_fontset_for_ascii_face): New arg FACE.
18897 (fs_load_font): New arg CHARSET_ID. Don't check
18898 Vfont_encoding_alist here.
18899 (find_font_encoding): New function.
18900 (list_fontsets): Use STRINGP, not ! NILP.
18901 (accumulate_script_ranges): New function.
18902 (Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
18903 re-written to handle new fontset structure.
18904 (Ffontset_font): Return a copy of element.
18905 (syms_of_fontset): Define symbols Qprepend and Qappend. Fix
18906 docstring of font-encoding-alist.
18907
18908 * lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
18909 (Fset_fotset_font): Fix arguments to 5.
18910
18911 * msdos.c (XMenuActivate): Adjust for the change of lookup_derived_face.
18912
18913 * xdisp.c (message_dolog, set_message_1, extend_face_to_end_of_line):
18914 Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18915 (highlight_trailing_whitespace): Adjust for the change of
18916 lookup_named_face.
18917
18918 * xfaces.c: Include charset.h.
18919 (load_face_font): Delete argument C. Change caller.
18920 (generate_ascii_font_name): Rename from generate_ascii_font.
18921 (font_name_registry): New function.
18922 (cache_face): Store ascii faces before non-ascii faces in buckets.
18923 (lookup_face): Delete arguments C and BASE_FACE. Change caller.
18924 Lookup only ascii faces.
18925 (lookup_non_ascii_face): New function.
18926 (lookup_named_face): Delete argument C. Change caller.
18927 (lookup_derived_face): Delete argument C. Change caller.
18928 (try_font_list): New arg PATTERN. Change caller. If PATTERN is
18929 a string, just call font_list with it.
18930 (choose_face_font): Delete arguments FACE and C. New arg
18931 FONT_SPEC. Change caller.
18932 (realize_face, realize_x_face): Delete arguments C and BASE_FACE.
18933 Change caller.
18934 (realize_non_ascii_face): New function.
18935 (realize_x_face): Call load_face_font here.
18936 (realize_tty_face): Delete argument C. Change caller.
18937 (compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
18938 get a face ID.
18939 (dump_realized_face): Don't print charset of FACE.
18940
18941 * xfns.c (x_set_font): Always call x_new_fontset and
18942 store_frame_parameter.
18943 (Fx_create_frame): Call x_new_fontset, not x_new_font.
18944 (syms_of_xfns): Set get_font_repertory_func to x_get_font_repertory.
18945
18946 * xterm.h (x_get_font_repertory): Extern it.
18947
18948 * xterm.c (x_produce_glyphs): Use ASCII_CHAR_P, not
18949 SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
18950 it->multibyte_p is zero.
18951 (XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
18952 (x_new_fontset): If FONTSETNAME doesn't match any existing
18953 fontsets, create a new one.
18954 (x_get_font_repertory): New function.
18955
18956 2008-02-01 Kenichi Handa <handa@m17n.org>
18957
18958 * coding.c (Ffind_coding_systems_region_internal): Detect an
18959 ASCII only string correctly.
18960
18961 * lread.c (Fload): Don't load with Qload_force_doc_strings t if
18962 version is 0.
18963
18964 2008-02-01 Kenichi Handa <handa@m17n.org>
18965
18966 * lread.c: Include "coding.h".
18967 (Qget_emacs_mule_file_char, Qload_force_doc_strings)
18968 (load_each_byte, unread_char): New variables.
18969 (readchar_backlog): Delete.
18970 (readchar): Return a character unless load_each_byte is nonzero.
18971 Handle the case that readcharfun is Qget_emacs_mule_file_char or a
18972 cons. If unread_char is not -1, simply return it.
18973 (unreadchar): Handle the case that readcharfun is
18974 Qget_emacs_mule_file_char or a cons. Set unread_char if necessary.
18975 (read_multibyte): Delete.
18976 (readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
18977 (read_emacs_mule_char): New functions.
18978 (Fload): Even if the file doesn't have the extension ".elc", if
18979 safe_to_load_p returns a positive version number, assume that the
18980 file contains bytecompiled code. If the version is less than 22,
18981 load the file while decoding multibyte sequences by emacs-mule.
18982 (readevalloop): Don't use readchar_backlog.
18983 (Fread): Likewise. Pay attention to the case that STREAM is a cons.
18984 (Fread_from_string): Pay attention to the case that STREAM is a cons.
18985 (read_escape): Delete the arg BYTEREP.
18986 (read1): Set load_each_byte to 1 temporarily while handling
18987 #@NUMBER. Don't call read_multibyte.
18988 (read_vector): Call Fread with a cons. If readcharfun is
18989 Qget_emacs_mule_file_char, decode the read string by emacs-mule.
18990 (read_list): If doc_reference is 2, make the cdr part string as unibyte.
18991 (syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
18992 and Qload_force_doc_strings.
18993
18994 2008-02-01 Kenichi Handa <handa@m17n.org>
18995
18996 * xdisp.c (face_before_or_after_it_pos): Call
18997 FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18998
18999 2008-02-01 Kenichi Handa <handa@m17n.org>
19000
19001 * character.h (TRAILING_CODE_P): New macro.
19002 (MAYBE_UNIFY_CHAR): Adjust for the change of Funify_charset.
19003 (string_char_with_unification): Fix prototype.
19004 (Vscript_alist): Extern it.
19005
19006 * character.c (Vscript_alist): New variable.
19007 (string_char_with_unification, str_as_unibyte)
19008 (string_escape_byte8): Add `const' to local variables.
19009 (syms_of_character): Declare script-alist as a Lisp variable.
19010
19011 * charset.h (Vcharset_ordered_list): Extern it.
19012 (charset_ordered_list_tick): Extern it.
19013 (EMACS_MULE_LEADING_CODE_PRIVATE_11)
19014 (EMACS_MULE_LEADING_CODE_PRIVATE_12)
19015 (EMACS_MULE_LEADING_CODE_PRIVATE_21)
19016 (EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros.
19017 (Funify_charset): Adjust for the change of Funify_charset.
19018
19019 * charset.c (charset_ordered_list_tick): New variable.
19020 (Fdefine_charset_internal): Increment charset_ordered_list_tick.
19021 (Funify_charset): New optional arg DEUNIFY. If it is non-nil,
19022 deunify intead of unify a charset.
19023 (string_xstring_p): Add `const' to local variables.
19024 (find_charsets_in_text): Add `const' to arguments and local variables.
19025 (encode_char): Adjust for the change of Funify_charset. Fix
19026 detecting of invalid code.
19027 (Fset_charset_priority): Increment charset_ordered_list_tick.
19028 (Fmap_charset_chars): Fix handling of default value for FROM_CODE
19029 and TO_CODE.
19030
19031 * coding.c (LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12)
19032 (LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Delete macros.
19033 Changed callers to use EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
19034 (decode_coding_ccl, consume_chars)
19035 (Ffind_coding_systems_region_internal)
19036 (Fcheck_coding_systems_region): Add `const' to local variables.
19037
19038 * print.c (print_object): Use octal form for printing the
19039 contents of a bool vector.
19040
19041 2008-02-01 Dave Love <fx@gnu.org>
19042
19043 * lread.c (Fload) <!load_dangerous_libraries>: Don't leak fd.
19044 <version == 20>: Refuse to load.
19045
19046 2008-02-01 Dave Love <fx@gnu.org>
19047
19048 * fns.c: Move coding.h.
19049 (Qcodeset, Qdays, Qmonths): New.
19050 (concat): Use CHARACTERP instead of INTEGERP.
19051 (Flocale_codeset): Delete.
19052 (Flanginfo): New function.
19053 (syms_of_fns): Change accordingly.
19054
19055 * coding.c (adjust_coding_eol_type): Fix eol_type/eol_seen mixup.
19056
19057 2008-02-01 Dave Love <fx@gnu.org>
19058
19059 * casetab.c (init_casetab_once, init_casetab_once): Fix
19060 CHAR_TABLE_SET call.
19061
19062 * category.c (Fmodify_category_entry): Fix CATEGORY_MEMBER call.
19063
19064 * character.c (syms_of_character): Fix CHAR_TABLE_SET call.
19065
19066 * charset.c (Fmap_charset_chars): Check args. Convert Lisp types.
19067 (load_charset_map, Fdeclare_equiv_charset, Fencode_char)
19068 (Fset_charset_priority, syms_of_charset): Convert Lisp types.
19069
19070 * charset.h (CHECK_CHARSET_GET_ID): Use XINT on AREF result.
19071
19072 * coding.c (ENCODE_DESIGNATION, decode_eol)
19073 (make_conversion_work_buffer, code_conversion_restore)
19074 (Fdefine_coding_system_internal): Convert Lisp types.
19075 (code_conversion_restore): Use EQ, not ==.
19076 (Fencode_coding_string): Fix code_convert_string call.
19077
19078 * coding.h (code_convert_region): Fix prototype.
19079
19080 * dispextern.h (redraw_frame, redraw_garbaged_frames): Remove.
19081
19082 * fontset.c (fontset_ref, fontset_set, fs_load_font)
19083 (Ffontset_info): Convert Lisp types.
19084
19085 * syntax.h (SYNTAX_ENTRY_INT): Don't use make_number.
19086
19087 * xterm.c (note_mouse_movement): Fix call of window_from_coordinates.
19088
19089 * xdisp.c (display_mode_element): Fix call of Fset_text_properties.
19090
19091 * chartab.c: Include "...h", not <...h> in some cases.
19092
19093 * callproc.c (Fcall_process): Remove unused variables.
19094
19095 2008-02-01 Dave Love <fx@gnu.org>
19096
19097 * coding.c (Fset_coding_system_priority): Allow null arg list.
19098
19099 2008-02-01 Dave Love <fx@gnu.org>
19100
19101 * minibuf.c (Fminibuffer_complete_word): Remove unused var.
19102 (Fself_insert_and_exit): Use CHARACTERP.
19103
19104 * callproc.c (Fcall_process): Remove unused vars.
19105
19106 * xterm.c (XTread_socket): Add extra dead keysyms.
19107
19108 * xdisp.c (decode_mode_spec_coding): Use CHARACTERP.
19109
19110 * dispextern.h: Remove prototypes for redraw_frame,
19111 redraw_garbaged_frames.
19112
19113 * cmds.c (Fself_insert_command): Use CHARACTERP.
19114
19115 * chartab.c (make_sub_char_table): Remove unused var.
19116 (Fset_char_table_default, Fmap_char_table): Doc fix.
19117
19118 * keymap.c (access_keymap): Remove generic char code.
19119 (push_key_description): Use CHARACTERP.
19120
19121 2008-02-01 Dave Love <fx@gnu.org>
19122
19123 * charset.c: Doc fixes.
19124 (Funify_charset): Extra checking.
19125
19126 2008-02-01 Dave Love <fx@gnu.org>
19127
19128 * lread.c: Remove some unused variables.
19129 (safe_to_load_p): If safe, return the magic number version byte.
19130 (Fload): Maybe use load-with-code-conversion.
19131
19132 2008-02-01 Kenichi Handa <handa@m17n.org>
19133
19134 * category.c (Fmodify_category_entry): Don't modify the contents
19135 of category_set for characters out of the range. Avoid
19136 unnecessary modification.
19137
19138 * character.h (MAYBE_UNIFY_CHAR): Adjust for the change of
19139 Vchar_unify_table. The default value of the table is now nil.
19140
19141 * character.c (syms_of_character): Setup Vchar_width_table for
19142 eight-bit-control and raw-byte chars.
19143
19144 * charset.h (enum define_charset_arg_index): Delete
19145 charset_arg_parents and add charset_arg_subset and
19146 charset_arg_superset.
19147 (enum charset_attr_index): Delete charset_parents and add
19148 charset_subset and charset_superset.
19149 (enum charset_method): Delete CHARSET_METHOD_INHERIT and add
19150 CHARSET_METHOD_SUBSET and CHARSET_METHOD_SUPERSET.
19151 (CHARSET_ATTR_PARENTS, CHARSET_PARENTS): Delete.
19152 (CHARSET_ATTR_SUBSET, CHARSET_ATTR_SUPERSET, CHARSET_SUBSET)
19153 (CHARSET_SUPERSET): New macros.
19154 (charset_work): Extern it.
19155 (ENCODE_CHAR): Use charset_work.
19156 (CHAR_CHARSET_P): Adjust for the change of encoder format.
19157 (map_charset_chars): Extern it.
19158
19159 * charset.c (load_charset_map): Set the default value of encoder
19160 and deunifier char-tables to nil.
19161 (map_charset_chars): Change argument. Change callers. Use
19162 map_char_table_for_charset instead of map_char_table.
19163 (Fmap_charset_chars): New optional args from_code and to_code.
19164 (Fdefine_charset_internal): Adjust for the change of
19165 `define-charset' (:parents -> :subset or :superset).
19166 (charset_work): New variable.
19167 (encode_char, syms_of_charset): Adjust for the change of
19168 Fdefine_charset_internal.
19169 (Ffind_charset_string): Setup the vector `charsets' correctly.
19170
19171 * chartab.c (sub_char_table_ref_and_range): New arg default. Fix
19172 the previous change.
19173 (char_table_ref_and_range): Adjust for the above change.
19174 (map_sub_char_table_for_charset): New function.
19175 (map_char_table_for_charset): New function.
19176
19177 * keymap.c (describe_vector): Handle a char-table directly here.
19178 (describe_char_table): Delete.
19179
19180 * lisp.h (map_charset_chars): Delete.
19181
19182 2008-02-01 Dave Love <fx@gnu.org>
19183
19184 * fns.c (count_combining): Comment out (unused).
19185 (Flocale_codeset): New.
19186 (syms_of_fns): Defsubr it.
19187
19188 * config.in (HAVE_PTY_H, HAVE_SIZE_T, HAVE_LANGINFO_CODESET): New.
19189 (size_t): Remove.
19190
19191 2008-02-01 Dave Love <fx@gnu.org>
19192
19193 * Makefile.in (chartab.o): Depend on charset.h.
19194
19195 2008-02-01 Kenichi Handa <handa@m17n.org>
19196
19197 * character.c (syms_of_character): Set the default value of
19198 Vprintable_chars to Qnil.
19199
19200 2008-02-01 Dave Love <fx@gnu.org>
19201
19202 * Makefile.in (lisp, shortlisp): Change indian.elc to indian.el.
19203
19204 2008-02-01 Kenichi Handa <handa@m17n.org>
19205
19206 * charset.c (load_charset_map): Handle the case that from < to
19207 correctly.
19208
19209 * coding.c (encode_coding_emacs_mule, encode_coding_iso_2022)
19210 (encode_coding_sjis, encode_coding_big5, encode_coding_charset):
19211 Pay attention to raw-8-bit chars.
19212
19213 2008-02-01 Kenichi Handa <handa@m17n.org>
19214
19215 * Makefile.in (lisp, shortlisp): Change chinese.elc to chinese.el.
19216 It is not bytecompiled now.
19217
19218 * charset.c (charset_jisx0201_roman, charset_jisx0208_1978)
19219 (charset_jisx0208): New variables.
19220 (Fdefine_charset_internal): Setup them if appropriate.
19221 (init_charset_once): Initialize them to -1.
19222
19223 * charset.h (charset_jisx0201_roman, charset_jisx0208_1978)
19224 (charset_jisx0208): Extern them.
19225
19226 * coding.c (CODING_ISO_FLAG_USE_ROMAN): New macro.
19227 (CODING_ISO_FLAG_USE_OLDJIS): New macro.
19228 (CODING_ISO_FLAG_FULL_SUPPORT): Change macro definition.
19229 (setup_iso_safe_charsets): Fix arguments to Fassq.
19230 (DECODE_DESIGNATION, ENCODE_ISO_CHARACTER_DIMENSION1)
19231 (ENCODE_ISO_CHARACTER_DIMENSION2): Pay attention to
19232 CODING_ISO_FLAG_USE_ROMAN and CODING_ISO_FLAG_USE_OLDJIS.
19233 (encode_coding_iso_2022): Change the 1st arg to
19234 ENCODE_ISO_CHARACTER to a variable.
19235
19236 2008-02-01 Kenichi Handa <handa@m17n.org>
19237
19238 * charset.h (enum define_charset_arg_index): New enums
19239 charset_arg_min_code and charset_arg_max_code.
19240 (struct charset): New member char_index_offset.
19241
19242 * charset.c (CODE_POINT_TO_INDEX, INDEX_TO_CODE_POINT):
19243 Take charset->char_index_offset into account.
19244 (Fdefine_charset_internal): Handle args[charset_arg_min_code] and
19245 args[charset_arg_max_code]. Setup charset.char_index_offset.
19246 (syms_of_charset): Fix args to Fdefine_charset_internal.
19247
19248 2008-02-01 Dave Love <fx@gnu.org>
19249
19250 * coding.c (decode_coding_utf_8): Reject overlong sequences.
19251
19252 2008-02-01 Dave Love <fx@gnu.org>
19253
19254 * coding.c: Doc fixes.
19255 (Fcoding_system_aliases): Fix return value.
19256 (Qmac): Remove (duplicated) definition.
19257
19258 2008-02-01 Dave Love <fx@gnu.org>
19259
19260 * charset.c (Fcharset_priority_list, Fset_charset_priority):
19261 New functions.
19262
19263 * character.c (Fstring): Doc fix.
19264
19265 * charset.c (Fdefine_charset_alias): Update Vcharset_list.
19266
19267 * fontset.c (Ffontset_info): Doc fix. Return charset names, not ids.
19268 (font-encoding-alist): Doc fix.
19269
19270 2008-02-01 Dave Love <fx@gnu.org>
19271
19272 * term.c (costs_set): Declare static, non-initialized for pcc.
19273 (encode_terminal_code): Remove unused var.
19274
19275 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19276 for K&R.
19277
19278 * xterm.c (xlwmenu_window_p): Fix prototype for K&R.
19279
19280 * coding.c (setup_iso_safe_charsets): Fix arg decl for K&R.
19281 (suffixes): Move out of make_subsidiaries for K&R.
19282
19283 * charset.c (map_charset_chars): Fix c_function declaration for K&R.
19284
19285 * lisp.h (DEFUN) [!PROTOTYPES]: Remove spurious `args'.
19286
19287 2008-02-01 Dave Love <fx@gnu.org>
19288
19289 * data.c (Fchar_or_string_p): Doc fix. Use CHARACTERP.
19290
19291 * category.c (Fmodify_category_entry): Doc fix. Remove unused vars.
19292
19293 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19294
19295 * charset.c (Fdefine_charset_internal): Fix argument to bzero.
19296
19297 * coding.c (decode_coding_charset): Workaround for the bug of GCC 2.96.
19298
19299 2008-02-01 Kenichi Handa <handa@m17n.org>
19300
19301 * Makefile.in (lisp, shortlisp): Change cyrillic.elc to cyrillic.el,
19302 vietnamese.elc to vietnamese.el. They are not bytecompiled now.
19303
19304 2008-02-01 Kenichi Handa <handa@m17n.org>
19305
19306 * coding.c (decode_coding_charset): Adjust for the change of
19307 Fdefine_coding_system_internal.
19308 (Fdefine_coding_system_internal): For a coding system of
19309 `charset' type, store a list of charset IDs in
19310 `charset_attr_charset_valids' element of coding attributes.
19311
19312 2008-02-01 Kenichi Handa <handa@m17n.org>
19313
19314 * coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
19315 (emacs_mule_char): New arg src. Delete arg `composition'. Change
19316 caller. Handle 2-byte and 3-byte charsets correctly.
19317 (DECODE_EMACS_MULE_COMPOSITION_RULE_20): Rename from
19318 DECODE_EMACS_MULE_COMPOSITION_RULE. Change caller.
19319 (DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
19320 (DECODE_EMACS_MULE_21_COMPOSITION): Call
19321 DECODE_EMACS_MULE_COMPOSITION_RULE_21. Produce correct annotation
19322 sequence.
19323 (decode_coding_emacs_mule): Handle composition correctly. Rewind
19324 `src' and `consumed_chars' correctly before calling emacs_mule_char.
19325 (DECODE_COMPOSITION_START): Correctly handle the case of altchar
19326 and alt&rule composition.
19327 (decode_coding_iso_2022): Handle composition correctly.
19328 (init_coding_once): Setup emacs_mule_bytes for private charsets.
19329
19330 * charset.c (Fdefine_charset_internal): Fix bug for the case of
19331 re-defining a charset. If the charset has :emacs-mule-id, setup
19332 emacs_mule_bytes.
19333 (Fmake_char): If CODE1 is nil, use the minimum code of the charset.
19334
19335 2008-02-01 Kenichi Handa <handa@m17n.org>
19336
19337 * coding.c (encode_coding_iso_2022, encode_coding_sjis)
19338 (encode_coding_big5, encode_coding_charset): If coding requires safe
19339 encoding, produce a character specified by
19340 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
19341
19342 2008-02-01 Dave Love <fx@gnu.org>
19343
19344 * xterm.c (XSetIMValues): Declare.
19345
19346 * process.c: Conditionally include sys/wait.h, pty.h.
19347
19348 * print.c (print_object): Fix print format for 64-bit systems.
19349
19350 * keyboard.c (modify_event_symbol): Fix print format for 64-bit systems.
19351
19352 * buffer.c (emacs_strerror): Declare.
19353
19354 * fontset.c (Fclear_face_cache): Declare.
19355 (accumulate_font_info): Comment-out (unused).
19356 (face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
19357 variables.
19358
19359 * character.h (string_escape_byte8): Declare.
19360
19361 * charset.c (load_charset_map, load_charset_map_from_file): Remove
19362 unused vars.
19363 (Fdefine_charset_internal, Fsplit_char, syms_of_charset)
19364 (Fmap_charset_chars): Doc fix.
19365
19366 * coding.c (Vchar_coding_system_table, Qchar_coding_system): Remove.
19367 (Fset_coding_system_priority, Fset_coding_system_priority)
19368 (Fdefine_coding_system_internal): Doc fix.
19369
19370 2008-02-01 Dave Love <fx@gnu.org>
19371
19372 * s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.
19373
19374 2008-02-01 Kenichi Handa <handa@m17n.org>
19375
19376 * character.c (string_escape_byte8): Make multibyte string with
19377 correct size.
19378
19379 * charset.c (Fmake_char): Delete unnecessary code.
19380
19381 2008-02-01 Kenichi Handa <handa@m17n.org>
19382
19383 * xfns.c (x_encode_text): Allocate coding.destination here, and
19384 call encode_coding_object with dst_object Qnil.
19385
19386 * buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
19387 multibyte form correctly.
19388
19389 * fontset.c (fs_load_font): Check fontp->full_name (not fontname)
19390 against Vfont_encoding_alist.
19391
19392 * coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF). Fix the
19393 handling of charset list.
19394 (encode_coding_iso_2022): Setup coding->safe_charsets in advance.
19395 (decode_coding_object): Move point to coding->dst_pos before
19396 calling post-read-conversion function.
19397 (encode_coding_object): Give correct arguments to
19398 pre-write-conversion. Ignore the return value of
19399 pre-write-conversion function. Pay attention to the case that
19400 pre-write-conversion changes the current buffer. If dst_object is
19401 Qt, even if coding->src_bytes is zero, allocate at least one byte
19402 to coding->destination.
19403
19404 * coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).
19405
19406 * charset.c (Fmake_char): Make it more backward compatible.
19407 (Fmap_charset_chars): Fix docstring.
19408
19409 2008-02-01 Dave Love <fx@gnu.org>
19410
19411 * coding.c: Doc fixes.
19412 (Fdefine_coding_system_alias): Use names, not symbols, in
19413 coding-system-alist.
19414
19415 2008-02-01 Kenichi Handa <handa@m17n.org>
19416
19417 * fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
19418 of calling free_realized_face.
19419
19420 2008-02-01 Yong Lu <lyongu@asia-infonet.com>
19421
19422 * charset.c (read_hex): Don't treat SPC as a comment starter.
19423 (decode_char): If CODE_POINT_TO_INDEX returns -1, always return -1.
19424 (Fdecode_char): Fix typo.
19425
19426 2008-02-01 Kenichi Handa <handa@m17n.org>
19427
19428 * charset.h (struct charset): New member `code_space_mask'.
19429
19430 * coding.c (coding_set_source): Delete the local variable beg_byte.
19431 (encode_coding_charset, Fdefine_coding_system_internal):
19432 Delete the local variable charset.
19433 (Fdefine_coding_system_internal): Setup
19434 attrs[coding_attr_charset_valids] correctly.
19435
19436 * charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
19437 member to check if CODE is valid or not.
19438 (Fdefine_charset_internal): Initialize `code_space_mask' member.
19439 (encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
19440 is within the range of charset->min_code and carset->max_code.
19441
19442 2008-02-01 Dave Love <fx@gnu.org>
19443
19444 * syntax.h (syntax_temp) [!__GNUC__]: Declare.
19445
19446 * dispextern.h (generate_ascii_font): Fix return type.
19447
19448 * xfaces.c (generate_ascii_font): Fix arg declaration.
19449
19450 * coding.c (coding_inherit_eol_type)
19451 (Fset_terminal_coding_system_internal)
19452 (Fset_safe_terminal_coding_system_internal): Fix arg declarations.
19453
19454 2008-02-01 Kenichi Handa <handa@m17n.org>
19455
19456 * coding.c (decode_coding_charset, encode_coding_charset): Handle
19457 multiple charsets correctly.
19458
19459 2008-02-01 Kenichi Handa <handa@m17n.org>
19460
19461 * search.c (boyer_moore): Fix handling of multibyte character
19462 translation.
19463
19464 * xdisp.c (display_mode_element): When the variable `elt' is
19465 changed, update `this' and `lisp_string'.
19466
19467 2008-02-01 Kenichi Handa <handa@m17n.org>
19468
19469 * buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.
19470
19471 * callproc.c (Fcall_process): Be sure to give the current buffer
19472 to decode_coding_c_string. Update PT and PT_BYTE after the insertion.
19473
19474 * charset.c (struct charset_map_entries): New struct.
19475 (load_charset_map): Rename from parse_charset_map. New args
19476 entries and n_entries. Change caller.
19477 (load_charset_map_from_file): Rename from load_charset_map.
19478 Change caller. New arg control_flag. Call load_charset_map at
19479 the tail.
19480 (load_charset_map_from_vector): New function.
19481 (Fdefine_charset_internal): Setup charset.compact_codes_p.
19482 (encode_char): If the charset is compact, change a character index
19483 to a code point.
19484
19485 * coding.c (coding_alloc_by_making_gap): Check the case that the
19486 source and destination are the same correctly.
19487 (decode_coding_raw_text): Set coding->consumed_char and
19488 coding->consumed to 0.
19489 (produce_chars): If coding->chars_at_source is nonzero, update
19490 coding->consumed_char and coding->consumed before calling
19491 alloc_destination.
19492 (Fdefine_coding_system_alias): Register ALIAS in
19493 Vcoding_system_alist.
19494 (syms_of_coding): Define `no-conversion' coding system at the tail.
19495
19496 * fileio.c (Finsert_file_contents): Set coding_system instead of
19497 val. If the current buffer is multibyte, always call
19498 decode_coding_gap.
19499
19500 * xfaces.c (try_font_list): Give higher priority to fontset's
19501 family than face's family.
19502
19503 2008-02-01 Kenichi Handa <handa@m17n.org>
19504
19505 * callproc.c (Fcall_process): Be sure to give the current buffer
19506 to decode_coding_c_string.
19507
19508 * xfaces.c (try_font_list): Give a family specified in a fontset
19509 higher priority than a family specified in a face.
19510
19511 2008-02-01 Kenichi Handa <handa@m17n.org>
19512
19513 * fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
19514 Fix arguments to insert_from_buffer.
19515
19516 * xdisp.c (display_mode_element): Fix calculation of `bytepos'.
19517
19518 2008-02-01 Kenichi Handa <handa@m17n.org>
19519
19520 * coding.c (produce_chars): Set the variable `multibytep' correctly.
19521 (decode_coding_gap): Set coding->dst_multibyte correctly.
19522
19523 2008-02-01 Kenichi Handa <handa@m17n.org>
19524
19525 * coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
19526 (decode_coding_utf_16): Fix converting high and low bytes to code-point.
19527 (encode_coding_utf_16): Substitute coding->default_char for
19528 non-Unicode characters.
19529 (decode_coding): Don't call record_insert here.
19530 (setup_coding_system): Initialize `surrogate' of
19531 coding->spec.utf_16 to 0.
19532 (EMIT_ONE_BYTE): Fix for multibyte case.
19533
19534 * insdel.c (insert_from_gap): Call record_insert.
19535
19536 2008-02-01 Kenichi Handa <handa@m17n.org>
19537
19538 * casefiddle.c (casify_region): Fix multibyte case.
19539
19540 * character.c (c_string_width): Add return type `int'.
19541 (char_string_with_unification): Delete arg ADVANCED.
19542
19543 * character.h (CHAR_VALID_P): Don't call CHARACTERP.
19544 (CHAR_STRING): Adjust for the change of char_string_with_unification.
19545 (CHAR_STRING_ADVANCE): Make it do-while statement.
19546
19547 * chartab.c (sub_char_table_set_range): Optimize for the case
19548 DEPTH == 3. Add workaround code for a GCC optimization bug.
19549
19550 * charset.c (parse_charset_map): Remove an unused variable.
19551
19552 * coding.c: Delete unused variables.
19553
19554 * fileio.c (Finsert_file_contents): Set coding_system to Qnil
19555 earlier. If inserted is zero and the coding system doesn't
19556 require flushing, don't call decode_coding_gap.
19557
19558 * syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.
19559
19560 2008-02-01 Kenichi Handa <handa@m17n.org>
19561
19562 The following changes are for using Unicode as an internal
19563 character model, and use UTF-8 format for buffer/string
19564 representation.
19565
19566 * .gdbinit (xchartable): Adjust for the change of char table structure.
19567 (xsubchartable, xcoding, xcharset, xcurbuf): New commands.
19568
19569 * Makefile.in (obj): Add character.o and chartab.o.
19570 (lisp, shortlisp): Remove utf-8.elc.
19571 (*.o): For many files, change dependency on charset.h to
19572 character.h, and add dependency on character.h.
19573 (character.o, chartab.o): New targets.
19574
19575 * abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c:
19576 * doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c:
19577 * w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
19578 of "charset.h".
19579
19580 * dired.c, filelock.c: Include "character.h".
19581
19582 * alloc.c: Include "character.h" instead of "charset.h".
19583 (Fmake_char_table, make_sub_char_table): Move to chartab.c.
19584 (syms_of_alloc): Remove defsubr for Smake_char_table.
19585
19586 * buffer.c: Include "character.h" instead of "charset.h", don't
19587 include "coding.h".
19588 (Fset_buffer_multibyte): Adjust for UTF-8.
19589
19590 * buffer.h: EXFUN Fbuffer_live_p.
19591
19592 * callproc.c: Include "character.h" instead of "charset.h".
19593 (Fcall_process): Big change for the new code-conversion APIs.
19594
19595 * casetab.c: Include "character.h" instead of "charset.h".
19596 (set_canon, set_identity, shuffle): Adjust for the new
19597 map_char_table spec.
19598 (init_casetab_once): Call CHAR_TABLE_SET instead of directly
19599 accessing the char table structure.
19600
19601 * chartab.c: New file that implements char table.
19602
19603 * category.c: Include "character.h".
19604 (copy_category_entry): New function.
19605 (copy_category_table): Call map_char_table and copy_category_entry.
19606 (Fmake_category_table): Initialize all top-level slots.
19607 (char_category_set): New function.
19608 (modify_lower_category_set): Delete.
19609 (Fmodify_category_entry): Call char_table_ref_and_range.
19610
19611 * category.h (CATEGORY_SET): Just call char_category_set.
19612
19613 * ccl.c: Include "character.h".
19614 (Qccl, Qcclp): New variables.
19615 (CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
19616 it's less than 256.
19617 (CCL_WRITE_MULTIBYTE_CHAR): Delete.
19618 (CCL_WRITE_STRING, CCL_READ_CHAR): Adjust for the change of SRC
19619 and DST type.
19620 (ccl_driver): Change types of argument, adjust code accordingly.
19621 (Fccl_execute, Fccl_execute_on_string): Adjust for the change of
19622 ccl_driver.
19623 (syms_of_ccl): Intern and staticpro Qccl and Qcclp.
19624
19625 * ccl.h (struct ccl_program): Delete members eol_type and multibyte.
19626 New members src_multibyte, dst_multibyte, consumed, and produced.
19627 (struct ccl_spec): Delete members decoder and encoder. New member ccl.
19628 (CODING_SPEC_CCL_PROGRAM): New macro.
19629 (ccl_driver): Update prototype.
19630 (Qccl, Qcclp, Fccl_program_p): Extern them.
19631 (CHECK_CCL_PROGRAM): New macro.
19632
19633 * character.c, character.h, chartab.c: New files.
19634
19635 * charset.c: Mostly re-written. Move character and multibyte sequence
19636 handling codes to character.c.
19637
19638 * charset.h: Mostly re-written. Move character and multibyte sequence
19639 handling codes to character.h.
19640
19641 * coding.c, coding.h: Mostly re-written.
19642
19643 * composite.c: Include "character.h" instead of "charset.h".
19644 (CHAR_WIDTH): Move to character.h.
19645 (HASH_KEY, HASH_VALUE): Delete.
19646
19647 * composite.h (enum composition_method): Change order of enumeration
19648 symbols.
19649
19650 * data.c: Include "character.h" instead of "charset.h".
19651 (Faref): Call CHAR_TABLE_REF for a char table.
19652 (Faset): Call CHAR_TABLE_SET for a char table.
19653
19654 * dispextern.h (free_realized_face, check_face_attribytes)
19655 (generate_ascii_font): Extern them.
19656 (free_realized_multibyte_face): Delete extern.
19657
19658 * disptab.h (DISP_CHAR_VECTOR): Adjust for the change of char
19659 table structure.
19660
19661 * editfns.c: Include "character.h" instead of "charset.h".
19662 (Fchar_to_string): Always call CHAR_STRING.
19663
19664 * emacs.c (main): Call init_charset_once, init_charset,
19665 syms_of_chartab, and syms_of_character.
19666
19667 * fileio.c: Include "character.h" instead of "charset.h".
19668 (Finsert_file_contents): Big change for the new code-conversion API.
19669 (choose_write_coding_system, Fwrite_region): Likewise.
19670 (build_annotations_2): Delete.
19671 (e_write): Big change for the new code-conversion API.
19672
19673 * fns.c: Include "character.h" instead of "charset.h".
19674 (copy_sub_char_table): Move to chartab.c.
19675 (Fcopy_sequence): Call copy_char_table for a char table.
19676 (concat): Delete codes calling count_multibyte.
19677 (string_char_to_byte, string_byte_to_char): Adjust for the new
19678 multibyte form.
19679 (internal_equal): Adjust for the change of char table structure.
19680 (Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent)
19681 (Fchar_table_extra_slot, Fset_char_table_extra_slot)
19682 (Fchar_table_range, Fset_char_table_range, Fset_char_table_default)
19683 (char_table_translate, optimize_sub_char_table)
19684 (Foptimize_char_table, map_char_table, Fmap_char_table): Move to
19685 chartab.c.
19686 (char_table_ref_and_index): Delete.
19687 (HASH_KEY, HASH_VALUE): Move to lisp.h.
19688 (Fmd5): Call preferred_coding_system instead of accessing
19689 Vcoding_category_list. Adjust for the new code-conversion API.
19690 (syms_of_fns): Move defsubr for char table related functions to
19691 chartab.c.
19692
19693 * fontset.c: Mostly re-written.
19694
19695 * fontset.h (struct font_info): Change type of the member encoding_type.
19696 (enum FONT_SPEC_INDEX): New enum.
19697 (fontset_font_pattern, fs_load_font): Update prototype.
19698 (FS_LOAD_FONT): Adjust for the change of fs_load_font.
19699
19700 * indent.c: Include "character.h" instead of "charset.h".
19701 (MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of WIDTH_BY_CHAR_HEAD.
19702
19703 * insdel.c: Include "character.h" instead of "charset.h".
19704 (copy_text): Don't refer to Vnonascii_translation_table.
19705 (insert_from_gap): New function.
19706
19707 * keyboard.c: Include "character.h" instead of "charset.h".
19708 (command_loop_1): Never call direct_output_forward_char before
19709 a non-ASCII character.
19710 (read_char): If Vkeyboard_translate_table is a char table, always
19711 translate a character.
19712
19713 * keymap.c: Include "character.h".
19714 (store_in_keymap): Handle the case that IDX is a cons.
19715 (Fdefine_key): Handle the case that KEY is a cons and the car part
19716 is also a cons (range).
19717 (push_key_description): Adjust for the new character code.
19718 (describe_vector): Call describe_char_table for a char table.
19719 (describe_char_table): New function.
19720
19721 * keymap.h (describe_char_table): Extern it.
19722
19723 * lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
19724 (XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
19725 (CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS)
19726 (SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
19727 Delete.
19728 (CHAR_TABLE_REF, CHAR_TABLE_SET): Adjust for the new char table
19729 structure.
19730 (CHAR_TABLE_TRANSLATE): Just call char_table_translate.
19731 (CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2)
19732 (CHARTAB_SIZE_BITS_3): New macros.
19733 (chartab_size): Extern it.
19734 (struct Lisp_Char_Table): Re-design.
19735 (struct Lisp_Sub_Char_Table): New structure.
19736 (HASH_KEY, HASH_VALUE): Move from fns.c.
19737 (CHARACTERBITS): Define as 22.
19738 (GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjust for the above change.
19739 (SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
19740 (GC_SUB_CHAR_TABLE_P): New macro.
19741 (Fencode_coding_string, Fdecode_coding_string): Update EXFUN.
19742 (code_convert_string_norecord): Deleted extern.
19743 (init_character_once, syms_of_character, init_charset)
19744 (syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.
19745
19746 * lread.c: Include "character.h".
19747 (read_multibyte): New arg NBYTES.
19748 (read_escape): Change the meaning of returned *BYTEREP.
19749 (to_multibyte): Delete.
19750 (read1): Adjust the handling of char table and string.
19751
19752 * print.c: Include "character.h" instead of "charset.h".
19753 (print_string): Convert 8-bit raw bytes to octal form by
19754 string_escape_byte8.
19755 (print_object): Adjust for the new multibyte form. Print 8-bit
19756 raw bytes always in octal form. Handle sub char table correctly.
19757
19758 * process.c: Include "character.h" instead of "charset.h".
19759 (read_process_output, send_process): Adjust for the new
19760 code-conversion API.
19761
19762 * puresize.h (BASE_PURESIZE): Increase.
19763
19764 * regex.c: Include "character.h" instead of "charset.h".
19765 (BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
19766 (regex_compile): Accept a range whose starting and ending
19767 character have different leading bytes.
19768 (analyse_first): Adjust for the above change.
19769
19770 * search.c: Include "character.h" instead of "charset.h".
19771 (search_buffer, boyer_moore): Adjust for the new multibyte form.
19772 (Freplace_match): Adjust for the change of multibyte_char_to_unibyte.
19773
19774 * syntax.c: Include "character.h" instead of "charset.h".
19775 (syntax_parent_lookup): Delete.
19776 (Fmodify_syntax_entry): Accept a cons as CHAR.
19777 (skip_chars): Adjust for the new multibyte form.
19778 (init_syntax_once): Call char_table_set_range instead of directly
19779 accessing the structure of a char table.
19780
19781 * syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
19782 (SYNTAX_ENTRY_FOLLOW_PARENT): Delete macro.
19783 (SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
19784 (SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.
19785
19786 * term.c: Include "buffer.h" and "character.h".
19787 (encode_terminal_code, write_glyphs): Adjust for the new
19788 code-conversion API.
19789 (produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.
19790
19791 * w32term.c (x_new_font): Adjust for the change of FS_LOAD_FONT.
19792
19793 * xdisp.c: Include "character.h".
19794 (get_next_display_element): Adjust for the new multibyte form.
19795 (disp_char_vector): Adjust for the new char table structure.
19796 (decode_mode_spec_coding): Adjust for the new structure of
19797 coding system.
19798 (decode_mode_spec): Adjust for the new code-conversion API.
19799
19800 * xfaces.c: Include "character.h" instead of "charset.h".
19801 (load_face_font): Adjust for the change of choose_face_font and
19802 FS_LOAD_FONT.
19803 (generate_ascii_font): New function.
19804 (set_lface_from_font_name): Adjust for the change of FS_LOAD_FONT.
19805 (set_font_frame_param): Adjust for the change of choose_face_font.
19806 (free_realized_face): Make it public.
19807 (free_realized_faces_for_fontset): Rename from
19808 free_realized_multibyte_face. Free also faces realized for ASCII.
19809 (choose_face_font): Change arguments. Adjust for the change of
19810 fontset_font_pattern and FS_LOAD_FONT.
19811
19812 * xfns.c: Include "character.h".
19813 (x_encode_text): Adjust for the new code-conversion API.
19814
19815 * xselect.c: Don't include "charset.h".
19816 (selection_data_to_lisp_data): Adjust for the new code conversion API.
19817
19818 * xterm.c: Include "character.h".
19819 (x_encode_char): New argument CHARSET. Change caller.
19820 (x_get_char_face_and_encoding, x_get_glyph_face_and_encoding):
19821 Call ENCODE_CHAR instead of SPLIT_CHAR.
19822 (x_produce_glyphs): Don't check Vnonascii_translation_table Call
19823 CHAR_WIDTH instead of CHARSET_WIDTH.
19824 (XTread_socket): Adjust for the new code-conversion API.
19825 (x_new_font): Adjust for the change of FS_LOAD_FONT.
19826 (x_load_font): Adjust for the change of struct font.
19827
19828 2008-02-01 Stefan Monnier <monnier@iro.umontreal.ca>
19829
19830 * xfaces.c (face_at_buffer_position): Remove unused vars.
19831
19832 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19833
19834 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR):
19835 Fix overflow checking.
19836
19837 2008-02-01 Kenichi Handa <handa@ni.aist.go.jp>
19838
19839 * ccl.c (CCL_WRITE_CHAR, CCL_WRITE_MULTIBYTE_CHAR, ccl_driver):
19840 Cancel previous change.
19841
19842 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19843
19844 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when
19845 ccl->eight_bit_control. Fix check for buffer overflow.
19846 (CCL_WRITE_MULTIBYTE_CHAR): Fix check for buffer overflow.
19847 (ccl_driver): Initialize extra_bytes to 0.
19848
19849 2008-01-31 Kenichi Handa <handa@ni.aist.go.jp>
19850
19851 * keyboard.c (make_ctrl_char): If C is a multibyte character, just
19852 return it ORed with ctrl_modifier.
19853
19854 2008-01-29 Miles Bader <miles@gnu.org>
19855
19856 * macterm.c (XTset_vertical_scroll_bar): Fix merge mistake.
19857
19858 2008-01-28 Jason Rumney <jasonr@gnu.org>
19859
19860 * w32.c (stat): Don't double check for networked drive.
19861
19862 2008-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
19863
19864 * window.c (run_window_configuration_change_hook): New function.
19865 Code extracted from set_window_buffer. Set the selected frame.
19866 (set_window_buffer): Use it.
19867 * window.h (run_window_configuration_change_hook): Declare.
19868 * dispnew.c (change_frame_size_1): Use it instead of set-window-buffer.
19869
19870 * keyboard.c (read_char): Yet another int/Lisp_Object mixup (YAILOM).
19871
19872 2008-01-27 Dan Nicolaescu <dann@ics.uci.edu>
19873
19874 * Makefile.in: Remove references to unused macros.
19875
19876 2008-01-26 Eli Zaretskii <eliz@gnu.org>
19877
19878 * w32.c (g_b_init_get_sid_sub_authority)
19879 (g_b_init_get_sid_sub_authority_count): New static variables.
19880 (GetSidSubAuthority_Proc, GetSidSubAuthorityCount_Proc): New typedefs.
19881 (get_sid_sub_authority, get_sid_sub_authority_count): New functions.
19882 (init_user_info): Use them to retrieve uid and gid.
19883 Use 500/513, the Windows defaults, as Administrator's uid/gid.
19884 (fstat): Use pw_uid and pw_gid from the_passwd structure for
19885 st_uid and st_gid of the file.
19886
19887 2008-01-26 Jason Rumney <jasonr@gnu.org>
19888
19889 * w32.c (logon_network_drive): New function.
19890 (stat): Use it.
19891
19892 2008-01-26 Chong Yidong <cyd@stupidchicken.com>
19893
19894 * xdisp.c (pos_visible_p): Handle the case where charpos falls on
19895 invisible text covered with an ellipsis.
19896
19897 2008-01-25 Richard Stallman <rms@gnu.org>
19898
19899 * xdisp.c (redisplay_window): Run Qwindow_text_change_functions and
19900 jump back to beginning. Move some other initializations after that.
19901 (Qwindow_text_change_functions, Vwindow_text_change_functions):
19902 New variables.
19903 (syms_of_xdisp): Init them.
19904
19905 * keyboard.c (read_char): Restore echo_message_buffer after redisplay.
19906
19907 * buffer.c (reset_buffer_local_variables):
19908 Implement `permanent-local-hook'.
19909 (Qpermanent_local_hook): New variable.
19910 (syms_of_buffer): Init and staticpro it.
19911
19912 2008-01-25 Michael Albinus <michael.albinus@gmx.de>
19913
19914 * dbusbind.c (xd_retrieve_arg): Pacify GCC on x86_64 GNU/Linux.
19915
19916 2008-01-25 Thien-Thi Nguyen <ttn@gnuvola.org>
19917
19918 * fns.c (Fclrhash): Return TABLE.
19919
19920 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19921
19922 * macterm.c (x_scroll_bar_create): Initialize bar->redraw_needed_p.
19923 (XTset_vertical_scroll_bar): Redraw scroll bar if bar->redraw_needed_p
19924 is set even without positional changes.
19925 (x_scroll_bar_clear): Set bar->redraw_needed_p.
19926
19927 * macterm.h (struct scroll_bar): New member `redraw_needed_p'.
19928
19929 2008-01-23 Jason Rumney <jasonr@gnu.org>
19930
19931 * xterm.c (handle_one_xevent): Revert to counting chars not bytes.
19932
19933 * w32term.c (w32_read_socket) <WM_CHAR>: Decode characters outside
19934 the unicode range available in MULE by locale-coding-system.
19935 Improve dbcs lead byte detection. Set event timestamp and modifiers
19936 earlier.
19937
19938 2008-01-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
19939
19940 * mac.c (mac_emacs_pid) [MAC_OSX]: New variable.
19941 [MAC_OSX] (init_mac_osx_environment): Initialize it.
19942 [MAC_OSX] (mac_try_close_socket) [SELECT_USE_CFSOCKET]: Return 0
19943 when used on child processes.
19944
19945 2008-01-21 Michael Albinus <michael.albinus@gmx.de>
19946
19947 * dbusbind.c (Fdbus_method_return_internal): Rename from
19948 Fdbus_method_return.
19949 (Fdbus_unregister_object): Move to dbus.el.
19950 (Fdbus_call_method, Fdbus_method_return_internal)
19951 (Fdbus_send_signal): Improve debug messages.
19952
19953 2008-01-20 Martin Rudalics <rudalics@gmx.at>
19954
19955 * undo.c (undo_inhibit_record_point): New variable.
19956 (syms_of_undo): Initialize it.
19957 (record_point): Don't record point when undo_inhibit_record_point
19958 is set.
19959
19960 2008-01-19 Stefan Monnier <monnier@iro.umontreal.ca>
19961
19962 * process.c (list_processes_1): Don't use SCHARS on a nil buffer name.
19963
19964 * xdisp.c (Qauto_hscroll_mode): New var.
19965 (syms_of_xdisp): Initialize it.
19966 (hscroll_window_tree): Use it to lookup `auto-hscroll-mode' in each
19967 window's buffer.
19968 (hscroll_windows): Don't check automatic_hscrolling_p here.
19969
19970 * window.c (set_window_buffer): Don't unnecessarily reset hscroll and
19971 vscroll if we're setting window-buffer to the value it already has.
19972
19973 2008-01-18 Dan Nicolaescu <dann@ics.uci.edu>
19974
19975 * m/intel386.h: Remove references to XENIX.
19976
19977 2008-01-17 Andreas Schwab <schwab@suse.de>
19978
19979 * m/amdx86-64.h (START_FILES, LIB_STANDARD): Use HAVE_LIB64_DIR
19980 instead of HAVE_X86_64_LIB64_DIR.
19981 * m/ibms390x.h (START_FILES, LIB_STANDARD): Likewise.
19982
19983 2008-01-17 Glenn Morris <rgm@gnu.org>
19984
19985 * m/ibms390x.h (START_FILES, LIB_STANDARD): Adjust value according
19986 to HAVE_X86_64_LIB64_DIR.
19987
19988 2008-01-16 Dan Nicolaescu <dann@ics.uci.edu>
19989
19990 * s/irix3-3.h:
19991 * s/irix4-0.h:
19992 * s/386-ix.h:
19993 * s/domain.h:
19994 * s/hpux9-x11r4.h:
19995 * s/hpux9shxr4.h: Remove files for systems no longer supported.
19996
19997 * sysdep.c: Remove code containing references to symbols defined
19998 by unsupported systems.
19999
20000 2008-01-16 Glenn Morris <rgm@gnu.org>
20001
20002 * coding.c (select-safe-coding-system-function): Doc fix.
20003
20004 2008-01-15 Glenn Morris <rgm@gnu.org>
20005
20006 * config.in: Revert 2008-01-13 change: this is a generated file.
20007
20008 2008-01-13 Tom Tromey <tromey@redhat.com>
20009
20010 * lisp.h: Fix typo.
20011
20012 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20013
20014 * m/sequent-ptx.h:
20015 * m/sequent.h:
20016 * s/ptx.h:
20017 * s/ptx4-2.h:
20018 * s/ptx4.h: Remove files for systems no longer supported.
20019
20020 * callproc.c (Fcall_process): Fix previous change.
20021
20022 2008-01-13 Dan Nicolaescu <dann@ics.uci.edu>
20023
20024 * unexsunos4.c: Remove file, system not supported anymore.
20025
20026 * m/mips.h:
20027 * m/intel386.h:
20028 * callproc.c:
20029 * config.in:
20030 * ecrt0.c:
20031 * emacs.c:
20032 * fileio.c:
20033 * frame.c:
20034 * getpagesize.h:
20035 * keyboard.c:
20036 * lread.c:
20037 * process.c:
20038 * puresize.h:
20039 * sysdep.c:
20040 * systty.h:
20041 * syswait.h:
20042 * unexec.c:
20043 * xdisp.c:
20044 * alloc.c: Remove code containing references to symbols defined by
20045 unsupported systems.
20046
20047 2008-01-11 Kenichi Handa <handa@ni.aist.go.jp>
20048
20049 * coding.c (detect_coding_mask): Fix previous change.
20050
20051 2008-01-09 Kenichi Handa <handa@ni.aist.go.jp>
20052
20053 * coding.c (detect_coding_iso2022): New arg
20054 latin_extra_code_state. Allow Latin extra codes only
20055 when *latin_extra_code_state is nonzero.
20056 (detect_coding_mask): If there is a NULL byte, detect the encoding
20057 as UTF-16 or binary. If Latin extra codes exist, detect the
20058 encoding as ISO-2022 only when there's no other proper encoding is
20059 found.
20060
20061 2008-01-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20062
20063 * frame.c (Fmake_terminal_frame): Use #ifdef MAC_OS8 instead of
20064 #ifdef MAC_OS.
20065
20066 2008-01-08 Richard Stallman <rms@gnu.org>
20067
20068 * fileio.c (Ffile_name_directory, Fexpand_file_name): Doc fixes.
20069
20070 2008-01-06 Nick Roberts <nickrob@snap.net.nz>
20071
20072 * keyboard.c (parse_menu_item): Don't enclose key bindings on
20073 menu bar in parentheses.
20074
20075 2008-01-06 Dan Nicolaescu <dann@ics.uci.edu>
20076
20077 * m/7300.h:
20078 * m/acorn.h:
20079 * m/alliant-2800.h:
20080 * m/alliant.h:
20081 * m/alliant1.h:
20082 * m/alliant4.h:
20083 * m/altos.h:
20084 * m/amdahl.h:
20085 * m/apollo.h:
20086 * m/att3b.h:
20087 * m/aviion-intel.h:
20088 * m/aviion.h:
20089 * m/celerity.h:
20090 * m/clipper.h:
20091 * m/cnvrgnt.h:
20092 * m/convex.h:
20093 * m/cydra5.h:
20094 * m/delta88k.h:
20095 * m/dpx2.h:
20096 * m/dual.h:
20097 * m/elxsi.h:
20098 * m/f301.h:
20099 * m/gould-np1.h:
20100 * m/gould.h:
20101 * m/i860.h:
20102 * m/ibmps2-aix.h:
20103 * m/ibmrt-aix.h:
20104 * m/ibmrt.h:
20105 * m/irist.h:
20106 * m/is386.h:
20107 * m/isi-ov.h:
20108 * m/mega68.h:
20109 * m/mg1.h:
20110 * m/news-r6.h:
20111 * m/news-risc.h:
20112 * m/news.h:
20113 * m/nh3000.h:
20114 * m/nh4000.h:
20115 * m/ns16000.h:
20116 * m/ns32000.h:
20117 * m/nu.h:
20118 * m/orion.h:
20119 * m/orion105.h:
20120 * m/paragon.h:
20121 * m/pfa50.h:
20122 * m/plexus.h:
20123 * m/pyramid.h:
20124 * m/pyrmips.h:
20125 * m/sh3el.h:
20126 * m/sps7.h:
20127 * m/sr2k.h:
20128 * m/stride.h:
20129 * m/sun1.h:
20130 * m/sun2.h:
20131 * m/sun3-68881.h:
20132 * m/sun3-fpa.h:
20133 * m/sun3-soft.h:
20134 * m/sun3.h:
20135 * m/sun386.h:
20136 * m/symmetry.h:
20137 * m/tad68k.h:
20138 * m/tahoe.h:
20139 * m/targon31.h:
20140 * m/tek4300.h:
20141 * m/tekxd88.h:
20142 * m/tower32.h:
20143 * m/tower32v3.h:
20144 * m/ustation.h:
20145 * m/wicat.h:
20146 * m/xps100.h:
20147 * s/cxux.h:
20148 * s/cxux7.h:
20149 * s/dgux.h:
20150 * s/dgux4.h:
20151 * s/dgux5-4-3.h:
20152 * s/dgux5-4r2.h:
20153 * s/esix.h:
20154 * s/esix5r4.h:
20155 * s/hiuxmpp.h:
20156 * s/hiuxwe2.h:
20157 * s/iris3-5.h:
20158 * s/iris3-6.h:
20159 * s/isc2-2.h:
20160 * s/isc3-0.h:
20161 * s/isc4-0.h:
20162 * s/isc4-1.h:
20163 * s/newsos5.h:
20164 * s/newsos6.h:
20165 * s/osf1.h:
20166 * s/osf5-0.h:
20167 * s/riscix1-1.h:
20168 * s/riscix12.h:
20169 * s/sco4.h:
20170 * s/sco5.h:
20171 * s/sunos4-0.h:
20172 * s/sunos4-1.h:
20173 * s/sunos413.h:
20174 * s/sunos4shr.h:
20175 * s/umax.h:
20176 * s/unipl5-2.h:
20177 * s/xenix.h:
20178 * cxux-crt0.s:
20179 * unexapollo.c:
20180 * unexconvex.c:
20181 * unexenix.c:
20182 * unexsni.c: Remove files for systems no longer supported.
20183
20184 * m/intel386.h: Remove references to unsupported systems.
20185
20186 * w32.c (get_emacs_configuration): Remove reference to i860.
20187
20188 * sysdep.c: Remove dead code.
20189
20190 2008-01-05 Dan Nicolaescu <dann@ics.uci.edu>
20191
20192 * s/rtu.h:
20193 * m/masscomp.h: Remove files. Platform is obsolete.
20194
20195 2008-01-04 Michael Albinus <michael.albinus@gmx.de>
20196
20197 * dbusbind.c (Fdbus_method_return): New function.
20198 (xd_read_message): Add the serial number to the event.
20199 (Fdbus_register_method): Activate the function.
20200
20201 2008-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
20202
20203 * keyboard.c (read_key_sequence): Fix typo.
20204
20205 2008-01-03 Michael Albinus <michael.albinus@gmx.de>
20206
20207 * dbusbind.c (all): Replace XCAR by CAR_SAFE and XCDR by CDR_SAFE.
20208 (xd_signature, xd_append_arg): Handle element type detection for
20209 empty arrays.
20210 (Fdbus_call_method, Fdbus_send_signal): Undo type casting for
20211 SDATA () calls; this must be solved more general.
20212 (Fdbus_register_signal): Use SBYTES instead of strlen.
20213
20214 2008-01-03 Magnus Henoch <magnus@zemdatav>
20215
20216 * dbusbind.c (xd_append_arg): Use unsigned char instead of
20217 unsigned int for byte values (necessary for big-endian platform).
20218 (Fdbus_call_method): Handle the case of no returned arguments.
20219
20220 2007-12-31 Tom Tromey <tromey@redhat.com> (tiny change)
20221
20222 * dbusbind.c (xd_read_message): Use non-static input_event struct.
20223
20224 2007-12-31 Magnus Henoch <mange@freemail.hu>
20225
20226 * dbusbind.c (xd_signature): Signature of variant is just "v".
20227
20228 2007-12-30 Michael Albinus <michael.albinus@gmx.de>
20229
20230 * dbusbind.c: Fix several errors and compiler warnings.
20231 Reported by Tom Tromey <tromey@redhat.com>.
20232 (XD_ERROR, XD_DEBUG_MESSAGE)
20233 (XD_DEBUG_VALID_LISP_OBJECT_P): Wrap code with "do ... while (0)".
20234 (xd_append_arg): Part for basic D-Bus types rewritten.
20235 (xd_retrieve_arg): Split implementation of DBUS_TYPE_BYTE and
20236 DBUS_TYPE_(U)INT16. Don't call XD_DEBUG_MESSAGE with "%f" if not
20237 appropriate.
20238 (xd_read_message): Return Qnil. Don't signal an error; it is not
20239 useful during event reading.
20240 (Fdbus_register_signal): Signal an error if the check for
20241 FUNCTIONP fails.
20242 (Fdbus_register_method): New function. The implementation is not
20243 complete, the call of the function signals an error therefore.
20244 (Fdbus_unregister_object): New function, renamed from
20245 Fdbus_unregister_signal. The initial check signals an error, if
20246 the object is not well formed.
20247
20248 2007-12-30 Richard Stallman <rms@gnu.org>
20249
20250 * textprop.c (get_char_property_and_overlay):
20251 Signal error if POSITION is out of range in a buffer.
20252
20253 2007-12-29 Martin Rudalics <rudalics@gmx.at>
20254
20255 * w32fns.c (Fx_create_frame): Make copy of frame parameters
20256 because the original parameters are in pure storage now.
20257
20258 2007-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20259
20260 * xdisp.c (phys_cursor_in_rect_p): Check if cursor is in fringe area.
20261
20262 2007-12-22 Eli Zaretskii <eliz@gnu.org>
20263
20264 * callint.c (syms_of_callint) <command-history>: Add reference to
20265 history-length in the doc string.
20266
20267 2007-12-17 Jason Rumney <jasonr@gnu.org>
20268
20269 * w32fns.c (w32_wnd_proc) <WM_KEYDOWN>: Cast char to unsigned
20270 before passing as wParam.
20271
20272 2007-12-22 Michael Albinus <michael.albinus@gmx.de>
20273
20274 * dbusbind.c (xd_retrieve_arg): Handle DBUS_TYPE_BYTE,
20275 DBUS_TYPE_INT16, DBUS_TYPE_UINT16, DBUS_TYPE_INT64,
20276 DBUS_TYPE_UINT64, DBUS_TYPE_DOUBLE and DBUS_TYPE_SIGNATURE.
20277 Return float when DBUS_TYPE_INT32 or DBUS_TYPE_UINT32 do not fit
20278 as number.
20279 (Fdbus_call_method): Fix docstring.
20280
20281 2007-12-21 Michael Albinus <michael.albinus@gmx.de>
20282
20283 * dbusbind.c (XD_BASIC_DBUS_TYPE, XD_DBUS_TYPE_P, XD_NEXT_VALUE):
20284 New macros.
20285 (XD_SYMBOL_TO_DBUS_TYPE): Rename from XD_LISP_SYMBOL_TO_DBUS_TYPE.
20286 (XD_OBJECT_TO_DBUS_TYPE): Rename from XD_LISP_OBJECT_TO_DBUS_TYPE.
20287 Simplify.
20288 (xd_signature): New function.
20289 (xd_append_arg): Compute also signatures. Major rewrite.
20290 (xd_retrieve_arg): Make debug messages friendly.
20291 (Fdbus_call_method, Fdbus_send_signal): Extend docstring.
20292 Check for signatures of arguments.
20293
20294 2007-12-19 Michael Albinus <michael.albinus@gmx.de>
20295
20296 * dbusbind.c (QCdbus_type_byte, QCdbus_type_boolean)
20297 (QCdbus_type_int16, QCdbus_type_uint16, QCdbus_type_int32)
20298 (QCdbus_type_uint32, QCdbus_type_int64, QCdbus_type_uint64)
20299 (QCdbus_type_double, QCdbus_type_string, QCdbus_type_object_path)
20300 (QCdbus_type_signature, QCdbus_type_array, QCdbus_type_variant)
20301 (QCdbus_type_struct, QCdbus_type_dict_entry): New D-Bus type symbols.
20302 (XD_LISP_SYMBOL_TO_DBUS_TYPE): New macro.
20303 (XD_LISP_OBJECT_TO_DBUS_TYPE): Add compound types.
20304 (xd_retrieve_value): Remove. Functionality included in ...
20305 (xd_append_arg): New function.
20306 (Fdbus_call_method, Fdbus_send_signal): Apply it.
20307
20308 2007-12-16 Michael Albinus <michael.albinus@gmx.de>
20309
20310 * dbusbind.c (top): Include <stdio.h>.
20311 (Fdbus_call_method, Fdbus_send_signal): Apply type cast in
20312 dbus_message_new_method_call and dbus_message_new_signal.
20313 (Fdbus_register_signal): Rename unique_name to uname.
20314 Check handler for FUNCTIONP instead of CHECK_SYMBOL. Handle case of
20315 non-existing unique name. Fix typos in matching rule. Return an
20316 object which is useful in Fdbus_unregister_signal.
20317 (Fdbus_unregister_signal): Reimplementation, in order to remove
20318 only the corresponding entry.
20319 (Vdbus_registered_functions_table): Change the order of entries.
20320 Apply these changes in xd_read_message and Fdbus_register_signal.
20321
20322 2007-12-16 Andreas Schwab <schwab@suse.de>
20323
20324 * fileio.c (Finsert_file_contents): Fix overflow check to not
20325 depend on undefined integer overflow.
20326
20327 2007-12-14 Jason Rumney <jasonr@gnu.org>
20328
20329 * w32term.c (w32_read_socket): Use MULTIBYTE_CHAR_KEYSTROKE_EVENT
20330 for characters above 127.
20331
20332 2007-12-13 Jason Rumney <jasonr@gnu.org>
20333
20334 * w32fns.c (w32_wnd_proc, Fw32_reconstruct_hot_key): Range check
20335 before dereferencing array.
20336 (lookup_vk_code): Remove zero comparison.
20337
20338 2007-12-14 Michael Albinus <michael.albinus@gmx.de>
20339
20340 * dbusbind.c (xd_retrieve_value, xd_retrieve_arg)
20341 (Fdbus_call_method, Fdbus_send_signal, xd_read_message):
20342 Use `unsigned int' instead of `uint'.
20343 (xd_read_message, Fdbus_register_signal): Split expressions into
20344 multiple lines before operators "&&" and "||", according to the
20345 GNU Coding Standards.
20346
20347 2007-12-14 Eli Zaretskii <eliz@gnu.org>
20348
20349 * dispextern.h (WINDOWS_NT): Fix incorrect spelling of WINDOWSNT.
20350
20351 2007-12-12 Juri Linkov <juri@jurta.org>
20352
20353 * buffer.c (Frename_buffer): In interactive spec replace
20354 `read-buffer' with `read-string' that uses `buffer-name-history'
20355 as history, and the current buffer's name as default.
20356
20357 2007-12-10 Stefan Monnier <monnier@iro.umontreal.ca>
20358
20359 * keyboard.c (Fcommand_execute): Call Qcall_interactively instead of
20360 manipulating the backtrace manually.
20361 (make_lispy_event): Merge the ASCII and MULTIBYTE cases.
20362 (struct backtrace, backtrace_list): Remove.
20363 (command_loop_1): Remove dead var `no_direct'.
20364
20365 * buffer.c (reset_buffer_local_variables): If permanent_too is 0, also
20366 preserve non-built-in buffer-local variables.
20367 (Fkill_all_local_variables): Don't re-create&re-set permanent
20368 buffer-local variables.
20369
20370 2007-12-09 Juri Linkov <juri@jurta.org>
20371
20372 * buffer.c (Frename_buffer): Change interactive spec from "s" to
20373 Lisp code that uses `read-buffer' with current buffer as default.
20374
20375 2007-12-08 Michael Albinus <michael.albinus@gmx.de>
20376
20377 * dbusbind.c (xd_read_message): Generate an event for every
20378 registered handler. There might be several handlers registered
20379 for the same signal.
20380 (Fdbus_register_signal): Don't overwrite a registration for the
20381 same signal. Add a new registration if handlers are different.
20382 (Vdbus_registered_functions_table): Rework doc string.
20383
20384 2007-12-07 Michael Albinus <michael.albinus@gmx.de>
20385
20386 * dbusbind.c (Fdbus_get_unique_name, xd_read_message)
20387 (Fdbus_register_signal): Use DBUS_MAXIMUM_NAME_LENGTH and
20388 DBUS_MAXIMUM_MATCH_RULE_LENGTH for string lengths.
20389 (Fdbus_call_method, Fdbus_send_signal, Fdbus_register_signal):
20390 Unify argument lists.
20391 (xd_read_message, Fdbus_register_signal): Reorder and extend event
20392 arguments and hash table keys. Use unique name for service.
20393 (Fdbus_unregister_signal): Remove checks.
20394 (Vdbus_registered_functions_table): Fix doc string.
20395
20396 2007-12-05 Magnus Henoch <mange@freemail.hu>
20397
20398 * process.c (make_process): Initialize pty_flag to 0.
20399
20400 2007-12-05 Jason Rumney <jasonr@gnu.org>
20401
20402 * image.c (xbm_load) [WINDOWSNT]: Shuffle the bits of directly
20403 specified XBMs.
20404
20405 2007-12-05 Richard Stallman <rms@gnu.org>
20406
20407 * xdisp.c (syms_of_xdisp) <scroll-conservatively>: Doc fix.
20408
20409 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20410
20411 * mac.c (cfsockets_for_select) [MAC_OSX && SELECT_USE_CFSOCKET]:
20412 New variable.
20413 (mac_try_close_socket) [MAC_OSX]: New function.
20414 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]:
20415 Update cfsockets_for_select. Replace invalid CFRunLoop source.
20416
20417 * sysdep.c (emacs_close) [MAC_OSX && HAVE_CARBON]:
20418 Use mac_try_close_socket.
20419
20420 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20421
20422 * unexmacosx.c (unrelocate): New argument BASE. Use it instead of
20423 reloc_base.
20424 (copy_dysymtab): Compute relocation base here.
20425 (rebase_reloc_address) [__ppc64__]: New function.
20426 (copy_dysymtab) [__ppc64__]: Use it if relocation base needs to be
20427 changed.
20428
20429 2007-12-05 Jason Rumney <jasonr@gnu.org>
20430
20431 * w32proc.c (sys_spawnve): Quote args with wildcards.
20432
20433 2007-12-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20434
20435 * unexmacosx.c (copy_data_segment): Also copy __gcc_except_tab and
20436 __objc_* sections.
20437 (unrelocate) [_LP64]: Set relocation base to address of data segment.
20438
20439 2007-12-05 Michael Albinus <michael.albinus@gmx.de>
20440
20441 * dbusbind.c (xd_read_message): Return value is a Lisp_Object.
20442 Move check for Vdbus_registered_functions_table to
20443 xd_read_queued_messages.
20444 (xd_read_queued_messages): Protect xd_read_message calls by
20445 internal_condition_case_1.
20446
20447 2007-12-04 Michael Albinus <michael.albinus@gmx.de>
20448
20449 * dbusbind.c (QCdbus_system_bus, QCdbus_session_bus): Rename from
20450 Qdbus_system_bus and Qdbus_session_bus, respectively.
20451 (Vdbus_intern_symbols): Remove.
20452 (Vdbus_registered_functions_table): New hash table.
20453 (XD_SYMBOL_INTERN_SYMBOL): Remove.
20454 (xd_read_message, Fdbus_register_signal, Fdbus_unregister_signal):
20455 Rewrite in order to manage registered functions by hash table
20456 Vdbus_registered_functions_table.
20457
20458 2007-12-03 Jan Djärv <jan.h.d@swipnet.se>
20459
20460 * xterm.c: Update URL to Window Manager Specification in comment.
20461
20462 2007-12-02 Michael Albinus <michael.albinus@gmx.de>
20463
20464 * config.in (HAVE_DBUS): Add.
20465
20466 * Makefile.in (HAVE_DBUS): Add D-Bus definitions if defined.
20467 (ALL_CFLAGS): Add ${DBUS_CFLAGS}.
20468 (obj): Add $(DBUS_OBJ).
20469 (LIBES): Add $(DBUS_LIBS).
20470 (dbusbind.o): New target.
20471
20472 * dbusbind.c: New file.
20473
20474 * emacs.c (main): Call syms_of_dbusbind when HAVE_DBUS is defined.
20475
20476 * keyboard.c: All D-Bus related code is wrapped by "#ifdef HAVE_DBUS".
20477 (Qdbus_event): New Lisp symbol.
20478 (kbd_buffer_get_event, make_lispy_event): Handle DBUS_EVENT.
20479 (gobble_input): Call xd_read_queued_messages, reading D-Bus messages.
20480 (keys_of_keyboard): Define dbus-event.
20481
20482 * termhooks.h (event_kind): Add DBUS_EVENT when HAVE_DBUS is defined.
20483
20484 2007-12-01 Richard Stallman <rms@gnu.org>
20485
20486 * search.c (syms_of_search) <inhibit-changing-match-data>: Doc fix.
20487
20488 2007-11-30 Jason Rumney <jasonr@gnu.org>
20489
20490 * w32console.c (w32con_ins_del_lines, scroll_line): Clip to window.
20491 (w32con_reset_terminal_modes): Clear screen buffer.
20492 (w32_face_attributes): Don't use color indexes that are out of range.
20493 Only reverse the default colors.
20494
20495 * xfaces.c (map_tty_color, tty_color_name): Remove special case for
20496 WINDOWSNT.
20497
20498 * w32console.c, w32term.h (vga_stdcolor_name): Remove.
20499
20500 2007-11-29 Jason Rumney <jasonr@gnu.org>
20501
20502 * w32console.c: Leave HAVE_WINDOW_SYSTEM defined.
20503 (w32_face_attributes): Use Vtty_defined_color_alist to determine
20504 if the terminal colors are initialized.
20505 (unspecified_fg, unspecified_bg): Remove unused declarations.
20506
20507 2007-11-29 Andreas Schwab <schwab@suse.de>
20508
20509 * keyboard.c (apply_modifiers): Fix typo.
20510
20511 2007-11-29 Richard Stallman <rms@gnu.org>
20512
20513 * keymap.c (Fcurrent_local_map): Doc fix.
20514
20515 2007-11-28 Petr Salinger <Petr.Salinger@seznam.cz> (tiny change)
20516
20517 * s/gnu-kfreebsd.h: New file.
20518
20519 2007-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
20520
20521 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
20522 Don't cast redundantly.
20523
20524 * keyboard.c (KEY_TO_CHAR): New macro.
20525 (parse_modifiers, apply_modifiers): Accept integer arguments.
20526 (read_key_sequence): Use them to unify the "shift->unshift" mapping
20527 for chars and symbol keys.
20528 After doing such remapping, apply function-key-map again.
20529
20530 2007-11-27 Dan Nicolaescu <dann@ics.uci.edu>
20531
20532 * Makefile.in (SOME_MACHINE_LISP): Remove VMS files, they are not
20533 compiled anymore.
20534
20535 2007-11-26 Andreas Schwab <schwab@suse.de>
20536
20537 * process.c (list_processes_1): Fix indentation level of the
20538 command column.
20539
20540 2007-11-23 Andreas Schwab <schwab@suse.de>
20541
20542 * editfns.c (Fformat): Handle %c specially since it requires the
20543 argument to be of type int.
20544
20545 2007-11-23 Markus Triska <markus.triska@gmx.at>
20546
20547 * emacs.c (main): Call init_editfns before init_process, since
20548 init_process sets Vprocess_connection_type depending on OS release.
20549
20550 2007-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
20551
20552 * data.c (do_symval_forwarding): Use same code as in find_symbol_value.
20553 (find_symbol_value): Use do_symval_forwarding.
20554
20555 * data.c (set_internal): Set the value in the `cons-cell' (for
20556 Buffer_Local_values) not only for frame-local variables.
20557
20558 2007-11-22 Andreas Schwab <schwab@suse.de>
20559
20560 * data.c (Fnumber_to_string): Add cast when passing EMACS_INT
20561 values to sprintf.
20562 * keymap.c (Fsingle_key_description): Likewise.
20563 * print.c (print_object): Likewise.
20564
20565 2007-11-22 Jan Djärv <jan.h.d@swipnet.se>
20566
20567 * gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
20568 file for image is nil.
20569
20570 2007-11-22 Dan Nicolaescu <dann@ics.uci.edu>
20571
20572 * term.c: Include stdarg.h.
20573 (fatal): Implement using varargs.
20574 * lisp.h (fatal): Add argument types. (Restore 2005-09-30 change).
20575
20576 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20577
20578 * lisp.h (struct Lisp_Buffer_Objfwd): Add a `slottype' field.
20579 * data.c (store_symval_forwarding): Get type from buffer_objfwd.
20580 Update call to buffer_slot_type_mismatch.
20581 * buffer.h (buffer_local_types, PER_BUFFER_TYPE): Remove.
20582 (buffer_slot_type_mismatch): Update.
20583 * buffer.c (buffer_local_types): Remove.
20584 (buffer_slot_type_mismatch): Get the symbol and type as arguments.
20585 (defvar_per_buffer): Set the type in the buffer_objfwd.
20586
20587 2007-11-21 Jason Rumney <jasonr@gnu.org>
20588
20589 * w32bdf.c (w32_init_bdf_font, w32_BDF_to_x_font):
20590 CreateFileMapping returns NULL on failure.
20591
20592 2007-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
20593
20594 * search.c (Fset_match_data): Remove the `evaporate' feature.
20595 (unwind_set_match_data): Don't use the `evaporate' feature.
20596
20597 2007-11-21 Jason Rumney <jasonr@gnu.org>
20598
20599 * dispnew.c (init_display) [WINDOWSNT]: Hardcode terminal_type.
20600
20601 * w32console.c (w32con_write_glyphs): Remove unused variables.
20602
20603 2007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
20604
20605 * macterm.c (mac_term_init): Call add_keyboard_wait_descriptor.
20606
20607 * s/darwin.h (MULTI_KBOARD): Remove.
20608
20609 * macfns.c (x_create_tip_frame, Fx_create_frame)
20610 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
20611
20612 2007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
20613
20614 * buffer.c (Fbuffer_local_value): Remove redundant test.
20615 (swap_out_buffer_local_variables): Swap out binding in `buffer' rather
20616 than in `current-buffer' to match the comment.
20617 Do the swap using swap_in_global_binding.
20618
20619 * data.c (store_symval_forwarding, set_internal):
20620 * eval.c (specbind): Remove dead code.
20621
20622 * coding.c (detect_coding, Fupdate_coding_systems_internal):
20623 * fns.c (Fmd5): Use find_symbol_value rather than SYMBOL_VALUE
20624 Since we do not want to see internal Lisp_*fwd objects here.
20625
20626 2007-11-18 Jan Djärv <jan.h.d@swipnet.se>
20627
20628 * sysdep.c (init_system_name): Use getaddrinfo if available.
20629
20630 * xterm.c (x_scroll_bar_set_handle, x_scroll_bar_handle_click)
20631 (x_scroll_bar_note_movement): start, end, with, height in struct
20632 scroll_bar are integers and not Lisp_Object, so remove XINT for them.
20633
20634 2007-11-17 Dan Nicolaescu <dann@ics.uci.edu>
20635
20636 * puresize.h (BASE_PURESIZE): Increase to 1190000.
20637
20638 2007-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
20639
20640 * buffer.h (struct buffer): Move `undo_list' back to before `name'.
20641 This undoes Richard's change of 14-Oct-2002.
20642
20643 * alloc.c (allocate_other_vector):
20644 * lisp.h (allocate_other_vector): Remove.
20645
20646 * window.c (struct save_window_data): Move non-lisp data to the end
20647 and make it `int' rather than Lisp_Object.
20648 (Fcurrent_window_configuration): Use ALLOCATE_PSEUDOVECTOR.
20649 Done wrap/unwrap integer values.
20650 (Fset_window_configuration, compare_window_configurations):
20651 Update use of fields to their new types.
20652
20653 * xterm.h (struct scroll_bar): Only use Lisp_Object for lisp data.
20654 Turn integer fields into `int'. Merge x_window_low and x_window_high.
20655 (SCROLL_BAR_PACK, SCROLL_BAR_UNPACK, SCROLL_BAR_X_WINDOW)
20656 (SET_SCROLL_BAR_X_WINDOW): Remove.
20657 (SCROLL_BAR_X_WIDGET, SET_SCROLL_BAR_X_WIDGET):
20658 Access the new x_window field directly.
20659 * xterm.c (x_scroll_bar_create): Use a pseudovector.
20660 Don't wrap/unwrap integers into Lisp_Objects.
20661 (XTset_vertical_scroll_bar, x_scroll_bar_handle_click)
20662 (x_scroll_bar_report_motion):
20663 Don't wrap/unwrap integers into Lisp_Objects.
20664 (x_term_init): Use SDATA.
20665 (x_window_to_scroll_bar, x_create_toolkit_scroll_bar)
20666 (x_scroll_bar_set_handle, x_scroll_bar_remove)
20667 (XTset_vertical_scroll_bar, x_scroll_bar_expose)
20668 (x_scroll_bar_report_motion, x_scroll_bar_clear):
20669 * xfns.c (x_set_background_color):
20670 * gtkutil.c (xg_create_scroll_bar, xg_set_toolkit_scroll_bar_thumb):
20671 Access the new x_window field directly.
20672
20673 * alloc.c (ALLOCATE_PSEUDOVECTOR): Move to lisp.h.
20674 (allocate_pseudovector): Make non-static.
20675
20676 * lisp.h (enum pvec_type): New tag PVEC_OTHER.
20677 (allocate_pseudovector): Declare.
20678 (ALLOCATE_PSEUDOVECTOR): Move from alloc.c.
20679
20680 2007-11-15 Andreas Schwab <schwab@suse.de>
20681
20682 * editfns.c (Fformat): Correctly format EMACS_INT values.
20683 Also take precision into account when formatting an integer.
20684
20685 * keyboard.c (Fevent_symbol_parse_modifiers): Fix declaration.
20686
20687 2007-11-15 Stefan Monnier <monnier@iro.umontreal.ca>
20688
20689 * keyboard.c (Fevent_symbol_parse_modifiers): New function.
20690 (syms_of_keyboard): Defsubr it.
20691
20692 * data.c (swap_in_global_binding): Fix longstanding bug where
20693 store_symval_forwarding was not called with the right second argument,
20694 thus causing objfwd-ing from being dropped.
20695
20696 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20697
20698 * macfns.c (Fx_create_frame, Fx_display_pixel_width)
20699 (Fx_display_pixel_height, Fx_display_planes)
20700 (Fx_display_color_cells, Fx_server_max_request_size)
20701 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20702 (Fx_display_visual_class, Fx_display_save_under):
20703 * w32fns.c (Fx_create_frame, Fx_display_pixel_width)
20704 (Fx_display_pixel_height, Fx_display_planes)
20705 (Fx_display_color_cells, Fx_server_max_request_size)
20706 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
20707 (Fx_display_mm_height, Fx_display_mm_width)
20708 (Fx_display_backing_store, Fx_display_visual_class)
20709 (Fw32_select_font, Fx_display_save_under):
20710 * xfns.c (Fx_create_frame, Fx_display_pixel_width)
20711 (Fx_display_pixel_height, Fx_display_planes)
20712 (Fx_display_color_cells, Fx_server_max_request_size)
20713 (Fx_server_vendor, Fx_server_version, Fx_display_backing_store)
20714 (Fx_display_save_under): Fix typos in docstrings.
20715
20716 2007-11-14 Juanma Barranquero <lekktu@gmail.com>
20717
20718 * w32fns.c (Fw32_registered_hot_keys): Don't return the nil values
20719 corresponding to deleted entries; they are an implementation detail.
20720 (gray_bitmap_width, gray_bitmap_height, gray_bitmap_bits):
20721 Remove variables.
20722 (w32_pass_extra_mouse_buttons_to_system, w32_strict_fontnames)
20723 (w32_pass_multimedia_buttons_to_system, w32_strict_painting)
20724 (Vw32_charset_info_alist, w32_to_x_color, w32_init_class)
20725 (w32_createscrollbar, w32_createwindow, my_post_msg, w32_get_modifiers)
20726 (w32_grabbed_keys, cancel_all_deferred_msgs): Make static.
20727 (Fw32_define_rgb_color, Fw32_load_color_file)
20728 (syms_of_w32fns) <w32-pass-multimedia-buttons-to-system>:
20729 Fix typos in docstrings.
20730 (Fx_server_version): Reflow docstring.
20731 (Fw32_shell_execute): Doc fixes.
20732
20733 2007-11-13 Juanma Barranquero <lekktu@gmail.com>
20734
20735 * w32fns.c (Fw32_register_hot_key): Don't try to register hot key
20736 if w32_parse_hot_key returned nil.
20737
20738 2007-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
20739
20740 * xdisp.c (load_overlay_strings): Fix copy&paste typo.
20741
20742 2007-11-09 Jason Rumney <jasonr@gnu.org>
20743
20744 * s/ms-w32.c (USE_TOOLKIT_SCROLL_BARS): Define.
20745
20746 * w32term.c (w32_scroll_bar_handle_click): Use SCROLL_BAR_CLICK_EVENT.
20747
20748 * keyboard.c (discard_mouse_events, make_lispy_event) [WINDOWSNT]:
20749 Remove W32_SCROLL_BAR_CLICK_EVENT.
20750
20751 * termhooks.h (enum event_kind) [WINDOWSNT]: Likewise.
20752 Add MULTIMEDIA_KEY_EVENT.
20753
20754 * keyboard.c (lispy_function_keys) [WINDOWSNT]: Add more keys.
20755 (lispy_multimedia_keys) [WINDOWSNT]: New array.
20756 (make_lispy_event) [WINDOWSNT]: Use it to translate
20757 MULTIMEDIA_KEY_EVENT.
20758
20759 * w32term.h (WM_APPCOMMAND): Define if not already.
20760 (GET_APPCOMMAND_LPARAM): Likewise.
20761
20762 * w32term.c (w32_read_socket): Generate MULTIMEDIA_KEY_EVENT from
20763 WM_APPCOMMAND.
20764
20765 * w32fns.c (w32_pass_multimedia_buttons_to_system): New user option.
20766 (syms_of_w32fns): Export and initialize it.
20767 (w32_wnd_proc): Pass WM_APPCOMMAND on to w32_read_socket.
20768
20769 2007-11-09 Chong Yidong <cyd@stupidchicken.com>
20770
20771 * dispextern.h (struct it): Don't define OVERLAY_STRING_CHUNK_SIZE
20772 twice.
20773
20774 * xdisp.c (handle_face_prop): Fix last change.
20775
20776 2007-11-09 Richard Stallman <rms@gnu.org>
20777
20778 * xdisp.c (handle_face_prop): Test for strings that came from overlays,
20779 not just for after-strings and before-strings.
20780 Call face_for_overlay_string and pass the overlay to it.
20781 (handle_display_prop): Determine whether property came from an overlay.
20782 Pass OVERLAY arg to handle_single_display_spec.
20783 (handle_single_display_spec): New arg OVERLAY sets it->from_overlay.
20784 (load_overlay_strings): Fill in it->string_overlays.
20785 (get_overlay_strings_1, push_it, pop_it): Handle it->from_overlays.
20786
20787 * xfaces.c (face_for_overlay_string): Function renamed from
20788 face_at_buffer_position_no_overlays, and add arg OVERLAY.
20789
20790 * dispextern.h (struct it): New elt string_overlays.
20791 New elt from_overlay, also in stack.
20792 Rearrange a few elements.
20793 (face_for_overlay_string): Decl renamed from
20794 face_at_buffer_position_no_overlays, and add argument.
20795
20796 2007-11-09 Richard Stallman <rms@gnu.org>
20797
20798 * xdisp.c (handle_face_prop): Use face_at_buffer_position_no_overlays
20799 to get the base face for an overlay string.
20800
20801 * dispextern.h (face_at_buffer_position_no_overlays): Add decl.
20802
20803 * xfaces.c (face_at_buffer_position_no_overlays): New function.
20804
20805 * xdisp.c (handle_stop): Move some code out of loop.
20806
20807 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20808
20809 * macfns.c [USE_ATSUI] (Fmac_atsu_font_face_attributes):
20810 Fix conversion from Lisp object to ATSUFontID.
20811
20812 2007-11-09 Jason Rumney <jasonr@gnu.org>
20813
20814 * xdisp.c (Fformat_mode_line): Do nothing when noninteractive.
20815
20816 2007-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
20817
20818 * unexmacosx.c (unexec_regions_recorder, unexec_regions_merge):
20819 Don't assume regions are aligned to page boundary.
20820 (print_load_command_name): Add LC_UUID if defined.
20821
20822 2007-11-09 Richard Stallman <rms@gnu.org>
20823
20824 * emacs.c (syms_of_emacs) <installation-directory>: Reflow docstring.
20825
20826 2007-11-07 Jason Rumney <jasonr@gnu.org>
20827
20828 * s/windows95.h: Remove.
20829
20830 2007-11-06 Jan Djärv <jan.h.d@swipnet.se>
20831
20832 * gtkutil.c (xg_tool_bar_menu_proxy): Handle GTK_IMAGE_ICON_NAME and
20833 abort with a message on unhandled store_type values.
20834
20835 2007-11-01 Jan Djärv <jan.h.d@swipnet.se>
20836
20837 * xterm.c, xfns.c, xselect.c, xterm.h, s/msdos.h, s/sco4.h, s/sco5.h:
20838 Remove HAVE_X11R5 and HAVE_X11R4.
20839
20840 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20841
20842 * Makefile.in: Remove references to sunfns.c and sunfns.o.
20843
20844 2007-11-01 Johan Bockgård <bojohan@gnu.org>
20845
20846 * macterm.c, w32term.c, xterm.c (x_draw_stretch_glyph_string):
20847 Don't set s->stippled_p here, since it has already been set by
20848 x_set_glyph_string_gc from x_draw_glyph_string.
20849
20850 2007-11-01 Dan Nicolaescu <dann@ics.uci.edu>
20851
20852 * sunfns.c: Remove file.
20853
20854 * m/sun386.h:
20855 * m/sun2.h:
20856 * m/sparc.h: Remove Sun windows code.
20857
20858 2007-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
20859
20860 * keyboard.c (syms_of_keyboard): Initialize the initial_kboard.
20861 (init_keyboard): Set current_kboard's window-system to nil.
20862 (tty_read_avail_input): Typo.
20863 * frame.c (make_initial_frame): Don't initialize the initial_kboard.
20864
20865 2007-10-31 Dan Nicolaescu <dann@ics.uci.edu>
20866
20867 * s/usg5-4.h:
20868 * s/usg5-3.h:
20869 * s/ptx.h:
20870 * m/is386.h:
20871 * m/ibmps2-aix.h:
20872 * Makefile.in: Remove all mentions of X10.
20873
20874 * dispnew.c (syms_of_display): Don't mention version 10.
20875
20876 2007-10-28 Juanma Barranquero <lekktu@gmail.com>
20877
20878 * makefile.w32-in (OBJ1): Remove abbrev.$(O).
20879 ($(BLD)/abbrev.$(O)): Remove.
20880
20881 2007-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
20882
20883 Rewrite abbrev.c in Elisp.
20884 * image.c (Qcount): Don't declare as extern.
20885 (syms_of_image): Initialize and staticpro `Qcount'.
20886 * puresize.h (BASE_PURESIZE): Increase for the new abbrev.el functions.
20887 * emacs.c (main): Don't call syms_of_abbrev.
20888 * Makefile.in (obj): Remove abbrev.o.
20889 (abbrev.o): Remove.
20890 * abbrev.c: Remove.
20891
20892 2007-10-26 Martin Rudalics <rudalics@gmx.at>
20893
20894 * window.c (window_min_size_2): Don't count header-line.
20895
20896 2007-10-26 Dan Nicolaescu <dann@ics.uci.edu>
20897
20898 * frame.h (struct frame): Move all bit fields after the first bit
20899 field to take advantage of the available space. Group all the
20900 chars together to reduce wasted space due to padding.
20901
20902 2007-10-26 Juanma Barranquero <lekktu@gmail.com>
20903
20904 * minibuf.c (Fread_minibuffer, Feval_minibuffer): Reflow docstrings.
20905
20906 * alloc.c (spare_memory, stack_copy, stack_copy_size, ignore_warnings)
20907 (Vdead, dont_register_blocks, staticvec, staticidx, interval_block)
20908 (n_interval_blocks, init_strings, check_string_bytes, check_sblock)
20909 (init_float, free_float, n_cons_blocks, init_cons, all_vectors)
20910 (n_vectors, symbol_block, symbol_block_index, symbol_free_list)
20911 (n_symbol_blocks, init_symbol, marker_block, marker_free_list)
20912 (n_marker_blocks, init_marker, valid_pointer_p, make_pure_float)
20913 (last_marked, mark_object_loop_halt): Make static.
20914
20915 * frame.c (syms_of_frame) <delete-frame-functions>:
20916 Fix typo in docstring.
20917
20918 2007-10-25 Juanma Barranquero <lekktu@gmail.com>
20919
20920 * w32.c (init_environment): Fix tiny memory leak.
20921 (w32_get_resource): Remove unused variable `ok'.
20922
20923 2007-10-25 Stefan Monnier <monnier@iro.umontreal.ca>
20924
20925 Make `window-system' into a keyboard-local variable (rather than
20926 frame-local as done originally by multi-tty).
20927
20928 * keyboard.h (struct kboard): Add Vwindow_system.
20929 * keyboard.c (init_kboard): Set a default for Vwindow_system.
20930 (mark_kboards): Mark Vwindow_system.
20931
20932 * dispnew.c (syms_of_display) <window-system>: Declare terminal-local.
20933 (init_display): Don't set the obsolete `window-system' frame-param.
20934
20935 * xterm.c (x_term_init):
20936 * w32term.c (w32_create_terminal):
20937 * term.c (init_tty): Set Vwindow_system.
20938 * macterm.c (mac_create_terminal): Set a keyboard (missing piece of the
20939 multi-tty merge maybe?), copied from w32term.c. Set Vwindow_system.
20940
20941 * xfns.c (Fx_create_frame, x_create_tip_frame):
20942 * w32fns.c (Fx_create_frame, x_create_tip_frame):
20943 * macfns.c (Fx_create_frame):
20944 Don't set the obsolete `window-system' frame-param.
20945
20946 * frame.h (Qwindow_system): Remove.
20947 * frame.c (Qwindow_system): Remove. In `syms_of_frame' as well.
20948 (Fmake_terminal_frame): Don't set obsolete `window-system' frame-param.
20949
20950 2007-10-24 Richard Stallman <rms@gnu.org>
20951
20952 * frame.c (x_figure_window_size): For fullscreen case,
20953 set USPosition | PPosition without clobbering rest of window_prompting.
20954
20955 * keyboard.c (Fcurrent_idle_time): Doc fix.
20956
20957 * print.c (Fwith_output_to_temp_buffer): Doc fix.
20958
20959 2007-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
20960
20961 * process.c (unwind_request_sigio): Only define if __ultrix__.
20962
20963 * callproc.c (child_setup): Remove spurious *.
20964
20965 * lisp.h (Fget_text_property): Declare.
20966 (have_menus_p): Declare it here rather than in sys-dep header files.
20967 * macterm.h (have_menus_p):
20968 * msdos.h (have_menus_p):
20969 * xterm.h (have_menus_p): Remove.
20970
20971 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
20972 (Fmake_variable_frame_local): Just check the variable's const-ness
20973 rather than checking nil or t.
20974
20975 2007-10-22 Jason Rumney <jasonr@gnu.org>
20976
20977 * w32fns.c: Include math.h.
20978 (w32_abort): Declaration moved to nt/config.nt.
20979
20980 * s/ms-w32.h (HAVE_STDLIB_H): Define.
20981 (abort): Redefinition moved to nt/config.nt.
20982
20983 * m/windowsnt.h: Remove.
20984
20985 2007-10-22 Juanma Barranquero <lekktu@gmail.com>
20986
20987 * emacs.c (Fdump_emacs): Fix typo in message.
20988 (syms_of_emacs) <kill-emacs-hook>: Fix typo in docstring.
20989 <installation-directory>: Reflow docstring.
20990
20991 2007-10-22 Juri Linkov <juri@jurta.org>
20992
20993 * minibuf.c: Allow minibuffer default to be a list of default values.
20994 With empty input use the first element of this list as returned default.
20995 (string_to_object)
20996 (read_minibuf_noninteractive): If defalt is cons, set val to its car.
20997 (read_minibuf): If defalt is cons, set histstring to its car.
20998 (Fread_string): If default_value is cons, set val to its car.
20999 (Fread_buffer): If def is cons, use its car.
21000 (Fcompleting_read): If defalt is cons, set val to its car.
21001
21002 2007-10-21 Michael Albinus <michael.albinus@gmx.de>
21003
21004 * fileio.c (Fcopy_file): Call file name handler with preserve_uid_gid.
21005
21006 2007-10-20 Juanma Barranquero <lekktu@gmail.com>
21007
21008 * doc.c (Fdocumentation): Check for advice in all cases.
21009
21010 2007-10-19 Chong Yidong <cyd@stupidchicken.com>
21011
21012 * Makefile.in [HAVE_LIBRESOLV]: Add -lresolv to linker flags.
21013
21014 2007-10-19 Richard Stallman <rms@gnu.org>
21015
21016 * doc.c (Fdocumentation): Check for and handle an advised function.
21017
21018 2007-10-19 Juanma Barranquero <lekktu@gmail.com>
21019
21020 * process.c (Fset_process_filter): Doc fix.
21021
21022 2007-10-18 Stefan Monnier <monnier@iro.umontreal.ca>
21023
21024 * keyboard.c (read_key_sequence): Undo a change introduced by multi-tty
21025 which caused key-translation-map to applied repeatedly (thus breaking
21026 double-mode).
21027
21028 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21029
21030 * xselect.c (x_own_selection, x_handle_selection_clear)
21031 (x_clear_frame_selections):
21032 * w32menu.c (list_of_panes, list_of_items):
21033 * w32fns.c (w32_color_map_lookup, Fx_create_frame, Fx_display_list):
21034 * textprop.c (validate_plist, interval_has_all_properties)
21035 (interval_has_some_properties, interval_has_some_properties_list)
21036 (add_properties, text_property_list):
21037 * process.c (Fget_buffer_process, list_processes_1, status_notify):
21038 * minibuf.c (Fassoc_string):
21039 * macselect.c (x_own_selection, x_clear_frame_selections)
21040 (Fx_disown_selection_internal):
21041 * keymap.c (Fcommand_remapping, where_is_internal, describe_map_tree):
21042 Use CONSP rather than !NILP and XC[AD]R rather than Fc[ad]r.
21043
21044 2007-10-17 Chong Yidong <cyd@stupidchicken.com>
21045
21046 * process.c: Link to libs for calling res_init() if available.
21047 (Fmake_network_process): Call res_init() before getaddrinfo or
21048 gethostbyname, if possible.
21049
21050 2007-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
21051
21052 * lread.c (read1): Set pvectype for char_tables.
21053
21054 * lisp.h (XMISCANY, XMARKER, XINTFWD, XBOOLFWD, XOBJFWD, XOVERLAY)
21055 (XBUFFER_OBJFWD, XBUFFER_LOCAL_VALUE, XKBOARD_OBJFWD, XSAVE_VALUE):
21056 Add type checks.
21057 (SOME_BUFFER_LOCAL_VALUEP, GC_SOME_BUFFER_LOCAL_VALUEP): Remove.
21058
21059 * alloc.c (free_misc): Use XMISCTYPE.
21060 (live_misc_p, gc_sweep): Use Lisp_Misc_Any.
21061
21062 2007-10-17 Glenn Morris <rgm@gnu.org>
21063
21064 * minibuf.c (Qcompletion_ignore_case): New Lisp_Object.
21065 (syms_of_minibuf): Add Qcompletion_ignore_case.
21066 * dired.c (Qcompletion_ignore_case): Change to external.
21067 (syms_of_dired) [VMS]: Remove Qcompletion_ignore_case.
21068 * fileio.c (Qcompletion_ignore_case): New external Lisp_Object.
21069 (Fread_file_name): Use it rather than intern'ing.
21070
21071 * coding.c (Qcompletion_ignore_case): New external Lisp_Object.
21072 (Fread_coding_system): Ignore case of user input.
21073
21074 2007-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21075
21076 * xdisp.c (handle_display_prop): Ignore display specs after
21077 replacing one when string text is being replaced.
21078 (handle_single_display_spec): Pretend as if characters with display
21079 property haven't been consumed only when buffer text is being replaced.
21080
21081 2007-10-16 Stefan Monnier <monnier@iro.umontreal.ca>
21082
21083 * xfns.c (Fx_create_frame, Fx_display_list):
21084 * window.c (window_fixed_size_p, enlarge_window)
21085 (shrink_window_lowest_first):
21086 * macterm.c (init_font_name_table):
21087 * macfns.c (Fx_create_frame, Fx_display_list):
21088 * lread.c (close_load_descs):
21089 * keyboard.c (read_char_x_menu_prompt):
21090 * fns.c (Fmember, Fmemql, Fdelete, Fset_char_table_parent):
21091 * coding.c (code_convert_region_unwind): Test the type of an object
21092 rather than just !NILP before extracting data from it.
21093
21094 * alloc.c (Fpurecopy): Set the pvec tag on pseudo vectors.
21095
21096 * lisp.h (enum Lisp_Misc_Type): Del Lisp_Misc_Some_Buffer_Local_Value.
21097 (XMISCANY): New macro.
21098 (XMISCTYPE): Use it.
21099 (struct Lisp_Misc_Any): New type.
21100 (union Lisp_Misc): Use it.
21101 (struct Lisp_Buffer_Local_Value): Add `local_if_set' bit.
21102 * data.c (Fboundp, store_symval_forwarding, swap_in_global_binding)
21103 (find_symbol_value, set_internal, default_value, Fset_default)
21104 (Fmake_variable_buffer_local, Fmake_local_variable)
21105 (Fkill_local_variable, Fmake_variable_frame_local, Flocal_variable_p)
21106 (Flocal_variable_if_set_p, Fvariable_binding_locus):
21107 The SOME_BUFFER_LOCAL_VALUEP distinction is replaced by local_if_set.
21108 * alloc.c (allocate_buffer): Set the size and tag.
21109 (allocate_misc, mark_maybe_object, mark_object, survives_gc_p):
21110 Use XMISCANY.
21111 (die): Follow the GNU convention for error messages.
21112 * print.c (print_object): SOME_BUFFER_LOCAL_VALUEP -> local_if_set.
21113 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Don't set the
21114 tag any more.
21115 (set_buffer_internal_1):
21116 * frame.c (store_frame_param):
21117 * eval.c (specbind):
21118 * xdisp.c (select_frame_for_redisplay): Drop SOME_BUFFER_LOCAL_VALUEP.
21119
21120 * doc.c (Fsnarf_documentation): Simplify.
21121
21122 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21123
21124 * w32term.c (w32_font_is_double_byte, my_create_scrollbar): Make static.
21125 (syms_of_w32term) <w32-enable-unicode-output>: Fix typo in docstring.
21126
21127 2007-10-14 Stefan Monnier <monnier@iro.umontreal.ca>
21128
21129 * buffer.c (Fmake_indirect_buffer): Set the buffer's tag.
21130
21131 2007-10-14 Juanma Barranquero <lekktu@gmail.com>
21132
21133 * eval.c (do_autoload): Don't save autoloads.
21134
21135 * data.c (Ffset): Save autoload of the function being set.
21136
21137 2007-10-07 John Paul Wallington <jpw@pobox.com>
21138
21139 * xfns.c (x_create_tip_frame): Set the `display-type' frame
21140 parameter before setting up faces.
21141
21142 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21143
21144 * ccl.c (Fregister_code_conversion_map):
21145 * keyboard.c (append_tool_bar_item): Reformat last change.
21146
21147 * lisp.h (eabs): Rename from `abs'. All callers changed.
21148
21149 2007-10-05 Dmitry Antipov <dmantipov@yandex.ru>
21150
21151 * buffer.c (add_overlay_mod_hooklist):
21152 * ccl.c (Fregister_ccl_program, Fregister_code_conversion_map):
21153 * fontset.c (make_fontset):
21154 * keyboard.c (GROW_RAW_KEYBUF, menu_bar_items, menu_bar_item)
21155 (append_tool_bar_item):
21156 * macmenu.c (grow_menu_items):
21157 * w32menu.c (grow_menu_items):
21158 * xmenu.c (grow_menu_items): Use larger_vector.
21159
21160 2007-10-13 Eli Zaretskii <eliz@gnu.org>
21161
21162 * msdos.c (dos_rawgetc): Undo last change (there's no ``leaving
21163 selected frame'' on MSDOS).
21164
21165 2007-10-12 Martin Rudalics <rudalics@gmx.at>
21166
21167 * frame.c (Qexplicit_name): New variable.
21168 (x_report_frame_params): Report it in parameter alist.
21169 (syms_of_frame): Intern and staticpro it.
21170
21171 2007-10-10 Patrick Mahan <mahan@mahan.org> (tiny change)
21172
21173 * macfns.c (x_create_tip_frame): Set terminal for frame.
21174
21175 2007-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
21176
21177 * frame.c (Qenvironment): Remove.
21178 (syms_of_frame) <Qenvironment>: Don't initialize.
21179 (Fdelete_frame): Don't treat the `environment' param specially.
21180 * frame.h (Qenvironment): Don't declare.
21181 * callproc.c (set_initial_environment): Don't set unused frame param.
21182
21183 * frame.c (Fframe_with_environment): Remove.
21184 (syms_of_frame) <Sframe_with_environment>: Don't declare.
21185
21186 * lisp.h (Fframe_with_environment): Don't declare.
21187
21188 2007-10-10 Juanma Barranquero <lekktu@gmail.com>
21189
21190 * indent.c (indent_tabs_mode, last_known_column)
21191 (last_known_column_modified): Make static.
21192 (syms_of_indent) <indent-tabs-mode>: Remove redundant info in docstring.
21193
21194 2007-10-10 Katsumi Yamaoka <yamaoka@jpl.org>
21195
21196 * puresize.h (BASE_PURESIZE): Increase to 1170000.
21197
21198 2007-10-09 Jason Rumney <jasonr@gnu.org>
21199
21200 * w32term.c (x_set_window_size): Disable code that attempts to tell
21201 Lisp code about a size change before it actually happens.
21202
21203 2007-10-09 Richard Stallman <rms@gnu.org>
21204
21205 * xdisp.c (handle_invisible_prop): After setting up an ellipsis,
21206 return HANDLED_RETURN.
21207
21208 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21209
21210 * keyboard.c (kbd_buffer_get_event): Break loop waiting for input
21211 when there's an unread command event.
21212
21213 * frame.c (focus_follows_mouse): Move here from frame.el to allow
21214 window autoselection act appropriately when leaving selected frame.
21215 (syms_of_frame): Initialize focus_follows_mouse.
21216 * frame.h (focus_follows_mouse): Extern it.
21217 * macterm.c (XTread_socket): When focus_follows_mouse is nil
21218 make SELECT_WINDOW_EVENT only if we don't leave the selected frame.
21219 * msdos.c (dos_rawgetc): Likewise.
21220 * w32term.c (w32_read_socket): Likewise.
21221 * xterm.c (handle_one_xevent): Likewise.
21222 * xdisp.c (syms_of_xdisp): In doc-string of
21223 mouse-autoselect-window mention focus-follows-mouse.
21224
21225 2007-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
21226
21227 * macterm.c (mac_load_query_font): Fix missing return value.
21228 [USE_CG_DRAWING] (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap):
21229 Add BLOCK_INPUT.
21230
21231 2007-10-08 Richard Stallman <rms@gnu.org>
21232
21233 * xdisp.c (get_window_cursor_type): Implement documented behavior
21234 for cursor-in-non-selected-windows = t.
21235
21236 2007-10-08 Jason Rumney <jasonr@gnu.org>
21237
21238 * w32.c (w32_get_resource): Always close registry keys.
21239
21240 2007-10-08 Jason Rumney <jasonr@gnu.org>
21241
21242 * makefile.w32-in (LIBS): Add COMCTL32.
21243
21244 * w32fns.c (globals_of_w32fns): Init common controls.
21245
21246 2007-10-08 Richard Stallman <rms@gnu.org>
21247
21248 * image.c (our_memory_buffer): Rename from omfib_buffer.
21249
21250 2007-10-08 Richard Stallman <rms@gnu.org>
21251
21252 * buffer.c (Foverlays_at): Doc fix.
21253
21254 2007-10-08 Stefan Monnier <monnier@iro.umontreal.ca>
21255
21256 * fns.c (Fplist_put): Preserve uneven tail data.
21257
21258 2007-10-08 Peter O'Gorman <bug-gnu-emacs@mlists.thewrittenword.com> (tiny change)
21259
21260 * termhooks.h (enum event_kind): Remove trailing comma.
21261
21262 * frame.h (enum): Remove trailing comma.
21263
21264 2007-10-08 Dhruva Krishnamurthy <dhruvakm@gmail.com> (tiny change)
21265
21266 * w32proc.c (delete_child): Don't terminate threads of zombies.
21267
21268 2007-10-08 Martin Rudalics <rudalics@gmx.at>
21269
21270 * keyboard.h (struct kboard): New elt Vlast_repeatable_command.
21271
21272 * keyboard.c (syms_of_keyboard): Set up new Lisp variable
21273 last-repeatable-command.
21274 (init_kboard): Initialize Vlast_repeatable_command.
21275 (command_loop_1): Set it to real_this_command unless that was
21276 bound to an input event.
21277 (mark_kboards): Mark it.
21278
21279 2007-10-08 Richard Stallman <rms@gnu.org>
21280
21281 * eval.c (condition-case): Doc fix.
21282
21283 2007-10-08 Masatake YAMATO <jet@gyve.org>
21284
21285 * xfaces.c (tty_supports_face_attributes_p): Fix code
21286 for LFACE_INVERSE_INDEX and LFACE_BACKGROUND_INDEX; code
21287 was copied and not edited.
21288
21289 2007-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
21290
21291 Add new `input-decode-map' keymap and use it for terminal
21292 escape sequences.
21293 * keyboard.h (struct kboard): Add Vinput_decode_map.
21294 Remove Vlocal_key_translation_map.
21295 * keyboard.c (read_key_sequence): Add support for input-decode-map.
21296 (init_kboard): Init input-decode-map.
21297 Replace local-key-translation-map back with key-translation-map.
21298 (syms_of_keyboard): Declare input-decode-map.
21299 Remove local-key-translation-map. Update docstrings.
21300 (mark_kboards): Mark Vinput_decode_map.
21301 Don't mark Vlocal_key_translation_map.
21302 * keymap.c (Fdescribe_buffer_bindings): Describe input-decode-map.
21303 Replace local-key-translation-map back with key-translation-map.
21304 * term.c (term_get_fkeys_1, CONDITIONAL_REASSIGN):
21305 Bind in input-decode-map rather than function-key-map.
21306
21307 * lisp.h (XSETPSEUDOVECTOR): Don't set the tag anymore.
21308 This was made redundant by the previous introduction of XSETPVECTYPE.
21309
21310 2007-10-09 Richard Stallman <rms@gnu.org>
21311
21312 * image.c (free_bitmap_record): Rename from Free_Bitmap_Record.
21313
21314 2007-09-29 Richard Stallman <rms@gnu.org>
21315
21316 * eval.c (internal_condition_case_2, internal_condition_case_1)
21317 (internal_condition_case): Reenable abort if x_catching_errors ()
21318 to see if that really happens and why.
21319
21320 2007-10-06 Andreas Schwab <schwab@suse.de>
21321
21322 * fileio.c (Fwrite_region): Ignore EINVAL error from fsync.
21323
21324 2007-10-04 Juanma Barranquero <lekktu@gmail.com>
21325
21326 * image.c (syms_of_image) <image-types>: Fix typo in docstring.
21327
21328 2007-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
21329
21330 * frame.h (struct frame): Don't try to GC-mark menu_bar_items_used.
21331
21332 2007-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
21333
21334 * window.h (struct window):
21335 * window.c (struct save_window_data, struct saved_window):
21336 * termhooks.h (struct terminal):
21337 * process.h (struct Lisp_Process):
21338 * frame.h (struct frame):
21339 * buffer.h (struct buffer):
21340 * lisp.h (struct Lisp_Vector, struct Lisp_Char_Table)
21341 (struct Lisp_Bool_Vector, struct Lisp_Subr, struct Lisp_Hash_Table):
21342 The size field of (pseudo)vectors is now unsigned.
21343 (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Simplify accordingly.
21344
21345 * lisp.h (struct Lisp_Hash_Table): Move non-traced elements at the end.
21346 Turn `count' into an integer.
21347
21348 * fns.c (make_hash_table, hash_put, hash_remove, hash_clear)
21349 (sweep_weak_table, sweep_weak_hash_tables, Fhash_table_count):
21350 * print.c (print_object) <HASH_TABLE_P>: `count' is an int.
21351 * alloc.c (allocate_hash_table): Use ALLOCATE_PSEUDOVECTOR.
21352 (mark_object) <HASH_TABLE_P>: Use mark_vectorlike.
21353
21354 * alloc.c (allocate_pseudovector): New fun.
21355 (ALLOCATE_PSEUDOVECTOR): New macro.
21356 (allocate_window, allocate_terminal, allocate_frame)
21357 (allocate_process): Use it.
21358 (mark_vectorlike): New function.
21359 (mark_object) <FRAMEP, WINDOWP, BOOL_VECTOR_P, VECTORP>: Use it.
21360 (mark_terminals): Use it.
21361 (Fmake_bool_vector, Fmake_char_table, make_sub_char_table)
21362 (Fmake_byte_code): Use XSETPVECTYPE.
21363
21364 * frame.c (Fframe_parameters): Minor simplification.
21365
21366 * insdel.c (adjust_markers_for_insert): Generalize assertion checks.
21367
21368 * marker.c (Fmarker_buffer): Make test for odd case into a failure.
21369
21370 * buffer.c (Fget_buffer_create, init_buffer_once):
21371 * lread.c (defsubr):
21372 * window.c (Fcurrent_window_configuration): Use XSETPVECTYPE.
21373
21374 * lisp.h (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG): Don't let them be
21375 defined differently in the m/*.h files.
21376 (XCHAR_TABLE, XBOOL_VECTOR): Add assertion checking.
21377 (XSETPVECTYPE): New macro.
21378 (XSETPSEUDOVECTOR): Use it.
21379
21380 * buffer.c (syms_of_buffer) <local-abbrev-table>: Move from abbrev.c.
21381 (DEFVAR_PER_BUFFER, defvar_per_buffer): Move from lisp.h and lread.c.
21382
21383 * lisp.h (defvar_per_buffer, DEFVAR_PER_BUFFER):
21384 * lread.c (defvar_per_buffer):
21385 * abbrev.c (syms_of_abbrev) <local-abbrev-tabl>: Move to buffer.c.
21386
21387 * window.c (candidate_window_p): Only consider as visible frames that
21388 are on the same terminal.
21389
21390 * m/ibms390x.h (MARKBIT): Remove unused macro.
21391
21392 2007-10-01 Juanma Barranquero <lekktu@gmail.com>
21393
21394 * lread.c (Fload): Fix typo in docstring.
21395
21396 2007-10-01 Michaël Cadilhac <michael@cadilhac.name>
21397
21398 * floatfns.c (Fexpt): Manually check for overflows, so that a power
21399 of a non-zero value can't yield zero.
21400
21401 2007-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
21402
21403 * term.c (term_clear_mouse_face, term_mouse_highlight)
21404 (tty_write_glyphs_with_face): Only define is HAVE_GPM.
21405
21406 * print.c (safe_debug_print): Use XHASH.
21407
21408 * lisp.h (DECL_ALIGN, USE_LSB_TAG): Move logic to before definition of
21409 Lisp elements such as tags.
21410 (XHASH): New macro.
21411 (EQ): Use it.
21412 (SREF, SSET, STRING_COPYIN): Use SDATA.
21413 (VOID_TO_LISP, CVOID_TO_LISP, LISP_TO_VOID, LISP_TO_CVOID): Remove.
21414
21415 * alloc.c (mark_terminal): Remove left-over declaration.
21416 (enum mem_type): Replace all vector subtypes -> MEM_TYPE_VECTORLIKE.
21417 (allocate_vectorlike): Remove type argument. Adjust callers.
21418 (live_vector_p, mark_maybe_pointer, valid_lisp_object_p):
21419 Only handle the one remaining MEM_TYPE_VECTORLIKE.
21420
21421 * alloc.c (MALLOC_BLOCK_INPUT, MALLOC_UNBLOCK_INPUT): New macros
21422 to avoid unnecessary BLOCK_INPUTs when SYNC_INPUT is used.
21423 (xmalloc, xrealloc, xfree, lisp_malloc, lisp_free, lisp_align_malloc)
21424 (lisp_align_free, make_interval, allocate_string, allocate_string_data)
21425 (make_float, Fcons, allocate_vectorlike, Fmake_symbol, allocate_misc):
21426 Use them.
21427
21428 * xfaces.c (load_face_font, free_realized_face, clear_face_gcs):
21429 Don't let signal handlers run when a GC is freed but not yet NULL'ed.
21430 (x_free_gc): Remove BLOCK_INPUT since it's now redundant.
21431
21432 2007-09-28 Dan Nicolaescu <dann@ics.uci.edu>
21433
21434 * Makefile.in (lisp, shortlisp): Delete server.elc, it is not
21435 loaded by default.
21436
21437 2007-09-28 Stefan Monnier <monnier@iro.umontreal.ca>
21438
21439 * term.c (Fgpm_mouse_start): Don't signal an error if already activated
21440 on this tty.
21441 (Fgpm_mouse_stop): Only deactivate if it was activated on this tty.
21442
21443 * term.c (mouse_face_window): Rename from Qmouse_face_window.
21444 Update all users.
21445 (handle_one_term_event): Use Gpm_DrawPointer.
21446 (Fgpm_mouse_start): Rename from Fterm_open_connection.
21447 Signal errors instead of returning nil. Always return nil.
21448 (Fgpm_mouse_stop): Rename from Fterm_close_connection.
21449 Make it a noop if gpm-mouse was not activated.
21450 (syms_of_term): Update names.
21451
21452 2007-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
21453
21454 * sysdep.c (narrow_foreground_group, widen_foreground_group): Static.
21455 (init_sys_modes): Check that gpm_tty is the current tty.
21456
21457 * alloc.c (allocate_terminal): Set the vector size to only count the
21458 lisp fields. Initialize those to nil.
21459 (mark_object): Don't treat terminals specially.
21460 (mark_terminal): Remove.
21461 (mark_terminals): Use mark_object instead.
21462
21463 * termhooks.h (struct terminal): Move all Lisp_Object fields traced by
21464 the GC to the beginning.
21465
21466 * indent.h:
21467 * indent.c: Use EMACS_INT for ints coming from Elisp data.
21468
21469 * indent.c (Fmove_to_column): Use EMACS_INT for buffer positions.
21470
21471 2007-09-25 Jason Rumney <jasonr@gnu.org>
21472
21473 * frame.c (make_terminal_frame): Remove special case for WINDOWSNT.
21474
21475 * w32console.c (create_w32cons_output): Remove.
21476
21477 * term.c (init_tty): Call init_sys_modes on WINDOWSNT also.
21478
21479 * sysdep.c (init_sys_modes): Use set_terminal_modes_hook.
21480 (reset_sys_modes): Use reset_terminal_modes_hook.
21481
21482 2007-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
21483
21484 * eval.c (do_autoload): Don't output any message.
21485
21486 2007-09-24 Juri Linkov <juri@jurta.org>
21487
21488 * emacs.c (standard_args): Change priority of "--no-splash"
21489 from 40 to 3. Add "--no-desktop" with the same priority.
21490
21491 2007-09-23 Dmitry Antipov <dmantipov@yandex.ru>
21492
21493 * alloc.c (gc_sweep): Check cons cell mark bits word by word
21494 and optimize the case where they are all 1.
21495
21496 2007-09-23 Johannes Weiner <hannes@saeurebad.de>
21497
21498 * lisp.h (abs): Define if not defined.
21499 * keyboard.c, sound.c, w32term.c, xfaces.c, xterm.c:
21500 Don't define `abs', since it's defined in lisp.h.
21501
21502 2007-09-22 Eli Zaretskii <eliz@gnu.org>
21503
21504 * term.c (DEV_TTY): New macro. Provide a definition for MS-Windows.
21505 (FRAME_TERMCAP_P) [WINDOWSNT]: Don't define to zero.
21506 (Fcontrolling_tty_p, Fresume_tty, dissociate_if_controlling_tty)
21507 (init_tty): Use DEV_TTY instead of "/dev/tty".
21508 [WINDOWSNT]: No need to protect from NAME arg being null.
21509
21510 2007-09-21 Dan Nicolaescu <dann@ics.uci.edu>
21511
21512 * term.c (Fsuspend_tty): Run suspend-tty-functions before cleaning
21513 up the tty state.
21514
21515 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21516
21517 * termhooks.h (term_gpm): Delete. Use gpm_tty's NULLness instead.
21518 (gpm_tty): Change its type.
21519 * term.c (term_gpm): Delete. Use gpm_tty's NULLness instead.
21520 (gpm_tty): Change its type and initialize it.
21521 (Fterm_open_connection): Check the frame is indeed a tty.
21522 Use the new gpm_tty.
21523 (Fterm_close_connection): Use the new gpm_tty.
21524 * keyboard.c (tty_read_avail_input): Use the new gpm_tty.
21525 * sysdep.c (init_sys_modes): term_gpm -> gpm_tty.
21526
21527 2007-09-21 Juanma Barranquero <lekktu@gmail.com>
21528
21529 * w32term.c (x_draw_glyph_string): Use strike_through_color, not
21530 underline_color, to draw strike-through.
21531
21532 2007-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
21533
21534 * lisp.h (allocate_terminal): Declare.
21535
21536 * window.c (candidate_window_p): Consider frames that are being placed
21537 by the user as somewhere between visible and iconified.
21538 (window_loop): Prefer windows on the current frame.
21539 (Fselect_window): Move the use of select-frame to the beginning so we
21540 can just delegate all the work (it'll call us back anyway).
21541
21542 * frame.c (Qdisplay_environment_variable):
21543 * frame.h (Qdisplay_environment_variable): Delete.
21544
21545 * .gdbinit (xbacktrace): Print the arg's address rather than the value
21546 of the first arg, since that value may be a union.
21547
21548 * callproc.c (child_setup, getenv_internal): Use the frame's `display'
21549 parameter rather than Qdisplay_environment_variable. If all else
21550 fails, look for DISPLAY in initial-environment.
21551
21552 2007-09-21 Glenn Morris <rgm@gnu.org>
21553
21554 * Makefile.in (emacstool): Remove target.
21555 (lisp, shortlisp): Remove termdev.elc.
21556
21557 2007-09-21 Markus Triska <markus.triska@gmx.at>
21558
21559 * xterm.c (x_delete_display): Compile session management conditionally.
21560
21561 2007-09-20 Stefan Monnier <monnier@iro.umontreal.ca>
21562
21563 * callproc.c (getenv_internal_1): New function.
21564 (getenv_internal): Use it.
21565 (Fgetenv_internal): Use it. Accept an env-list as optional arg.
21566
21567 * terminal.c (get_terminal): Don't accept ints to represent terminals.
21568 (Fterminal_name, Fterminal_parameters, Fterminal_parameter)
21569 (Fset_terminal_parameter): Work with dead terminals as well.
21570 (Fmodify_terminal_parameters): Remove.
21571
21572 * terminal.c (get_terminal): Handle terminals.
21573 Make sure the terminal returned is live.
21574 (create_terminal): Use allocate_terminal.
21575 (mark_terminals): Move to alloc.c.
21576 (delete_terminal): Use terminal->name as liveness status.
21577 NULL out fields after freeing their contents.
21578 Don't deallocate the object.
21579 (Fframe_terminal): Use FRAME_TERMINAL. Return the terminal object
21580 rather than an int.
21581 (Fterminal_live_p): Accept non-integer arguments.
21582 (Fterminal_list): Return terminal objects rather than an ints.
21583
21584 * alloc.c (enum mem_type): New member for `terminal' objects.
21585 (allocate_terminal): New function.
21586 (mark_maybe_pointer, valid_lisp_object_p, mark_object):
21587 Handle terminals.
21588 (mark_terminal): New fun.
21589 (mark_terminals): Move from terminal.c.
21590
21591 * term.c (get_tty_terminal): Don't treat output_initial specially.
21592 (Fsuspend_tty, Fresume_tty): Use terminal objects rather than ints.
21593 (delete_tty): Use terminal->name as liveness status.
21594
21595 * termhooks.h (struct terminal): Make it into a pseudovector.
21596 Remove `deleted' replaced by checking `name's nullness.
21597
21598 * print.c (print_object): Handle terminals.
21599
21600 * lisp.h (enum pvec_type): New `terminal' pseudovector.
21601 (XTERMINAL, XSETTERMINAL, TERMINALP, GC_TERMINALP): New macros.
21602
21603 * frame.c (make_terminal_frame):
21604 * keyboard.c (tty_read_avail_input):
21605 * w32term.c (x_delete_terminal):
21606 * xfns.c (Fx_create_frame, x_create_tip_frame):
21607 * xterm.c (x_delete_terminal): Use terminal->name as liveness status.
21608
21609 2007-09-20 Glenn Morris <rgm@gnu.org>
21610
21611 * process.c (Fmake_network_process): Doc fix.
21612
21613 2007-09-19 Jason Rumney <jasonr@gnu.org>
21614
21615 * dispextern.h (w32_init_fringe, mac_init_fringe): Declare rif argument.
21616
21617 2007-09-19 Michaël Cadilhac <michael@cadilhac.name>
21618
21619 * coding.c (detect_eol_type, detect_eol_type_in_2_octet_form):
21620 Fix a C warning regarding variable constness.
21621
21622 * xterm.c (handle_one_xevent): Fix a C warning.
21623
21624 2007-09-18 Jason Rumney <jasonr@gnu.org>
21625
21626 * w32fns.c (Fx_focus_frame): Rename from Fw32_focus_frame.
21627
21628 2007-09-17 Jan Djärv <jan.h.d@swipnet.se>
21629
21630 * gtkutil.c (gdpy_def): New variable.
21631 (xg_initialize): Initialize gdpy_def.
21632 (xg_display_close): If no other display exists, set gdpy_def to a
21633 new connection.
21634
21635 2007-09-16 Jan Djärv <jan.h.d@swipnet.se>
21636
21637 * gtkutil.c (xg_get_image_for_pixmap): Always create a GdkPixbuf
21638 when we have no file name for the icon.
21639 (xg_tool_bar_expose_callback): Remove.
21640 (xg_create_tool_bar): Don't connect expose signal to
21641 xg_tool_bar_expose_callback.
21642 (xg_get_file_with_chooser): Move GCPRO1 after declarations.
21643
21644 2007-09-16 Andreas Schwab <schwab@suse.de>
21645
21646 * alloc.c (reset_malloc_hooks): Set the hooks to the previous
21647 values instead of zapping them.
21648
21649 2007-09-14 Glenn Morris <rgm@gnu.org>
21650
21651 * fringe.c (init_fringe_bitmap) <swap_nibble>: Move to file scope.
21652 * gtkutil.c (xg_separator_p) <separator_names>: Move to file scope.
21653 * image.c (our_memory_fill_input_buffer) <buffer>: Move to file
21654 scope and rename to omfib_buffer for clarity.
21655 (gif_load) <interlace_start, interlace_increment>: Move to file scope.
21656
21657 2007-09-14 Kenichi Handa <handa@m17n.org>
21658
21659 * xterm.c (handle_one_xevent): Skip decoding if nbytes is zero.
21660
21661 2007-09-13 Jason Rumney <jasonr@gnu.org>
21662
21663 * fringe.c (w32_init_fringe, mac_init_fringe): Add rif argument.
21664
21665 * w32term.c (w32_term_init): Pass rif to w32_init_fringe.
21666
21667 * macterm.c (mac_initialize): Don't call mac_init_fringe here.
21668 (mac_term_init): Call here instead, passing rif.
21669
21670 2007-09-13 Glenn Morris <rgm@gnu.org>
21671
21672 * s/hpux.h: No longer define `static' as nothing.
21673
21674 2007-09-13 Johan Bockgård <bojohan@gnu.org>
21675
21676 * callint.c (Fcall_interactively): Remove unused var `fun'.
21677
21678 2007-09-12 Romain Francoise <romain@orebokech.com>
21679
21680 * window.c (prefer_window_split_horizontally, display_buffer):
21681 Revert 2007-09-08 change.
21682
21683 2007-09-12 Glenn Morris <rgm@gnu.org>
21684
21685 * alloca.c: Remove file.
21686 * Makefile.in (alloca): Do not undef.
21687 (allocaobj, alloca.o): Remove.
21688 (otherobj): Remove allocaobj.
21689 * keyboard.c (command_loop_1): Remove #ifdef C_ALLOCA block.
21690 * regex.c (C_ALLOCA): Remove all references and code that was only
21691 used when this was defined.
21692 * search.c (boyer_moore): Remove #ifdef C_ALLOCA block.
21693 * xmenu.c (xmenu_show): Remove #ifdef C_ALLOCA block.
21694 * m/ibms390x.h, m/sh3el.h (C_ALLOCA): Remove references to this.
21695
21696 * Makefile.in (SOURCES, unlock, relock): Delete.
21697
21698 * gtkutil.c (cnt): Rename to menu_grab_callback_cnt for clarity.
21699 (menu_grab_callback): All uses changed.
21700
21701 * xselect.c (cnt): Rename to x_reply_selection_request_cnt for clarity.
21702 (x_reply_selection_request): All uses changed.
21703
21704 2007-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
21705
21706 * lread.c (load_warn_old_style_backquotes): Change message to look
21707 better when it appears in the middle of byte-compiler messages.
21708
21709 2007-09-10 Dan Nicolaescu <dann@ics.uci.edu>
21710
21711 * s/darwin.h (MULTI_KBOARD): Only define for Carbon.
21712
21713 * xterm.c (x_create_terminal): Add comment.
21714
21715 * term.c (clear_tty_hooks, set_tty_hooks): Add comments.
21716
21717 2007-09-10 Richard Stallman <rms@gnu.org>
21718
21719 * xterm.c (x_term_init): Give error if can't open DISPLAY_NAME.
21720
21721 2007-09-10 Michaël Cadilhac <michael@cadilhac.name>
21722
21723 * lisp.h (struct Lisp_Subr): Rename `prompt' field to `intspec'.
21724 (DEFUN): Document `intspec', use it instead of `prompt'.
21725
21726 * eval.c (Fcommandp): Change `->prompt' to `->intspec'.
21727
21728 * data.c (Finteractive_form): If the interactive specification starts
21729 with a `(', use it as a Lisp form.
21730
21731 * fileio.c (Fset_file_modes): Add an interactive spec that reads a file
21732 name and file modes.
21733
21734 * callint.c (Fcall_interactively): Comment fixes.
21735
21736 2007-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
21737
21738 * callint.c (Fcall_interactively): Use Finteractive_form also for subrs
21739 and compiled functions.
21740
21741 2007-09-08 Fredrik Axelsson <f.axelsson@gmail.com>
21742
21743 * window.c (prefer_window_split_horizontally): New variable.
21744 (display_buffer): Consider splitting window horizontally depending
21745 on prefer_window_split_horizontally.
21746
21747 2007-09-08 Eli Zaretskii <eliz@gnu.org>
21748
21749 * sysdep.c [WINDOWSNT]: Don't include sysselect.h.
21750
21751 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21752
21753 * s/cygwin.h (GC_MARK_STACK): Enable conservative stack marking.
21754
21755 * frame.c (x_set_frame_parameters): Check number is positive before
21756 using XFASTINT.
21757
21758 * window.c (freeze_window_start): Don't presume selected_window holds
21759 a window object.
21760 (Fdisplay_buffer): Remove `register' since `buffer' needs to be gcpro'd.
21761
21762 2007-09-07 Angelo Graziosi <Angelo.Graziosi@roma1.infn.it> (tiny change)
21763
21764 * term.c (dissociate_if_controlling_tty): Call setsid on CYGWIN.
21765
21766 2007-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
21767
21768 * window.c (Vsplit_window_preferred_function): New var.
21769 (Fdisplay_buffer): Use it.
21770 (syms_of_window): Export, and initialize it.
21771
21772 2007-09-06 Pixel <pixel@mandriva.com> (tiny change)
21773
21774 * image.c (gif_load): Fix bug: Handle nonexistent colormap.
21775
21776 2007-09-06 Glenn Morris <rgm@gnu.org>
21777
21778 * gtkutil.c (menu_grab_callback) <cnt>:
21779 * xselect.c (x_reply_selection_request) <cnt>: Move static
21780 variable to file scope.
21781
21782 2007-09-06 Stefan Monnier <monnier@iro.umontreal.ca>
21783
21784 * xdisp.c (redisplay_internal): Make sure Elisp code always sees
21785 consistent values of selected_frame and selected_window.
21786
21787 2007-09-04 Jason Rumney <jasonr@gnu.org>
21788
21789 * w32console.c (initialize_w32_display): Zero unused hooks.
21790
21791 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21792
21793 * term.c (Vsuspend_tty_functions, Vresume_tty_functions)
21794 (syms_of_term, Fsuspend_tty, Fresume_tty): Undo previous change.
21795
21796 2007-09-04 Jason Rumney <jasonr@gnu.org>
21797
21798 * term.c (init_tty) [WINDOWSNT]: Add hooks that are not accessible
21799 in w32console.c. Set up input. Remove XXX comments that have been
21800 confirmed as correct.
21801
21802 * s/ms-w32.h (MULTI_KBOARD): Define.
21803
21804 * w32console.c (one_and_only_w32cons): Remove.
21805 (initialize_w32_display): Take terminal argument.
21806
21807 * term.c (init_tty) [WINDOWSNT]: Pass terminal to
21808 initialize_w32_display.
21809 (init_tty) [MULTI_KBOARD]: Include this code on WINDOWSNT too.
21810
21811 * termhooks.h (enum event_kind) <HORIZ_WHEEL_EVENT>: New event.
21812
21813 * keyboard.c (discard_mouse_events): Discard it.
21814 (make_lispy_event): Translate it to a lisp event.
21815 (lispy_wheel_names): Add wheel-left and right events.
21816 (syms_of_keyboard): Enlarge wheel_syms.
21817
21818 * w32fns.c (w32_wnd_proc) <WM_DROPFILES>: Merge with WM_MOUSEWHEEL.
21819 <WM_MOUSEHWHEEL>: Pass new system message to lisp.
21820
21821 * w32term.h (WM_MOUSEHWHEEL): Define if system headers don't.
21822
21823 * w32term.c (construct_mouse_wheel): Make HORIZ_WHEEL_EVENT
21824 from WM_MOUSEHWHEEL.
21825 (w32_read_socket) <WM_MOUSEHWHEEL>: Treat as WM_MOUSEWHEEL.
21826
21827 * w32fns.c (x_create_tip_frame) [MULTI_KBOARD]: Get keyboard from
21828 terminal.
21829
21830 * w32term.c (w32_create_terminal) [MULTI_KBOARD]: Create a new
21831 keyboard for the terminal.
21832
21833 2007-09-04 Dan Nicolaescu <dann@ics.uci.edu>
21834
21835 * term.c (Vsuspend_tty_hook): Rename from Vsuspend_tty_functions.
21836 (Vresume_tty_hook): Rename from Vresume_tty_functions.
21837 (syms_of_term): Rename suspend-tty-functions to suspend-tty-hook
21838 and resume-tty-function to resume-tty-hook.
21839 (Fsuspend_tty, Fresume_tty): Use new names.
21840
21841 2007-09-02 Jan Djärv <jan.h.d@swipnet.se>
21842
21843 * gtkutil.c (update_frame_tool_bar): Handle stock name as a named icon
21844 if it starts with "n:".
21845
21846 2007-08-31 Jan Djärv <jan.h.d@swipnet.se>
21847
21848 * gtkutil.c (update_frame_tool_bar): Initialize wbutton to NULL.
21849
21850 2007-08-31 Stefan Monnier <monnier@iro.umontreal.ca>
21851
21852 * frame.h:
21853 * frame.c (Qterm_environment_variable): Remove.
21854 (syms_of_frame): Don't init and staticpro it.
21855
21856 * callproc.c (getenv_internal): Remove special case for $TERM.
21857
21858 * callproc.c (Vinitial_environment): New variable.
21859 (set_initial_environment): Initialize it.
21860 (syms_of_callproc): Declare it.
21861 (child_setup): Don't mess with TERM via Qterm_environment_variable; the
21862 TERM under which a process runs is never related to the TERM in which
21863 Emacs is running.
21864
21865 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21866
21867 * config.in (HAVE_WINDOW_SYSTEM): Don't undef MULTI_KBOARD here...
21868 * s/darwin.h: ... do it here.
21869
21870 2007-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
21871
21872 * lisp.h (set_initial_environment): Rename from set_global_environment.
21873
21874 * Makefile.in (${etc}DOC): Re-add a ${EXEEXT} which seems to have been
21875 removed by mistake on the multi-tty branch.
21876
21877 * frame.c (make_terminal_frame): Yet Another Int/Lisp_Object Mixup.
21878 (Fmodify_frame_parameters): Return a value.
21879
21880 * image.c (png_load): Comment-out var only used in commented-out code.
21881
21882 * term.c (mark_ttys): Don't bother checking top_frame (incorrectly)
21883 before passing it to mark_object.
21884
21885 * xfaces.c (internal_resolve_face_name): Return a value.
21886 (internal_resolve_face_name, resolve_face_name_error): Comment out.
21887
21888 * xfns.c (check_x_display_info): Yet Another Int/Lisp_Object Mixup.
21889 (x_icon): Comment-out var only used in commented-out code.
21890
21891 2007-08-29 Romain Francoise <romain@orebokech.com>
21892
21893 * keyboard.c (Fset_input_mode): Don't call `Fset_quit_char' if
21894 QUIT hasn't been provided.
21895
21896 2007-08-29 Dan Nicolaescu <dann@ics.uci.edu>
21897
21898 * callproc.c (child_setup, getenv_internal): Use the
21899 display-environment-variable and term-environment-variable frame params.
21900 (set_initial_environment): Initialise Vprocess_environment.
21901
21902 * config.in: Disable multi-keyboard support on a mac.
21903
21904 * frame.c (Qterm_environment_variable)
21905 (Qdisplay_environment_variable): New variables.
21906 (syms_of_frame): Intern and staticpro them.
21907 (Fmake_terminal_frame): Disable output method test.
21908
21909 * frame.h: Declare them here.
21910
21911 * macfns.c (x_set_mouse_color): Get rif from the frame.
21912 (x_set_tool_bar_lines): Don't use updating_frame.
21913 (mac_window): Add 2 new parameters for consistency with other systems.
21914 (Fx_create_frame): Fix doc string. Rename the parameter. Set the
21915 frame parameters following what is done in X11 and w32. Don't use
21916 FRAME_MAC_DISPLAY_INFO.
21917 (Fx_open_connection, start_hourglass): Remove window-system check.
21918 (x_create_tip_frame): Get the keyboard from the terminal.
21919
21920 * macmenu.c: Reorder includes.
21921 (Fx_popup_menu): Use terminal specific mouse_position_hook.
21922
21923 * macterm.c (XTset_terminal_modes, XTreset_terminal_modes): Add a
21924 terminal parameter.
21925 (x_clear_frame): Add a frame parameter.
21926 (note_mouse_movement): Get rif from the frame.
21927 (mac_term_init): Initialize the terminal.
21928 (mac_initialize): Make static and move terminal initialization ...
21929 (mac_create_terminal): ... to this new function.
21930
21931 * macterm.h (struct mac_display_info): Add terminal.
21932 (mac_initialize): Delete declaration.
21933
21934 * puresize.h (BASE_PURESIZE): Increase base value to 1164000.
21935
21936 * sysdep.c: Comment out text after #endif.
21937
21938 * term.c (init_tty): Only use terminal->kboard when MULTI_KBOARD
21939 is defined. Better initialize ttys in windows. Use terminal
21940 specific mouse_position_hook.
21941
21942 * termhooks.h (union display_info): Add mac_display_info.
21943
21944 * w32fns.c (Fx_create_frame): Use kboard from the terminal.
21945 Set the default minibuffer frame, window_system and the rest of the
21946 frame parameters following what is done in X11.
21947
21948 * w32term.c (w32_initialize): Make static.
21949
21950 * xselect.c (x_handle_selection_clear): Only access
21951 terminal->kboard when MULTI_KBOARD is defined.
21952
21953 * s/darwin.h (SYSTEM_PURESIZE_EXTRA): Define here.
21954 (SYSTEM_PURESIZE_EXTRA): Only define on Carbon.
21955
21956 2007-08-29 Jason Rumney <jasonr@gnu.org>
21957
21958 * frame.c (Fdelete_frame): Only get kboard when MULTI_KBOARD defined.
21959 (make_terminal_frame) [WINDOWSNT]: Initialize terminal.
21960
21961 * fringe.c (w32_init_fringe w32_reset_fringes) [HAVE_NTGUI]:
21962 (mac_init_fringe) [MAC_OS]: Get rif from selected_frame.
21963
21964 * keyboard.c (restore_kboard_configuration): Only define when
21965 MULTI_KBOARD defined.
21966
21967 * makefile.w32-in: Update dependancies from Makefile.in.
21968 (OBJ1): Add terminal.$(O)
21969
21970 * term.c (dissociate_if_controlling_tty) [WINDOWSNT]:
21971 Don't define function body.
21972 (init_tty) [WINDOWSNT]: Use selected_frame for initializing.
21973
21974 * termhooks.h (display_info) [WINDOWSNT]: Add w32.
21975
21976 * w32.c (request_sigio, unrequest_sigio): Remove.
21977
21978 * w32console.c (w32con_move_cursor, w32con_clear_to_end)
21979 (w32con_clear_frame, w32con_clear_end_of_line)
21980 (w32con_ins_del_lines, w32con_insert_glyphs, w32con_write_glyphs)
21981 (w32con_delete_glyphs, w32con_set_terminal_window)
21982 (scroll_line, w32_sys_ring_bell): Add frame arg.
21983 (w32con_set_terminal_modes, w32con_reset_terminal_modes):
21984 Add terminal arg.
21985 (PICK_FRAME): Remove.
21986 (w32con_write_glyphs): Use frame specific terminal coding.
21987 (one_and_only_w32cons): New global variable.
21988 (initialize_w32_display): Use it for storing hooks.
21989 (create_w32cons_output): New function.
21990
21991 * w32inevt.c, w32inevt.h (w32_console_read_socket): Make first
21992 arg a frame.
21993
21994 * w32fns.c (x_create_tip_frame): Set terminal and ref count.
21995 Set window_system.
21996 (x_set_tool_bar_lines): Don't use updating_frame.
21997 (Fx_create_frame): Set terminal and ref count.
21998 (Fx_open_connection): Remove window-system check.
21999
22000 * w32menu.c (Fx_popup_menu): Use terminal specific mouse_position_hook.
22001
22002 * w32term.c (w32_term_init): Call add_keyboard_wait_descriptor.
22003 (w32_set_terminal_modes, w32_reset_terminal_modes): Add terminal arg.
22004 (x_clear_frame, x_delete_glyphs, w32_ring_bell, x_ins_del_lines):
22005 Add frame arg.
22006 (x_delete_terminal, w32_create_terminal): New functions.
22007 (w32_term_init): Create a terminal.
22008 (w32_initialize): Move terminal specific initialization to
22009 w32_create_terminal.
22010
22011 * w32term.h (x_output): Remove foreground_pixel and background_pixel.
22012 (w32_clear_rect, w32_clear_area): Use background from frame.
22013 (w32_display_info): Add terminal.
22014 (w32_sys_ring_bell, x_delete_display): Declare here.
22015
22016 * xdisp.c (display_menu_bar) [HAVE_NTGUI]: Check frame type.
22017
22018 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Bump to 50k.
22019
22020 2007-08-29 Kalle Olavi Niemitalo <kon@iki.fi> (tiny change)
22021
22022 * keyboard.c (interrupt_signal, handle_interrupt, Fset_quit_char):
22023 Fix get_named_tty calls for the controlling tty.
22024
22025 2007-08-29 ARISAWA Akihiro <ari@mbf.ocn.ne.jp> (tiny change)
22026
22027 * term.c (dissociate_if_controlling_tty) [USG]: Fix parse error.
22028
22029 2007-08-29 Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp> (tiny change)
22030
22031 * term.c (tty_insert_glyphs): Add missing first parameter.
22032
22033 2007-08-29 Károly Lőrentey <karoly@lorentey.hu>
22034
22035 * buffer.c (Fbuffer_list, Fbury_buffer):
22036 Take frame->buried_buffer_list into account.
22037
22038 * cm.c (current_tty): New variable, for cmputc().
22039 (cmputc): Use it.
22040 (cmcheckmagic): Add tty parameter, look up terminal streams there.
22041 (calccost): Add tty parameter. Use emacs_tputs() instead of tputs().
22042 (cmgoto): Add tty parameter. Pass it on to calccost().
22043 Use emacs_tputs() instead of tputs().
22044
22045 * cm.h (emacs_tputs): New macro to set current_tty, and then call
22046 tputs().
22047 (current_tty): New variable, for cmputc().
22048 (cmcheckmagic, cmputc, cmgoto): Add prototypes.
22049
22050 * eval.c (unwind_to_catch): Don't call x_fully_uncatch_errors.
22051 (internal_condition_case, internal_condition_case_1)
22052 (internal_condition_case_2): Don't abort when x_catching_errors.
22053
22054 * fns.c (Fyes_or_no_p): Don't try to open an X dialog on tty terminals.
22055 (Fy_or_n_p): Likewise. Use temporarily_switch_to_single_kboard to
22056 prevent crashes caused by bogus longjmps in read_char.
22057
22058 * keymap.h (Fset_keymap_parent): Add EXFUN.
22059
22060 * macterm.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL)
22061 * w32term.h (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22062 Remove redundant definition.
22063
22064 * macfns.c (x_set_mouse_color, x_make_gc):
22065 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22066
22067 * w32term.c (x_free_frame_resources):
22068 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22069 (w32_initialize): Use the accessor macros for terminal characteristics.
22070
22071 * macterm.c (mac_initialize): Use Fset_input_interrupt_mode.
22072 Use the accessor macros for terminal characteristics.
22073 * msdos.c (internal_terminal_init): Use the accessor macros for
22074 terminal characteristics.
22075 (ScreenVisualBell, internal_terminal_init):
22076 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22077
22078 * termopts.h (no_redraw_on_reenter): Declare.
22079
22080 * alloc.c (emacs_blocked_malloc): Disable mallopt call.
22081 (mark_terminals, mark_ttys): Declare.
22082 (Fgarbage_collect): Call them.
22083 (mark_object): Mark buried_buffer_list.
22084
22085 * prefix-args.c: Include stdlib.h for exit.
22086
22087 * syssignal.h: Add comment.
22088
22089 * indent.c: Include stdio.h.
22090
22091 * window.h (Vinitial_window_system): Declare.
22092 (Vwindow_system): Delete declaration.
22093
22094 * fontset.c (Finternal_char_font): Use FRAME_RIF.
22095
22096 * image.c (lookup_image): Don't initialize `c' until the xasserts
22097 have been run.
22098
22099 * gtkutil.c (xg_create_frame_widgets): Use FRAME_BACKGROUND_PIXEL and
22100 FRAME_FOREGROUND_PIXEL.
22101
22102 * print.c (print_preprocess): Don't lose print_depth levels while
22103 iterating.
22104
22105 * widget.c (update_from_various_frame_slots):
22106 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22107
22108 * window.c (set_window_buffer): Don't call clear_mouse_face on tty
22109 frames.
22110 (window_internal_height): Remove bogus make_number call.
22111 (init_window_once): Call make_terminal_frame with two zero parameters.
22112
22113 * fileio.c (Fread_file_name): Update comment.
22114
22115 * callint.c (Fcall_interactively):
22116 Use temporarily_switch_to_single_kboard instead of single_kboard_state.
22117 Make sure it is correctly unwound.
22118
22119 * xsmfns.c (x_session_close): New function.
22120
22121 * coding.h (terminal_coding, safe_terminal_coding, keyboard_coding):
22122 Delete declarations.
22123
22124 * xterm.h: Remove declaration for x_fully_uncatch_errors.
22125 (x_output): Remove background_pixel and foreground_pixel fields.
22126 (x_display_info): Add new field TERMINAL. Remove KBOARD field.
22127 (x_delete_device, x_session_close): Declare.
22128
22129 * lread.c: Include setjmp.h. Update declaration of `read_char'.
22130 (read_filtered_event): Call `read_char' with a local
22131 `wrong_kboard_jmpbuf'.
22132
22133 * minibuf.c (read_minibuf): Call temporarily_switch_to_single_kboard.
22134 Don't call single_kboard_state. Use FRAME_RIF.
22135
22136 * process.c (Fmake_network_process): Don't unrequest_sigio on modern
22137 systems.
22138
22139 * lisp.h (set_process_environment): Rename to `set_global_environment'.
22140 (Fframe_with_environment, Fset_input_meta_mode)
22141 (Fset_quit_char): EXFUN.
22142 (x_create_device, tty_output, terminal, tty_display_info): Declare.
22143 (init_sys_modes, reset_sys_modes): Update prototypes.
22144 (init_all_sys_modes, reset_all_sys_modes): New prototypes.
22145
22146 * keyboard.h (struct kboard): Add new fields Vlocal_function_key_map,
22147 Vlocal_key_translation_map, and Vkeyboard_translate_table.
22148 (Vfunction_key_map, Vkeyboard_translate_table, single_kboard_state):
22149 Delete declarations.
22150 (Vfunction_key_map, Vkey_translation_map, push_kboard, pop_kboard)
22151 (temporarily_switch_to_single_kboard, tty_read_avail_input):
22152 New declarations.
22153
22154 * emacs.c (main): Don't call init_sys_modes(), the new term_init()
22155 already does that during init_display(). Call syms_of_keymap
22156 before syms_of_keyboard. Call `syms_of_terminal'.
22157 Call set_initial_environment, not set_process_environment.
22158 (shut_down_emacs): Call reset_all_sys_modes() instead of
22159 reset_sys_modes().
22160
22161 * xfaces.c (x_free_gc): Protect xassert with GLYPH_DEBUG.
22162 (internal_resolve_face_name, resolve_face_name_error): New functions.
22163 (resolve_face_name): Protect against loops and errors thrown by Fget.
22164 (realize_default_face): Don't use FRAME_FONT unless frame is an X frame.
22165 (Ftty_supports_face_attributes_p): Update tty_capable_p call.
22166
22167 * scroll.c: Replace CURTTY() with local variables throughout the
22168 file (where applicable).
22169 (calculate_scrolling, calculate_direct_scrolling)
22170 (scrolling_1, scroll_cost): Use the accessor macros for terminal
22171 characteristics.
22172
22173 * keymap.c (Vfunction_key_map): Remove.
22174 (Fdescribe_buffer_bindings): Update references to Vfunction_key_map.
22175 (syms_of_keymap): Remove DEFVAR for Vfunction_key_map.
22176 (Vkey_translation_map): Remove.
22177 (syms_of_keymap): Remove DEFVAR for key-translation-map.
22178 (Fdescribe_buffer_bindings)
22179 (read_key_sequence, init_kboard, syms_of_keyboard, mark_kboards):
22180 Update for terminal-local key-translation-map.
22181
22182 * Makefile.in (callproc.o): Update dependencies.
22183 (lisp, shortlisp): Add termdev.elc.
22184 (obj): Add terminal.o.
22185 (terminal.o): Add dependencies.
22186 [HAVE_CARBON]: Make terminal.o depend on macgui.h.
22187 (data.o, fns.o): Add termhooks.h dependency.
22188 (SOME_MACHINE_LISP): Add dnd.elc.
22189 (minibuf.o): Fix typo.
22190 Update dependencies.
22191
22192 * data.c (do_symval_forwarding, store_symval_forwarding)
22193 (find_symbol_value): Use the selected frame's keyboard, not
22194 current_kboard.
22195
22196 * .gdbinit (init_sys_modes): Use Vinitial_window_system instead of
22197 Vwindow_system.
22198
22199 * xmenu.c (Fx_menu_bar_open) [USE_X_TOOLKIT, USE_GTK]: Rename from
22200 Fmenu_bar_open.
22201 (syms_of_xmenu): Update defsubr.
22202 (mouse_position_for_popup, Fx_popup_menu)
22203 (Fx_popup_dialog, x_activate_menubar, update_frame_menubar)
22204 (set_frame_menubar, free_frame_menubar)
22205 (create_and_show_popup_menu, xmenu_show)
22206 (create_and_show_dialog, xdialog_show, xmenu_show): Abort if not
22207 an X frame.
22208
22209 * xselect.c (x_own_selection): Abort if not an X frame.
22210 (some_frame_on_display): Check if it is an X frame.
22211 (x_handle_selection_clear): Deal with MULTI_KBOARD.
22212
22213 * coding.c: Include frame.h and termhooks.h.
22214 (terminal_coding, keyboard_coding): Delete.
22215 (Fset_terminal_coding_system_internal)
22216 (Fset_keyboard_coding_system_internal)
22217 (Fkeyboard_coding_system)
22218 (Fterminal_coding_system): Add a terminal parameter.
22219 Get terminal_coding from the terminal.
22220 (init_coding_once): Don't call setup_coding_system here.
22221
22222 * dispextern.h (set_scroll_region, turn_off_insert)
22223 (turn_off_highlight, background_highlight, clear_end_of_line_raw)
22224 (tty_clear_end_of_line, tty_setup_colors)
22225 (delete_tty, updating_frame)
22226 (produce_special_glyphs, produce_glyphs, write_glyphs)
22227 (insert_glyphs): Remove.
22228 (raw_cursor_to, clear_to_end, tty_turn_off_insert)
22229 (tty_turn_off_highlight, get_tty_size): Add declaration.
22230 (tabs_safe_p, init_baud_rate, get_tty_terminal): Update prototypes.
22231
22232 * frame.h (enum output_method): Add output_initial.
22233 (struct x_output): Delete.
22234 (FRAME_FOREGROUND_PIXEL, FRAME_BACKGROUND_PIXEL):
22235 Access foreground_pixel and background_pixel directly from the frame.
22236 (tty_display): Delete.
22237 (struct frame): Add buried_buffer_list, foreground_pixel,
22238 background_pixel and terminal. Delete kboard.
22239 (union output_data): Add tty.
22240 (FRAME_KBOARD): Get the kboard from the terminal.
22241 (FRAME_INITIAL_P): New macro.
22242 (Qtty, Qtty_type, Qterminal, Qterminal_live_p, Qenvironment)
22243 (Qterm_environment_variable, Qdisplay_environment_variable)
22244 (make_terminal_frame, Qburied_buffer_list, Qwindow_system):
22245 New declarations.
22246
22247 * termchar.h (tty_output, tty_display_info): New structures.
22248 (tty_list): Declare.
22249 (FRAME_TTY, CURTTY): New macros.
22250 (must_write_spaces, min_padding_speed, fast_clear_end_of_line)
22251 (line_ins_del_ok, char_ins_del_ok, scroll_region_ok)
22252 (scroll_region_cost, memory_below_frame, fast_clear_end_of_line)
22253 (dont_calculate_costs, no_redraw_on_reenter): Remove declarations.
22254
22255 * callproc.c: Include frame.h and termhooks.h, for terminal
22256 parameters.
22257 (add_env): New function.
22258 (child_setup): Use it.
22259 (child_setup, getenv_internal): Handle the new Vprocess_environment.
22260 (getenv_internal): Fix get_terminal_param call.
22261 (Fgetenv_internal, egetenv): Update doc.
22262 (syms_of_callproc): Initialize Vprocess_environment to nil.
22263 Register and initialize them. Remove obsolete defvars. Update doc
22264 strings.
22265 (child_setup): Handle Vlocal_environment_variables.
22266 (getenv_internal): Add terminal parameter.
22267 Handle Vlocal_environment_variables.
22268 (Fgetenv_internal): Add terminal parameter.
22269 (child_setup, getenv_internal, Fgetenv_internal): Store the local
22270 environment in a frame (not terminal) parameter. Update doc strings.
22271 (set_initial_environment): Rename from set_global_environment.
22272 Store Emacs environment in initial frame parameter.
22273
22274 * xdisp.c (redisplay_internal): Update references to
22275 `previous_terminal_frame'.
22276 (display_mode_line, Fformat_mode_line): Replace calls to
22277 `push_frame_kboard' with `push_kboard'.
22278 (get_glyph_string_clip_rects): Add extra parentheses and
22279 braces to prevent compiler warnings.
22280 (calc_pixel_width_or_height): Add xassert to check that the
22281 frame is alive. Don't call `lookup_image' on a termcap frame.
22282 (message2_nolog, message3_nolog, redisplay_internal)
22283 (set_vertical_scroll_bar, redisplay_window, check_x_display_info)
22284 (x_set_scroll_bar_foreground, x_set_scroll_bar_background)
22285 (Fx_create_frame, Fxw_display_color_p, Fx_display_grayscale_p)
22286 (Fx_display_pixel_width, Fx_display_pixel_height)
22287 (Fx_display_planes, Fx_display_color_cells)
22288 (Fx_server_max_request_size, Fx_server_vendor, Fx_server_version)
22289 (Fx_display_screens, Fx_display_mm_height, Fx_display_mm_width)
22290 (Fx_display_backing_store, Fx_display_visual_class)
22291 (Fx_display_save_under, Fx_close_connection, x_create_tip_frame):
22292 Use FRAME_TERMINAL_P, FRAME_WINDOW_P, FRAME_TTY and FRAME_RIF.
22293
22294 * xfns.c (x_set_foreground_color x_set_background_color)
22295 (x_set_mouse_color, x_set_cursor_color, x_make_gc):
22296 Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22297 (Fx_create_frame, x_create_tip_frame, build_string, x_window)
22298 (Fx_create_frame, x_create_tip_frame): Don't create frames on a
22299 terminal that is being deleted.
22300 (Fx_create_frame): Use `store_frame_param' to set `window-system'
22301 frame parameter, and make sure it overrides any user-supplied setting.
22302 (Fx_close_connection, Fx_synchronize): Unify argument names with
22303 the rest of the DEFUNs.
22304
22305 * dispnew.c (Fsend_string_to_terminal): Update call to
22306 `get_tty_terminal'.
22307 (Fredraw_frame, Fsend_string_to_terminal)
22308 (Fsend_string_to_terminal, init_display): Use FRAME_RIF,
22309 FRAME_TERMCAP_P and FRAME_TTY.
22310 (window_change_signal): Don't believe width/height values that are
22311 impossibly small.
22312 (Vinitial_window_system): Rename from Vwindow_system.
22313 (termscript, Wcm, rif): Delete.
22314
22315 * termhooks.h (struct terminal): New struct containing the
22316 previously global text display hooks and new members NAME,
22317 DELETED and PARAM_ALIST.
22318 (FRAME_TERMINAL, TERMINAL_TERMINAL_CODING)
22319 (TERMINAL_KEYBOARD_CODING, TERMINAL_ACTIVE_P, FRAME_WINDOW_P)
22320 (FRAME_RIF): New macros.
22321 (get_terminal_param, get_device): New declarations.
22322 (termscript): Delete declaration.
22323
22324 * xterm.c (x_initialize): Use Fset_input_interrupt_mode.
22325 (XTflash, x_free_frame_resources, x_scroll_bar_create)
22326 (x_scroll_bar_set_handle): Use FRAME_BACKGROUND_PIXEL and
22327 FRAME_FOREGROUND_PIXEL.
22328 (x_fully_uncatch_errors): Disable definition.
22329 (x_scroll_bar_expose): Fix reference to foreground pixel.
22330 (XTread_socket): Disable loop on all X displays.
22331 (x_delete_terminal): Don't set terminal->deleted and let
22332 delete_terminal delete the frames on the terminal.
22333 (x_delete_display): Doc update to reflect changes in
22334 delete_terminal.
22335 (x_display_info) <terminal>: Move member earlier in the struct.
22336 (deleting_tty): Remove old variable.
22337 (Fsuspend_tty): Call clear_tty_hooks.
22338 (Fresume_tty, init_tty): Call set_tty_hooks.
22339 (Ftty_display_color_p, Ftty_display_color_cells): Don't throw
22340 errors on X frames.
22341 (x_catch_errors_unwind): Abort if x_error_message is NULL.
22342 (handle_one_xevent): Initialize `f' to NULL.
22343 (x_delete_terminal, x_create_terminal): New functions.
22344 (XTset_terminal_modes, XTreset_terminal_modes)
22345 (XTread_socket, x_connection_closed, x_term_init)
22346 (x_term_init, x_delete_display): Add terminal parameter.
22347 (x_term_init) [!HAVE_GTK_MULTIDISPLAY]: Refuse to create secondary
22348 X connections.
22349
22350 * frame.c: Include termchar.h.
22351 (Qterminal, Qterminal_live_p, Qburied_buffer_list, Qtty, Qtty_type)
22352 (Qwindow_system, Qenvironment, Qterm_environment_variable)
22353 (Qdisplay_environment_variable): New vars.
22354 (Fframep): Deal with output_initial.
22355 (Fframe-live-p): Doc fix.
22356 (Fwindow-system): New function.
22357 (x_set_screen_gamma, store_frame_param): Fix compilation errors.
22358 (make_terminal_frame): Don't create frames on a terminal that is
22359 being deleted. Use FRAME_BACKGROUND_PIXEL and FRAME_FOREGROUND_PIXEL.
22360 (store_frame_param): Check for found_for_frame before calling XFRAME.
22361 (Fmake_terminal_frame): Handle NULL tty names correctly.
22362 (syms_of_frame): Enhance doc string of `default-frame-alist'.
22363 (Fdelete_frame): Remove unused variable `count'. Don't allow other
22364 frames to refer to a deleted frame in their 'environment parameter.
22365 (Fframe_with_environment): New function.
22366 (syms_of_frame): Defsubr it. Initialize and staticpro Qenvironment.
22367 (get_future_frame_param): New function.
22368 (Fmake_terminal_frame): Use it.
22369 (x_set_frame_parameters, x_set_screen_gamma): Use FRAME_RIF.
22370
22371 * sysdep.c (init_sys_modes, reset_sys_modes): Update for renames.
22372 * sysdep.c (reset_sys_modes): Update for renames.
22373
22374 * keyboard.c (tty_read_avail_input): New function.
22375 (Fset_input_interrupt_mode, Fset_output_flow_control): New functions.
22376 (syms_of_keyboard): Defsubr them.
22377 (Fset_input_meta_mode, Fset_quit_char): New functions.
22378 (Fset_input_mode): Split to above functions.
22379 (read_char_minibuf_menu_prompt): Add wrong_kboard_jmpbuf
22380 parameter. Use it in call to `read_char'.
22381 (read_char): Declare. Update call to `read_char_minibuf_menu_prompt'.
22382 Set wrong_kboard_jmpbuf correctly in recursive calls.
22383 Use current_kboard to access Vkeyboard_translate_table.
22384 Enhance comment before extra longjmp to wrong_kboard_jmpbuf.
22385 Add wrong_kboard_jmpbuf parameter to allow for recursive calls.
22386 Update longjmp invocations. Remember the original current_kboard,
22387 and longjmp to `wrong_kboard_jmpbuf' when a filter, timer or sentinel
22388 changes it. Comment out unnecessary calls to
22389 `record_single_kboard_state' and `any_kboard_state'.
22390 Update recursive calls.
22391 (wrong_kboard_jmpbuf): Remove global variable.
22392 (read_key_sequence): Remove unused variable wrong_kboard_jmpbuf.
22393 Handle deleted interrupted_kboards correctly; that is a legal
22394 case. Add `wrong_kboard_jmpbuf' local variable. Update setjmp
22395 and read_char calls. Abort if interrupted_kboard died in read_char.
22396 (any_kboard_state, single_kboard_state)
22397 (push_frame_kboard): Remove function.
22398 (pop_kboard): Switch out of single_kboard mode if the kboard has
22399 been deleted. Remove unused variable. Help debugging by not
22400 changing current_kboard unnecessarily. Set current_kboard to the
22401 kboard of the selected frame when the stored kboard object has
22402 been deleted before pop_kboard.
22403 (temporarily_switch_to_single_kboard): Change first parameter to a
22404 frame pointer. Throw an error when caller wants to change kboards
22405 while in single_kboard mode. Don't push_kboard if we weren't in
22406 single kboard state. Don't pop_kboard if we popped into any
22407 kboard state.
22408 (restore_kboard_configuration): Abort if pop_kboard changed the
22409 kboard in single_kboard mode. Call pop_kboard only after setting
22410 up single_kboard mode.
22411 (Frecursive_edit): Switch to single_kboard mode only in nested
22412 command loops.
22413 (cmd_error, command_loop, command_loop_1, timer_check):
22414 Comment out unnecessary call to `any_kboard_state' and
22415 `record_single_kboard_state'.
22416 (delete_kboard): Exit single_kboard mode if we have just deleted
22417 that kboard. Use FRAME_KBOARD.
22418 (interrupt_signal): Use `Fkill_emacs' to exit Emacs, not
22419 `fatal_error_signal'.
22420 (record_single_kboard_state): Don't push_kboard if we weren't in
22421 single kboard state. Don't pop_kboard if we popped into any
22422 kboard state.
22423 (push_frame_kboard): Rename to push_kboard.
22424 (kbd_buffer_get_event): Use FRAME_TERMINAL.
22425 (read_avail_input): Read input from all terminals.
22426 (mark_kboards): Also mark Vkeyboard_translate_table.
22427 (kbd_buffer_store_event_hold): Simplify condition.
22428 (read_key_sequence): Reinitialize fkey and keytran at each replay.
22429 (Vkeyboard_translate_table): Move to struct kboard.
22430 (init_kboard): Initialize Vkeyboard_translate_table.
22431 (syms_of_keyboard): Use DEFVAR_KBOARD to define
22432 Vkeyboard_translate_table. Update doc strings. Update docs of
22433 local-function-key-map and function-key-map.
22434
22435 * terminal.c: New file.
22436
22437 * term.c: Include errno.h.
22438 (Vring_bell_function, device_list, initial_device)
22439 (next_device_id, ring_bell, update_begin, update_end)
22440 (set_terminal_window, cursor_to, raw_cursor_to)
22441 (clear_to_end, clear_frame, clear_end_of_line)
22442 (write_glyphs, insert_glyphs, delete_glyphs, ins_del_lines)
22443 (Fdisplay_name, create_device, delete_device): Move to terminal.c.
22444 (syms_of_term): Move their initialization to terminal.c.
22445 (get_tty_terminal, Fdisplay_tty_type, Ftty_display_color_p)
22446 (Ftty_display_color_cells)
22447 (Ftty_no_underline, Fsuspend_tty, Fresume_tty, create_tty_output)
22448 (clear_tty_hooks, set_tty_hooks)
22449 (init_tty, maybe_fatal): New functions.
22450 (Ftty_type): Return nil if terminal is not on a tty instead of
22451 throwing an error. Doc update.
22452 (syms_of_term) <Vsuspend_tty_functions, Vresume_tty_functions>:
22453 Doc update. Initialize new subrs and variables.
22454 (delete_tty): Use terminal->deleted.
22455 (tty_set_terminal_modes): Rename from set_terminal_modes.
22456 (tty_reset_terminal_modes): Rename from reset_terminal_modes.
22457 (set_scroll_region): Rename to `tty_set_scroll_region'.
22458 (turn_on_insert): Rename to `tty_turn_on_insert'.
22459 (turn_off_insert): Rename to `tty_turn_off_insert'.
22460 (turn_off_highlight): Rename to `tty_turn_off_highlight'.
22461 (turn_on_highlight): Rename to `tty_turn_on_highlight'.
22462 (toggle_highligh): Rename to `tty_toggle_highlight'.
22463 (background_highlight): Rename to `tty_background_highlight'.
22464 (highlight_if_desired): Rename to `tty_highlight_if_desired'.
22465 (tty_ring_bell, tty_update_end, tty_set_terminal_window)
22466 (tty_set_scroll_region, tty_background_highlight)
22467 (tty_cursor_to, tty_raw_cursor_to, tty_clear_to_end)
22468 (tty_clear_frame, tty_clear_end_of_line, tty_write_glyphs)
22469 (tty_insert_glyphs, tty_delete_glyphs, tty_ins_del_lines)
22470 (term_get_fkeys, tty_setup_colors, dissociate_if_controlling_tty):
22471 Add static modifier.
22472 (tty_reset_terminal_modes, tty_set_terminal_window)
22473 (tty_set_scroll_region, tty_background_highlight)
22474 (tty_highlight_if_desired, tty_cursor_to)
22475 (tty_raw_cursor_to, tty_clear_to_end, tty_clear_frame)
22476 (tty_clear_end_of_line, tty_write_glyphs, tty_insert_glyphs)
22477 (tty_delete_glyphs, tty_ins_del_lines, turn_on_face): Update for
22478 renames.
22479
22480 2007-08-28 Jan Djärv <jan.h.d@swipnet.se>
22481
22482 * keyboard.c: Qrtl is new.
22483 (parse_tool_bar_item): Handle :rtl keyword.
22484 (syms_of_keyboard): Intern :rtl keyword.
22485
22486 * dispextern.h (enum tool_bar_item_idx): Add TOOL_BAR_ITEM_RTL_IMAGE.
22487
22488 * gtkutil.c (xg_tool_bar_expose_callback): Just do SET_FRAME_GARBAGED
22489 so no Lisp code is executed.
22490 (file_for_image, find_rtl_image): New functions.
22491 (xg_get_image_for_pixmap): Use file_for_image.
22492 (update_frame_tool_bar): If direction is RTL, use RTL image if
22493 defined. Use Gtk stock images if defined.
22494
22495 2007-08-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22496
22497 * macterm.c (x_draw_composite_glyph_string_foreground): Draw rectangle
22498 for nonexistent or zero-width glyph in composition glyph.
22499
22500 2007-08-25 Stefan Monnier <monnier@iro.umontreal.ca>
22501
22502 * m/amdx86-64.h: Redirect to intel386.h if compiling for i386.
22503
22504 * xdisp.c (Finvisible_p): New function.
22505 (syms_of_xdisp): defsubr it.
22506
22507 2007-08-24 Juanma Barranquero <lekktu@gmail.com>
22508
22509 * image.c (syms_of_image) <image-library-alist, cross-disabled-images>:
22510 Doc fixes.
22511
22512 2007-08-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22513
22514 * mac.c [MAC_OSX] (select_and_poll_event, sys_select): Fix last changes.
22515
22516 2007-08-24 Martin Rudalics <rudalics@gmx.at>
22517
22518 * fileio.c (Finsert_file_contents): Consult CHARS_MODIFF to tell
22519 whether decoding has modified buffer contents.
22520
22521 2007-08-24 Jason Rumney <jasonr@gnu.org>
22522
22523 * image.c [HAVE_NTGUI]: Define dynamic loaded functions for SVG.
22524 (Qgdk_pixbuf, Qglib) [HAVE_NTGUI]: New symbols.
22525 (syms_of_image) [HAVE_NTGUI]: Intern and staticpro them.
22526 (init_svg_functions) [HAVE_NTGUI]: New function.
22527 (fn_g_type_init, fn_g_object_unref, fn_g_error_free): New #defines.
22528 (svg_load_image): Use them.
22529 (svg_load_image) [HAVE_NTGUI]: Implement background.
22530
22531 2007-08-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22532
22533 * Makefile.in (RSVG_LIBS, RSVG_CFLAGS): New variables.
22534 (ALL_CFLAGS): Use ${RSVG_CFLAGS} instead of @RSVG_CFLAGS@.
22535 (LIBX): Remove @RSVG_LIBS@.
22536 (LIBES): Add $(RSVG_LIBS).
22537
22538 * image.c (svg_load_image): Blend with specified background if exists.
22539 Use IMAGE_BACKGROUND. Add Mac OS Support.
22540
22541 * mac.c (wakeup_from_rne_enabled_p) [MAC_OSX]: Remove variable.
22542 (ENABLE_WAKEUP_FROM_RNE, DISABLE_WAKEUP_FROM_RNE) [MAC_OSX]:
22543 Remove macros.
22544 [MAC_OSX] (socket_callback): Do nothing.
22545 [MAC_OSX] (select_and_poll_event): Use CFRunLoopRunInMode instead of
22546 ReceiveNextEvent.
22547 [MAC_OSX] (sys_select): Likewise. Don't set context as argument to
22548 socket_callback.
22549 (mac_wakeup_from_rne) [MAC_OSX]: Do nothing.
22550
22551 2007-08-22 Glenn Morris <rgm@gnu.org>
22552
22553 * image.c (x_find_image_file): Search in etc/images/ rather than etc/.
22554
22555 2007-08-22 Paul Pogonyshev <pogonyshev@gmx.net>
22556
22557 * Makefile.in (ALL_CFLAGS, LIBX): Add RSVG_LIBS.
22558
22559 * image.c: Add support for SVG images. Some additional comments
22560 by Joakim Verona <joakim@verona.se>. When HAVE_RSVG is defined:
22561 (svg_image_p): New function to test for SVG image.
22562 (svg_load): New function to load SVG image.
22563 (svg_load_image): New function, helper for svg_load.
22564 (Qsvg): New Lisp_object.
22565 (svg_keyword_index): New enum.
22566 (svg_format): New static `image_keyword' struct.
22567 (svg_type): New static `image_type' struct.
22568 (librsvg/rsvg.h): Include it.
22569
22570 2007-08-23 Stefan Monnier <monnier@iro.umontreal.ca>
22571
22572 * lread.c (load_warn_old_style_backquotes): Fix up array size typo.
22573
22574 2007-08-22 Stefan Monnier <monnier@iro.umontreal.ca>
22575
22576 * lread.c (Qold_style_backquotes): New var.
22577 (syms_of_lread): Init and staticpro it.
22578 (load_warn_old_style_backquotes): New fun.
22579 (Fload): Use them to warn about old style backquotes.
22580 (end_of_file_error, Fload): Remove unused vars.
22581
22582 * lisp.h (Fclear_face_cache, Fx_send_client_event): Declare.
22583
22584 * lread.c (Vold_style_backquotes): New var.
22585 (syms_of_lread): Init and export it to Elisp.
22586 (read1): Set it when we find an old-style (back)quote.
22587
22588 2007-08-22 Jason Rumney <jasonr@gnu.org>
22589
22590 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): Add missing NULL terminator.
22591
22592 2007-08-22 Katsumi Yamaoka <yamaoka@jpl.org>
22593
22594 * puresize.h (BASE_PURESIZE): Increase to 1140000.
22595
22596 2007-08-19 Richard Stallman <rms@gnu.org>
22597
22598 * eval.c (Ffunction, Fquote): Signal error if not 1 argument.
22599
22600 2007-08-19 Andreas Schwab <schwab@suse.de>
22601
22602 * alloc.c (pure): Round PURESIZE up.
22603
22604 2007-08-17 Jan Djärv <jan.h.d@swipnet.se>
22605
22606 * xterm.c (handle_one_xevent): Remove check that mouse click is in
22607 active frame.
22608
22609 2007-08-16 Richard Stallman <rms@gnu.org>
22610
22611 * eval.c (Fcommandp): Add parens to clarify.
22612
22613 * minibuf.c (Fall_completions): Use enum for type of table.
22614
22615 * emacs.c (USAGE2): Improve text.
22616
22617 2007-08-15 Philippe Waroquiers <philippe.waroquiers@eurocontrol.int>
22618
22619 * term.c (tty_default_color_capabilities): Declare static
22620 variables in file scope, to avoid HPUX compiler problem.
22621
22622 2007-08-13 Jan Djärv <jan.h.d@swipnet.se>
22623
22624 * gtkutil.c (update_frame_tool_bar): Use -1 as index
22625 to gtk_toolbar_insert.
22626
22627 2007-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
22628
22629 * fileio.c (Finsert_file_contents): Yet Another Int/Lisp_Object Mixup.
22630
22631 * insdel.c (reset_var_on_error): New fun.
22632 (signal_before_change, signal_after_change):
22633 Use it to reset (after|before)-change-functions to nil in case of error.
22634 Bind inhibit-modification-hooks to t.
22635 Don't bind (after|before)-change-functions to nil while they run.
22636
22637 2007-08-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22638
22639 * xterm.c (x_draw_image_glyph_string): Adjust stipple origin when
22640 filling pixmap with stippled background.
22641
22642 2007-08-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22643
22644 * macterm.c [TARGET_API_MAC_CARBON] (mac_handle_window_event):
22645 Don't use invisible frame as parent window for repositioning.
22646
22647 2007-08-10 Stefan Monnier <monnier@iro.umontreal.ca>
22648
22649 * print.c (new_backquote_output): Rename from old_backquote_output.
22650 (print): Inverse its logic (according to its name) so as to match the
22651 behavior of new_backquote_flag in lread.c.
22652
22653 2007-08-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22654
22655 * gmalloc.c (posix_memalign): New function.
22656
22657 * macterm.c (frame_highlight, frame_unhighlight): Don't call
22658 ActivateControl/DeactivateControl here.
22659 [USE_MAC_TOOLBAR] (free_frame_tool_bar): Suppress animation when
22660 frame-notice-user-settings is non-nil.
22661 [USE_MAC_FONT_PANEL] (mac_handle_font_event): Also record parameter
22662 for kEventParamFMFontStyle.
22663 [TARGET_API_MAC_CARBON] (mac_handle_keyboard_event): Don't check
22664 mac_pass_command_to_system and mac_pass_control_to_system here.
22665 (XTread_socket): Call ActivateControl/DeactivateControl here.
22666 (XTread_socket) [TARGET_API_MAC_CARBON]:
22667 Check mac_pass_command_to_system and mac_pass_control_to_system here.
22668 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Add further workaround
22669 for window repositioning.
22670
22671 2007-08-08 Glenn Morris <rgm@gnu.org>
22672
22673 * Replace `iff' in doc-strings and comments.
22674
22675 2007-08-07 Chong Yidong <cyd@stupidchicken.com>
22676
22677 * xdisp.c (move_it_by_lines): Remove incorrect optimization.
22678
22679 2007-08-07 Martin Rudalics <rudalics@gmx.at>
22680
22681 * fileio.c (Finsert_file_contents): Run format-decode and
22682 after_insert_file_functions on entire buffer when REPLACE is
22683 non-nil and inhibit modification_hooks and point_motion_hooks.
22684 For consistency, run after_insert_file_functions iff something
22685 got inserted. Move signal_after_change and update_compositions
22686 after code running after_insert_file_functions. Make sure that
22687 undo_list doesn't record intermediate steps of the decoding process.
22688
22689 2007-08-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22690
22691 * emacs.c (main)
22692 [HAVE_GTK_AND_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
22693 Call malloc_enable_thread on interactive startup.
22694
22695 * gmalloc.c (_malloc_thread_enabled_p) [USE_PTHREAD]: New variable.
22696 (LOCK, UNLOCK, LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS)
22697 [USE_PTHREAD]: Conditionalize with it.
22698 (malloc_atfork_handler_prepare, malloc_atfork_handler_parent)
22699 (malloc_atfork_handler_child, malloc_enable_thread) [USE_PTHREAD]:
22700 New functions.
22701
22702 2007-08-06 Chong Yidong <cyd@stupidchicken.com>
22703
22704 * xdisp.c (redisplay_window): When restoring original buffer
22705 position, make sure it is still valid.
22706
22707 * image.c (png_load): Ignore png-supplied background color.
22708
22709 2007-08-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22710
22711 * mac.c [TARGET_API_MAC_CARBON] (cfdate_to_lisp): Obtain microsec value.
22712 Use kCFAbsoluteTimeIntervalSince1970.
22713
22714 * macmenu.c (quit_dialog_event_loop) [TARGET_API_MAC_CARBON]:
22715 New variable.
22716 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Set it if dialog
22717 event loop should be quit.
22718 [TARGET_API_MAC_CARBON] (create_and_show_dialog) [!MAC_OSX]:
22719 Quit dialog event loop if quit_dialog_event_loop is set.
22720
22721 * macselect.c [!TARGET_API_MAC_CARBON]: Include Scrap.h.
22722 (Selection): New typedef. Use instead of ScrapRef.
22723 (mac_get_selection_from_symbol): Rename from get_scrap_from_symbol.
22724 (mac_valid_selection_target_p): Rename from valid_scrap_target_type_p.
22725 (mac_clear_selection): Rename from clear_scrap.
22726 (get_flavor_type_from_symbol): New argument SEL and subsume function of
22727 scrap_has_target_type. All uses changed.
22728 (mac_get_selection_ownership_info, mac_valid_selection_value_p)
22729 (mac_selection_has_target_p): New functions.
22730 (mac_put_selection_value): Rename from put_scrap_string.
22731 (mac_get_selection_value): Rename from get_scrap_string.
22732 (mac_get_selection_target_list): Rename from get_scrap_target_type_list.
22733 (put_scrap_private_timestamp, scrap_has_target_type)
22734 (get_scrap_private_timestamp): Remove functions.
22735 (SCRAP_FLAVOR_TYPE_EMACS_TIMESTAMP): Remove define.
22736 (x_own_selection, x_get_local_selection):
22737 Use mac_valid_selection_value_p.
22738 (x_own_selection): Don't use put_scrap_private_timestamp.
22739 Record OWNERSHIP-INFO into Vselection_alist instead.
22740 (x_get_local_selection): Don't check type if request is local.
22741 (Fx_selection_owner_p): Don't use get_scrap_private_timestamp.
22742 Detect ownership change with OWNERSHIP-INFO in Vselection_alist instead.
22743
22744 2007-08-04 Jan Djärv <jan.h.d@swipnet.se>
22745
22746 * gtkutil.c (xg_tool_bar_callback): Generate two TOOL_BAR_EVENT:s,
22747 add comment explaining why.
22748
22749 2007-08-03 Richard Stallman <rms@gnu.org>
22750
22751 * fileio.c (Fvisited_file_modtime): Use make_time.
22752
22753 2007-08-01 Ryo Yoshitake <ryo@shiftmode.net> (tiny change)
22754
22755 * mac.c (init_mac_osx_environment): Adjust load-path on self-contained
22756 build.
22757
22758 2007-07-31 Stefan Monnier <monnier@iro.umontreal.ca>
22759
22760 * gtkutil.c (xg_tool_bar_callback): Generate a single TOOL_BAR_EVENT.
22761
22762 2007-07-30 Katsumi Yamaoka <yamaoka@jpl.org>
22763
22764 * puresize.h (BASE_PURESIZE): Increase to 1130000.
22765
22766 2007-07-30 Richard Stallman <rms@gnu.org>
22767
22768 * lread.c (readevalloop, read1): Treat NBSP as whitespace.
22769
22770 2007-07-29 Jan Djärv <jan.h.d@swipnet.se>
22771
22772 * gmalloc.c (__malloc_initialize): Remove pthread_once. Not needed.
22773
22774 2007-07-28 Nick Roberts <nickrob@snap.net.nz>
22775
22776 * xdisp.c (decode_mode_spec): Use '@' instead of 'R' to test for
22777 remote default-directory.
22778
22779 * buffer.c (mode-line-format): Update doc string.
22780
22781 2007-07-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
22782
22783 * w32term.c (w32_draw_fringe_bitmap): Extend fringe background to
22784 scroll bar gap.
22785 (x_scroll_bar_create): Set bar->fringe_extended_p.
22786 (w32_set_vertical_scroll_bar): Put leftmost/rightmost scroll bars
22787 on frame edge. Check fringe background extension. Don't clear
22788 extended fringe background area.
22789
22790 * w32term.h (struct scroll_bar): New member fringe_extended_p.
22791 (w32_fill_area): Enclose multiple statements with do ... while (0).
22792
22793 * xterm.c (x_draw_fringe_bitmap) [USE_TOOLKIT_SCROLL_BARS]:
22794 Extend fringe background to scroll bar gap.
22795 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
22796 Set bar->fringe_extended_p.
22797 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22798 Put leftmost/rightmost scroll bars on frame edge. Check fringe
22799 background extension. Don't clear extended fringe background area.
22800
22801 * xterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
22802 New member fringe_extended_p.
22803
22804 2007-07-25 Glenn Morris <rgm@gnu.org>
22805
22806 * Relicense all FSF files to GPLv3 or later.
22807
22808 * COPYING: Switch to GPLv3.
22809
22810 2007-07-25 Stefan Monnier <monnier@iro.umontreal.ca>
22811
22812 * eval.c (Fcommandp): Pay attention to the `interactive-form' property.
22813
22814 * data.c (Finteractive_form): Check for the presence of an
22815 `interactive-form' symbol property more thoroughly.
22816
22817 * data.c (Finteractive_form): Use an `interactive-form' property if
22818 present, analogous to the function-documentation property.
22819
22820 2007-07-24 Jason Rumney <jasonr@gnu.org>
22821
22822 * w32fns.c (x_real_positions): Get real position from OS instead of
22823 calculating it.
22824
22825 2007-07-23 Jason Rumney <jasonr@gnu.org>
22826
22827 * filelock.c (current_lock_owner): Allow for @ sign in username.
22828
22829 2007-07-22 Nick Roberts <nickrob@snap.net.nz>
22830
22831 * xdisp.c (decode_mode_spec): Add case 'R' for to test for
22832 remote default-directory.
22833
22834 * buffer.c (mode-line-format): Describe above case in doc string.
22835
22836 2007-07-20 Eli Zaretskii <eliz@gnu.org>
22837
22838 * w32proc.c (IMAGE_NT_OPTIONAL_HDR32_MAGIC, IMAGE_OPTIONAL_HEADER32):
22839 Define if not defined.
22840
22841 2007-07-18 Jason Rumney <jasonr@gnu.org>
22842
22843 * w32proc.c (w32_executable_type): Handle 64 bit executables.
22844
22845 2007-07-18 Richard Stallman <rms@gnu.org>
22846
22847 * data.c (Fsetq_default): Doc fix.
22848
22849 * eval.c (Fsetq): Doc fix.
22850
22851 2007-07-18 Juanma Barranquero <lekktu@gmail.com>
22852
22853 * coding.c (Ffind_operation_coding_system):
22854 * eval.c (For, Fand): Doc fixes.
22855 Reported by Johan Bockgård.
22856
22857 2007-07-18 Jan Djärv <jan.h.d@swipnet.se>
22858
22859 * xfns.c (Fx_focus_frame): Call x_ewmh_activate_frame.
22860
22861 * xterm.h: Declare x_ewmh_activate_frame.
22862
22863 * xterm.c (x_ewmh_activate_frame): New function.
22864 (XTframe_raise_lower): Move code to x_ewmh_activate_frame.
22865
22866 2007-07-17 Martin Rudalics <rudalics@gmx.at>
22867
22868 * window.c (Fdisplay_buffer): If largest or LRU window is the
22869 only window, split it even if it is not eligible for splitting.
22870 This restores the original behavior broken by the 2007-07-15
22871 change.
22872
22873 2007-07-17 Glenn Morris <rgm@gnu.org>
22874
22875 * abbrev.c (abbrev_check_chars): New function.
22876 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22877 Call abbrev_check_chars to check abbrev characters are word
22878 constituents. Doc fix.
22879
22880 2007-07-17 Stefan Monnier <monnier@iro.umontreal.ca>
22881
22882 * process.c (Fstart_process, Fmake_network_process)
22883 (read_process_output): Fix up last changes.
22884
22885 2007-07-16 Eli Zaretskii <eliz@gnu.org>
22886
22887 * makefile.w32-in (clean): Don't delete *~.
22888
22889 2007-07-16 Andreas Schwab <schwab@suse.de>
22890
22891 * window.c (Fdisplay_buffer): Use NILP.
22892 (Fset_window_scroll_bars): Likewise.
22893
22894 2007-07-15 Martin Rudalics <rudalics@gmx.at>
22895
22896 * window.c (window_min_size_2): New function.
22897 (window_min_size_1, size_window, Fdisplay_buffer)
22898 (Fsplit_window, adjust_window_trailing_edge): Use it to avoid
22899 windows without mode- or header-lines when window-min-height is
22900 too small.
22901 (size_window): Reset nodelete_p after testing it, following an
22902 earlier note by Kim F. Storm.
22903 (display_buffer): Do not set split_height_threshold to twice the
22904 value of window_min_height to avoid changing the value of a
22905 customizable variable. Rather explicitly check whether the
22906 height of the window that shall be splitted is at least as large
22907 as split_height_threshold.
22908 (Fwindow_full_width_p): New defun.
22909 (syms_of_window): Defsubr it.
22910
22911 * window.h: Add EXFUN for Fwindow_full_width_p.
22912
22913 2007-07-14 Jason Rumney <jasonr@gnu.org>
22914
22915 * process.c [WINDOWSNT]: Don't undefine AF_INET6.
22916
22917 2007-07-14 Richard Stallman <rms@gnu.org>
22918
22919 * eval.c (maybe_call_debugger): New function.
22920 (find_handler_clause): Use maybe_call_debugger.
22921 Call it when the handler says `debug'.
22922 Eliminate DEBUGGER_VALUE_PTR.
22923 (Fsignal): Eliminate debugger_value.
22924 (Qdebug): New variable.
22925 (syms_of_eval): Initialize it.
22926
22927 2007-07-14 Juanma Barranquero <lekktu@gmail.com>
22928
22929 * eval.c (Fprogn):
22930 * keyboard.c (Ftrack_mouse):
22931 * print.c (Fwith_output_to_temp_buffer):
22932 * window.c (Fsave_window_excursion): Doc fix.
22933
22934 2007-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
22935
22936 * eval.c (init_eval_once): Bump max_lisp_eval_depth to 400.
22937
22938 2007-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
22939
22940 * process.h (struct Lisp_Process): Turn slots infd, outfd,
22941 kill_without_query, pty_flag, tick, update_tick, decoding_carryover,
22942 inherit_coding_system_flag, filter_multibyte, adaptive_read_buffering,
22943 read_output_delay, and read_output_skip from Lisp_Objects to ints.
22944 Remove unused encoding_carryover.
22945 * process.c: Adjust all functions accordingly.
22946
22947 2007-07-12 Richard Stallman <rms@gnu.org>
22948
22949 * term.c: Include unistd.h only if HAVE_UNISTD_H.
22950
22951 2007-07-11 Jason Rumney <jasonr@gnu.org>
22952
22953 * makefile.w32-in (LIBS): Include OLE32.
22954
22955 * w32fns.c (w32_msg_pump) <WM_EMACS_CREATEWINDOW>: Initialize COM.
22956 (w32_msg_pump) <WM_DESTROY>: Uninitialize COM.
22957
22958 2007-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
22959
22960 * lisp.h (struct Lisp_Hash_Table): Turn next_weak into a bare pointer.
22961 * fns.c (weak_hash_tables): Rename from Vweak_hash_tables and turned
22962 from a Lisp_Object into a bare pointer.
22963 (make_hash_table, copy_hash_table, sweep_weak_hash_tables, init_fns):
22964 Adjust the code correspondingly.
22965
22966 * alloc.c (emacs_blocked_free): Remove unused var `bytes_used_now'.
22967
22968 * term.c: Include unistd.h for ttyname, used in handle_one_term_event.
22969 (term_show_mouse_face): Remove unused var `j'.
22970 (handle_one_term_event): Remove unused vars `i' and `j'.
22971 Don't cast return value of ttyname since it's not necessary.
22972
22973 2007-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
22974
22975 * alloc.c (mark_maybe_pointer): Enforce mult-of-8 alignment when using
22976 USE_LSB_TAG. Suggested by Dmitry Antipov <dmantipov@yandex.ru>.
22977
22978 * fns.c (map_char_table): Use an array of int for `indices' rather than
22979 an array of Lisp_Objects (which are only ever integers anyway).
22980 (Fmap_char_table): Update caller.
22981 * lisp.h: Update prototype.
22982 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap):
22983 * fontset.c (Ffontset_info):
22984 * casetab.c (set_case_table): Update callers.
22985
22986 * editfns.c (Ftranspose_regions): Use EMACS_INT for positions.
22987
22988 * keymap.c (struct accessible_keymaps_data)
22989 (struct where_is_internal_data): New structures.
22990 (accessible_keymaps_1, where_is_internal_1): Use them to change
22991 interface to adhere to the one used by map_keymap.
22992 (Faccessible_keymaps, where_is_internal): Use map_keymap.
22993 (accessible_keymaps_char_table, where_is_internal_2): Remove.
22994
22995 * keymap.h (map_keymap_function_t): More informative prototype.
22996
22997 2007-07-10 Guanpeng Xu <herberteuler@hotmail.com>
22998
22999 * search.c (Vinhibit_changing_match_data, search_regs_1): New vars.
23000 (looking_at_1): Don't change search_regs and last_thing_searched
23001 if `inhibit-changing-match-data' is non-nil.
23002 (string_match_1, search_buffer, set_search_regs): Likewise.
23003 (syms_of_search): Add Lisp level definition for
23004 `inhibit-changing-match-data' and set it to nil.
23005 (boyer_moore): If `inhibit-changing-match-data' is non-nil, compute
23006 start and end of the match, instead of using values in search_regs.
23007
23008 2007-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
23009
23010 * minibuf.c (Fcompleting_read): New value `confirm-only'
23011 for `require-match'.
23012
23013 2007-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
23014
23015 * fileio.c (Fdo_auto_save): Revert last patch installed unwillingly as
23016 part of the 2007-06-27 change to syms_of_fileio.
23017
23018 2007-06-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23019
23020 * macterm.c [USE_MAC_TSM] (mac_handle_text_input_event):
23021 Check WINDOWP before using XWINDOW. Consolidate return statements.
23022
23023 2007-06-27 Richard Stallman <rms@gnu.org>
23024
23025 * fileio.c (syms_of_fileio) <after-insert-file-functions>: Doc fix.
23026
23027 2007-06-27 Juanma Barranquero <lekktu@gmail.com>
23028
23029 * buffer.c (syms_of_buffer) <selective-display>: Fix typo in docstring.
23030
23031 2007-06-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23032
23033 * gmalloc.c [HAVE_GTK_AND_PTHREAD]: Check this after including config.h.
23034 (_aligned_blocks_mutex) [USE_PTHREAD]: New variable.
23035 (LOCK_ALIGNED_BLOCKS, UNLOCK_ALIGNED_BLOCKS): New macros.
23036 (_free_internal, memalign): Use them.
23037 (_malloc_mutex, _aligned_blocks_mutex) [USE_PTHREAD]:
23038 Initialize to PTHREAD_MUTEX_INITIALIZER.
23039 (malloc_initialize_1) [USE_PTHREAD]: Don't use recursive mutex.
23040 (morecore_nolock): Rename from morecore. All uses changed.
23041 Use only nolock versions of internal allocation functions.
23042 (_malloc_internal_nolock, _realloc_internal_nolock)
23043 (_free_internal_nolock): New functions created from
23044 _malloc_internal, _realloc_internal, and _free_internal.
23045 (_malloc_internal, _realloc_internal, _free_internal): Use them.
23046 Copy hook value to automatic variable before its use.
23047 (memalign): Copy hook value to automatic variable before its use.
23048
23049 2007-06-26 Kenichi Handa <handa@m17n.org>
23050
23051 * coding.c (Ffind_operation_coding_system): Docstring improved.
23052 (syms_of_coding): Docstring of `file-coding-system-alist' improved.
23053
23054 2007-06-25 David Kastrup <dak@gnu.org>
23055
23056 * keymap.c (Fcurrent_active_maps): Add `position' argument.
23057 (Fwhere_is_internal): Adjust call to `current-active-maps' to
23058 cater for additional parameter.
23059
23060 * keymap.h: Adjust number of parameters to `current-active-maps'.
23061
23062 * doc.c (Fsubstitute_command_keys): Adjust call of
23063 `current-active-maps'.
23064
23065 2007-06-25 David Kastrup <dak@gnu.org>
23066
23067 * callint.c (Fcall_interactively): Make the parsing of interactive
23068 specs somewhat more readable.
23069
23070 2007-06-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23071
23072 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe background
23073 to scroll bar gap also when bitmap fills fringe. Draw only foreground
23074 if extended background has already been filled.
23075
23076 2007-06-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23077
23078 * macgui.h (USE_CG_DRAWING): Don't require USE_ATSUI.
23079 (USE_MAC_TOOLBAR): Require USE_CG_DRAWING.
23080
23081 * macmenu.c (mac_dialog_modal_filter, Fx_popup_dialog) [MAC_OSX]:
23082 Put special treatment for Fmessage_box, Fyes_or_no_p, and Fy_or_n_p
23083 in #if 0 as it is not compatible with y-or-n-p-with-timeout.
23084 (timer_check) [TARGET_API_MAC_CARBON]: Add extern.
23085 [TARGET_API_MAC_CARBON] (mac_handle_dialog_event): Use QuitEventLoop
23086 instead of QuitAppModalLoopForWindow. Consolidate QuitEventLoop calls.
23087 (pop_down_dialog) [TARGET_API_MAC_CARBON]: New function.
23088 [TARGET_API_MAC_CARBON] (create_and_show_dialog): Use it for unwind.
23089 Run timers during dialog popup.
23090 (Fmenu_or_popup_active_p) [TARGET_API_MAC_CARBON]: Use popup_activated.
23091
23092 2007-06-21 Jason Rumney <jasonr@gnu.org>
23093
23094 * image.c (convert_mono_to_color_image): Swap fore and background.
23095
23096 2007-06-20 Jason Rumney <jasonr@gnu.org>
23097
23098 * w32bdf.c (w32_BDF_to_x_font): Unmap memory when finished.
23099 (w32_free_bdf_font): Unmap memory not handle.
23100
23101 2007-06-20 Sam Steingold <sds@gnu.org>
23102
23103 * gmalloc.c (__morecore): Fix the declaration to comply with the
23104 definition.
23105
23106 2007-06-20 Juanma Barranquero <lekktu@gmail.com>
23107
23108 * w32term.c (w32_delete_display): Remove leftover declaration.
23109 (w32_define_cursor, w32_initialize): Make static.
23110
23111 * w32.c (_wsa_errlist): Fix typo in error message.
23112 (init_environment): Ignore any environment variable from the
23113 registry having a null value.
23114
23115 2007-06-20 Glenn Morris <rgm@gnu.org>
23116
23117 * Makefile.in (LIBGIF): Default to -lgif.
23118
23119 2007-06-17 Jason Rumney <jasonr@gnu.org>
23120
23121 * w32menu.c (add_menu_item): Don't use multibyte string functions on
23122 unicode strings.
23123
23124 2007-06-16 Juanma Barranquero <lekktu@gmail.com>
23125
23126 * xdisp.c (syms_of_xdisp) <auto-resize-tool-bars>:
23127 Fix typo in docstring.
23128
23129 2007-06-16 Eli Zaretskii <eliz@gnu.org>
23130
23131 * w32menu.c (add_menu_item): Escape `&' characters in menu items
23132 and their keybindings.
23133
23134 2007-06-15 Chong Yidong <cyd@stupidchicken.com>
23135
23136 * composite.c (update_compositions): Fix last fix.
23137
23138 2007-06-14 Jason Rumney <jasonr@gnu.org>
23139
23140 * w32.c (get_process_times_fn): New function pointer.
23141 (globals_of_w32): Intialize it if present in kernel32.dll.
23142 (w32_get_internal_run_time): New function.
23143
23144 * editfns.c (Fget_internal_run_time) [WINDOWSNT]: Use it.
23145
23146 2007-06-14 Kenichi Handa <handa@etlken.m17n.org>
23147
23148 * composite.c (update_compositions): Check the validness of
23149 compositions.
23150
23151 2007-06-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23152
23153 * frame.h (struct frame) [MAC_OS]: New member external_tool_bar.
23154 (FRAME_EXTERNAL_TOOL_BAR) [MAC_OS]: Use it.
23155
23156 * macfns.c (mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.
23157 (x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
23158
23159 * macgui.h (USE_MAC_TOOLBAR): New define.
23160
23161 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23162 Return immediately unless popup is activated.
23163
23164 * macterm.c (x_draw_fringe_bitmap) [MAC_OSX]: Extend fringe
23165 background to scroll bar gap.
23166 (x_scroll_bar_create) [MAC_OSX]: Set bar->fringe_extended_p.
23167 (XTset_vertical_scroll_bar) [MAC_OSX]: Put leftmost/rightmost
23168 scroll bars on frame edge. Check fringe background extension.
23169 Don't clear extended fringe background area.
23170 (TOOLBAR_IDENTIFIER, TOOLBAR_ICON_ITEM_IDENTIFIER)
23171 (TOOLBAR_ITEM_COMMAND_ID_OFFSET, TOOLBAR_ITEM_COMMAND_ID_P)
23172 (TOOLBAR_ITEM_COMMAND_ID_VALUE, TOOLBAR_ITEM_MAKE_COMMAND_ID):
23173 [USE_MAC_TOOLBAR]: New macros.
23174 (mac_move_window_with_gravity, mac_get_window_origin_with_gravity)
23175 (mac_handle_toolbar_event, mac_image_spec_to_cg_image)
23176 (mac_create_frame_tool_bar, update_frame_tool_bar, free_frame_tool_bar)
23177 (mac_tool_bar_note_mouse_movement, mac_handle_toolbar_command_event)
23178 [USE_MAC_TOOLBAR]: New functions.
23179 (mac_handle_window_event) [USE_MAC_TOOLBAR]: Reposition window
23180 manually if previous repositioning has failed.
23181 (mac_handle_keyboard_event): Use precomputed event kind.
23182 (XTread_socket) [USE_MAC_TOOLBAR]: Handle click in structure region
23183 as tool bar item click. Handle mouse movement over tool bar items.
23184
23185 * macterm.h (struct mac_output) [USE_MAC_TOOLBAR]: New member
23186 toolbar_win_gravity.
23187 (struct scroll_bar) [MAC_OSX]: New member fringe_extended_p.
23188 (update_frame_tool_bar, free_frame_tool_bar) [USE_MAC_TOOLBAR]:
23189 Add externs.
23190
23191 * xdisp.c (update_tool_bar, redisplay_tool_bar, redisplay_window)
23192 [USE_MAC_TOOLBAR]: Sync with GTK+ tool bar display.
23193
23194 2007-06-14 Chong Yidong <cyd@stupidchicken.com>
23195
23196 * image.c (search_image_cache): Remove unused variable.
23197
23198 2007-06-13 Chong Yidong <cyd@stupidchicken.com>
23199
23200 * xfns.c, xmenu.c: Link to xaw3d if available.
23201
23202 2007-06-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23203
23204 * dispextern.h (struct image) [HAVE_WINDOW_SYSTEM]: New members
23205 frame_foreground and frame_background.
23206
23207 * image.c (lookup_image): Save frame foreground and background colors.
23208 (search_image_cache): Check if saved and current frame colors match.
23209
23210 2007-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
23211
23212 * regex.c (regex_compile): Remove the `regnum' counter.
23213 Use bufp->re_nsub instead. Add support for \(?N:RE\).
23214
23215 2007-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
23216
23217 * term.c: Include intervals.h to declare Fget_text_property.
23218
23219 2007-06-10 Jason Rumney <jasonr@gnu.org>
23220
23221 * w32fns.c (Fx_file_dialog): Take size from struct not pointer.
23222
23223 2007-06-08 Juanma Barranquero <lekktu@gmail.com>
23224
23225 * callint.c (Fcall_interactively):
23226 * editfns.c (Fdelete_and_extract_region):
23227 * fileio.c (Fread_file_name):
23228 * fns.c (Fmapconcat):
23229 * keyboard.c (cmd_error_internal):
23230 * keymap.c (Fkey_description):
23231 * lread.c (openp):
23232 * minibuf.c (read_minibuf):
23233 * search.c (wordify):
23234 * sunfns.c (sel_read):
23235 * xdisp.c (Fformat_mode_line, syms_of_xdisp):
23236 * xfns.c (x_default_scroll_bar_color_parameter):
23237 * xmenu.c (menu_help_callback):
23238 * xselect.c (Fx_get_atom_name):
23239 * xterm.c (x_term_init): Use empty_unibyte_string.
23240
23241 2007-06-08 Dmitry Antipov <dmantipov@yandex.ru> (tiny change)
23242
23243 * alloc.c (init_strings): Initialize canonical empty strings.
23244 (make_uninit_string, make_uninit_multibyte_string): Return appropriate
23245 canonical empty string when the requested size is 0.
23246
23247 * emacs.c (empty_unibyte_string): Rename from empty_string.
23248 (empty_multibyte_string): New canonical empty string.
23249 (syms_of_emacs): Don't initialize empty_string.
23250
23251 * lisp.h (STRING_SET_UNIBYTE): Return the canonical empty unibyte
23252 string, if appropriate.
23253 (empty_unibyte_string, empty_multibyte_string): New externs.
23254 (empty_string): Remove extern.
23255
23256 * lread.c (syms_of_lread): Use empty_unibyte_string.
23257
23258 2007-06-07 Jason Rumney <jasonr@gnu.org>
23259
23260 * s/ms-w32.h: Don't define HAVE_TZNAME.
23261
23262 * editfns.c (Fcurrent_time_zone): Remove hack for Japanese Windows.
23263
23264 2007-06-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23265
23266 * mac.c (xrm_get_preference_database): Remove BLOCK_INPUT.
23267
23268 * macfns.c (mac_get_window_bounds): Move extern to macterm.h.
23269 (compute_tip_xy) [TARGET_API_MAC_CARBON]: Use GetGlobalMouse.
23270
23271 * macmenu.c [TARGET_API_MAC_CARBON] (menu_target_item_handler):
23272 Don't call next handler.
23273 [TARGET_API_MAC_CARBON] (install_menu_target_item_handler):
23274 Remove argument. Install handler to application.
23275 (set_frame_menubar): Don't change deep_p.
23276 (mac_menu_show): Use FRAME_OUTER_TO_INNER_DIFF_X and
23277 FRAME_OUTER_TO_INNER_DIFF_Y.
23278 (DIALOG_BUTTON_COMMAND_ID_OFFSET, DIALOG_BUTTON_COMMAND_ID_P)
23279 (DIALOG_BUTTON_COMMAND_ID_VALUE, DIALOG_BUTTON_MAKE_COMMAND_ID)
23280 [HAVE_DIALOGS]: New macros.
23281 [HAVE_DIALOGS] (mac_handle_dialog_event, create_and_show_dialog):
23282 Use them.
23283 (fill_menubar) [TARGET_API_MAC_CARBON]: Use CFString.
23284
23285 * macselect.c [MAC_OSX] (install_service_handler): Rename from
23286 init_service_handler. All callers changed. Return OSStatus value.
23287
23288 * macterm.c (mac_begin_cg_clip): New arg F. Call SetPortWindowPort.
23289 All callers changed so as not to call SetPortWindowPort.
23290 (mac_begin_cg_clip) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
23291 (mac_draw_image_string_atsui) [USE_ATSUI]: New function created from
23292 mac_draw_string_common.
23293 (mac_draw_image_string_qd): Likewise.
23294 (mac_draw_string_common): Use them. Add INLINE.
23295 (XTmouse_position, x_scroll_bar_report_motion) [TARGET_API_MAC_CARBON]:
23296 Use FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y, and
23297 GetGlobalMouse.
23298 (x_set_mouse_pixel_position) [MAC_OSX]: Use FRAME_OUTER_TO_INNER_DIFF_X
23299 and FRAME_OUTER_TO_INNER_DIFF_Y.
23300 [TARGET_API_MAC_CARBON] (mac_handle_mouse_event): Likewise.
23301 [USE_MAC_TSM] (mac_handle_text_input_event): Likewise.
23302 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Move code for
23303 repositioning window to mac_handle_window_event.
23304 (x_make_frame_invisible) [TARGET_API_MAC_CARBON]: Move code for
23305 saving window location to mac_handle_window_event
23306 [USE_MAC_FONT_PANEL] (mac_show_hide_font_panel): Install handler here.
23307 (install_menu_target_item_handler): Remove argument in extern.
23308 [TARGET_API_MAC_CARBON] (mac_event_to_emacs_modifiers):
23309 Also accept command events.
23310 (do_keystroke): New function created from XTread_socket.
23311 (init_command_handler): Remove functions.
23312 [TARGET_API_MAC_CARBON] (mac_handle_window_event): Reposition window
23313 and save window location by kEventWindowShowing and kEventWindowHiding
23314 handlers here. Don't call next handler for window state change and
23315 focus events.
23316 (mac_handle_application_event, mac_handle_keyboard_event)
23317 [TARGET_API_MAC_CARBON]: New functions.
23318 (install_window_handler) [TARGET_API_MAC_CARBON]: Register handlers for
23319 kEventWindowShowing and kEventWindowHiding events. Move installation
23320 of mouse, font, text input and menu target item handlers to
23321 install_application_handler.
23322 (install_application_handler) [TARGET_API_MAC_CARBON]: New function.
23323 (mac_handle_cg_display_reconfig) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23324 New function.
23325 (init_dm_notification_handler) [MAC_OS_X_VERSION_MAX_ALLOWED >= 1030]:
23326 Register it.
23327 (XTread_socket) [TARGET_API_MAC_CARBON]:
23328 Consolidate SendEventToEventTarget calls.
23329 Use FRAME_OUTER_TO_INNER_DIFF_X and FRAME_OUTER_TO_INNER_DIFF_Y.
23330 Move application activation handler to mac_handle_application_event.
23331 Move keyboard handler to mac_handle_keyboard_event.
23332 (XTread_socket) [!TARGET_API_MAC_CARBON]: Use do_keystroke.
23333 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
23334 init_command_handler. Call install_application_handler.
23335
23336 * macterm.h (mac_get_window_bounds): Move extern from macfns.c.
23337 (FRAME_OUTER_TO_INNER_DIFF_X, FRAME_OUTER_TO_INNER_DIFF_Y): New macros.
23338
23339 2007-06-07 Glenn Morris <rgm@gnu.org>
23340
23341 * emacs.c (main): Use `emacs-copyright' in --version output.
23342
23343 2007-06-06 Chong Yidong <cyd@stupidchicken.com>
23344
23345 * image.c (xpm_load): Remove spurious call to xpm_init_color_cache.
23346
23347 2007-06-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23348
23349 * macfns.c (mac_window): Replace WindowPtr with WindowRef.
23350
23351 * macgui.h: Replace WindowPtr with WindowRef.
23352
23353 * macmenu.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23354 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23355 Replace ControlHandle with ControlRef.
23356 (install_menu_quit_handler): Rename arg MENU_HANDLE to ROOT_MENU.
23357
23358 * macterm.c: Replace MenuHandle and GetMenuHandle with MenuRef and
23359 GetMenuRef, respectively. Replace WindowPtr with WindowRef.
23360 Replace ControlHandle with ControlRef.
23361 (USE_CARBON_EVENTS): Remove. Use TARGET_API_MAC_CARBON instead.
23362 [MAC_OS8] (do_get_menus): Rename variable `menu_handle' to `menu'.
23363
23364 * macterm.h (struct scroll_bar): Rename member control_handle_low
23365 and control_handle_high to control_ref_low and control_ref_high.
23366 All uses changed.
23367 (SCROLL_BAR_CONTROL_REF, SET_SCROLL_BAR_CONTROL_REF): Rename from
23368 SCROLL_BAR_CONTROL_HANDLE and SET_SCROLL_BAR_CONTROL_HANDLE,
23369 respectively. All uses changed.
23370 (XCreatePixmap, XCreatePixmapFromBitmapData, XSetWindowBackground)
23371 (install_window_handler, remove_window_handler): Replace WindowPtr
23372 with WindowRef in externs.
23373
23374 2007-06-05 Juanma Barranquero <lekktu@gmail.com>
23375
23376 * xfaces.c (Finternal_lisp_face_p): Signal error for face alias loops.
23377
23378 2007-06-03 Nick Roberts <nickrob@snap.net.nz>
23379
23380 * keyboard.c (discard_mouse_events): Add GPM_CLICK_EVENT case.
23381
23382 * frame.c (Fmouse_position, Fmouse_pixel_position):
23383 Condition on HAVE_GPM too.
23384
23385 * term.c (term_mouse_highlight): Remove unused variables.
23386 (Fterm_open_connection): Set gpm_zerobased to 1.
23387 (term_mouse_movement, term_mouse_click, handle_one_term_event):
23388 Use zero based co-ordinates.
23389 (handle_one_term_event): Report a drag as mouse movement too.
23390
23391 * Makefile.in (MOUSE_SUPPORT): Define for HAVE_GPM.
23392
23393 2007-06-03 Chong Yidong <cyd@stupidchicken.com>
23394
23395 * image.c (search_image_cache): New function. Require background
23396 color match if background color is unspecified in the image spec.
23397 (uncache_image, lookup_image): Use it.
23398
23399 2007-06-01 Juanma Barranquero <lekktu@gmail.com>
23400
23401 * window.c (Fshrink_window): Reflow docstring.
23402
23403 2007-06-02 Chong Yidong <cyd@stupidchicken.com>
23404
23405 * Version 22.1 released.
23406
23407 2007-06-01 Richard Stallman <rms@gnu.org>
23408
23409 * xfns.c (x_encode_text): Add GCPRO.
23410
23411 2007-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23412
23413 * xfns.c (x_set_name_internal): Save encoded name before
23414 x_encode_text in case string data is relocated.
23415
23416 2007-05-31 Richard Stallman <rms@gnu.org>
23417
23418 * buffer.c (syms_of_buffer): Doc fix.
23419
23420 2007-05-30 Nick Roberts <nickrob@snap.net.nz>
23421
23422 * sysdep.c (init_sys_modes): Add rather than replace with
23423 O_NONBLOCK.
23424
23425 * frame.c [HAVE_GPM] (Fset_mouse_pixel_position): Add call to
23426 term_mouse_moveto.
23427
23428 * termhooks.h (term_mouse_moveto): New extern.
23429
23430 * term.c (mouse_face_window): Rename...
23431 (Qmouse_face_window): ...to this.
23432 (term_show_mouse_face, term_clear_mouse_face)
23433 (term_mouse_highlight): Use Qmouse_face_window.
23434 (term_mouse_moveto): New function.
23435 (term_mouse_position): Make it work.
23436 (syms_of_term): Uncomment assignment to mouse_position_hook.
23437 Staticpro Qmouse_face_window.
23438
23439 2007-05-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23440
23441 * xdisp.c (redisplay_internal): Bind inhibit-point-motion-hooks to t
23442 around current_column call.
23443
23444 2007-05-26 Dan Nicolaescu <dann@ics.uci.edu>
23445
23446 * xfaces.c (syms_of_xfaces): Delete stray semicolon.
23447 * xdisp.c (next_element_from_buffer):
23448 * window.c (delete_window):
23449 * term.c (term_mouse_highlight):
23450 * msdos.c (getdefdir):
23451 * macterm.c (mac_create_bitmap_from_bitmap_data)
23452 (init_font_name_table):
23453 * fns.c (Fsxhash):
23454 * data.c (Fmake_local_variable):
23455 * ccl.c (ccl_driver): Likewise.
23456
23457 2007-05-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23458
23459 * macterm.c [USE_CARBON_EVENTS] (mac_handle_window_event):
23460 Call mac_wakeup_from_rne on window size change.
23461
23462 2007-05-25 Chong Yidong <cyd@stupidchicken.com>
23463
23464 * image.c (uncache_image): Fix typo.
23465
23466 2007-05-23 Johannes Weiner <hannes@saeurebad.de> (tiny change)
23467
23468 * keyboard.c (make_lispy_movement): Condition on HAVE_GPM too.
23469
23470 2007-05-22 Richard Stallman <rms@gnu.org>
23471
23472 * xterm.c (x_connection_closed): Remove NO_RETURN.
23473
23474 2007-05-22 Martin Rudalics <rudalics@gmx.at>
23475
23476 * syntax.c (scan_words): Fix arg to UPDATE_SYNTAX_TABLE_BACKWARD.
23477
23478 2007-05-21 Chong Yidong <cyd@stupidchicken.com>
23479
23480 * image.c (uncache_image): New function.
23481 (Fimage_refresh): New function.
23482
23483 2007-05-20 Jan Djärv <jan.h.d@swipnet.se>
23484
23485 * Makefile.in: Move GPM check outside HAVE_X_WINDOWS.
23486
23487 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23488
23489 * config.in, keyboard.c, Makefile.in, sysdep.c, term.c,
23490 * termhooks.h: Use HAVE_GPM instead of HAVE_GPM_H.
23491
23492 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23493
23494 * keyboard.c (make_lispy_event): Make case GPM_CLICK_EVENT
23495 conditional on [HAVE_GPM_H].
23496
23497 2007-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
23498
23499 * syntax.c (skip_chars): Update syntax-table only after we checked that
23500 the new location is valid.
23501
23502 2007-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23503
23504 * macterm.c (x_calc_absolute_position): Add BLOCK_INPUT around
23505 mac_get_window_bounds.
23506
23507 2007-05-20 Nick Roberts <nickrob@snap.net.nz>
23508
23509 * Makefile.in (LIBGPM): Allow it to be set from configure.
23510 If set then link Emacs with it.
23511
23512 * config.in: Regenerate.
23513
23514 * lisp.h (add_gpm_wait_descriptor, delete_gpm_wait_descriptor):
23515 New externs.
23516
23517 * termhooks.h [HAVE_GPM_H] (enum event_kind): Add GPM_CLICK_EVENT.
23518 Include gpm.h.
23519 (handle_one_term_event, term_gpm): New externs.
23520
23521 * sysdep.c [HAVE_GPM_H] (init_sys_modes): Make gpm_fd nonblocking
23522 and allow it to be interrupted by SIGIO.
23523
23524 * process.c (gpm_wait_mask, max_gpm_desc): New variables.
23525 (wait_reading_process_output): Wait on gpm_fd too.
23526 (add_gpm_wait_descriptor, delete_gpm_wait_descriptor)): New functions.
23527 (add_gpm_wait_descriptor_called_flag): New variable.
23528 (delete_keyboard_wait_descriptor): Check gpm_wait_mask.
23529
23530 * keyboard.c [HAVE_GPM_H] (Qmouse_fixup_help_message)
23531 (make_lispy_movement, tracking_off, Ftrack_mouse, some_mouse_moved)
23532 (show_help_echo, readable_events, kbd_buffer_get_event, init_keyboard):
23533 Extend HAVE_MOUSE ifdefs to HAVE_GPM_H.
23534 (make_lispy_event): Add case GPM_CLICK_EVENT.
23535 (read_avail_input): Handle mouse input.
23536
23537 * term.c (write_glyphs_with_face): New function.
23538 [HAVE_GPM_H]: Include buffer.h, sys/fcntl.h.
23539 (mouse_face_beg_row, mouse_face_beg_col, mouse_face_end_row)
23540 (mouse_face_end_col, mouse_face_past_end, mouse_face_window)
23541 (mouse_face_face_id, term_gpm, pos_x, pos_y)
23542 (last_mouse_x, last_mouse_y): New variables.
23543 (term_show_mouse_face, term_clear_mouse_face, fast_find_position)
23544 (term_mouse_highlight, term_mouse_movement, term_mouse_position)
23545 (term_mouse_click, handle_one_term_event, Fterm_open_connection)
23546 (Fterm_close_connection): New functions.
23547 (term_init): Initialise mouse_face_window.
23548
23549 2007-05-19 Chong Yidong <cyd@stupidchicken.com>
23550
23551 * xdisp.c (redisplay_window): If first window line is a
23552 continuation line, recompute the new window start instead of
23553 recentering.
23554
23555 2007-05-18 Glenn Morris <rgm@gnu.org>
23556
23557 * m/alpha.h (ORDINARY_LINK): No longer define on OpenBSD.
23558 Suggested by Alfred M. Szmidt <ams@gnu.org>.
23559
23560 2007-05-17 Glenn Morris <rgm@gnu.org>
23561
23562 * m/macppc.h (ORDINARY_LINK): No longer define on OpenBSD.
23563
23564 2007-05-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23565
23566 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Also convert
23567 dead key repeat and up events.
23568
23569 2007-05-14 Chong Yidong <cyd@stupidchicken.com>
23570
23571 * image.c (pbm_load): Check image size for monochrome pbm.
23572
23573 2007-05-13 Chong Yidong <cyd@stupidchicken.com>
23574
23575 * xterm.c (XTread_socket): Revert last change.
23576
23577 2007-05-12 Chong Yidong <cyd@stupidchicken.com>
23578
23579 * image.c (pbm_load): Correctly check image size for greyscale pbm.
23580
23581 * xterm.c (XTread_socket): Yet Another Uncaught X Error Crash (YAUXEC).
23582
23583 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23584
23585 * editfns.c (Ftranspose_regions): Yet another int/Lisp_Object
23586 mixup (YAILOM).
23587
23588 2007-05-07 Andreas Schwab <schwab@suse.de>
23589
23590 * keymap.c (Flookup_key): Fix typo in last change.
23591
23592 2007-05-07 Stefan Monnier <monnier@iro.umontreal.ca>
23593
23594 * keymap.c (Fdefine_key, Flookup_key): Only do the 0x80->meta_modifier
23595 mapping for unibyte strings.
23596
23597 2007-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23598
23599 * macmenu.c (mac_dialog_show): Apply 2007-04-27 change for xmenu.c.
23600 (Fx_popup_dialog) [MAC_OSX]: Likewise.
23601
23602 2007-04-29 Richard Stallman <rms@gnu.org>
23603
23604 * insdel.c (replace_range): For undo, record insertion first.
23605
23606 2007-04-29 Andreas Schwab <schwab@suse.de>
23607
23608 * lisp.h (VECSIZE): Use OFFSETOF.
23609
23610 2007-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
23611
23612 * xdisp.c (try_window_reusing_current_matrix): Fix number of
23613 disabled lines.
23614
23615 2007-04-28 Richard Stallman <rms@gnu.org>
23616
23617 * lread.c (read_escape): In a string, \s is always space.
23618
23619 2007-04-27 Jan Djärv <jan.h.d@swipnet.se>
23620
23621 * xmenu.c (xdialog_show): Call Fredisplay before showing the dialog.
23622
23623 * gtkutil.c (xg_update_menubar, create_menus): Create empty
23624 submenu for menu bar items.
23625
23626 See ChangeLog.10 for earlier changes.
23627
23628 ;; Local Variables:
23629 ;; coding: utf-8
23630 ;; add-log-time-zone-rule: t
23631 ;; End:
23632
23633 Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
23634
23635 This file is part of GNU Emacs.
23636
23637 GNU Emacs is free software: you can redistribute it and/or modify
23638 it under the terms of the GNU General Public License as published by
23639 the Free Software Foundation, either version 3 of the License, or
23640 (at your option) any later version.
23641
23642 GNU Emacs is distributed in the hope that it will be useful,
23643 but WITHOUT ANY WARRANTY; without even the implied warranty of
23644 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23645 GNU General Public License for more details.
23646
23647 You should have received a copy of the GNU General Public License
23648 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
23649
23650 ;; arch-tag: dfb6ad96-1550-4905-9e53-d2059ee84c40